window.optidigitalToolboxCC="US";var optidigitalSetup = {
    info: {
        publisherId: 72,
        pubUID: "13658a57-7cc0-4f81-8fbc-d7c632af08ee",
        networkId: 43255708,
        siteId: 276,
        configId: 7390,
        revision: 32
    },
    timeouts: {
        prebidDirect: 1500,
        prebidIndirect: 1500,
        failsafe: 34000,
        lazyLoadPxInterval: 300,
    },
    analytics: {
        status: "enabled",
        sampling: 10,
        optiSampling: 10,
        property: 'UA-3409832-42',
        customDimensions: {
            adUnit: 'dimension1',
            loadType: 'dimension2',
            testGroup: 'dimension3'
        },
    },
    prebidConsentManagement: {
        cmpApi: 'iab',
        timeout: 30000,
        allowAuctionWithoutConsent: true,
    },
    prebidPriceGranularity: {
        buckets: [{
            max: 3,
            min: 0,
            increment: 0.01,
            precision: 2
        }, {
            max: 8,
            min: 3,
            increment: 0.05,
            precision: 2
        }, {
            max: 20,
            min: 8,
            increment: 0.5,
            precision: 2
        }]
    },
    defaultDiscount: 0.8,
    adServerCurrency: "EUR",
    enableArticleReporting: true,
    enableSourceReporting: true,
    enableLimitedAds: true,
    sourceDomains: ["www.fmylife.com", "fmylife.com"],
    adSlotsConfig: {
        adManagerKeyName: "adslot",
        widthBreakpoints: [1200, 1024, 768, 0],
        adDeclarations: {
            Margin_1_7em_top_bottom: '{margin-top: 1.70em;margin-bottom: 1.70em;}',
        },
        adSlotsDefinitions: [{
                name: "Billboard_1",
                adDeclaration: 0,
                loadType: 0,
                lazyLoadPx: 900,
                infiniteScroll: 0,
                sizes: {
                    breakpoint_768: [
                        ["fluid"],
                        [1, 1],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1024: [
                        ["fluid"],
                        [1, 1],
                        [700, 250],
                        [728, 90],
                        [800, 250],
                        [970, 250],
                        [970, 90],
                        [1000, 90],
                        [1000, 250]
                    ],
                    breakpoint_1200: [
                        ["fluid"],
                        [1, 1],
                        [700, 250],
                        [728, 90],
                        [800, 250],
                        [970, 250],
                        [970, 90],
                        [1000, 90],
                        [1000, 250]
                    ],
                },
            }, {
                name: "Content_1",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 0,
                lazyLoadPx: 900,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_768: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1024: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1200: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                },
            }, {
                name: "Content_10",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 900,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_768: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1024: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1200: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                },
            }, {
                name: "Content_11",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 900,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_768: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1024: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1200: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                },
            }, {
                name: "Content_2",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 900,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_768: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1024: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1200: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                },
            }, {
                name: "Content_3",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 900,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_768: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1024: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1200: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                },
            }, {
                name: "Content_4",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 900,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_768: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1024: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1200: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                },
            }, {
                name: "Content_5",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 900,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_768: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1024: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1200: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                },
            }, {
                name: "Content_6",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 900,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_768: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1024: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1200: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                },
            }, {
                name: "Content_7",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 900,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_768: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1024: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1200: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                },
            }, {
                name: "Content_8",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 900,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_768: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1024: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1200: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                },
            }, {
                name: "Content_9",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 900,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_768: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1024: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1200: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                },
            }, {
                name: "Content_Bottom",
                adDeclaration: 0,
                loadType: 1,
                lazyLoadPx: 900,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_768: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1024: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                    breakpoint_1200: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [250, 250],
                        [700, 250],
                        [728, 90]
                    ],
                },
            }, {
                name: "Desktop_Sticky_Bottom",
                adDeclaration: 0,
                loadType: 5,
                lazyLoadPx: 600,
                infiniteScroll: 0,
                sizes: {
                    breakpoint_768: [
                        [728, 90]
                    ],
                    breakpoint_1024: [
                        [728, 90],
                        [970, 90],
                        [1000, 90]
                    ],
                    breakpoint_1200: [
                        [728, 90],
                        [970, 90],
                        [1000, 90]
                    ],
                },
            }, {
                name: "HalfpageAd_1",
                adDeclaration: 0,
                loadType: 1,
                lazyLoadPx: 900,
                infiniteScroll: 0,
                sizes: {
                    breakpoint_768: [
                        ["fluid"],
                        [1, 1],
                        [300, 600],
                        [300, 250],
                        [160, 600],
                        [120, 600],
                        [250, 250]
                    ],
                    breakpoint_1024: [
                        ["fluid"],
                        [1, 1],
                        [300, 600],
                        [300, 250],
                        [160, 600],
                        [120, 600],
                        [250, 250]
                    ],
                    breakpoint_1200: [
                        ["fluid"],
                        [1, 1],
                        [300, 600],
                        [300, 250],
                        [160, 600],
                        [120, 600],
                        [250, 250]
                    ],
                },
            }, {
                name: "HalfpageAd_2",
                adDeclaration: 0,
                loadType: 1,
                lazyLoadPx: 900,
                infiniteScroll: 0,
                sizes: {
                    breakpoint_768: [
                        ["fluid"],
                        [1, 1],
                        [300, 600],
                        [300, 250],
                        [160, 600],
                        [120, 600],
                        [250, 250]
                    ],
                    breakpoint_1024: [
                        ["fluid"],
                        [1, 1],
                        [300, 600],
                        [300, 250],
                        [160, 600],
                        [120, 600],
                        [250, 250]
                    ],
                    breakpoint_1200: [
                        ["fluid"],
                        [1, 1],
                        [300, 600],
                        [300, 250],
                        [160, 600],
                        [120, 600],
                        [250, 250]
                    ],
                },
            }, {
                name: "Mobile_Bottom",
                adDeclaration: 0,
                loadType: 1,
                lazyLoadPx: 600,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_0: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [320, 160],
                        [320, 100],
                        [320, 80],
                        [320, 50],
                        [250, 250]
                    ],
                },
            }, {
                name: "Mobile_Interstitial",
                adDeclaration: 0,
                loadType: 6,
                lazyLoadPx: 600,
                infiniteScroll: 0,
                sizes: {
                    breakpoint_0: [
                        [320, 480],
                        [300, 250],
                        [336, 280],
                        [1, 1]
                    ],
                },
            }, {
                name: "Mobile_Pos1",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 0,
                lazyLoadPx: 600,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_0: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [320, 160],
                        [320, 100],
                        [320, 80],
                        [320, 50],
                        [250, 250]
                    ],
                },
            }, {
                name: "Mobile_Pos10",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 600,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_0: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [320, 160],
                        [320, 100],
                        [320, 80],
                        [320, 50],
                        [250, 250],
                        [300, 600],
                        [160, 600],
                        [120, 600]
                    ],
                },
            }, {
                name: "Mobile_Pos11",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 600,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_0: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [320, 160],
                        [320, 100],
                        [320, 80],
                        [320, 50],
                        [250, 250],
                        [300, 600],
                        [160, 600],
                        [120, 600]
                    ],
                },
            }, {
                name: "Mobile_Pos2",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 100,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_0: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [320, 160],
                        [320, 100],
                        [320, 80],
                        [320, 50],
                        [250, 250],
                        [300, 600],
                        [160, 600],
                        [120, 600]
                    ],
                },
            }, {
                name: "Mobile_Pos3",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 200,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_0: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [320, 160],
                        [320, 100],
                        [320, 80],
                        [320, 50],
                        [250, 250],
                        [300, 600],
                        [120, 600],
                        [160, 600]
                    ],
                },
            }, {
                name: "Mobile_Pos4",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 600,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_0: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [320, 160],
                        [320, 100],
                        [320, 80],
                        [320, 50],
                        [250, 250],
                        [300, 600],
                        [160, 600],
                        [120, 600]
                    ],
                },
            }, {
                name: "Mobile_Pos5",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 600,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_0: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [320, 160],
                        [320, 100],
                        [320, 80],
                        [320, 50],
                        [250, 250],
                        [300, 600],
                        [120, 600],
                        [160, 600]
                    ],
                },
            }, {
                name: "Mobile_Pos6",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 600,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_0: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [320, 160],
                        [320, 100],
                        [320, 80],
                        [320, 50],
                        [250, 250],
                        [300, 600],
                        [160, 600],
                        [120, 600]
                    ],
                },
            }, {
                name: "Mobile_Pos7",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 600,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_0: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [320, 160],
                        [320, 100],
                        [320, 80],
                        [320, 50],
                        [250, 250],
                        [300, 600],
                        [160, 600],
                        [120, 600]
                    ],
                },
            }, {
                name: "Mobile_Pos8",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 600,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_0: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [320, 160],
                        [320, 100],
                        [320, 80],
                        [320, 50],
                        [250, 250],
                        [300, 600],
                        [160, 600],
                        [120, 600]
                    ],
                },
            }, {
                name: "Mobile_Pos9",
                adDeclaration: 'Margin_1_7em_top_bottom',
                loadType: 1,
                lazyLoadPx: 600,
                infiniteScroll: 1,
                sizes: {
                    breakpoint_0: [
                        ["fluid"],
                        [1, 1],
                        [336, 280],
                        [300, 250],
                        [320, 160],
                        [320, 100],
                        [320, 80],
                        [320, 50],
                        [250, 250],
                        [300, 600],
                        [160, 600],
                        [120, 600]
                    ],
                },
            }, {
                name: "Mobile_Sticky_Bottom",
                adDeclaration: 0,
                loadType: 5,
                lazyLoadPx: 600,
                infiniteScroll: 0,
                sizes: {
                    breakpoint_0: [
                        [320, 50],
                        [320, 80]
                    ],
                },
            },

        ]
    },
    aliasBidders: {
        appnexus: ['xandr'],
        richaudience: ['richaudience'],
        smartadserver: ['smart']
    },
    advertisers: {
        adx: [4911688292],
        prebid: [4913314257, 4913314755],
        amazon: [4922745572]
    },
    bidders: ['adagio', 'adyoulike', 'amazon', 'criteo', 'improvedigital', 'onetag', 'pubmatic', 'richaudience', 'seedtag', 'smart', 'teads', 'triplelift', 'xandr'],
    biddersLI: ['outbrain'],
    biddersAA: ['optidigital'],
    prebidSafeframe: {
        status: 'enabled',
        bidders: ['adagio', 'adyoulike', 'criteo', 'improvedigital', 'onetag', 'optidigital', 'outbrain', 'pubmatic', 'richaudience', 'seedtag', 'smart', 'xandr'],
    },
    biddersSetup: {
        adagio: {
            discount: 0.80,
            adSlots: {
                Billboard_1: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_atf",
                    adUnitElementId: "optidigital-adslot-Billboard_1"
                },
                Content_1: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_atf",
                    adUnitElementId: "optidigital-adslot-Content_1"
                },
                Content_10: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Content_10"
                },
                Content_11: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Content_11"
                },
                Content_2: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Content_2"
                },
                Content_3: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Content_3"
                },
                Content_4: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Content_4"
                },
                Content_5: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Content_5"
                },
                Content_6: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Content_6"
                },
                Content_7: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Content_7"
                },
                Content_8: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Content_8"
                },
                Content_9: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Content_9"
                },
                Content_Bottom: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_btf",
                    adUnitElementId: "optidigital-adslot-Content_Bottom"
                },
                Desktop_Sticky_Bottom: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_atf",
                    adUnitElementId: "optidigital-adslot-Desktop_Sticky_Bottom"
                },
                HalfpageAd_1: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_atf",
                    adUnitElementId: "optidigital-adslot-HalfpageAd_1"
                },
                HalfpageAd_2: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-HalfpageAd_2"
                },
                Mobile_Bottom: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_btf",
                    adUnitElementId: "optidigital-adslot-Mobile_Bottom"
                },
                Mobile_Pos1: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_atf",
                    adUnitElementId: "optidigital-adslot-Mobile_Pos1"
                },
                Mobile_Pos10: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Mobile_Pos10"
                },
                Mobile_Pos11: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Mobile_Pos11"
                },
                Mobile_Pos2: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Mobile_Pos2"
                },
                Mobile_Pos3: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Mobile_Pos3"
                },
                Mobile_Pos4: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Mobile_Pos4"
                },
                Mobile_Pos5: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Mobile_Pos5"
                },
                Mobile_Pos6: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Mobile_Pos6"
                },
                Mobile_Pos7: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Mobile_Pos7"
                },
                Mobile_Pos8: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Mobile_Pos8"
                },
                Mobile_Pos9: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_mtf",
                    adUnitElementId: "optidigital-adslot-Mobile_Pos9"
                },
                Mobile_Sticky_Bottom: {
                    organizationId: "1167",
                    site: "fmylife-com",
                    placement: "banner_atf",
                    adUnitElementId: "optidigital-adslot-Mobile_Sticky_Bottom"
                },
            }
        },
        adyoulike: {
            discount: 0.95,
            adSlots: {
                Billboard_1: {
                    placement: "8bdd2a0cca290a78bbd2d34c2b5ba8fd"
                },
                Content_1: {
                    placement: "7d2e4b668ece06ddde28106f071d8a4c"
                },
                Content_10: {
                    placement: "7d2e4b668ece06ddde28106f071d8a4c"
                },
                Content_11: {
                    placement: "7d2e4b668ece06ddde28106f071d8a4c"
                },
                Content_2: {
                    placement: "7d2e4b668ece06ddde28106f071d8a4c"
                },
                Content_3: {
                    placement: "7d2e4b668ece06ddde28106f071d8a4c"
                },
                Content_4: {
                    placement: "7d2e4b668ece06ddde28106f071d8a4c"
                },
                Content_5: {
                    placement: "7d2e4b668ece06ddde28106f071d8a4c"
                },
                Content_6: {
                    placement: "7d2e4b668ece06ddde28106f071d8a4c"
                },
                Content_7: {
                    placement: "7d2e4b668ece06ddde28106f071d8a4c"
                },
                Content_8: {
                    placement: "7d2e4b668ece06ddde28106f071d8a4c"
                },
                Content_9: {
                    placement: "7d2e4b668ece06ddde28106f071d8a4c"
                },
                Content_Bottom: {
                    placement: "15427bdcd8f4138a615bb67b370648e3"
                },
                Desktop_Sticky_Bottom: {
                    placement: "9ab163ff3d6440665b240809ff935ce9"
                },
                HalfpageAd_1: {
                    placement: "3a68dc134c77caca6c57f85c81c5ed58"
                },
                HalfpageAd_2: {
                    placement: "3a68dc134c77caca6c57f85c81c5ed58"
                },
                Mobile_Bottom: {
                    placement: "2b2af2e33af913bdfa5b52a1530804db"
                },
                Mobile_Pos1: {
                    placement: "b271d8b7b121832df270871275c46709"
                },
                Mobile_Pos10: {
                    placement: "b271d8b7b121832df270871275c46709"
                },
                Mobile_Pos11: {
                    placement: "b271d8b7b121832df270871275c46709"
                },
                Mobile_Pos2: {
                    placement: "b271d8b7b121832df270871275c46709"
                },
                Mobile_Pos3: {
                    placement: "b271d8b7b121832df270871275c46709"
                },
                Mobile_Pos4: {
                    placement: "b271d8b7b121832df270871275c46709"
                },
                Mobile_Pos5: {
                    placement: "b271d8b7b121832df270871275c46709"
                },
                Mobile_Pos6: {
                    placement: "b271d8b7b121832df270871275c46709"
                },
                Mobile_Pos7: {
                    placement: "b271d8b7b121832df270871275c46709"
                },
                Mobile_Pos8: {
                    placement: "b271d8b7b121832df270871275c46709"
                },
                Mobile_Pos9: {
                    placement: "b271d8b7b121832df270871275c46709"
                },
                Mobile_Sticky_Bottom: {
                    placement: "e9b71c83aa7ce7aee033149afbfdb01f"
                },
            }
        },
        amazon: {
            discount: 0.95,
            status: 1,
            pubID: '02baacae-0cfc-4942-8fc1-8f85c19e7b49',
            timeout: 1000,
            cmpTimeout: 30000,
            adSlots: {
                Billboard_1: 1,
                Content_1: 1,
                Content_10: 1,
                Content_11: 1,
                Content_2: 1,
                Content_3: 1,
                Content_4: 1,
                Content_5: 1,
                Content_6: 1,
                Content_7: 1,
                Content_8: 1,
                Content_9: 1,
                Content_Bottom: 1,
                Desktop_Sticky_Bottom: 1,
                HalfpageAd_1: 1,
                HalfpageAd_2: 1,
                Mobile_Bottom: 1,
                Mobile_Pos1: 1,
                Mobile_Pos10: 1,
                Mobile_Pos11: 1,
                Mobile_Pos2: 1,
                Mobile_Pos3: 1,
                Mobile_Pos4: 1,
                Mobile_Pos5: 1,
                Mobile_Pos6: 1,
                Mobile_Pos7: 1,
                Mobile_Pos8: 1,
                Mobile_Pos9: 1,
                Mobile_Sticky_Bottom: 1,
            }
        },
        criteo: {
            discount: 0.95,
            adSlots: {
                Billboard_1: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Content_1: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Content_10: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Content_11: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Content_2: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Content_3: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Content_4: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Content_5: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Content_6: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Content_7: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Content_8: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Content_9: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Content_Bottom: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Desktop_Sticky_Bottom: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                HalfpageAd_1: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                HalfpageAd_2: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Mobile_Bottom: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Mobile_Pos1: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Mobile_Pos10: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Mobile_Pos11: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Mobile_Pos2: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Mobile_Pos3: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Mobile_Pos4: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Mobile_Pos5: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Mobile_Pos6: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Mobile_Pos7: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Mobile_Pos8: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Mobile_Pos9: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
                Mobile_Sticky_Bottom: {
                    networkId: 8713,
                    publisherSubId: "fmylife"
                },
            }
        },
        improvedigital: {
            discount: 0.80,
            adSlots: {
                Billboard_1: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Content_1: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Content_10: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Content_11: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Content_2: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Content_3: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Content_4: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Content_5: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Content_6: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Content_7: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Content_8: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Content_9: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Content_Bottom: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Desktop_Sticky_Bottom: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                HalfpageAd_1: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                HalfpageAd_2: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Mobile_Bottom: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Mobile_Pos1: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Mobile_Pos10: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Mobile_Pos11: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Mobile_Pos2: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Mobile_Pos3: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Mobile_Pos4: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Mobile_Pos5: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Mobile_Pos6: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Mobile_Pos7: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Mobile_Pos8: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Mobile_Pos9: {
                    publisherId: 1469,
                    placementId: 23018021
                },
                Mobile_Sticky_Bottom: {
                    publisherId: 1469,
                    placementId: 23018021
                },
            }
        },
        onetag: {
            discount: 0.90,
            adSlots: {
                Billboard_1: {
                    pubId: "806eabb849d0326"
                },
                Content_1: {
                    pubId: "806eabb849d0326"
                },
                Content_10: {
                    pubId: "806eabb849d0326"
                },
                Content_11: {
                    pubId: "806eabb849d0326"
                },
                Content_2: {
                    pubId: "806eabb849d0326"
                },
                Content_3: {
                    pubId: "806eabb849d0326"
                },
                Content_4: {
                    pubId: "806eabb849d0326"
                },
                Content_5: {
                    pubId: "806eabb849d0326"
                },
                Content_6: {
                    pubId: "806eabb849d0326"
                },
                Content_7: {
                    pubId: "806eabb849d0326"
                },
                Content_8: {
                    pubId: "806eabb849d0326"
                },
                Content_9: {
                    pubId: "806eabb849d0326"
                },
                Content_Bottom: {
                    pubId: "806eabb849d0326"
                },
                Desktop_Sticky_Bottom: {
                    pubId: "806eabb849d0326"
                },
                HalfpageAd_1: {
                    pubId: "806eabb849d0326"
                },
                HalfpageAd_2: {
                    pubId: "806eabb849d0326"
                },
                Mobile_Bottom: {
                    pubId: "806eabb849d0326"
                },
                Mobile_Pos1: {
                    pubId: "806eabb849d0326"
                },
                Mobile_Pos10: {
                    pubId: "806eabb849d0326"
                },
                Mobile_Pos11: {
                    pubId: "806eabb849d0326"
                },
                Mobile_Pos2: {
                    pubId: "806eabb849d0326"
                },
                Mobile_Pos3: {
                    pubId: "806eabb849d0326"
                },
                Mobile_Pos4: {
                    pubId: "806eabb849d0326"
                },
                Mobile_Pos5: {
                    pubId: "806eabb849d0326"
                },
                Mobile_Pos6: {
                    pubId: "806eabb849d0326"
                },
                Mobile_Pos7: {
                    pubId: "806eabb849d0326"
                },
                Mobile_Pos8: {
                    pubId: "806eabb849d0326"
                },
                Mobile_Pos9: {
                    pubId: "806eabb849d0326"
                },
                Mobile_Sticky_Bottom: {
                    pubId: "806eabb849d0326"
                },
            }
        },
        optidigital: {
            discount: 0.99,
            adSlots: {
                Billboard_1: {
                    status: "1"
                },
                Content_1: {
                    status: "1"
                },
                Content_10: {
                    status: "1"
                },
                Content_11: {
                    status: "1"
                },
                Content_2: {
                    status: "1"
                },
                Content_3: {
                    status: "1"
                },
                Content_4: {
                    status: "1"
                },
                Content_5: {
                    status: "1"
                },
                Content_6: {
                    status: "1"
                },
                Content_7: {
                    status: "1"
                },
                Content_8: {
                    status: "1"
                },
                Content_9: {
                    status: "1"
                },
                Content_Bottom: {
                    status: "1"
                },
                Desktop_Sticky_Bottom: {
                    status: "1"
                },
                HalfpageAd_1: {
                    status: "1"
                },
                HalfpageAd_2: {
                    status: "1"
                },
                Mobile_Bottom: {
                    status: "1"
                },
                Mobile_Pos1: {
                    status: "1"
                },
                Mobile_Pos10: {
                    status: "1"
                },
                Mobile_Pos11: {
                    status: "1"
                },
                Mobile_Pos2: {
                    status: "1"
                },
                Mobile_Pos3: {
                    status: "1"
                },
                Mobile_Pos4: {
                    status: "1"
                },
                Mobile_Pos5: {
                    status: "1"
                },
                Mobile_Pos6: {
                    status: "1"
                },
                Mobile_Pos7: {
                    status: "1"
                },
                Mobile_Pos8: {
                    status: "1"
                },
                Mobile_Pos9: {
                    status: "1"
                },
                Mobile_Sticky_Bottom: {
                    status: "1"
                },
            }
        },
        outbrain: {
            discount: 0.99,
            adSlots: {
                Billboard_1: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Content_1: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Content_10: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Content_11: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Content_2: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Content_3: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Content_4: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Content_5: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Content_6: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Content_7: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Content_8: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Content_9: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Content_Bottom: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Desktop_Sticky_Bottom: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                HalfpageAd_1: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                HalfpageAd_2: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Mobile_Bottom: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Mobile_Pos1: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Mobile_Pos10: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Mobile_Pos11: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Mobile_Pos2: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Mobile_Pos3: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Mobile_Pos4: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Mobile_Pos5: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Mobile_Pos6: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Mobile_Pos7: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Mobile_Pos8: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Mobile_Pos9: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
                Mobile_Sticky_Bottom: {
                    publisherId: "007d898d461a82259b86ba2c6d1bf8733c"
                },
            }
        },
        pubmatic: {
            discount: 0.95,
            adSlots: {
                Billboard_1: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026547"
                },
                Content_1: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026559"
                },
                Content_10: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026568"
                },
                Content_11: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026568"
                },
                Content_2: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026560"
                },
                Content_3: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026561"
                },
                Content_4: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026562"
                },
                Content_5: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026563"
                },
                Content_6: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026564"
                },
                Content_7: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026565"
                },
                Content_8: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026566"
                },
                Content_9: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026567"
                },
                Content_Bottom: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026569"
                },
                Desktop_Sticky_Bottom: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026571"
                },
                HalfpageAd_1: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026550"
                },
                HalfpageAd_2: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026551"
                },
                Mobile_Bottom: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026582"
                },
                Mobile_Pos1: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026572"
                },
                Mobile_Pos10: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026581"
                },
                Mobile_Pos11: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026581"
                },
                Mobile_Pos2: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026573"
                },
                Mobile_Pos3: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026574"
                },
                Mobile_Pos4: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026575"
                },
                Mobile_Pos5: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026576"
                },
                Mobile_Pos6: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026577"
                },
                Mobile_Pos7: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026578"
                },
                Mobile_Pos8: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026579"
                },
                Mobile_Pos9: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026580"
                },
                Mobile_Sticky_Bottom: {
                    publisherId: "158939",
                    currency: "EUR",
                    adSlot: "5026584"
                },
            }
        },
        richaudience: {
            discount: 0.95,
            adSlots: {
                Billboard_1: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_BX"
                },
                Content_1: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_CX"
                },
                Content_10: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_CX"
                },
                Content_11: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_CX"
                },
                Content_2: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_CX"
                },
                Content_3: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_CX"
                },
                Content_4: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_CX"
                },
                Content_5: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_CX"
                },
                Content_6: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_CX"
                },
                Content_7: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_CX"
                },
                Content_8: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_CX"
                },
                Content_9: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_CX"
                },
                Content_Bottom: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_CX"
                },
                Desktop_Sticky_Bottom: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_DSB"
                },
                HalfpageAd_1: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_HX"
                },
                HalfpageAd_2: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_HX"
                },
                Mobile_Bottom: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_MPX"
                },
                Mobile_Pos1: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_MPX"
                },
                Mobile_Pos10: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_MPX"
                },
                Mobile_Pos11: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_MPX"
                },
                Mobile_Pos2: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_MPX"
                },
                Mobile_Pos3: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_MPX"
                },
                Mobile_Pos4: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_MPX"
                },
                Mobile_Pos5: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_MPX"
                },
                Mobile_Pos6: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_MPX"
                },
                Mobile_Pos7: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_MPX"
                },
                Mobile_Pos8: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_MPX"
                },
                Mobile_Pos9: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_MPX"
                },
                Mobile_Sticky_Bottom: {
                    supplyType: "site",
                    pid: "MP_ycI2XCpOgT_MSB"
                },
            }
        },
        seedtag: {
            discount: 0.80,
            adSlots: {
                Billboard_1: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453526",
                    placement: "inArticle"
                },
                Content_1: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453528",
                    placement: "inArticle"
                },
                Content_10: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453528",
                    placement: "inArticle"
                },
                Content_11: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453528",
                    placement: "inArticle"
                },
                Content_2: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453528",
                    placement: "inArticle"
                },
                Content_3: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453528",
                    placement: "inArticle"
                },
                Content_4: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453528",
                    placement: "inArticle"
                },
                Content_5: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453528",
                    placement: "inArticle"
                },
                Content_6: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453528",
                    placement: "inArticle"
                },
                Content_7: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453528",
                    placement: "inArticle"
                },
                Content_8: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453528",
                    placement: "inArticle"
                },
                Content_9: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453528",
                    placement: "inArticle"
                },
                Content_Bottom: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453529",
                    placement: "inArticle"
                },
                HalfpageAd_1: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453527",
                    placement: "inArticle"
                },
                HalfpageAd_2: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453527",
                    placement: "inArticle"
                },
                Mobile_Bottom: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453533",
                    placement: "inArticle"
                },
                Mobile_Pos1: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453532",
                    placement: "inArticle"
                },
                Mobile_Pos10: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453532",
                    placement: "inArticle"
                },
                Mobile_Pos11: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453532",
                    placement: "inArticle"
                },
                Mobile_Pos2: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453532",
                    placement: "inArticle"
                },
                Mobile_Pos3: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453532",
                    placement: "inArticle"
                },
                Mobile_Pos4: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453532",
                    placement: "inArticle"
                },
                Mobile_Pos5: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453532",
                    placement: "inArticle"
                },
                Mobile_Pos6: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453532",
                    placement: "inArticle"
                },
                Mobile_Pos7: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453532",
                    placement: "inArticle"
                },
                Mobile_Pos8: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453532",
                    placement: "inArticle"
                },
                Mobile_Pos9: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453532",
                    placement: "inArticle"
                },
                Mobile_Sticky_Bottom: {
                    publisherId: "0416-7458-01",
                    adUnitId: "27453525",
                    placement: "inScreen"
                },
            }
        },
        smart: {
            discount: 0.92,
            adSlots: {
                Billboard_1: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79366
                },
                Content_1: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79369
                },
                Content_10: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 104224
                },
                Content_11: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 104225
                },
                Content_2: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79370
                },
                Content_3: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79371
                },
                Content_4: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79373
                },
                Content_5: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79374
                },
                Content_6: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79374
                },
                Content_7: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 103645
                },
                Content_8: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 104110
                },
                Content_9: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 104223
                },
                Content_Bottom: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79374
                },
                Desktop_Sticky_Bottom: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 81992
                },
                HalfpageAd_1: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79375
                },
                HalfpageAd_2: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79376
                },
                Mobile_Bottom: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79384
                },
                Mobile_Pos1: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79379
                },
                Mobile_Pos10: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 102600
                },
                Mobile_Pos11: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 104218
                },
                Mobile_Pos2: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79380
                },
                Mobile_Pos3: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79381
                },
                Mobile_Pos4: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79382
                },
                Mobile_Pos5: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79383
                },
                Mobile_Pos6: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79384
                },
                Mobile_Pos7: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 102597
                },
                Mobile_Pos8: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 102598
                },
                Mobile_Pos9: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 102599
                },
                Mobile_Sticky_Bottom: {
                    domain: "//prg.smartadserver.com",
                    networkId: 3379,
                    siteId: 368935,
                    pageId: 1300563,
                    formatId: 79385
                },
            }
        },
        teads: {
            discount: 0.90,
            adSlots: {
                Billboard_1: {
                    pageId: 119780,
                    placementId: 145247
                },
                Content_1: {
                    pageId: 119780,
                    placementId: 129894
                },
                Content_10: {
                    pageId: 119780,
                    placementId: 129894
                },
                Content_11: {
                    pageId: 119780,
                    placementId: 129894
                },
                Content_2: {
                    pageId: 119780,
                    placementId: 129894
                },
                Content_3: {
                    pageId: 119780,
                    placementId: 129894
                },
                Content_4: {
                    pageId: 119780,
                    placementId: 129894
                },
                Content_5: {
                    pageId: 119780,
                    placementId: 129894
                },
                Content_6: {
                    pageId: 119780,
                    placementId: 129894
                },
                Content_7: {
                    pageId: 119780,
                    placementId: 129894
                },
                Content_8: {
                    pageId: 119780,
                    placementId: 129894
                },
                Content_9: {
                    pageId: 119780,
                    placementId: 129894
                },
                Content_Bottom: {
                    pageId: 119780,
                    placementId: 158500
                },
                Desktop_Sticky_Bottom: {
                    pageId: 119780,
                    placementId: 145247
                },
                HalfpageAd_1: {
                    pageId: 119780,
                    placementId: 145247
                },
                HalfpageAd_2: {
                    pageId: 119780,
                    placementId: 145247
                },
                Mobile_Bottom: {
                    pageId: 119780,
                    placementId: 158500
                },
                Mobile_Pos1: {
                    pageId: 119780,
                    placementId: 129894
                },
                Mobile_Pos10: {
                    pageId: 119780,
                    placementId: 129894
                },
                Mobile_Pos11: {
                    pageId: 119780,
                    placementId: 129894
                },
                Mobile_Pos2: {
                    pageId: 119780,
                    placementId: 129894
                },
                Mobile_Pos3: {
                    pageId: 119780,
                    placementId: 129894
                },
                Mobile_Pos4: {
                    pageId: 119780,
                    placementId: 129894
                },
                Mobile_Pos5: {
                    pageId: 119780,
                    placementId: 129894
                },
                Mobile_Pos6: {
                    pageId: 119780,
                    placementId: 129894
                },
                Mobile_Pos7: {
                    pageId: 119780,
                    placementId: 129894
                },
                Mobile_Pos8: {
                    pageId: 119780,
                    placementId: 129894
                },
                Mobile_Pos9: {
                    pageId: 119780,
                    placementId: 129894
                },
                Mobile_Sticky_Bottom: {
                    pageId: 119780,
                    placementId: 145247
                },
            }
        },
        triplelift: {
            discount: 0.95,
            adSlots: {
                Billboard_1: {
                    inventoryCode: "OptiDigital_RON_Billboard"
                },
                Content_1: {
                    inventoryCode: "OptiDigital_Fmylife_Content"
                },
                Content_10: {
                    inventoryCode: "OptiDigital_Fmylife_Content"
                },
                Content_11: {
                    inventoryCode: "OptiDigital_Fmylife_Content"
                },
                Content_2: {
                    inventoryCode: "OptiDigital_Fmylife_Content"
                },
                Content_3: {
                    inventoryCode: "OptiDigital_Fmylife_Content"
                },
                Content_4: {
                    inventoryCode: "OptiDigital_Fmylife_Content"
                },
                Content_5: {
                    inventoryCode: "OptiDigital_Fmylife_Content"
                },
                Content_6: {
                    inventoryCode: "OptiDigital_Fmylife_Content"
                },
                Content_7: {
                    inventoryCode: "OptiDigital_Fmylife_Content"
                },
                Content_8: {
                    inventoryCode: "OptiDigital_Fmylife_Content"
                },
                Content_9: {
                    inventoryCode: "OptiDigital_Fmylife_Content"
                },
                Content_Bottom: {
                    inventoryCode: "OptiDigital_Fmylife_Content"
                },
                Desktop_Sticky_Bottom: {
                    inventoryCode: "OptiDigital_Fmylife_HDX"
                },
                HalfpageAd_1: {
                    inventoryCode: "OptiDigital_Fmylife_Halfpage"
                },
                HalfpageAd_2: {
                    inventoryCode: "OptiDigital_Fmylife_Halfpage"
                },
                Mobile_Bottom: {
                    inventoryCode: "OptiDigital_Fmylife_Mobile_2"
                },
                Mobile_Pos1: {
                    inventoryCode: "OptiDigital_Fmylife_Mobile_1"
                },
                Mobile_Pos10: {
                    inventoryCode: "OptiDigital_Fmylife_Mobile_2"
                },
                Mobile_Pos11: {
                    inventoryCode: "OptiDigital_Fmylife_Mobile_2"
                },
                Mobile_Pos2: {
                    inventoryCode: "OptiDigital_Fmylife_Mobile_1"
                },
                Mobile_Pos3: {
                    inventoryCode: "OptiDigital_Fmylife_Mobile_2"
                },
                Mobile_Pos4: {
                    inventoryCode: "OptiDigital_Fmylife_Mobile_2"
                },
                Mobile_Pos5: {
                    inventoryCode: "OptiDigital_Fmylife_Mobile_2"
                },
                Mobile_Pos6: {
                    inventoryCode: "OptiDigital_Fmylife_Mobile_2"
                },
                Mobile_Pos7: {
                    inventoryCode: "OptiDigital_Fmylife_Mobile_2"
                },
                Mobile_Pos8: {
                    inventoryCode: "OptiDigital_Fmylife_Mobile_2"
                },
                Mobile_Pos9: {
                    inventoryCode: "OptiDigital_Fmylife_Mobile_2"
                },
                Mobile_Sticky_Bottom: {
                    inventoryCode: "OptiDigital_Fmylife_Mobile_2"
                },
            }
        },
        xandr: {
            discount: 0.95,
            adSlots: {
                Billboard_1: {
                    placementId: 23055015
                },
                Content_1: {
                    placementId: 20106373
                },
                Content_10: {
                    placementId: 29682954
                },
                Content_11: {
                    placementId: 29682961
                },
                Content_2: {
                    placementId: 20106376
                },
                Content_3: {
                    placementId: 20106377
                },
                Content_4: {
                    placementId: 20106379
                },
                Content_5: {
                    placementId: 20106380
                },
                Content_6: {
                    placementId: 29642175
                },
                Content_7: {
                    placementId: 29642176
                },
                Content_8: {
                    placementId: 29642177
                },
                Content_9: {
                    placementId: 29682964
                },
                Content_Bottom: {
                    placementId: 20106383
                },
                Desktop_Sticky_Bottom: {
                    placementId: 20106385
                },
                HalfpageAd_1: {
                    placementId: 20106367
                },
                HalfpageAd_2: {
                    placementId: 20106369
                },
                Mobile_Bottom: {
                    placementId: 20106396
                },
                Mobile_Pos1: {
                    placementId: 20106387
                },
                Mobile_Pos10: {
                    placementId: 29682970
                },
                Mobile_Pos11: {
                    placementId: 29682972
                },
                Mobile_Pos2: {
                    placementId: 20106389
                },
                Mobile_Pos3: {
                    placementId: 20106390
                },
                Mobile_Pos4: {
                    placementId: 20106391
                },
                Mobile_Pos5: {
                    placementId: 20106394
                },
                Mobile_Pos6: {
                    placementId: 20106395
                },
                Mobile_Pos7: {
                    placementId: 29642178
                },
                Mobile_Pos8: {
                    placementId: 29642179
                },
                Mobile_Pos9: {
                    placementId: 29682973
                },
                Mobile_Sticky_Bottom: {
                    placementId: 20106397
                },
            }
        },
    },
    adUnitError: "/43255708/fmylife.com/error",
    stickyAdConfiguration: {
        mode: 'sticky-bottom',
        zIndex: '100000000',
        adCloseTop: '-24',
        stickyAdTopTrigger: 0
    },
    automaticRefresh: {
        intervalTimeout: 2000,
        adSlots: {
            Billboard_1: {
                delay: 30000,
                max: 6
            },
            Content_1: {
                delay: 30000,
                max: 6
            },
            Content_10: {
                delay: 30000,
                max: 6
            },
            Content_11: {
                delay: 30000,
                max: 6
            },
            Content_2: {
                delay: 30000,
                max: 6
            },
            Content_3: {
                delay: 30000,
                max: 6
            },
            Content_4: {
                delay: 30000,
                max: 6
            },
            Content_5: {
                delay: 30000,
                max: 6
            },
            Content_6: {
                delay: 30000,
                max: 6
            },
            Content_7: {
                delay: 30000,
                max: 6
            },
            Content_8: {
                delay: 30000,
                max: 6
            },
            Content_9: {
                delay: 30000,
                max: 6
            },
            Content_Bottom: {
                delay: 30000,
                max: 6
            },
            Desktop_Sticky_Bottom: {
                delay: 30000,
                max: 11
            },
            HalfpageAd_1: {
                delay: 30000,
                max: 6
            },
            HalfpageAd_2: {
                delay: 30000,
                max: 6
            },
            Mobile_Bottom: {
                delay: 30000,
                max: 6
            },
            Mobile_Pos1: {
                delay: 30000,
                max: 6
            },
            Mobile_Pos10: {
                delay: 30000,
                max: 6
            },
            Mobile_Pos11: {
                delay: 30000,
                max: 6
            },
            Mobile_Pos2: {
                delay: 30000,
                max: 6
            },
            Mobile_Pos3: {
                delay: 30000,
                max: 6
            },
            Mobile_Pos4: {
                delay: 30000,
                max: 6
            },
            Mobile_Pos5: {
                delay: 30000,
                max: 6
            },
            Mobile_Pos6: {
                delay: 30000,
                max: 6
            },
            Mobile_Pos7: {
                delay: 30000,
                max: 6
            },
            Mobile_Pos8: {
                delay: 30000,
                max: 6
            },
            Mobile_Pos9: {
                delay: 30000,
                max: 6
            },
            Mobile_Sticky_Bottom: {
                delay: 30000,
                max: 11
            },
        }
    },
    optidigitalAdsrv: [{
        zoneId: 15686,
        adslot: 'Billboard_1',
        size: [728, 90]
    }, {
        zoneId: 3902,
        adslot: 'Content_1',
        size: [300, 250]
    }, {
        zoneId: 3904,
        adslot: 'Content_2',
        size: [300, 250]
    }, {
        zoneId: 3906,
        adslot: 'Content_3',
        size: [300, 250]
    }, {
        zoneId: 3908,
        adslot: 'Content_4',
        size: [300, 250]
    }, {
        zoneId: 3910,
        adslot: 'Content_5',
        size: [300, 250]
    }, {
        zoneId: 17442,
        adslot: 'Content_6',
        size: [300, 250]
    }, {
        zoneId: 17444,
        adslot: 'Content_7',
        size: [300, 250]
    }, {
        zoneId: 17446,
        adslot: 'Content_8',
        size: [300, 250]
    }, {
        zoneId: 3912,
        adslot: 'Content_Bottom',
        size: [300, 250]
    }, {
        zoneId: 3914,
        adslot: 'Desktop_Sticky_Bottom',
        size: [728, 90]
    }, {
        zoneId: 3898,
        adslot: 'HalfpageAd_1',
        size: [300, 600]
    }, {
        zoneId: 3900,
        adslot: 'HalfpageAd_2',
        size: [300, 600]
    }, {
        zoneId: 3928,
        adslot: 'Mobile_Bottom',
        size: [300, 250]
    }, {
        zoneId: 5840,
        adslot: 'Mobile_Interstitial',
        size: [300, 250]
    }, {
        zoneId: 3916,
        adslot: 'Mobile_Pos1',
        size: [300, 250]
    }, {
        zoneId: 3918,
        adslot: 'Mobile_Pos2',
        size: [300, 250]
    }, {
        zoneId: 3920,
        adslot: 'Mobile_Pos3',
        size: [300, 250]
    }, {
        zoneId: 3922,
        adslot: 'Mobile_Pos4',
        size: [300, 250]
    }, {
        zoneId: 3924,
        adslot: 'Mobile_Pos5',
        size: [300, 250]
    }, {
        zoneId: 3926,
        adslot: 'Mobile_Pos6',
        size: [300, 250]
    }, {
        zoneId: 17448,
        adslot: 'Mobile_Pos7',
        size: [300, 250]
    }, {
        zoneId: 17450,
        adslot: 'Mobile_Pos8',
        size: [300, 250]
    }],
    publisherInit: function(initConfig) {},
    insertInreadTagsOff: function(adUnit) {},
    crZoneId: 17506
};window.optidigitalToolboxLibs={odpbjs:"//scripts.opti-digital.com/lib/?lib=odpbjs&v=9.35.0_g"};if (typeof (optidigitalToolbox) == "undefined") {
  var optidigitalToolbox = {
      debug: false,
      autoStart: true,
      startExecuted: false,
      loadOTExecuted: false,
      debugCookie: "opd_debug",
      stickyCookie: "opd_sticky",
      stickyFrequency: false,
      stickyFrequencyImps: 1,
      stickyFrequencyInterval: 86400,
      logPrefix: "%cOptiDigital_Toolbox:%c ",
      setup: {},
      divIdPrefix: "optidigital-adslot-",
      initConfig: {},
      browserWidth: 0,
      widthBreakpoint: -1,
      gptAdSlots: [],
      breakPointAdSlotsConfig: [],
      firstLoadAdSlots: [],
      lazyLoadPendingAdSlots:[],
      lazyLoadIntervalId: -1,
      loadChildrenIfEmpty: [],
      loadChildrenIfFilled: [],
      infiniteScrollId:1,
      infiniteScrollWallpaperSlot: false,
      prebidSizesAdjusted:false,
      consentVendorConsents:'',
      consentV2TCData:'',
      consentCMPUIShown:false,
      consentData:'',
      consentStatus:'notready',
      consentType: 'ko',
      consentStatusNoGAM: ['CMPv2_RejectALL','CMPv2_GAMmv','CMPv2_GAMko',"CMPv2_LAokHBok","CMPv2_LAokHBko","CMPv2_LAko","CMPv2_LAMmv"],
      consentStatusNoGAMButLA: ['CMPv2_RejectALL','CMPv2_GAMmv','CMPv2_GAMko',"CMPv2_LAko","CMPv2_LAMmv"],
      enableLA: false,
      startTime: new Date(),
      lastStepTime: new Date(),
      timeRanges: [0,100,200,300,400,500,600,700,800,900,1000,1500,2000,2500,3000,3500,4000,4500,5000],
      debugWallpaper: false,
      debugBidderDiscount: 1,
      stickyAdDivId: false,
      stickyAdMode: "bottom",
      stickyAdStatus: "off",
      stickyAdTopTrigger: 50,
      stickyAdAutoHidePx: 100,
      enableAmazonAPS: false,
      articleID: false,
      sourceID: false,
      sourceDomains: ['www.google.fr','www.google.com','news.google.com','www.facebook.com','facebook.com','m.facebook.com','l.facebook.com','lm.facebook.com','from.flipboard.com','pinterest.com','pinterest.fr','www.linkedin.com','linkedin.com','t.co','instagram.com','googleapis.com','www.googleapis.com'],
      prebidSafeframe: true,
      prebidAdUnits: [],
      prebidSizes: [[1800,1000],[1000,250],[1000,90],[970,250],[970,90],[728,90],[300,600],[120,600],[160,600],[336,280],[300,250],[250,250],[320,100],[320,50]],
      apsSizes: [[1000,250],[1000,90],[970,250],[970,90],[728,90],[300,600],[120,600],[160,600],[336,280],[300,250],[250,250],[320,100],[320,50]],
      testGroup: 'control',
      forceTestGroup: 'no',
      adSlotsLoadTime:[],
      adSlotsLoadCount:[],
      adSlotsLoadStatus:[],
      windowStatus: 1,
      GAMEnv:'prod',
      adserver: 'GAM',
      limitedAds: false,
      insertInreadStartDone: false,
      videoInstreanCorrelator: 0,
      videoInstreamCallback: null,
      videoInstreamStatus: "cmp",
      videoInstreamTimeout: 2000,
      videoInstreamHBTimeout: 1500,
      videoInstreamPrerollConfig: false,
      videoInstreamPreroll2Config: false,
      videoInstreamMidrollConfig: false,
      videoInstreamMidroll2Config: false,
      videoInstreamMidroll3Config: false,
      videoInstreamPrerollVideoAdunitConfig: false,
      videoInstreamPreroll2VideoAdunitConfig: false,
      videoInstreamMidrollVideoAdunitConfig: false,
      videoInstreamMidroll2VideoAdunitConfig: false,
      videoInstreamMidroll3VideoAdunitConfig: false,
      videoInstreamVASTPreroll: "",
      videoInstreamVASTPreroll2: "",
      videoInstreamVASTMidroll: "",
      videoInstreamVASTMidroll2: "",
      videoInstreamVASTMidroll3: "",
      videoInstreamAmazonPreroll: "",
      videoInstreamAmazonPreroll2: "",
      videoInstreamAmazonMidroll: "",
      videoInstreamAmazonMidroll2: "",
      videoInstreamAmazonMidroll3: "",
      videoInstreamPrebidPreroll: "",
      videoInstreamPrebidPreroll2: "",
      videoInstreamPrebidMidroll: "",
      videoInstreamPrebidMidroll2: "",
      videoInstreamPrebidMidroll3: "",
      videoInstreamAmazonReady: false,
      videoInstreamPrebidReady: false,
      videoInstreamPageTargeting: "",
      videoInstreamLazyIntervalID: 0,
      videoInstreamLazyLoad: true,
      videoInstreamDMEncoding: 1,
      targetingODBidder: false,
      targetingPrebidPB: 'hb_pb',
      eventCallback: false,
      customDNR: true,
      secondChance: true,
      oyStatus: true,
      secondChanceAACountries:["FR","ES","BE","US","GB","CH","CA","DE","IT","PL"],
      siteCode : "na",
      forceAnalytics: false,
      pageViewCalls: 0,
      waitingForCMPFinished: false,
      adRequestStats: true,
      setCookie: function (cname, cvalue, seconds) {
        var d = new Date();
        d.setTime(d.getTime() + (seconds * 1000));
        var expires = "expires="+d.toUTCString();
        document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
      },
      getCookie: function (cname) {
        var name = cname + "=";
        var ca = document.cookie.split(';');
        for(var i = 0; i < ca.length; i++) {
          var c = ca[i];
          while (c.charAt(0) == ' ') {
            c = c.substring(1);
          }
          if (c.indexOf(name) == 0) {
            return c.substring(name.length, c.length);
          }
        }
        return "";
      },
      setDebug: function (debug) {
        if (debug) {
          this.setCookie(this.debugCookie, "enabled", 86400)
        }
        else {
          this.setCookie(this.debugCookie, "disabled", 86400)
        }
      },
      loadConfig: function (s) {
    
        if (typeof(window.location) == "object" &&
            window.location.hasOwnProperty("search")) {
          if (window.location.search.indexOf("optidigital_debug=true") != -1) {
            this.debug = true;
          }
          if (window.location.search.indexOf("optidigital_debug_wallpaper=true") != -1) {
            this.debugWallpaper = true;
            this.debugBidderDiscount = 100; 
          }
          if (window.location.search.indexOf("optidigital_testgroup=control") != -1) {
            this.forceTestGroup = 'control';
          }
          if (window.location.search.indexOf("optidigital_testgroup=test") != -1) {
            this.forceTestGroup = 'test';
          }
          if (window.location.search.indexOf("optidigital_gamenv=test") != -1) {
            this.GAMEnv = 'test';
          }
        }
        var debug = this.getCookie(this.debugCookie);
        if (typeof(debug) != "undefined" && debug == "enabled")
          this.debug = true;
        if (typeof(window.optidigital_debug) != "undefined" && window.optidigital_debug == true)
          this.debug = true;
        if (typeof(window.optidigital_forcetest) != "undefined" && window.optidigital_forcetest == true)
          this.forceTestGroup = 'test';
        if (typeof(window.optidigital_fanalytics) != "undefined" && window.optidigital_fanalytics == true)
          this.forceAnalytics = true;
        if (window.location.search.indexOf("optidigital_fanalytics=true") != -1)
          this.forceAnalytics = true;    
    
        this.setup = s;
        this.log("load setup file and page configuration");
        var scriptElement = document.getElementById("optidigital-ad-init");
        if (scriptElement !== null) {
          var configStr = scriptElement.getAttribute("config");
          if (configStr == null)
              configStr = scriptElement.getAttribute("data-config");
          try {
            this.initConfig = JSON.parse(configStr);
          }
          catch(e) {
            var jsonString = configStr;
            jsonString = jsonString.replace(",]", "]");
            this.log("Invalid JSON input => fixed "+e.message);
            try{
              this.initConfig = JSON.parse(jsonString);
            }
            catch(e) {
              this.log("Invalid JSON input => load error adUnit ");
              if(this.setup.hasOwnProperty("adUnitError")) {
                this.initConfig = {adUnit: this.setup.adUnitError};
              }
            }
          }
          var initSrc = scriptElement.getAttribute("src");
          if(initSrc.length > 0) {
              this.siteCode = initSrc.substring(initSrc.indexOf("site=")+5);
              if(this.siteCode.indexOf("&") != -1)
              {
                  this.siteCode = this.siteCode.slice(0, this.siteCode.indexOf("&"));
              }
              this.log("Script site code => " +this.siteCode);
          }
          
          this.log("Opti Digital script config", "log", this.initConfig);
        }
        else {
          this.log("No script with id:optidigital-ad-init", "error");
          if(this.setup.hasOwnProperty("adUnitError")) {
            this.initConfig = {adUnit: this.setup.adUnitError};
          }
        }
    
        if(this.setup.hasOwnProperty("info") && this.setup.info.hasOwnProperty("revision"))
        {
          this.log("PUBLIHSER:"+this.setup.info.publisherId+ " - SITE:"+this.setup.info.siteId+" - REVISION:"+this.setup.info.revision);
        }
     
        if (this.setup.hasOwnProperty("publisherInit") &&
            typeof(this.setup.publisherInit) == "function"
          ) {
          this.setup.publisherInit(this.initConfig);
        }
        if (this.setup.hasOwnProperty("autoStart")) {
          this.autoStart = this.setup.autoStart;
        }
        this.log("Ads autoStart status "+this.autoStart);
        if (this.setup.hasOwnProperty("infiniteScrollWallpaperSlot")) {
          this.infiniteScrollWallpaperSlot = this.setup.infiniteScrollWallpaperSlot;
        }
        if(this.setup.hasOwnProperty("enableArticleReporting") &&
            this.setup.enableArticleReporting == true) {
          var articleURL = window.location.protocol+"//"+window.location.host+window.location.pathname;
          if(articleURL.length > 0)
            this.articleID = this.cyrb53(articleURL, 100);
          this.log("Article ID: " + this.articleID + " - URL: " + articleURL);
    
          if(this.setup.hasOwnProperty("enableArticleReportingKey") && 
            this.initConfig.hasOwnProperty("pageTargeting") &&
            this.initConfig.pageTargeting.hasOwnProperty(this.setup.enableArticleReportingKey)
            ){
              this.articleID = this.initConfig.pageTargeting[this.setup.enableArticleReportingKey];
              this.log("Custom reporting key: " + this.setup.enableArticleReportingKey+" with value: "+this.articleID);
          }
        }
    
        if(this.setup.hasOwnProperty("enableSourceReporting") &&
            this.setup.enableSourceReporting == true) {
          //check campaign tracker
          if(this.setup.hasOwnProperty("sourceCampaignTrackers") && 
            this.setup.sourceCampaignTrackers.length > 0) {
            for(var i in this.setup.sourceCampaignTrackers){
              if(window.location.search.indexOf(this.setup.sourceCampaignTrackers[i]) != -1) {
                this.sourceID = this.cyrb53(this.setup.sourceCampaignTrackers[i], 100);
                this.log("Source campaign: "+this.setup.sourceCampaignTrackers[i]);
                break;
              }
            }
          }
          if(this.sourceID == false) {
            var referrerURL = document.referrer;
            var referrerDomain = 'direct_traffic';
            if(referrerURL.length > 0) {
              var a = document.createElement('a');
              a.href = document.referrer;
              if(this.sourceDomains.indexOf(a.hostname) != -1 || 
                (this.setup.hasOwnProperty('sourceDomains') && this.setup.sourceDomains.indexOf(a.hostname) != -1)
                ) {
                referrerDomain = a.hostname;
              } else {
                referrerDomain = 'referrer_unknown';
              }
            }
            this.sourceID = this.cyrb53(referrerDomain, 100);
          }
          this.log("Source ID: "+this.sourceID+" Referrer URL: "+referrerURL+" DOMAIN: "+referrerDomain);
        }    
     
        var currentTime = new Date();
        this.videoGAMCorrelator = timeDiff = currentTime.getTime();
    
        if (this.widthBreakpoint == -1) {
          this.browserWidth = document.documentElement.clientWidth;
          this.setup.adSlotsConfig.widthBreakpoints.sort(function(a, b) {return b - a;});
          for (var i in this.setup.adSlotsConfig.widthBreakpoints) {
            if (this.browserWidth >= this.setup.adSlotsConfig.widthBreakpoints[i]) {
              this.widthBreakpoint = this.setup.adSlotsConfig.widthBreakpoints[i];
              break;
            }
          }
          this.log("browser width: "+this.browserWidth+" active widthBreakpoint: breakpoint_"+this.widthBreakpoint);  
        }
        if(this.setup.hasOwnProperty("enableLimitedAds") &&
          this.setup.enableLimitedAds == true) {
            this.consentStatusNoGAM = this.consentStatusNoGAMButLA;
            this.limitedAds = true;
        }
        if(this.setup.hasOwnProperty("targetingODBidder") && 
          this.setup.targetingODBidder == true) {
            this.targetingPrebidPB = "odtag_pb";
            this.targetingODBidder = true;
        }
        var ua = navigator.userAgent.toLowerCase(); 
        if (ua.indexOf('safari') != -1) { 
          if (ua.indexOf('chrome') == -1) {
            this.customDNR = false;
          }
        }
        if (this.setup.hasOwnProperty("testGroupConfig") &&
            this.setup.testGroupConfig.hasOwnProperty("sampling") &&
            this.setup.testGroupConfig.hasOwnProperty("getTestConfig")) {
            if(this.forceTestGroup == 'control')
              this.setup.testGroupConfig.sampling = 0;
            if(this.forceTestGroup == 'test')
              this.setup.testGroupConfig.sampling = 100;
            var groupRandom = Math.floor(Math.random() * Math.floor(100));
            if (groupRandom < this.setup.testGroupConfig.sampling) {
              this.testGroup = "test";
              this.log("Test group sampling is "+ this.setup.testGroupConfig.sampling);
              this.setup = this.setup.testGroupConfig.getTestConfig(this.setup);
            }
        }
        this.log("Actvive Test group is : " + this.testGroup);
        this.checkBrowser = optidigitalToolbox.detectBrowser();
        this.checkOs = optidigitalToolbox.detectOS();
        let pageViewTimeout = optidigitalToolbox.setup.pageViewEventTimeout || optidigitalToolbox.setup.pageViewEventTimeout === 0 ? optidigitalToolbox.setup.pageViewEventTimeout : 1000;
        setTimeout(() => {
          if (
            !optidigitalToolbox.consentV2TCData
            && !optidigitalToolbox.consentCMPUIShown
            && window.optidigitalToolboxGdpr
            && optidigitalToolbox.consentType !== "timeout_tcfapi"
          ) {
            optidigitalToolbox.pageViewEvent(false, true);
          }
        }, pageViewTimeout);
  
        if (optidigitalToolbox.setup.hasOwnProperty("adRequestStats") && optidigitalToolbox.setup.adRequestStats === false) {
          optidigitalToolbox.adRequestStats = false;
        }
      },
      log: function (string, type, object) {
        if(this.debug) {
          var textColor = "#79ba23";
          if (typeof(type) != "undefined") {
            switch(type) {
              case "warning":
                textColor = "orange";
              break;
              case "error":
                textColor = "red";
              break;
              default:
                textColor = "#79ba23";
            }
          }
          console.log(this.logPrefix+string, 'background: #286090;border-radius:5px;color:#79ba23;font-weight:700;padding:2px 5px;', 'color:'+textColor);
          if (typeof(object) != "undefined")
            console.log(object);
        }
      },
      loadPFSDK : function () {
          if (window.location.search.indexOf("optidigital_loads=0") != -1) {
              return;
          }
          var blockOY = [112119704, 39417655, 73308937];
          if(this.setup.hasOwnProperty("info") && 
              this.setup.info.hasOwnProperty("networkId") &&
              blockOY.indexOf(this.setup.info.networkId) == -1)
              {
                  optidigitalToolbox.log("Load optiyield SDK (time: "+optidigitalToolbox.getElapsedTime()+" ms)");
                  (function(networkId) {
                      var e = document.createElement("script");
                      e.async = !0;
                      e.type = "text/javascript";
                      e.src = "https://scripts.opti-digital.com/pfc/?pubid="+networkId;
                      var r = document.getElementsByTagName("script")[0];
                      r.parentNode.insertBefore(e, r);
                    })(this.setup.info.networkId);
  
                    optiyield.cmd.push(function() {
                      var optiYieldConfig =  {
                          pubId: optidigitalToolbox.setup.info.networkId,
                          mode: 'manual',
                          gtpCustomDimensionKey : { cd1:'adslot' },
                        };
                        optiyield.init(optiYieldConfig, function(){
                          optidigitalToolbox.log("optiyield SDK is ready (time: "+optidigitalToolbox.getElapsedTime()+" ms)");
                      });
                  });
              }
      },
      loadOTSDK: function () {
        if (optidigitalToolbox.loadOTExecuted == true)
          return;
        optidigitalToolbox.loadOTExecuted = true;
        if (window.location.search.indexOf("optidigital_loads=0") != -1) {
          return;
        }
        if (optidigitalToolbox.setup && optidigitalToolbox.setup.biddersSetup && optidigitalToolbox.setup.biddersSetup["pubmatic"]) {
          optidigitalToolbox.setup.biddersSetup["pubmatic"].discount = 0.814;
        }
        optidigitalToolbox.loadPrebid();
        optidigitalToolbox.loadGPT();
        optidigitalToolbox.loadAPS();
        (function() {
          var e = document.createElement("script");
          e.async = !0, e.type = "text/javascript";
          e.src = "https://scripts.opti-digital.com/tags/?lib=core&site="+optidigitalToolbox.siteCode;
          var r = document.getElementsByTagName("script")[0];
          r.parentNode.insertBefore(e, r)
        })();
      },
      loadPrebid: function () {
        (function() {
          var src = optidigitalToolboxLibs.odpbjs;
          if(optidigitalToolbox.setup.hasOwnProperty("odpbjsSrc")) {
              src = optidigitalToolbox.setup.odpbjsSrc;
          }
          var e = document.createElement("script");
          e.async = !0, e.type = "text/javascript";
          e.src = src;
          var r = document.getElementsByTagName("script")[0];
          r.parentNode.insertBefore(e, r)
        })();
      },   
      loadGPT: function () {
        (function() {
          var e = document.createElement("script");
          e.async = !0, e.type = "text/javascript";
          e.src = "https://securepubads.g.doubleclick.net/tag/js/gpt.js";
          var r = document.getElementsByTagName("script")[0];
          r.parentNode.insertBefore(e, r)
        })();
      },
      loadAPS: function () {
        if (this.setup.biddersSetup.hasOwnProperty("amazon") &&
            (this.setup.hasOwnProperty("skipAmazonInit") == false || this.setup.skipAmazonInit != true)
            ) {
          !function(a9,a,p,s,t,A,g){if(a[a9])return;function q(c,r){a[a9]._Q.push([c,r])}a[a9]={init:function(){q("i",arguments)},fetchBids:function(){q("f",arguments)},setDisplayBids:function(){},targetingKeys:function(){return[]},_Q:[]};A=p.createElement(s);A.async=!0;A.src=t;g=p.getElementsByTagName(s)[0];g.parentNode.insertBefore(A,g)}("apstag",window,document,"script","//c.amazon-adsystem.com/aax2/apstag.js");
          
          var apsInitObject = {
            pubID: this.setup.biddersSetup.amazon.pubID,
            adServer: 'googletag',
            videoAdServer: 'DFP',
            isSelfServePub: true
          };
          if(this.setup.hasOwnProperty("info") && this.setup.info.hasOwnProperty("siteId")) {
            apsInitObject.schain = {
              complete: 1,
              ver: '1.0',
              nodes: [
                {
                  asi: 'optidigital.com',
                  sid: this.setup.info.siteId.toString(),
                  hp: 1
                }
              ]
            };
          }
          apstag.init(apsInitObject);
          this.enableAmazonAPS = true;
        }
        if(this.setup.hasOwnProperty("skipAmazonInit") || this.setup.skipAmazonInit == true)
          this.enableAmazonAPS = true;
      },
      callEventCallback: function(type, data) {
        if(optidigitalToolbox.eventCallback && typeof(optidigitalToolbox.eventCallback) == "function") {
          optidigitalToolbox.eventCallback(type, data);
        }
      },
      getCMPConsent: function () {
        let waitForCMPCallback = optidigitalToolbox.setup.cmpCallbackTimeout || optidigitalToolbox.setup.cmpCallbackTimeout === 0 ? optidigitalToolbox.setup.cmpCallbackTimeout : 15000;
        let firstPageView = false;
        let cmpTimeout = 0;
        let cmpTimeoutReached = false;
        cmpTimeout = setTimeout( () => {
          cmpTimeoutReached = true;
          optidigitalToolbox.consentStatus = "nocmp";
          optidigitalToolbox.log("Timeout NO RESPONSE FROM CMP CALLBACK (time: "+optidigitalToolbox.getElapsedTime()+")");
          optidigitalToolbox.consentStatus = "CMPv2_GAMokHBok";
          optidigitalToolbox.consentType = "timeout_callback";
          if(optidigitalToolbox.consentStatusNoGAM.indexOf(optidigitalToolbox.consentStatus) == -1) {
            optidigitalToolbox.loadOTSDK();
          }
          optidigitalToolbox.callEventCallback("CONSENT_READY", {"status": optidigitalToolbox.consentStatus});
          optidigitalToolbox.pageViewEvent();
          firstPageView = true;
        }, waitForCMPCallback);
        if (typeof(window.__tcfapi) == "function"){
          window.__tcfapi('addEventListener', 2, function(tcData, success) {
            if (!cmpTimeoutReached) {
              if(success && (tcData.eventStatus === 'cmpuishown')) {
                  clearTimeout(cmpTimeout);
                  optidigitalToolbox.consentCMPUIShown = true;
                  optidigitalToolbox.timeStampCMPUIShown = Date.now();
                  optidigitalToolbox.log("CMP UI shown (time: "+optidigitalToolbox.getElapsedTime()+")");
                  if (!firstPageView) {
                    optidigitalToolbox.pageViewEvent();
                    firstPageView = true;
                  } 
              }    
              if(success && (tcData.eventStatus === 'tcloaded' || tcData.eventStatus === 'useractioncomplete' || tcData.eventStatus == 'cmpuiclosed')) {
                  clearTimeout(cmpTimeout);
                  optidigitalToolbox.consentStatus = "CMPv2_ready";
                  optidigitalToolbox.consentV2TCData = tcData;
                  optidigitalToolbox.analyzeConsentV2();
                  if(optidigitalToolbox.setup.hasOwnProperty("onConsentCaptured") &&
                      typeof(optidigitalToolbox.setup.onConsentCaptured)) {
                    optidigitalToolbox.setup.onConsentCaptured(optidigitalToolbox.consentStatus, tcData);
                  }
                  optidigitalToolbox.log('CMPv2 signal '+tcData.eventStatus+' received - consent status: '+optidigitalToolbox.consentStatus+' (time: '+optidigitalToolbox.getElapsedTime()+' ms)');
                  if(optidigitalToolbox.consentStatusNoGAM.indexOf(optidigitalToolbox.consentStatus) == -1) {
                    optidigitalToolbox.loadOTSDK();
                  }
                  else {
                    optidigitalToolbox.isStartNG=true;
                    optidigitalToolbox.loadOTSDK();
                  }
                  optidigitalToolbox.callEventCallback("CONSENT_READY", {"status": optidigitalToolbox.consentStatus, "tcData": tcData});
                  __tcfapi('removeEventListener', 2, function(success){
                      if(success) {
                      }
                  }, tcData.listenerId);
  
                  if (optidigitalToolbox.consentCMPUIShown) {
                    optidigitalToolbox.pageViewEvent(true);
                  }
                  else {
                    optidigitalToolbox.pageViewEvent();
                  }
              }
              else {
                if (success && !tcData.gdprApplies) {
                  clearTimeout(cmpTimeout);
                  optidigitalToolbox.consentStatus = "CMPv2_OOS";
                  optidigitalToolbox.consentType = "ok";
                  if (optidigitalToolbox.consentCMPUIShown) {
                    optidigitalToolbox.pageViewEvent(true);
                  }
                  else {
                    optidigitalToolbox.pageViewEvent();
                  }
                  optidigitalToolbox.log('CMPv2 signal '+tcData.eventStatus+' received - consent status: '+optidigitalToolbox.consentStatus+' (time: '+optidigitalToolbox.getElapsedTime()+' ms)');
                  optidigitalToolbox.loadOTSDK();
                }
              }
            }
          });
        } else {
          optidigitalToolbox.consentStatus = "nocmp";
        }
      },
      getElapsedTime: function () {
        var currentTime = new Date();
        return currentTime.getTime()-this.startTime.getTime();
      },
      cyrb53: function (str, seed) {
        if (!Math.imul) Math.imul = function(a, b) {
          var aHi = (a >>> 16) & 0xffff;
          var aLo = a & 0xffff;
          var bHi = (b >>> 16) & 0xffff;
          var bLo = b & 0xffff;
          // the shift by 0 fixes the sign on the high part
          // the final |0 converts the unsigned value into a signed value
          return ((aLo * bLo) + (((aHi * bLo + aLo * bHi) << 16) >>> 0) | 0);
        };
    
        var h1 = 0xdeadbeef ^ seed;
        var h2 = 0x41c6ce57 ^ seed;
        var i;
        for (i = 0, ch; i < str.length; i++) {
            var ch = str.charCodeAt(i);
            h1 = Math.imul(h1 ^ ch, 2654435761);
            h2 = Math.imul(h2 ^ ch, 1597334677);
        }
        h1 = Math.imul(h1 ^ h1 >>> 16, 2246822507) ^ Math.imul(h2 ^ h2 >>> 13, 3266489909);
        h2 = Math.imul(h2 ^ h2 >>> 16, 2246822507) ^ Math.imul(h1 ^ h1 >>> 13, 3266489909);
        return 4294967296 * (2097151 & h2) + (h1 >>> 0);
      },
      analyzeConsentV2:function(){
        if (typeof(optidigitalToolbox.consentV2TCData) == "object") {
            if (optidigitalToolbox.consentV2TCData.hasOwnProperty("gdprApplies") &&
                optidigitalToolbox.consentV2TCData.hasOwnProperty("purpose") && 
                optidigitalToolbox.consentV2TCData.purpose.hasOwnProperty("consents") &&
                optidigitalToolbox.consentV2TCData.hasOwnProperty("vendor") && 
                optidigitalToolbox.consentV2TCData.vendor.hasOwnProperty("consents") &&
                optidigitalToolbox.consentV2TCData.vendor.hasOwnProperty("legitimateInterests"))
                {
                if (optidigitalToolbox.consentV2TCData.gdprApplies == true)
                {
                    if(optidigitalToolbox.consentCheckRejectAll() == false) {
                        if(optidigitalToolbox.consentV2TCData.vendor.consents.hasOwnProperty("755") &&
                        optidigitalToolbox.consentV2TCData.vendor.consents["755"] == true)
                        {
                        if (
                            (optidigitalToolbox.consentV2TCData.purpose.consents.hasOwnProperty(1) && optidigitalToolbox.consentV2TCData.purpose.consents["1"] == true ) &&
                            (
                              (optidigitalToolbox.consentV2TCData.purpose.consents.hasOwnProperty(2) && optidigitalToolbox.consentV2TCData.purpose.consents["2"] == true ) ||
                              (optidigitalToolbox.consentV2TCData.purpose.legitimateInterests.hasOwnProperty(2) && optidigitalToolbox.consentV2TCData.purpose.legitimateInterests["2"] == true) 
                            ) &&
                            (
                              (optidigitalToolbox.consentV2TCData.purpose.consents.hasOwnProperty(7) && optidigitalToolbox.consentV2TCData.purpose.consents["7"] == true ) ||
                              (optidigitalToolbox.consentV2TCData.purpose.legitimateInterests.hasOwnProperty(7) && optidigitalToolbox.consentV2TCData.purpose.legitimateInterests["7"] == true) 
                            ) &&
                            (
                              (optidigitalToolbox.consentV2TCData.purpose.consents.hasOwnProperty(9) && optidigitalToolbox.consentV2TCData.purpose.consents["9"] == true ) ||
                              (optidigitalToolbox.consentV2TCData.purpose.legitimateInterests.hasOwnProperty(9) && optidigitalToolbox.consentV2TCData.purpose.legitimateInterests["9"] == true) 
                            ) &&
                            (
                              (optidigitalToolbox.consentV2TCData.purpose.consents.hasOwnProperty(10) && optidigitalToolbox.consentV2TCData.purpose.consents["10"] == true ) ||
                              (optidigitalToolbox.consentV2TCData.purpose.legitimateInterests.hasOwnProperty(10) && optidigitalToolbox.consentV2TCData.purpose.legitimateInterests["10"] == true) 
                            )
                          )
                            {
                                optidigitalToolbox.consentType = "ok";
                                if(optidigitalToolbox.consentV2TCData.purpose.consents.hasOwnProperty(3) &&
                                    optidigitalToolbox.consentV2TCData.purpose.consents.hasOwnProperty(4) &&
                                    optidigitalToolbox.consentV2TCData.purpose.consents["3"] == true &&
                                    optidigitalToolbox.consentV2TCData.purpose.consents["4"] == true)
                                {
                                    if(optidigitalToolbox.consentCheckHBVendors() == true)
                                    {
                                        optidigitalToolbox.consentStatus = "CMPv2_GAMokHBok"; //GAM with personnalized ads OK + HB partners OK
                                    }
                                    else
                                    {
                                        optidigitalToolbox.consentStatus = "CMPv2_GAMokHBko"; //GAM with personnalized ads OK + HB partners NOT OK
                                    }
                                }  
                                else
                                {
                                    if(optidigitalToolbox.consentCheckHBVendors() == true)
                                    {
                                        optidigitalToolbox.consentStatus = "CMPv2_GAMnpHBok"; //GAM missing purposes for personnalized ads + HB partners OK
                                    }
                                    else
                                    {
                                        optidigitalToolbox.consentStatus = "CMPv2_GAMnpHBko"; //GAM missing purposes for personnalized ads + HB partners NOT OK
                                    }
                                }
                            } 
                            else
                            {
                                optidigitalToolbox.consentStatus = "CMPv2_GAMko"; //GAM missing basic purpose consent/legitimate to respond ad requests
                            }
                        }
                        else
                        {
                            optidigitalToolbox.consentStatus = "CMPv2_GAMmv"; //GAM missing vendor
                        }
                    }
                    else
                    {
                      if(optidigitalToolbox.legitimateInterestCheckRejectAll() == false) {
                        if(optidigitalToolbox.consentV2TCData.vendor.legitimateInterests.hasOwnProperty("755") &&
                          optidigitalToolbox.consentV2TCData.vendor.legitimateInterests["755"] == true)
                        {
                        if (
                            (optidigitalToolbox.consentV2TCData.purpose.legitimateInterests.hasOwnProperty(2) && optidigitalToolbox.consentV2TCData.purpose.legitimateInterests["2"] == true) 
                            &&
                            (optidigitalToolbox.consentV2TCData.purpose.legitimateInterests.hasOwnProperty(7) && optidigitalToolbox.consentV2TCData.purpose.legitimateInterests["7"] == true) 
                            &&
                            (optidigitalToolbox.consentV2TCData.purpose.legitimateInterests.hasOwnProperty(9) && optidigitalToolbox.consentV2TCData.purpose.legitimateInterests["9"] == true) 
                            &&
                            (optidigitalToolbox.consentV2TCData.purpose.legitimateInterests.hasOwnProperty(10) && optidigitalToolbox.consentV2TCData.purpose.legitimateInterests["10"] == true)
                          )
                            {
                              optidigitalToolbox.consentType = "li";
                              if(optidigitalToolbox.consentCheckHBVendors() == true)
                              {
                                  optidigitalToolbox.consentStatus = "CMPv2_LAokHBok"; //LA OK + HB partners OK
                              }
                              else
                              {
                                  optidigitalToolbox.consentStatus = "CMPv2_LAokHBko"; //LA OK + HB partners NOT OK
                              }
                            } 
                            else
                            {
                                optidigitalToolbox.consentStatus = "CMPv2_LAko"; //LA missing basic purpose consent/legitimate to respond ad requests
                            }
                        }
                        else
                        {
                            optidigitalToolbox.consentStatus = "CMPv2_LAMmv"; //LA missing vendor
                        }
                      }
                      else {
                        optidigitalToolbox.consentStatus = "CMPv2_RejectALL"; //User rejects ALL
                      }
                    }
                }
                else
                {
                    optidigitalToolbox.consentStatus = "CMPv2_OOS";
                    optidigitalToolbox.consentType = "ok";
                }
            }
            else
            {
                optidigitalToolbox.consentStatus = "CMPv2_invalid";
            }
        }
      },
      consentCheckRejectAll: function(){
          var result = false;
          var consentPurposes = 0;
          var consentNegativePurposes = 0;
          for(var i in this.consentV2TCData.purpose.consents) {
              if(typeof(this.consentV2TCData.purpose.consents[i]) == "boolean")
              {
                  consentPurposes++;
                  if(this.consentV2TCData.purpose.consents[i] == false)
                  consentNegativePurposes++;    
              }    
          }
          if(consentNegativePurposes == consentPurposes)
              result = true;
          return result;
      },
      legitimateInterestCheckRejectAll: function(){
        var result = false;
        var consentPurposes = 0;
        var consentNegativePurposes = 0;
        for(var i in this.consentV2TCData.purpose.legitimateInterests) {
            if(typeof(this.consentV2TCData.purpose.legitimateInterests[i]) == "boolean")
            {
                consentPurposes++;
                if(this.consentV2TCData.purpose.legitimateInterests[i] == false)
                consentNegativePurposes++;    
            }    
        }
        if(consentNegativePurposes == consentPurposes)
            result = true;
        return result;
      },
      consentCheckHBVendors: function(){
        var result = false;
        var debug = "CMP vendors MISSING: ";
        var vendors = [{id:755, name:"google"},{id:915, name:"optidigital"},{id:32, name:"xandr"},{id:52, name:"magnite"},{id:45, name:"smart"},{id:91, name:"criteo"},{id:132, name:"teads"},{id:436, name:"invibes"},{id:793, name:"amazon"},{id:28, name:"triplelift"},{id:76, name:"pubmatic"},{id:259, name:"adyoulike"},{id:108, name:"richaudience"},{id:157, name:"seedtag"},{id:164, name:"outbrain"}];
        vendorsValid = 0;
        for(var i=0;i<vendors.length;i++) {
          if(optidigitalToolbox.consentV2TCData.vendor.consents.hasOwnProperty(vendors[i].id) &&
              optidigitalToolbox.consentV2TCData.vendor.consents[vendors[i].id] == true) {
              vendorsValid++;
              debug += vendors[i].name+"_OK,";
          }
          else {
              debug += vendors[i].name+"_KO,";
          }
        }
        if(vendorsValid == vendors.length) {
          result = true;
          debug = debug.replace("MISSING", "OK");
        }
        optidigitalToolbox.log(debug);
        return result;
      },
      isClientMobile: function() {
        let check = false;
        (function (a) { if (/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0, 4))) check = true })(navigator.userAgent || navigator.vendor || window.opera)
        return check
      },
      isClientMobileOrTablet: function() {
        let check = false;
        (function (a) { if (/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(a) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0, 4))) check = true })(navigator.userAgent || navigator.vendor || window.opera)
        return check
      },
      detectOS: function() {
        let platform = window.navigator.platform,
            macosPlatforms = ['Macintosh', 'MacIntel', 'MacPPC', 'Mac68K'],
            windowsPlatforms = ['Win32', 'Win64', 'Windows', 'WinCE'],
            iosPlatforms = ['iPhone', 'iPad', 'iPod'],
            ua = window.navigator.userAgent,
            os = null;
  
        if (macosPlatforms.indexOf(platform) !== -1) {
          os = 'Mac OS';
        } else if (iosPlatforms.indexOf(platform) !== -1) {
          os = 'iOS';
        } else if (/Android/.test(ua)) {
          os = 'Android';
        } else if (windowsPlatforms.indexOf(platform) !== -1) {
          os = 'Windows';
        } else if (!os && /Linux/.test(platform)) {
          os = 'Linux';
        } else {
          os = 'Other';
        }
        return os;
      },
      detectBrowser: function() {
        let test = function(regexp) {return regexp.test(window.navigator.userAgent)}
        switch (true) {
          case test(/edg/i): return "Edge";
          case test(/trident/i): return "Internet Explorer";
          case test(/firefox|fxios/i): return "Firefox";
          case test(/opr\//i): return "Opera";
          case test(/ucbrowser/i): return "UC Browser";
          case test(/samsungbrowser/i): return "Samsung Browser";
          case test(/chrome|chromium|crios/i): return "Chrome";
          case test(/^((?!chrome|chromium|crios|android).)*safari/i): return "Safari";
          default: return "Other";
        }
      },
      generateUuid: function() {
        !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).uuidv4=e()}(this,(function(){"use strict";var t,e=new Uint8Array(16);function o(){if(!t&&!(t="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return t(e)}var n=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function r(t){return"string"==typeof t&&n.test(t)}for(var i=[],u=0;u<256;++u)i.push((u+256).toString(16).substr(1));return function(t,e,n){var u=(t=t||{}).random||(t.rng||o)();if(u[6]=15&u[6]|64,u[8]=63&u[8]|128,e){n=n||0;for(var f=0;f<16;++f)e[n+f]=u[f];return e}return function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=(i[t[e+0]]+i[t[e+1]]+i[t[e+2]]+i[t[e+3]]+"-"+i[t[e+4]]+i[t[e+5]]+"-"+i[t[e+6]]+i[t[e+7]]+"-"+i[t[e+8]]+i[t[e+9]]+"-"+i[t[e+10]]+i[t[e+11]]+i[t[e+12]]+i[t[e+13]]+i[t[e+14]]+i[t[e+15]]).toLowerCase();if(!r(o))throw TypeError("Stringified UUID is invalid");return o}(u)}}));
        return uuidv4();
      },
      pageViewEvent: function(userAction = false, firstCall = false) {
        optidigitalToolbox.pageViewCalls += 1;
        optidigitalToolbox.setup.liveAnalyticsSampling = optidigitalToolbox.setup.liveAnalyticsSampling ? optidigitalToolbox.setup.liveAnalyticsSampling : 25;
        if(optidigitalToolbox.forceAnalytics)
          optidigitalToolbox.setup.liveAnalyticsSampling = 100;
        let rand = Math.floor(Math.random() * Math.floor(100));
        if (!optidigitalToolbox.liveAnalyticsRand) {
          optidigitalToolbox.liveAnalyticsRand = rand;
        }
        if (
          optidigitalToolbox.setup.liveAnalyticsSampling && 
          optidigitalToolbox.liveAnalyticsRand < optidigitalToolbox.setup.liveAnalyticsSampling
        ) {
          if (!optidigitalToolbox.liveAnalyticsId) {
            let uId = optidigitalToolbox.generateUuid();
            optidigitalToolbox.liveAnalyticsId = uId;
          }
          let articleURL = window.location.protocol + "//" + window.location.host + window.location.pathname;
          let deviceCategory = "";
  
          if (optidigitalToolbox.isClientMobileOrTablet()) {
            if(optidigitalToolbox.isClientMobile()) {
              deviceCategory = "Smartphone";
            }
            else {
              deviceCategory = "Tablet";
            }
          }
          else {
            deviceCategory = "Desktop";
          }
  
          let status;
          if (optidigitalToolbox.consentCMPUIShown && !userAction) {
            status = "ui";
          } else if (optidigitalToolbox.consentStatus === "CMPv2_OOS") {
            status = "oos";
          }
          else if (optidigitalToolbox.pageViewCalls === 1 && firstCall && (!optidigitalToolbox.consentV2TCData.gdprApplies || optidigitalToolbox.consentV2TCData.gdprApplies === false)) {
            if (optidigitalToolbox.waitingForCMPFinished) {
              status = "waiting_callback";
            }
            else {
              status = "waiting_tcfapi";
            }
          }
          else {
            status = optidigitalToolbox.consentType;
          }
  
          let basicParams = {
            id: optidigitalToolbox.liveAnalyticsId,
            part: optidigitalToolbox.pageViewCalls,
            gdpr: {
              gdprUi: optidigitalToolbox.consentCMPUIShown ? 1 : 0,
              gdprApplies: window.optidigitalToolboxGdpr ? 1 : 0,
              status
            }
          }
          let pageViewBasicParam = JSON.parse(JSON.stringify(basicParams));
          let pageView1 = {
            sampling: optidigitalToolbox.setup.liveAnalyticsSampling || 0,
            country: window.optidigitalToolboxCC,
            networkId: optidigitalToolbox.setup.info.networkId,
            publisherId: optidigitalToolbox.setup.info.publisherId,
            siteId: optidigitalToolbox.setup.info.siteId,
            revision: optidigitalToolbox.setup.info.revision,
            domain: window.location.hostname,
            uri: window.location.pathname,
            urlHash: this.cyrb53(articleURL, 100),
            abTest: optidigitalToolbox.testGroup,
            device: {
              deviceCategory,
              browserWidth: document.documentElement.clientWidth,
              breakpoint: optidigitalToolbox.widthBreakpoint,
              browser: optidigitalToolbox.checkBrowser,
              os: optidigitalToolbox.checkOs
            },
            meta: {},
            ...pageViewBasicParam
          };
  
          if (!firstCall) {
            pageView1.gdpr.delayForCallback = optidigitalToolbox.getElapsedTime();
          }
          if (document.referrer) {
            if (!pageView1.source) {
              pageView1.source = {};
            }
            pageView1.source.referrer = document.referrer;
            pageView1.source.refDomain = new URL(document.referrer).hostname;
          }
          if (new URL(window.location.href).searchParams.get("utm_source")) {
            if (!pageView1.source) {
              pageView1.source = {};
            }
            pageView1.source.utmSource = new URL(window.location.href).searchParams.get("utm_source");
          }
          if (new URL(window.location.href).searchParams.get("utm_campaign")) {
            if (!pageView1.source) {
              pageView1.source = {};
            }
            pageView1.source.utmCampaign = new URL(window.location.href).searchParams.get("utm_campaign");
          }
          if (this.initConfig.adUnit && this.initConfig.adUnit !== "") {
            pageView1.adUnitPath = this.initConfig.adUnit;
          }
          
          if (document.querySelector("meta[property='og:title']") && document.querySelector("meta[property='og:title']").getAttribute("content")) {
            pageView1.meta.title = document.querySelector("meta[property='og:title']").getAttribute("content");
          }
          else if (document.title) {
            pageView1.meta.title = document.title;
          }
  
          if (document.querySelector("meta[property='og:description']") && document.querySelector("meta[property='og:description']").getAttribute("content")) {
            pageView1.meta.description = document.querySelector("meta[property='og:description']").getAttribute("content");
          }
          else if (document.querySelector('meta[name="description"]') && document.querySelector('meta[name="description"]').content) {
            pageView1.meta.description = document.querySelector('meta[name="description"]').content;
          }
  
          if (document.querySelector("meta[property='og:image']") && document.querySelector("meta[property='og:image']").getAttribute("content")) {
            pageView1.meta.image = document.querySelector("meta[property='og:image']").getAttribute("content");
          }
  
          if (document.querySelector("meta[property='article:author']") && document.querySelector("meta[property='article:author']").getAttribute("content")) {
            pageView1.meta.articleAuthor = document.querySelector("meta[property='article:author']").getAttribute("content");
          }
          else if (document.querySelector('meta[name="author"]') && document.querySelector('meta[name="author"]').content) {
            pageView1.meta.articleAuthor = document.querySelector("meta[name='author']").getAttribute("content");
          }
  
          if (document.querySelector("meta[property='article:published_time']") && document.querySelector("meta[property='article:published_time']").getAttribute("content")) {
            pageView1.meta.articlePublishedTime = document.querySelector("meta[property='article:published_time']").getAttribute("content");
          }
            
          let pageView2 = JSON.parse(JSON.stringify(basicParams));
          if (optidigitalToolbox.pageViewCalls === 3) {
            pageView2.gdpr.delayForUserAction = Date.now() - optidigitalToolbox.timeStampCMPUIShown;
          }
          else {
            if (userAction) {
              pageView2.gdpr.delayForUserAction = Date.now() - optidigitalToolbox.timeStampCMPUIShown;
            }
            else {
              pageView2.gdpr.delayForCallback = optidigitalToolbox.getElapsedTime();
            }
          }
          
          optidigitalToolbox.pageViewPayload = pageView1;
  
          const analyticsUrl = "https://analytics.optidigital.com/pageview";
          const xhttp = new XMLHttpRequest();
          xhttp.open('POST', analyticsUrl, true);
          if (optidigitalToolbox.pageViewCalls === 1) {
            xhttp.send(JSON.stringify(pageView1));
          }
          else {
            xhttp.send(JSON.stringify(pageView2));
          }
        }
      },
      isStartNG : false,
      loadConfigStart: undefined,
      loadCustomRendererScripts: undefined,
      createAdStyles: undefined,
      defineSlots: undefined,
      getGPTSlots: undefined,
      getPrebidAdUnitsFromSlotNames: undefined,
      infiniteScrollRefresh: undefined,
      refreshAdSlots: undefined,
      getAPSAdslotSizes: undefined,
      fetchAPSBids: undefined,
      getVideoCustomParam: undefined,
      getVideoGAMVASTagURL: undefined,
      fetchAPSVideoBids: undefined,
      getPrebidVideoAdunit: undefined,
      fetchPrebidVideoBids: undefined,
      videoBiddersBack: undefined,
      callVideoInstreamCallback: undefined,
      fetchVIADS: undefined,
      monitorVideoLazyLoadPlayer: undefined,
      getVideoPlayerAds: undefined,
      getVideoInstreamAds: undefined,
      setCustomRenderer: undefined,
      cleanWallpaper: undefined,
      registerAdslotLoad: undefined,
      eventSlotRendered: undefined,
      initPageTargeting: undefined,
      setPageTargeting: undefined,
      buildFirstLoadAdSlots: undefined,
      monitorLazyLoadAdSlots: undefined,
      monitorAutomaticRefresh: undefined,
      buildBreakPointAdSlotsConfig: undefined,
      setTargeting: undefined,
      checkSafeFrameDelivery: undefined,
      setPrebidAdManagerTargeting: undefined,
      buildBidAjustment: undefined,
      getPrebidBidddersSettings: undefined,
      getPrebidBidddersSettings: undefined,
      createPrebidBidderAlias: undefined,
      getPrebidConfig: undefined,
      getPrebidAdUnitsSizes: undefined,
      getInfiniteScrollDPFSizes: undefined,
      adjustPrebidSizesForInfiniteScroll: undefined,
      getPrebidAdUnits: undefined,
      startNG: undefined,
      start: undefined,
      processCommandQueue: undefined,
      reportTimePerformance: undefined,
      createStickyAd: undefined,
      getMinHeight: undefined,
      adslotInit: undefined,
      getVideoVMAP: undefined,
      initVideoPlayer: undefined,
      registerVideoCallback: undefined,
      registerEventCallback: undefined,
      mergeBiddersLists: undefined,
      runPBSUserSync: undefined,
      setBiddersConfig: undefined,
      initCRModal: undefined
    };
    
    optidigitalToolbox.loadConfig(optidigitalSetup);
    if (optidigitalToolbox.setup.hasOwnProperty("launcherInit") &&
        typeof(optidigitalToolbox.setup.launcherInit) == "function") {
        optidigitalToolbox.setup.launcherInit(optidigitalToolbox.initConfig);
        optidigitalToolbox.log("launcherInit executed (time: "+optidigitalToolbox.getElapsedTime()+")");
    }
    var optiyield = optiyield || {};
    optiyield.cmd = optiyield.cmd || [];
    optiyield.initOptiYieldSdk = false;
    optidigitalToolbox.loadPFSDK();
    
    var odpbjs = odpbjs || {};
    odpbjs.que = odpbjs.que || [];
    var googletag = googletag || {};
    googletag.cmd = googletag.cmd || [];
    googletag.cmd.push(function() {
      googletag.pubads().disableInitialLoad();
    });
    
    if(typeof(window.optidigitalStatus) == "undefined") {
      window.optidigitalStatus = 1;
      if(optidigitalToolbox.setup.hasOwnProperty("abTestConfig") &&
          optidigitalToolbox.setup.abTestConfig.hasOwnProperty("sampling")
          ) {
          if(optidigitalToolbox.forceTestGroup == 'control')
              optidigitalToolbox.setup.abTestConfig.sampling = 0;
          if(optidigitalToolbox.forceTestGroup == 'test')
              optidigitalToolbox.setup.abTestConfig.sampling = 100;
              var groupRandom = Math.floor(Math.random() * Math.floor(100));
              if (groupRandom < optidigitalToolbox.setup.abTestConfig.sampling) {
              optidigitalToolbox.testGroup = "test";
              optidigitalToolbox.log("Test group sampling is "+ optidigitalToolbox.setup.abTestConfig.sampling+ "(time: "+optidigitalToolbox.getElapsedTime()+")");
              if(optidigitalToolbox.setup.abTestConfig.hasOwnProperty("embed") && typeof(optidigitalSetupTest) == "object")
              {
                  optidigitalToolbox.setup = optidigitalSetupTest;
                  optidigitalToolbox.log("Test config revision is "+ optidigitalToolbox.setup.info.revision+"(time: "+optidigitalToolbox.getElapsedTime()+")");
              }
              waitForCMP();
              }
              else {
              optidigitalToolbox.log("Active group is CONTROL");
              waitForCMP();
              }
          } else {
          waitForCMP();
      }
    }
    else {
      optidigitalToolbox.log("Optidigital ALREADY LOADED (time: "+optidigitalToolbox.getElapsedTime()+")");
    }
    
    function waitForCMP() {
      optidigitalToolbox.log("Start waiting CMP API (time: "+optidigitalToolbox.getElapsedTime()+")");
      var odStartIntervalID = 0;
      var odStartTimeout = optidigitalToolbox.setup.cmpApiTimeout || optidigitalToolbox.setup.cmpApiTimeout === 0 ? optidigitalToolbox.setup.cmpApiTimeout : 1000;
      var odStartElapsed = 0;
      var odStartCPMWaitDone = false;
      if (window.optidigitalToolboxGdpr) {
        odStartIntervalID = window.setInterval(function() {
          odStartElapsed += 50;
          if(odStartCPMWaitDone) {
            return;
          }
          if (typeof(window.__tcfapi) == "function") {
              optidigitalToolbox.log("CMP API ready, wait for consent signal (time: "+optidigitalToolbox.getElapsedTime()+" ms)");
              window.clearInterval(odStartIntervalID);
              odStartCPMWaitDone = true;
              optidigitalToolbox.waitingForCMPFinished = true;
              if (document.readyState !== "loading") {
                  optidigitalToolbox.getCMPConsent();
              } else {
                  document.addEventListener("DOMContentLoaded", function(event) {
                      optidigitalToolbox.getCMPConsent();
                  });
              }
          }
          else if(odStartElapsed >= odStartTimeout) {
              optidigitalToolbox.consentStatus = "nocmp_api";
              window.clearInterval(odStartIntervalID);
              odStartCPMWaitDone = true;
              optidigitalToolbox.waitingForCMPFinished = true;
              optidigitalToolbox.log("Timeout NO CMP API (time: "+optidigitalToolbox.getElapsedTime()+")");
    
              optidigitalToolbox.consentStatus = "CMPv2_GAMokHBok";
              if(optidigitalToolbox.consentStatusNoGAM.indexOf(optidigitalToolbox.consentStatus) == -1) {
                optidigitalToolbox.loadOTSDK();
              }
              optidigitalToolbox.callEventCallback("CONSENT_READY", {"status": optidigitalToolbox.consentStatus});
              optidigitalToolbox.consentType = "timeout_tcfapi";
              optidigitalToolbox.pageViewEvent();
          }
        }, 50);
      }
      else {
        optidigitalToolbox.consentStatus = "CMPv2_OOS";
        optidigitalToolbox.consentType = "ok";
        optidigitalToolbox.log("NO GDPR (time: "+optidigitalToolbox.getElapsedTime()+")");
        optidigitalToolbox.pageViewEvent();
        optidigitalToolbox.loadOTSDK();
      }
    }
  }