// <auto-generated>
//   This file was generated by a tool; you should avoid making direct changes.
//   Consider using 'partial classes' to extend these types
//   Input: dac_gcmessages_server.proto
// </auto-generated>

#region Designer generated code
#pragma warning disable CS0612, CS0618, CS1591, CS3021, IDE1006, RCS1036, RCS1057, RCS1085, RCS1192
namespace SteamKit2.GC.Underlords.Internal
{

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerCrashSentinelFile : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public uint version
        {
            get => __pbn__version.GetValueOrDefault();
            set => __pbn__version = value;
        }
        public bool ShouldSerializeversion() => __pbn__version != null;
        public void Resetversion() => __pbn__version = null;
        private uint? __pbn__version;

        [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong server_steam_id
        {
            get => __pbn__server_steam_id.GetValueOrDefault();
            set => __pbn__server_steam_id = value;
        }
        public bool ShouldSerializeserver_steam_id() => __pbn__server_steam_id != null;
        public void Resetserver_steam_id() => __pbn__server_steam_id = null;
        private ulong? __pbn__server_steam_id;

        [global::ProtoBuf.ProtoMember(3, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public uint server_public_ip_addr
        {
            get => __pbn__server_public_ip_addr.GetValueOrDefault();
            set => __pbn__server_public_ip_addr = value;
        }
        public bool ShouldSerializeserver_public_ip_addr() => __pbn__server_public_ip_addr != null;
        public void Resetserver_public_ip_addr() => __pbn__server_public_ip_addr = null;
        private uint? __pbn__server_public_ip_addr;

        [global::ProtoBuf.ProtoMember(4)]
        public uint server_port
        {
            get => __pbn__server_port.GetValueOrDefault();
            set => __pbn__server_port = value;
        }
        public bool ShouldSerializeserver_port() => __pbn__server_port != null;
        public void Resetserver_port() => __pbn__server_port = null;
        private uint? __pbn__server_port;

        [global::ProtoBuf.ProtoMember(5)]
        public uint server_cluster
        {
            get => __pbn__server_cluster.GetValueOrDefault();
            set => __pbn__server_cluster = value;
        }
        public bool ShouldSerializeserver_cluster() => __pbn__server_cluster != null;
        public void Resetserver_cluster() => __pbn__server_cluster = null;
        private uint? __pbn__server_cluster;

        [global::ProtoBuf.ProtoMember(6)]
        public uint pid
        {
            get => __pbn__pid.GetValueOrDefault();
            set => __pbn__pid = value;
        }
        public bool ShouldSerializepid() => __pbn__pid != null;
        public void Resetpid() => __pbn__pid = null;
        private uint? __pbn__pid;

        [global::ProtoBuf.ProtoMember(7)]
        public uint saved_time
        {
            get => __pbn__saved_time.GetValueOrDefault();
            set => __pbn__saved_time = value;
        }
        public bool ShouldSerializesaved_time() => __pbn__saved_time != null;
        public void Resetsaved_time() => __pbn__saved_time = null;
        private uint? __pbn__saved_time;

        [global::ProtoBuf.ProtoMember(8)]
        public uint server_version
        {
            get => __pbn__server_version.GetValueOrDefault();
            set => __pbn__server_version = value;
        }
        public bool ShouldSerializeserver_version() => __pbn__server_version != null;
        public void Resetserver_version() => __pbn__server_version = null;
        private uint? __pbn__server_version;

        [global::ProtoBuf.ProtoMember(9)]
        public GameInfo game_info { get; set; }

        [global::ProtoBuf.ProtoMember(10)]
        public uint server_private_ip_addr
        {
            get => __pbn__server_private_ip_addr.GetValueOrDefault();
            set => __pbn__server_private_ip_addr = value;
        }
        public bool ShouldSerializeserver_private_ip_addr() => __pbn__server_private_ip_addr != null;
        public void Resetserver_private_ip_addr() => __pbn__server_private_ip_addr = null;
        private uint? __pbn__server_private_ip_addr;

        [global::ProtoBuf.ProtoMember(11)]
        public uint instance_id
        {
            get => __pbn__instance_id.GetValueOrDefault();
            set => __pbn__instance_id = value;
        }
        public bool ShouldSerializeinstance_id() => __pbn__instance_id != null;
        public void Resetinstance_id() => __pbn__instance_id = null;
        private uint? __pbn__instance_id;

        [global::ProtoBuf.ProtoContract()]
        public partial class GameInfo : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.IExtension __pbn__extensionData;
            global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
                => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

            [global::ProtoBuf.ProtoMember(1)]
            public ulong match_id
            {
                get => __pbn__match_id.GetValueOrDefault();
                set => __pbn__match_id = value;
            }
            public bool ShouldSerializematch_id() => __pbn__match_id != null;
            public void Resetmatch_id() => __pbn__match_id = null;
            private ulong? __pbn__match_id;

            [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
            public ulong lobby_id
            {
                get => __pbn__lobby_id.GetValueOrDefault();
                set => __pbn__lobby_id = value;
            }
            public bool ShouldSerializelobby_id() => __pbn__lobby_id != null;
            public void Resetlobby_id() => __pbn__lobby_id = null;
            private ulong? __pbn__lobby_id;

            [global::ProtoBuf.ProtoMember(4)]
            public uint server_state
            {
                get => __pbn__server_state.GetValueOrDefault();
                set => __pbn__server_state = value;
            }
            public bool ShouldSerializeserver_state() => __pbn__server_state != null;
            public void Resetserver_state() => __pbn__server_state = null;
            private uint? __pbn__server_state;

            [global::ProtoBuf.ProtoMember(5)]
            public global::System.Collections.Generic.List<uint> client_account_ids { get; } = new global::System.Collections.Generic.List<uint>();

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CServerLobbyData_PlayerMMR : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public global::System.Collections.Generic.List<Player> players { get; } = new global::System.Collections.Generic.List<Player>();

        [global::ProtoBuf.ProtoMember(2)]
        public global::System.Collections.Generic.List<Team> teams { get; } = new global::System.Collections.Generic.List<Team>();

        [global::ProtoBuf.ProtoMember(8)]
        public uint lords_elo_k
        {
            get => __pbn__lords_elo_k.GetValueOrDefault();
            set => __pbn__lords_elo_k = value;
        }
        public bool ShouldSerializelords_elo_k() => __pbn__lords_elo_k != null;
        public void Resetlords_elo_k() => __pbn__lords_elo_k = null;
        private uint? __pbn__lords_elo_k;

        [global::ProtoBuf.ProtoMember(9)]
        public float duos_mmr_level_score_change_mult
        {
            get => __pbn__duos_mmr_level_score_change_mult.GetValueOrDefault();
            set => __pbn__duos_mmr_level_score_change_mult = value;
        }
        public bool ShouldSerializeduos_mmr_level_score_change_mult() => __pbn__duos_mmr_level_score_change_mult != null;
        public void Resetduos_mmr_level_score_change_mult() => __pbn__duos_mmr_level_score_change_mult = null;
        private float? __pbn__duos_mmr_level_score_change_mult;

        [global::ProtoBuf.ProtoMember(10)]
        public uint lords_elo_k_duos
        {
            get => __pbn__lords_elo_k_duos.GetValueOrDefault();
            set => __pbn__lords_elo_k_duos = value;
        }
        public bool ShouldSerializelords_elo_k_duos() => __pbn__lords_elo_k_duos != null;
        public void Resetlords_elo_k_duos() => __pbn__lords_elo_k_duos = null;
        private uint? __pbn__lords_elo_k_duos;

        [global::ProtoBuf.ProtoContract()]
        public partial class Player : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.IExtension __pbn__extensionData;
            global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
                => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

            [global::ProtoBuf.ProtoMember(1)]
            public uint account_id
            {
                get => __pbn__account_id.GetValueOrDefault();
                set => __pbn__account_id = value;
            }
            public bool ShouldSerializeaccount_id() => __pbn__account_id != null;
            public void Resetaccount_id() => __pbn__account_id = null;
            private uint? __pbn__account_id;

            [global::ProtoBuf.ProtoMember(2)]
            public uint mmr
            {
                get => __pbn__mmr.GetValueOrDefault();
                set => __pbn__mmr = value;
            }
            public bool ShouldSerializemmr() => __pbn__mmr != null;
            public void Resetmmr() => __pbn__mmr = null;
            private uint? __pbn__mmr;

            [global::ProtoBuf.ProtoMember(3)]
            public uint uncertainty
            {
                get => __pbn__uncertainty.GetValueOrDefault();
                set => __pbn__uncertainty = value;
            }
            public bool ShouldSerializeuncertainty() => __pbn__uncertainty != null;
            public void Resetuncertainty() => __pbn__uncertainty = null;
            private uint? __pbn__uncertainty;

            [global::ProtoBuf.ProtoMember(4)]
            public uint mmr_level_score
            {
                get => __pbn__mmr_level_score.GetValueOrDefault();
                set => __pbn__mmr_level_score = value;
            }
            public bool ShouldSerializemmr_level_score() => __pbn__mmr_level_score != null;
            public void Resetmmr_level_score() => __pbn__mmr_level_score = null;
            private uint? __pbn__mmr_level_score;

            [global::ProtoBuf.ProtoMember(7)]
            public uint party_index
            {
                get => __pbn__party_index.GetValueOrDefault();
                set => __pbn__party_index = value;
            }
            public bool ShouldSerializeparty_index() => __pbn__party_index != null;
            public void Resetparty_index() => __pbn__party_index = null;
            private uint? __pbn__party_index;

            [global::ProtoBuf.ProtoMember(8)]
            public uint lords_elo_ante
            {
                get => __pbn__lords_elo_ante.GetValueOrDefault();
                set => __pbn__lords_elo_ante = value;
            }
            public bool ShouldSerializelords_elo_ante() => __pbn__lords_elo_ante != null;
            public void Resetlords_elo_ante() => __pbn__lords_elo_ante = null;
            private uint? __pbn__lords_elo_ante;

            [global::ProtoBuf.ProtoMember(9)]
            public bool lords_elo_ignore
            {
                get => __pbn__lords_elo_ignore.GetValueOrDefault();
                set => __pbn__lords_elo_ignore = value;
            }
            public bool ShouldSerializelords_elo_ignore() => __pbn__lords_elo_ignore != null;
            public void Resetlords_elo_ignore() => __pbn__lords_elo_ignore = null;
            private bool? __pbn__lords_elo_ignore;

            [global::ProtoBuf.ProtoMember(10)]
            [global::System.ComponentModel.DefaultValue(1)]
            public float level_score_change_mult
            {
                get => __pbn__level_score_change_mult ?? 1;
                set => __pbn__level_score_change_mult = value;
            }
            public bool ShouldSerializelevel_score_change_mult() => __pbn__level_score_change_mult != null;
            public void Resetlevel_score_change_mult() => __pbn__level_score_change_mult = null;
            private float? __pbn__level_score_change_mult;

        }

        [global::ProtoBuf.ProtoContract()]
        public partial class Team : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.IExtension __pbn__extensionData;
            global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
                => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

            [global::ProtoBuf.ProtoMember(3)]
            public uint lords_elo_ante
            {
                get => __pbn__lords_elo_ante.GetValueOrDefault();
                set => __pbn__lords_elo_ante = value;
            }
            public bool ShouldSerializelords_elo_ante() => __pbn__lords_elo_ante != null;
            public void Resetlords_elo_ante() => __pbn__lords_elo_ante = null;
            private uint? __pbn__lords_elo_ante;

            [global::ProtoBuf.ProtoMember(4)]
            public bool lords_elo_ignore
            {
                get => __pbn__lords_elo_ignore.GetValueOrDefault();
                set => __pbn__lords_elo_ignore = value;
            }
            public bool ShouldSerializelords_elo_ignore() => __pbn__lords_elo_ignore != null;
            public void Resetlords_elo_ignore() => __pbn__lords_elo_ignore = null;
            private bool? __pbn__lords_elo_ignore;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CServerLobbyData_GameModifiers : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public CMsgGameModifiers game_modifiers { get; set; }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CSODACServerDynamicLobby : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public ulong lobby_id
        {
            get => __pbn__lobby_id.GetValueOrDefault();
            set => __pbn__lobby_id = value;
        }
        public bool ShouldSerializelobby_id() => __pbn__lobby_id != null;
        public void Resetlobby_id() => __pbn__lobby_id = null;
        private ulong? __pbn__lobby_id;

        [global::ProtoBuf.ProtoMember(2, IsPacked = true)]
        public global::System.Collections.Generic.List<uint> left_account_ids { get; } = new global::System.Collections.Generic.List<uint>();

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CSODACServerStaticLobby : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public global::System.Collections.Generic.List<CExtraMsgBlock> extra_messages { get; } = new global::System.Collections.Generic.List<CExtraMsgBlock>();

        [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong server_steam_id
        {
            get => __pbn__server_steam_id.GetValueOrDefault();
            set => __pbn__server_steam_id = value;
        }
        public bool ShouldSerializeserver_steam_id() => __pbn__server_steam_id != null;
        public void Resetserver_steam_id() => __pbn__server_steam_id = null;
        private ulong? __pbn__server_steam_id;

        [global::ProtoBuf.ProtoMember(3)]
        public ulong lobby_id
        {
            get => __pbn__lobby_id.GetValueOrDefault();
            set => __pbn__lobby_id = value;
        }
        public bool ShouldSerializelobby_id() => __pbn__lobby_id != null;
        public void Resetlobby_id() => __pbn__lobby_id = null;
        private ulong? __pbn__lobby_id;

        [global::ProtoBuf.ProtoMember(4, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public uint replay_salt
        {
            get => __pbn__replay_salt.GetValueOrDefault();
            set => __pbn__replay_salt = value;
        }
        public bool ShouldSerializereplay_salt() => __pbn__replay_salt != null;
        public void Resetreplay_salt() => __pbn__replay_salt = null;
        private uint? __pbn__replay_salt;

        [global::ProtoBuf.ProtoMember(5)]
        public uint active_event_id
        {
            get => __pbn__active_event_id.GetValueOrDefault();
            set => __pbn__active_event_id = value;
        }
        public bool ShouldSerializeactive_event_id() => __pbn__active_event_id != null;
        public void Resetactive_event_id() => __pbn__active_event_id = null;
        private uint? __pbn__active_event_id;

        [global::ProtoBuf.ProtoMember(6)]
        public global::System.Collections.Generic.List<Member> members { get; } = new global::System.Collections.Generic.List<Member>();

        [global::ProtoBuf.ProtoMember(7)]
        public bool trusted_server
        {
            get => __pbn__trusted_server.GetValueOrDefault();
            set => __pbn__trusted_server = value;
        }
        public bool ShouldSerializetrusted_server() => __pbn__trusted_server != null;
        public void Resettrusted_server() => __pbn__trusted_server = null;
        private bool? __pbn__trusted_server;

        [global::ProtoBuf.ProtoMember(8)]
        [global::System.ComponentModel.DefaultValue(EDACBotDifficulty.k_EDACBotDifficulty_None)]
        public EDACBotDifficulty bot_difficulty
        {
            get => __pbn__bot_difficulty ?? EDACBotDifficulty.k_EDACBotDifficulty_None;
            set => __pbn__bot_difficulty = value;
        }
        public bool ShouldSerializebot_difficulty() => __pbn__bot_difficulty != null;
        public void Resetbot_difficulty() => __pbn__bot_difficulty = null;
        private EDACBotDifficulty? __pbn__bot_difficulty;

        [global::ProtoBuf.ProtoMember(9)]
        public global::System.Collections.Generic.List<CMsgTeamInfo> team_info { get; } = new global::System.Collections.Generic.List<CMsgTeamInfo>();

        [global::ProtoBuf.ProtoMember(10)]
        public CMsgGameModeSettings game_mode_settings { get; set; }

        [global::ProtoBuf.ProtoMember(11)]
        [global::System.ComponentModel.DefaultValue("")]
        public string feature_controls
        {
            get => __pbn__feature_controls ?? "";
            set => __pbn__feature_controls = value;
        }
        public bool ShouldSerializefeature_controls() => __pbn__feature_controls != null;
        public void Resetfeature_controls() => __pbn__feature_controls = null;
        private string __pbn__feature_controls;

        [global::ProtoBuf.ProtoContract()]
        public partial class Member : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.IExtension __pbn__extensionData;
            global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
                => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

            [global::ProtoBuf.ProtoMember(1)]
            public uint account_id
            {
                get => __pbn__account_id.GetValueOrDefault();
                set => __pbn__account_id = value;
            }
            public bool ShouldSerializeaccount_id() => __pbn__account_id != null;
            public void Resetaccount_id() => __pbn__account_id = null;
            private uint? __pbn__account_id;

            [global::ProtoBuf.ProtoMember(2)]
            [global::System.ComponentModel.DefaultValue("")]
            public string persona_name
            {
                get => __pbn__persona_name ?? "";
                set => __pbn__persona_name = value;
            }
            public bool ShouldSerializepersona_name() => __pbn__persona_name != null;
            public void Resetpersona_name() => __pbn__persona_name = null;
            private string __pbn__persona_name;

            [global::ProtoBuf.ProtoMember(3)]
            [global::System.ComponentModel.DefaultValue(EDACLobbyTeam.k_EDACLobbyTeam_Team0)]
            public EDACLobbyTeam team
            {
                get => __pbn__team ?? EDACLobbyTeam.k_EDACLobbyTeam_Team0;
                set => __pbn__team = value;
            }
            public bool ShouldSerializeteam() => __pbn__team != null;
            public void Resetteam() => __pbn__team = null;
            private EDACLobbyTeam? __pbn__team;

            [global::ProtoBuf.ProtoMember(4)]
            public uint player_slot
            {
                get => __pbn__player_slot.GetValueOrDefault();
                set => __pbn__player_slot = value;
            }
            public bool ShouldSerializeplayer_slot() => __pbn__player_slot != null;
            public void Resetplayer_slot() => __pbn__player_slot = null;
            private uint? __pbn__player_slot;

            [global::ProtoBuf.ProtoMember(5)]
            [global::System.ComponentModel.DefaultValue(EDACAIType.k_EDACAIType_Invalid)]
            public EDACAIType ai_type
            {
                get => __pbn__ai_type ?? EDACAIType.k_EDACAIType_Invalid;
                set => __pbn__ai_type = value;
            }
            public bool ShouldSerializeai_type() => __pbn__ai_type != null;
            public void Resetai_type() => __pbn__ai_type = null;
            private EDACAIType? __pbn__ai_type;

            [global::ProtoBuf.ProtoMember(6)]
            public uint party_index
            {
                get => __pbn__party_index.GetValueOrDefault();
                set => __pbn__party_index = value;
            }
            public bool ShouldSerializeparty_index() => __pbn__party_index != null;
            public void Resetparty_index() => __pbn__party_index = null;
            private uint? __pbn__party_index;

            [global::ProtoBuf.ProtoMember(7)]
            [global::System.ComponentModel.DefaultValue(EDACPlatform.k_eDACPlatform_None)]
            public EDACPlatform platform
            {
                get => __pbn__platform ?? EDACPlatform.k_eDACPlatform_None;
                set => __pbn__platform = value;
            }
            public bool ShouldSerializeplatform() => __pbn__platform != null;
            public void Resetplatform() => __pbn__platform = null;
            private EDACPlatform? __pbn__platform;

            [global::ProtoBuf.ProtoMember(8)]
            public bool chat_muted
            {
                get => __pbn__chat_muted.GetValueOrDefault();
                set => __pbn__chat_muted = value;
            }
            public bool ShouldSerializechat_muted() => __pbn__chat_muted != null;
            public void Resetchat_muted() => __pbn__chat_muted = null;
            private bool? __pbn__chat_muted;

            [global::ProtoBuf.ProtoMember(9)]
            public uint active_challenge_slot_id
            {
                get => __pbn__active_challenge_slot_id.GetValueOrDefault();
                set => __pbn__active_challenge_slot_id = value;
            }
            public bool ShouldSerializeactive_challenge_slot_id() => __pbn__active_challenge_slot_id != null;
            public void Resetactive_challenge_slot_id() => __pbn__active_challenge_slot_id = null;
            private uint? __pbn__active_challenge_slot_id;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgMatchSignoutData_PerformanceStats : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public uint start_memory_bytes
        {
            get => __pbn__start_memory_bytes.GetValueOrDefault();
            set => __pbn__start_memory_bytes = value;
        }
        public bool ShouldSerializestart_memory_bytes() => __pbn__start_memory_bytes != null;
        public void Resetstart_memory_bytes() => __pbn__start_memory_bytes = null;
        private uint? __pbn__start_memory_bytes;

        [global::ProtoBuf.ProtoMember(2)]
        public uint peak_memory_bytes
        {
            get => __pbn__peak_memory_bytes.GetValueOrDefault();
            set => __pbn__peak_memory_bytes = value;
        }
        public bool ShouldSerializepeak_memory_bytes() => __pbn__peak_memory_bytes != null;
        public void Resetpeak_memory_bytes() => __pbn__peak_memory_bytes = null;
        private uint? __pbn__peak_memory_bytes;

        [global::ProtoBuf.ProtoMember(3)]
        public uint end_memory_bytes
        {
            get => __pbn__end_memory_bytes.GetValueOrDefault();
            set => __pbn__end_memory_bytes = value;
        }
        public bool ShouldSerializeend_memory_bytes() => __pbn__end_memory_bytes != null;
        public void Resetend_memory_bytes() => __pbn__end_memory_bytes = null;
        private uint? __pbn__end_memory_bytes;

        [global::ProtoBuf.ProtoMember(4)]
        public uint total_update_time_ms
        {
            get => __pbn__total_update_time_ms.GetValueOrDefault();
            set => __pbn__total_update_time_ms = value;
        }
        public bool ShouldSerializetotal_update_time_ms() => __pbn__total_update_time_ms != null;
        public void Resettotal_update_time_ms() => __pbn__total_update_time_ms = null;
        private uint? __pbn__total_update_time_ms;

        [global::ProtoBuf.ProtoMember(5)]
        public uint total_match_time_ms
        {
            get => __pbn__total_match_time_ms.GetValueOrDefault();
            set => __pbn__total_match_time_ms = value;
        }
        public bool ShouldSerializetotal_match_time_ms() => __pbn__total_match_time_ms != null;
        public void Resettotal_match_time_ms() => __pbn__total_match_time_ms = null;
        private uint? __pbn__total_match_time_ms;

        [global::ProtoBuf.ProtoMember(6)]
        public uint sent_messages
        {
            get => __pbn__sent_messages.GetValueOrDefault();
            set => __pbn__sent_messages = value;
        }
        public bool ShouldSerializesent_messages() => __pbn__sent_messages != null;
        public void Resetsent_messages() => __pbn__sent_messages = null;
        private uint? __pbn__sent_messages;

        [global::ProtoBuf.ProtoMember(7)]
        public uint received_messages
        {
            get => __pbn__received_messages.GetValueOrDefault();
            set => __pbn__received_messages = value;
        }
        public bool ShouldSerializereceived_messages() => __pbn__received_messages != null;
        public void Resetreceived_messages() => __pbn__received_messages = null;
        private uint? __pbn__received_messages;

        [global::ProtoBuf.ProtoMember(8)]
        public uint sent_bytes
        {
            get => __pbn__sent_bytes.GetValueOrDefault();
            set => __pbn__sent_bytes = value;
        }
        public bool ShouldSerializesent_bytes() => __pbn__sent_bytes != null;
        public void Resetsent_bytes() => __pbn__sent_bytes = null;
        private uint? __pbn__sent_bytes;

        [global::ProtoBuf.ProtoMember(9)]
        public uint received_bytes
        {
            get => __pbn__received_bytes.GetValueOrDefault();
            set => __pbn__received_bytes = value;
        }
        public bool ShouldSerializereceived_bytes() => __pbn__received_bytes != null;
        public void Resetreceived_bytes() => __pbn__received_bytes = null;
        private uint? __pbn__received_bytes;

        [global::ProtoBuf.ProtoMember(10)]
        public uint max_update_time_micros
        {
            get => __pbn__max_update_time_micros.GetValueOrDefault();
            set => __pbn__max_update_time_micros = value;
        }
        public bool ShouldSerializemax_update_time_micros() => __pbn__max_update_time_micros != null;
        public void Resetmax_update_time_micros() => __pbn__max_update_time_micros = null;
        private uint? __pbn__max_update_time_micros;

        [global::ProtoBuf.ProtoMember(11)]
        public uint num_updates
        {
            get => __pbn__num_updates.GetValueOrDefault();
            set => __pbn__num_updates = value;
        }
        public bool ShouldSerializenum_updates() => __pbn__num_updates != null;
        public void Resetnum_updates() => __pbn__num_updates = null;
        private uint? __pbn__num_updates;

        [global::ProtoBuf.ProtoMember(12)]
        public uint replay_size_bytes
        {
            get => __pbn__replay_size_bytes.GetValueOrDefault();
            set => __pbn__replay_size_bytes = value;
        }
        public bool ShouldSerializereplay_size_bytes() => __pbn__replay_size_bytes != null;
        public void Resetreplay_size_bytes() => __pbn__replay_size_bytes = null;
        private uint? __pbn__replay_size_bytes;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgMatchDisconnection : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public uint account_id
        {
            get => __pbn__account_id.GetValueOrDefault();
            set => __pbn__account_id = value;
        }
        public bool ShouldSerializeaccount_id() => __pbn__account_id != null;
        public void Resetaccount_id() => __pbn__account_id = null;
        private uint? __pbn__account_id;

        [global::ProtoBuf.ProtoMember(2)]
        public uint disconnect_time
        {
            get => __pbn__disconnect_time.GetValueOrDefault();
            set => __pbn__disconnect_time = value;
        }
        public bool ShouldSerializedisconnect_time() => __pbn__disconnect_time != null;
        public void Resetdisconnect_time() => __pbn__disconnect_time = null;
        private uint? __pbn__disconnect_time;

        [global::ProtoBuf.ProtoMember(3)]
        public uint connection_state
        {
            get => __pbn__connection_state.GetValueOrDefault();
            set => __pbn__connection_state = value;
        }
        public bool ShouldSerializeconnection_state() => __pbn__connection_state != null;
        public void Resetconnection_state() => __pbn__connection_state = null;
        private uint? __pbn__connection_state;

        [global::ProtoBuf.ProtoMember(4)]
        public uint reason_code
        {
            get => __pbn__reason_code.GetValueOrDefault();
            set => __pbn__reason_code = value;
        }
        public bool ShouldSerializereason_code() => __pbn__reason_code != null;
        public void Resetreason_code() => __pbn__reason_code = null;
        private uint? __pbn__reason_code;

        [global::ProtoBuf.ProtoMember(5)]
        public uint reconnect_delay
        {
            get => __pbn__reconnect_delay.GetValueOrDefault();
            set => __pbn__reconnect_delay = value;
        }
        public bool ShouldSerializereconnect_delay() => __pbn__reconnect_delay != null;
        public void Resetreconnect_delay() => __pbn__reconnect_delay = null;
        private uint? __pbn__reconnect_delay;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgMatchSignoutData_Disconnections : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public global::System.Collections.Generic.List<CMsgMatchDisconnection> disconnections { get; } = new global::System.Collections.Generic.List<CMsgMatchDisconnection>();

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgMatchSignoutData_CombatStats : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public global::System.Collections.Generic.List<CombatRound> combat_rounds { get; } = new global::System.Collections.Generic.List<CombatRound>();

        [global::ProtoBuf.ProtoMember(2)]
        public uint match_mmr
        {
            get => __pbn__match_mmr.GetValueOrDefault();
            set => __pbn__match_mmr = value;
        }
        public bool ShouldSerializematch_mmr() => __pbn__match_mmr != null;
        public void Resetmatch_mmr() => __pbn__match_mmr = null;
        private uint? __pbn__match_mmr;

        [global::ProtoBuf.ProtoMember(3)]
        public global::System.Collections.Generic.List<FinalPlaces> final_places { get; } = new global::System.Collections.Generic.List<FinalPlaces>();

        [global::ProtoBuf.ProtoContract()]
        public partial class CombatRound : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.IExtension __pbn__extensionData;
            global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
                => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

            [global::ProtoBuf.ProtoMember(1)]
            public uint round_number
            {
                get => __pbn__round_number.GetValueOrDefault();
                set => __pbn__round_number = value;
            }
            public bool ShouldSerializeround_number() => __pbn__round_number != null;
            public void Resetround_number() => __pbn__round_number = null;
            private uint? __pbn__round_number;

            [global::ProtoBuf.ProtoMember(2, IsPacked = true)]
            public global::System.Collections.Generic.List<uint> player_elements { get; } = new global::System.Collections.Generic.List<uint>();

            [global::ProtoBuf.ProtoMember(3, IsPacked = true)]
            public global::System.Collections.Generic.List<uint> opponent_elements { get; } = new global::System.Collections.Generic.List<uint>();

            [global::ProtoBuf.ProtoMember(4)]
            public uint player_damage
            {
                get => __pbn__player_damage.GetValueOrDefault();
                set => __pbn__player_damage = value;
            }
            public bool ShouldSerializeplayer_damage() => __pbn__player_damage != null;
            public void Resetplayer_damage() => __pbn__player_damage = null;
            private uint? __pbn__player_damage;

            [global::ProtoBuf.ProtoMember(5)]
            public uint combat_duration_s
            {
                get => __pbn__combat_duration_s.GetValueOrDefault();
                set => __pbn__combat_duration_s = value;
            }
            public bool ShouldSerializecombat_duration_s() => __pbn__combat_duration_s != null;
            public void Resetcombat_duration_s() => __pbn__combat_duration_s = null;
            private uint? __pbn__combat_duration_s;

            [global::ProtoBuf.ProtoMember(6)]
            public bool player_won
            {
                get => __pbn__player_won.GetValueOrDefault();
                set => __pbn__player_won = value;
            }
            public bool ShouldSerializeplayer_won() => __pbn__player_won != null;
            public void Resetplayer_won() => __pbn__player_won = null;
            private bool? __pbn__player_won;

            [global::ProtoBuf.ProtoMember(7)]
            public uint player_slot
            {
                get => __pbn__player_slot.GetValueOrDefault();
                set => __pbn__player_slot = value;
            }
            public bool ShouldSerializeplayer_slot() => __pbn__player_slot != null;
            public void Resetplayer_slot() => __pbn__player_slot = null;
            private uint? __pbn__player_slot;

            [global::ProtoBuf.ProtoMember(8)]
            public uint opponent_slot
            {
                get => __pbn__opponent_slot.GetValueOrDefault();
                set => __pbn__opponent_slot = value;
            }
            public bool ShouldSerializeopponent_slot() => __pbn__opponent_slot != null;
            public void Resetopponent_slot() => __pbn__opponent_slot = null;
            private uint? __pbn__opponent_slot;

            [global::ProtoBuf.ProtoMember(9)]
            public uint player_starting_life
            {
                get => __pbn__player_starting_life.GetValueOrDefault();
                set => __pbn__player_starting_life = value;
            }
            public bool ShouldSerializeplayer_starting_life() => __pbn__player_starting_life != null;
            public void Resetplayer_starting_life() => __pbn__player_starting_life = null;
            private uint? __pbn__player_starting_life;

            [global::ProtoBuf.ProtoMember(10)]
            public uint player_level
            {
                get => __pbn__player_level.GetValueOrDefault();
                set => __pbn__player_level = value;
            }
            public bool ShouldSerializeplayer_level() => __pbn__player_level != null;
            public void Resetplayer_level() => __pbn__player_level = null;
            private uint? __pbn__player_level;

            [global::ProtoBuf.ProtoMember(11)]
            public uint player_rerolls
            {
                get => __pbn__player_rerolls.GetValueOrDefault();
                set => __pbn__player_rerolls = value;
            }
            public bool ShouldSerializeplayer_rerolls() => __pbn__player_rerolls != null;
            public void Resetplayer_rerolls() => __pbn__player_rerolls = null;
            private uint? __pbn__player_rerolls;

            [global::ProtoBuf.ProtoMember(12)]
            public uint player_gold
            {
                get => __pbn__player_gold.GetValueOrDefault();
                set => __pbn__player_gold = value;
            }
            public bool ShouldSerializeplayer_gold() => __pbn__player_gold != null;
            public void Resetplayer_gold() => __pbn__player_gold = null;
            private uint? __pbn__player_gold;

            [global::ProtoBuf.ProtoMember(14)]
            public uint player_interest_gold
            {
                get => __pbn__player_interest_gold.GetValueOrDefault();
                set => __pbn__player_interest_gold = value;
            }
            public bool ShouldSerializeplayer_interest_gold() => __pbn__player_interest_gold != null;
            public void Resetplayer_interest_gold() => __pbn__player_interest_gold = null;
            private uint? __pbn__player_interest_gold;

            [global::ProtoBuf.ProtoMember(15)]
            public uint player_streak_gold
            {
                get => __pbn__player_streak_gold.GetValueOrDefault();
                set => __pbn__player_streak_gold = value;
            }
            public bool ShouldSerializeplayer_streak_gold() => __pbn__player_streak_gold != null;
            public void Resetplayer_streak_gold() => __pbn__player_streak_gold = null;
            private uint? __pbn__player_streak_gold;

            [global::ProtoBuf.ProtoMember(16)]
            public uint player_bonus_gold
            {
                get => __pbn__player_bonus_gold.GetValueOrDefault();
                set => __pbn__player_bonus_gold = value;
            }
            public bool ShouldSerializeplayer_bonus_gold() => __pbn__player_bonus_gold != null;
            public void Resetplayer_bonus_gold() => __pbn__player_bonus_gold = null;
            private uint? __pbn__player_bonus_gold;

        }

        [global::ProtoBuf.ProtoContract()]
        public partial class FinalPlaces : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.IExtension __pbn__extensionData;
            global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
                => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

            [global::ProtoBuf.ProtoMember(1)]
            public uint player_slot
            {
                get => __pbn__player_slot.GetValueOrDefault();
                set => __pbn__player_slot = value;
            }
            public bool ShouldSerializeplayer_slot() => __pbn__player_slot != null;
            public void Resetplayer_slot() => __pbn__player_slot = null;
            private uint? __pbn__player_slot;

            [global::ProtoBuf.ProtoMember(2)]
            public uint final_place
            {
                get => __pbn__final_place.GetValueOrDefault();
                set => __pbn__final_place = value;
            }
            public bool ShouldSerializefinal_place() => __pbn__final_place != null;
            public void Resetfinal_place() => __pbn__final_place = null;
            private uint? __pbn__final_place;

            [global::ProtoBuf.ProtoMember(3)]
            public uint elimination_time_s
            {
                get => __pbn__elimination_time_s.GetValueOrDefault();
                set => __pbn__elimination_time_s = value;
            }
            public bool ShouldSerializeelimination_time_s() => __pbn__elimination_time_s != null;
            public void Resetelimination_time_s() => __pbn__elimination_time_s = null;
            private uint? __pbn__elimination_time_s;

            [global::ProtoBuf.ProtoMember(4)]
            public uint elimination_round
            {
                get => __pbn__elimination_round.GetValueOrDefault();
                set => __pbn__elimination_round = value;
            }
            public bool ShouldSerializeelimination_round() => __pbn__elimination_round != null;
            public void Resetelimination_round() => __pbn__elimination_round = null;
            private uint? __pbn__elimination_round;

            [global::ProtoBuf.ProtoMember(5)]
            public uint underlord_id
            {
                get => __pbn__underlord_id.GetValueOrDefault();
                set => __pbn__underlord_id = value;
            }
            public bool ShouldSerializeunderlord_id() => __pbn__underlord_id != null;
            public void Resetunderlord_id() => __pbn__underlord_id = null;
            private uint? __pbn__underlord_id;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgPlayerSignoutData_MMRUpdate : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public uint final_place
        {
            get => __pbn__final_place.GetValueOrDefault();
            set => __pbn__final_place = value;
        }
        public bool ShouldSerializefinal_place() => __pbn__final_place != null;
        public void Resetfinal_place() => __pbn__final_place = null;
        private uint? __pbn__final_place;

        [global::ProtoBuf.ProtoMember(2)]
        public global::System.Collections.Generic.List<Opponent> opponents { get; } = new global::System.Collections.Generic.List<Opponent>();

        [global::ProtoBuf.ProtoContract()]
        public partial class Opponent : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.IExtension __pbn__extensionData;
            global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
                => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

            [global::ProtoBuf.ProtoMember(1)]
            public uint place
            {
                get => __pbn__place.GetValueOrDefault();
                set => __pbn__place = value;
            }
            public bool ShouldSerializeplace() => __pbn__place != null;
            public void Resetplace() => __pbn__place = null;
            private uint? __pbn__place;

            [global::ProtoBuf.ProtoMember(2)]
            public uint mmr
            {
                get => __pbn__mmr.GetValueOrDefault();
                set => __pbn__mmr = value;
            }
            public bool ShouldSerializemmr() => __pbn__mmr != null;
            public void Resetmmr() => __pbn__mmr = null;
            private uint? __pbn__mmr;

            [global::ProtoBuf.ProtoMember(3)]
            public uint uncertainty
            {
                get => __pbn__uncertainty.GetValueOrDefault();
                set => __pbn__uncertainty = value;
            }
            public bool ShouldSerializeuncertainty() => __pbn__uncertainty != null;
            public void Resetuncertainty() => __pbn__uncertainty = null;
            private uint? __pbn__uncertainty;

            [global::ProtoBuf.ProtoMember(4)]
            public uint account_id
            {
                get => __pbn__account_id.GetValueOrDefault();
                set => __pbn__account_id = value;
            }
            public bool ShouldSerializeaccount_id() => __pbn__account_id != null;
            public void Resetaccount_id() => __pbn__account_id = null;
            private uint? __pbn__account_id;

            [global::ProtoBuf.ProtoMember(5)]
            public uint mmr_level_score
            {
                get => __pbn__mmr_level_score.GetValueOrDefault();
                set => __pbn__mmr_level_score = value;
            }
            public bool ShouldSerializemmr_level_score() => __pbn__mmr_level_score != null;
            public void Resetmmr_level_score() => __pbn__mmr_level_score = null;
            private uint? __pbn__mmr_level_score;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgPlayerSignoutData_MatchStats : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public global::System.Collections.Generic.List<MatchStat> match_stats { get; } = new global::System.Collections.Generic.List<MatchStat>();

        [global::ProtoBuf.ProtoContract()]
        public partial class MatchStat : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.IExtension __pbn__extensionData;
            global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
                => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

            [global::ProtoBuf.ProtoMember(1)]
            public uint stat_id
            {
                get => __pbn__stat_id.GetValueOrDefault();
                set => __pbn__stat_id = value;
            }
            public bool ShouldSerializestat_id() => __pbn__stat_id != null;
            public void Resetstat_id() => __pbn__stat_id = null;
            private uint? __pbn__stat_id;

            [global::ProtoBuf.ProtoMember(2)]
            public uint value
            {
                get => __pbn__value.GetValueOrDefault();
                set => __pbn__value = value;
            }
            public bool ShouldSerializevalue() => __pbn__value != null;
            public void Resetvalue() => __pbn__value = null;
            private uint? __pbn__value;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgPlayerSignoutData_EventGrantProgress : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public uint event_id
        {
            get => __pbn__event_id.GetValueOrDefault();
            set => __pbn__event_id = value;
        }
        public bool ShouldSerializeevent_id() => __pbn__event_id != null;
        public void Resetevent_id() => __pbn__event_id = null;
        private uint? __pbn__event_id;

        [global::ProtoBuf.ProtoMember(2)]
        public global::System.Collections.Generic.List<Currency> currencies { get; } = new global::System.Collections.Generic.List<Currency>();

        [global::ProtoBuf.ProtoMember(4)]
        public global::System.Collections.Generic.List<Challenge> challenges { get; } = new global::System.Collections.Generic.List<Challenge>();

        [global::ProtoBuf.ProtoContract()]
        public partial class Challenge : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.IExtension __pbn__extensionData;
            global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
                => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

            [global::ProtoBuf.ProtoMember(1)]
            public uint slot_id
            {
                get => __pbn__slot_id.GetValueOrDefault();
                set => __pbn__slot_id = value;
            }
            public bool ShouldSerializeslot_id() => __pbn__slot_id != null;
            public void Resetslot_id() => __pbn__slot_id = null;
            private uint? __pbn__slot_id;

            [global::ProtoBuf.ProtoMember(2)]
            public uint sequence_id
            {
                get => __pbn__sequence_id.GetValueOrDefault();
                set => __pbn__sequence_id = value;
            }
            public bool ShouldSerializesequence_id() => __pbn__sequence_id != null;
            public void Resetsequence_id() => __pbn__sequence_id = null;
            private uint? __pbn__sequence_id;

            [global::ProtoBuf.ProtoMember(3)]
            public uint progress
            {
                get => __pbn__progress.GetValueOrDefault();
                set => __pbn__progress = value;
            }
            public bool ShouldSerializeprogress() => __pbn__progress != null;
            public void Resetprogress() => __pbn__progress = null;
            private uint? __pbn__progress;

        }

        [global::ProtoBuf.ProtoContract()]
        public partial class Currency : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.IExtension __pbn__extensionData;
            global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
                => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

            [global::ProtoBuf.ProtoMember(1)]
            public uint currency_id
            {
                get => __pbn__currency_id.GetValueOrDefault();
                set => __pbn__currency_id = value;
            }
            public bool ShouldSerializecurrency_id() => __pbn__currency_id != null;
            public void Resetcurrency_id() => __pbn__currency_id = null;
            private uint? __pbn__currency_id;

            [global::ProtoBuf.ProtoMember(2)]
            public uint grant
            {
                get => __pbn__grant.GetValueOrDefault();
                set => __pbn__grant = value;
            }
            public bool ShouldSerializegrant() => __pbn__grant != null;
            public void Resetgrant() => __pbn__grant = null;
            private uint? __pbn__grant;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgPlayerSignoutData_ChatStats : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(3)]
        public uint yo_count
        {
            get => __pbn__yo_count.GetValueOrDefault();
            set => __pbn__yo_count = value;
        }
        public bool ShouldSerializeyo_count() => __pbn__yo_count != null;
        public void Resetyo_count() => __pbn__yo_count = null;
        private uint? __pbn__yo_count;

        [global::ProtoBuf.ProtoMember(4)]
        public uint chat_line_count
        {
            get => __pbn__chat_line_count.GetValueOrDefault();
            set => __pbn__chat_line_count = value;
        }
        public bool ShouldSerializechat_line_count() => __pbn__chat_line_count != null;
        public void Resetchat_line_count() => __pbn__chat_line_count = null;
        private uint? __pbn__chat_line_count;

        [global::ProtoBuf.ProtoMember(5)]
        public uint combat_line_count
        {
            get => __pbn__combat_line_count.GetValueOrDefault();
            set => __pbn__combat_line_count = value;
        }
        public bool ShouldSerializecombat_line_count() => __pbn__combat_line_count != null;
        public void Resetcombat_line_count() => __pbn__combat_line_count = null;
        private uint? __pbn__combat_line_count;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgPlayerSignoutData_TeamUpdate : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public uint other_team_member
        {
            get => __pbn__other_team_member.GetValueOrDefault();
            set => __pbn__other_team_member = value;
        }
        public bool ShouldSerializeother_team_member() => __pbn__other_team_member != null;
        public void Resetother_team_member() => __pbn__other_team_member = null;
        private uint? __pbn__other_team_member;

        [global::ProtoBuf.ProtoMember(2)]
        public uint final_place
        {
            get => __pbn__final_place.GetValueOrDefault();
            set => __pbn__final_place = value;
        }
        public bool ShouldSerializefinal_place() => __pbn__final_place != null;
        public void Resetfinal_place() => __pbn__final_place = null;
        private uint? __pbn__final_place;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerToGCMatchSignout : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public ulong lobby_id
        {
            get => __pbn__lobby_id.GetValueOrDefault();
            set => __pbn__lobby_id = value;
        }
        public bool ShouldSerializelobby_id() => __pbn__lobby_id != null;
        public void Resetlobby_id() => __pbn__lobby_id = null;
        private ulong? __pbn__lobby_id;

        [global::ProtoBuf.ProtoMember(2)]
        public bool should_signout_match
        {
            get => __pbn__should_signout_match.GetValueOrDefault();
            set => __pbn__should_signout_match = value;
        }
        public bool ShouldSerializeshould_signout_match() => __pbn__should_signout_match != null;
        public void Resetshould_signout_match() => __pbn__should_signout_match = null;
        private bool? __pbn__should_signout_match;

        [global::ProtoBuf.ProtoMember(3)]
        public MatchSignout match_signout { get; set; }

        [global::ProtoBuf.ProtoMember(4)]
        public global::System.Collections.Generic.List<PlayerSignout> player_signouts { get; } = new global::System.Collections.Generic.List<PlayerSignout>();

        [global::ProtoBuf.ProtoMember(5)]
        public uint signout_start_time
        {
            get => __pbn__signout_start_time.GetValueOrDefault();
            set => __pbn__signout_start_time = value;
        }
        public bool ShouldSerializesignout_start_time() => __pbn__signout_start_time != null;
        public void Resetsignout_start_time() => __pbn__signout_start_time = null;
        private uint? __pbn__signout_start_time;

        [global::ProtoBuf.ProtoContract()]
        public partial class MatchSignout : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.IExtension __pbn__extensionData;
            global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
                => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

            [global::ProtoBuf.ProtoMember(1)]
            [global::System.ComponentModel.DefaultValue(EDACMatchState.k_EMatchState_InProgress)]
            public EDACMatchState match_state
            {
                get => __pbn__match_state ?? EDACMatchState.k_EMatchState_InProgress;
                set => __pbn__match_state = value;
            }
            public bool ShouldSerializematch_state() => __pbn__match_state != null;
            public void Resetmatch_state() => __pbn__match_state = null;
            private EDACMatchState? __pbn__match_state;

            [global::ProtoBuf.ProtoMember(2)]
            public global::System.Collections.Generic.List<CExtraMsgBlock> additional_data { get; } = new global::System.Collections.Generic.List<CExtraMsgBlock>();

            [global::ProtoBuf.ProtoMember(3)]
            public uint match_duration_s
            {
                get => __pbn__match_duration_s.GetValueOrDefault();
                set => __pbn__match_duration_s = value;
            }
            public bool ShouldSerializematch_duration_s() => __pbn__match_duration_s != null;
            public void Resetmatch_duration_s() => __pbn__match_duration_s = null;
            private uint? __pbn__match_duration_s;

            [global::ProtoBuf.ProtoMember(4)]
            public uint match_rounds
            {
                get => __pbn__match_rounds.GetValueOrDefault();
                set => __pbn__match_rounds = value;
            }
            public bool ShouldSerializematch_rounds() => __pbn__match_rounds != null;
            public void Resetmatch_rounds() => __pbn__match_rounds = null;
            private uint? __pbn__match_rounds;

        }

        [global::ProtoBuf.ProtoContract()]
        public partial class PlayerSignout : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.IExtension __pbn__extensionData;
            global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
                => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

            [global::ProtoBuf.ProtoMember(1)]
            public uint player_slot
            {
                get => __pbn__player_slot.GetValueOrDefault();
                set => __pbn__player_slot = value;
            }
            public bool ShouldSerializeplayer_slot() => __pbn__player_slot != null;
            public void Resetplayer_slot() => __pbn__player_slot = null;
            private uint? __pbn__player_slot;

            [global::ProtoBuf.ProtoMember(2)]
            public uint account_id
            {
                get => __pbn__account_id.GetValueOrDefault();
                set => __pbn__account_id = value;
            }
            public bool ShouldSerializeaccount_id() => __pbn__account_id != null;
            public void Resetaccount_id() => __pbn__account_id = null;
            private uint? __pbn__account_id;

            [global::ProtoBuf.ProtoMember(3)]
            [global::System.ComponentModel.DefaultValue(EDACPlayerState.k_EPlayerState_Playing)]
            public EDACPlayerState player_state
            {
                get => __pbn__player_state ?? EDACPlayerState.k_EPlayerState_Playing;
                set => __pbn__player_state = value;
            }
            public bool ShouldSerializeplayer_state() => __pbn__player_state != null;
            public void Resetplayer_state() => __pbn__player_state = null;
            private EDACPlayerState? __pbn__player_state;

            [global::ProtoBuf.ProtoMember(4)]
            public global::System.Collections.Generic.List<CExtraMsgBlock> additional_data { get; } = new global::System.Collections.Generic.List<CExtraMsgBlock>();

            [global::ProtoBuf.ProtoMember(6)]
            public uint final_placement
            {
                get => __pbn__final_placement.GetValueOrDefault();
                set => __pbn__final_placement = value;
            }
            public bool ShouldSerializefinal_placement() => __pbn__final_placement != null;
            public void Resetfinal_placement() => __pbn__final_placement = null;
            private uint? __pbn__final_placement;

            [global::ProtoBuf.ProtoMember(7)]
            public uint survival_time_s
            {
                get => __pbn__survival_time_s.GetValueOrDefault();
                set => __pbn__survival_time_s = value;
            }
            public bool ShouldSerializesurvival_time_s() => __pbn__survival_time_s != null;
            public void Resetsurvival_time_s() => __pbn__survival_time_s = null;
            private uint? __pbn__survival_time_s;

            [global::ProtoBuf.ProtoMember(8)]
            public uint survival_round
            {
                get => __pbn__survival_round.GetValueOrDefault();
                set => __pbn__survival_round = value;
            }
            public bool ShouldSerializesurvival_round() => __pbn__survival_round != null;
            public void Resetsurvival_round() => __pbn__survival_round = null;
            private uint? __pbn__survival_round;

            [global::ProtoBuf.ProtoMember(9)]
            public uint underlord_id
            {
                get => __pbn__underlord_id.GetValueOrDefault();
                set => __pbn__underlord_id = value;
            }
            public bool ShouldSerializeunderlord_id() => __pbn__underlord_id != null;
            public void Resetunderlord_id() => __pbn__underlord_id = null;
            private uint? __pbn__underlord_id;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerToGCMatchSignoutResponse : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        [global::System.ComponentModel.DefaultValue(ESignoutResult.k_ESignout_Failed_Retry)]
        public ESignoutResult result
        {
            get => __pbn__result ?? ESignoutResult.k_ESignout_Failed_Retry;
            set => __pbn__result = value;
        }
        public bool ShouldSerializeresult() => __pbn__result != null;
        public void Resetresult() => __pbn__result = null;
        private ESignoutResult? __pbn__result;

        [global::ProtoBuf.ProtoContract()]
        public enum ESignoutResult
        {
            k_ESignout_Failed_Retry = 1,
            k_ESignout_Failed_NoRetry = 2,
            k_ESignout_Failed_InFlight = 3,
            k_ESignout_Success = 4,
            k_ESignout_Success_AlreadySignedOut = 5,
        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerWelcomeDAC : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public global::System.Collections.Generic.List<string> console_commands { get; } = new global::System.Collections.Generic.List<string>();

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerToGCIdlePing : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public uint server_version
        {
            get => __pbn__server_version.GetValueOrDefault();
            set => __pbn__server_version = value;
        }
        public bool ShouldSerializeserver_version() => __pbn__server_version != null;
        public void Resetserver_version() => __pbn__server_version = null;
        private uint? __pbn__server_version;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCToServerRequestPing : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCToServerAllocateForMatch : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public ulong match_id
        {
            get => __pbn__match_id.GetValueOrDefault();
            set => __pbn__match_id = value;
        }
        public bool ShouldSerializematch_id() => __pbn__match_id != null;
        public void Resetmatch_id() => __pbn__match_id = null;
        private ulong? __pbn__match_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCToServerAllocateForMatchResponse : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public bool success
        {
            get => __pbn__success.GetValueOrDefault();
            set => __pbn__success = value;
        }
        public bool ShouldSerializesuccess() => __pbn__success != null;
        public void Resetsuccess() => __pbn__success = null;
        private bool? __pbn__success;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerToGCMatchSignoutPermission : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public ulong lobby_id
        {
            get => __pbn__lobby_id.GetValueOrDefault();
            set => __pbn__lobby_id = value;
        }
        public bool ShouldSerializelobby_id() => __pbn__lobby_id != null;
        public void Resetlobby_id() => __pbn__lobby_id = null;
        private ulong? __pbn__lobby_id;

        [global::ProtoBuf.ProtoMember(2)]
        [global::System.ComponentModel.DefaultValue(EDACMatchMode.k_EDACMatchMode_Invalid)]
        public EDACMatchMode match_mode
        {
            get => __pbn__match_mode ?? EDACMatchMode.k_EDACMatchMode_Invalid;
            set => __pbn__match_mode = value;
        }
        public bool ShouldSerializematch_mode() => __pbn__match_mode != null;
        public void Resetmatch_mode() => __pbn__match_mode = null;
        private EDACMatchMode? __pbn__match_mode;

        [global::ProtoBuf.ProtoMember(3)]
        public uint failed_signouts
        {
            get => __pbn__failed_signouts.GetValueOrDefault();
            set => __pbn__failed_signouts = value;
        }
        public bool ShouldSerializefailed_signouts() => __pbn__failed_signouts != null;
        public void Resetfailed_signouts() => __pbn__failed_signouts = null;
        private uint? __pbn__failed_signouts;

        [global::ProtoBuf.ProtoMember(4)]
        public uint permission_request
        {
            get => __pbn__permission_request.GetValueOrDefault();
            set => __pbn__permission_request = value;
        }
        public bool ShouldSerializepermission_request() => __pbn__permission_request != null;
        public void Resetpermission_request() => __pbn__permission_request = null;
        private uint? __pbn__permission_request;

        [global::ProtoBuf.ProtoMember(5)]
        [global::System.ComponentModel.DefaultValue(EDACGameMode.k_EDACGameMode_Invalid)]
        public EDACGameMode game_mode
        {
            get => __pbn__game_mode ?? EDACGameMode.k_EDACGameMode_Invalid;
            set => __pbn__game_mode = value;
        }
        public bool ShouldSerializegame_mode() => __pbn__game_mode != null;
        public void Resetgame_mode() => __pbn__game_mode = null;
        private EDACGameMode? __pbn__game_mode;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerToGCMatchSignoutPermissionResponse : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public bool can_sign_out
        {
            get => __pbn__can_sign_out.GetValueOrDefault();
            set => __pbn__can_sign_out = value;
        }
        public bool ShouldSerializecan_sign_out() => __pbn__can_sign_out != null;
        public void Resetcan_sign_out() => __pbn__can_sign_out = null;
        private bool? __pbn__can_sign_out;

        [global::ProtoBuf.ProtoMember(2)]
        public uint retry_time_s
        {
            get => __pbn__retry_time_s.GetValueOrDefault();
            set => __pbn__retry_time_s = value;
        }
        public bool ShouldSerializeretry_time_s() => __pbn__retry_time_s != null;
        public void Resetretry_time_s() => __pbn__retry_time_s = null;
        private uint? __pbn__retry_time_s;

        [global::ProtoBuf.ProtoMember(3)]
        public global::System.Collections.Generic.List<EGCServerSignoutData> requested_data { get; } = new global::System.Collections.Generic.List<EGCServerSignoutData>();

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerToGCEnterMatchmaking : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public uint server_version
        {
            get => __pbn__server_version.GetValueOrDefault();
            set => __pbn__server_version = value;
        }
        public bool ShouldSerializeserver_version() => __pbn__server_version != null;
        public void Resetserver_version() => __pbn__server_version = null;
        private uint? __pbn__server_version;

        [global::ProtoBuf.ProtoMember(2)]
        [global::System.ComponentModel.DefaultValue("")]
        public string search_key
        {
            get => __pbn__search_key ?? "";
            set => __pbn__search_key = value;
        }
        public bool ShouldSerializesearch_key() => __pbn__search_key != null;
        public void Resetsearch_key() => __pbn__search_key = null;
        private string __pbn__search_key;

        [global::ProtoBuf.ProtoMember(3)]
        public uint region_id
        {
            get => __pbn__region_id.GetValueOrDefault();
            set => __pbn__region_id = value;
        }
        public bool ShouldSerializeregion_id() => __pbn__region_id != null;
        public void Resetregion_id() => __pbn__region_id = null;
        private uint? __pbn__region_id;

        [global::ProtoBuf.ProtoMember(4)]
        public uint cluster_id
        {
            get => __pbn__cluster_id.GetValueOrDefault();
            set => __pbn__cluster_id = value;
        }
        public bool ShouldSerializecluster_id() => __pbn__cluster_id != null;
        public void Resetcluster_id() => __pbn__cluster_id = null;
        private uint? __pbn__cluster_id;

        [global::ProtoBuf.ProtoMember(5)]
        public uint server_public_ip
        {
            get => __pbn__server_public_ip.GetValueOrDefault();
            set => __pbn__server_public_ip = value;
        }
        public bool ShouldSerializeserver_public_ip() => __pbn__server_public_ip != null;
        public void Resetserver_public_ip() => __pbn__server_public_ip = null;
        private uint? __pbn__server_public_ip;

        [global::ProtoBuf.ProtoMember(6)]
        public uint server_private_ip
        {
            get => __pbn__server_private_ip.GetValueOrDefault();
            set => __pbn__server_private_ip = value;
        }
        public bool ShouldSerializeserver_private_ip() => __pbn__server_private_ip != null;
        public void Resetserver_private_ip() => __pbn__server_private_ip = null;
        private uint? __pbn__server_private_ip;

        [global::ProtoBuf.ProtoMember(7)]
        public uint server_port
        {
            get => __pbn__server_port.GetValueOrDefault();
            set => __pbn__server_port = value;
        }
        public bool ShouldSerializeserver_port() => __pbn__server_port != null;
        public void Resetserver_port() => __pbn__server_port = null;
        private uint? __pbn__server_port;

        [global::ProtoBuf.ProtoMember(9)]
        public byte[] sdr_address
        {
            get => __pbn__sdr_address;
            set => __pbn__sdr_address = value;
        }
        public bool ShouldSerializesdr_address() => __pbn__sdr_address != null;
        public void Resetsdr_address() => __pbn__sdr_address = null;
        private byte[] __pbn__sdr_address;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCToServerCancelAllocateForMatch : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public ulong match_id
        {
            get => __pbn__match_id.GetValueOrDefault();
            set => __pbn__match_id = value;
        }
        public bool ShouldSerializematch_id() => __pbn__match_id != null;
        public void Resetmatch_id() => __pbn__match_id = null;
        private ulong? __pbn__match_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerToGCUpdateLobbyServerState : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public ulong lobby_id
        {
            get => __pbn__lobby_id.GetValueOrDefault();
            set => __pbn__lobby_id = value;
        }
        public bool ShouldSerializelobby_id() => __pbn__lobby_id != null;
        public void Resetlobby_id() => __pbn__lobby_id = null;
        private ulong? __pbn__lobby_id;

        [global::ProtoBuf.ProtoMember(2)]
        [global::System.ComponentModel.DefaultValue(ELobbyServerState.k_eLobbyServerState_Assign)]
        public ELobbyServerState server_state
        {
            get => __pbn__server_state ?? ELobbyServerState.k_eLobbyServerState_Assign;
            set => __pbn__server_state = value;
        }
        public bool ShouldSerializeserver_state() => __pbn__server_state != null;
        public void Resetserver_state() => __pbn__server_state = null;
        private ELobbyServerState? __pbn__server_state;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerToGCAbandonMatch : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong server_steam_id
        {
            get => __pbn__server_steam_id.GetValueOrDefault();
            set => __pbn__server_steam_id = value;
        }
        public bool ShouldSerializeserver_steam_id() => __pbn__server_steam_id != null;
        public void Resetserver_steam_id() => __pbn__server_steam_id = null;
        private ulong? __pbn__server_steam_id;

        [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong lobby_id
        {
            get => __pbn__lobby_id.GetValueOrDefault();
            set => __pbn__lobby_id = value;
        }
        public bool ShouldSerializelobby_id() => __pbn__lobby_id != null;
        public void Resetlobby_id() => __pbn__lobby_id = null;
        private ulong? __pbn__lobby_id;

        [global::ProtoBuf.ProtoMember(3)]
        public uint cluster_id
        {
            get => __pbn__cluster_id.GetValueOrDefault();
            set => __pbn__cluster_id = value;
        }
        public bool ShouldSerializecluster_id() => __pbn__cluster_id != null;
        public void Resetcluster_id() => __pbn__cluster_id = null;
        private uint? __pbn__cluster_id;

        [global::ProtoBuf.ProtoMember(4)]
        [global::System.ComponentModel.DefaultValue(EReason.eReason_ServerCrash)]
        public EReason reason_code
        {
            get => __pbn__reason_code ?? EReason.eReason_ServerCrash;
            set => __pbn__reason_code = value;
        }
        public bool ShouldSerializereason_code() => __pbn__reason_code != null;
        public void Resetreason_code() => __pbn__reason_code = null;
        private EReason? __pbn__reason_code;

        [global::ProtoBuf.ProtoMember(5)]
        public ulong additional_data
        {
            get => __pbn__additional_data.GetValueOrDefault();
            set => __pbn__additional_data = value;
        }
        public bool ShouldSerializeadditional_data() => __pbn__additional_data != null;
        public void Resetadditional_data() => __pbn__additional_data = null;
        private ulong? __pbn__additional_data;

        [global::ProtoBuf.ProtoMember(6)]
        public ulong match_id
        {
            get => __pbn__match_id.GetValueOrDefault();
            set => __pbn__match_id = value;
        }
        public bool ShouldSerializematch_id() => __pbn__match_id != null;
        public void Resetmatch_id() => __pbn__match_id = null;
        private ulong? __pbn__match_id;

        [global::ProtoBuf.ProtoMember(8)]
        public global::System.Collections.Generic.List<Player> players { get; } = new global::System.Collections.Generic.List<Player>();

        [global::ProtoBuf.ProtoMember(9, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public uint public_ip_address
        {
            get => __pbn__public_ip_address.GetValueOrDefault();
            set => __pbn__public_ip_address = value;
        }
        public bool ShouldSerializepublic_ip_address() => __pbn__public_ip_address != null;
        public void Resetpublic_ip_address() => __pbn__public_ip_address = null;
        private uint? __pbn__public_ip_address;

        [global::ProtoBuf.ProtoMember(10)]
        public uint port
        {
            get => __pbn__port.GetValueOrDefault();
            set => __pbn__port = value;
        }
        public bool ShouldSerializeport() => __pbn__port != null;
        public void Resetport() => __pbn__port = null;
        private uint? __pbn__port;

        [global::ProtoBuf.ProtoMember(11)]
        public uint server_version
        {
            get => __pbn__server_version.GetValueOrDefault();
            set => __pbn__server_version = value;
        }
        public bool ShouldSerializeserver_version() => __pbn__server_version != null;
        public void Resetserver_version() => __pbn__server_version = null;
        private uint? __pbn__server_version;

        [global::ProtoBuf.ProtoMember(12)]
        public uint pid
        {
            get => __pbn__pid.GetValueOrDefault();
            set => __pbn__pid = value;
        }
        public bool ShouldSerializepid() => __pbn__pid != null;
        public void Resetpid() => __pbn__pid = null;
        private uint? __pbn__pid;

        [global::ProtoBuf.ProtoMember(13)]
        public uint instance_id
        {
            get => __pbn__instance_id.GetValueOrDefault();
            set => __pbn__instance_id = value;
        }
        public bool ShouldSerializeinstance_id() => __pbn__instance_id != null;
        public void Resetinstance_id() => __pbn__instance_id = null;
        private uint? __pbn__instance_id;

        [global::ProtoBuf.ProtoMember(14)]
        public uint private_ip_address
        {
            get => __pbn__private_ip_address.GetValueOrDefault();
            set => __pbn__private_ip_address = value;
        }
        public bool ShouldSerializeprivate_ip_address() => __pbn__private_ip_address != null;
        public void Resetprivate_ip_address() => __pbn__private_ip_address = null;
        private uint? __pbn__private_ip_address;

        [global::ProtoBuf.ProtoContract()]
        public partial class Player : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.IExtension __pbn__extensionData;
            global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
                => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

            [global::ProtoBuf.ProtoMember(1)]
            public uint account_id
            {
                get => __pbn__account_id.GetValueOrDefault();
                set => __pbn__account_id = value;
            }
            public bool ShouldSerializeaccount_id() => __pbn__account_id != null;
            public void Resetaccount_id() => __pbn__account_id = null;
            private uint? __pbn__account_id;

            [global::ProtoBuf.ProtoMember(2)]
            public ulong additional_data
            {
                get => __pbn__additional_data.GetValueOrDefault();
                set => __pbn__additional_data = value;
            }
            public bool ShouldSerializeadditional_data() => __pbn__additional_data != null;
            public void Resetadditional_data() => __pbn__additional_data = null;
            private ulong? __pbn__additional_data;

        }

        [global::ProtoBuf.ProtoContract()]
        public enum EReason
        {
            eReason_ServerCrash = 1,
            eReason_ClientsFailedToConnect = 2,
        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerToGCAbandonMatchResponse : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerToGCTestConnection : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public byte[] test_payload
        {
            get => __pbn__test_payload;
            set => __pbn__test_payload = value;
        }
        public bool ShouldSerializetest_payload() => __pbn__test_payload != null;
        public void Resettest_payload() => __pbn__test_payload = null;
        private byte[] __pbn__test_payload;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerToGCTestConnectionResponse : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public uint state
        {
            get => __pbn__state.GetValueOrDefault();
            set => __pbn__state = value;
        }
        public bool ShouldSerializestate() => __pbn__state != null;
        public void Resetstate() => __pbn__state = null;
        private uint? __pbn__state;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong lobby_id
        {
            get => __pbn__lobby_id.GetValueOrDefault();
            set => __pbn__lobby_id = value;
        }
        public bool ShouldSerializelobby_id() => __pbn__lobby_id != null;
        public void Resetlobby_id() => __pbn__lobby_id = null;
        private ulong? __pbn__lobby_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCToServerAddSpectator : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public ulong lobby_id
        {
            get => __pbn__lobby_id.GetValueOrDefault();
            set => __pbn__lobby_id = value;
        }
        public bool ShouldSerializelobby_id() => __pbn__lobby_id != null;
        public void Resetlobby_id() => __pbn__lobby_id = null;
        private ulong? __pbn__lobby_id;

        [global::ProtoBuf.ProtoMember(2)]
        public uint account_id
        {
            get => __pbn__account_id.GetValueOrDefault();
            set => __pbn__account_id = value;
        }
        public bool ShouldSerializeaccount_id() => __pbn__account_id != null;
        public void Resetaccount_id() => __pbn__account_id = null;
        private uint? __pbn__account_id;

        [global::ProtoBuf.ProtoMember(3)]
        public uint account_to_spectate
        {
            get => __pbn__account_to_spectate.GetValueOrDefault();
            set => __pbn__account_to_spectate = value;
        }
        public bool ShouldSerializeaccount_to_spectate() => __pbn__account_to_spectate != null;
        public void Resetaccount_to_spectate() => __pbn__account_to_spectate = null;
        private uint? __pbn__account_to_spectate;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCToServerAddSpectatorResponse : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        [global::System.ComponentModel.DefaultValue(EResponse.k_eInternalError)]
        public EResponse result
        {
            get => __pbn__result ?? EResponse.k_eInternalError;
            set => __pbn__result = value;
        }
        public bool ShouldSerializeresult() => __pbn__result != null;
        public void Resetresult() => __pbn__result = null;
        private EResponse? __pbn__result;

        [global::ProtoBuf.ProtoMember(2)]
        public uint account_to_spectate
        {
            get => __pbn__account_to_spectate.GetValueOrDefault();
            set => __pbn__account_to_spectate = value;
        }
        public bool ShouldSerializeaccount_to_spectate() => __pbn__account_to_spectate != null;
        public void Resetaccount_to_spectate() => __pbn__account_to_spectate = null;
        private uint? __pbn__account_to_spectate;

        [global::ProtoBuf.ProtoContract()]
        public enum EResponse
        {
            k_eInternalError = 0,
            k_eSuccess = 1,
            k_eServerFull = 2,
        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCToServerUpdateConsoleCommands : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public global::System.Collections.Generic.List<string> console_commands { get; } = new global::System.Collections.Generic.List<string>();

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServertoGCPuzzleResults : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public uint account_id
        {
            get => __pbn__account_id.GetValueOrDefault();
            set => __pbn__account_id = value;
        }
        public bool ShouldSerializeaccount_id() => __pbn__account_id != null;
        public void Resetaccount_id() => __pbn__account_id = null;
        private uint? __pbn__account_id;

        [global::ProtoBuf.ProtoMember(2)]
        public uint puzzle_id
        {
            get => __pbn__puzzle_id.GetValueOrDefault();
            set => __pbn__puzzle_id = value;
        }
        public bool ShouldSerializepuzzle_id() => __pbn__puzzle_id != null;
        public void Resetpuzzle_id() => __pbn__puzzle_id = null;
        private uint? __pbn__puzzle_id;

        [global::ProtoBuf.ProtoMember(3)]
        [global::System.ComponentModel.DefaultValue("")]
        public string board_code
        {
            get => __pbn__board_code ?? "";
            set => __pbn__board_code = value;
        }
        public bool ShouldSerializeboard_code() => __pbn__board_code != null;
        public void Resetboard_code() => __pbn__board_code = null;
        private string __pbn__board_code;

        [global::ProtoBuf.ProtoMember(4)]
        public uint gold
        {
            get => __pbn__gold.GetValueOrDefault();
            set => __pbn__gold = value;
        }
        public bool ShouldSerializegold() => __pbn__gold != null;
        public void Resetgold() => __pbn__gold = null;
        private uint? __pbn__gold;

        [global::ProtoBuf.ProtoMember(5)]
        public uint time
        {
            get => __pbn__time.GetValueOrDefault();
            set => __pbn__time = value;
        }
        public bool ShouldSerializetime() => __pbn__time != null;
        public void Resettime() => __pbn__time = null;
        private uint? __pbn__time;

        [global::ProtoBuf.ProtoMember(6)]
        public uint health_pct
        {
            get => __pbn__health_pct.GetValueOrDefault();
            set => __pbn__health_pct = value;
        }
        public bool ShouldSerializehealth_pct() => __pbn__health_pct != null;
        public void Resethealth_pct() => __pbn__health_pct = null;
        private uint? __pbn__health_pct;

        [global::ProtoBuf.ProtoMember(7)]
        public uint units
        {
            get => __pbn__units.GetValueOrDefault();
            set => __pbn__units = value;
        }
        public bool ShouldSerializeunits() => __pbn__units != null;
        public void Resetunits() => __pbn__units = null;
        private uint? __pbn__units;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServertoGCPuzzleResultsResponse : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public CMsgPuzzleLeaderboardHistogramList histogram_list { get; set; }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServertoGCPuzzleBestRequest : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public uint account_id
        {
            get => __pbn__account_id.GetValueOrDefault();
            set => __pbn__account_id = value;
        }
        public bool ShouldSerializeaccount_id() => __pbn__account_id != null;
        public void Resetaccount_id() => __pbn__account_id = null;
        private uint? __pbn__account_id;

        [global::ProtoBuf.ProtoMember(2)]
        public uint puzzle_id
        {
            get => __pbn__puzzle_id.GetValueOrDefault();
            set => __pbn__puzzle_id = value;
        }
        public bool ShouldSerializepuzzle_id() => __pbn__puzzle_id != null;
        public void Resetpuzzle_id() => __pbn__puzzle_id = null;
        private uint? __pbn__puzzle_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServertoGCPuzzleBestResponse : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public global::System.Collections.Generic.List<Leaderboard> leaderboards { get; } = new global::System.Collections.Generic.List<Leaderboard>();

        [global::ProtoBuf.ProtoContract()]
        public partial class Leaderboard : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.IExtension __pbn__extensionData;
            global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
                => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

            [global::ProtoBuf.ProtoMember(1)]
            public uint leaderboard_type
            {
                get => __pbn__leaderboard_type.GetValueOrDefault();
                set => __pbn__leaderboard_type = value;
            }
            public bool ShouldSerializeleaderboard_type() => __pbn__leaderboard_type != null;
            public void Resetleaderboard_type() => __pbn__leaderboard_type = null;
            private uint? __pbn__leaderboard_type;

            [global::ProtoBuf.ProtoMember(2)]
            public uint value
            {
                get => __pbn__value.GetValueOrDefault();
                set => __pbn__value = value;
            }
            public bool ShouldSerializevalue() => __pbn__value != null;
            public void Resetvalue() => __pbn__value = null;
            private uint? __pbn__value;

            [global::ProtoBuf.ProtoMember(3)]
            [global::System.ComponentModel.DefaultValue("")]
            public string board_code
            {
                get => __pbn__board_code ?? "";
                set => __pbn__board_code = value;
            }
            public bool ShouldSerializeboard_code() => __pbn__board_code != null;
            public void Resetboard_code() => __pbn__board_code = null;
            private string __pbn__board_code;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public enum EGCDACServerMessages
    {
        k_EMsgServerToGCMatchSignoutPermission = 10001,
        k_EMsgServerToGCMatchSignoutPermissionResponse = 10002,
        k_EMsgServerToGCMatchSignout = 10003,
        k_EMsgServerToGCMatchSignoutResponse = 10004,
        k_EMsgServerToGCIdlePing = 10005,
        k_EMsgGCToServerRequestPing = 10006,
        k_EMsgGCToServerAllocateForMatch = 10007,
        k_EMsgGCToServerAllocateForMatchResponse = 10008,
        k_EMsgServerToGCEnterMatchmaking = 10009,
        k_EMsgGCToServerCancelAllocateForMatch = 10010,
        k_EMsgServerToGCUpdateLobbyServerState = 10011,
        k_EMsgServerToGCAbandonMatch = 10012,
        k_EMsgServerToGCAbandonMatchResponse = 10013,
        k_EMsgServerToGCTestConnection = 10014,
        k_EMsgServerToGCTestConnectionResponse = 10015,
        k_EMsgGCToServerAddSpectator = 10016,
        k_EMsgGCToServerAddSpectatorResponse = 10017,
        k_EMsgGCToServerUpdateConsoleCommands = 10018,
        k_EMsgServertoGCPuzzleResults = 10019,
        k_EMsgServertoGCPuzzleResultsResponse = 10020,
        k_EMsgServertoGCPuzzleBestRequest = 10021,
        k_EMsgServertoGCPuzzleBestResponse = 10022,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum EGCServerLobbyData
    {
        k_EServerLobbyData_PlayerInfo = 1,
        k_EServerLobbyData_PlayerMMR = 2,
        k_EServerLobbyData_GameModifiers = 3,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum EGCServerSignoutData
    {
        k_EMatchSignoutData_Disconnections = 1,
        k_EMatchSignoutData_PerformanceStats = 2,
        k_EMatchSignoutData_CombatStats = 3,
        k_EMatchSignoutData_PostMatchStats = 4,
        k_EPlayerSignoutData_MMRUpdate = 10,
        k_EPlayerSignoutData_EventGrantProgress = 11,
        k_EPlayerSignoutData_ChatStats = 12,
        k_EPlayerSignoutData_TeamUpdate = 13,
        k_EPlayerSignoutData_MatchStats = 14,
    }

}

#pragma warning restore CS0612, CS0618, CS1591, CS3021, IDE1006, RCS1036, RCS1057, RCS1085, RCS1192
#endregion
