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

#region Designer generated code
#pragma warning disable CS0612, CS0618, CS1591, CS3021, IDE1006, RCS1036, RCS1057, RCS1085, RCS1192
namespace SteamKit2.GC.Artifact.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 DCGGameInfo dcg_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 DCGGameInfo : 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(3)]
            public uint gauntlet_id
            {
                get => __pbn__gauntlet_id.GetValueOrDefault();
                set => __pbn__gauntlet_id = value;
            }
            public bool ShouldSerializegauntlet_id() => __pbn__gauntlet_id != null;
            public void Resetgauntlet_id() => __pbn__gauntlet_id = null;
            private uint? __pbn__gauntlet_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_CardAchievements : 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, IsPacked = true)]
        public global::System.Collections.Generic.List<uint> achievement_ids { get; } = new global::System.Collections.Generic.List<uint>();

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CServerDraftCard : 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 def_index
        {
            get => __pbn__def_index.GetValueOrDefault();
            set => __pbn__def_index = value;
        }
        public bool ShouldSerializedef_index() => __pbn__def_index != null;
        public void Resetdef_index() => __pbn__def_index = null;
        private uint? __pbn__def_index;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CServerLobbyData_DraftCards : 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.ProtoContract()]
        public partial class Pack : 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 pack_item_id
            {
                get => __pbn__pack_item_id.GetValueOrDefault();
                set => __pbn__pack_item_id = value;
            }
            public bool ShouldSerializepack_item_id() => __pbn__pack_item_id != null;
            public void Resetpack_item_id() => __pbn__pack_item_id = null;
            private ulong? __pbn__pack_item_id;

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

        }

        [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 global::System.Collections.Generic.List<CServerLobbyData_DraftCards.Pack> packs { get; } = new global::System.Collections.Generic.List<CServerLobbyData_DraftCards.Pack>();

            [global::ProtoBuf.ProtoMember(3)]
            public bool cannot_trade
            {
                get => __pbn__cannot_trade.GetValueOrDefault();
                set => __pbn__cannot_trade = value;
            }
            public bool ShouldSerializecannot_trade() => __pbn__cannot_trade != null;
            public void Resetcannot_trade() => __pbn__cannot_trade = null;
            private bool? __pbn__cannot_trade;

            [global::ProtoBuf.ProtoMember(4)]
            public uint trade_restriction_time
            {
                get => __pbn__trade_restriction_time.GetValueOrDefault();
                set => __pbn__trade_restriction_time = value;
            }
            public bool ShouldSerializetrade_restriction_time() => __pbn__trade_restriction_time != null;
            public void Resettrade_restriction_time() => __pbn__trade_restriction_time = null;
            private uint? __pbn__trade_restriction_time;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CServerLobbyData_PlayerDeck : 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[] deck_data
        {
            get => __pbn__deck_data;
            set => __pbn__deck_data = value;
        }
        public bool ShouldSerializedeck_data() => __pbn__deck_data != null;
        public void Resetdeck_data() => __pbn__deck_data = null;
        private byte[] __pbn__deck_data;

    }

    [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.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.ProtoContract()]
    public partial class CServerLobbyData_GauntletInfo : 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 CMsgGauntletConfig gauntlet_config { get; set; }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CServerLobbyData_DeckValidator : 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 CMsgDeckValidator deck_validator { get; set; }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CServerLobbyData_PlayerInfo : 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 progress_level
        {
            get => __pbn__progress_level.GetValueOrDefault();
            set => __pbn__progress_level = value;
        }
        public bool ShouldSerializeprogress_level() => __pbn__progress_level != null;
        public void Resetprogress_level() => __pbn__progress_level = null;
        private uint? __pbn__progress_level;

        [global::ProtoBuf.ProtoMember(3)]
        public uint progress_xp
        {
            get => __pbn__progress_xp.GetValueOrDefault();
            set => __pbn__progress_xp = value;
        }
        public bool ShouldSerializeprogress_xp() => __pbn__progress_xp != null;
        public void Resetprogress_xp() => __pbn__progress_xp = null;
        private uint? __pbn__progress_xp;

        [global::ProtoBuf.ProtoMember(4)]
        public uint mmr_level
        {
            get => __pbn__mmr_level.GetValueOrDefault();
            set => __pbn__mmr_level = value;
        }
        public bool ShouldSerializemmr_level() => __pbn__mmr_level != null;
        public void Resetmmr_level() => __pbn__mmr_level = null;
        private uint? __pbn__mmr_level;

        [global::ProtoBuf.ProtoMember(5)]
        public uint last_win_bonus_time
        {
            get => __pbn__last_win_bonus_time.GetValueOrDefault();
            set => __pbn__last_win_bonus_time = value;
        }
        public bool ShouldSerializelast_win_bonus_time() => __pbn__last_win_bonus_time != null;
        public void Resetlast_win_bonus_time() => __pbn__last_win_bonus_time = null;
        private uint? __pbn__last_win_bonus_time;

        [global::ProtoBuf.ProtoMember(6)]
        public uint win_streak
        {
            get => __pbn__win_streak.GetValueOrDefault();
            set => __pbn__win_streak = value;
        }
        public bool ShouldSerializewin_streak() => __pbn__win_streak != null;
        public void Resetwin_streak() => __pbn__win_streak = null;
        private uint? __pbn__win_streak;

        [global::ProtoBuf.ProtoMember(7)]
        public uint bonus_period_wins
        {
            get => __pbn__bonus_period_wins.GetValueOrDefault();
            set => __pbn__bonus_period_wins = value;
        }
        public bool ShouldSerializebonus_period_wins() => __pbn__bonus_period_wins != null;
        public void Resetbonus_period_wins() => __pbn__bonus_period_wins = null;
        private uint? __pbn__bonus_period_wins;

        [global::ProtoBuf.ProtoMember(8)]
        public uint player_badge
        {
            get => __pbn__player_badge.GetValueOrDefault();
            set => __pbn__player_badge = value;
        }
        public bool ShouldSerializeplayer_badge() => __pbn__player_badge != null;
        public void Resetplayer_badge() => __pbn__player_badge = null;
        private uint? __pbn__player_badge;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CSODCGServerLobby : 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, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong private_lobby_id
        {
            get => __pbn__private_lobby_id.GetValueOrDefault();
            set => __pbn__private_lobby_id = value;
        }
        public bool ShouldSerializeprivate_lobby_id() => __pbn__private_lobby_id != null;
        public void Resetprivate_lobby_id() => __pbn__private_lobby_id = null;
        private ulong? __pbn__private_lobby_id;

        [global::ProtoBuf.ProtoMember(6)]
        [global::System.ComponentModel.DefaultValue(EDCGLobbyTimer.k_eDCGLobbyTimer_Unspecified)]
        public EDCGLobbyTimer timer_mode
        {
            get => __pbn__timer_mode ?? EDCGLobbyTimer.k_eDCGLobbyTimer_Unspecified;
            set => __pbn__timer_mode = value;
        }
        public bool ShouldSerializetimer_mode() => __pbn__timer_mode != null;
        public void Resettimer_mode() => __pbn__timer_mode = null;
        private EDCGLobbyTimer? __pbn__timer_mode;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerSignoutData_MatchChatStats : 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<ChatStats> chat_stats { get; } = new global::System.Collections.Generic.List<ChatStats>();

        [global::ProtoBuf.ProtoContract()]
        public partial class 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(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 total_messages
            {
                get => __pbn__total_messages.GetValueOrDefault();
                set => __pbn__total_messages = value;
            }
            public bool ShouldSerializetotal_messages() => __pbn__total_messages != null;
            public void Resettotal_messages() => __pbn__total_messages = null;
            private uint? __pbn__total_messages;

            [global::ProtoBuf.ProtoMember(3)]
            public uint total_custom_messages
            {
                get => __pbn__total_custom_messages.GetValueOrDefault();
                set => __pbn__total_custom_messages = value;
            }
            public bool ShouldSerializetotal_custom_messages() => __pbn__total_custom_messages != null;
            public void Resettotal_custom_messages() => __pbn__total_custom_messages = null;
            private uint? __pbn__total_custom_messages;

            [global::ProtoBuf.ProtoMember(4)]
            public bool user_sent_custom_message_before_mute
            {
                get => __pbn__user_sent_custom_message_before_mute.GetValueOrDefault();
                set => __pbn__user_sent_custom_message_before_mute = value;
            }
            public bool ShouldSerializeuser_sent_custom_message_before_mute() => __pbn__user_sent_custom_message_before_mute != null;
            public void Resetuser_sent_custom_message_before_mute() => __pbn__user_sent_custom_message_before_mute = null;
            private bool? __pbn__user_sent_custom_message_before_mute;

            [global::ProtoBuf.ProtoMember(5)]
            public uint total_messages_sent_while_muted
            {
                get => __pbn__total_messages_sent_while_muted.GetValueOrDefault();
                set => __pbn__total_messages_sent_while_muted = value;
            }
            public bool ShouldSerializetotal_messages_sent_while_muted() => __pbn__total_messages_sent_while_muted != null;
            public void Resettotal_messages_sent_while_muted() => __pbn__total_messages_sent_while_muted = null;
            private uint? __pbn__total_messages_sent_while_muted;

            [global::ProtoBuf.ProtoMember(6)]
            public uint num_times_squelched
            {
                get => __pbn__num_times_squelched.GetValueOrDefault();
                set => __pbn__num_times_squelched = value;
            }
            public bool ShouldSerializenum_times_squelched() => __pbn__num_times_squelched != null;
            public void Resetnum_times_squelched() => __pbn__num_times_squelched = null;
            private uint? __pbn__num_times_squelched;

            [global::ProtoBuf.ProtoMember(7)]
            public bool user_muted_opponent_before_receiving_message
            {
                get => __pbn__user_muted_opponent_before_receiving_message.GetValueOrDefault();
                set => __pbn__user_muted_opponent_before_receiving_message = value;
            }
            public bool ShouldSerializeuser_muted_opponent_before_receiving_message() => __pbn__user_muted_opponent_before_receiving_message != null;
            public void Resetuser_muted_opponent_before_receiving_message() => __pbn__user_muted_opponent_before_receiving_message = null;
            private bool? __pbn__user_muted_opponent_before_receiving_message;

            [global::ProtoBuf.ProtoMember(8)]
            public bool user_was_muted_then_was_unmuted
            {
                get => __pbn__user_was_muted_then_was_unmuted.GetValueOrDefault();
                set => __pbn__user_was_muted_then_was_unmuted = value;
            }
            public bool ShouldSerializeuser_was_muted_then_was_unmuted() => __pbn__user_was_muted_then_was_unmuted != null;
            public void Resetuser_was_muted_then_was_unmuted() => __pbn__user_was_muted_then_was_unmuted = null;
            private bool? __pbn__user_was_muted_then_was_unmuted;

            [global::ProtoBuf.ProtoMember(9)]
            public bool user_was_muted_at_match_end
            {
                get => __pbn__user_was_muted_at_match_end.GetValueOrDefault();
                set => __pbn__user_was_muted_at_match_end = value;
            }
            public bool ShouldSerializeuser_was_muted_at_match_end() => __pbn__user_was_muted_at_match_end != null;
            public void Resetuser_was_muted_at_match_end() => __pbn__user_was_muted_at_match_end = null;
            private bool? __pbn__user_was_muted_at_match_end;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerSignoutData_LobbyInfo : 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)]
        public uint start_time
        {
            get => __pbn__start_time.GetValueOrDefault();
            set => __pbn__start_time = value;
        }
        public bool ShouldSerializestart_time() => __pbn__start_time != null;
        public void Resetstart_time() => __pbn__start_time = null;
        private uint? __pbn__start_time;

        [global::ProtoBuf.ProtoMember(3)]
        public uint gauntlet_id
        {
            get => __pbn__gauntlet_id.GetValueOrDefault();
            set => __pbn__gauntlet_id = value;
        }
        public bool ShouldSerializegauntlet_id() => __pbn__gauntlet_id != null;
        public void Resetgauntlet_id() => __pbn__gauntlet_id = null;
        private uint? __pbn__gauntlet_id;

        [global::ProtoBuf.ProtoMember(4)]
        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(5)]
        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(6)]
        [global::System.ComponentModel.DefaultValue(EDCGMatchMode.k_EDCGMatchMode_Unranked)]
        public EDCGMatchMode match_mode
        {
            get => __pbn__match_mode ?? EDCGMatchMode.k_EDCGMatchMode_Unranked;
            set => __pbn__match_mode = value;
        }
        public bool ShouldSerializematch_mode() => __pbn__match_mode != null;
        public void Resetmatch_mode() => __pbn__match_mode = null;
        private EDCGMatchMode? __pbn__match_mode;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerSignoutData_PlayerDecks : 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 uint stats_version
        {
            get => __pbn__stats_version.GetValueOrDefault();
            set => __pbn__stats_version = value;
        }
        public bool ShouldSerializestats_version() => __pbn__stats_version != null;
        public void Resetstats_version() => __pbn__stats_version = null;
        private uint? __pbn__stats_version;

        [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 player_id
            {
                get => __pbn__player_id.GetValueOrDefault();
                set => __pbn__player_id = value;
            }
            public bool ShouldSerializeplayer_id() => __pbn__player_id != null;
            public void Resetplayer_id() => __pbn__player_id = null;
            private uint? __pbn__player_id;

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

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

            [global::ProtoBuf.ProtoMember(6)]
            public uint critical_life
            {
                get => __pbn__critical_life.GetValueOrDefault();
                set => __pbn__critical_life = value;
            }
            public bool ShouldSerializecritical_life() => __pbn__critical_life != null;
            public void Resetcritical_life() => __pbn__critical_life = null;
            private uint? __pbn__critical_life;

            [global::ProtoBuf.ProtoMember(7)]
            public uint total_gold
            {
                get => __pbn__total_gold.GetValueOrDefault();
                set => __pbn__total_gold = value;
            }
            public bool ShouldSerializetotal_gold() => __pbn__total_gold != null;
            public void Resettotal_gold() => __pbn__total_gold = null;
            private uint? __pbn__total_gold;

            [global::ProtoBuf.ProtoContract()]
            public partial class Hero : 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 card_id
                {
                    get => __pbn__card_id.GetValueOrDefault();
                    set => __pbn__card_id = value;
                }
                public bool ShouldSerializecard_id() => __pbn__card_id != null;
                public void Resetcard_id() => __pbn__card_id = null;
                private uint? __pbn__card_id;

                [global::ProtoBuf.ProtoMember(2)]
                public uint hero_slot
                {
                    get => __pbn__hero_slot.GetValueOrDefault();
                    set => __pbn__hero_slot = value;
                }
                public bool ShouldSerializehero_slot() => __pbn__hero_slot != null;
                public void Resethero_slot() => __pbn__hero_slot = null;
                private uint? __pbn__hero_slot;

            }

            [global::ProtoBuf.ProtoContract()]
            public partial class Card : 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 card_id
                {
                    get => __pbn__card_id.GetValueOrDefault();
                    set => __pbn__card_id = value;
                }
                public bool ShouldSerializecard_id() => __pbn__card_id != null;
                public void Resetcard_id() => __pbn__card_id = null;
                private uint? __pbn__card_id;

                [global::ProtoBuf.ProtoMember(2)]
                public uint num_in_deck
                {
                    get => __pbn__num_in_deck.GetValueOrDefault();
                    set => __pbn__num_in_deck = value;
                }
                public bool ShouldSerializenum_in_deck() => __pbn__num_in_deck != null;
                public void Resetnum_in_deck() => __pbn__num_in_deck = null;
                private uint? __pbn__num_in_deck;

                [global::ProtoBuf.ProtoMember(3)]
                public uint num_in_hand
                {
                    get => __pbn__num_in_hand.GetValueOrDefault();
                    set => __pbn__num_in_hand = value;
                }
                public bool ShouldSerializenum_in_hand() => __pbn__num_in_hand != null;
                public void Resetnum_in_hand() => __pbn__num_in_hand = null;
                private uint? __pbn__num_in_hand;

                [global::ProtoBuf.ProtoMember(4)]
                public uint num_played
                {
                    get => __pbn__num_played.GetValueOrDefault();
                    set => __pbn__num_played = value;
                }
                public bool ShouldSerializenum_played() => __pbn__num_played != null;
                public void Resetnum_played() => __pbn__num_played = null;
                private uint? __pbn__num_played;

            }

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerSignoutData_PlayerProgress : 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 xp_to_grant
        {
            get => __pbn__xp_to_grant.GetValueOrDefault();
            set => __pbn__xp_to_grant = value;
        }
        public bool ShouldSerializexp_to_grant() => __pbn__xp_to_grant != null;
        public void Resetxp_to_grant() => __pbn__xp_to_grant = null;
        private uint? __pbn__xp_to_grant;

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

        [global::ProtoBuf.ProtoMember(5)]
        public uint weekly_bonus_reset_time
        {
            get => __pbn__weekly_bonus_reset_time.GetValueOrDefault();
            set => __pbn__weekly_bonus_reset_time = value;
        }
        public bool ShouldSerializeweekly_bonus_reset_time() => __pbn__weekly_bonus_reset_time != null;
        public void Resetweekly_bonus_reset_time() => __pbn__weekly_bonus_reset_time = null;
        private uint? __pbn__weekly_bonus_reset_time;

        [global::ProtoBuf.ProtoContract()]
        public partial class PointBonus : 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 bonus_id
            {
                get => __pbn__bonus_id.GetValueOrDefault();
                set => __pbn__bonus_id = value;
            }
            public bool ShouldSerializebonus_id() => __pbn__bonus_id != null;
            public void Resetbonus_id() => __pbn__bonus_id = null;
            private uint? __pbn__bonus_id;

            [global::ProtoBuf.ProtoMember(2)]
            public uint bonus_points
            {
                get => __pbn__bonus_points.GetValueOrDefault();
                set => __pbn__bonus_points = value;
            }
            public bool ShouldSerializebonus_points() => __pbn__bonus_points != null;
            public void Resetbonus_points() => __pbn__bonus_points = null;
            private uint? __pbn__bonus_points;

        }

    }

    [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 uint signout_start
        {
            get => __pbn__signout_start.GetValueOrDefault();
            set => __pbn__signout_start = value;
        }
        public bool ShouldSerializesignout_start() => __pbn__signout_start != null;
        public void Resetsignout_start() => __pbn__signout_start = null;
        private uint? __pbn__signout_start;

        [global::ProtoBuf.ProtoMember(3)]
        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(4)]
        [global::System.ComponentModel.DefaultValue(EDCGMatchMode.k_EDCGMatchMode_Unranked)]
        public EDCGMatchMode match_mode
        {
            get => __pbn__match_mode ?? EDCGMatchMode.k_EDCGMatchMode_Unranked;
            set => __pbn__match_mode = value;
        }
        public bool ShouldSerializematch_mode() => __pbn__match_mode != null;
        public void Resetmatch_mode() => __pbn__match_mode = null;
        private EDCGMatchMode? __pbn__match_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 CMsgServerSignoutData_CardAchievements : 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, IsPacked = true)]
        public global::System.Collections.Generic.List<uint> achievement_ids { get; } = new global::System.Collections.Generic.List<uint>();

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

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

        [global::ProtoBuf.ProtoContract()]
        public enum EAchievementGrantType
        {
            k_EAchievementGrant_Add = 0,
            k_EAchievementGrant_Max = 1,
            k_EAchievementGrant_Set = 2,
        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerSignoutData_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 CMsgServerSignoutData_GameOptions : 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<GameOption> game_options { get; } = new global::System.Collections.Generic.List<GameOption>();

        [global::ProtoBuf.ProtoContract()]
        public partial class GameOption : 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("")]
            public string key
            {
                get => __pbn__key ?? "";
                set => __pbn__key = value;
            }
            public bool ShouldSerializekey() => __pbn__key != null;
            public void Resetkey() => __pbn__key = null;
            private string __pbn__key;

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

        }

    }

    [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 CMsgServerSignoutData_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 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 global::System.Collections.Generic.List<CExtraMsgBlock> additional_data { get; } = new global::System.Collections.Generic.List<CExtraMsgBlock>();

        [global::ProtoBuf.ProtoMember(2)]
        public uint signout_attempt
        {
            get => __pbn__signout_attempt.GetValueOrDefault();
            set => __pbn__signout_attempt = value;
        }
        public bool ShouldSerializesignout_attempt() => __pbn__signout_attempt != null;
        public void Resetsignout_attempt() => __pbn__signout_attempt = null;
        private uint? __pbn__signout_attempt;

        [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(9)]
        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(10)]
        public CMsgMatchData match_data { get; set; }

    }

    [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 CMsgServerWelcomeDCG : 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 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 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(7)]
        public uint gauntlet_id
        {
            get => __pbn__gauntlet_id.GetValueOrDefault();
            set => __pbn__gauntlet_id = value;
        }
        public bool ShouldSerializegauntlet_id() => __pbn__gauntlet_id != null;
        public void Resetgauntlet_id() => __pbn__gauntlet_id = null;
        private uint? __pbn__gauntlet_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.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 CMsgGCToServerAddTourneySpectator : 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_id
        {
            get => __pbn__account_to_spectate_id.GetValueOrDefault();
            set => __pbn__account_to_spectate_id = value;
        }
        public bool ShouldSerializeaccount_to_spectate_id() => __pbn__account_to_spectate_id != null;
        public void Resetaccount_to_spectate_id() => __pbn__account_to_spectate_id = null;
        private uint? __pbn__account_to_spectate_id;

        [global::ProtoBuf.ProtoMember(4)]
        public ulong tourney_id
        {
            get => __pbn__tourney_id.GetValueOrDefault();
            set => __pbn__tourney_id = value;
        }
        public bool ShouldSerializetourney_id() => __pbn__tourney_id != null;
        public void Resettourney_id() => __pbn__tourney_id = null;
        private ulong? __pbn__tourney_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCToServerAddTourneySpectatorResponse : 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.ProtoMember(2)]
        public ulong tourney_id
        {
            get => __pbn__tourney_id.GetValueOrDefault();
            set => __pbn__tourney_id = value;
        }
        public bool ShouldSerializetourney_id() => __pbn__tourney_id != null;
        public void Resettourney_id() => __pbn__tourney_id = null;
        private ulong? __pbn__tourney_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCToServerRunTests : 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 expected_version
        {
            get => __pbn__expected_version.GetValueOrDefault();
            set => __pbn__expected_version = value;
        }
        public bool ShouldSerializeexpected_version() => __pbn__expected_version != null;
        public void Resetexpected_version() => __pbn__expected_version = null;
        private uint? __pbn__expected_version;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCToServerRunTestsResponse : 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 running_tests
        {
            get => __pbn__running_tests.GetValueOrDefault();
            set => __pbn__running_tests = value;
        }
        public bool ShouldSerializerunning_tests() => __pbn__running_tests != null;
        public void Resetrunning_tests() => __pbn__running_tests = null;
        private bool? __pbn__running_tests;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgServerToGCTestResults : 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<TestResult> results { get; } = new global::System.Collections.Generic.List<TestResult>();

        [global::ProtoBuf.ProtoMember(2)]
        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 TestResult : 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("")]
            public string test_name
            {
                get => __pbn__test_name ?? "";
                set => __pbn__test_name = value;
            }
            public bool ShouldSerializetest_name() => __pbn__test_name != null;
            public void Resettest_name() => __pbn__test_name = null;
            private string __pbn__test_name;

            [global::ProtoBuf.ProtoMember(2)]
            [global::System.ComponentModel.DefaultValue("")]
            public string test_group
            {
                get => __pbn__test_group ?? "";
                set => __pbn__test_group = value;
            }
            public bool ShouldSerializetest_group() => __pbn__test_group != null;
            public void Resettest_group() => __pbn__test_group = null;
            private string __pbn__test_group;

            [global::ProtoBuf.ProtoMember(3)]
            [global::System.ComponentModel.DefaultValue(CMsgServerToGCTestResults.ETestResult.eResult_Failure)]
            public CMsgServerToGCTestResults.ETestResult test_result
            {
                get => __pbn__test_result ?? CMsgServerToGCTestResults.ETestResult.eResult_Failure;
                set => __pbn__test_result = value;
            }
            public bool ShouldSerializetest_result() => __pbn__test_result != null;
            public void Resettest_result() => __pbn__test_result = null;
            private CMsgServerToGCTestResults.ETestResult? __pbn__test_result;

        }

        [global::ProtoBuf.ProtoContract()]
        public enum ETestResult
        {
            eResult_Failure = 0,
            eResult_Success = 1,
            eResult_Disabled = 2,
        }

    }

    [global::ProtoBuf.ProtoContract()]
    public enum EGCDCGServerMessages
    {
        k_EMsgServerToGCMatchSignoutPermission = 10012,
        k_EMsgServerToGCMatchSignoutPermissionResponse = 10013,
        k_EMsgServerToGCMatchSignout = 10014,
        k_EMsgServerToGCMatchSignoutResponse = 10015,
        k_EMsgServerToGCIdlePing = 10018,
        k_EMsgGCToServerRequestPing = 10019,
        k_EMsgGCToServerAllocateForMatch = 10021,
        k_EMsgGCToServerAllocateForMatchResponse = 10022,
        k_EMsgServerToGCEnterMatchmaking = 10023,
        k_EMsgGCToServerCancelAllocateForMatch = 10024,
        k_EMsgServerToGCUpdateLobbyServerState = 10025,
        k_EMsgServerToGCAbandonMatch = 10026,
        k_EMsgServerToGCAbandonMatchResponse = 10027,
        k_EMsgServerToGCTestConnection = 10028,
        k_EMsgServerToGCTestConnectionResponse = 10029,
        k_EMsgGCToServerRunTests = 10031,
        k_EMsgGCToServerRunTestsResponse = 10032,
        k_EMsgServerToGCTestResults = 10033,
        k_EMsgGCToServerAddTourneySpectator = 10034,
        k_EMsgGCToServerAddTourneySpectatorResponse = 10035,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum EGCServerLobbyData
    {
        k_EServerLobbyData_DeckValidator = 1,
        k_EServerLobbyData_DraftCards = 3,
        k_EServerLobbyData_PlayerDeck = 4,
        k_EServerLobbyData_PlayerMMR = 5,
        k_EServerLobbyData_CardAchievements = 6,
        k_EServerLobbyData_GauntletInfo = 7,
        k_EServerLobbyData_PlayerInfo = 8,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum EGCServerSignoutData
    {
        k_EServerSignoutData_PlayerProgress = 1,
        k_EServerSignoutData_PlayerDecks = 2,
        k_EServerSignoutData_LobbyInfo = 4,
        k_EServerSignoutData_GameOptions = 9,
        k_EServerSignoutData_CardAchievements = 11,
        k_EServerSignoutData_PerformanceStats = 12,
        k_EServerSignoutData_Disconnections = 13,
        k_EServerSignoutData_MatchChatStats = 14,
    }

}

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