// <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_marketingmessages.steamclient.proto
// </auto-generated>

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

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessages_GetActiveMarketingMessages_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 country
        {
            get => __pbn__country ?? "";
            set => __pbn__country = value;
        }
        public bool ShouldSerializecountry() => __pbn__country != null;
        public void Resetcountry() => __pbn__country = null;
        private string __pbn__country;

        [global::ProtoBuf.ProtoMember(2)]
        public bool anonymous_user
        {
            get => __pbn__anonymous_user.GetValueOrDefault();
            set => __pbn__anonymous_user = value;
        }
        public bool ShouldSerializeanonymous_user() => __pbn__anonymous_user != null;
        public void Resetanonymous_user() => __pbn__anonymous_user = null;
        private bool? __pbn__anonymous_user;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessageProto : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.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 gid
        {
            get => __pbn__gid.GetValueOrDefault();
            set => __pbn__gid = value;
        }
        public bool ShouldSerializegid() => __pbn__gid != null;
        public void Resetgid() => __pbn__gid = null;
        private ulong? __pbn__gid;

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

        [global::ProtoBuf.ProtoMember(3)]
        [global::System.ComponentModel.DefaultValue(EMarketingMessageType.k_EMarketingMessageInvalid)]
        public EMarketingMessageType type
        {
            get => __pbn__type ?? EMarketingMessageType.k_EMarketingMessageInvalid;
            set => __pbn__type = value;
        }
        public bool ShouldSerializetype() => __pbn__type != null;
        public void Resettype() => __pbn__type = null;
        private EMarketingMessageType? __pbn__type;

        [global::ProtoBuf.ProtoMember(4)]
        [global::System.ComponentModel.DefaultValue(EMarketingMessageVisibility.k_EMarketingMessageVisibleBeta)]
        public EMarketingMessageVisibility visibility
        {
            get => __pbn__visibility ?? EMarketingMessageVisibility.k_EMarketingMessageVisibleBeta;
            set => __pbn__visibility = value;
        }
        public bool ShouldSerializevisibility() => __pbn__visibility != null;
        public void Resetvisibility() => __pbn__visibility = null;
        private EMarketingMessageVisibility? __pbn__visibility;

        [global::ProtoBuf.ProtoMember(5)]
        public uint priority
        {
            get => __pbn__priority.GetValueOrDefault();
            set => __pbn__priority = value;
        }
        public bool ShouldSerializepriority() => __pbn__priority != null;
        public void Resetpriority() => __pbn__priority = null;
        private uint? __pbn__priority;

        [global::ProtoBuf.ProtoMember(6)]
        [global::System.ComponentModel.DefaultValue(EMarketingMessageAssociationType.k_EMarketingMessageNoAssociation)]
        public EMarketingMessageAssociationType association_type
        {
            get => __pbn__association_type ?? EMarketingMessageAssociationType.k_EMarketingMessageNoAssociation;
            set => __pbn__association_type = value;
        }
        public bool ShouldSerializeassociation_type() => __pbn__association_type != null;
        public void Resetassociation_type() => __pbn__association_type = null;
        private EMarketingMessageAssociationType? __pbn__association_type;

        [global::ProtoBuf.ProtoMember(7)]
        public uint associated_id
        {
            get => __pbn__associated_id.GetValueOrDefault();
            set => __pbn__associated_id = value;
        }
        public bool ShouldSerializeassociated_id() => __pbn__associated_id != null;
        public void Resetassociated_id() => __pbn__associated_id = null;
        private uint? __pbn__associated_id;

        [global::ProtoBuf.ProtoMember(8)]
        [global::System.ComponentModel.DefaultValue("")]
        public string associated_name
        {
            get => __pbn__associated_name ?? "";
            set => __pbn__associated_name = value;
        }
        public bool ShouldSerializeassociated_name() => __pbn__associated_name != null;
        public void Resetassociated_name() => __pbn__associated_name = null;
        private string __pbn__associated_name;

        [global::ProtoBuf.ProtoMember(9)]
        public uint start_date
        {
            get => __pbn__start_date.GetValueOrDefault();
            set => __pbn__start_date = value;
        }
        public bool ShouldSerializestart_date() => __pbn__start_date != null;
        public void Resetstart_date() => __pbn__start_date = null;
        private uint? __pbn__start_date;

        [global::ProtoBuf.ProtoMember(10)]
        public uint end_date
        {
            get => __pbn__end_date.GetValueOrDefault();
            set => __pbn__end_date = value;
        }
        public bool ShouldSerializeend_date() => __pbn__end_date != null;
        public void Resetend_date() => __pbn__end_date = null;
        private uint? __pbn__end_date;

        [global::ProtoBuf.ProtoMember(11)]
        [global::System.ComponentModel.DefaultValue("")]
        public string country_allow
        {
            get => __pbn__country_allow ?? "";
            set => __pbn__country_allow = value;
        }
        public bool ShouldSerializecountry_allow() => __pbn__country_allow != null;
        public void Resetcountry_allow() => __pbn__country_allow = null;
        private string __pbn__country_allow;

        [global::ProtoBuf.ProtoMember(12)]
        [global::System.ComponentModel.DefaultValue("")]
        public string country_deny
        {
            get => __pbn__country_deny ?? "";
            set => __pbn__country_deny = value;
        }
        public bool ShouldSerializecountry_deny() => __pbn__country_deny != null;
        public void Resetcountry_deny() => __pbn__country_deny = null;
        private string __pbn__country_deny;

        [global::ProtoBuf.ProtoMember(13)]
        public bool ownership_restrictions_overridden
        {
            get => __pbn__ownership_restrictions_overridden.GetValueOrDefault();
            set => __pbn__ownership_restrictions_overridden = value;
        }
        public bool ShouldSerializeownership_restrictions_overridden() => __pbn__ownership_restrictions_overridden != null;
        public void Resetownership_restrictions_overridden() => __pbn__ownership_restrictions_overridden = null;
        private bool? __pbn__ownership_restrictions_overridden;

        [global::ProtoBuf.ProtoMember(14)]
        public uint must_own_appid
        {
            get => __pbn__must_own_appid.GetValueOrDefault();
            set => __pbn__must_own_appid = value;
        }
        public bool ShouldSerializemust_own_appid() => __pbn__must_own_appid != null;
        public void Resetmust_own_appid() => __pbn__must_own_appid = null;
        private uint? __pbn__must_own_appid;

        [global::ProtoBuf.ProtoMember(15)]
        public uint must_not_own_appid
        {
            get => __pbn__must_not_own_appid.GetValueOrDefault();
            set => __pbn__must_not_own_appid = value;
        }
        public bool ShouldSerializemust_not_own_appid() => __pbn__must_not_own_appid != null;
        public void Resetmust_not_own_appid() => __pbn__must_not_own_appid = null;
        private uint? __pbn__must_not_own_appid;

        [global::ProtoBuf.ProtoMember(16)]
        public uint must_own_packageid
        {
            get => __pbn__must_own_packageid.GetValueOrDefault();
            set => __pbn__must_own_packageid = value;
        }
        public bool ShouldSerializemust_own_packageid() => __pbn__must_own_packageid != null;
        public void Resetmust_own_packageid() => __pbn__must_own_packageid = null;
        private uint? __pbn__must_own_packageid;

        [global::ProtoBuf.ProtoMember(17)]
        public uint must_not_own_packageid
        {
            get => __pbn__must_not_own_packageid.GetValueOrDefault();
            set => __pbn__must_not_own_packageid = value;
        }
        public bool ShouldSerializemust_not_own_packageid() => __pbn__must_not_own_packageid != null;
        public void Resetmust_not_own_packageid() => __pbn__must_not_own_packageid = null;
        private uint? __pbn__must_not_own_packageid;

        [global::ProtoBuf.ProtoMember(18)]
        public uint must_have_launched_appid
        {
            get => __pbn__must_have_launched_appid.GetValueOrDefault();
            set => __pbn__must_have_launched_appid = value;
        }
        public bool ShouldSerializemust_have_launched_appid() => __pbn__must_have_launched_appid != null;
        public void Resetmust_have_launched_appid() => __pbn__must_have_launched_appid = null;
        private uint? __pbn__must_have_launched_appid;

        [global::ProtoBuf.ProtoMember(19)]
        [global::System.ComponentModel.DefaultValue("")]
        public string additional_restrictions
        {
            get => __pbn__additional_restrictions ?? "";
            set => __pbn__additional_restrictions = value;
        }
        public bool ShouldSerializeadditional_restrictions() => __pbn__additional_restrictions != null;
        public void Resetadditional_restrictions() => __pbn__additional_restrictions = null;
        private string __pbn__additional_restrictions;

        [global::ProtoBuf.ProtoMember(20)]
        [global::System.ComponentModel.DefaultValue("")]
        public string template_type
        {
            get => __pbn__template_type ?? "";
            set => __pbn__template_type = value;
        }
        public bool ShouldSerializetemplate_type() => __pbn__template_type != null;
        public void Resettemplate_type() => __pbn__template_type = null;
        private string __pbn__template_type;

        [global::ProtoBuf.ProtoMember(21)]
        [global::System.ComponentModel.DefaultValue("")]
        public string template_vars
        {
            get => __pbn__template_vars ?? "";
            set => __pbn__template_vars = value;
        }
        public bool ShouldSerializetemplate_vars() => __pbn__template_vars != null;
        public void Resettemplate_vars() => __pbn__template_vars = null;
        private string __pbn__template_vars;

        [global::ProtoBuf.ProtoMember(22)]
        public uint flags
        {
            get => __pbn__flags.GetValueOrDefault();
            set => __pbn__flags = value;
        }
        public bool ShouldSerializeflags() => __pbn__flags != null;
        public void Resetflags() => __pbn__flags = null;
        private uint? __pbn__flags;

        [global::ProtoBuf.ProtoMember(23)]
        [global::System.ComponentModel.DefaultValue("")]
        public string creator_name
        {
            get => __pbn__creator_name ?? "";
            set => __pbn__creator_name = value;
        }
        public bool ShouldSerializecreator_name() => __pbn__creator_name != null;
        public void Resetcreator_name() => __pbn__creator_name = null;
        private string __pbn__creator_name;

        [global::ProtoBuf.ProtoMember(24)]
        [global::System.ComponentModel.DefaultValue("")]
        public string template_vars_json
        {
            get => __pbn__template_vars_json ?? "";
            set => __pbn__template_vars_json = value;
        }
        public bool ShouldSerializetemplate_vars_json() => __pbn__template_vars_json != null;
        public void Resettemplate_vars_json() => __pbn__template_vars_json = null;
        private string __pbn__template_vars_json;

        [global::ProtoBuf.ProtoMember(25)]
        [global::System.ComponentModel.DefaultValue("")]
        public string additional_restrictions_json
        {
            get => __pbn__additional_restrictions_json ?? "";
            set => __pbn__additional_restrictions_json = value;
        }
        public bool ShouldSerializeadditional_restrictions_json() => __pbn__additional_restrictions_json != null;
        public void Resetadditional_restrictions_json() => __pbn__additional_restrictions_json = null;
        private string __pbn__additional_restrictions_json;

    }

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

        [global::ProtoBuf.ProtoMember(2)]
        public uint time_next_message_age
        {
            get => __pbn__time_next_message_age.GetValueOrDefault();
            set => __pbn__time_next_message_age = value;
        }
        public bool ShouldSerializetime_next_message_age() => __pbn__time_next_message_age != null;
        public void Resettime_next_message_age() => __pbn__time_next_message_age = null;
        private uint? __pbn__time_next_message_age;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessages_GetPastMarketingMessages_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 uint start_past_days
        {
            get => __pbn__start_past_days.GetValueOrDefault();
            set => __pbn__start_past_days = value;
        }
        public bool ShouldSerializestart_past_days() => __pbn__start_past_days != null;
        public void Resetstart_past_days() => __pbn__start_past_days = null;
        private uint? __pbn__start_past_days;

        [global::ProtoBuf.ProtoMember(2)]
        public uint upto_past_days
        {
            get => __pbn__upto_past_days.GetValueOrDefault();
            set => __pbn__upto_past_days = value;
        }
        public bool ShouldSerializeupto_past_days() => __pbn__upto_past_days != null;
        public void Resetupto_past_days() => __pbn__upto_past_days = null;
        private uint? __pbn__upto_past_days;

    }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessages_GetMarketingMessagesForUser_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 bool include_seen_messages
        {
            get => __pbn__include_seen_messages.GetValueOrDefault();
            set => __pbn__include_seen_messages = value;
        }
        public bool ShouldSerializeinclude_seen_messages() => __pbn__include_seen_messages != null;
        public void Resetinclude_seen_messages() => __pbn__include_seen_messages = null;
        private bool? __pbn__include_seen_messages;

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

        [global::ProtoBuf.ProtoMember(3)]
        public int elanguage
        {
            get => __pbn__elanguage.GetValueOrDefault();
            set => __pbn__elanguage = value;
        }
        public bool ShouldSerializeelanguage() => __pbn__elanguage != null;
        public void Resetelanguage() => __pbn__elanguage = null;
        private int? __pbn__elanguage;

        [global::ProtoBuf.ProtoMember(4)]
        public int operating_system
        {
            get => __pbn__operating_system.GetValueOrDefault();
            set => __pbn__operating_system = value;
        }
        public bool ShouldSerializeoperating_system() => __pbn__operating_system != null;
        public void Resetoperating_system() => __pbn__operating_system = null;
        private int? __pbn__operating_system;

        [global::ProtoBuf.ProtoMember(5)]
        public int client_package_version
        {
            get => __pbn__client_package_version.GetValueOrDefault();
            set => __pbn__client_package_version = value;
        }
        public bool ShouldSerializeclient_package_version() => __pbn__client_package_version != null;
        public void Resetclient_package_version() => __pbn__client_package_version = null;
        private int? __pbn__client_package_version;

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

        [global::ProtoBuf.ProtoMember(7)]
        public StoreBrowseItemDataRequest data_request { get; set; }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CDisplayMarketingMessage : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.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 gid
        {
            get => __pbn__gid.GetValueOrDefault();
            set => __pbn__gid = value;
        }
        public bool ShouldSerializegid() => __pbn__gid != null;
        public void Resetgid() => __pbn__gid = null;
        private ulong? __pbn__gid;

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

        [global::ProtoBuf.ProtoMember(3)]
        [global::System.ComponentModel.DefaultValue(EMarketingMessageType.k_EMarketingMessageInvalid)]
        public EMarketingMessageType type
        {
            get => __pbn__type ?? EMarketingMessageType.k_EMarketingMessageInvalid;
            set => __pbn__type = value;
        }
        public bool ShouldSerializetype() => __pbn__type != null;
        public void Resettype() => __pbn__type = null;
        private EMarketingMessageType? __pbn__type;

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

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

        [global::ProtoBuf.ProtoMember(6)]
        [global::System.ComponentModel.DefaultValue("")]
        public string associated_name
        {
            get => __pbn__associated_name ?? "";
            set => __pbn__associated_name = value;
        }
        public bool ShouldSerializeassociated_name() => __pbn__associated_name != null;
        public void Resetassociated_name() => __pbn__associated_name = null;
        private string __pbn__associated_name;

        [global::ProtoBuf.ProtoMember(10)]
        [global::System.ComponentModel.DefaultValue("")]
        public string template_type
        {
            get => __pbn__template_type ?? "";
            set => __pbn__template_type = value;
        }
        public bool ShouldSerializetemplate_type() => __pbn__template_type != null;
        public void Resettemplate_type() => __pbn__template_type = null;
        private string __pbn__template_type;

        [global::ProtoBuf.ProtoMember(11)]
        [global::System.ComponentModel.DefaultValue("")]
        public string template_vars_json
        {
            get => __pbn__template_vars_json ?? "";
            set => __pbn__template_vars_json = value;
        }
        public bool ShouldSerializetemplate_vars_json() => __pbn__template_vars_json != null;
        public void Resettemplate_vars_json() => __pbn__template_vars_json = null;
        private string __pbn__template_vars_json;

    }

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

        [global::ProtoBuf.ProtoContract()]
        public partial class MarketingMessageForUser : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.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 already_seen
            {
                get => __pbn__already_seen.GetValueOrDefault();
                set => __pbn__already_seen = value;
            }
            public bool ShouldSerializealready_seen() => __pbn__already_seen != null;
            public void Resetalready_seen() => __pbn__already_seen = null;
            private bool? __pbn__already_seen;

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

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessages_DoesUserHavePendingMarketingMessages_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(2)]
        [global::System.ComponentModel.DefaultValue("")]
        public string country_code
        {
            get => __pbn__country_code ?? "";
            set => __pbn__country_code = value;
        }
        public bool ShouldSerializecountry_code() => __pbn__country_code != null;
        public void Resetcountry_code() => __pbn__country_code = null;
        private string __pbn__country_code;

        [global::ProtoBuf.ProtoMember(3)]
        public int elanguage
        {
            get => __pbn__elanguage.GetValueOrDefault();
            set => __pbn__elanguage = value;
        }
        public bool ShouldSerializeelanguage() => __pbn__elanguage != null;
        public void Resetelanguage() => __pbn__elanguage = null;
        private int? __pbn__elanguage;

        [global::ProtoBuf.ProtoMember(4)]
        public int operating_system
        {
            get => __pbn__operating_system.GetValueOrDefault();
            set => __pbn__operating_system = value;
        }
        public bool ShouldSerializeoperating_system() => __pbn__operating_system != null;
        public void Resetoperating_system() => __pbn__operating_system = null;
        private int? __pbn__operating_system;

        [global::ProtoBuf.ProtoMember(5)]
        public int client_package_version
        {
            get => __pbn__client_package_version.GetValueOrDefault();
            set => __pbn__client_package_version = value;
        }
        public bool ShouldSerializeclient_package_version() => __pbn__client_package_version != null;
        public void Resetclient_package_version() => __pbn__client_package_version = null;
        private int? __pbn__client_package_version;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessages_DoesUserHavePendingMarketingMessages_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 has_pending_messages
        {
            get => __pbn__has_pending_messages.GetValueOrDefault();
            set => __pbn__has_pending_messages = value;
        }
        public bool ShouldSerializehas_pending_messages() => __pbn__has_pending_messages != null;
        public void Resethas_pending_messages() => __pbn__has_pending_messages = null;
        private bool? __pbn__has_pending_messages;

        [global::ProtoBuf.ProtoMember(2)]
        public int pending_message_count
        {
            get => __pbn__pending_message_count.GetValueOrDefault();
            set => __pbn__pending_message_count = value;
        }
        public bool ShouldSerializepending_message_count() => __pbn__pending_message_count != null;
        public void Resetpending_message_count() => __pbn__pending_message_count = null;
        private int? __pbn__pending_message_count;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessages_GetDisplayMarketingMessage_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 gid
        {
            get => __pbn__gid.GetValueOrDefault();
            set => __pbn__gid = value;
        }
        public bool ShouldSerializegid() => __pbn__gid != null;
        public void Resetgid() => __pbn__gid = null;
        private ulong? __pbn__gid;

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

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

    }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessages_MarkMessageSeen_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, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong gid
        {
            get => __pbn__gid.GetValueOrDefault();
            set => __pbn__gid = value;
        }
        public bool ShouldSerializegid() => __pbn__gid != null;
        public void Resetgid() => __pbn__gid = null;
        private ulong? __pbn__gid;

        [global::ProtoBuf.ProtoMember(2)]
        [global::System.ComponentModel.DefaultValue(0u)]
        public uint display_index
        {
            get => __pbn__display_index ?? 0u;
            set => __pbn__display_index = value;
        }
        public bool ShouldSerializedisplay_index() => __pbn__display_index != null;
        public void Resetdisplay_index() => __pbn__display_index = null;
        private uint? __pbn__display_index;

        [global::ProtoBuf.ProtoMember(3)]
        [global::System.ComponentModel.DefaultValue(EMarketingMessageTemplateType.k_EMarketingMessageTemplate_Unknown)]
        public EMarketingMessageTemplateType template_type
        {
            get => __pbn__template_type ?? EMarketingMessageTemplateType.k_EMarketingMessageTemplate_Unknown;
            set => __pbn__template_type = value;
        }
        public bool ShouldSerializetemplate_type() => __pbn__template_type != null;
        public void Resettemplate_type() => __pbn__template_type = null;
        private EMarketingMessageTemplateType? __pbn__template_type;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessages_GetMarketingMessage_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 gid
        {
            get => __pbn__gid.GetValueOrDefault();
            set => __pbn__gid = value;
        }
        public bool ShouldSerializegid() => __pbn__gid != null;
        public void Resetgid() => __pbn__gid = null;
        private ulong? __pbn__gid;

    }

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

    }

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

        [global::ProtoBuf.ProtoMember(2)]
        public bool from_json
        {
            get => __pbn__from_json.GetValueOrDefault();
            set => __pbn__from_json = value;
        }
        public bool ShouldSerializefrom_json() => __pbn__from_json != null;
        public void Resetfrom_json() => __pbn__from_json = null;
        private bool? __pbn__from_json;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessages_CreateMarketingMessage_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, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong gid
        {
            get => __pbn__gid.GetValueOrDefault();
            set => __pbn__gid = value;
        }
        public bool ShouldSerializegid() => __pbn__gid != null;
        public void Resetgid() => __pbn__gid = null;
        private ulong? __pbn__gid;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessages_UpdateMarketingMessage_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 gid
        {
            get => __pbn__gid.GetValueOrDefault();
            set => __pbn__gid = value;
        }
        public bool ShouldSerializegid() => __pbn__gid != null;
        public void Resetgid() => __pbn__gid = null;
        private ulong? __pbn__gid;

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

        [global::ProtoBuf.ProtoMember(3)]
        public bool from_json
        {
            get => __pbn__from_json.GetValueOrDefault();
            set => __pbn__from_json = value;
        }
        public bool ShouldSerializefrom_json() => __pbn__from_json != null;
        public void Resetfrom_json() => __pbn__from_json = null;
        private bool? __pbn__from_json;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessages_UpdateMarketingMessage_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 CMarketingMessages_DeleteMarketingMessage_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 gid
        {
            get => __pbn__gid.GetValueOrDefault();
            set => __pbn__gid = value;
        }
        public bool ShouldSerializegid() => __pbn__gid != null;
        public void Resetgid() => __pbn__gid = null;
        private ulong? __pbn__gid;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessages_DeleteMarketingMessage_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 CMarketingMessages_FindMarketingMessages_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(EMarketingMessageLookupType.k_EMarketingMessageLookupInvalid)]
        public EMarketingMessageLookupType lookup_type
        {
            get => __pbn__lookup_type ?? EMarketingMessageLookupType.k_EMarketingMessageLookupInvalid;
            set => __pbn__lookup_type = value;
        }
        public bool ShouldSerializelookup_type() => __pbn__lookup_type != null;
        public void Resetlookup_type() => __pbn__lookup_type = null;
        private EMarketingMessageLookupType? __pbn__lookup_type;

        [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong gid
        {
            get => __pbn__gid.GetValueOrDefault();
            set => __pbn__gid = value;
        }
        public bool ShouldSerializegid() => __pbn__gid != null;
        public void Resetgid() => __pbn__gid = null;
        private ulong? __pbn__gid;

        [global::ProtoBuf.ProtoMember(3)]
        [global::System.ComponentModel.DefaultValue(EMarketingMessageType.k_EMarketingMessageInvalid)]
        public EMarketingMessageType message_type
        {
            get => __pbn__message_type ?? EMarketingMessageType.k_EMarketingMessageInvalid;
            set => __pbn__message_type = value;
        }
        public bool ShouldSerializemessage_type() => __pbn__message_type != null;
        public void Resetmessage_type() => __pbn__message_type = null;
        private EMarketingMessageType? __pbn__message_type;

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

        [global::ProtoBuf.ProtoMember(5)]
        [global::System.ComponentModel.DefaultValue("")]
        public string title
        {
            get => __pbn__title ?? "";
            set => __pbn__title = value;
        }
        public bool ShouldSerializetitle() => __pbn__title != null;
        public void Resettitle() => __pbn__title = null;
        private string __pbn__title;

    }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessages_GetMarketingMessageViewerStats_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 gid
        {
            get => __pbn__gid.GetValueOrDefault();
            set => __pbn__gid = value;
        }
        public bool ShouldSerializegid() => __pbn__gid != null;
        public void Resetgid() => __pbn__gid = null;
        private ulong? __pbn__gid;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessageHourlyStats : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.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 rt_time_hour
        {
            get => __pbn__rt_time_hour.GetValueOrDefault();
            set => __pbn__rt_time_hour = value;
        }
        public bool ShouldSerializert_time_hour() => __pbn__rt_time_hour != null;
        public void Resetrt_time_hour() => __pbn__rt_time_hour = null;
        private uint? __pbn__rt_time_hour;

        [global::ProtoBuf.ProtoMember(2)]
        public uint seen_count
        {
            get => __pbn__seen_count.GetValueOrDefault();
            set => __pbn__seen_count = value;
        }
        public bool ShouldSerializeseen_count() => __pbn__seen_count != null;
        public void Resetseen_count() => __pbn__seen_count = null;
        private uint? __pbn__seen_count;

        [global::ProtoBuf.ProtoMember(3)]
        [global::System.ComponentModel.DefaultValue(EMarketingMessageTemplateType.k_EMarketingMessageTemplate_Unknown)]
        public EMarketingMessageTemplateType template_type
        {
            get => __pbn__template_type ?? EMarketingMessageTemplateType.k_EMarketingMessageTemplate_Unknown;
            set => __pbn__template_type = value;
        }
        public bool ShouldSerializetemplate_type() => __pbn__template_type != null;
        public void Resettemplate_type() => __pbn__template_type = null;
        private EMarketingMessageTemplateType? __pbn__template_type;

        [global::ProtoBuf.ProtoMember(4)]
        public uint display_index
        {
            get => __pbn__display_index.GetValueOrDefault();
            set => __pbn__display_index = value;
        }
        public bool ShouldSerializedisplay_index() => __pbn__display_index != null;
        public void Resetdisplay_index() => __pbn__display_index = null;
        private uint? __pbn__display_index;

    }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessages_GetMarketingMessagesViewerRangeStats_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 uint rt_start_time
        {
            get => __pbn__rt_start_time.GetValueOrDefault();
            set => __pbn__rt_start_time = value;
        }
        public bool ShouldSerializert_start_time() => __pbn__rt_start_time != null;
        public void Resetrt_start_time() => __pbn__rt_start_time = null;
        private uint? __pbn__rt_start_time;

        [global::ProtoBuf.ProtoMember(2)]
        public uint rt_end_time
        {
            get => __pbn__rt_end_time.GetValueOrDefault();
            set => __pbn__rt_end_time = value;
        }
        public bool ShouldSerializert_end_time() => __pbn__rt_end_time != null;
        public void Resetrt_end_time() => __pbn__rt_end_time = null;
        private uint? __pbn__rt_end_time;

    }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessages_GetPartnerReadyToPublishMessages_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 uint partnerid
        {
            get => __pbn__partnerid.GetValueOrDefault();
            set => __pbn__partnerid = value;
        }
        public bool ShouldSerializepartnerid() => __pbn__partnerid != null;
        public void Resetpartnerid() => __pbn__partnerid = null;
        private uint? __pbn__partnerid;

    }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessages_PartnerPublishMessage_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 gid
        {
            get => __pbn__gid.GetValueOrDefault();
            set => __pbn__gid = value;
        }
        public bool ShouldSerializegid() => __pbn__gid != null;
        public void Resetgid() => __pbn__gid = null;
        private ulong? __pbn__gid;

        [global::ProtoBuf.ProtoMember(2)]
        public uint partnerid
        {
            get => __pbn__partnerid.GetValueOrDefault();
            set => __pbn__partnerid = value;
        }
        public bool ShouldSerializepartnerid() => __pbn__partnerid != null;
        public void Resetpartnerid() => __pbn__partnerid = null;
        private uint? __pbn__partnerid;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessages_PartnerPublishMessage_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 CMarketingMessages_GetPartnerMessagePreview_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 gid
        {
            get => __pbn__gid.GetValueOrDefault();
            set => __pbn__gid = value;
        }
        public bool ShouldSerializegid() => __pbn__gid != null;
        public void Resetgid() => __pbn__gid = null;
        private ulong? __pbn__gid;

        [global::ProtoBuf.ProtoMember(2)]
        public uint partnerid
        {
            get => __pbn__partnerid.GetValueOrDefault();
            set => __pbn__partnerid = value;
        }
        public bool ShouldSerializepartnerid() => __pbn__partnerid != null;
        public void Resetpartnerid() => __pbn__partnerid = null;
        private uint? __pbn__partnerid;

    }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMarketingMessage_GetMarketingMessagesForPartner_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 uint partnerid
        {
            get => __pbn__partnerid.GetValueOrDefault();
            set => __pbn__partnerid = value;
        }
        public bool ShouldSerializepartnerid() => __pbn__partnerid != null;
        public void Resetpartnerid() => __pbn__partnerid = null;
        private uint? __pbn__partnerid;

    }

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

    }

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

    }

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

    }

    [global::ProtoBuf.ProtoContract()]
    public enum EMarketingMessageType
    {
        k_EMarketingMessageInvalid = 0,
        k_EMarketingMessageNowAvailable = 1,
        k_EMarketingMessageWeekendDeal = 2,
        k_EMarketingMessagePrePurchase = 3,
        k_EMarketingMessagePlayNow = 4,
        k_EMarketingMessagePreloadNow = 5,
        k_EMarketingMessageGeneral = 6,
        k_EMarketingMessageDemoQuit = 7,
        k_EMarketingMessageGifting = 8,
        k_EMarketingMessageEJsKorner = 9,
        k_EMarketingMessageUpdate = 10,
        k_EMarketingMessageMidweekDeal = 11,
        k_EMarketingMessageDailyDeal = 12,
        k_EMarketingMessageNewDLC = 13,
        k_EMarketingMessageFreeWeekend = 14,
        k_EMarketingMessageSalePages = 15,
        k_EMarketingMessagePlaytestAvailable = 16,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum EMarketingMessageVisibility
    {
        k_EMarketingMessageVisibleBeta = 1,
        k_EMarketingMessageVisiblePublic = 2,
        k_EMarketingMessageVisibleApprovedForPublish = 3,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum EMarketingMessageAssociationType
    {
        k_EMarketingMessageNoAssociation = 0,
        k_EMarketingMessageAppAssociation = 1,
        k_EMarketingMessageSubscriptionAssociation = 2,
        k_EMarketingMessagePublisherAssociation = 3,
        k_EMarketingMessageGenreAssociation = 4,
        k_EMarketingMessageBundleAssociation = 5,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum EMarketingMessageTemplateType
    {
        k_EMarketingMessageTemplate_Unknown = 0,
        k_EMarketingMessageTemplate_Image = 1,
        k_EMarketingMessageTemplate_Animated = 2,
        k_EMarketingMessageTemplate_Featured_Video = 3,
        k_EMarketingMessageTemplate_DLC_Override = 4,
        k_EMarketingMessageTemplate_Replay = 5,
        k_EMarketingMessageTemplate_MAX = 6,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum EMarketingMessageLookupType
    {
        k_EMarketingMessageLookupInvalid = 0,
        k_EMarketingMessageLookupByGID = 1,
        k_EMarketingMessageLookupActive = 2,
        k_EMarketingMessageLookupByTitleWithType = 3,
        k_EMarketingMessageLookupByGIDList = 4,
    }

    public class MarketingMessages : SteamUnifiedMessages.UnifiedService
    {
        public override string ServiceName { get; } = "MarketingMessages";

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessages_GetActiveMarketingMessages_Response>> GetActiveMarketingMessages( CMarketingMessages_GetActiveMarketingMessages_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessages_GetActiveMarketingMessages_Request, CMarketingMessages_GetActiveMarketingMessages_Response>( "MarketingMessages.GetActiveMarketingMessages#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessages_GetPastMarketingMessages_Response>> GetPastMarketingMessages( CMarketingMessages_GetPastMarketingMessages_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessages_GetPastMarketingMessages_Request, CMarketingMessages_GetPastMarketingMessages_Response>( "MarketingMessages.GetPastMarketingMessages#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessages_GetMarketingMessagesForUser_Response>> GetMarketingMessagesForUser( CMarketingMessages_GetMarketingMessagesForUser_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessages_GetMarketingMessagesForUser_Request, CMarketingMessages_GetMarketingMessagesForUser_Response>( "MarketingMessages.GetMarketingMessagesForUser#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessages_DoesUserHavePendingMarketingMessages_Response>> DoesUserHavePendingMarketingMessages( CMarketingMessages_DoesUserHavePendingMarketingMessages_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessages_DoesUserHavePendingMarketingMessages_Request, CMarketingMessages_DoesUserHavePendingMarketingMessages_Response>( "MarketingMessages.DoesUserHavePendingMarketingMessages#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessages_GetDisplayMarketingMessage_Response>> GetDisplayMarketingMessage( CMarketingMessages_GetDisplayMarketingMessage_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessages_GetDisplayMarketingMessage_Request, CMarketingMessages_GetDisplayMarketingMessage_Response>( "MarketingMessages.GetDisplayMarketingMessage#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessages_GetDisplayMarketingMessage_Response>> GetDisplayMarketingMessageForUser( CMarketingMessages_GetDisplayMarketingMessage_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessages_GetDisplayMarketingMessage_Request, CMarketingMessages_GetDisplayMarketingMessage_Response>( "MarketingMessages.GetDisplayMarketingMessageForUser#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessages_GetDisplayMarketingMessage_Response>> GetDisplayMarketingMessageAdmin( CMarketingMessages_GetDisplayMarketingMessage_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessages_GetDisplayMarketingMessage_Request, CMarketingMessages_GetDisplayMarketingMessage_Response>( "MarketingMessages.GetDisplayMarketingMessageAdmin#1", request );
        }

        public void MarkMessageSeen(CMarketingMessages_MarkMessageSeen_Notification request )
        {
            UnifiedMessages.SendNotification<CMarketingMessages_MarkMessageSeen_Notification>( "MarketingMessages.MarkMessageSeen#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessages_GetMarketingMessage_Response>> GetMarketingMessage( CMarketingMessages_GetMarketingMessage_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessages_GetMarketingMessage_Request, CMarketingMessages_GetMarketingMessage_Response>( "MarketingMessages.GetMarketingMessage#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessages_CreateMarketingMessage_Response>> CreateMarketingMessage( CMarketingMessages_CreateMarketingMessage_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessages_CreateMarketingMessage_Request, CMarketingMessages_CreateMarketingMessage_Response>( "MarketingMessages.CreateMarketingMessage#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessages_UpdateMarketingMessage_Response>> UpdateMarketingMessage( CMarketingMessages_UpdateMarketingMessage_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessages_UpdateMarketingMessage_Request, CMarketingMessages_UpdateMarketingMessage_Response>( "MarketingMessages.UpdateMarketingMessage#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessages_DeleteMarketingMessage_Response>> DeleteMarketingMessage( CMarketingMessages_DeleteMarketingMessage_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessages_DeleteMarketingMessage_Request, CMarketingMessages_DeleteMarketingMessage_Response>( "MarketingMessages.DeleteMarketingMessage#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessages_FindMarketingMessages_Response>> FindMarketingMessages( CMarketingMessages_FindMarketingMessages_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessages_FindMarketingMessages_Request, CMarketingMessages_FindMarketingMessages_Response>( "MarketingMessages.FindMarketingMessages#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessages_GetMarketingMessageViewerStats_Response>> GetMarketingMessageViewerStats( CMarketingMessages_GetMarketingMessageViewerStats_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessages_GetMarketingMessageViewerStats_Request, CMarketingMessages_GetMarketingMessageViewerStats_Response>( "MarketingMessages.GetMarketingMessageViewerStats#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessages_GetMarketingMessagesViewerRangeStats_Response>> GetMarketingMessagesViewerRangeStats( CMarketingMessages_GetMarketingMessagesViewerRangeStats_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessages_GetMarketingMessagesViewerRangeStats_Request, CMarketingMessages_GetMarketingMessagesViewerRangeStats_Response>( "MarketingMessages.GetMarketingMessagesViewerRangeStats#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessages_GetPartnerReadyToPublishMessages_Response>> GetPartnerReadyToPublishMessages( CMarketingMessages_GetPartnerReadyToPublishMessages_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessages_GetPartnerReadyToPublishMessages_Request, CMarketingMessages_GetPartnerReadyToPublishMessages_Response>( "MarketingMessages.GetPartnerReadyToPublishMessages#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessages_PartnerPublishMessage_Response>> PublishPartnerMessage( CMarketingMessages_PartnerPublishMessage_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessages_PartnerPublishMessage_Request, CMarketingMessages_PartnerPublishMessage_Response>( "MarketingMessages.PublishPartnerMessage#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessages_GetPartnerMessagePreview_Response>> GetPartnerMessagePreview( CMarketingMessages_GetPartnerMessagePreview_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessages_GetPartnerMessagePreview_Request, CMarketingMessages_GetPartnerMessagePreview_Response>( "MarketingMessages.GetPartnerMessagePreview#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessage_GetMarketingMessagesForPartner_Response>> GetMarketingMessagesForPartner( CMarketingMessage_GetMarketingMessagesForPartner_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessage_GetMarketingMessagesForPartner_Request, CMarketingMessage_GetMarketingMessagesForPartner_Response>( "MarketingMessages.GetMarketingMessagesForPartner#1", request );
        }

        public AsyncJob<SteamUnifiedMessages.ServiceMethodResponse<CMarketingMessage_GetMarketingMessagesForApps_Response>> GetMarketingMessagesForApps( CMarketingMessage_GetMarketingMessagesForApps_Request request )
        {
            return UnifiedMessages.SendMessage<CMarketingMessage_GetMarketingMessagesForApps_Request, CMarketingMessage_GetMarketingMessagesForApps_Response>( "MarketingMessages.GetMarketingMessagesForApps#1", request );
        }

        public override void HandleResponseMsg( string methodName, PacketClientMsgProtobuf packetMsg )
        {
            switch ( methodName )
            {
                case "GetActiveMarketingMessages":
                    PostResponseMsg<CMarketingMessages_GetActiveMarketingMessages_Response>( packetMsg );
                    break;
                case "GetPastMarketingMessages":
                    PostResponseMsg<CMarketingMessages_GetPastMarketingMessages_Response>( packetMsg );
                    break;
                case "GetMarketingMessagesForUser":
                    PostResponseMsg<CMarketingMessages_GetMarketingMessagesForUser_Response>( packetMsg );
                    break;
                case "DoesUserHavePendingMarketingMessages":
                    PostResponseMsg<CMarketingMessages_DoesUserHavePendingMarketingMessages_Response>( packetMsg );
                    break;
                case "GetDisplayMarketingMessage":
                    PostResponseMsg<CMarketingMessages_GetDisplayMarketingMessage_Response>( packetMsg );
                    break;
                case "GetDisplayMarketingMessageForUser":
                    PostResponseMsg<CMarketingMessages_GetDisplayMarketingMessage_Response>( packetMsg );
                    break;
                case "GetDisplayMarketingMessageAdmin":
                    PostResponseMsg<CMarketingMessages_GetDisplayMarketingMessage_Response>( packetMsg );
                    break;
                case "GetMarketingMessage":
                    PostResponseMsg<CMarketingMessages_GetMarketingMessage_Response>( packetMsg );
                    break;
                case "CreateMarketingMessage":
                    PostResponseMsg<CMarketingMessages_CreateMarketingMessage_Response>( packetMsg );
                    break;
                case "UpdateMarketingMessage":
                    PostResponseMsg<CMarketingMessages_UpdateMarketingMessage_Response>( packetMsg );
                    break;
                case "DeleteMarketingMessage":
                    PostResponseMsg<CMarketingMessages_DeleteMarketingMessage_Response>( packetMsg );
                    break;
                case "FindMarketingMessages":
                    PostResponseMsg<CMarketingMessages_FindMarketingMessages_Response>( packetMsg );
                    break;
                case "GetMarketingMessageViewerStats":
                    PostResponseMsg<CMarketingMessages_GetMarketingMessageViewerStats_Response>( packetMsg );
                    break;
                case "GetMarketingMessagesViewerRangeStats":
                    PostResponseMsg<CMarketingMessages_GetMarketingMessagesViewerRangeStats_Response>( packetMsg );
                    break;
                case "GetPartnerReadyToPublishMessages":
                    PostResponseMsg<CMarketingMessages_GetPartnerReadyToPublishMessages_Response>( packetMsg );
                    break;
                case "PublishPartnerMessage":
                    PostResponseMsg<CMarketingMessages_PartnerPublishMessage_Response>( packetMsg );
                    break;
                case "GetPartnerMessagePreview":
                    PostResponseMsg<CMarketingMessages_GetPartnerMessagePreview_Response>( packetMsg );
                    break;
                case "GetMarketingMessagesForPartner":
                    PostResponseMsg<CMarketingMessage_GetMarketingMessagesForPartner_Response>( packetMsg );
                    break;
                case "GetMarketingMessagesForApps":
                    PostResponseMsg<CMarketingMessage_GetMarketingMessagesForApps_Response>( packetMsg );
                    break;
            }
        }

        public override void HandleNotificationMsg( string methodName, PacketClientMsgProtobuf packetMsg )
        {
            switch ( methodName )
            {
                case "MarkMessageSeen":
                    PostNotificationMsg<CMarketingMessages_MarkMessageSeen_Notification>( packetMsg );
                    break;
            }
        }
    }

}

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