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

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

    [global::ProtoBuf.ProtoContract()]
    public partial class CChat_RequestFriendPersonaStates_Request : 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 CChat_RequestFriendPersonaStates_Response : 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 CChatRoom_CreateChatRoomGroup_Request : 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 steamid_partner
        {
            get => __pbn__steamid_partner.GetValueOrDefault();
            set => __pbn__steamid_partner = value;
        }
        public bool ShouldSerializesteamid_partner() => __pbn__steamid_partner != null;
        public void Resetsteamid_partner() => __pbn__steamid_partner = null;
        private ulong? __pbn__steamid_partner;

        [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong steamid_invited
        {
            get => __pbn__steamid_invited.GetValueOrDefault();
            set => __pbn__steamid_invited = value;
        }
        public bool ShouldSerializesteamid_invited() => __pbn__steamid_invited != null;
        public void Resetsteamid_invited() => __pbn__steamid_invited = null;
        private ulong? __pbn__steamid_invited;

        [global::ProtoBuf.ProtoMember(3)]
        [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(4, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public global::System.Collections.Generic.List<ulong> steamid_invitees { get; } = new global::System.Collections.Generic.List<ulong>();

        [global::ProtoBuf.ProtoMember(6)]
        public uint watching_broadcast_accountid
        {
            get => __pbn__watching_broadcast_accountid.GetValueOrDefault();
            set => __pbn__watching_broadcast_accountid = value;
        }
        public bool ShouldSerializewatching_broadcast_accountid() => __pbn__watching_broadcast_accountid != null;
        public void Resetwatching_broadcast_accountid() => __pbn__watching_broadcast_accountid = null;
        private uint? __pbn__watching_broadcast_accountid;

        [global::ProtoBuf.ProtoMember(7)]
        public ulong watching_broadcast_channel_id
        {
            get => __pbn__watching_broadcast_channel_id.GetValueOrDefault();
            set => __pbn__watching_broadcast_channel_id = value;
        }
        public bool ShouldSerializewatching_broadcast_channel_id() => __pbn__watching_broadcast_channel_id != null;
        public void Resetwatching_broadcast_channel_id() => __pbn__watching_broadcast_channel_id = null;
        private ulong? __pbn__watching_broadcast_channel_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRole : 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 role_id
        {
            get => __pbn__role_id.GetValueOrDefault();
            set => __pbn__role_id = value;
        }
        public bool ShouldSerializerole_id() => __pbn__role_id != null;
        public void Resetrole_id() => __pbn__role_id = null;
        private ulong? __pbn__role_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 ordinal
        {
            get => __pbn__ordinal.GetValueOrDefault();
            set => __pbn__ordinal = value;
        }
        public bool ShouldSerializeordinal() => __pbn__ordinal != null;
        public void Resetordinal() => __pbn__ordinal = null;
        private uint? __pbn__ordinal;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoleActions : 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 role_id
        {
            get => __pbn__role_id.GetValueOrDefault();
            set => __pbn__role_id = value;
        }
        public bool ShouldSerializerole_id() => __pbn__role_id != null;
        public void Resetrole_id() => __pbn__role_id = null;
        private ulong? __pbn__role_id;

        [global::ProtoBuf.ProtoMember(2)]
        public bool can_create_rename_delete_channel
        {
            get => __pbn__can_create_rename_delete_channel.GetValueOrDefault();
            set => __pbn__can_create_rename_delete_channel = value;
        }
        public bool ShouldSerializecan_create_rename_delete_channel() => __pbn__can_create_rename_delete_channel != null;
        public void Resetcan_create_rename_delete_channel() => __pbn__can_create_rename_delete_channel = null;
        private bool? __pbn__can_create_rename_delete_channel;

        [global::ProtoBuf.ProtoMember(3)]
        public bool can_kick
        {
            get => __pbn__can_kick.GetValueOrDefault();
            set => __pbn__can_kick = value;
        }
        public bool ShouldSerializecan_kick() => __pbn__can_kick != null;
        public void Resetcan_kick() => __pbn__can_kick = null;
        private bool? __pbn__can_kick;

        [global::ProtoBuf.ProtoMember(4)]
        public bool can_ban
        {
            get => __pbn__can_ban.GetValueOrDefault();
            set => __pbn__can_ban = value;
        }
        public bool ShouldSerializecan_ban() => __pbn__can_ban != null;
        public void Resetcan_ban() => __pbn__can_ban = null;
        private bool? __pbn__can_ban;

        [global::ProtoBuf.ProtoMember(5)]
        public bool can_invite
        {
            get => __pbn__can_invite.GetValueOrDefault();
            set => __pbn__can_invite = value;
        }
        public bool ShouldSerializecan_invite() => __pbn__can_invite != null;
        public void Resetcan_invite() => __pbn__can_invite = null;
        private bool? __pbn__can_invite;

        [global::ProtoBuf.ProtoMember(6)]
        public bool can_change_tagline_avatar_name
        {
            get => __pbn__can_change_tagline_avatar_name.GetValueOrDefault();
            set => __pbn__can_change_tagline_avatar_name = value;
        }
        public bool ShouldSerializecan_change_tagline_avatar_name() => __pbn__can_change_tagline_avatar_name != null;
        public void Resetcan_change_tagline_avatar_name() => __pbn__can_change_tagline_avatar_name = null;
        private bool? __pbn__can_change_tagline_avatar_name;

        [global::ProtoBuf.ProtoMember(7)]
        public bool can_chat
        {
            get => __pbn__can_chat.GetValueOrDefault();
            set => __pbn__can_chat = value;
        }
        public bool ShouldSerializecan_chat() => __pbn__can_chat != null;
        public void Resetcan_chat() => __pbn__can_chat = null;
        private bool? __pbn__can_chat;

        [global::ProtoBuf.ProtoMember(8)]
        public bool can_view_history
        {
            get => __pbn__can_view_history.GetValueOrDefault();
            set => __pbn__can_view_history = value;
        }
        public bool ShouldSerializecan_view_history() => __pbn__can_view_history != null;
        public void Resetcan_view_history() => __pbn__can_view_history = null;
        private bool? __pbn__can_view_history;

        [global::ProtoBuf.ProtoMember(9)]
        public bool can_change_group_roles
        {
            get => __pbn__can_change_group_roles.GetValueOrDefault();
            set => __pbn__can_change_group_roles = value;
        }
        public bool ShouldSerializecan_change_group_roles() => __pbn__can_change_group_roles != null;
        public void Resetcan_change_group_roles() => __pbn__can_change_group_roles = null;
        private bool? __pbn__can_change_group_roles;

        [global::ProtoBuf.ProtoMember(10)]
        public bool can_change_user_roles
        {
            get => __pbn__can_change_user_roles.GetValueOrDefault();
            set => __pbn__can_change_user_roles = value;
        }
        public bool ShouldSerializecan_change_user_roles() => __pbn__can_change_user_roles != null;
        public void Resetcan_change_user_roles() => __pbn__can_change_user_roles = null;
        private bool? __pbn__can_change_user_roles;

        [global::ProtoBuf.ProtoMember(11)]
        public bool can_mention_all
        {
            get => __pbn__can_mention_all.GetValueOrDefault();
            set => __pbn__can_mention_all = value;
        }
        public bool ShouldSerializecan_mention_all() => __pbn__can_mention_all != null;
        public void Resetcan_mention_all() => __pbn__can_mention_all = null;
        private bool? __pbn__can_mention_all;

        [global::ProtoBuf.ProtoMember(12)]
        public bool can_set_watching_broadcast
        {
            get => __pbn__can_set_watching_broadcast.GetValueOrDefault();
            set => __pbn__can_set_watching_broadcast = value;
        }
        public bool ShouldSerializecan_set_watching_broadcast() => __pbn__can_set_watching_broadcast != null;
        public void Resetcan_set_watching_broadcast() => __pbn__can_set_watching_broadcast = null;
        private bool? __pbn__can_set_watching_broadcast;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatPartyBeacon : 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 app_id
        {
            get => __pbn__app_id.GetValueOrDefault();
            set => __pbn__app_id = value;
        }
        public bool ShouldSerializeapp_id() => __pbn__app_id != null;
        public void Resetapp_id() => __pbn__app_id = null;
        private uint? __pbn__app_id;

        [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong steamid_owner
        {
            get => __pbn__steamid_owner.GetValueOrDefault();
            set => __pbn__steamid_owner = value;
        }
        public bool ShouldSerializesteamid_owner() => __pbn__steamid_owner != null;
        public void Resetsteamid_owner() => __pbn__steamid_owner = null;
        private ulong? __pbn__steamid_owner;

        [global::ProtoBuf.ProtoMember(3, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong beacon_id
        {
            get => __pbn__beacon_id.GetValueOrDefault();
            set => __pbn__beacon_id = value;
        }
        public bool ShouldSerializebeacon_id() => __pbn__beacon_id != null;
        public void Resetbeacon_id() => __pbn__beacon_id = null;
        private ulong? __pbn__beacon_id;

        [global::ProtoBuf.ProtoMember(4)]
        [global::System.ComponentModel.DefaultValue("")]
        public string game_metadata
        {
            get => __pbn__game_metadata ?? "";
            set => __pbn__game_metadata = value;
        }
        public bool ShouldSerializegame_metadata() => __pbn__game_metadata != null;
        public void Resetgame_metadata() => __pbn__game_metadata = null;
        private string __pbn__game_metadata;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoomGroupHeaderState : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

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

        [global::ProtoBuf.ProtoMember(13)]
        public uint clanid
        {
            get => __pbn__clanid.GetValueOrDefault();
            set => __pbn__clanid = value;
        }
        public bool ShouldSerializeclanid() => __pbn__clanid != null;
        public void Resetclanid() => __pbn__clanid = null;
        private uint? __pbn__clanid;

        [global::ProtoBuf.ProtoMember(14)]
        public uint accountid_owner
        {
            get => __pbn__accountid_owner.GetValueOrDefault();
            set => __pbn__accountid_owner = value;
        }
        public bool ShouldSerializeaccountid_owner() => __pbn__accountid_owner != null;
        public void Resetaccountid_owner() => __pbn__accountid_owner = null;
        private uint? __pbn__accountid_owner;

        [global::ProtoBuf.ProtoMember(21)]
        public uint appid
        {
            get => __pbn__appid.GetValueOrDefault();
            set => __pbn__appid = value;
        }
        public bool ShouldSerializeappid() => __pbn__appid != null;
        public void Resetappid() => __pbn__appid = null;
        private uint? __pbn__appid;

        [global::ProtoBuf.ProtoMember(15)]
        [global::System.ComponentModel.DefaultValue("")]
        public string tagline
        {
            get => __pbn__tagline ?? "";
            set => __pbn__tagline = value;
        }
        public bool ShouldSerializetagline() => __pbn__tagline != null;
        public void Resettagline() => __pbn__tagline = null;
        private string __pbn__tagline;

        [global::ProtoBuf.ProtoMember(16)]
        public byte[] avatar_sha
        {
            get => __pbn__avatar_sha;
            set => __pbn__avatar_sha = value;
        }
        public bool ShouldSerializeavatar_sha() => __pbn__avatar_sha != null;
        public void Resetavatar_sha() => __pbn__avatar_sha = null;
        private byte[] __pbn__avatar_sha;

        [global::ProtoBuf.ProtoMember(17)]
        public ulong default_role_id
        {
            get => __pbn__default_role_id.GetValueOrDefault();
            set => __pbn__default_role_id = value;
        }
        public bool ShouldSerializedefault_role_id() => __pbn__default_role_id != null;
        public void Resetdefault_role_id() => __pbn__default_role_id = null;
        private ulong? __pbn__default_role_id;

        [global::ProtoBuf.ProtoMember(18)]
        public global::System.Collections.Generic.List<CChatRole> roles { get; } = new global::System.Collections.Generic.List<CChatRole>();

        [global::ProtoBuf.ProtoMember(19)]
        public global::System.Collections.Generic.List<CChatRoleActions> role_actions { get; } = new global::System.Collections.Generic.List<CChatRoleActions>();

        [global::ProtoBuf.ProtoMember(20)]
        public uint watching_broadcast_accountid
        {
            get => __pbn__watching_broadcast_accountid.GetValueOrDefault();
            set => __pbn__watching_broadcast_accountid = value;
        }
        public bool ShouldSerializewatching_broadcast_accountid() => __pbn__watching_broadcast_accountid != null;
        public void Resetwatching_broadcast_accountid() => __pbn__watching_broadcast_accountid = null;
        private uint? __pbn__watching_broadcast_accountid;

        [global::ProtoBuf.ProtoMember(22)]
        public global::System.Collections.Generic.List<CChatPartyBeacon> party_beacons { get; } = new global::System.Collections.Generic.List<CChatPartyBeacon>();

        [global::ProtoBuf.ProtoMember(23)]
        public ulong watching_broadcast_channel_id
        {
            get => __pbn__watching_broadcast_channel_id.GetValueOrDefault();
            set => __pbn__watching_broadcast_channel_id = value;
        }
        public bool ShouldSerializewatching_broadcast_channel_id() => __pbn__watching_broadcast_channel_id != null;
        public void Resetwatching_broadcast_channel_id() => __pbn__watching_broadcast_channel_id = null;
        private ulong? __pbn__watching_broadcast_channel_id;

        [global::ProtoBuf.ProtoMember(24)]
        public ulong active_minigame_id
        {
            get => __pbn__active_minigame_id.GetValueOrDefault();
            set => __pbn__active_minigame_id = value;
        }
        public bool ShouldSerializeactive_minigame_id() => __pbn__active_minigame_id != null;
        public void Resetactive_minigame_id() => __pbn__active_minigame_id = null;
        private ulong? __pbn__active_minigame_id;

        [global::ProtoBuf.ProtoMember(25)]
        [global::System.ComponentModel.DefaultValue("")]
        public string avatar_ugc_url
        {
            get => __pbn__avatar_ugc_url ?? "";
            set => __pbn__avatar_ugc_url = value;
        }
        public bool ShouldSerializeavatar_ugc_url() => __pbn__avatar_ugc_url != null;
        public void Resetavatar_ugc_url() => __pbn__avatar_ugc_url = null;
        private string __pbn__avatar_ugc_url;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoomMember : 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 accountid
        {
            get => __pbn__accountid.GetValueOrDefault();
            set => __pbn__accountid = value;
        }
        public bool ShouldSerializeaccountid() => __pbn__accountid != null;
        public void Resetaccountid() => __pbn__accountid = null;
        private uint? __pbn__accountid;

        [global::ProtoBuf.ProtoMember(3)]
        [global::System.ComponentModel.DefaultValue(EChatRoomJoinState.k_EChatRoomJoinState_Default)]
        public EChatRoomJoinState state
        {
            get => __pbn__state ?? EChatRoomJoinState.k_EChatRoomJoinState_Default;
            set => __pbn__state = value;
        }
        public bool ShouldSerializestate() => __pbn__state != null;
        public void Resetstate() => __pbn__state = null;
        private EChatRoomJoinState? __pbn__state;

        [global::ProtoBuf.ProtoMember(4)]
        [global::System.ComponentModel.DefaultValue(EChatRoomGroupRank.k_EChatRoomGroupRank_Default)]
        public EChatRoomGroupRank rank
        {
            get => __pbn__rank ?? EChatRoomGroupRank.k_EChatRoomGroupRank_Default;
            set => __pbn__rank = value;
        }
        public bool ShouldSerializerank() => __pbn__rank != null;
        public void Resetrank() => __pbn__rank = null;
        private EChatRoomGroupRank? __pbn__rank;

        [global::ProtoBuf.ProtoMember(6)]
        public uint time_kick_expire
        {
            get => __pbn__time_kick_expire.GetValueOrDefault();
            set => __pbn__time_kick_expire = value;
        }
        public bool ShouldSerializetime_kick_expire() => __pbn__time_kick_expire != null;
        public void Resettime_kick_expire() => __pbn__time_kick_expire = null;
        private uint? __pbn__time_kick_expire;

        [global::ProtoBuf.ProtoMember(7)]
        public global::System.Collections.Generic.List<ulong> role_ids { get; } = new global::System.Collections.Generic.List<ulong>();

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoomState : 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 chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

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

        [global::ProtoBuf.ProtoMember(3)]
        public bool voice_allowed
        {
            get => __pbn__voice_allowed.GetValueOrDefault();
            set => __pbn__voice_allowed = value;
        }
        public bool ShouldSerializevoice_allowed() => __pbn__voice_allowed != null;
        public void Resetvoice_allowed() => __pbn__voice_allowed = null;
        private bool? __pbn__voice_allowed;

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

        [global::ProtoBuf.ProtoMember(5)]
        public uint time_last_message
        {
            get => __pbn__time_last_message.GetValueOrDefault();
            set => __pbn__time_last_message = value;
        }
        public bool ShouldSerializetime_last_message() => __pbn__time_last_message != null;
        public void Resettime_last_message() => __pbn__time_last_message = null;
        private uint? __pbn__time_last_message;

        [global::ProtoBuf.ProtoMember(6)]
        public uint sort_order
        {
            get => __pbn__sort_order.GetValueOrDefault();
            set => __pbn__sort_order = value;
        }
        public bool ShouldSerializesort_order() => __pbn__sort_order != null;
        public void Resetsort_order() => __pbn__sort_order = null;
        private uint? __pbn__sort_order;

        [global::ProtoBuf.ProtoMember(7)]
        [global::System.ComponentModel.DefaultValue("")]
        public string last_message
        {
            get => __pbn__last_message ?? "";
            set => __pbn__last_message = value;
        }
        public bool ShouldSerializelast_message() => __pbn__last_message != null;
        public void Resetlast_message() => __pbn__last_message = null;
        private string __pbn__last_message;

        [global::ProtoBuf.ProtoMember(8)]
        public uint accountid_last_message
        {
            get => __pbn__accountid_last_message.GetValueOrDefault();
            set => __pbn__accountid_last_message = value;
        }
        public bool ShouldSerializeaccountid_last_message() => __pbn__accountid_last_message != null;
        public void Resetaccountid_last_message() => __pbn__accountid_last_message = null;
        private uint? __pbn__accountid_last_message;

    }

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

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

        [global::ProtoBuf.ProtoMember(4)]
        public ulong default_chat_id
        {
            get => __pbn__default_chat_id.GetValueOrDefault();
            set => __pbn__default_chat_id = value;
        }
        public bool ShouldSerializedefault_chat_id() => __pbn__default_chat_id != null;
        public void Resetdefault_chat_id() => __pbn__default_chat_id = null;
        private ulong? __pbn__default_chat_id;

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

        [global::ProtoBuf.ProtoMember(7)]
        public global::System.Collections.Generic.List<CChatRoomMember> kicked { get; } = new global::System.Collections.Generic.List<CChatRoomMember>();

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CUserChatRoomState : 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 chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

        [global::ProtoBuf.ProtoMember(2)]
        public uint time_joined
        {
            get => __pbn__time_joined.GetValueOrDefault();
            set => __pbn__time_joined = value;
        }
        public bool ShouldSerializetime_joined() => __pbn__time_joined != null;
        public void Resettime_joined() => __pbn__time_joined = null;
        private uint? __pbn__time_joined;

        [global::ProtoBuf.ProtoMember(3)]
        public uint time_last_ack
        {
            get => __pbn__time_last_ack.GetValueOrDefault();
            set => __pbn__time_last_ack = value;
        }
        public bool ShouldSerializetime_last_ack() => __pbn__time_last_ack != null;
        public void Resettime_last_ack() => __pbn__time_last_ack = null;
        private uint? __pbn__time_last_ack;

        [global::ProtoBuf.ProtoMember(4)]
        [global::System.ComponentModel.DefaultValue(EChatRoomNotificationLevel.k_EChatroomNotificationLevel_Invalid)]
        public EChatRoomNotificationLevel desktop_notification_level
        {
            get => __pbn__desktop_notification_level ?? EChatRoomNotificationLevel.k_EChatroomNotificationLevel_Invalid;
            set => __pbn__desktop_notification_level = value;
        }
        public bool ShouldSerializedesktop_notification_level() => __pbn__desktop_notification_level != null;
        public void Resetdesktop_notification_level() => __pbn__desktop_notification_level = null;
        private EChatRoomNotificationLevel? __pbn__desktop_notification_level;

        [global::ProtoBuf.ProtoMember(5)]
        [global::System.ComponentModel.DefaultValue(EChatRoomNotificationLevel.k_EChatroomNotificationLevel_Invalid)]
        public EChatRoomNotificationLevel mobile_notification_level
        {
            get => __pbn__mobile_notification_level ?? EChatRoomNotificationLevel.k_EChatroomNotificationLevel_Invalid;
            set => __pbn__mobile_notification_level = value;
        }
        public bool ShouldSerializemobile_notification_level() => __pbn__mobile_notification_level != null;
        public void Resetmobile_notification_level() => __pbn__mobile_notification_level = null;
        private EChatRoomNotificationLevel? __pbn__mobile_notification_level;

        [global::ProtoBuf.ProtoMember(6)]
        public uint time_last_mention
        {
            get => __pbn__time_last_mention.GetValueOrDefault();
            set => __pbn__time_last_mention = value;
        }
        public bool ShouldSerializetime_last_mention() => __pbn__time_last_mention != null;
        public void Resettime_last_mention() => __pbn__time_last_mention = null;
        private uint? __pbn__time_last_mention;

        [global::ProtoBuf.ProtoMember(7)]
        [global::System.ComponentModel.DefaultValue(false)]
        public bool unread_indicator_muted
        {
            get => __pbn__unread_indicator_muted ?? false;
            set => __pbn__unread_indicator_muted = value;
        }
        public bool ShouldSerializeunread_indicator_muted() => __pbn__unread_indicator_muted != null;
        public void Resetunread_indicator_muted() => __pbn__unread_indicator_muted = null;
        private bool? __pbn__unread_indicator_muted;

        [global::ProtoBuf.ProtoMember(8)]
        public uint time_first_unread
        {
            get => __pbn__time_first_unread.GetValueOrDefault();
            set => __pbn__time_first_unread = value;
        }
        public bool ShouldSerializetime_first_unread() => __pbn__time_first_unread != null;
        public void Resettime_first_unread() => __pbn__time_first_unread = null;
        private uint? __pbn__time_first_unread;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CUserChatRoomGroupState : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public uint time_joined
        {
            get => __pbn__time_joined.GetValueOrDefault();
            set => __pbn__time_joined = value;
        }
        public bool ShouldSerializetime_joined() => __pbn__time_joined != null;
        public void Resettime_joined() => __pbn__time_joined = null;
        private uint? __pbn__time_joined;

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

        [global::ProtoBuf.ProtoMember(4)]
        [global::System.ComponentModel.DefaultValue(EChatRoomNotificationLevel.k_EChatroomNotificationLevel_Invalid)]
        public EChatRoomNotificationLevel desktop_notification_level
        {
            get => __pbn__desktop_notification_level ?? EChatRoomNotificationLevel.k_EChatroomNotificationLevel_Invalid;
            set => __pbn__desktop_notification_level = value;
        }
        public bool ShouldSerializedesktop_notification_level() => __pbn__desktop_notification_level != null;
        public void Resetdesktop_notification_level() => __pbn__desktop_notification_level = null;
        private EChatRoomNotificationLevel? __pbn__desktop_notification_level;

        [global::ProtoBuf.ProtoMember(5)]
        [global::System.ComponentModel.DefaultValue(EChatRoomNotificationLevel.k_EChatroomNotificationLevel_Invalid)]
        public EChatRoomNotificationLevel mobile_notification_level
        {
            get => __pbn__mobile_notification_level ?? EChatRoomNotificationLevel.k_EChatroomNotificationLevel_Invalid;
            set => __pbn__mobile_notification_level = value;
        }
        public bool ShouldSerializemobile_notification_level() => __pbn__mobile_notification_level != null;
        public void Resetmobile_notification_level() => __pbn__mobile_notification_level = null;
        private EChatRoomNotificationLevel? __pbn__mobile_notification_level;

        [global::ProtoBuf.ProtoMember(6)]
        public uint time_last_group_ack
        {
            get => __pbn__time_last_group_ack.GetValueOrDefault();
            set => __pbn__time_last_group_ack = value;
        }
        public bool ShouldSerializetime_last_group_ack() => __pbn__time_last_group_ack != null;
        public void Resettime_last_group_ack() => __pbn__time_last_group_ack = null;
        private uint? __pbn__time_last_group_ack;

        [global::ProtoBuf.ProtoMember(7)]
        [global::System.ComponentModel.DefaultValue(false)]
        public bool unread_indicator_muted
        {
            get => __pbn__unread_indicator_muted ?? false;
            set => __pbn__unread_indicator_muted = value;
        }
        public bool ShouldSerializeunread_indicator_muted() => __pbn__unread_indicator_muted != null;
        public void Resetunread_indicator_muted() => __pbn__unread_indicator_muted = null;
        private bool? __pbn__unread_indicator_muted;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_CreateChatRoomGroup_Response : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public CChatRoomGroupState state { get; set; }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_SaveChatRoomGroup_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_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.ProtoContract()]
    public partial class CChatRoom_SaveChatRoomGroup_Response : 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 CChatRoom_RenameChatRoomGroup_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_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.ProtoContract()]
    public partial class CChatRoom_RenameChatRoomGroup_Response : 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 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.ProtoContract()]
    public partial class CChatRoom_SetChatRoomGroupTagline_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_SetChatRoomGroupTagline_Response : 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 CChatRoom_SetChatRoomGroupAvatar_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public byte[] avatar_sha
        {
            get => __pbn__avatar_sha;
            set => __pbn__avatar_sha = value;
        }
        public bool ShouldSerializeavatar_sha() => __pbn__avatar_sha != null;
        public void Resetavatar_sha() => __pbn__avatar_sha = null;
        private byte[] __pbn__avatar_sha;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_SetChatRoomGroupAvatar_Response : 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 CChatRoom_SetChatRoomGroupWatchingBroadcast_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public uint watching_broadcast_accountid
        {
            get => __pbn__watching_broadcast_accountid.GetValueOrDefault();
            set => __pbn__watching_broadcast_accountid = value;
        }
        public bool ShouldSerializewatching_broadcast_accountid() => __pbn__watching_broadcast_accountid != null;
        public void Resetwatching_broadcast_accountid() => __pbn__watching_broadcast_accountid = null;
        private uint? __pbn__watching_broadcast_accountid;

        [global::ProtoBuf.ProtoMember(3)]
        public ulong watching_broadcast_channel_id
        {
            get => __pbn__watching_broadcast_channel_id.GetValueOrDefault();
            set => __pbn__watching_broadcast_channel_id = value;
        }
        public bool ShouldSerializewatching_broadcast_channel_id() => __pbn__watching_broadcast_channel_id != null;
        public void Resetwatching_broadcast_channel_id() => __pbn__watching_broadcast_channel_id = null;
        private ulong? __pbn__watching_broadcast_channel_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_SetChatRoomGroupWatchingBroadcast_Response : 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 CChatRoom_JoinMiniGameForChatRoomGroup_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_JoinMiniGameForChatRoomGroup_Response : 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 minigame_id
        {
            get => __pbn__minigame_id.GetValueOrDefault();
            set => __pbn__minigame_id = value;
        }
        public bool ShouldSerializeminigame_id() => __pbn__minigame_id != null;
        public void Resetminigame_id() => __pbn__minigame_id = null;
        private ulong? __pbn__minigame_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_EndMiniGameForChatRoomGroup_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

        [global::ProtoBuf.ProtoMember(3)]
        public ulong minigame_id
        {
            get => __pbn__minigame_id.GetValueOrDefault();
            set => __pbn__minigame_id = value;
        }
        public bool ShouldSerializeminigame_id() => __pbn__minigame_id != null;
        public void Resetminigame_id() => __pbn__minigame_id = null;
        private ulong? __pbn__minigame_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_EndMiniGameForChatRoomGroup_Response : 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 CChatRoom_MuteUser_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong steamid
        {
            get => __pbn__steamid.GetValueOrDefault();
            set => __pbn__steamid = value;
        }
        public bool ShouldSerializesteamid() => __pbn__steamid != null;
        public void Resetsteamid() => __pbn__steamid = null;
        private ulong? __pbn__steamid;

        [global::ProtoBuf.ProtoMember(3)]
        public int expiration
        {
            get => __pbn__expiration.GetValueOrDefault();
            set => __pbn__expiration = value;
        }
        public bool ShouldSerializeexpiration() => __pbn__expiration != null;
        public void Resetexpiration() => __pbn__expiration = null;
        private int? __pbn__expiration;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_MuteUser_Response : 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 CChatRoom_KickUser_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong steamid
        {
            get => __pbn__steamid.GetValueOrDefault();
            set => __pbn__steamid = value;
        }
        public bool ShouldSerializesteamid() => __pbn__steamid != null;
        public void Resetsteamid() => __pbn__steamid = null;
        private ulong? __pbn__steamid;

        [global::ProtoBuf.ProtoMember(3)]
        public int expiration
        {
            get => __pbn__expiration.GetValueOrDefault();
            set => __pbn__expiration = value;
        }
        public bool ShouldSerializeexpiration() => __pbn__expiration != null;
        public void Resetexpiration() => __pbn__expiration = null;
        private int? __pbn__expiration;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_KickUser_Response : 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 CChatRoom_SetUserBanState_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong steamid
        {
            get => __pbn__steamid.GetValueOrDefault();
            set => __pbn__steamid = value;
        }
        public bool ShouldSerializesteamid() => __pbn__steamid != null;
        public void Resetsteamid() => __pbn__steamid = null;
        private ulong? __pbn__steamid;

        [global::ProtoBuf.ProtoMember(3)]
        public bool ban_state
        {
            get => __pbn__ban_state.GetValueOrDefault();
            set => __pbn__ban_state = value;
        }
        public bool ShouldSerializeban_state() => __pbn__ban_state != null;
        public void Resetban_state() => __pbn__ban_state = null;
        private bool? __pbn__ban_state;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_SetUserBanState_Response : 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 CChatRoom_RevokeInvite_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong steamid
        {
            get => __pbn__steamid.GetValueOrDefault();
            set => __pbn__steamid = value;
        }
        public bool ShouldSerializesteamid() => __pbn__steamid != null;
        public void Resetsteamid() => __pbn__steamid = null;
        private ulong? __pbn__steamid;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_RevokeInvite_Response : 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 CChatRoom_CreateRole_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_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.ProtoContract()]
    public partial class CChatRoom_CreateRole_Response : 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)]
        public CChatRoleActions actions { get; set; }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_GetRoles_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

    }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_RenameRole_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong role_id
        {
            get => __pbn__role_id.GetValueOrDefault();
            set => __pbn__role_id = value;
        }
        public bool ShouldSerializerole_id() => __pbn__role_id != null;
        public void Resetrole_id() => __pbn__role_id = null;
        private ulong? __pbn__role_id;

        [global::ProtoBuf.ProtoMember(3)]
        [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.ProtoContract()]
    public partial class CChatRoom_RenameRole_Response : 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 CChatRoom_ReorderRole_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong role_id
        {
            get => __pbn__role_id.GetValueOrDefault();
            set => __pbn__role_id = value;
        }
        public bool ShouldSerializerole_id() => __pbn__role_id != null;
        public void Resetrole_id() => __pbn__role_id = null;
        private ulong? __pbn__role_id;

        [global::ProtoBuf.ProtoMember(3)]
        public uint ordinal
        {
            get => __pbn__ordinal.GetValueOrDefault();
            set => __pbn__ordinal = value;
        }
        public bool ShouldSerializeordinal() => __pbn__ordinal != null;
        public void Resetordinal() => __pbn__ordinal = null;
        private uint? __pbn__ordinal;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_ReorderRole_Response : 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 CChatRoom_DeleteRole_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong role_id
        {
            get => __pbn__role_id.GetValueOrDefault();
            set => __pbn__role_id = value;
        }
        public bool ShouldSerializerole_id() => __pbn__role_id != null;
        public void Resetrole_id() => __pbn__role_id = null;
        private ulong? __pbn__role_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_DeleteRole_Response : 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 CChatRoom_GetRoleActions_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong role_id
        {
            get => __pbn__role_id.GetValueOrDefault();
            set => __pbn__role_id = value;
        }
        public bool ShouldSerializerole_id() => __pbn__role_id != null;
        public void Resetrole_id() => __pbn__role_id = null;
        private ulong? __pbn__role_id;

    }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_ReplaceRoleActions_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong role_id
        {
            get => __pbn__role_id.GetValueOrDefault();
            set => __pbn__role_id = value;
        }
        public bool ShouldSerializerole_id() => __pbn__role_id != null;
        public void Resetrole_id() => __pbn__role_id = null;
        private ulong? __pbn__role_id;

        [global::ProtoBuf.ProtoMember(4)]
        public CChatRoleActions actions { get; set; }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_ReplaceRoleActions_Response : 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 CChatRoom_AddRoleToUser_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(3)]
        public ulong role_id
        {
            get => __pbn__role_id.GetValueOrDefault();
            set => __pbn__role_id = value;
        }
        public bool ShouldSerializerole_id() => __pbn__role_id != null;
        public void Resetrole_id() => __pbn__role_id = null;
        private ulong? __pbn__role_id;

        [global::ProtoBuf.ProtoMember(4, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong steamid
        {
            get => __pbn__steamid.GetValueOrDefault();
            set => __pbn__steamid = value;
        }
        public bool ShouldSerializesteamid() => __pbn__steamid != null;
        public void Resetsteamid() => __pbn__steamid = null;
        private ulong? __pbn__steamid;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_AddRoleToUser_Response : 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 CChatRoom_GetRolesForUser_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(3, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong steamid
        {
            get => __pbn__steamid.GetValueOrDefault();
            set => __pbn__steamid = value;
        }
        public bool ShouldSerializesteamid() => __pbn__steamid != null;
        public void Resetsteamid() => __pbn__steamid = null;
        private ulong? __pbn__steamid;

    }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_DeleteRoleFromUser_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(3)]
        public ulong role_id
        {
            get => __pbn__role_id.GetValueOrDefault();
            set => __pbn__role_id = value;
        }
        public bool ShouldSerializerole_id() => __pbn__role_id != null;
        public void Resetrole_id() => __pbn__role_id = null;
        private ulong? __pbn__role_id;

        [global::ProtoBuf.ProtoMember(4, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong steamid
        {
            get => __pbn__steamid.GetValueOrDefault();
            set => __pbn__steamid = value;
        }
        public bool ShouldSerializesteamid() => __pbn__steamid != null;
        public void Resetsteamid() => __pbn__steamid = null;
        private ulong? __pbn__steamid;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_DeleteRoleFromUser_Response : 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 CChatRoom_JoinChatRoomGroup_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

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

        [global::ProtoBuf.ProtoMember(3)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

    }

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

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

        [global::ProtoBuf.ProtoMember(4)]
        public ulong join_chat_id
        {
            get => __pbn__join_chat_id.GetValueOrDefault();
            set => __pbn__join_chat_id = value;
        }
        public bool ShouldSerializejoin_chat_id() => __pbn__join_chat_id != null;
        public void Resetjoin_chat_id() => __pbn__join_chat_id = null;
        private ulong? __pbn__join_chat_id;

        [global::ProtoBuf.ProtoMember(5)]
        public uint time_expire
        {
            get => __pbn__time_expire.GetValueOrDefault();
            set => __pbn__time_expire = value;
        }
        public bool ShouldSerializetime_expire() => __pbn__time_expire != null;
        public void Resettime_expire() => __pbn__time_expire = null;
        private uint? __pbn__time_expire;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_InviteFriendToChatRoomGroup_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong steamid
        {
            get => __pbn__steamid.GetValueOrDefault();
            set => __pbn__steamid = value;
        }
        public bool ShouldSerializesteamid() => __pbn__steamid != null;
        public void Resetsteamid() => __pbn__steamid = null;
        private ulong? __pbn__steamid;

        [global::ProtoBuf.ProtoMember(3)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

        [global::ProtoBuf.ProtoMember(4)]
        public bool skip_friendsui_check
        {
            get => __pbn__skip_friendsui_check.GetValueOrDefault();
            set => __pbn__skip_friendsui_check = value;
        }
        public bool ShouldSerializeskip_friendsui_check() => __pbn__skip_friendsui_check != null;
        public void Resetskip_friendsui_check() => __pbn__skip_friendsui_check = null;
        private bool? __pbn__skip_friendsui_check;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_InviteFriendToChatRoomGroup_Response : 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 CChatRoom_LeaveChatRoomGroup_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_LeaveChatRoomGroup_Response : 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 CChatRoom_CreateChatRoom_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_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 bool allow_voice
        {
            get => __pbn__allow_voice.GetValueOrDefault();
            set => __pbn__allow_voice = value;
        }
        public bool ShouldSerializeallow_voice() => __pbn__allow_voice != null;
        public void Resetallow_voice() => __pbn__allow_voice = null;
        private bool? __pbn__allow_voice;

    }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_DeleteChatRoom_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_DeleteChatRoom_Response : 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 CChatRoom_RenameChatRoom_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

        [global::ProtoBuf.ProtoMember(3)]
        [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.ProtoContract()]
    public partial class CChatRoom_RenameChatRoom_Response : 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 CChatRoom_ReorderChatRoom_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

        [global::ProtoBuf.ProtoMember(3)]
        public ulong move_after_chat_id
        {
            get => __pbn__move_after_chat_id.GetValueOrDefault();
            set => __pbn__move_after_chat_id = value;
        }
        public bool ShouldSerializemove_after_chat_id() => __pbn__move_after_chat_id != null;
        public void Resetmove_after_chat_id() => __pbn__move_after_chat_id = null;
        private ulong? __pbn__move_after_chat_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_ReorderChatRoom_Response : 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 CChatRoom_SendChatMessage_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

        [global::ProtoBuf.ProtoMember(3)]
        [global::System.ComponentModel.DefaultValue("")]
        public string message
        {
            get => __pbn__message ?? "";
            set => __pbn__message = value;
        }
        public bool ShouldSerializemessage() => __pbn__message != null;
        public void Resetmessage() => __pbn__message = null;
        private string __pbn__message;

        [global::ProtoBuf.ProtoMember(4)]
        public bool echo_to_sender
        {
            get => __pbn__echo_to_sender.GetValueOrDefault();
            set => __pbn__echo_to_sender = value;
        }
        public bool ShouldSerializeecho_to_sender() => __pbn__echo_to_sender != null;
        public void Resetecho_to_sender() => __pbn__echo_to_sender = null;
        private bool? __pbn__echo_to_sender;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_SendChatMessage_Response : 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 modified_message
        {
            get => __pbn__modified_message ?? "";
            set => __pbn__modified_message = value;
        }
        public bool ShouldSerializemodified_message() => __pbn__modified_message != null;
        public void Resetmodified_message() => __pbn__modified_message = null;
        private string __pbn__modified_message;

        [global::ProtoBuf.ProtoMember(2)]
        public uint server_timestamp
        {
            get => __pbn__server_timestamp.GetValueOrDefault();
            set => __pbn__server_timestamp = value;
        }
        public bool ShouldSerializeserver_timestamp() => __pbn__server_timestamp != null;
        public void Resetserver_timestamp() => __pbn__server_timestamp = null;
        private uint? __pbn__server_timestamp;

        [global::ProtoBuf.ProtoMember(3)]
        public uint ordinal
        {
            get => __pbn__ordinal.GetValueOrDefault();
            set => __pbn__ordinal = value;
        }
        public bool ShouldSerializeordinal() => __pbn__ordinal != null;
        public void Resetordinal() => __pbn__ordinal = null;
        private uint? __pbn__ordinal;

        [global::ProtoBuf.ProtoMember(4)]
        [global::System.ComponentModel.DefaultValue("")]
        public string message_without_bb_code
        {
            get => __pbn__message_without_bb_code ?? "";
            set => __pbn__message_without_bb_code = value;
        }
        public bool ShouldSerializemessage_without_bb_code() => __pbn__message_without_bb_code != null;
        public void Resetmessage_without_bb_code() => __pbn__message_without_bb_code = null;
        private string __pbn__message_without_bb_code;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_JoinVoiceChat_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_JoinVoiceChat_Response : 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 voice_chatid
        {
            get => __pbn__voice_chatid.GetValueOrDefault();
            set => __pbn__voice_chatid = value;
        }
        public bool ShouldSerializevoice_chatid() => __pbn__voice_chatid != null;
        public void Resetvoice_chatid() => __pbn__voice_chatid = null;
        private ulong? __pbn__voice_chatid;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_LeaveVoiceChat_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_LeaveVoiceChat_Response : 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 CChatRoom_GetMessageHistory_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

        [global::ProtoBuf.ProtoMember(3)]
        public uint last_time
        {
            get => __pbn__last_time.GetValueOrDefault();
            set => __pbn__last_time = value;
        }
        public bool ShouldSerializelast_time() => __pbn__last_time != null;
        public void Resetlast_time() => __pbn__last_time = null;
        private uint? __pbn__last_time;

        [global::ProtoBuf.ProtoMember(4)]
        public uint last_ordinal
        {
            get => __pbn__last_ordinal.GetValueOrDefault();
            set => __pbn__last_ordinal = value;
        }
        public bool ShouldSerializelast_ordinal() => __pbn__last_ordinal != null;
        public void Resetlast_ordinal() => __pbn__last_ordinal = null;
        private uint? __pbn__last_ordinal;

        [global::ProtoBuf.ProtoMember(5)]
        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(6)]
        public uint start_ordinal
        {
            get => __pbn__start_ordinal.GetValueOrDefault();
            set => __pbn__start_ordinal = value;
        }
        public bool ShouldSerializestart_ordinal() => __pbn__start_ordinal != null;
        public void Resetstart_ordinal() => __pbn__start_ordinal = null;
        private uint? __pbn__start_ordinal;

        [global::ProtoBuf.ProtoMember(7)]
        public uint max_count
        {
            get => __pbn__max_count.GetValueOrDefault();
            set => __pbn__max_count = value;
        }
        public bool ShouldSerializemax_count() => __pbn__max_count != null;
        public void Resetmax_count() => __pbn__max_count = null;
        private uint? __pbn__max_count;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class ServerMessage : 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(EChatRoomServerMessage.k_EChatRoomServerMsg_Invalid)]
        public EChatRoomServerMessage message
        {
            get => __pbn__message ?? EChatRoomServerMessage.k_EChatRoomServerMsg_Invalid;
            set => __pbn__message = value;
        }
        public bool ShouldSerializemessage() => __pbn__message != null;
        public void Resetmessage() => __pbn__message = null;
        private EChatRoomServerMessage? __pbn__message;

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

        [global::ProtoBuf.ProtoMember(3)]
        public uint accountid_param
        {
            get => __pbn__accountid_param.GetValueOrDefault();
            set => __pbn__accountid_param = value;
        }
        public bool ShouldSerializeaccountid_param() => __pbn__accountid_param != null;
        public void Resetaccountid_param() => __pbn__accountid_param = null;
        private uint? __pbn__accountid_param;

    }

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

        [global::ProtoBuf.ProtoMember(4)]
        public bool more_available
        {
            get => __pbn__more_available.GetValueOrDefault();
            set => __pbn__more_available = value;
        }
        public bool ShouldSerializemore_available() => __pbn__more_available != null;
        public void Resetmore_available() => __pbn__more_available = null;
        private bool? __pbn__more_available;

        [global::ProtoBuf.ProtoContract()]
        public partial class ChatMessage : 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 sender
            {
                get => __pbn__sender.GetValueOrDefault();
                set => __pbn__sender = value;
            }
            public bool ShouldSerializesender() => __pbn__sender != null;
            public void Resetsender() => __pbn__sender = null;
            private uint? __pbn__sender;

            [global::ProtoBuf.ProtoMember(2)]
            public uint server_timestamp
            {
                get => __pbn__server_timestamp.GetValueOrDefault();
                set => __pbn__server_timestamp = value;
            }
            public bool ShouldSerializeserver_timestamp() => __pbn__server_timestamp != null;
            public void Resetserver_timestamp() => __pbn__server_timestamp = null;
            private uint? __pbn__server_timestamp;

            [global::ProtoBuf.ProtoMember(3)]
            [global::System.ComponentModel.DefaultValue("")]
            public string message
            {
                get => __pbn__message ?? "";
                set => __pbn__message = value;
            }
            public bool ShouldSerializemessage() => __pbn__message != null;
            public void Resetmessage() => __pbn__message = null;
            private string __pbn__message;

            [global::ProtoBuf.ProtoMember(4)]
            public uint ordinal
            {
                get => __pbn__ordinal.GetValueOrDefault();
                set => __pbn__ordinal = value;
            }
            public bool ShouldSerializeordinal() => __pbn__ordinal != null;
            public void Resetordinal() => __pbn__ordinal = null;
            private uint? __pbn__ordinal;

            [global::ProtoBuf.ProtoMember(5)]
            public ServerMessage server_message { get; set; }

            [global::ProtoBuf.ProtoMember(6)]
            public bool deleted
            {
                get => __pbn__deleted.GetValueOrDefault();
                set => __pbn__deleted = value;
            }
            public bool ShouldSerializedeleted() => __pbn__deleted != null;
            public void Resetdeleted() => __pbn__deleted = null;
            private bool? __pbn__deleted;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_GetMyChatRoomGroups_Request : 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 CChatRoom_GetChatRoomGroupSummary_Response : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

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

        [global::ProtoBuf.ProtoMember(3)]
        public uint active_member_count
        {
            get => __pbn__active_member_count.GetValueOrDefault();
            set => __pbn__active_member_count = value;
        }
        public bool ShouldSerializeactive_member_count() => __pbn__active_member_count != null;
        public void Resetactive_member_count() => __pbn__active_member_count = null;
        private uint? __pbn__active_member_count;

        [global::ProtoBuf.ProtoMember(4)]
        public uint active_voice_member_count
        {
            get => __pbn__active_voice_member_count.GetValueOrDefault();
            set => __pbn__active_voice_member_count = value;
        }
        public bool ShouldSerializeactive_voice_member_count() => __pbn__active_voice_member_count != null;
        public void Resetactive_voice_member_count() => __pbn__active_voice_member_count = null;
        private uint? __pbn__active_voice_member_count;

        [global::ProtoBuf.ProtoMember(5)]
        public ulong default_chat_id
        {
            get => __pbn__default_chat_id.GetValueOrDefault();
            set => __pbn__default_chat_id = value;
        }
        public bool ShouldSerializedefault_chat_id() => __pbn__default_chat_id != null;
        public void Resetdefault_chat_id() => __pbn__default_chat_id = null;
        private ulong? __pbn__default_chat_id;

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

        [global::ProtoBuf.ProtoMember(7)]
        public uint clanid
        {
            get => __pbn__clanid.GetValueOrDefault();
            set => __pbn__clanid = value;
        }
        public bool ShouldSerializeclanid() => __pbn__clanid != null;
        public void Resetclanid() => __pbn__clanid = null;
        private uint? __pbn__clanid;

        [global::ProtoBuf.ProtoMember(8)]
        [global::System.ComponentModel.DefaultValue("")]
        public string chat_group_tagline
        {
            get => __pbn__chat_group_tagline ?? "";
            set => __pbn__chat_group_tagline = value;
        }
        public bool ShouldSerializechat_group_tagline() => __pbn__chat_group_tagline != null;
        public void Resetchat_group_tagline() => __pbn__chat_group_tagline = null;
        private string __pbn__chat_group_tagline;

        [global::ProtoBuf.ProtoMember(9)]
        public uint accountid_owner
        {
            get => __pbn__accountid_owner.GetValueOrDefault();
            set => __pbn__accountid_owner = value;
        }
        public bool ShouldSerializeaccountid_owner() => __pbn__accountid_owner != null;
        public void Resetaccountid_owner() => __pbn__accountid_owner = null;
        private uint? __pbn__accountid_owner;

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

        [global::ProtoBuf.ProtoMember(11)]
        public byte[] chat_group_avatar_sha
        {
            get => __pbn__chat_group_avatar_sha;
            set => __pbn__chat_group_avatar_sha = value;
        }
        public bool ShouldSerializechat_group_avatar_sha() => __pbn__chat_group_avatar_sha != null;
        public void Resetchat_group_avatar_sha() => __pbn__chat_group_avatar_sha = null;
        private byte[] __pbn__chat_group_avatar_sha;

        [global::ProtoBuf.ProtoMember(12)]
        [global::System.ComponentModel.DefaultValue(EChatRoomGroupRank.k_EChatRoomGroupRank_Default)]
        public EChatRoomGroupRank rank
        {
            get => __pbn__rank ?? EChatRoomGroupRank.k_EChatRoomGroupRank_Default;
            set => __pbn__rank = value;
        }
        public bool ShouldSerializerank() => __pbn__rank != null;
        public void Resetrank() => __pbn__rank = null;
        private EChatRoomGroupRank? __pbn__rank;

        [global::ProtoBuf.ProtoMember(13)]
        public ulong default_role_id
        {
            get => __pbn__default_role_id.GetValueOrDefault();
            set => __pbn__default_role_id = value;
        }
        public bool ShouldSerializedefault_role_id() => __pbn__default_role_id != null;
        public void Resetdefault_role_id() => __pbn__default_role_id = null;
        private ulong? __pbn__default_role_id;

        [global::ProtoBuf.ProtoMember(14)]
        public global::System.Collections.Generic.List<ulong> role_ids { get; } = new global::System.Collections.Generic.List<ulong>();

        [global::ProtoBuf.ProtoMember(15)]
        public global::System.Collections.Generic.List<CChatRoleActions> role_actions { get; } = new global::System.Collections.Generic.List<CChatRoleActions>();

        [global::ProtoBuf.ProtoMember(16)]
        public uint watching_broadcast_accountid
        {
            get => __pbn__watching_broadcast_accountid.GetValueOrDefault();
            set => __pbn__watching_broadcast_accountid = value;
        }
        public bool ShouldSerializewatching_broadcast_accountid() => __pbn__watching_broadcast_accountid != null;
        public void Resetwatching_broadcast_accountid() => __pbn__watching_broadcast_accountid = null;
        private uint? __pbn__watching_broadcast_accountid;

        [global::ProtoBuf.ProtoMember(17)]
        public uint appid
        {
            get => __pbn__appid.GetValueOrDefault();
            set => __pbn__appid = value;
        }
        public bool ShouldSerializeappid() => __pbn__appid != null;
        public void Resetappid() => __pbn__appid = null;
        private uint? __pbn__appid;

        [global::ProtoBuf.ProtoMember(18)]
        public global::System.Collections.Generic.List<CChatPartyBeacon> party_beacons { get; } = new global::System.Collections.Generic.List<CChatPartyBeacon>();

        [global::ProtoBuf.ProtoMember(19)]
        public ulong watching_broadcast_channel_id
        {
            get => __pbn__watching_broadcast_channel_id.GetValueOrDefault();
            set => __pbn__watching_broadcast_channel_id = value;
        }
        public bool ShouldSerializewatching_broadcast_channel_id() => __pbn__watching_broadcast_channel_id != null;
        public void Resetwatching_broadcast_channel_id() => __pbn__watching_broadcast_channel_id = null;
        private ulong? __pbn__watching_broadcast_channel_id;

        [global::ProtoBuf.ProtoMember(20)]
        public ulong active_minigame_id
        {
            get => __pbn__active_minigame_id.GetValueOrDefault();
            set => __pbn__active_minigame_id = value;
        }
        public bool ShouldSerializeactive_minigame_id() => __pbn__active_minigame_id != null;
        public void Resetactive_minigame_id() => __pbn__active_minigame_id = null;
        private ulong? __pbn__active_minigame_id;

        [global::ProtoBuf.ProtoMember(21)]
        [global::System.ComponentModel.DefaultValue("")]
        public string avatar_ugc_url
        {
            get => __pbn__avatar_ugc_url ?? "";
            set => __pbn__avatar_ugc_url = value;
        }
        public bool ShouldSerializeavatar_ugc_url() => __pbn__avatar_ugc_url != null;
        public void Resetavatar_ugc_url() => __pbn__avatar_ugc_url = null;
        private string __pbn__avatar_ugc_url;

    }

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

        [global::ProtoBuf.ProtoMember(2)]
        public CChatRoom_GetChatRoomGroupSummary_Response group_summary { get; set; }

    }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_GetChatRoomGroupState_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

    }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_GetChatRoomGroupSummary_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_SetAppChatRoomGroupForceActive_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public uint requesting_app_id
        {
            get => __pbn__requesting_app_id.GetValueOrDefault();
            set => __pbn__requesting_app_id = value;
        }
        public bool ShouldSerializerequesting_app_id() => __pbn__requesting_app_id != null;
        public void Resetrequesting_app_id() => __pbn__requesting_app_id = null;
        private uint? __pbn__requesting_app_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_SetAppChatRoomGroupForceActive_Response : 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 result
        {
            get => __pbn__result.GetValueOrDefault();
            set => __pbn__result = value;
        }
        public bool ShouldSerializeresult() => __pbn__result != null;
        public void Resetresult() => __pbn__result = null;
        private uint? __pbn__result;

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_SetAppChatRoomGroupStopForceActive_Notification : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public uint requesting_app_id
        {
            get => __pbn__requesting_app_id.GetValueOrDefault();
            set => __pbn__requesting_app_id = value;
        }
        public bool ShouldSerializerequesting_app_id() => __pbn__requesting_app_id != null;
        public void Resetrequesting_app_id() => __pbn__requesting_app_id = null;
        private uint? __pbn__requesting_app_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_AckChatMessage_Notification : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

        [global::ProtoBuf.ProtoMember(3)]
        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.ProtoContract()]
    public partial class CChatRoom_CreateInviteLink_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public uint seconds_valid
        {
            get => __pbn__seconds_valid.GetValueOrDefault();
            set => __pbn__seconds_valid = value;
        }
        public bool ShouldSerializeseconds_valid() => __pbn__seconds_valid != null;
        public void Resetseconds_valid() => __pbn__seconds_valid = null;
        private uint? __pbn__seconds_valid;

        [global::ProtoBuf.ProtoMember(3)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_CreateInviteLink_Response : 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 invite_code
        {
            get => __pbn__invite_code ?? "";
            set => __pbn__invite_code = value;
        }
        public bool ShouldSerializeinvite_code() => __pbn__invite_code != null;
        public void Resetinvite_code() => __pbn__invite_code = null;
        private string __pbn__invite_code;

        [global::ProtoBuf.ProtoMember(2)]
        public uint seconds_valid
        {
            get => __pbn__seconds_valid.GetValueOrDefault();
            set => __pbn__seconds_valid = value;
        }
        public bool ShouldSerializeseconds_valid() => __pbn__seconds_valid != null;
        public void Resetseconds_valid() => __pbn__seconds_valid = null;
        private uint? __pbn__seconds_valid;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_GetInviteLinkInfo_Request : 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 invite_code
        {
            get => __pbn__invite_code ?? "";
            set => __pbn__invite_code = value;
        }
        public bool ShouldSerializeinvite_code() => __pbn__invite_code != null;
        public void Resetinvite_code() => __pbn__invite_code = null;
        private string __pbn__invite_code;

    }

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

        [global::ProtoBuf.ProtoMember(3, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong steamid_sender
        {
            get => __pbn__steamid_sender.GetValueOrDefault();
            set => __pbn__steamid_sender = value;
        }
        public bool ShouldSerializesteamid_sender() => __pbn__steamid_sender != null;
        public void Resetsteamid_sender() => __pbn__steamid_sender = null;
        private ulong? __pbn__steamid_sender;

        [global::ProtoBuf.ProtoMember(4)]
        public uint time_expires
        {
            get => __pbn__time_expires.GetValueOrDefault();
            set => __pbn__time_expires = value;
        }
        public bool ShouldSerializetime_expires() => __pbn__time_expires != null;
        public void Resettime_expires() => __pbn__time_expires = null;
        private uint? __pbn__time_expires;

        [global::ProtoBuf.ProtoMember(6)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

        [global::ProtoBuf.ProtoMember(8)]
        public CChatRoom_GetChatRoomGroupSummary_Response group_summary { get; set; }

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

        [global::ProtoBuf.ProtoMember(10)]
        public uint time_kick_expire
        {
            get => __pbn__time_kick_expire.GetValueOrDefault();
            set => __pbn__time_kick_expire = value;
        }
        public bool ShouldSerializetime_kick_expire() => __pbn__time_kick_expire != null;
        public void Resettime_kick_expire() => __pbn__time_kick_expire = null;
        private uint? __pbn__time_kick_expire;

        [global::ProtoBuf.ProtoMember(11)]
        public bool banned
        {
            get => __pbn__banned.GetValueOrDefault();
            set => __pbn__banned = value;
        }
        public bool ShouldSerializebanned() => __pbn__banned != null;
        public void Resetbanned() => __pbn__banned = null;
        private bool? __pbn__banned;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_GetInviteInfo_Request : 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 steamid_invitee
        {
            get => __pbn__steamid_invitee.GetValueOrDefault();
            set => __pbn__steamid_invitee = value;
        }
        public bool ShouldSerializesteamid_invitee() => __pbn__steamid_invitee != null;
        public void Resetsteamid_invitee() => __pbn__steamid_invitee = null;
        private ulong? __pbn__steamid_invitee;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(3)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

        [global::ProtoBuf.ProtoMember(4)]
        [global::System.ComponentModel.DefaultValue("")]
        public string invite_code
        {
            get => __pbn__invite_code ?? "";
            set => __pbn__invite_code = value;
        }
        public bool ShouldSerializeinvite_code() => __pbn__invite_code != null;
        public void Resetinvite_code() => __pbn__invite_code = null;
        private string __pbn__invite_code;

    }

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

        [global::ProtoBuf.ProtoMember(2)]
        public uint time_kick_expire
        {
            get => __pbn__time_kick_expire.GetValueOrDefault();
            set => __pbn__time_kick_expire = value;
        }
        public bool ShouldSerializetime_kick_expire() => __pbn__time_kick_expire != null;
        public void Resettime_kick_expire() => __pbn__time_kick_expire = null;
        private uint? __pbn__time_kick_expire;

        [global::ProtoBuf.ProtoMember(3)]
        public bool banned
        {
            get => __pbn__banned.GetValueOrDefault();
            set => __pbn__banned = value;
        }
        public bool ShouldSerializebanned() => __pbn__banned != null;
        public void Resetbanned() => __pbn__banned = null;
        private bool? __pbn__banned;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_GetInviteLinksForGroup_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

    }

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

        [global::ProtoBuf.ProtoContract()]
        public partial class LinkInfo : 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 invite_code
            {
                get => __pbn__invite_code ?? "";
                set => __pbn__invite_code = value;
            }
            public bool ShouldSerializeinvite_code() => __pbn__invite_code != null;
            public void Resetinvite_code() => __pbn__invite_code = null;
            private string __pbn__invite_code;

            [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
            public ulong steamid_creator
            {
                get => __pbn__steamid_creator.GetValueOrDefault();
                set => __pbn__steamid_creator = value;
            }
            public bool ShouldSerializesteamid_creator() => __pbn__steamid_creator != null;
            public void Resetsteamid_creator() => __pbn__steamid_creator = null;
            private ulong? __pbn__steamid_creator;

            [global::ProtoBuf.ProtoMember(3)]
            public uint time_expires
            {
                get => __pbn__time_expires.GetValueOrDefault();
                set => __pbn__time_expires = value;
            }
            public bool ShouldSerializetime_expires() => __pbn__time_expires != null;
            public void Resettime_expires() => __pbn__time_expires = null;
            private uint? __pbn__time_expires;

            [global::ProtoBuf.ProtoMember(4)]
            public ulong chat_id
            {
                get => __pbn__chat_id.GetValueOrDefault();
                set => __pbn__chat_id = value;
            }
            public bool ShouldSerializechat_id() => __pbn__chat_id != null;
            public void Resetchat_id() => __pbn__chat_id = null;
            private ulong? __pbn__chat_id;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_GetBanList_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

    }

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

        [global::ProtoBuf.ProtoContract()]
        public partial class BanInfo : 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 accountid
            {
                get => __pbn__accountid.GetValueOrDefault();
                set => __pbn__accountid = value;
            }
            public bool ShouldSerializeaccountid() => __pbn__accountid != null;
            public void Resetaccountid() => __pbn__accountid = null;
            private uint? __pbn__accountid;

            [global::ProtoBuf.ProtoMember(2)]
            public uint accountid_actor
            {
                get => __pbn__accountid_actor.GetValueOrDefault();
                set => __pbn__accountid_actor = value;
            }
            public bool ShouldSerializeaccountid_actor() => __pbn__accountid_actor != null;
            public void Resetaccountid_actor() => __pbn__accountid_actor = null;
            private uint? __pbn__accountid_actor;

            [global::ProtoBuf.ProtoMember(3)]
            public uint time_banned
            {
                get => __pbn__time_banned.GetValueOrDefault();
                set => __pbn__time_banned = value;
            }
            public bool ShouldSerializetime_banned() => __pbn__time_banned != null;
            public void Resettime_banned() => __pbn__time_banned = null;
            private uint? __pbn__time_banned;

            [global::ProtoBuf.ProtoMember(4)]
            [global::System.ComponentModel.DefaultValue("")]
            public string ban_reason
            {
                get => __pbn__ban_reason ?? "";
                set => __pbn__ban_reason = value;
            }
            public bool ShouldSerializeban_reason() => __pbn__ban_reason != null;
            public void Resetban_reason() => __pbn__ban_reason = null;
            private string __pbn__ban_reason;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_GetInviteList_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoomGroupInvite : 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 accountid
        {
            get => __pbn__accountid.GetValueOrDefault();
            set => __pbn__accountid = value;
        }
        public bool ShouldSerializeaccountid() => __pbn__accountid != null;
        public void Resetaccountid() => __pbn__accountid = null;
        private uint? __pbn__accountid;

        [global::ProtoBuf.ProtoMember(2)]
        public uint accountid_actor
        {
            get => __pbn__accountid_actor.GetValueOrDefault();
            set => __pbn__accountid_actor = value;
        }
        public bool ShouldSerializeaccountid_actor() => __pbn__accountid_actor != null;
        public void Resetaccountid_actor() => __pbn__accountid_actor = null;
        private uint? __pbn__accountid_actor;

        [global::ProtoBuf.ProtoMember(3)]
        public uint time_invited
        {
            get => __pbn__time_invited.GetValueOrDefault();
            set => __pbn__time_invited = value;
        }
        public bool ShouldSerializetime_invited() => __pbn__time_invited != null;
        public void Resettime_invited() => __pbn__time_invited = null;
        private uint? __pbn__time_invited;

    }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_DeleteInviteLink_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

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

    }

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

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

        [global::ProtoBuf.ProtoMember(3)]
        public int virtualize_members_threshold
        {
            get => __pbn__virtualize_members_threshold.GetValueOrDefault();
            set => __pbn__virtualize_members_threshold = value;
        }
        public bool ShouldSerializevirtualize_members_threshold() => __pbn__virtualize_members_threshold != null;
        public void Resetvirtualize_members_threshold() => __pbn__virtualize_members_threshold = null;
        private int? __pbn__virtualize_members_threshold;

    }

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

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_SetUserChatGroupPreferences_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ChatGroupPreferences chat_group_preferences { get; set; }

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

        [global::ProtoBuf.ProtoContract()]
        public partial class ChatGroupPreferences : 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(EChatRoomNotificationLevel.k_EChatroomNotificationLevel_Invalid)]
            public EChatRoomNotificationLevel desktop_notification_level
            {
                get => __pbn__desktop_notification_level ?? EChatRoomNotificationLevel.k_EChatroomNotificationLevel_Invalid;
                set => __pbn__desktop_notification_level = value;
            }
            public bool ShouldSerializedesktop_notification_level() => __pbn__desktop_notification_level != null;
            public void Resetdesktop_notification_level() => __pbn__desktop_notification_level = null;
            private EChatRoomNotificationLevel? __pbn__desktop_notification_level;

            [global::ProtoBuf.ProtoMember(2)]
            [global::System.ComponentModel.DefaultValue(EChatRoomNotificationLevel.k_EChatroomNotificationLevel_Invalid)]
            public EChatRoomNotificationLevel mobile_notification_level
            {
                get => __pbn__mobile_notification_level ?? EChatRoomNotificationLevel.k_EChatroomNotificationLevel_Invalid;
                set => __pbn__mobile_notification_level = value;
            }
            public bool ShouldSerializemobile_notification_level() => __pbn__mobile_notification_level != null;
            public void Resetmobile_notification_level() => __pbn__mobile_notification_level = null;
            private EChatRoomNotificationLevel? __pbn__mobile_notification_level;

            [global::ProtoBuf.ProtoMember(3)]
            public bool unread_indicator_muted
            {
                get => __pbn__unread_indicator_muted.GetValueOrDefault();
                set => __pbn__unread_indicator_muted = value;
            }
            public bool ShouldSerializeunread_indicator_muted() => __pbn__unread_indicator_muted != null;
            public void Resetunread_indicator_muted() => __pbn__unread_indicator_muted = null;
            private bool? __pbn__unread_indicator_muted;

        }

        [global::ProtoBuf.ProtoContract()]
        public partial class ChatRoomPreferences : 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 chat_id
            {
                get => __pbn__chat_id.GetValueOrDefault();
                set => __pbn__chat_id = value;
            }
            public bool ShouldSerializechat_id() => __pbn__chat_id != null;
            public void Resetchat_id() => __pbn__chat_id = null;
            private ulong? __pbn__chat_id;

            [global::ProtoBuf.ProtoMember(2)]
            [global::System.ComponentModel.DefaultValue(EChatRoomNotificationLevel.k_EChatroomNotificationLevel_Invalid)]
            public EChatRoomNotificationLevel desktop_notification_level
            {
                get => __pbn__desktop_notification_level ?? EChatRoomNotificationLevel.k_EChatroomNotificationLevel_Invalid;
                set => __pbn__desktop_notification_level = value;
            }
            public bool ShouldSerializedesktop_notification_level() => __pbn__desktop_notification_level != null;
            public void Resetdesktop_notification_level() => __pbn__desktop_notification_level = null;
            private EChatRoomNotificationLevel? __pbn__desktop_notification_level;

            [global::ProtoBuf.ProtoMember(3)]
            [global::System.ComponentModel.DefaultValue(EChatRoomNotificationLevel.k_EChatroomNotificationLevel_Invalid)]
            public EChatRoomNotificationLevel mobile_notification_level
            {
                get => __pbn__mobile_notification_level ?? EChatRoomNotificationLevel.k_EChatroomNotificationLevel_Invalid;
                set => __pbn__mobile_notification_level = value;
            }
            public bool ShouldSerializemobile_notification_level() => __pbn__mobile_notification_level != null;
            public void Resetmobile_notification_level() => __pbn__mobile_notification_level = null;
            private EChatRoomNotificationLevel? __pbn__mobile_notification_level;

            [global::ProtoBuf.ProtoMember(4)]
            public bool unread_indicator_muted
            {
                get => __pbn__unread_indicator_muted.GetValueOrDefault();
                set => __pbn__unread_indicator_muted = value;
            }
            public bool ShouldSerializeunread_indicator_muted() => __pbn__unread_indicator_muted != null;
            public void Resetunread_indicator_muted() => __pbn__unread_indicator_muted = null;
            private bool? __pbn__unread_indicator_muted;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_SetUserChatGroupPreferences_Response : 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 CChatRoom_DeleteChatMessages_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

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

        [global::ProtoBuf.ProtoContract()]
        public partial class Message : 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_timestamp
            {
                get => __pbn__server_timestamp.GetValueOrDefault();
                set => __pbn__server_timestamp = value;
            }
            public bool ShouldSerializeserver_timestamp() => __pbn__server_timestamp != null;
            public void Resetserver_timestamp() => __pbn__server_timestamp = null;
            private uint? __pbn__server_timestamp;

            [global::ProtoBuf.ProtoMember(2)]
            public uint ordinal
            {
                get => __pbn__ordinal.GetValueOrDefault();
                set => __pbn__ordinal = value;
            }
            public bool ShouldSerializeordinal() => __pbn__ordinal != null;
            public void Resetordinal() => __pbn__ordinal = null;
            private uint? __pbn__ordinal;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_DeleteChatMessages_Response : 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 CChatRoom_UpdateMemberListView_Notification : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong view_id
        {
            get => __pbn__view_id.GetValueOrDefault();
            set => __pbn__view_id = value;
        }
        public bool ShouldSerializeview_id() => __pbn__view_id != null;
        public void Resetview_id() => __pbn__view_id = null;
        private ulong? __pbn__view_id;

        [global::ProtoBuf.ProtoMember(3)]
        public int start
        {
            get => __pbn__start.GetValueOrDefault();
            set => __pbn__start = value;
        }
        public bool ShouldSerializestart() => __pbn__start != null;
        public void Resetstart() => __pbn__start = null;
        private int? __pbn__start;

        [global::ProtoBuf.ProtoMember(4)]
        public int end
        {
            get => __pbn__end.GetValueOrDefault();
            set => __pbn__end = value;
        }
        public bool ShouldSerializeend() => __pbn__end != null;
        public void Resetend() => __pbn__end = null;
        private int? __pbn__end;

        [global::ProtoBuf.ProtoMember(5)]
        public int client_changenumber
        {
            get => __pbn__client_changenumber.GetValueOrDefault();
            set => __pbn__client_changenumber = value;
        }
        public bool ShouldSerializeclient_changenumber() => __pbn__client_changenumber != null;
        public void Resetclient_changenumber() => __pbn__client_changenumber = null;
        private int? __pbn__client_changenumber;

        [global::ProtoBuf.ProtoMember(6)]
        public bool delete_view
        {
            get => __pbn__delete_view.GetValueOrDefault();
            set => __pbn__delete_view = value;
        }
        public bool ShouldSerializedelete_view() => __pbn__delete_view != null;
        public void Resetdelete_view() => __pbn__delete_view = null;
        private bool? __pbn__delete_view;

        [global::ProtoBuf.ProtoMember(7)]
        public global::System.Collections.Generic.List<int> persona_subscribe_accountids { get; } = new global::System.Collections.Generic.List<int>();

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_SearchMembers_Request : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong search_id
        {
            get => __pbn__search_id.GetValueOrDefault();
            set => __pbn__search_id = value;
        }
        public bool ShouldSerializesearch_id() => __pbn__search_id != null;
        public void Resetsearch_id() => __pbn__search_id = null;
        private ulong? __pbn__search_id;

        [global::ProtoBuf.ProtoMember(3)]
        [global::System.ComponentModel.DefaultValue("")]
        public string search_text
        {
            get => __pbn__search_text ?? "";
            set => __pbn__search_text = value;
        }
        public bool ShouldSerializesearch_text() => __pbn__search_text != null;
        public void Resetsearch_text() => __pbn__search_text = null;
        private string __pbn__search_text;

        [global::ProtoBuf.ProtoMember(4)]
        public int max_results
        {
            get => __pbn__max_results.GetValueOrDefault();
            set => __pbn__max_results = value;
        }
        public bool ShouldSerializemax_results() => __pbn__max_results != null;
        public void Resetmax_results() => __pbn__max_results = null;
        private int? __pbn__max_results;

    }

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

        [global::ProtoBuf.ProtoMember(2)]
        public uint status_flags
        {
            get => __pbn__status_flags.GetValueOrDefault();
            set => __pbn__status_flags = value;
        }
        public bool ShouldSerializestatus_flags() => __pbn__status_flags != null;
        public void Resetstatus_flags() => __pbn__status_flags = null;
        private uint? __pbn__status_flags;

        [global::ProtoBuf.ProtoContract()]
        public partial class MemberMatch : 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 accountid
            {
                get => __pbn__accountid.GetValueOrDefault();
                set => __pbn__accountid = value;
            }
            public bool ShouldSerializeaccountid() => __pbn__accountid != null;
            public void Resetaccountid() => __pbn__accountid = null;
            private int? __pbn__accountid;

            [global::ProtoBuf.ProtoMember(2)]
            public CMsgClientPersonaState.Friend persona { get; set; }

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CClanChatRooms_GetClanChatRoomInfo_Request : 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 steamid
        {
            get => __pbn__steamid.GetValueOrDefault();
            set => __pbn__steamid = value;
        }
        public bool ShouldSerializesteamid() => __pbn__steamid != null;
        public void Resetsteamid() => __pbn__steamid = null;
        private ulong? __pbn__steamid;

        [global::ProtoBuf.ProtoMember(2)]
        [global::System.ComponentModel.DefaultValue(true)]
        public bool autocreate
        {
            get => __pbn__autocreate ?? true;
            set => __pbn__autocreate = value;
        }
        public bool ShouldSerializeautocreate() => __pbn__autocreate != null;
        public void Resetautocreate() => __pbn__autocreate = null;
        private bool? __pbn__autocreate;

    }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CClanChatRooms_SetClanChatRoomPrivate_Request : 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 steamid
        {
            get => __pbn__steamid.GetValueOrDefault();
            set => __pbn__steamid = value;
        }
        public bool ShouldSerializesteamid() => __pbn__steamid != null;
        public void Resetsteamid() => __pbn__steamid = null;
        private ulong? __pbn__steamid;

        [global::ProtoBuf.ProtoMember(2)]
        public bool chat_room_private
        {
            get => __pbn__chat_room_private.GetValueOrDefault();
            set => __pbn__chat_room_private = value;
        }
        public bool ShouldSerializechat_room_private() => __pbn__chat_room_private != null;
        public void Resetchat_room_private() => __pbn__chat_room_private = null;
        private bool? __pbn__chat_room_private;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CClanChatRooms_SetClanChatRoomPrivate_Response : 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 chat_room_private
        {
            get => __pbn__chat_room_private.GetValueOrDefault();
            set => __pbn__chat_room_private = value;
        }
        public bool ShouldSerializechat_room_private() => __pbn__chat_room_private != null;
        public void Resetchat_room_private() => __pbn__chat_room_private = null;
        private bool? __pbn__chat_room_private;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatMentions : 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 mention_all
        {
            get => __pbn__mention_all.GetValueOrDefault();
            set => __pbn__mention_all = value;
        }
        public bool ShouldSerializemention_all() => __pbn__mention_all != null;
        public void Resetmention_all() => __pbn__mention_all = null;
        private bool? __pbn__mention_all;

        [global::ProtoBuf.ProtoMember(2)]
        public bool mention_here
        {
            get => __pbn__mention_here.GetValueOrDefault();
            set => __pbn__mention_here = value;
        }
        public bool ShouldSerializemention_here() => __pbn__mention_here != null;
        public void Resetmention_here() => __pbn__mention_here = null;
        private bool? __pbn__mention_here;

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_IncomingChatMessage_Notification : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

        [global::ProtoBuf.ProtoMember(3, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong steamid_sender
        {
            get => __pbn__steamid_sender.GetValueOrDefault();
            set => __pbn__steamid_sender = value;
        }
        public bool ShouldSerializesteamid_sender() => __pbn__steamid_sender != null;
        public void Resetsteamid_sender() => __pbn__steamid_sender = null;
        private ulong? __pbn__steamid_sender;

        [global::ProtoBuf.ProtoMember(4)]
        [global::System.ComponentModel.DefaultValue("")]
        public string message
        {
            get => __pbn__message ?? "";
            set => __pbn__message = value;
        }
        public bool ShouldSerializemessage() => __pbn__message != null;
        public void Resetmessage() => __pbn__message = null;
        private string __pbn__message;

        [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 CChatMentions mentions { get; set; }

        [global::ProtoBuf.ProtoMember(7)]
        public uint ordinal
        {
            get => __pbn__ordinal.GetValueOrDefault();
            set => __pbn__ordinal = value;
        }
        public bool ShouldSerializeordinal() => __pbn__ordinal != null;
        public void Resetordinal() => __pbn__ordinal = null;
        private uint? __pbn__ordinal;

        [global::ProtoBuf.ProtoMember(8)]
        public ServerMessage server_message { get; set; }

        [global::ProtoBuf.ProtoMember(9)]
        [global::System.ComponentModel.DefaultValue("")]
        public string message_no_bbcode
        {
            get => __pbn__message_no_bbcode ?? "";
            set => __pbn__message_no_bbcode = value;
        }
        public bool ShouldSerializemessage_no_bbcode() => __pbn__message_no_bbcode != null;
        public void Resetmessage_no_bbcode() => __pbn__message_no_bbcode = null;
        private string __pbn__message_no_bbcode;

        [global::ProtoBuf.ProtoMember(10)]
        [global::System.ComponentModel.DefaultValue("")]
        public string chat_name
        {
            get => __pbn__chat_name ?? "";
            set => __pbn__chat_name = value;
        }
        public bool ShouldSerializechat_name() => __pbn__chat_name != null;
        public void Resetchat_name() => __pbn__chat_name = null;
        private string __pbn__chat_name;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_ChatMessageModified_Notification : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

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

        [global::ProtoBuf.ProtoContract()]
        public partial class ChatMessage : 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_timestamp
            {
                get => __pbn__server_timestamp.GetValueOrDefault();
                set => __pbn__server_timestamp = value;
            }
            public bool ShouldSerializeserver_timestamp() => __pbn__server_timestamp != null;
            public void Resetserver_timestamp() => __pbn__server_timestamp = null;
            private uint? __pbn__server_timestamp;

            [global::ProtoBuf.ProtoMember(2)]
            public uint ordinal
            {
                get => __pbn__ordinal.GetValueOrDefault();
                set => __pbn__ordinal = value;
            }
            public bool ShouldSerializeordinal() => __pbn__ordinal != null;
            public void Resetordinal() => __pbn__ordinal = null;
            private uint? __pbn__ordinal;

            [global::ProtoBuf.ProtoMember(3)]
            public bool deleted
            {
                get => __pbn__deleted.GetValueOrDefault();
                set => __pbn__deleted = value;
            }
            public bool ShouldSerializedeleted() => __pbn__deleted != null;
            public void Resetdeleted() => __pbn__deleted = null;
            private bool? __pbn__deleted;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_MemberStateChange_Notification : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public CChatRoomMember member { get; set; }

        [global::ProtoBuf.ProtoMember(3)]
        [global::System.ComponentModel.DefaultValue(EChatRoomMemberStateChange.k_EChatRoomMemberStateChange_Invalid)]
        public EChatRoomMemberStateChange change
        {
            get => __pbn__change ?? EChatRoomMemberStateChange.k_EChatRoomMemberStateChange_Invalid;
            set => __pbn__change = value;
        }
        public bool ShouldSerializechange() => __pbn__change != null;
        public void Resetchange() => __pbn__change = null;
        private EChatRoomMemberStateChange? __pbn__change;

    }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_ChatRoomGroupRoomsChange_Notification : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong default_chat_id
        {
            get => __pbn__default_chat_id.GetValueOrDefault();
            set => __pbn__default_chat_id = value;
        }
        public bool ShouldSerializedefault_chat_id() => __pbn__default_chat_id != null;
        public void Resetdefault_chat_id() => __pbn__default_chat_id = null;
        private ulong? __pbn__default_chat_id;

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoom_NotifyShouldRejoinChatRoomVoiceChat_Notification : 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 chat_id
        {
            get => __pbn__chat_id.GetValueOrDefault();
            set => __pbn__chat_id = value;
        }
        public bool ShouldSerializechat_id() => __pbn__chat_id != null;
        public void Resetchat_id() => __pbn__chat_id = null;
        private ulong? __pbn__chat_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class ChatRoomClient_NotifyChatGroupUserStateChanged_Notification : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public CUserChatRoomGroupState user_chat_group_state { get; set; }

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

        [global::ProtoBuf.ProtoMember(4)]
        [global::System.ComponentModel.DefaultValue(EChatRoomMemberStateChange.k_EChatRoomMemberStateChange_Invalid)]
        public EChatRoomMemberStateChange user_action
        {
            get => __pbn__user_action ?? EChatRoomMemberStateChange.k_EChatRoomMemberStateChange_Invalid;
            set => __pbn__user_action = value;
        }
        public bool ShouldSerializeuser_action() => __pbn__user_action != null;
        public void Resetuser_action() => __pbn__user_action = null;
        private EChatRoomMemberStateChange? __pbn__user_action;

    }

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

    }

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

        [global::ProtoBuf.ProtoMember(3)]
        public int start
        {
            get => __pbn__start.GetValueOrDefault();
            set => __pbn__start = value;
        }
        public bool ShouldSerializestart() => __pbn__start != null;
        public void Resetstart() => __pbn__start = null;
        private int? __pbn__start;

        [global::ProtoBuf.ProtoMember(4)]
        public int end
        {
            get => __pbn__end.GetValueOrDefault();
            set => __pbn__end = value;
        }
        public bool ShouldSerializeend() => __pbn__end != null;
        public void Resetend() => __pbn__end = null;
        private int? __pbn__end;

        [global::ProtoBuf.ProtoMember(5)]
        public int total_count
        {
            get => __pbn__total_count.GetValueOrDefault();
            set => __pbn__total_count = value;
        }
        public bool ShouldSerializetotal_count() => __pbn__total_count != null;
        public void Resettotal_count() => __pbn__total_count = null;
        private int? __pbn__total_count;

        [global::ProtoBuf.ProtoMember(6)]
        public int client_changenumber
        {
            get => __pbn__client_changenumber.GetValueOrDefault();
            set => __pbn__client_changenumber = value;
        }
        public bool ShouldSerializeclient_changenumber() => __pbn__client_changenumber != null;
        public void Resetclient_changenumber() => __pbn__client_changenumber = null;
        private int? __pbn__client_changenumber;

        [global::ProtoBuf.ProtoMember(7)]
        public int server_changenumber
        {
            get => __pbn__server_changenumber.GetValueOrDefault();
            set => __pbn__server_changenumber = value;
        }
        public bool ShouldSerializeserver_changenumber() => __pbn__server_changenumber != null;
        public void Resetserver_changenumber() => __pbn__server_changenumber = null;
        private int? __pbn__server_changenumber;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoomMemberSummaryCounts : 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 ingame
        {
            get => __pbn__ingame.GetValueOrDefault();
            set => __pbn__ingame = value;
        }
        public bool ShouldSerializeingame() => __pbn__ingame != null;
        public void Resetingame() => __pbn__ingame = null;
        private int? __pbn__ingame;

        [global::ProtoBuf.ProtoMember(2)]
        public int online
        {
            get => __pbn__online.GetValueOrDefault();
            set => __pbn__online = value;
        }
        public bool ShouldSerializeonline() => __pbn__online != null;
        public void Resetonline() => __pbn__online = null;
        private int? __pbn__online;

        [global::ProtoBuf.ProtoMember(3)]
        public int offline
        {
            get => __pbn__offline.GetValueOrDefault();
            set => __pbn__offline = value;
        }
        public bool ShouldSerializeoffline() => __pbn__offline != null;
        public void Resetoffline() => __pbn__offline = null;
        private int? __pbn__offline;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatRoomClient_MemberListViewUpdated_Notification : 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 chat_group_id
        {
            get => __pbn__chat_group_id.GetValueOrDefault();
            set => __pbn__chat_group_id = value;
        }
        public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
        public void Resetchat_group_id() => __pbn__chat_group_id = null;
        private ulong? __pbn__chat_group_id;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong view_id
        {
            get => __pbn__view_id.GetValueOrDefault();
            set => __pbn__view_id = value;
        }
        public bool ShouldSerializeview_id() => __pbn__view_id != null;
        public void Resetview_id() => __pbn__view_id = null;
        private ulong? __pbn__view_id;

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

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

        [global::ProtoBuf.ProtoMember(5)]
        public uint status_flags
        {
            get => __pbn__status_flags.GetValueOrDefault();
            set => __pbn__status_flags = value;
        }
        public bool ShouldSerializestatus_flags() => __pbn__status_flags != null;
        public void Resetstatus_flags() => __pbn__status_flags = null;
        private uint? __pbn__status_flags;

        [global::ProtoBuf.ProtoMember(6)]
        public CChatRoomMemberSummaryCounts member_summary { get; set; }

        [global::ProtoBuf.ProtoMember(7)]
        public global::System.Collections.Generic.List<CMsgClientPersonaState.Friend> subscribed_personas { get; } = new global::System.Collections.Generic.List<CMsgClientPersonaState.Friend>();

        [global::ProtoBuf.ProtoContract()]
        public partial class MemberListViewEntry : 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 rank
            {
                get => __pbn__rank.GetValueOrDefault();
                set => __pbn__rank = value;
            }
            public bool ShouldSerializerank() => __pbn__rank != null;
            public void Resetrank() => __pbn__rank = null;
            private int? __pbn__rank;

            [global::ProtoBuf.ProtoMember(2)]
            public uint accountid
            {
                get => __pbn__accountid.GetValueOrDefault();
                set => __pbn__accountid = value;
            }
            public bool ShouldSerializeaccountid() => __pbn__accountid != null;
            public void Resetaccountid() => __pbn__accountid = null;
            private uint? __pbn__accountid;

            [global::ProtoBuf.ProtoMember(3)]
            public CMsgClientPersonaState.Friend persona { get; set; }

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatUsability_ClientUsabilityMetrics_Notification : 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 metrics_run_id
        {
            get => __pbn__metrics_run_id.GetValueOrDefault();
            set => __pbn__metrics_run_id = value;
        }
        public bool ShouldSerializemetrics_run_id() => __pbn__metrics_run_id != null;
        public void Resetmetrics_run_id() => __pbn__metrics_run_id = null;
        private uint? __pbn__metrics_run_id;

        [global::ProtoBuf.ProtoMember(2)]
        public uint client_build
        {
            get => __pbn__client_build.GetValueOrDefault();
            set => __pbn__client_build = value;
        }
        public bool ShouldSerializeclient_build() => __pbn__client_build != null;
        public void Resetclient_build() => __pbn__client_build = null;
        private uint? __pbn__client_build;

        [global::ProtoBuf.ProtoMember(3)]
        public uint metrics_version
        {
            get => __pbn__metrics_version.GetValueOrDefault();
            set => __pbn__metrics_version = value;
        }
        public bool ShouldSerializemetrics_version() => __pbn__metrics_version != null;
        public void Resetmetrics_version() => __pbn__metrics_version = null;
        private uint? __pbn__metrics_version;

        [global::ProtoBuf.ProtoMember(4)]
        public bool in_web
        {
            get => __pbn__in_web.GetValueOrDefault();
            set => __pbn__in_web = value;
        }
        public bool ShouldSerializein_web() => __pbn__in_web != null;
        public void Resetin_web() => __pbn__in_web = null;
        private bool? __pbn__in_web;

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

        [global::ProtoBuf.ProtoMember(11)]
        public VoiceSettings voice_settings { get; set; }

        [global::ProtoBuf.ProtoMember(12)]
        public UIState ui_state { get; set; }

        [global::ProtoBuf.ProtoMember(13)]
        public Metrics metrics { get; set; }

        [global::ProtoBuf.ProtoContract()]
        public partial class Settings : 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 notifications_show_ingame
            {
                get => __pbn__notifications_show_ingame.GetValueOrDefault();
                set => __pbn__notifications_show_ingame = value;
            }
            public bool ShouldSerializenotifications_show_ingame() => __pbn__notifications_show_ingame != null;
            public void Resetnotifications_show_ingame() => __pbn__notifications_show_ingame = null;
            private bool? __pbn__notifications_show_ingame;

            [global::ProtoBuf.ProtoMember(2)]
            public bool notifications_show_online
            {
                get => __pbn__notifications_show_online.GetValueOrDefault();
                set => __pbn__notifications_show_online = value;
            }
            public bool ShouldSerializenotifications_show_online() => __pbn__notifications_show_online != null;
            public void Resetnotifications_show_online() => __pbn__notifications_show_online = null;
            private bool? __pbn__notifications_show_online;

            [global::ProtoBuf.ProtoMember(3)]
            public bool notifications_show_message
            {
                get => __pbn__notifications_show_message.GetValueOrDefault();
                set => __pbn__notifications_show_message = value;
            }
            public bool ShouldSerializenotifications_show_message() => __pbn__notifications_show_message != null;
            public void Resetnotifications_show_message() => __pbn__notifications_show_message = null;
            private bool? __pbn__notifications_show_message;

            [global::ProtoBuf.ProtoMember(4)]
            public bool notifications_events_and_announcements
            {
                get => __pbn__notifications_events_and_announcements.GetValueOrDefault();
                set => __pbn__notifications_events_and_announcements = value;
            }
            public bool ShouldSerializenotifications_events_and_announcements() => __pbn__notifications_events_and_announcements != null;
            public void Resetnotifications_events_and_announcements() => __pbn__notifications_events_and_announcements = null;
            private bool? __pbn__notifications_events_and_announcements;

            [global::ProtoBuf.ProtoMember(5)]
            public bool sounds_play_ingame
            {
                get => __pbn__sounds_play_ingame.GetValueOrDefault();
                set => __pbn__sounds_play_ingame = value;
            }
            public bool ShouldSerializesounds_play_ingame() => __pbn__sounds_play_ingame != null;
            public void Resetsounds_play_ingame() => __pbn__sounds_play_ingame = null;
            private bool? __pbn__sounds_play_ingame;

            [global::ProtoBuf.ProtoMember(6)]
            public bool sounds_play_online
            {
                get => __pbn__sounds_play_online.GetValueOrDefault();
                set => __pbn__sounds_play_online = value;
            }
            public bool ShouldSerializesounds_play_online() => __pbn__sounds_play_online != null;
            public void Resetsounds_play_online() => __pbn__sounds_play_online = null;
            private bool? __pbn__sounds_play_online;

            [global::ProtoBuf.ProtoMember(7)]
            public bool sounds_play_message
            {
                get => __pbn__sounds_play_message.GetValueOrDefault();
                set => __pbn__sounds_play_message = value;
            }
            public bool ShouldSerializesounds_play_message() => __pbn__sounds_play_message != null;
            public void Resetsounds_play_message() => __pbn__sounds_play_message = null;
            private bool? __pbn__sounds_play_message;

            [global::ProtoBuf.ProtoMember(8)]
            public bool sounds_events_and_announcements
            {
                get => __pbn__sounds_events_and_announcements.GetValueOrDefault();
                set => __pbn__sounds_events_and_announcements = value;
            }
            public bool ShouldSerializesounds_events_and_announcements() => __pbn__sounds_events_and_announcements != null;
            public void Resetsounds_events_and_announcements() => __pbn__sounds_events_and_announcements = null;
            private bool? __pbn__sounds_events_and_announcements;

            [global::ProtoBuf.ProtoMember(9)]
            public bool always_new_chat_window
            {
                get => __pbn__always_new_chat_window.GetValueOrDefault();
                set => __pbn__always_new_chat_window = value;
            }
            public bool ShouldSerializealways_new_chat_window() => __pbn__always_new_chat_window != null;
            public void Resetalways_new_chat_window() => __pbn__always_new_chat_window = null;
            private bool? __pbn__always_new_chat_window;

            [global::ProtoBuf.ProtoMember(10)]
            public bool force_alphabetic_friend_sorting
            {
                get => __pbn__force_alphabetic_friend_sorting.GetValueOrDefault();
                set => __pbn__force_alphabetic_friend_sorting = value;
            }
            public bool ShouldSerializeforce_alphabetic_friend_sorting() => __pbn__force_alphabetic_friend_sorting != null;
            public void Resetforce_alphabetic_friend_sorting() => __pbn__force_alphabetic_friend_sorting = null;
            private bool? __pbn__force_alphabetic_friend_sorting;

            [global::ProtoBuf.ProtoMember(11)]
            public int chat_flash_mode
            {
                get => __pbn__chat_flash_mode.GetValueOrDefault();
                set => __pbn__chat_flash_mode = value;
            }
            public bool ShouldSerializechat_flash_mode() => __pbn__chat_flash_mode != null;
            public void Resetchat_flash_mode() => __pbn__chat_flash_mode = null;
            private int? __pbn__chat_flash_mode;

            [global::ProtoBuf.ProtoMember(12)]
            public bool remember_open_chats
            {
                get => __pbn__remember_open_chats.GetValueOrDefault();
                set => __pbn__remember_open_chats = value;
            }
            public bool ShouldSerializeremember_open_chats() => __pbn__remember_open_chats != null;
            public void Resetremember_open_chats() => __pbn__remember_open_chats = null;
            private bool? __pbn__remember_open_chats;

            [global::ProtoBuf.ProtoMember(13)]
            public bool compact_quick_access
            {
                get => __pbn__compact_quick_access.GetValueOrDefault();
                set => __pbn__compact_quick_access = value;
            }
            public bool ShouldSerializecompact_quick_access() => __pbn__compact_quick_access != null;
            public void Resetcompact_quick_access() => __pbn__compact_quick_access = null;
            private bool? __pbn__compact_quick_access;

            [global::ProtoBuf.ProtoMember(14)]
            public bool compact_friends_list
            {
                get => __pbn__compact_friends_list.GetValueOrDefault();
                set => __pbn__compact_friends_list = value;
            }
            public bool ShouldSerializecompact_friends_list() => __pbn__compact_friends_list != null;
            public void Resetcompact_friends_list() => __pbn__compact_friends_list = null;
            private bool? __pbn__compact_friends_list;

            [global::ProtoBuf.ProtoMember(15)]
            public bool notifications_show_chat_room_notification
            {
                get => __pbn__notifications_show_chat_room_notification.GetValueOrDefault();
                set => __pbn__notifications_show_chat_room_notification = value;
            }
            public bool ShouldSerializenotifications_show_chat_room_notification() => __pbn__notifications_show_chat_room_notification != null;
            public void Resetnotifications_show_chat_room_notification() => __pbn__notifications_show_chat_room_notification = null;
            private bool? __pbn__notifications_show_chat_room_notification;

            [global::ProtoBuf.ProtoMember(16)]
            public bool sounds_play_chat_room_notification
            {
                get => __pbn__sounds_play_chat_room_notification.GetValueOrDefault();
                set => __pbn__sounds_play_chat_room_notification = value;
            }
            public bool ShouldSerializesounds_play_chat_room_notification() => __pbn__sounds_play_chat_room_notification != null;
            public void Resetsounds_play_chat_room_notification() => __pbn__sounds_play_chat_room_notification = null;
            private bool? __pbn__sounds_play_chat_room_notification;

            [global::ProtoBuf.ProtoMember(17)]
            public bool hide_offline_friends_in_tag_groups
            {
                get => __pbn__hide_offline_friends_in_tag_groups.GetValueOrDefault();
                set => __pbn__hide_offline_friends_in_tag_groups = value;
            }
            public bool ShouldSerializehide_offline_friends_in_tag_groups() => __pbn__hide_offline_friends_in_tag_groups != null;
            public void Resethide_offline_friends_in_tag_groups() => __pbn__hide_offline_friends_in_tag_groups = null;
            private bool? __pbn__hide_offline_friends_in_tag_groups;

            [global::ProtoBuf.ProtoMember(18)]
            public bool hide_categorized_friends
            {
                get => __pbn__hide_categorized_friends.GetValueOrDefault();
                set => __pbn__hide_categorized_friends = value;
            }
            public bool ShouldSerializehide_categorized_friends() => __pbn__hide_categorized_friends != null;
            public void Resethide_categorized_friends() => __pbn__hide_categorized_friends = null;
            private bool? __pbn__hide_categorized_friends;

            [global::ProtoBuf.ProtoMember(19)]
            public bool categorize_in_game_friends_by_game
            {
                get => __pbn__categorize_in_game_friends_by_game.GetValueOrDefault();
                set => __pbn__categorize_in_game_friends_by_game = value;
            }
            public bool ShouldSerializecategorize_in_game_friends_by_game() => __pbn__categorize_in_game_friends_by_game != null;
            public void Resetcategorize_in_game_friends_by_game() => __pbn__categorize_in_game_friends_by_game = null;
            private bool? __pbn__categorize_in_game_friends_by_game;

            [global::ProtoBuf.ProtoMember(20)]
            public int chat_font_size
            {
                get => __pbn__chat_font_size.GetValueOrDefault();
                set => __pbn__chat_font_size = value;
            }
            public bool ShouldSerializechat_font_size() => __pbn__chat_font_size != null;
            public void Resetchat_font_size() => __pbn__chat_font_size = null;
            private int? __pbn__chat_font_size;

            [global::ProtoBuf.ProtoMember(21)]
            public bool use24hour_clock
            {
                get => __pbn__use24hour_clock.GetValueOrDefault();
                set => __pbn__use24hour_clock = value;
            }
            public bool ShouldSerializeuse24hour_clock() => __pbn__use24hour_clock != null;
            public void Resetuse24hour_clock() => __pbn__use24hour_clock = null;
            private bool? __pbn__use24hour_clock;

            [global::ProtoBuf.ProtoMember(22)]
            public bool do_not_disturb_mode
            {
                get => __pbn__do_not_disturb_mode.GetValueOrDefault();
                set => __pbn__do_not_disturb_mode = value;
            }
            public bool ShouldSerializedo_not_disturb_mode() => __pbn__do_not_disturb_mode != null;
            public void Resetdo_not_disturb_mode() => __pbn__do_not_disturb_mode = null;
            private bool? __pbn__do_not_disturb_mode;

            [global::ProtoBuf.ProtoMember(23)]
            public bool disable_embed_inlining
            {
                get => __pbn__disable_embed_inlining.GetValueOrDefault();
                set => __pbn__disable_embed_inlining = value;
            }
            public bool ShouldSerializedisable_embed_inlining() => __pbn__disable_embed_inlining != null;
            public void Resetdisable_embed_inlining() => __pbn__disable_embed_inlining = null;
            private bool? __pbn__disable_embed_inlining;

            [global::ProtoBuf.ProtoMember(24)]
            public bool sign_into_friends
            {
                get => __pbn__sign_into_friends.GetValueOrDefault();
                set => __pbn__sign_into_friends = value;
            }
            public bool ShouldSerializesign_into_friends() => __pbn__sign_into_friends != null;
            public void Resetsign_into_friends() => __pbn__sign_into_friends = null;
            private bool? __pbn__sign_into_friends;

            [global::ProtoBuf.ProtoMember(25)]
            public bool animated_avatars
            {
                get => __pbn__animated_avatars.GetValueOrDefault();
                set => __pbn__animated_avatars = value;
            }
            public bool ShouldSerializeanimated_avatars() => __pbn__animated_avatars != null;
            public void Resetanimated_avatars() => __pbn__animated_avatars = null;
            private bool? __pbn__animated_avatars;

        }

        [global::ProtoBuf.ProtoContract()]
        public partial class VoiceSettings : 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 voice_input_gain
            {
                get => __pbn__voice_input_gain.GetValueOrDefault();
                set => __pbn__voice_input_gain = value;
            }
            public bool ShouldSerializevoice_input_gain() => __pbn__voice_input_gain != null;
            public void Resetvoice_input_gain() => __pbn__voice_input_gain = null;
            private float? __pbn__voice_input_gain;

            [global::ProtoBuf.ProtoMember(2)]
            public float voice_output_gain
            {
                get => __pbn__voice_output_gain.GetValueOrDefault();
                set => __pbn__voice_output_gain = value;
            }
            public bool ShouldSerializevoice_output_gain() => __pbn__voice_output_gain != null;
            public void Resetvoice_output_gain() => __pbn__voice_output_gain = null;
            private float? __pbn__voice_output_gain;

            [global::ProtoBuf.ProtoMember(3)]
            public int noise_gate_level
            {
                get => __pbn__noise_gate_level.GetValueOrDefault();
                set => __pbn__noise_gate_level = value;
            }
            public bool ShouldSerializenoise_gate_level() => __pbn__noise_gate_level != null;
            public void Resetnoise_gate_level() => __pbn__noise_gate_level = null;
            private int? __pbn__noise_gate_level;

            [global::ProtoBuf.ProtoMember(4)]
            public bool voice_use_echo_cancellation
            {
                get => __pbn__voice_use_echo_cancellation.GetValueOrDefault();
                set => __pbn__voice_use_echo_cancellation = value;
            }
            public bool ShouldSerializevoice_use_echo_cancellation() => __pbn__voice_use_echo_cancellation != null;
            public void Resetvoice_use_echo_cancellation() => __pbn__voice_use_echo_cancellation = null;
            private bool? __pbn__voice_use_echo_cancellation;

            [global::ProtoBuf.ProtoMember(5)]
            public bool voice_use_noise_cancellation
            {
                get => __pbn__voice_use_noise_cancellation.GetValueOrDefault();
                set => __pbn__voice_use_noise_cancellation = value;
            }
            public bool ShouldSerializevoice_use_noise_cancellation() => __pbn__voice_use_noise_cancellation != null;
            public void Resetvoice_use_noise_cancellation() => __pbn__voice_use_noise_cancellation = null;
            private bool? __pbn__voice_use_noise_cancellation;

            [global::ProtoBuf.ProtoMember(6)]
            public bool voice_use_auto_gain_control
            {
                get => __pbn__voice_use_auto_gain_control.GetValueOrDefault();
                set => __pbn__voice_use_auto_gain_control = value;
            }
            public bool ShouldSerializevoice_use_auto_gain_control() => __pbn__voice_use_auto_gain_control != null;
            public void Resetvoice_use_auto_gain_control() => __pbn__voice_use_auto_gain_control = null;
            private bool? __pbn__voice_use_auto_gain_control;

            [global::ProtoBuf.ProtoMember(7)]
            public bool selected_non_default_mic
            {
                get => __pbn__selected_non_default_mic.GetValueOrDefault();
                set => __pbn__selected_non_default_mic = value;
            }
            public bool ShouldSerializeselected_non_default_mic() => __pbn__selected_non_default_mic != null;
            public void Resetselected_non_default_mic() => __pbn__selected_non_default_mic = null;
            private bool? __pbn__selected_non_default_mic;

            [global::ProtoBuf.ProtoMember(8)]
            public bool selected_non_default_output
            {
                get => __pbn__selected_non_default_output.GetValueOrDefault();
                set => __pbn__selected_non_default_output = value;
            }
            public bool ShouldSerializeselected_non_default_output() => __pbn__selected_non_default_output != null;
            public void Resetselected_non_default_output() => __pbn__selected_non_default_output = null;
            private bool? __pbn__selected_non_default_output;

            [global::ProtoBuf.ProtoMember(9)]
            public bool push_to_talk_enabled
            {
                get => __pbn__push_to_talk_enabled.GetValueOrDefault();
                set => __pbn__push_to_talk_enabled = value;
            }
            public bool ShouldSerializepush_to_talk_enabled() => __pbn__push_to_talk_enabled != null;
            public void Resetpush_to_talk_enabled() => __pbn__push_to_talk_enabled = null;
            private bool? __pbn__push_to_talk_enabled;

            [global::ProtoBuf.ProtoMember(10)]
            public bool push_to_mute_enabled
            {
                get => __pbn__push_to_mute_enabled.GetValueOrDefault();
                set => __pbn__push_to_mute_enabled = value;
            }
            public bool ShouldSerializepush_to_mute_enabled() => __pbn__push_to_mute_enabled != null;
            public void Resetpush_to_mute_enabled() => __pbn__push_to_mute_enabled = null;
            private bool? __pbn__push_to_mute_enabled;

            [global::ProtoBuf.ProtoMember(11)]
            public bool play_ptt_sounds
            {
                get => __pbn__play_ptt_sounds.GetValueOrDefault();
                set => __pbn__play_ptt_sounds = value;
            }
            public bool ShouldSerializeplay_ptt_sounds() => __pbn__play_ptt_sounds != null;
            public void Resetplay_ptt_sounds() => __pbn__play_ptt_sounds = null;
            private bool? __pbn__play_ptt_sounds;

        }

        [global::ProtoBuf.ProtoContract()]
        public partial class UIState : 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 friends_list_height
            {
                get => __pbn__friends_list_height.GetValueOrDefault();
                set => __pbn__friends_list_height = value;
            }
            public bool ShouldSerializefriends_list_height() => __pbn__friends_list_height != null;
            public void Resetfriends_list_height() => __pbn__friends_list_height = null;
            private int? __pbn__friends_list_height;

            [global::ProtoBuf.ProtoMember(2)]
            public int friends_list_width
            {
                get => __pbn__friends_list_width.GetValueOrDefault();
                set => __pbn__friends_list_width = value;
            }
            public bool ShouldSerializefriends_list_width() => __pbn__friends_list_width != null;
            public void Resetfriends_list_width() => __pbn__friends_list_width = null;
            private int? __pbn__friends_list_width;

            [global::ProtoBuf.ProtoMember(3)]
            public bool friends_list_docked
            {
                get => __pbn__friends_list_docked.GetValueOrDefault();
                set => __pbn__friends_list_docked = value;
            }
            public bool ShouldSerializefriends_list_docked() => __pbn__friends_list_docked != null;
            public void Resetfriends_list_docked() => __pbn__friends_list_docked = null;
            private bool? __pbn__friends_list_docked;

            [global::ProtoBuf.ProtoMember(4)]
            public bool friends_list_collapsed
            {
                get => __pbn__friends_list_collapsed.GetValueOrDefault();
                set => __pbn__friends_list_collapsed = value;
            }
            public bool ShouldSerializefriends_list_collapsed() => __pbn__friends_list_collapsed != null;
            public void Resetfriends_list_collapsed() => __pbn__friends_list_collapsed = null;
            private bool? __pbn__friends_list_collapsed;

            [global::ProtoBuf.ProtoMember(5)]
            public int friends_list_group_chats_height
            {
                get => __pbn__friends_list_group_chats_height.GetValueOrDefault();
                set => __pbn__friends_list_group_chats_height = value;
            }
            public bool ShouldSerializefriends_list_group_chats_height() => __pbn__friends_list_group_chats_height != null;
            public void Resetfriends_list_group_chats_height() => __pbn__friends_list_group_chats_height = null;
            private int? __pbn__friends_list_group_chats_height;

            [global::ProtoBuf.ProtoMember(6)]
            public bool friends_list_visible
            {
                get => __pbn__friends_list_visible.GetValueOrDefault();
                set => __pbn__friends_list_visible = value;
            }
            public bool ShouldSerializefriends_list_visible() => __pbn__friends_list_visible != null;
            public void Resetfriends_list_visible() => __pbn__friends_list_visible = null;
            private bool? __pbn__friends_list_visible;

            [global::ProtoBuf.ProtoMember(7)]
            public int chat_popups_opened
            {
                get => __pbn__chat_popups_opened.GetValueOrDefault();
                set => __pbn__chat_popups_opened = value;
            }
            public bool ShouldSerializechat_popups_opened() => __pbn__chat_popups_opened != null;
            public void Resetchat_popups_opened() => __pbn__chat_popups_opened = null;
            private int? __pbn__chat_popups_opened;

            [global::ProtoBuf.ProtoMember(8)]
            public int group_chat_tabs_opened
            {
                get => __pbn__group_chat_tabs_opened.GetValueOrDefault();
                set => __pbn__group_chat_tabs_opened = value;
            }
            public bool ShouldSerializegroup_chat_tabs_opened() => __pbn__group_chat_tabs_opened != null;
            public void Resetgroup_chat_tabs_opened() => __pbn__group_chat_tabs_opened = null;
            private int? __pbn__group_chat_tabs_opened;

            [global::ProtoBuf.ProtoMember(9)]
            public int friend_chat_tabs_opened
            {
                get => __pbn__friend_chat_tabs_opened.GetValueOrDefault();
                set => __pbn__friend_chat_tabs_opened = value;
            }
            public bool ShouldSerializefriend_chat_tabs_opened() => __pbn__friend_chat_tabs_opened != null;
            public void Resetfriend_chat_tabs_opened() => __pbn__friend_chat_tabs_opened = null;
            private int? __pbn__friend_chat_tabs_opened;

            [global::ProtoBuf.ProtoMember(10)]
            public int chat_window_width
            {
                get => __pbn__chat_window_width.GetValueOrDefault();
                set => __pbn__chat_window_width = value;
            }
            public bool ShouldSerializechat_window_width() => __pbn__chat_window_width != null;
            public void Resetchat_window_width() => __pbn__chat_window_width = null;
            private int? __pbn__chat_window_width;

            [global::ProtoBuf.ProtoMember(11)]
            public int chat_window_height
            {
                get => __pbn__chat_window_height.GetValueOrDefault();
                set => __pbn__chat_window_height = value;
            }
            public bool ShouldSerializechat_window_height() => __pbn__chat_window_height != null;
            public void Resetchat_window_height() => __pbn__chat_window_height = null;
            private int? __pbn__chat_window_height;

            [global::ProtoBuf.ProtoMember(12)]
            public CategoryCollapseState category_collapse { get; set; }

            [global::ProtoBuf.ProtoMember(13)]
            public int group_chat_left_col_collapsed
            {
                get => __pbn__group_chat_left_col_collapsed.GetValueOrDefault();
                set => __pbn__group_chat_left_col_collapsed = value;
            }
            public bool ShouldSerializegroup_chat_left_col_collapsed() => __pbn__group_chat_left_col_collapsed != null;
            public void Resetgroup_chat_left_col_collapsed() => __pbn__group_chat_left_col_collapsed = null;
            private int? __pbn__group_chat_left_col_collapsed;

            [global::ProtoBuf.ProtoMember(14)]
            public int group_chat_right_col_collapsed
            {
                get => __pbn__group_chat_right_col_collapsed.GetValueOrDefault();
                set => __pbn__group_chat_right_col_collapsed = value;
            }
            public bool ShouldSerializegroup_chat_right_col_collapsed() => __pbn__group_chat_right_col_collapsed != null;
            public void Resetgroup_chat_right_col_collapsed() => __pbn__group_chat_right_col_collapsed = null;
            private int? __pbn__group_chat_right_col_collapsed;

            [global::ProtoBuf.ProtoMember(15)]
            public bool in_one_on_one_voice_chat
            {
                get => __pbn__in_one_on_one_voice_chat.GetValueOrDefault();
                set => __pbn__in_one_on_one_voice_chat = value;
            }
            public bool ShouldSerializein_one_on_one_voice_chat() => __pbn__in_one_on_one_voice_chat != null;
            public void Resetin_one_on_one_voice_chat() => __pbn__in_one_on_one_voice_chat = null;
            private bool? __pbn__in_one_on_one_voice_chat;

            [global::ProtoBuf.ProtoMember(16)]
            public bool in_group_voice_chat
            {
                get => __pbn__in_group_voice_chat.GetValueOrDefault();
                set => __pbn__in_group_voice_chat = value;
            }
            public bool ShouldSerializein_group_voice_chat() => __pbn__in_group_voice_chat != null;
            public void Resetin_group_voice_chat() => __pbn__in_group_voice_chat = null;
            private bool? __pbn__in_group_voice_chat;

            [global::ProtoBuf.ProtoContract()]
            public partial class CategoryCollapseState : 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 in_game_collapsed
                {
                    get => __pbn__in_game_collapsed.GetValueOrDefault();
                    set => __pbn__in_game_collapsed = value;
                }
                public bool ShouldSerializein_game_collapsed() => __pbn__in_game_collapsed != null;
                public void Resetin_game_collapsed() => __pbn__in_game_collapsed = null;
                private bool? __pbn__in_game_collapsed;

                [global::ProtoBuf.ProtoMember(2)]
                public bool online_collapsed
                {
                    get => __pbn__online_collapsed.GetValueOrDefault();
                    set => __pbn__online_collapsed = value;
                }
                public bool ShouldSerializeonline_collapsed() => __pbn__online_collapsed != null;
                public void Resetonline_collapsed() => __pbn__online_collapsed = null;
                private bool? __pbn__online_collapsed;

                [global::ProtoBuf.ProtoMember(3)]
                public bool offline_collapsed
                {
                    get => __pbn__offline_collapsed.GetValueOrDefault();
                    set => __pbn__offline_collapsed = value;
                }
                public bool ShouldSerializeoffline_collapsed() => __pbn__offline_collapsed != null;
                public void Resetoffline_collapsed() => __pbn__offline_collapsed = null;
                private bool? __pbn__offline_collapsed;

                [global::ProtoBuf.ProtoMember(4)]
                public int game_groups_collapsed
                {
                    get => __pbn__game_groups_collapsed.GetValueOrDefault();
                    set => __pbn__game_groups_collapsed = value;
                }
                public bool ShouldSerializegame_groups_collapsed() => __pbn__game_groups_collapsed != null;
                public void Resetgame_groups_collapsed() => __pbn__game_groups_collapsed = null;
                private int? __pbn__game_groups_collapsed;

                [global::ProtoBuf.ProtoMember(5)]
                public int categories_collapsed
                {
                    get => __pbn__categories_collapsed.GetValueOrDefault();
                    set => __pbn__categories_collapsed = value;
                }
                public bool ShouldSerializecategories_collapsed() => __pbn__categories_collapsed != null;
                public void Resetcategories_collapsed() => __pbn__categories_collapsed = null;
                private int? __pbn__categories_collapsed;

            }

        }

        [global::ProtoBuf.ProtoContract()]
        public partial class Metrics : 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 friends_count
            {
                get => __pbn__friends_count.GetValueOrDefault();
                set => __pbn__friends_count = value;
            }
            public bool ShouldSerializefriends_count() => __pbn__friends_count != null;
            public void Resetfriends_count() => __pbn__friends_count = null;
            private int? __pbn__friends_count;

            [global::ProtoBuf.ProtoMember(2)]
            public int friends_category_count
            {
                get => __pbn__friends_category_count.GetValueOrDefault();
                set => __pbn__friends_category_count = value;
            }
            public bool ShouldSerializefriends_category_count() => __pbn__friends_category_count != null;
            public void Resetfriends_category_count() => __pbn__friends_category_count = null;
            private int? __pbn__friends_category_count;

            [global::ProtoBuf.ProtoMember(3)]
            public int friends_categorized_count
            {
                get => __pbn__friends_categorized_count.GetValueOrDefault();
                set => __pbn__friends_categorized_count = value;
            }
            public bool ShouldSerializefriends_categorized_count() => __pbn__friends_categorized_count != null;
            public void Resetfriends_categorized_count() => __pbn__friends_categorized_count = null;
            private int? __pbn__friends_categorized_count;

            [global::ProtoBuf.ProtoMember(4)]
            public int friends_online_count
            {
                get => __pbn__friends_online_count.GetValueOrDefault();
                set => __pbn__friends_online_count = value;
            }
            public bool ShouldSerializefriends_online_count() => __pbn__friends_online_count != null;
            public void Resetfriends_online_count() => __pbn__friends_online_count = null;
            private int? __pbn__friends_online_count;

            [global::ProtoBuf.ProtoMember(5)]
            public int friends_in_game_count
            {
                get => __pbn__friends_in_game_count.GetValueOrDefault();
                set => __pbn__friends_in_game_count = value;
            }
            public bool ShouldSerializefriends_in_game_count() => __pbn__friends_in_game_count != null;
            public void Resetfriends_in_game_count() => __pbn__friends_in_game_count = null;
            private int? __pbn__friends_in_game_count;

            [global::ProtoBuf.ProtoMember(6)]
            public int friends_in_game_singleton_count
            {
                get => __pbn__friends_in_game_singleton_count.GetValueOrDefault();
                set => __pbn__friends_in_game_singleton_count = value;
            }
            public bool ShouldSerializefriends_in_game_singleton_count() => __pbn__friends_in_game_singleton_count != null;
            public void Resetfriends_in_game_singleton_count() => __pbn__friends_in_game_singleton_count = null;
            private int? __pbn__friends_in_game_singleton_count;

            [global::ProtoBuf.ProtoMember(7)]
            public int game_group_count
            {
                get => __pbn__game_group_count.GetValueOrDefault();
                set => __pbn__game_group_count = value;
            }
            public bool ShouldSerializegame_group_count() => __pbn__game_group_count != null;
            public void Resetgame_group_count() => __pbn__game_group_count = null;
            private int? __pbn__game_group_count;

            [global::ProtoBuf.ProtoMember(8)]
            public int friends_favorite_count
            {
                get => __pbn__friends_favorite_count.GetValueOrDefault();
                set => __pbn__friends_favorite_count = value;
            }
            public bool ShouldSerializefriends_favorite_count() => __pbn__friends_favorite_count != null;
            public void Resetfriends_favorite_count() => __pbn__friends_favorite_count = null;
            private int? __pbn__friends_favorite_count;

            [global::ProtoBuf.ProtoMember(9)]
            public int group_chat_count
            {
                get => __pbn__group_chat_count.GetValueOrDefault();
                set => __pbn__group_chat_count = value;
            }
            public bool ShouldSerializegroup_chat_count() => __pbn__group_chat_count != null;
            public void Resetgroup_chat_count() => __pbn__group_chat_count = null;
            private int? __pbn__group_chat_count;

            [global::ProtoBuf.ProtoMember(10)]
            public int group_chat_favorite_count
            {
                get => __pbn__group_chat_favorite_count.GetValueOrDefault();
                set => __pbn__group_chat_favorite_count = value;
            }
            public bool ShouldSerializegroup_chat_favorite_count() => __pbn__group_chat_favorite_count != null;
            public void Resetgroup_chat_favorite_count() => __pbn__group_chat_favorite_count = null;
            private int? __pbn__group_chat_favorite_count;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CChatUsability_RequestClientUsabilityMetrics_Notification : 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 metrics_run_id
        {
            get => __pbn__metrics_run_id.GetValueOrDefault();
            set => __pbn__metrics_run_id = value;
        }
        public bool ShouldSerializemetrics_run_id() => __pbn__metrics_run_id != null;
        public void Resetmetrics_run_id() => __pbn__metrics_run_id = null;
        private uint? __pbn__metrics_run_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public enum EChatRoomJoinState
    {
        k_EChatRoomJoinState_Default = 0,
        k_EChatRoomJoinState_None = 1,
        k_EChatRoomJoinState_Joined = 2,
        k_EChatRoomJoinState_TestInvalid = 99,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum EChatRoomGroupRank
    {
        k_EChatRoomGroupRank_Default = 0,
        k_EChatRoomGroupRank_Viewer = 10,
        k_EChatRoomGroupRank_Guest = 15,
        k_EChatRoomGroupRank_Member = 20,
        k_EChatRoomGroupRank_Moderator = 30,
        k_EChatRoomGroupRank_Officer = 40,
        k_EChatRoomGroupRank_Owner = 50,
        k_EChatRoomGroupRank_TestInvalid = 99,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum EChatRoomNotificationLevel
    {
        k_EChatroomNotificationLevel_Invalid = 0,
        k_EChatroomNotificationLevel_None = 1,
        k_EChatroomNotificationLevel_MentionMe = 2,
        k_EChatroomNotificationLevel_MentionAll = 3,
        k_EChatroomNotificationLevel_AllMessages = 4,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum EChatRoomServerMessage
    {
        k_EChatRoomServerMsg_Invalid = 0,
        k_EChatRoomServerMsg_RenameChatRoom = 1,
        k_EChatRoomServerMsg_Joined = 2,
        k_EChatRoomServerMsg_Parted = 3,
        k_EChatRoomServerMsg_Kicked = 4,
        k_EChatRoomServerMsg_Invited = 5,
        k_EChatRoomServerMsg_InviteDismissed = 8,
        k_EChatRoomServerMsg_ChatRoomTaglineChanged = 9,
        k_EChatRoomServerMsg_ChatRoomAvatarChanged = 10,
        k_EChatRoomServerMsg_AppCustom = 11,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum EChatRoomMemberStateChange
    {
        k_EChatRoomMemberStateChange_Invalid = 0,
        k_EChatRoomMemberStateChange_Joined = 1,
        k_EChatRoomMemberStateChange_Parted = 2,
        k_EChatRoomMemberStateChange_Kicked = 3,
        k_EChatRoomMemberStateChange_Invited = 4,
        k_EChatRoomMemberStateChange_RankChanged = 7,
        k_EChatRoomMemberStateChange_InviteDismissed = 8,
        k_EChatRoomMemberStateChange_Muted = 9,
        k_EChatRoomMemberStateChange_Banned = 10,
        k_EChatRoomMemberStateChange_RolesChanged = 12,
    }

    public interface IChat
    {
        CChat_RequestFriendPersonaStates_Response RequestFriendPersonaStates(CChat_RequestFriendPersonaStates_Request request);
    }

    public interface IChatRoom
    {
        CChatRoom_CreateChatRoomGroup_Response CreateChatRoomGroup(CChatRoom_CreateChatRoomGroup_Request request);
        CChatRoom_SaveChatRoomGroup_Response SaveChatRoomGroup(CChatRoom_SaveChatRoomGroup_Request request);
        CChatRoom_RenameChatRoomGroup_Response RenameChatRoomGroup(CChatRoom_RenameChatRoomGroup_Request request);
        CChatRoom_SetChatRoomGroupTagline_Response SetChatRoomGroupTagline(CChatRoom_SetChatRoomGroupTagline_Request request);
        CChatRoom_SetChatRoomGroupAvatar_Response SetChatRoomGroupAvatar(CChatRoom_SetChatRoomGroupAvatar_Request request);
        CChatRoom_SetChatRoomGroupWatchingBroadcast_Response SetChatRoomGroupWatchingBroadcast(CChatRoom_SetChatRoomGroupWatchingBroadcast_Request request);
        CChatRoom_JoinMiniGameForChatRoomGroup_Response JoinMiniGameForChatRoomGroup(CChatRoom_JoinMiniGameForChatRoomGroup_Request request);
        CChatRoom_EndMiniGameForChatRoomGroup_Response EndMiniGameForChatRoomGroup(CChatRoom_EndMiniGameForChatRoomGroup_Request request);
        CChatRoom_MuteUser_Response MuteUserInGroup(CChatRoom_MuteUser_Request request);
        CChatRoom_KickUser_Response KickUserFromGroup(CChatRoom_KickUser_Request request);
        CChatRoom_SetUserBanState_Response SetUserBanState(CChatRoom_SetUserBanState_Request request);
        CChatRoom_RevokeInvite_Response RevokeInviteToGroup(CChatRoom_RevokeInvite_Request request);
        CChatRoom_CreateRole_Response CreateRole(CChatRoom_CreateRole_Request request);
        CChatRoom_GetRoles_Response GetRoles(CChatRoom_GetRoles_Request request);
        CChatRoom_RenameRole_Response RenameRole(CChatRoom_RenameRole_Request request);
        CChatRoom_ReorderRole_Response ReorderRole(CChatRoom_ReorderRole_Request request);
        CChatRoom_DeleteRole_Response DeleteRole(CChatRoom_DeleteRole_Request request);
        CChatRoom_GetRoleActions_Response GetRoleActions(CChatRoom_GetRoleActions_Request request);
        CChatRoom_ReplaceRoleActions_Response ReplaceRoleActions(CChatRoom_ReplaceRoleActions_Request request);
        CChatRoom_AddRoleToUser_Response AddRoleToUser(CChatRoom_AddRoleToUser_Request request);
        CChatRoom_GetRolesForUser_Response GetRolesForUser(CChatRoom_GetRolesForUser_Request request);
        CChatRoom_DeleteRoleFromUser_Response DeleteRoleFromUser(CChatRoom_DeleteRoleFromUser_Request request);
        CChatRoom_JoinChatRoomGroup_Response JoinChatRoomGroup(CChatRoom_JoinChatRoomGroup_Request request);
        CChatRoom_InviteFriendToChatRoomGroup_Response InviteFriendToChatRoomGroup(CChatRoom_InviteFriendToChatRoomGroup_Request request);
        CChatRoom_LeaveChatRoomGroup_Response LeaveChatRoomGroup(CChatRoom_LeaveChatRoomGroup_Request request);
        CChatRoom_CreateChatRoom_Response CreateChatRoom(CChatRoom_CreateChatRoom_Request request);
        CChatRoom_DeleteChatRoom_Response DeleteChatRoom(CChatRoom_DeleteChatRoom_Request request);
        CChatRoom_RenameChatRoom_Response RenameChatRoom(CChatRoom_RenameChatRoom_Request request);
        CChatRoom_ReorderChatRoom_Response ReorderChatRoom(CChatRoom_ReorderChatRoom_Request request);
        CChatRoom_SendChatMessage_Response SendChatMessage(CChatRoom_SendChatMessage_Request request);
        CChatRoom_JoinVoiceChat_Response JoinVoiceChat(CChatRoom_JoinVoiceChat_Request request);
        CChatRoom_LeaveVoiceChat_Response LeaveVoiceChat(CChatRoom_LeaveVoiceChat_Request request);
        CChatRoom_GetMessageHistory_Response GetMessageHistory(CChatRoom_GetMessageHistory_Request request);
        CChatRoom_GetMyChatRoomGroups_Response GetMyChatRoomGroups(CChatRoom_GetMyChatRoomGroups_Request request);
        CChatRoom_GetChatRoomGroupState_Response GetChatRoomGroupState(CChatRoom_GetChatRoomGroupState_Request request);
        CChatRoom_GetChatRoomGroupSummary_Response GetChatRoomGroupSummary(CChatRoom_GetChatRoomGroupSummary_Request request);
        CChatRoom_SetAppChatRoomGroupForceActive_Response SetAppChatRoomGroupForceActive(CChatRoom_SetAppChatRoomGroupForceActive_Request request);
        NoResponse SetAppChatRoomGroupStopForceActive(CChatRoom_SetAppChatRoomGroupStopForceActive_Notification request);
        NoResponse AckChatMessage(CChatRoom_AckChatMessage_Notification request);
        CChatRoom_CreateInviteLink_Response CreateInviteLink(CChatRoom_CreateInviteLink_Request request);
        CChatRoom_GetInviteLinkInfo_Response GetInviteLinkInfo(CChatRoom_GetInviteLinkInfo_Request request);
        CChatRoom_GetInviteInfo_Response GetInviteInfo(CChatRoom_GetInviteInfo_Request request);
        CChatRoom_GetInviteLinksForGroup_Response GetInviteLinksForGroup(CChatRoom_GetInviteLinksForGroup_Request request);
        CChatRoom_GetBanList_Response GetBanList(CChatRoom_GetBanList_Request request);
        CChatRoom_GetInviteList_Response GetInviteList(CChatRoom_GetInviteList_Request request);
        CChatRoom_DeleteInviteLink_Response DeleteInviteLink(CChatRoom_DeleteInviteLink_Request request);
        CChatRoom_SetSessionActiveChatRoomGroups_Response SetSessionActiveChatRoomGroups(CChatRoom_SetSessionActiveChatRoomGroups_Request request);
        CChatRoom_SetUserChatGroupPreferences_Response SetUserChatGroupPreferences(CChatRoom_SetUserChatGroupPreferences_Request request);
        CChatRoom_DeleteChatMessages_Response DeleteChatMessages(CChatRoom_DeleteChatMessages_Request request);
        NoResponse UpdateMemberListView(CChatRoom_UpdateMemberListView_Notification request);
        CChatRoom_SearchMembers_Response SearchMembers(CChatRoom_SearchMembers_Request request);
    }

    public interface IClanChatRooms
    {
        CClanChatRooms_GetClanChatRoomInfo_Response GetClanChatRoomInfo(CClanChatRooms_GetClanChatRoomInfo_Request request);
        CClanChatRooms_SetClanChatRoomPrivate_Response SetClanChatRoomPrivate(CClanChatRooms_SetClanChatRoomPrivate_Request request);
    }

    public interface IChatRoomClient
    {
        NoResponse NotifyIncomingChatMessage(CChatRoom_IncomingChatMessage_Notification request);
        NoResponse NotifyChatMessageModified(CChatRoom_ChatMessageModified_Notification request);
        NoResponse NotifyMemberStateChange(CChatRoom_MemberStateChange_Notification request);
        NoResponse NotifyChatRoomHeaderStateChange(CChatRoom_ChatRoomHeaderState_Notification request);
        NoResponse NotifyChatRoomGroupRoomsChange(CChatRoom_ChatRoomGroupRoomsChange_Notification request);
        NoResponse NotifyShouldRejoinChatRoomVoiceChat(CChatRoom_NotifyShouldRejoinChatRoomVoiceChat_Notification request);
        NoResponse NotifyChatGroupUserStateChanged(ChatRoomClient_NotifyChatGroupUserStateChanged_Notification request);
        NoResponse NotifyAckChatMessageEcho(CChatRoom_AckChatMessage_Notification request);
        NoResponse NotifyChatRoomDisconnect(ChatRoomClient_NotifyChatRoomDisconnect_Notification request);
        NoResponse NotifyMemberListViewUpdated(CChatRoomClient_MemberListViewUpdated_Notification request);
    }

    public interface IChatUsability
    {
        NoResponse NotifyClientUsabilityMetrics(CChatUsability_ClientUsabilityMetrics_Notification request);
    }

    public interface IChatUsabilityClient
    {
        NoResponse NotifyRequestClientUsabilityMetrics(CChatUsability_RequestClientUsabilityMetrics_Notification request);
    }

}

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