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

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

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgClientToGCPrivateChatInvite : 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 private_chat_channel_name
        {
            get => __pbn__private_chat_channel_name ?? "";
            set => __pbn__private_chat_channel_name = value;
        }
        public bool ShouldSerializeprivate_chat_channel_name() => __pbn__private_chat_channel_name != null;
        public void Resetprivate_chat_channel_name() => __pbn__private_chat_channel_name = null;
        private string __pbn__private_chat_channel_name;

        [global::ProtoBuf.ProtoMember(2)]
        public uint invited_account_id
        {
            get => __pbn__invited_account_id.GetValueOrDefault();
            set => __pbn__invited_account_id = value;
        }
        public bool ShouldSerializeinvited_account_id() => __pbn__invited_account_id != null;
        public void Resetinvited_account_id() => __pbn__invited_account_id = null;
        private uint? __pbn__invited_account_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgClientToGCPrivateChatKick : 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 private_chat_channel_name
        {
            get => __pbn__private_chat_channel_name ?? "";
            set => __pbn__private_chat_channel_name = value;
        }
        public bool ShouldSerializeprivate_chat_channel_name() => __pbn__private_chat_channel_name != null;
        public void Resetprivate_chat_channel_name() => __pbn__private_chat_channel_name = null;
        private string __pbn__private_chat_channel_name;

        [global::ProtoBuf.ProtoMember(2)]
        public uint kick_account_id
        {
            get => __pbn__kick_account_id.GetValueOrDefault();
            set => __pbn__kick_account_id = value;
        }
        public bool ShouldSerializekick_account_id() => __pbn__kick_account_id != null;
        public void Resetkick_account_id() => __pbn__kick_account_id = null;
        private uint? __pbn__kick_account_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgClientToGCPrivateChatPromote : 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 private_chat_channel_name
        {
            get => __pbn__private_chat_channel_name ?? "";
            set => __pbn__private_chat_channel_name = value;
        }
        public bool ShouldSerializeprivate_chat_channel_name() => __pbn__private_chat_channel_name != null;
        public void Resetprivate_chat_channel_name() => __pbn__private_chat_channel_name = null;
        private string __pbn__private_chat_channel_name;

        [global::ProtoBuf.ProtoMember(2)]
        public uint promote_account_id
        {
            get => __pbn__promote_account_id.GetValueOrDefault();
            set => __pbn__promote_account_id = value;
        }
        public bool ShouldSerializepromote_account_id() => __pbn__promote_account_id != null;
        public void Resetpromote_account_id() => __pbn__promote_account_id = null;
        private uint? __pbn__promote_account_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgClientToGCPrivateChatDemote : 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 private_chat_channel_name
        {
            get => __pbn__private_chat_channel_name ?? "";
            set => __pbn__private_chat_channel_name = value;
        }
        public bool ShouldSerializeprivate_chat_channel_name() => __pbn__private_chat_channel_name != null;
        public void Resetprivate_chat_channel_name() => __pbn__private_chat_channel_name = null;
        private string __pbn__private_chat_channel_name;

        [global::ProtoBuf.ProtoMember(2)]
        public uint demote_account_id
        {
            get => __pbn__demote_account_id.GetValueOrDefault();
            set => __pbn__demote_account_id = value;
        }
        public bool ShouldSerializedemote_account_id() => __pbn__demote_account_id != null;
        public void Resetdemote_account_id() => __pbn__demote_account_id = null;
        private uint? __pbn__demote_account_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCToClientPrivateChatResponse : 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 private_chat_channel_name
        {
            get => __pbn__private_chat_channel_name ?? "";
            set => __pbn__private_chat_channel_name = value;
        }
        public bool ShouldSerializeprivate_chat_channel_name() => __pbn__private_chat_channel_name != null;
        public void Resetprivate_chat_channel_name() => __pbn__private_chat_channel_name = null;
        private string __pbn__private_chat_channel_name;

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

        [global::ProtoBuf.ProtoMember(3)]
        [global::System.ComponentModel.DefaultValue("")]
        public string username
        {
            get => __pbn__username ?? "";
            set => __pbn__username = value;
        }
        public bool ShouldSerializeusername() => __pbn__username != null;
        public void Resetusername() => __pbn__username = null;
        private string __pbn__username;

        [global::ProtoBuf.ProtoContract()]
        public enum Result
        {
            SUCCESS = 0,
            FAILURE_CREATION_LOCK = 1,
            FAILURE_SQL_TRANSACTION = 2,
            FAILURE_SDO_LOAD = 3,
            FAILURE_NO_PERMISSION = 4,
            FAILURE_ALREADY_MEMBER = 5,
            FAILURE_NOT_A_MEMBER = 7,
            FAILURE_NO_REMAINING_ADMINS = 8,
            FAILURE_NO_ROOM = 9,
            FAILURE_CREATION_RATE_LIMITED = 10,
            FAILURE_UNKNOWN_CHANNEL_NAME = 11,
            FAILURE_UNKNOWN_USER = 12,
            FAILURE_UNKNOWN_ERROR = 13,
            FAILURE_CANNOT_KICK_ADMIN = 14,
            FAILURE_ALREADY_ADMIN = 15,
        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgClientToGCPrivateChatInfoRequest : 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 private_chat_channel_name
        {
            get => __pbn__private_chat_channel_name ?? "";
            set => __pbn__private_chat_channel_name = value;
        }
        public bool ShouldSerializeprivate_chat_channel_name() => __pbn__private_chat_channel_name != null;
        public void Resetprivate_chat_channel_name() => __pbn__private_chat_channel_name = null;
        private string __pbn__private_chat_channel_name;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCToClientPrivateChatInfoResponse : 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 private_chat_channel_name
        {
            get => __pbn__private_chat_channel_name ?? "";
            set => __pbn__private_chat_channel_name = value;
        }
        public bool ShouldSerializeprivate_chat_channel_name() => __pbn__private_chat_channel_name != null;
        public void Resetprivate_chat_channel_name() => __pbn__private_chat_channel_name = null;
        private string __pbn__private_chat_channel_name;

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

        [global::ProtoBuf.ProtoMember(3)]
        public uint creator
        {
            get => __pbn__creator.GetValueOrDefault();
            set => __pbn__creator = value;
        }
        public bool ShouldSerializecreator() => __pbn__creator != null;
        public void Resetcreator() => __pbn__creator = null;
        private uint? __pbn__creator;

        [global::ProtoBuf.ProtoMember(4)]
        public uint creation_date
        {
            get => __pbn__creation_date.GetValueOrDefault();
            set => __pbn__creation_date = value;
        }
        public bool ShouldSerializecreation_date() => __pbn__creation_date != null;
        public void Resetcreation_date() => __pbn__creation_date = null;
        private uint? __pbn__creation_date;

        [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 name
            {
                get => __pbn__name ?? "";
                set => __pbn__name = value;
            }
            public bool ShouldSerializename() => __pbn__name != null;
            public void Resetname() => __pbn__name = null;
            private string __pbn__name;

            [global::ProtoBuf.ProtoMember(3)]
            public uint status
            {
                get => __pbn__status.GetValueOrDefault();
                set => __pbn__status = value;
            }
            public bool ShouldSerializestatus() => __pbn__status != null;
            public void Resetstatus() => __pbn__status = null;
            private uint? __pbn__status;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgDOTAJoinChatChannel : 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(2)]
        [global::System.ComponentModel.DefaultValue("")]
        public string channel_name
        {
            get => __pbn__channel_name ?? "";
            set => __pbn__channel_name = value;
        }
        public bool ShouldSerializechannel_name() => __pbn__channel_name != null;
        public void Resetchannel_name() => __pbn__channel_name = null;
        private string __pbn__channel_name;

        [global::ProtoBuf.ProtoMember(4)]
        [global::System.ComponentModel.DefaultValue(DOTAChatChannelType_t.DOTAChannelType_Regional)]
        public DOTAChatChannelType_t channel_type
        {
            get => __pbn__channel_type ?? DOTAChatChannelType_t.DOTAChannelType_Regional;
            set => __pbn__channel_type = value;
        }
        public bool ShouldSerializechannel_type() => __pbn__channel_type != null;
        public void Resetchannel_type() => __pbn__channel_type = null;
        private DOTAChatChannelType_t? __pbn__channel_type;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgDOTALeaveChatChannel : 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 channel_id
        {
            get => __pbn__channel_id.GetValueOrDefault();
            set => __pbn__channel_id = value;
        }
        public bool ShouldSerializechannel_id() => __pbn__channel_id != null;
        public void Resetchannel_id() => __pbn__channel_id = null;
        private ulong? __pbn__channel_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCChatReportPublicSpam : 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 channel_id
        {
            get => __pbn__channel_id.GetValueOrDefault();
            set => __pbn__channel_id = value;
        }
        public bool ShouldSerializechannel_id() => __pbn__channel_id != null;
        public void Resetchannel_id() => __pbn__channel_id = null;
        private ulong? __pbn__channel_id;

        [global::ProtoBuf.ProtoMember(2)]
        public uint channel_user_id
        {
            get => __pbn__channel_user_id.GetValueOrDefault();
            set => __pbn__channel_user_id = value;
        }
        public bool ShouldSerializechannel_user_id() => __pbn__channel_user_id != null;
        public void Resetchannel_user_id() => __pbn__channel_user_id = null;
        private uint? __pbn__channel_user_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgDOTAClientIgnoredUser : 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 ignored_account_id
        {
            get => __pbn__ignored_account_id.GetValueOrDefault();
            set => __pbn__ignored_account_id = value;
        }
        public bool ShouldSerializeignored_account_id() => __pbn__ignored_account_id != null;
        public void Resetignored_account_id() => __pbn__ignored_account_id = null;
        private uint? __pbn__ignored_account_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgDOTAChatMessage : 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 channel_id
        {
            get => __pbn__channel_id.GetValueOrDefault();
            set => __pbn__channel_id = value;
        }
        public bool ShouldSerializechannel_id() => __pbn__channel_id != null;
        public void Resetchannel_id() => __pbn__channel_id = null;
        private ulong? __pbn__channel_id;

        [global::ProtoBuf.ProtoMember(3)]
        [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(4)]
        [global::System.ComponentModel.DefaultValue("")]
        public string text
        {
            get => __pbn__text ?? "";
            set => __pbn__text = value;
        }
        public bool ShouldSerializetext() => __pbn__text != null;
        public void Resettext() => __pbn__text = null;
        private string __pbn__text;

        [global::ProtoBuf.ProtoMember(5)]
        public uint timestamp
        {
            get => __pbn__timestamp.GetValueOrDefault();
            set => __pbn__timestamp = value;
        }
        public bool ShouldSerializetimestamp() => __pbn__timestamp != null;
        public void Resettimestamp() => __pbn__timestamp = null;
        private uint? __pbn__timestamp;

        [global::ProtoBuf.ProtoMember(6)]
        public uint suggest_invite_account_id
        {
            get => __pbn__suggest_invite_account_id.GetValueOrDefault();
            set => __pbn__suggest_invite_account_id = value;
        }
        public bool ShouldSerializesuggest_invite_account_id() => __pbn__suggest_invite_account_id != null;
        public void Resetsuggest_invite_account_id() => __pbn__suggest_invite_account_id = null;
        private uint? __pbn__suggest_invite_account_id;

        [global::ProtoBuf.ProtoMember(7)]
        [global::System.ComponentModel.DefaultValue("")]
        public string suggest_invite_name
        {
            get => __pbn__suggest_invite_name ?? "";
            set => __pbn__suggest_invite_name = value;
        }
        public bool ShouldSerializesuggest_invite_name() => __pbn__suggest_invite_name != null;
        public void Resetsuggest_invite_name() => __pbn__suggest_invite_name = null;
        private string __pbn__suggest_invite_name;

        [global::ProtoBuf.ProtoMember(8)]
        public uint fantasy_draft_owner_account_id
        {
            get => __pbn__fantasy_draft_owner_account_id.GetValueOrDefault();
            set => __pbn__fantasy_draft_owner_account_id = value;
        }
        public bool ShouldSerializefantasy_draft_owner_account_id() => __pbn__fantasy_draft_owner_account_id != null;
        public void Resetfantasy_draft_owner_account_id() => __pbn__fantasy_draft_owner_account_id = null;
        private uint? __pbn__fantasy_draft_owner_account_id;

        [global::ProtoBuf.ProtoMember(9)]
        public uint fantasy_draft_player_account_id
        {
            get => __pbn__fantasy_draft_player_account_id.GetValueOrDefault();
            set => __pbn__fantasy_draft_player_account_id = value;
        }
        public bool ShouldSerializefantasy_draft_player_account_id() => __pbn__fantasy_draft_player_account_id != null;
        public void Resetfantasy_draft_player_account_id() => __pbn__fantasy_draft_player_account_id = null;
        private uint? __pbn__fantasy_draft_player_account_id;

        [global::ProtoBuf.ProtoMember(10)]
        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(11)]
        public bool suggest_invite_to_lobby
        {
            get => __pbn__suggest_invite_to_lobby.GetValueOrDefault();
            set => __pbn__suggest_invite_to_lobby = value;
        }
        public bool ShouldSerializesuggest_invite_to_lobby() => __pbn__suggest_invite_to_lobby != null;
        public void Resetsuggest_invite_to_lobby() => __pbn__suggest_invite_to_lobby = null;
        private bool? __pbn__suggest_invite_to_lobby;

        [global::ProtoBuf.ProtoMember(12)]
        public uint event_points
        {
            get => __pbn__event_points.GetValueOrDefault();
            set => __pbn__event_points = value;
        }
        public bool ShouldSerializeevent_points() => __pbn__event_points != null;
        public void Resetevent_points() => __pbn__event_points = null;
        private uint? __pbn__event_points;

        [global::ProtoBuf.ProtoMember(13)]
        public bool coin_flip
        {
            get => __pbn__coin_flip.GetValueOrDefault();
            set => __pbn__coin_flip = value;
        }
        public bool ShouldSerializecoin_flip() => __pbn__coin_flip != null;
        public void Resetcoin_flip() => __pbn__coin_flip = null;
        private bool? __pbn__coin_flip;

        [global::ProtoBuf.ProtoMember(14)]
        [global::System.ComponentModel.DefaultValue(-1)]
        public int player_id
        {
            get => __pbn__player_id ?? -1;
            set => __pbn__player_id = value;
        }
        public bool ShouldSerializeplayer_id() => __pbn__player_id != null;
        public void Resetplayer_id() => __pbn__player_id = null;
        private int? __pbn__player_id;

        [global::ProtoBuf.ProtoMember(15)]
        public uint share_profile_account_id
        {
            get => __pbn__share_profile_account_id.GetValueOrDefault();
            set => __pbn__share_profile_account_id = value;
        }
        public bool ShouldSerializeshare_profile_account_id() => __pbn__share_profile_account_id != null;
        public void Resetshare_profile_account_id() => __pbn__share_profile_account_id = null;
        private uint? __pbn__share_profile_account_id;

        [global::ProtoBuf.ProtoMember(16)]
        public uint channel_user_id
        {
            get => __pbn__channel_user_id.GetValueOrDefault();
            set => __pbn__channel_user_id = value;
        }
        public bool ShouldSerializechannel_user_id() => __pbn__channel_user_id != null;
        public void Resetchannel_user_id() => __pbn__channel_user_id = null;
        private uint? __pbn__channel_user_id;

        [global::ProtoBuf.ProtoMember(17)]
        public DiceRoll dice_roll { get; set; }

        [global::ProtoBuf.ProtoMember(18)]
        public ulong share_party_id
        {
            get => __pbn__share_party_id.GetValueOrDefault();
            set => __pbn__share_party_id = value;
        }
        public bool ShouldSerializeshare_party_id() => __pbn__share_party_id != null;
        public void Resetshare_party_id() => __pbn__share_party_id = null;
        private ulong? __pbn__share_party_id;

        [global::ProtoBuf.ProtoMember(19)]
        public ulong share_lobby_id
        {
            get => __pbn__share_lobby_id.GetValueOrDefault();
            set => __pbn__share_lobby_id = value;
        }
        public bool ShouldSerializeshare_lobby_id() => __pbn__share_lobby_id != null;
        public void Resetshare_lobby_id() => __pbn__share_lobby_id = null;
        private ulong? __pbn__share_lobby_id;

        [global::ProtoBuf.ProtoMember(20)]
        public ulong share_lobby_custom_game_id
        {
            get => __pbn__share_lobby_custom_game_id.GetValueOrDefault();
            set => __pbn__share_lobby_custom_game_id = value;
        }
        public bool ShouldSerializeshare_lobby_custom_game_id() => __pbn__share_lobby_custom_game_id != null;
        public void Resetshare_lobby_custom_game_id() => __pbn__share_lobby_custom_game_id = null;
        private ulong? __pbn__share_lobby_custom_game_id;

        [global::ProtoBuf.ProtoMember(21)]
        [global::System.ComponentModel.DefaultValue("")]
        public string share_lobby_passkey
        {
            get => __pbn__share_lobby_passkey ?? "";
            set => __pbn__share_lobby_passkey = value;
        }
        public bool ShouldSerializeshare_lobby_passkey() => __pbn__share_lobby_passkey != null;
        public void Resetshare_lobby_passkey() => __pbn__share_lobby_passkey = null;
        private string __pbn__share_lobby_passkey;

        [global::ProtoBuf.ProtoMember(22)]
        public uint private_chat_channel_id
        {
            get => __pbn__private_chat_channel_id.GetValueOrDefault();
            set => __pbn__private_chat_channel_id = value;
        }
        public bool ShouldSerializeprivate_chat_channel_id() => __pbn__private_chat_channel_id != null;
        public void Resetprivate_chat_channel_id() => __pbn__private_chat_channel_id = null;
        private uint? __pbn__private_chat_channel_id;

        [global::ProtoBuf.ProtoMember(23)]
        public uint status
        {
            get => __pbn__status.GetValueOrDefault();
            set => __pbn__status = value;
        }
        public bool ShouldSerializestatus() => __pbn__status != null;
        public void Resetstatus() => __pbn__status = null;
        private uint? __pbn__status;

        [global::ProtoBuf.ProtoMember(24)]
        public bool legacy_battle_cup_victory
        {
            get => __pbn__legacy_battle_cup_victory.GetValueOrDefault();
            set => __pbn__legacy_battle_cup_victory = value;
        }
        public bool ShouldSerializelegacy_battle_cup_victory() => __pbn__legacy_battle_cup_victory != null;
        public void Resetlegacy_battle_cup_victory() => __pbn__legacy_battle_cup_victory = null;
        private bool? __pbn__legacy_battle_cup_victory;

        [global::ProtoBuf.ProtoMember(29)]
        public uint battle_cup_streak
        {
            get => __pbn__battle_cup_streak.GetValueOrDefault();
            set => __pbn__battle_cup_streak = value;
        }
        public bool ShouldSerializebattle_cup_streak() => __pbn__battle_cup_streak != null;
        public void Resetbattle_cup_streak() => __pbn__battle_cup_streak = null;
        private uint? __pbn__battle_cup_streak;

        [global::ProtoBuf.ProtoMember(25)]
        public uint badge_level
        {
            get => __pbn__badge_level.GetValueOrDefault();
            set => __pbn__badge_level = value;
        }
        public bool ShouldSerializebadge_level() => __pbn__badge_level != null;
        public void Resetbadge_level() => __pbn__badge_level = null;
        private uint? __pbn__badge_level;

        [global::ProtoBuf.ProtoMember(26)]
        public uint suggest_pick_hero_id
        {
            get => __pbn__suggest_pick_hero_id.GetValueOrDefault();
            set => __pbn__suggest_pick_hero_id = value;
        }
        public bool ShouldSerializesuggest_pick_hero_id() => __pbn__suggest_pick_hero_id != null;
        public void Resetsuggest_pick_hero_id() => __pbn__suggest_pick_hero_id = null;
        private uint? __pbn__suggest_pick_hero_id;

        [global::ProtoBuf.ProtoMember(27)]
        [global::System.ComponentModel.DefaultValue("")]
        public string suggest_pick_hero_role
        {
            get => __pbn__suggest_pick_hero_role ?? "";
            set => __pbn__suggest_pick_hero_role = value;
        }
        public bool ShouldSerializesuggest_pick_hero_role() => __pbn__suggest_pick_hero_role != null;
        public void Resetsuggest_pick_hero_role() => __pbn__suggest_pick_hero_role = null;
        private string __pbn__suggest_pick_hero_role;

        [global::ProtoBuf.ProtoMember(30)]
        public uint suggest_ban_hero_id
        {
            get => __pbn__suggest_ban_hero_id.GetValueOrDefault();
            set => __pbn__suggest_ban_hero_id = value;
        }
        public bool ShouldSerializesuggest_ban_hero_id() => __pbn__suggest_ban_hero_id != null;
        public void Resetsuggest_ban_hero_id() => __pbn__suggest_ban_hero_id = null;
        private uint? __pbn__suggest_ban_hero_id;

        [global::ProtoBuf.ProtoMember(32)]
        public TriviaAnswered trivia_answer { get; set; }

        [global::ProtoBuf.ProtoMember(33)]
        public uint requested_ability_id
        {
            get => __pbn__requested_ability_id.GetValueOrDefault();
            set => __pbn__requested_ability_id = value;
        }
        public bool ShouldSerializerequested_ability_id() => __pbn__requested_ability_id != null;
        public void Resetrequested_ability_id() => __pbn__requested_ability_id = null;
        private uint? __pbn__requested_ability_id;

        [global::ProtoBuf.ProtoMember(34)]
        public uint chat_flags
        {
            get => __pbn__chat_flags.GetValueOrDefault();
            set => __pbn__chat_flags = value;
        }
        public bool ShouldSerializechat_flags() => __pbn__chat_flags != null;
        public void Resetchat_flags() => __pbn__chat_flags = null;
        private uint? __pbn__chat_flags;

        [global::ProtoBuf.ProtoMember(35)]
        public bool started_finding_match
        {
            get => __pbn__started_finding_match.GetValueOrDefault();
            set => __pbn__started_finding_match = value;
        }
        public bool ShouldSerializestarted_finding_match() => __pbn__started_finding_match != null;
        public void Resetstarted_finding_match() => __pbn__started_finding_match = null;
        private bool? __pbn__started_finding_match;

        [global::ProtoBuf.ProtoMember(36)]
        public bool ctrl_is_down
        {
            get => __pbn__ctrl_is_down.GetValueOrDefault();
            set => __pbn__ctrl_is_down = value;
        }
        public bool ShouldSerializectrl_is_down() => __pbn__ctrl_is_down != null;
        public void Resetctrl_is_down() => __pbn__ctrl_is_down = null;
        private bool? __pbn__ctrl_is_down;

        [global::ProtoBuf.ProtoContract()]
        public partial class DiceRoll : 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 int roll_min
            {
                get => __pbn__roll_min.GetValueOrDefault();
                set => __pbn__roll_min = value;
            }
            public bool ShouldSerializeroll_min() => __pbn__roll_min != null;
            public void Resetroll_min() => __pbn__roll_min = null;
            private int? __pbn__roll_min;

            [global::ProtoBuf.ProtoMember(2)]
            public int roll_max
            {
                get => __pbn__roll_max.GetValueOrDefault();
                set => __pbn__roll_max = value;
            }
            public bool ShouldSerializeroll_max() => __pbn__roll_max != null;
            public void Resetroll_max() => __pbn__roll_max = null;
            private int? __pbn__roll_max;

            [global::ProtoBuf.ProtoMember(3)]
            public int result
            {
                get => __pbn__result.GetValueOrDefault();
                set => __pbn__result = value;
            }
            public bool ShouldSerializeresult() => __pbn__result != null;
            public void Resetresult() => __pbn__result = null;
            private int? __pbn__result;

        }

        [global::ProtoBuf.ProtoContract()]
        public partial class TriviaAnswered : 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 question_id
            {
                get => __pbn__question_id.GetValueOrDefault();
                set => __pbn__question_id = value;
            }
            public bool ShouldSerializequestion_id() => __pbn__question_id != null;
            public void Resetquestion_id() => __pbn__question_id = null;
            private uint? __pbn__question_id;

            [global::ProtoBuf.ProtoMember(2)]
            public uint answer_index
            {
                get => __pbn__answer_index.GetValueOrDefault();
                set => __pbn__answer_index = value;
            }
            public bool ShouldSerializeanswer_index() => __pbn__answer_index != null;
            public void Resetanswer_index() => __pbn__answer_index = null;
            private uint? __pbn__answer_index;

            [global::ProtoBuf.ProtoMember(3)]
            public uint party_questions_correct
            {
                get => __pbn__party_questions_correct.GetValueOrDefault();
                set => __pbn__party_questions_correct = value;
            }
            public bool ShouldSerializeparty_questions_correct() => __pbn__party_questions_correct != null;
            public void Resetparty_questions_correct() => __pbn__party_questions_correct = null;
            private uint? __pbn__party_questions_correct;

            [global::ProtoBuf.ProtoMember(4)]
            public uint party_questions_viewed
            {
                get => __pbn__party_questions_viewed.GetValueOrDefault();
                set => __pbn__party_questions_viewed = value;
            }
            public bool ShouldSerializeparty_questions_viewed() => __pbn__party_questions_viewed != null;
            public void Resetparty_questions_viewed() => __pbn__party_questions_viewed = null;
            private uint? __pbn__party_questions_viewed;

            [global::ProtoBuf.ProtoMember(5)]
            public uint party_trivia_points
            {
                get => __pbn__party_trivia_points.GetValueOrDefault();
                set => __pbn__party_trivia_points = value;
            }
            public bool ShouldSerializeparty_trivia_points() => __pbn__party_trivia_points != null;
            public void Resetparty_trivia_points() => __pbn__party_trivia_points = null;
            private uint? __pbn__party_trivia_points;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgDOTAChatMember : 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 steam_id
        {
            get => __pbn__steam_id.GetValueOrDefault();
            set => __pbn__steam_id = value;
        }
        public bool ShouldSerializesteam_id() => __pbn__steam_id != null;
        public void Resetsteam_id() => __pbn__steam_id = null;
        private ulong? __pbn__steam_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)]
        public uint channel_user_id
        {
            get => __pbn__channel_user_id.GetValueOrDefault();
            set => __pbn__channel_user_id = value;
        }
        public bool ShouldSerializechannel_user_id() => __pbn__channel_user_id != null;
        public void Resetchannel_user_id() => __pbn__channel_user_id = null;
        private uint? __pbn__channel_user_id;

        [global::ProtoBuf.ProtoMember(4)]
        public uint status
        {
            get => __pbn__status.GetValueOrDefault();
            set => __pbn__status = value;
        }
        public bool ShouldSerializestatus() => __pbn__status != null;
        public void Resetstatus() => __pbn__status = null;
        private uint? __pbn__status;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgDOTAJoinChatChannelResponse : 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 response
        {
            get => __pbn__response.GetValueOrDefault();
            set => __pbn__response = value;
        }
        public bool ShouldSerializeresponse() => __pbn__response != null;
        public void Resetresponse() => __pbn__response = null;
        private uint? __pbn__response;

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

        [global::ProtoBuf.ProtoMember(3, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong channel_id
        {
            get => __pbn__channel_id.GetValueOrDefault();
            set => __pbn__channel_id = value;
        }
        public bool ShouldSerializechannel_id() => __pbn__channel_id != null;
        public void Resetchannel_id() => __pbn__channel_id = null;
        private ulong? __pbn__channel_id;

        [global::ProtoBuf.ProtoMember(4)]
        public uint max_members
        {
            get => __pbn__max_members.GetValueOrDefault();
            set => __pbn__max_members = value;
        }
        public bool ShouldSerializemax_members() => __pbn__max_members != null;
        public void Resetmax_members() => __pbn__max_members = null;
        private uint? __pbn__max_members;

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

        [global::ProtoBuf.ProtoMember(6)]
        [global::System.ComponentModel.DefaultValue(DOTAChatChannelType_t.DOTAChannelType_Regional)]
        public DOTAChatChannelType_t channel_type
        {
            get => __pbn__channel_type ?? DOTAChatChannelType_t.DOTAChannelType_Regional;
            set => __pbn__channel_type = value;
        }
        public bool ShouldSerializechannel_type() => __pbn__channel_type != null;
        public void Resetchannel_type() => __pbn__channel_type = null;
        private DOTAChatChannelType_t? __pbn__channel_type;

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

        [global::ProtoBuf.ProtoMember(8)]
        public bool gc_initiated_join
        {
            get => __pbn__gc_initiated_join.GetValueOrDefault();
            set => __pbn__gc_initiated_join = value;
        }
        public bool ShouldSerializegc_initiated_join() => __pbn__gc_initiated_join != null;
        public void Resetgc_initiated_join() => __pbn__gc_initiated_join = null;
        private bool? __pbn__gc_initiated_join;

        [global::ProtoBuf.ProtoMember(9)]
        public uint channel_user_id
        {
            get => __pbn__channel_user_id.GetValueOrDefault();
            set => __pbn__channel_user_id = value;
        }
        public bool ShouldSerializechannel_user_id() => __pbn__channel_user_id != null;
        public void Resetchannel_user_id() => __pbn__channel_user_id = null;
        private uint? __pbn__channel_user_id;

        [global::ProtoBuf.ProtoMember(10)]
        [global::System.ComponentModel.DefaultValue("")]
        public string welcome_message
        {
            get => __pbn__welcome_message ?? "";
            set => __pbn__welcome_message = value;
        }
        public bool ShouldSerializewelcome_message() => __pbn__welcome_message != null;
        public void Resetwelcome_message() => __pbn__welcome_message = null;
        private string __pbn__welcome_message;

        [global::ProtoBuf.ProtoContract()]
        public enum Result
        {
            JOIN_SUCCESS = 0,
            INVALID_CHANNEL_TYPE = 1,
            ACCOUNT_NOT_FOUND = 2,
            ACH_FAILED = 3,
            USER_IN_TOO_MANY_CHANNELS = 4,
            RATE_LIMIT_EXCEEDED = 5,
            CHANNEL_FULL = 6,
            CHANNEL_FULL_OVERFLOWED = 7,
            FAILED_TO_ADD_USER = 8,
            CHANNEL_TYPE_DISABLED = 9,
            PRIVATE_CHAT_CREATE_FAILED = 10,
            PRIVATE_CHAT_NO_PERMISSION = 11,
            PRIVATE_CHAT_CREATE_LOCK_FAILED = 12,
            PRIVATE_CHAT_KICKED = 13,
            USER_NOT_ALLOWED = 14,
        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgDOTAChatChannelFullUpdate : 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 channel_id
        {
            get => __pbn__channel_id.GetValueOrDefault();
            set => __pbn__channel_id = value;
        }
        public bool ShouldSerializechannel_id() => __pbn__channel_id != null;
        public void Resetchannel_id() => __pbn__channel_id = null;
        private ulong? __pbn__channel_id;

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgDOTAOtherJoinedChatChannel : 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 channel_id
        {
            get => __pbn__channel_id.GetValueOrDefault();
            set => __pbn__channel_id = value;
        }
        public bool ShouldSerializechannel_id() => __pbn__channel_id != null;
        public void Resetchannel_id() => __pbn__channel_id = null;
        private ulong? __pbn__channel_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, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong steam_id
        {
            get => __pbn__steam_id.GetValueOrDefault();
            set => __pbn__steam_id = value;
        }
        public bool ShouldSerializesteam_id() => __pbn__steam_id != null;
        public void Resetsteam_id() => __pbn__steam_id = null;
        private ulong? __pbn__steam_id;

        [global::ProtoBuf.ProtoMember(4)]
        public uint channel_user_id
        {
            get => __pbn__channel_user_id.GetValueOrDefault();
            set => __pbn__channel_user_id = value;
        }
        public bool ShouldSerializechannel_user_id() => __pbn__channel_user_id != null;
        public void Resetchannel_user_id() => __pbn__channel_user_id = null;
        private uint? __pbn__channel_user_id;

        [global::ProtoBuf.ProtoMember(5)]
        public uint status
        {
            get => __pbn__status.GetValueOrDefault();
            set => __pbn__status = value;
        }
        public bool ShouldSerializestatus() => __pbn__status != null;
        public void Resetstatus() => __pbn__status = null;
        private uint? __pbn__status;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgDOTAOtherLeftChatChannel : 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 channel_id
        {
            get => __pbn__channel_id.GetValueOrDefault();
            set => __pbn__channel_id = value;
        }
        public bool ShouldSerializechannel_id() => __pbn__channel_id != null;
        public void Resetchannel_id() => __pbn__channel_id = null;
        private ulong? __pbn__channel_id;

        [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong steam_id
        {
            get => __pbn__steam_id.GetValueOrDefault();
            set => __pbn__steam_id = value;
        }
        public bool ShouldSerializesteam_id() => __pbn__steam_id != null;
        public void Resetsteam_id() => __pbn__steam_id = null;
        private ulong? __pbn__steam_id;

        [global::ProtoBuf.ProtoMember(3)]
        public uint channel_user_id
        {
            get => __pbn__channel_user_id.GetValueOrDefault();
            set => __pbn__channel_user_id = value;
        }
        public bool ShouldSerializechannel_user_id() => __pbn__channel_user_id != null;
        public void Resetchannel_user_id() => __pbn__channel_user_id = null;
        private uint? __pbn__channel_user_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgDOTAChatChannelMemberUpdate : 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 channel_id
        {
            get => __pbn__channel_id.GetValueOrDefault();
            set => __pbn__channel_id = value;
        }
        public bool ShouldSerializechannel_id() => __pbn__channel_id != null;
        public void Resetchannel_id() => __pbn__channel_id = null;
        private ulong? __pbn__channel_id;

        [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public global::System.Collections.Generic.List<ulong> left_steam_ids { get; } = new global::System.Collections.Generic.List<ulong>();

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

        [global::ProtoBuf.ProtoContract()]
        public partial class JoinedMember : 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 steam_id
            {
                get => __pbn__steam_id.GetValueOrDefault();
                set => __pbn__steam_id = value;
            }
            public bool ShouldSerializesteam_id() => __pbn__steam_id != null;
            public void Resetsteam_id() => __pbn__steam_id = null;
            private ulong? __pbn__steam_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)]
            public uint channel_user_id
            {
                get => __pbn__channel_user_id.GetValueOrDefault();
                set => __pbn__channel_user_id = value;
            }
            public bool ShouldSerializechannel_user_id() => __pbn__channel_user_id != null;
            public void Resetchannel_user_id() => __pbn__channel_user_id = null;
            private uint? __pbn__channel_user_id;

            [global::ProtoBuf.ProtoMember(4)]
            public uint status
            {
                get => __pbn__status.GetValueOrDefault();
                set => __pbn__status = value;
            }
            public bool ShouldSerializestatus() => __pbn__status != null;
            public void Resetstatus() => __pbn__status = null;
            private uint? __pbn__status;

        }

    }

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

        [global::ProtoBuf.ProtoContract()]
        public partial class ChatChannel : 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 channel_name
            {
                get => __pbn__channel_name ?? "";
                set => __pbn__channel_name = value;
            }
            public bool ShouldSerializechannel_name() => __pbn__channel_name != null;
            public void Resetchannel_name() => __pbn__channel_name = null;
            private string __pbn__channel_name;

            [global::ProtoBuf.ProtoMember(2)]
            public uint num_members
            {
                get => __pbn__num_members.GetValueOrDefault();
                set => __pbn__num_members = value;
            }
            public bool ShouldSerializenum_members() => __pbn__num_members != null;
            public void Resetnum_members() => __pbn__num_members = null;
            private uint? __pbn__num_members;

            [global::ProtoBuf.ProtoMember(3)]
            [global::System.ComponentModel.DefaultValue(DOTAChatChannelType_t.DOTAChannelType_Regional)]
            public DOTAChatChannelType_t channel_type
            {
                get => __pbn__channel_type ?? DOTAChatChannelType_t.DOTAChannelType_Regional;
                set => __pbn__channel_type = value;
            }
            public bool ShouldSerializechannel_type() => __pbn__channel_type != null;
            public void Resetchannel_type() => __pbn__channel_type = null;
            private DOTAChatChannelType_t? __pbn__channel_type;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgDOTAChatGetUserList : 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 channel_id
        {
            get => __pbn__channel_id.GetValueOrDefault();
            set => __pbn__channel_id = value;
        }
        public bool ShouldSerializechannel_id() => __pbn__channel_id != null;
        public void Resetchannel_id() => __pbn__channel_id = null;
        private ulong? __pbn__channel_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgDOTAChatGetUserListResponse : 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 channel_id
        {
            get => __pbn__channel_id.GetValueOrDefault();
            set => __pbn__channel_id = value;
        }
        public bool ShouldSerializechannel_id() => __pbn__channel_id != null;
        public void Resetchannel_id() => __pbn__channel_id = null;
        private ulong? __pbn__channel_id;

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

        [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, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
            public ulong steam_id
            {
                get => __pbn__steam_id.GetValueOrDefault();
                set => __pbn__steam_id = value;
            }
            public bool ShouldSerializesteam_id() => __pbn__steam_id != null;
            public void Resetsteam_id() => __pbn__steam_id = null;
            private ulong? __pbn__steam_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)]
            public uint channel_user_id
            {
                get => __pbn__channel_user_id.GetValueOrDefault();
                set => __pbn__channel_user_id = value;
            }
            public bool ShouldSerializechannel_user_id() => __pbn__channel_user_id != null;
            public void Resetchannel_user_id() => __pbn__channel_user_id = null;
            private uint? __pbn__channel_user_id;

            [global::ProtoBuf.ProtoMember(4)]
            public uint status
            {
                get => __pbn__status.GetValueOrDefault();
                set => __pbn__status = value;
            }
            public bool ShouldSerializestatus() => __pbn__status != null;
            public void Resetstatus() => __pbn__status = null;
            private uint? __pbn__status;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgDOTAChatGetMemberCount : 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 channel_name
        {
            get => __pbn__channel_name ?? "";
            set => __pbn__channel_name = value;
        }
        public bool ShouldSerializechannel_name() => __pbn__channel_name != null;
        public void Resetchannel_name() => __pbn__channel_name = null;
        private string __pbn__channel_name;

        [global::ProtoBuf.ProtoMember(2)]
        [global::System.ComponentModel.DefaultValue(DOTAChatChannelType_t.DOTAChannelType_Regional)]
        public DOTAChatChannelType_t channel_type
        {
            get => __pbn__channel_type ?? DOTAChatChannelType_t.DOTAChannelType_Regional;
            set => __pbn__channel_type = value;
        }
        public bool ShouldSerializechannel_type() => __pbn__channel_type != null;
        public void Resetchannel_type() => __pbn__channel_type = null;
        private DOTAChatChannelType_t? __pbn__channel_type;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgDOTAChatGetMemberCountResponse : 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 channel_name
        {
            get => __pbn__channel_name ?? "";
            set => __pbn__channel_name = value;
        }
        public bool ShouldSerializechannel_name() => __pbn__channel_name != null;
        public void Resetchannel_name() => __pbn__channel_name = null;
        private string __pbn__channel_name;

        [global::ProtoBuf.ProtoMember(2)]
        [global::System.ComponentModel.DefaultValue(DOTAChatChannelType_t.DOTAChannelType_Regional)]
        public DOTAChatChannelType_t channel_type
        {
            get => __pbn__channel_type ?? DOTAChatChannelType_t.DOTAChannelType_Regional;
            set => __pbn__channel_type = value;
        }
        public bool ShouldSerializechannel_type() => __pbn__channel_type != null;
        public void Resetchannel_type() => __pbn__channel_type = null;
        private DOTAChatChannelType_t? __pbn__channel_type;

        [global::ProtoBuf.ProtoMember(3)]
        public uint member_count
        {
            get => __pbn__member_count.GetValueOrDefault();
            set => __pbn__member_count = value;
        }
        public bool ShouldSerializemember_count() => __pbn__member_count != null;
        public void Resetmember_count() => __pbn__member_count = null;
        private uint? __pbn__member_count;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgDOTAChatRegionsEnabled : 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 enable_all_regions
        {
            get => __pbn__enable_all_regions.GetValueOrDefault();
            set => __pbn__enable_all_regions = value;
        }
        public bool ShouldSerializeenable_all_regions() => __pbn__enable_all_regions != null;
        public void Resetenable_all_regions() => __pbn__enable_all_regions = null;
        private bool? __pbn__enable_all_regions;

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

        [global::ProtoBuf.ProtoContract()]
        public partial class Region : 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 float min_latitude
            {
                get => __pbn__min_latitude.GetValueOrDefault();
                set => __pbn__min_latitude = value;
            }
            public bool ShouldSerializemin_latitude() => __pbn__min_latitude != null;
            public void Resetmin_latitude() => __pbn__min_latitude = null;
            private float? __pbn__min_latitude;

            [global::ProtoBuf.ProtoMember(2)]
            public float max_latitude
            {
                get => __pbn__max_latitude.GetValueOrDefault();
                set => __pbn__max_latitude = value;
            }
            public bool ShouldSerializemax_latitude() => __pbn__max_latitude != null;
            public void Resetmax_latitude() => __pbn__max_latitude = null;
            private float? __pbn__max_latitude;

            [global::ProtoBuf.ProtoMember(3)]
            public float min_longitude
            {
                get => __pbn__min_longitude.GetValueOrDefault();
                set => __pbn__min_longitude = value;
            }
            public bool ShouldSerializemin_longitude() => __pbn__min_longitude != null;
            public void Resetmin_longitude() => __pbn__min_longitude = null;
            private float? __pbn__min_longitude;

            [global::ProtoBuf.ProtoMember(4)]
            public float max_longitude
            {
                get => __pbn__max_longitude.GetValueOrDefault();
                set => __pbn__max_longitude = value;
            }
            public bool ShouldSerializemax_longitude() => __pbn__max_longitude != null;
            public void Resetmax_longitude() => __pbn__max_longitude = null;
            private float? __pbn__max_longitude;

        }

    }

}

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