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

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

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgSOIDOwner : global::ProtoBuf.IExtensible
    {
        private 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 type
        {
            get => __pbn__type.GetValueOrDefault();
            set => __pbn__type = value;
        }
        public bool ShouldSerializetype() => __pbn__type != null;
        public void Resettype() => __pbn__type = null;
        private uint? __pbn__type;

        [global::ProtoBuf.ProtoMember(2)]
        public ulong id
        {
            get => __pbn__id.GetValueOrDefault();
            set => __pbn__id = value;
        }
        public bool ShouldSerializeid() => __pbn__id != null;
        public void Resetid() => __pbn__id = null;
        private ulong? __pbn__id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgSOSingleObject : global::ProtoBuf.IExtensible
    {
        private 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 owner
        {
            get => __pbn__owner.GetValueOrDefault();
            set => __pbn__owner = value;
        }
        public bool ShouldSerializeowner() => __pbn__owner != null;
        public void Resetowner() => __pbn__owner = null;
        private ulong? __pbn__owner;

        [global::ProtoBuf.ProtoMember(2)]
        public int type_id
        {
            get => __pbn__type_id.GetValueOrDefault();
            set => __pbn__type_id = value;
        }
        public bool ShouldSerializetype_id() => __pbn__type_id != null;
        public void Resettype_id() => __pbn__type_id = null;
        private int? __pbn__type_id;

        [global::ProtoBuf.ProtoMember(3)]
        public byte[] object_data
        {
            get => __pbn__object_data;
            set => __pbn__object_data = value;
        }
        public bool ShouldSerializeobject_data() => __pbn__object_data != null;
        public void Resetobject_data() => __pbn__object_data = null;
        private byte[] __pbn__object_data;

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

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

        [global::ProtoBuf.ProtoMember(6)]
        public uint service_id
        {
            get => __pbn__service_id.GetValueOrDefault();
            set => __pbn__service_id = value;
        }
        public bool ShouldSerializeservice_id() => __pbn__service_id != null;
        public void Resetservice_id() => __pbn__service_id = null;
        private uint? __pbn__service_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgSOMultipleObjects : global::ProtoBuf.IExtensible
    {
        private 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 owner
        {
            get => __pbn__owner.GetValueOrDefault();
            set => __pbn__owner = value;
        }
        public bool ShouldSerializeowner() => __pbn__owner != null;
        public void Resetowner() => __pbn__owner = null;
        private ulong? __pbn__owner;

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

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

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

        [global::ProtoBuf.ProtoMember(7)]
        public uint service_id
        {
            get => __pbn__service_id.GetValueOrDefault();
            set => __pbn__service_id = value;
        }
        public bool ShouldSerializeservice_id() => __pbn__service_id != null;
        public void Resetservice_id() => __pbn__service_id = null;
        private uint? __pbn__service_id;

        [global::ProtoBuf.ProtoContract()]
        public partial class SingleObject : global::ProtoBuf.IExtensible
        {
            private 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 type_id
            {
                get => __pbn__type_id.GetValueOrDefault();
                set => __pbn__type_id = value;
            }
            public bool ShouldSerializetype_id() => __pbn__type_id != null;
            public void Resettype_id() => __pbn__type_id = null;
            private int? __pbn__type_id;

            [global::ProtoBuf.ProtoMember(2)]
            public byte[] object_data
            {
                get => __pbn__object_data;
                set => __pbn__object_data = value;
            }
            public bool ShouldSerializeobject_data() => __pbn__object_data != null;
            public void Resetobject_data() => __pbn__object_data = null;
            private byte[] __pbn__object_data;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgSOCacheSubscribed : global::ProtoBuf.IExtensible
    {
        private 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 owner
        {
            get => __pbn__owner.GetValueOrDefault();
            set => __pbn__owner = value;
        }
        public bool ShouldSerializeowner() => __pbn__owner != null;
        public void Resetowner() => __pbn__owner = null;
        private ulong? __pbn__owner;

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

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

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

        [global::ProtoBuf.ProtoMember(5)]
        public uint service_id
        {
            get => __pbn__service_id.GetValueOrDefault();
            set => __pbn__service_id = value;
        }
        public bool ShouldSerializeservice_id() => __pbn__service_id != null;
        public void Resetservice_id() => __pbn__service_id = null;
        private uint? __pbn__service_id;

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

        [global::ProtoBuf.ProtoMember(7, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong sync_version
        {
            get => __pbn__sync_version.GetValueOrDefault();
            set => __pbn__sync_version = value;
        }
        public bool ShouldSerializesync_version() => __pbn__sync_version != null;
        public void Resetsync_version() => __pbn__sync_version = null;
        private ulong? __pbn__sync_version;

        [global::ProtoBuf.ProtoContract()]
        public partial class SubscribedType : global::ProtoBuf.IExtensible
        {
            private 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 type_id
            {
                get => __pbn__type_id.GetValueOrDefault();
                set => __pbn__type_id = value;
            }
            public bool ShouldSerializetype_id() => __pbn__type_id != null;
            public void Resettype_id() => __pbn__type_id = null;
            private int? __pbn__type_id;

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

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgSOCacheSubscribedUpToDate : global::ProtoBuf.IExtensible
    {
        private 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 version
        {
            get => __pbn__version.GetValueOrDefault();
            set => __pbn__version = value;
        }
        public bool ShouldSerializeversion() => __pbn__version != null;
        public void Resetversion() => __pbn__version = null;
        private ulong? __pbn__version;

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

        [global::ProtoBuf.ProtoMember(3)]
        public uint service_id
        {
            get => __pbn__service_id.GetValueOrDefault();
            set => __pbn__service_id = value;
        }
        public bool ShouldSerializeservice_id() => __pbn__service_id != null;
        public void Resetservice_id() => __pbn__service_id = null;
        private uint? __pbn__service_id;

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

        [global::ProtoBuf.ProtoMember(5, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong sync_version
        {
            get => __pbn__sync_version.GetValueOrDefault();
            set => __pbn__sync_version = value;
        }
        public bool ShouldSerializesync_version() => __pbn__sync_version != null;
        public void Resetsync_version() => __pbn__sync_version = null;
        private ulong? __pbn__sync_version;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgSOCacheUnsubscribed : global::ProtoBuf.IExtensible
    {
        private 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 owner
        {
            get => __pbn__owner.GetValueOrDefault();
            set => __pbn__owner = value;
        }
        public bool ShouldSerializeowner() => __pbn__owner != null;
        public void Resetowner() => __pbn__owner = null;
        private ulong? __pbn__owner;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgSOCacheSubscriptionCheck : global::ProtoBuf.IExtensible
    {
        private 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 owner
        {
            get => __pbn__owner.GetValueOrDefault();
            set => __pbn__owner = value;
        }
        public bool ShouldSerializeowner() => __pbn__owner != null;
        public void Resetowner() => __pbn__owner = null;
        private ulong? __pbn__owner;

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

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

        [global::ProtoBuf.ProtoMember(4)]
        public uint service_id
        {
            get => __pbn__service_id.GetValueOrDefault();
            set => __pbn__service_id = value;
        }
        public bool ShouldSerializeservice_id() => __pbn__service_id != null;
        public void Resetservice_id() => __pbn__service_id = null;
        private uint? __pbn__service_id;

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

        [global::ProtoBuf.ProtoMember(6, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong sync_version
        {
            get => __pbn__sync_version.GetValueOrDefault();
            set => __pbn__sync_version = value;
        }
        public bool ShouldSerializesync_version() => __pbn__sync_version != null;
        public void Resetsync_version() => __pbn__sync_version = null;
        private ulong? __pbn__sync_version;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgSOCacheSubscriptionRefresh : global::ProtoBuf.IExtensible
    {
        private 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 owner
        {
            get => __pbn__owner.GetValueOrDefault();
            set => __pbn__owner = value;
        }
        public bool ShouldSerializeowner() => __pbn__owner != null;
        public void Resetowner() => __pbn__owner = null;
        private ulong? __pbn__owner;

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgSOCacheVersion : global::ProtoBuf.IExtensible
    {
        private 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 version
        {
            get => __pbn__version.GetValueOrDefault();
            set => __pbn__version = value;
        }
        public bool ShouldSerializeversion() => __pbn__version != null;
        public void Resetversion() => __pbn__version = null;
        private ulong? __pbn__version;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCMultiplexMessage : global::ProtoBuf.IExtensible
    {
        private 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 msgtype
        {
            get => __pbn__msgtype.GetValueOrDefault();
            set => __pbn__msgtype = value;
        }
        public bool ShouldSerializemsgtype() => __pbn__msgtype != null;
        public void Resetmsgtype() => __pbn__msgtype = null;
        private uint? __pbn__msgtype;

        [global::ProtoBuf.ProtoMember(2)]
        public byte[] payload
        {
            get => __pbn__payload;
            set => __pbn__payload = value;
        }
        public bool ShouldSerializepayload() => __pbn__payload != null;
        public void Resetpayload() => __pbn__payload = null;
        private byte[] __pbn__payload;

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CGCToGCMsgMasterAck : global::ProtoBuf.IExtensible
    {
        private 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 dir_index
        {
            get => __pbn__dir_index.GetValueOrDefault();
            set => __pbn__dir_index = value;
        }
        public bool ShouldSerializedir_index() => __pbn__dir_index != null;
        public void Resetdir_index() => __pbn__dir_index = null;
        private uint? __pbn__dir_index;

        [global::ProtoBuf.ProtoMember(3)]
        [global::System.ComponentModel.DefaultValue("")]
        public string machine_name
        {
            get => __pbn__machine_name ?? "";
            set => __pbn__machine_name = value;
        }
        public bool ShouldSerializemachine_name() => __pbn__machine_name != null;
        public void Resetmachine_name() => __pbn__machine_name = null;
        private string __pbn__machine_name;

        [global::ProtoBuf.ProtoMember(4)]
        [global::System.ComponentModel.DefaultValue("")]
        public string process_name
        {
            get => __pbn__process_name ?? "";
            set => __pbn__process_name = value;
        }
        public bool ShouldSerializeprocess_name() => __pbn__process_name != null;
        public void Resetprocess_name() => __pbn__process_name = null;
        private string __pbn__process_name;

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CGCToGCMsgMasterAck_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(2)]
        public int eresult
        {
            get => __pbn__eresult ?? 2;
            set => __pbn__eresult = value;
        }
        public bool ShouldSerializeeresult() => __pbn__eresult != null;
        public void Reseteresult() => __pbn__eresult = null;
        private int? __pbn__eresult;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CGCToGCMsgMasterStartupComplete : global::ProtoBuf.IExtensible
    {
        private 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<GCInfo> gc_info { get; } = new global::System.Collections.Generic.List<GCInfo>();

        [global::ProtoBuf.ProtoContract()]
        public partial class GCInfo : global::ProtoBuf.IExtensible
        {
            private 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 dir_index
            {
                get => __pbn__dir_index.GetValueOrDefault();
                set => __pbn__dir_index = value;
            }
            public bool ShouldSerializedir_index() => __pbn__dir_index != null;
            public void Resetdir_index() => __pbn__dir_index = null;
            private uint? __pbn__dir_index;

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

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CGCToGCMsgRouted : global::ProtoBuf.IExtensible
    {
        private 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 msg_type
        {
            get => __pbn__msg_type.GetValueOrDefault();
            set => __pbn__msg_type = value;
        }
        public bool ShouldSerializemsg_type() => __pbn__msg_type != null;
        public void Resetmsg_type() => __pbn__msg_type = null;
        private uint? __pbn__msg_type;

        [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong sender_id
        {
            get => __pbn__sender_id.GetValueOrDefault();
            set => __pbn__sender_id = value;
        }
        public bool ShouldSerializesender_id() => __pbn__sender_id != null;
        public void Resetsender_id() => __pbn__sender_id = null;
        private ulong? __pbn__sender_id;

        [global::ProtoBuf.ProtoMember(3)]
        public byte[] net_message
        {
            get => __pbn__net_message;
            set => __pbn__net_message = value;
        }
        public bool ShouldSerializenet_message() => __pbn__net_message != null;
        public void Resetnet_message() => __pbn__net_message = null;
        private byte[] __pbn__net_message;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CGCToGCMsgRoutedReply : global::ProtoBuf.IExtensible
    {
        private 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 msg_type
        {
            get => __pbn__msg_type.GetValueOrDefault();
            set => __pbn__msg_type = value;
        }
        public bool ShouldSerializemsg_type() => __pbn__msg_type != null;
        public void Resetmsg_type() => __pbn__msg_type = null;
        private uint? __pbn__msg_type;

        [global::ProtoBuf.ProtoMember(2)]
        public byte[] net_message
        {
            get => __pbn__net_message;
            set => __pbn__net_message = value;
        }
        public bool ShouldSerializenet_message() => __pbn__net_message != null;
        public void Resetnet_message() => __pbn__net_message = null;
        private byte[] __pbn__net_message;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCUpdateSubGCSessionInfo : global::ProtoBuf.IExtensible
    {
        private 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<CMsgUpdate> updates { get; } = new global::System.Collections.Generic.List<CMsgUpdate>();

        [global::ProtoBuf.ProtoContract()]
        public partial class CMsgUpdate : global::ProtoBuf.IExtensible
        {
            private 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, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
            public uint ip
            {
                get => __pbn__ip.GetValueOrDefault();
                set => __pbn__ip = value;
            }
            public bool ShouldSerializeip() => __pbn__ip != null;
            public void Resetip() => __pbn__ip = null;
            private uint? __pbn__ip;

            [global::ProtoBuf.ProtoMember(3)]
            public bool trusted
            {
                get => __pbn__trusted.GetValueOrDefault();
                set => __pbn__trusted = value;
            }
            public bool ShouldSerializetrusted() => __pbn__trusted != null;
            public void Resettrusted() => __pbn__trusted = null;
            private bool? __pbn__trusted;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCRequestSubGCSessionInfo : global::ProtoBuf.IExtensible
    {
        private 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.ProtoContract()]
    public partial class CMsgGCRequestSubGCSessionInfoResponse : global::ProtoBuf.IExtensible
    {
        private 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 uint ip
        {
            get => __pbn__ip.GetValueOrDefault();
            set => __pbn__ip = value;
        }
        public bool ShouldSerializeip() => __pbn__ip != null;
        public void Resetip() => __pbn__ip = null;
        private uint? __pbn__ip;

        [global::ProtoBuf.ProtoMember(2)]
        public bool trusted
        {
            get => __pbn__trusted.GetValueOrDefault();
            set => __pbn__trusted = value;
        }
        public bool ShouldSerializetrusted() => __pbn__trusted != null;
        public void Resettrusted() => __pbn__trusted = null;
        private bool? __pbn__trusted;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCToGCIncrementRecruitmentLevel : global::ProtoBuf.IExtensible
    {
        private 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.ProtoContract()]
    public partial class CMsgSOCacheHaveVersion : global::ProtoBuf.IExtensible
    {
        private 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 CMsgSOIDOwner soid { get; set; }

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

        [global::ProtoBuf.ProtoMember(3)]
        public uint service_id
        {
            get => __pbn__service_id.GetValueOrDefault();
            set => __pbn__service_id = value;
        }
        public bool ShouldSerializeservice_id() => __pbn__service_id != null;
        public void Resetservice_id() => __pbn__service_id = null;
        private uint? __pbn__service_id;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgConnectionStatus : global::ProtoBuf.IExtensible
    {
        private 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(GCConnectionStatus.GCConnectionStatus_HAVE_SESSION)]
        public GCConnectionStatus status
        {
            get => __pbn__status ?? GCConnectionStatus.GCConnectionStatus_HAVE_SESSION;
            set => __pbn__status = value;
        }
        public bool ShouldSerializestatus() => __pbn__status != null;
        public void Resetstatus() => __pbn__status = null;
        private GCConnectionStatus? __pbn__status;

        [global::ProtoBuf.ProtoMember(2)]
        public uint client_session_need
        {
            get => __pbn__client_session_need.GetValueOrDefault();
            set => __pbn__client_session_need = value;
        }
        public bool ShouldSerializeclient_session_need() => __pbn__client_session_need != null;
        public void Resetclient_session_need() => __pbn__client_session_need = null;
        private uint? __pbn__client_session_need;

        [global::ProtoBuf.ProtoMember(3)]
        public int queue_position
        {
            get => __pbn__queue_position.GetValueOrDefault();
            set => __pbn__queue_position = value;
        }
        public bool ShouldSerializequeue_position() => __pbn__queue_position != null;
        public void Resetqueue_position() => __pbn__queue_position = null;
        private int? __pbn__queue_position;

        [global::ProtoBuf.ProtoMember(4)]
        public int queue_size
        {
            get => __pbn__queue_size.GetValueOrDefault();
            set => __pbn__queue_size = value;
        }
        public bool ShouldSerializequeue_size() => __pbn__queue_size != null;
        public void Resetqueue_size() => __pbn__queue_size = null;
        private int? __pbn__queue_size;

        [global::ProtoBuf.ProtoMember(5)]
        public int wait_seconds
        {
            get => __pbn__wait_seconds.GetValueOrDefault();
            set => __pbn__wait_seconds = value;
        }
        public bool ShouldSerializewait_seconds() => __pbn__wait_seconds != null;
        public void Resetwait_seconds() => __pbn__wait_seconds = null;
        private int? __pbn__wait_seconds;

        [global::ProtoBuf.ProtoMember(6)]
        public int estimated_wait_seconds_remaining
        {
            get => __pbn__estimated_wait_seconds_remaining.GetValueOrDefault();
            set => __pbn__estimated_wait_seconds_remaining = value;
        }
        public bool ShouldSerializeestimated_wait_seconds_remaining() => __pbn__estimated_wait_seconds_remaining != null;
        public void Resetestimated_wait_seconds_remaining() => __pbn__estimated_wait_seconds_remaining = null;
        private int? __pbn__estimated_wait_seconds_remaining;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCToGCSOCacheSubscribe : global::ProtoBuf.IExtensible
    {
        private 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 subscriber
        {
            get => __pbn__subscriber.GetValueOrDefault();
            set => __pbn__subscriber = value;
        }
        public bool ShouldSerializesubscriber() => __pbn__subscriber != null;
        public void Resetsubscriber() => __pbn__subscriber = null;
        private ulong? __pbn__subscriber;

        [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong subscribe_to
        {
            get => __pbn__subscribe_to.GetValueOrDefault();
            set => __pbn__subscribe_to = value;
        }
        public bool ShouldSerializesubscribe_to() => __pbn__subscribe_to != null;
        public void Resetsubscribe_to() => __pbn__subscribe_to = null;
        private ulong? __pbn__subscribe_to;

        [global::ProtoBuf.ProtoMember(3, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong sync_version
        {
            get => __pbn__sync_version.GetValueOrDefault();
            set => __pbn__sync_version = value;
        }
        public bool ShouldSerializesync_version() => __pbn__sync_version != null;
        public void Resetsync_version() => __pbn__sync_version = null;
        private ulong? __pbn__sync_version;

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

        [global::ProtoBuf.ProtoContract()]
        public partial class CMsgHaveVersions : global::ProtoBuf.IExtensible
        {
            private 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 service_id
            {
                get => __pbn__service_id.GetValueOrDefault();
                set => __pbn__service_id = value;
            }
            public bool ShouldSerializeservice_id() => __pbn__service_id != null;
            public void Resetservice_id() => __pbn__service_id = null;
            private uint? __pbn__service_id;

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

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCToGCSOCacheUnsubscribe : global::ProtoBuf.IExtensible
    {
        private 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 subscriber
        {
            get => __pbn__subscriber.GetValueOrDefault();
            set => __pbn__subscriber = value;
        }
        public bool ShouldSerializesubscriber() => __pbn__subscriber != null;
        public void Resetsubscriber() => __pbn__subscriber = null;
        private ulong? __pbn__subscriber;

        [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong unsubscribe_from
        {
            get => __pbn__unsubscribe_from.GetValueOrDefault();
            set => __pbn__unsubscribe_from = value;
        }
        public bool ShouldSerializeunsubscribe_from() => __pbn__unsubscribe_from != null;
        public void Resetunsubscribe_from() => __pbn__unsubscribe_from = null;
        private ulong? __pbn__unsubscribe_from;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgGCClientPing : global::ProtoBuf.IExtensible
    {
        private 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 enum PartnerAccountType
    {
        PARTNER_NONE = 0,
        PARTNER_PERFECT_WORLD = 1,
        PARTNER_NEXON = 2,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum GCConnectionStatus
    {
        GCConnectionStatus_HAVE_SESSION = 0,
        GCConnectionStatus_GC_GOING_DOWN = 1,
        GCConnectionStatus_NO_SESSION = 2,
        GCConnectionStatus_NO_SESSION_IN_LOGON_QUEUE = 3,
        GCConnectionStatus_NO_STEAM = 4,
        GCConnectionStatus_SUSPENDED = 5,
    }

}

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