prebid.js 10.2.0 → 10.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/scripts/codepath-notification +1 -0
- package/creative/renderers/display/renderer.js +3 -4
- package/dist/chunks/1plusXRtdProvider.js +1 -1
- package/dist/chunks/33acrossAnalyticsAdapter.js +1 -1
- package/dist/chunks/33acrossBidAdapter.js +1 -1
- package/dist/chunks/33acrossBidAdapter.metadata.js +1 -1
- package/dist/chunks/33acrossIdSystem.js +1 -1
- package/dist/chunks/33acrossIdSystem.metadata.js +1 -1
- package/dist/chunks/acuityadsBidAdapter.metadata.js +1 -1
- package/dist/chunks/adagioAnalyticsAdapter.js +1 -1
- package/dist/chunks/adagioBidAdapter.js +1 -1
- package/dist/chunks/adagioBidAdapter.metadata.js +1 -1
- package/dist/chunks/adagioRtdProvider.metadata.js +1 -1
- package/dist/chunks/adagioUtils.js +1 -1
- package/dist/chunks/addefendBidAdapter.js +1 -1
- package/dist/chunks/addefendBidAdapter.metadata.js +1 -1
- package/dist/chunks/adfBidAdapter.metadata.js +1 -1
- package/dist/chunks/adfusionBidAdapter.metadata.js +1 -1
- package/dist/chunks/adgenerationBidAdapter.js +1 -1
- package/dist/chunks/adheseBidAdapter.metadata.js +1 -1
- package/dist/chunks/adkernelAdnBidAdapter.metadata.js +1 -1
- package/dist/chunks/adkernelBidAdapter.metadata.js +1 -1
- package/dist/chunks/adlooxRtdProvider.js +1 -1
- package/dist/chunks/admaticBidAdapter.metadata.js +1 -1
- package/dist/chunks/admixerBidAdapter.js +1 -1
- package/dist/chunks/admixerBidAdapter.metadata.js +1 -1
- package/dist/chunks/admixerIdSystem.metadata.js +1 -1
- package/dist/chunks/adnowBidAdapter.metadata.js +1 -1
- package/dist/chunks/adnuntiusBidAdapter.metadata.js +1 -1
- package/dist/chunks/adnuntiusRtdProvider.metadata.js +1 -1
- package/dist/chunks/adotBidAdapter.metadata.js +1 -1
- package/dist/chunks/adponeBidAdapter.metadata.js +1 -1
- package/dist/chunks/adqueryBidAdapter.js +1 -1
- package/dist/chunks/adqueryBidAdapter.metadata.js +1 -1
- package/dist/chunks/adqueryIdSystem.metadata.js +1 -1
- package/dist/chunks/adrelevantisBidAdapter.js +1 -1
- package/dist/chunks/adrinoBidAdapter.metadata.js +1 -1
- package/dist/chunks/ads_interactiveBidAdapter.metadata.js +1 -1
- package/dist/chunks/adstirBidAdapter.js +1 -1
- package/dist/chunks/adtargetBidAdapter.metadata.js +1 -1
- package/dist/chunks/adtelligentBidAdapter.metadata.js +1 -1
- package/dist/chunks/adtelligentIdSystem.metadata.js +1 -1
- package/dist/chunks/adtrgtmeBidAdapter.js +1 -1
- package/dist/chunks/aduptechBidAdapter.metadata.js +1 -1
- package/dist/chunks/advertisingBidAdapter.js +1 -1
- package/dist/chunks/adxcgAnalyticsAdapter.js +1 -1
- package/dist/chunks/adxcgBidAdapter.js +1 -1
- package/dist/chunks/adyoulikeBidAdapter.js +1 -1
- package/dist/chunks/adyoulikeBidAdapter.metadata.js +1 -1
- package/dist/chunks/agmaAnalyticsAdapter.js +1 -1
- package/dist/chunks/aidemBidAdapter.metadata.js +1 -1
- package/dist/chunks/airgridRtdProvider.metadata.js +1 -1
- package/dist/chunks/ajaBidAdapter.js +1 -1
- package/dist/chunks/alkimiBidAdapter.metadata.js +1 -1
- package/dist/chunks/ampliffyBidAdapter.metadata.js +1 -1
- package/dist/chunks/amxBidAdapter.js +1 -1
- package/dist/chunks/amxBidAdapter.metadata.js +1 -1
- package/dist/chunks/amxIdSystem.js +1 -1
- package/dist/chunks/amxIdSystem.metadata.js +1 -1
- package/dist/chunks/aniviewBidAdapter.js +1 -1
- package/dist/chunks/aniviewBidAdapter.metadata.js +1 -1
- package/dist/chunks/anonymisedRtdProvider.metadata.js +1 -1
- package/dist/chunks/appierAnalyticsAdapter.js +1 -1
- package/dist/chunks/appierBidAdapter.metadata.js +1 -1
- package/dist/chunks/appnexusBidAdapter.js +1 -1
- package/dist/chunks/appnexusBidAdapter.metadata.js +1 -1
- package/dist/chunks/appnexusUtils.js +1 -1
- package/dist/chunks/appushBidAdapter.metadata.js +1 -1
- package/dist/chunks/apstreamBidAdapter.metadata.js +1 -1
- package/dist/chunks/asoBidAdapter.js +1 -1
- package/dist/chunks/audiencerunBidAdapter.metadata.js +1 -1
- package/dist/chunks/axisBidAdapter.metadata.js +1 -1
- package/dist/chunks/axonixBidAdapter.js +1 -1
- package/dist/chunks/azerionedgeRtdProvider.metadata.js +1 -1
- package/dist/chunks/beopBidAdapter.js +1 -1
- package/dist/chunks/beopBidAdapter.metadata.js +1 -1
- package/dist/chunks/betweenBidAdapter.metadata.js +1 -1
- package/dist/chunks/bidglassBidAdapter.js +1 -1
- package/dist/chunks/bidmaticBidAdapter.metadata.js +1 -1
- package/dist/chunks/bidtheatreBidAdapter.metadata.js +1 -1
- package/dist/chunks/big-richmediaBidAdapter.js +1 -1
- package/dist/chunks/bitmediaBidAdapter.js +1 -1
- package/dist/chunks/bliinkBidAdapter.metadata.js +1 -1
- package/dist/chunks/blockthroughBidAdapter.js +1 -1
- package/dist/chunks/blockthroughBidAdapter.metadata.js +1 -1
- package/dist/chunks/blueBidAdapter.metadata.js +1 -1
- package/dist/chunks/bmsBidAdapter.metadata.js +1 -1
- package/dist/chunks/bmtmBidAdapter.js +1 -1
- package/dist/chunks/boldwinBidAdapter.metadata.js +1 -1
- package/dist/chunks/bridBidAdapter.js +1 -1
- package/dist/chunks/bridBidAdapter.metadata.js +1 -1
- package/dist/chunks/bridgewellBidAdapter.js +1 -1
- package/dist/chunks/browsiBidAdapter.metadata.js +1 -1
- package/dist/chunks/bucksenseBidAdapter.metadata.js +1 -1
- package/dist/chunks/carodaBidAdapter.js +1 -1
- package/dist/chunks/carodaBidAdapter.metadata.js +1 -1
- package/dist/chunks/categoryTranslation.metadata.js +1 -1
- package/dist/chunks/ccxBidAdapter.metadata.js +1 -1
- package/dist/chunks/ceeIdSystem.metadata.js +1 -1
- package/dist/chunks/chromeAiRtdProvider.metadata.js +1 -1
- package/dist/chunks/chtnwBidAdapter.js +1 -1
- package/dist/chunks/chunk-core.js +1 -1
- package/dist/chunks/compassBidAdapter.metadata.js +1 -1
- package/dist/chunks/conceptxBidAdapter.metadata.js +1 -1
- package/dist/chunks/concertBidAdapter.js +1 -1
- package/dist/chunks/connatixBidAdapter.metadata.js +1 -1
- package/dist/chunks/connectIdSystem.metadata.js +1 -1
- package/dist/chunks/connectadBidAdapter.js +1 -1
- package/dist/chunks/connectadBidAdapter.metadata.js +1 -1
- package/dist/chunks/consumableBidAdapter.js +1 -1
- package/dist/chunks/contentexchangeBidAdapter.metadata.js +1 -1
- package/dist/chunks/contxtfulBidAdapter.js +1 -1
- package/dist/chunks/conversantBidAdapter.js +1 -1
- package/dist/chunks/conversantBidAdapter.metadata.js +1 -1
- package/dist/chunks/copper6sspBidAdapter.metadata.js +1 -1
- package/dist/chunks/cpmstarBidAdapter.metadata.js +1 -1
- package/dist/chunks/craftBidAdapter.js +1 -1
- package/dist/chunks/creative-renderer-display.js +1 -1
- package/dist/chunks/criteoBidAdapter.js +1 -1
- package/dist/chunks/criteoBidAdapter.metadata.js +1 -1
- package/dist/chunks/criteoIdSystem.metadata.js +1 -1
- package/dist/chunks/cryptoUtils.js +1 -0
- package/dist/chunks/cwireBidAdapter.js +1 -1
- package/dist/chunks/cwireBidAdapter.metadata.js +1 -1
- package/dist/chunks/czechAdIdSystem.metadata.js +1 -1
- package/dist/chunks/dailymotionBidAdapter.js +1 -1
- package/dist/chunks/dailymotionBidAdapter.metadata.js +1 -1
- package/dist/chunks/debugging-standalone.js +1 -1
- package/dist/chunks/debugging.metadata.js +1 -1
- package/dist/chunks/deepintentBidAdapter.metadata.js +1 -1
- package/dist/chunks/deltaprojectsBidAdapter.metadata.js +1 -1
- package/dist/chunks/dependencies.json +13 -0
- package/dist/chunks/dianomiBidAdapter.metadata.js +1 -1
- package/dist/chunks/digitalMatterBidAdapter.metadata.js +1 -1
- package/dist/chunks/distroscaleBidAdapter.metadata.js +1 -1
- package/dist/chunks/docereeAdManagerBidAdapter.metadata.js +1 -1
- package/dist/chunks/docereeBidAdapter.metadata.js +1 -1
- package/dist/chunks/dspxBidAdapter.js +1 -1
- package/dist/chunks/dspxBidAdapter.metadata.js +1 -1
- package/dist/chunks/dxkultureBidAdapter.js +1 -1
- package/dist/chunks/e_volutionBidAdapter.metadata.js +1 -1
- package/dist/chunks/edge226BidAdapter.metadata.js +1 -1
- package/dist/chunks/eplanningBidAdapter.js +1 -1
- package/dist/chunks/equativBidAdapter.js +1 -1
- package/dist/chunks/equativBidAdapter.metadata.js +1 -1
- package/dist/chunks/eskimiBidAdapter.js +1 -1
- package/dist/chunks/eskimiBidAdapter.metadata.js +1 -1
- package/dist/chunks/etargetBidAdapter.metadata.js +1 -1
- package/dist/chunks/euidIdSystem.js +1 -1
- package/dist/chunks/euidIdSystem.metadata.js +1 -1
- package/dist/chunks/exadsBidAdapter.js +1 -1
- package/dist/chunks/exadsBidAdapter.metadata.js +1 -1
- package/dist/chunks/excoBidAdapter.js +1 -1
- package/dist/chunks/feedadBidAdapter.js +1 -1
- package/dist/chunks/feedadBidAdapter.metadata.js +1 -1
- package/dist/chunks/finativeBidAdapter.js +1 -1
- package/dist/chunks/fwsspBidAdapter.metadata.js +1 -1
- package/dist/chunks/gamoshiBidAdapter.metadata.js +1 -1
- package/dist/chunks/getintentBidAdapter.js +1 -1
- package/dist/chunks/glomexBidAdapter.metadata.js +1 -1
- package/dist/chunks/gmosspBidAdapter.js +1 -1
- package/dist/chunks/goldbachBidAdapter.metadata.js +1 -1
- package/dist/chunks/greenbidsAnalyticsAdapter.js +1 -1
- package/dist/chunks/greenbidsBidAdapter.js +1 -1
- package/dist/chunks/greenbidsBidAdapter.metadata.js +1 -1
- package/dist/chunks/greenbidsRtdProvider.js +1 -1
- package/dist/chunks/gridBidAdapter.js +1 -1
- package/dist/chunks/gridBidAdapter.metadata.js +1 -1
- package/dist/chunks/gumgumBidAdapter.js +1 -1
- package/dist/chunks/gumgumBidAdapter.metadata.js +1 -1
- package/dist/chunks/h12mediaBidAdapter.js +1 -1
- package/dist/chunks/hadronIdSystem.metadata.js +1 -1
- package/dist/chunks/hadronRtdProvider.metadata.js +1 -1
- package/dist/chunks/holidBidAdapter.metadata.js +1 -1
- package/dist/chunks/hybridBidAdapter.metadata.js +1 -1
- package/dist/chunks/hypelabBidAdapter.js +1 -1
- package/dist/chunks/iasRtdProvider.js +1 -1
- package/dist/chunks/id5AnalyticsAdapter.js +1 -1
- package/dist/chunks/id5IdSystem.js +1 -1
- package/dist/chunks/id5IdSystem.metadata.js +1 -1
- package/dist/chunks/identityLinkIdSystem.metadata.js +1 -1
- package/dist/chunks/illuminBidAdapter.metadata.js +1 -1
- package/dist/chunks/impactifyBidAdapter.metadata.js +1 -1
- package/dist/chunks/improvedigitalBidAdapter.js +1 -1
- package/dist/chunks/improvedigitalBidAdapter.metadata.js +1 -1
- package/dist/chunks/inmobiBidAdapter.js +1 -1
- package/dist/chunks/inmobiBidAdapter.metadata.js +1 -1
- package/dist/chunks/innityBidAdapter.metadata.js +1 -1
- package/dist/chunks/insticatorBidAdapter.js +1 -1
- package/dist/chunks/insticatorBidAdapter.metadata.js +1 -1
- package/dist/chunks/intentIqAnalyticsAdapter.js +1 -1
- package/dist/chunks/intentIqIdSystem.metadata.js +1 -1
- package/dist/chunks/invibesBidAdapter.metadata.js +1 -1
- package/dist/chunks/ipromBidAdapter.metadata.js +1 -1
- package/dist/chunks/ixBidAdapter.js +1 -1
- package/dist/chunks/ixBidAdapter.metadata.js +1 -1
- package/dist/chunks/jixieBidAdapter.js +1 -1
- package/dist/chunks/justIdSystem.metadata.js +1 -1
- package/dist/chunks/justpremiumBidAdapter.js +1 -1
- package/dist/chunks/justpremiumBidAdapter.metadata.js +1 -1
- package/dist/chunks/jwplayerBidAdapter.metadata.js +1 -1
- package/dist/chunks/jwplayerRtdProvider.js +1 -1
- package/dist/chunks/jwplayerVideoProvider.js +1 -1
- package/dist/chunks/kargoBidAdapter.js +1 -1
- package/dist/chunks/kargoBidAdapter.metadata.js +1 -1
- package/dist/chunks/kimberliteBidAdapter.js +1 -1
- package/dist/chunks/kubientBidAdapter.js +1 -1
- package/dist/chunks/kubientBidAdapter.metadata.js +1 -1
- package/dist/chunks/kueezRtbBidAdapter.metadata.js +1 -1
- package/dist/chunks/lassoBidAdapter.js +1 -1
- package/dist/chunks/lifestreetBidAdapter.js +1 -1
- package/dist/chunks/limelightDigitalBidAdapter.metadata.js +1 -1
- package/dist/chunks/liveIntentId.js +1 -1
- package/dist/chunks/liveIntentIdSystem.metadata.js +1 -1
- package/dist/chunks/liveIntentRtdProvider.metadata.js +1 -1
- package/dist/chunks/livewrappedBidAdapter.metadata.js +1 -1
- package/dist/chunks/logicadBidAdapter.js +1 -1
- package/dist/chunks/loopmeBidAdapter.metadata.js +1 -1
- package/dist/chunks/lotamePanoramaIdSystem.metadata.js +1 -1
- package/dist/chunks/luceadBidAdapter.js +1 -1
- package/dist/chunks/luceadBidAdapter.metadata.js +1 -1
- package/dist/chunks/luponmediaBidAdapter.metadata.js +1 -1
- package/dist/chunks/mabidderBidAdapter.js +1 -1
- package/dist/chunks/madsenseBidAdapter.js +1 -1
- package/dist/chunks/madvertiseBidAdapter.metadata.js +1 -1
- package/dist/chunks/magniteAnalyticsAdapter.js +1 -1
- package/dist/chunks/malltvAnalyticsAdapter.js +1 -1
- package/dist/chunks/marsmediaBidAdapter.js +1 -1
- package/dist/chunks/marsmediaBidAdapter.metadata.js +1 -1
- package/dist/chunks/mediaConsortiumBidAdapter.metadata.js +1 -1
- package/dist/chunks/mediaforceBidAdapter.metadata.js +1 -1
- package/dist/chunks/mediafuseBidAdapter.js +1 -1
- package/dist/chunks/mediafuseBidAdapter.metadata.js +1 -1
- package/dist/chunks/mediagoBidAdapter.metadata.js +1 -1
- package/dist/chunks/mediakeysBidAdapter.metadata.js +1 -1
- package/dist/chunks/medianetBidAdapter.js +1 -1
- package/dist/chunks/medianetBidAdapter.metadata.js +1 -1
- package/dist/chunks/medianetUtils.js +1 -1
- package/dist/chunks/mediasquareBidAdapter.js +1 -1
- package/dist/chunks/mediasquareBidAdapter.metadata.js +1 -1
- package/dist/chunks/mgidBidAdapter.js +1 -1
- package/dist/chunks/mgidBidAdapter.metadata.js +1 -1
- package/dist/chunks/mgidRtdProvider.metadata.js +1 -1
- package/dist/chunks/mgidXBidAdapter.metadata.js +1 -1
- package/dist/chunks/minutemediaBidAdapter.metadata.js +1 -1
- package/dist/chunks/missenaBidAdapter.js +1 -1
- package/dist/chunks/missenaBidAdapter.metadata.js +1 -1
- package/dist/chunks/mobianRtdProvider.metadata.js +1 -1
- package/dist/chunks/mobilefuseBidAdapter.js +1 -1
- package/dist/chunks/mobilefuseBidAdapter.metadata.js +1 -1
- package/dist/chunks/mobkoiBidAdapter.metadata.js +1 -1
- package/dist/chunks/mobkoiIdSystem.metadata.js +1 -1
- package/dist/chunks/nativeryBidAdapter.metadata.js +1 -1
- package/dist/chunks/nativoBidAdapter.metadata.js +1 -1
- package/dist/chunks/newspassidBidAdapter.metadata.js +1 -1
- package/dist/chunks/nextMillenniumBidAdapter.js +1 -1
- package/dist/chunks/nextMillenniumBidAdapter.metadata.js +1 -1
- package/dist/chunks/nextrollBidAdapter.metadata.js +1 -1
- package/dist/chunks/nexx360BidAdapter.metadata.js +1 -1
- package/dist/chunks/nexx360Utils.js +1 -1
- package/dist/chunks/nobidAnalyticsAdapter.js +1 -1
- package/dist/chunks/nobidBidAdapter.js +1 -1
- package/dist/chunks/nobidBidAdapter.metadata.js +1 -1
- package/dist/chunks/nodalsAiRtdProvider.js +1 -1
- package/dist/chunks/nodalsAiRtdProvider.metadata.js +1 -1
- package/dist/chunks/novatiqIdSystem.metadata.js +1 -1
- package/dist/chunks/oguryBidAdapter.js +1 -1
- package/dist/chunks/oguryBidAdapter.metadata.js +1 -1
- package/dist/chunks/omsBidAdapter.metadata.js +1 -1
- package/dist/chunks/onetagBidAdapter.js +1 -1
- package/dist/chunks/onetagBidAdapter.metadata.js +1 -1
- package/dist/chunks/ooloAnalyticsAdapter.js +1 -1
- package/dist/chunks/openwebBidAdapter.metadata.js +1 -1
- package/dist/chunks/openxBidAdapter.js +1 -1
- package/dist/chunks/openxBidAdapter.metadata.js +1 -1
- package/dist/chunks/operaadsBidAdapter.metadata.js +1 -1
- package/dist/chunks/optidigitalBidAdapter.js +1 -1
- package/dist/chunks/optidigitalBidAdapter.metadata.js +1 -1
- package/dist/chunks/optoutBidAdapter.metadata.js +1 -1
- package/dist/chunks/orbidderBidAdapter.js +1 -1
- package/dist/chunks/orbidderBidAdapter.metadata.js +1 -1
- package/dist/chunks/outbrainBidAdapter.js +1 -1
- package/dist/chunks/outbrainBidAdapter.metadata.js +1 -1
- package/dist/chunks/ozoneBidAdapter.metadata.js +1 -1
- package/dist/chunks/pairIdSystem.metadata.js +1 -1
- package/dist/chunks/performaxBidAdapter.metadata.js +1 -1
- package/dist/chunks/pgamsspBidAdapter.metadata.js +1 -1
- package/dist/chunks/pixfutureBidAdapter.js +1 -1
- package/dist/chunks/pixfutureBidAdapter.metadata.js +1 -1
- package/dist/chunks/playdigoBidAdapter.metadata.js +1 -1
- package/dist/chunks/prebid-core.metadata.js +1 -1
- package/dist/chunks/precisoBidAdapter.metadata.js +1 -1
- package/dist/chunks/prismaBidAdapter.metadata.js +1 -1
- package/dist/chunks/programmaticXBidAdapter.metadata.js +1 -1
- package/dist/chunks/proxistoreBidAdapter.metadata.js +1 -1
- package/dist/chunks/publinkIdSystem.js +1 -1
- package/dist/chunks/publinkIdSystem.metadata.js +1 -1
- package/dist/chunks/pubmaticAnalyticsAdapter.js +1 -1
- package/dist/chunks/pubmaticBidAdapter.js +1 -1
- package/dist/chunks/pubmaticBidAdapter.metadata.js +1 -1
- package/dist/chunks/pubmaticIdSystem.metadata.js +1 -1
- package/dist/chunks/pubwiseAnalyticsAdapter.js +1 -1
- package/dist/chunks/pubxaiAnalyticsAdapter.js +1 -1
- package/dist/chunks/pulsepointBidAdapter.js +1 -1
- package/dist/chunks/pulsepointBidAdapter.metadata.js +1 -1
- package/dist/chunks/pwbidBidAdapter.metadata.js +1 -1
- package/dist/chunks/pxyzBidAdapter.js +1 -1
- package/dist/chunks/qtBidAdapter.metadata.js +1 -1
- package/dist/chunks/quantcastBidAdapter.js +1 -1
- package/dist/chunks/quantcastBidAdapter.metadata.js +1 -1
- package/dist/chunks/quantcastIdSystem.metadata.js +1 -1
- package/dist/chunks/r2b2BidAdapter.metadata.js +1 -1
- package/dist/chunks/raynRtdProvider.metadata.js +1 -1
- package/dist/chunks/readpeakBidAdapter.js +1 -1
- package/dist/chunks/readpeakBidAdapter.metadata.js +1 -1
- package/dist/chunks/relaidoBidAdapter.js +1 -1
- package/dist/chunks/relayBidAdapter.metadata.js +1 -1
- package/dist/chunks/relevantdigitalBidAdapter.metadata.js +1 -1
- package/dist/chunks/resetdigitalBidAdapter.metadata.js +1 -1
- package/dist/chunks/responsiveAdsBidAdapter.metadata.js +1 -1
- package/dist/chunks/retailspotBidAdapter.js +1 -1
- package/dist/chunks/retailspotBidAdapter.metadata.js +1 -1
- package/dist/chunks/revcontentBidAdapter.metadata.js +1 -1
- package/dist/chunks/rhythmoneBidAdapter.js +1 -1
- package/dist/chunks/rhythmoneBidAdapter.metadata.js +1 -1
- package/dist/chunks/richaudienceBidAdapter.metadata.js +1 -1
- package/dist/chunks/riseBidAdapter.metadata.js +1 -1
- package/dist/chunks/riseUtils.js +1 -1
- package/dist/chunks/rixengineBidAdapter.metadata.js +1 -1
- package/dist/chunks/rtbhouseBidAdapter.metadata.js +1 -1
- package/dist/chunks/rubiconBidAdapter.js +1 -1
- package/dist/chunks/rubiconBidAdapter.metadata.js +1 -1
- package/dist/chunks/rumbleBidAdapter.js +1 -0
- package/dist/chunks/rumbleBidAdapter.metadata.js +1 -0
- package/dist/chunks/scatteredBidAdapter.metadata.js +1 -1
- package/dist/chunks/seedingAllianceBidAdapter.js +1 -1
- package/dist/chunks/seedingAllianceBidAdapter.metadata.js +1 -1
- package/dist/chunks/seedtagBidAdapter.js +1 -1
- package/dist/chunks/seedtagBidAdapter.metadata.js +1 -1
- package/dist/chunks/semantiqRtdProvider.metadata.js +1 -1
- package/dist/chunks/setupadBidAdapter.metadata.js +1 -1
- package/dist/chunks/sevioBidAdapter.js +1 -0
- package/dist/chunks/sevioBidAdapter.metadata.js +1 -0
- package/dist/chunks/sharedIdSystem.metadata.js +1 -1
- package/dist/chunks/sharethroughAnalyticsAdapter.js +1 -1
- package/dist/chunks/sharethroughBidAdapter.js +1 -1
- package/dist/chunks/sharethroughBidAdapter.metadata.js +1 -1
- package/dist/chunks/showheroes-bsBidAdapter.js +1 -1
- package/dist/chunks/showheroes-bsBidAdapter.metadata.js +1 -1
- package/dist/chunks/silvermobBidAdapter.metadata.js +1 -1
- package/dist/chunks/sirdataRtdProvider.metadata.js +1 -1
- package/dist/chunks/slimcutBidAdapter.metadata.js +1 -1
- package/dist/chunks/smaatoBidAdapter.js +1 -1
- package/dist/chunks/smaatoBidAdapter.metadata.js +1 -1
- package/dist/chunks/smartadserverBidAdapter.js +1 -1
- package/dist/chunks/smartadserverBidAdapter.metadata.js +1 -1
- package/dist/chunks/smartxBidAdapter.js +1 -1
- package/dist/chunks/smartxBidAdapter.metadata.js +1 -1
- package/dist/chunks/smartyadsBidAdapter.metadata.js +1 -1
- package/dist/chunks/smilewantedBidAdapter.js +1 -1
- package/dist/chunks/smilewantedBidAdapter.metadata.js +1 -1
- package/dist/chunks/snigelBidAdapter.js +1 -1
- package/dist/chunks/snigelBidAdapter.metadata.js +1 -1
- package/dist/chunks/sonaradsBidAdapter.js +1 -1
- package/dist/chunks/sonaradsBidAdapter.metadata.js +1 -1
- package/dist/chunks/sonobiBidAdapter.js +1 -1
- package/dist/chunks/sonobiBidAdapter.metadata.js +1 -1
- package/dist/chunks/sovrnBidAdapter.js +1 -1
- package/dist/chunks/sovrnBidAdapter.metadata.js +1 -1
- package/dist/chunks/sparteoBidAdapter.js +1 -1
- package/dist/chunks/sparteoBidAdapter.metadata.js +1 -1
- package/dist/chunks/ssmasBidAdapter.metadata.js +1 -1
- package/dist/chunks/sspBCBidAdapter.js +1 -1
- package/dist/chunks/sspBCBidAdapter.metadata.js +1 -1
- package/dist/chunks/stackadaptBidAdapter.metadata.js +1 -1
- package/dist/chunks/startioBidAdapter.metadata.js +1 -1
- package/dist/chunks/stroeerCoreBidAdapter.metadata.js +1 -1
- package/dist/chunks/stvBidAdapter.js +1 -1
- package/dist/chunks/stvBidAdapter.metadata.js +1 -1
- package/dist/chunks/sublimeBidAdapter.js +1 -1
- package/dist/chunks/sublimeBidAdapter.metadata.js +1 -1
- package/dist/chunks/taboolaBidAdapter.js +1 -1
- package/dist/chunks/taboolaBidAdapter.metadata.js +1 -1
- package/dist/chunks/taboolaIdSystem.metadata.js +1 -1
- package/dist/chunks/tappxBidAdapter.js +1 -1
- package/dist/chunks/tappxBidAdapter.metadata.js +1 -1
- package/dist/chunks/targetVideoBidAdapter.js +1 -1
- package/dist/chunks/targetVideoBidAdapter.metadata.js +1 -1
- package/dist/chunks/teadsBidAdapter.js +1 -1
- package/dist/chunks/teadsBidAdapter.metadata.js +1 -1
- package/dist/chunks/teadsIdSystem.metadata.js +1 -1
- package/dist/chunks/tealBidAdapter.metadata.js +1 -1
- package/dist/chunks/terceptAnalyticsAdapter.js +1 -1
- package/dist/chunks/themoneytizerBidAdapter.js +1 -1
- package/dist/chunks/themoneytizerBidAdapter.metadata.js +1 -1
- package/dist/chunks/tncIdSystem.metadata.js +1 -1
- package/dist/chunks/topicsFpdModule.metadata.js +1 -1
- package/dist/chunks/trionBidAdapter.js +1 -1
- package/dist/chunks/tripleliftBidAdapter.js +1 -1
- package/dist/chunks/tripleliftBidAdapter.metadata.js +1 -1
- package/dist/chunks/ttdBidAdapter.js +1 -1
- package/dist/chunks/ttdBidAdapter.metadata.js +1 -1
- package/dist/chunks/twistDigitalBidAdapter.metadata.js +1 -1
- package/dist/chunks/ucfunnelAnalyticsAdapter.js +1 -1
- package/dist/chunks/uid2IdSystem.js +1 -1
- package/dist/chunks/underdogmediaBidAdapter.js +1 -1
- package/dist/chunks/underdogmediaBidAdapter.metadata.js +1 -1
- package/dist/chunks/undertoneBidAdapter.js +1 -1
- package/dist/chunks/undertoneBidAdapter.metadata.js +1 -1
- package/dist/chunks/unifiedIdSystem.metadata.js +1 -1
- package/dist/chunks/unrulyBidAdapter.js +1 -1
- package/dist/chunks/unrulyBidAdapter.metadata.js +1 -1
- package/dist/chunks/userId.js +1 -1
- package/dist/chunks/userId.metadata.js +1 -1
- package/dist/chunks/validationFpdModule.metadata.js +1 -1
- package/dist/chunks/vidazooBidAdapter.metadata.js +1 -1
- package/dist/chunks/vidazooUtils.js +1 -1
- package/dist/chunks/videobyteBidAdapter.js +1 -1
- package/dist/chunks/vidoomyBidAdapter.metadata.js +1 -1
- package/dist/chunks/viewdeosDXBidAdapter.metadata.js +1 -1
- package/dist/chunks/viouslyBidAdapter.metadata.js +1 -1
- package/dist/chunks/visxBidAdapter.js +1 -1
- package/dist/chunks/visxBidAdapter.metadata.js +1 -1
- package/dist/chunks/vlybyBidAdapter.metadata.js +1 -1
- package/dist/chunks/voxBidAdapter.metadata.js +1 -1
- package/dist/chunks/vrtcalBidAdapter.metadata.js +1 -1
- package/dist/chunks/vuukleBidAdapter.js +1 -1
- package/dist/chunks/vuukleBidAdapter.metadata.js +1 -1
- package/dist/chunks/weboramaRtdProvider.js +1 -1
- package/dist/chunks/weboramaRtdProvider.metadata.js +1 -1
- package/dist/chunks/welectBidAdapter.metadata.js +1 -1
- package/dist/chunks/widespaceBidAdapter.js +1 -1
- package/dist/chunks/winrBidAdapter.js +1 -1
- package/dist/chunks/yahooAdsBidAdapter.js +1 -1
- package/dist/chunks/yahooAdsBidAdapter.metadata.js +1 -1
- package/dist/chunks/yandexBidAdapter.js +1 -1
- package/dist/chunks/yieldlabBidAdapter.metadata.js +1 -1
- package/dist/chunks/yieldliftBidAdapter.metadata.js +1 -1
- package/dist/chunks/yieldloveBidAdapter.metadata.js +1 -1
- package/dist/chunks/yieldmoBidAdapter.js +1 -1
- package/dist/chunks/yieldmoBidAdapter.metadata.js +1 -1
- package/dist/chunks/yieldoneAnalyticsAdapter.js +1 -1
- package/dist/chunks/zeotapIdPlusIdSystem.metadata.js +1 -1
- package/dist/chunks/zeta_globalBidAdapter.metadata.js +1 -1
- package/dist/chunks/zeta_global_sspBidAdapter.metadata.js +1 -1
- package/dist/not-for-prod/prebid.js +443 -438
- package/dist/src/creative/renderers/display/renderer.js +3 -4
- package/dist/src/creative/renderers/display/renderer.js.map +1 -1
- package/dist/src/libraries/adagioUtils/adagioUtils.js +1 -1
- package/dist/src/libraries/analyticsAdapter/AnalyticsAdapter.js.map +1 -1
- package/dist/src/libraries/appnexusUtils/anKeywords.js +15 -1
- package/dist/src/libraries/appnexusUtils/anKeywords.js.map +1 -1
- package/dist/src/libraries/consentManagement/cmUtils.js.map +1 -1
- package/dist/src/libraries/creative-renderer-display/renderer.d.ts +1 -1
- package/dist/src/libraries/creative-renderer-display/renderer.js +1 -1
- package/dist/src/libraries/creative-renderer-display/renderer.js.map +1 -1
- package/dist/src/libraries/cryptoUtils/wallets.js +14 -0
- package/dist/src/libraries/cryptoUtils/wallets.js.map +1 -0
- package/dist/src/libraries/dspxUtils/bidderUtils.js.map +1 -1
- package/dist/src/libraries/impUtils.js +36 -0
- package/dist/src/libraries/impUtils.js.map +1 -0
- package/dist/src/libraries/liveIntentId/externalIdSystem.js +1 -1
- package/dist/src/libraries/liveIntentId/idSystem.js +1 -1
- package/dist/src/libraries/medianetUtils/constants.js +1 -1
- package/dist/src/libraries/nexx360Utils/index.js +1 -1
- package/dist/src/libraries/nexx360Utils/index.js.map +1 -1
- package/dist/src/libraries/ortbConverter/converter.js.map +1 -1
- package/dist/src/libraries/riseUtils/index.js +1 -1
- package/dist/src/libraries/vidazooUtils/bidderUtils.js +1 -1
- package/dist/src/libraries/video/constants/events.js.map +1 -1
- package/dist/src/metadata/modules/33acrossBidAdapter.js +1 -1
- package/dist/src/metadata/modules/33acrossIdSystem.js +1 -1
- package/dist/src/metadata/modules/acuityadsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adagioBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adagioRtdProvider.js +1 -1
- package/dist/src/metadata/modules/addefendBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adfBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adfusionBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adheseBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adkernelAdnBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adkernelBidAdapter.js +1 -1
- package/dist/src/metadata/modules/admaticBidAdapter.js +1 -1
- package/dist/src/metadata/modules/admixerBidAdapter.js +1 -1
- package/dist/src/metadata/modules/admixerIdSystem.js +1 -1
- package/dist/src/metadata/modules/adnowBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adnuntiusBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adnuntiusRtdProvider.js +1 -1
- package/dist/src/metadata/modules/adotBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adponeBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adqueryBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adqueryIdSystem.js +1 -1
- package/dist/src/metadata/modules/adrinoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/ads_interactiveBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adtargetBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adtelligentBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adtelligentIdSystem.js +1 -1
- package/dist/src/metadata/modules/aduptechBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adyoulikeBidAdapter.js +1 -1
- package/dist/src/metadata/modules/aidemBidAdapter.js +1 -1
- package/dist/src/metadata/modules/airgridRtdProvider.js +1 -1
- package/dist/src/metadata/modules/alkimiBidAdapter.js +1 -1
- package/dist/src/metadata/modules/ampliffyBidAdapter.js +1 -1
- package/dist/src/metadata/modules/amxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/amxIdSystem.js +1 -1
- package/dist/src/metadata/modules/aniviewBidAdapter.js +1 -1
- package/dist/src/metadata/modules/anonymisedRtdProvider.js +1 -1
- package/dist/src/metadata/modules/appierBidAdapter.js +1 -1
- package/dist/src/metadata/modules/appnexusBidAdapter.js +1 -1
- package/dist/src/metadata/modules/appushBidAdapter.js +1 -1
- package/dist/src/metadata/modules/apstreamBidAdapter.js +1 -1
- package/dist/src/metadata/modules/audiencerunBidAdapter.js +1 -1
- package/dist/src/metadata/modules/axisBidAdapter.js +1 -1
- package/dist/src/metadata/modules/azerionedgeRtdProvider.js +1 -1
- package/dist/src/metadata/modules/beopBidAdapter.js +1 -1
- package/dist/src/metadata/modules/betweenBidAdapter.js +1 -1
- package/dist/src/metadata/modules/bidmaticBidAdapter.js +1 -1
- package/dist/src/metadata/modules/bidtheatreBidAdapter.js +1 -1
- package/dist/src/metadata/modules/bliinkBidAdapter.js +1 -1
- package/dist/src/metadata/modules/blockthroughBidAdapter.js +1 -1
- package/dist/src/metadata/modules/blueBidAdapter.js +1 -1
- package/dist/src/metadata/modules/bmsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/boldwinBidAdapter.js +1 -1
- package/dist/src/metadata/modules/bridBidAdapter.js +1 -1
- package/dist/src/metadata/modules/browsiBidAdapter.js +1 -1
- package/dist/src/metadata/modules/bucksenseBidAdapter.js +1 -1
- package/dist/src/metadata/modules/carodaBidAdapter.js +1 -1
- package/dist/src/metadata/modules/categoryTranslation.js +1 -1
- package/dist/src/metadata/modules/ccxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/ceeIdSystem.js +1 -1
- package/dist/src/metadata/modules/chromeAiRtdProvider.js +1 -1
- package/dist/src/metadata/modules/compassBidAdapter.js +1 -1
- package/dist/src/metadata/modules/conceptxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/connatixBidAdapter.js +1 -1
- package/dist/src/metadata/modules/connectIdSystem.js +1 -1
- package/dist/src/metadata/modules/connectadBidAdapter.js +1 -1
- package/dist/src/metadata/modules/contentexchangeBidAdapter.js +1 -1
- package/dist/src/metadata/modules/conversantBidAdapter.js +1 -1
- package/dist/src/metadata/modules/copper6sspBidAdapter.js +1 -1
- package/dist/src/metadata/modules/cpmstarBidAdapter.js +1 -1
- package/dist/src/metadata/modules/criteoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/criteoIdSystem.js +1 -1
- package/dist/src/metadata/modules/cwireBidAdapter.js +1 -1
- package/dist/src/metadata/modules/czechAdIdSystem.js +1 -1
- package/dist/src/metadata/modules/dailymotionBidAdapter.js +1 -1
- package/dist/src/metadata/modules/debugging.js +1 -1
- package/dist/src/metadata/modules/deepintentBidAdapter.js +1 -1
- package/dist/src/metadata/modules/deltaprojectsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/dianomiBidAdapter.js +1 -1
- package/dist/src/metadata/modules/digitalMatterBidAdapter.js +1 -1
- package/dist/src/metadata/modules/distroscaleBidAdapter.js +1 -1
- package/dist/src/metadata/modules/docereeAdManagerBidAdapter.js +1 -1
- package/dist/src/metadata/modules/docereeBidAdapter.js +1 -1
- package/dist/src/metadata/modules/dspxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/e_volutionBidAdapter.js +1 -1
- package/dist/src/metadata/modules/edge226BidAdapter.js +1 -1
- package/dist/src/metadata/modules/equativBidAdapter.js +1 -1
- package/dist/src/metadata/modules/eskimiBidAdapter.js +1 -1
- package/dist/src/metadata/modules/etargetBidAdapter.js +1 -1
- package/dist/src/metadata/modules/euidIdSystem.js +1 -1
- package/dist/src/metadata/modules/exadsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/feedadBidAdapter.js +1 -1
- package/dist/src/metadata/modules/fwsspBidAdapter.js +1 -1
- package/dist/src/metadata/modules/gamoshiBidAdapter.js +1 -1
- package/dist/src/metadata/modules/glomexBidAdapter.js +1 -1
- package/dist/src/metadata/modules/goldbachBidAdapter.js +1 -1
- package/dist/src/metadata/modules/greenbidsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/gridBidAdapter.js +1 -1
- package/dist/src/metadata/modules/gumgumBidAdapter.js +1 -1
- package/dist/src/metadata/modules/hadronIdSystem.js +1 -1
- package/dist/src/metadata/modules/hadronRtdProvider.js +1 -1
- package/dist/src/metadata/modules/holidBidAdapter.js +1 -1
- package/dist/src/metadata/modules/hybridBidAdapter.js +1 -1
- package/dist/src/metadata/modules/id5IdSystem.js +1 -1
- package/dist/src/metadata/modules/identityLinkIdSystem.js +1 -1
- package/dist/src/metadata/modules/illuminBidAdapter.js +1 -1
- package/dist/src/metadata/modules/impactifyBidAdapter.js +1 -1
- package/dist/src/metadata/modules/improvedigitalBidAdapter.js +1 -1
- package/dist/src/metadata/modules/inmobiBidAdapter.js +1 -1
- package/dist/src/metadata/modules/innityBidAdapter.js +1 -1
- package/dist/src/metadata/modules/insticatorBidAdapter.js +1 -1
- package/dist/src/metadata/modules/intentIqIdSystem.js +1 -1
- package/dist/src/metadata/modules/invibesBidAdapter.js +1 -1
- package/dist/src/metadata/modules/ipromBidAdapter.js +1 -1
- package/dist/src/metadata/modules/ixBidAdapter.js +1 -1
- package/dist/src/metadata/modules/justIdSystem.js +1 -1
- package/dist/src/metadata/modules/justpremiumBidAdapter.js +1 -1
- package/dist/src/metadata/modules/jwplayerBidAdapter.js +1 -1
- package/dist/src/metadata/modules/kargoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/kubientBidAdapter.js +1 -1
- package/dist/src/metadata/modules/kueezRtbBidAdapter.js +1 -1
- package/dist/src/metadata/modules/limelightDigitalBidAdapter.js +1 -1
- package/dist/src/metadata/modules/liveIntentIdSystem.js +1 -1
- package/dist/src/metadata/modules/liveIntentRtdProvider.js +1 -1
- package/dist/src/metadata/modules/livewrappedBidAdapter.js +1 -1
- package/dist/src/metadata/modules/loopmeBidAdapter.js +1 -1
- package/dist/src/metadata/modules/lotamePanoramaIdSystem.js +1 -1
- package/dist/src/metadata/modules/luceadBidAdapter.js +1 -1
- package/dist/src/metadata/modules/luponmediaBidAdapter.js +1 -1
- package/dist/src/metadata/modules/madvertiseBidAdapter.js +1 -1
- package/dist/src/metadata/modules/marsmediaBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mediaConsortiumBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mediaforceBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mediafuseBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mediagoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mediakeysBidAdapter.js +1 -1
- package/dist/src/metadata/modules/medianetBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mediasquareBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mgidBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mgidRtdProvider.js +1 -1
- package/dist/src/metadata/modules/mgidXBidAdapter.js +1 -1
- package/dist/src/metadata/modules/minutemediaBidAdapter.js +1 -1
- package/dist/src/metadata/modules/missenaBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mobianRtdProvider.js +1 -1
- package/dist/src/metadata/modules/mobilefuseBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mobkoiBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mobkoiIdSystem.js +1 -1
- package/dist/src/metadata/modules/nativeryBidAdapter.js +1 -1
- package/dist/src/metadata/modules/nativoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/newspassidBidAdapter.js +1 -1
- package/dist/src/metadata/modules/nextMillenniumBidAdapter.js +1 -1
- package/dist/src/metadata/modules/nextrollBidAdapter.js +1 -1
- package/dist/src/metadata/modules/nexx360BidAdapter.js +1 -1
- package/dist/src/metadata/modules/nobidBidAdapter.js +1 -1
- package/dist/src/metadata/modules/nodalsAiRtdProvider.js +1 -1
- package/dist/src/metadata/modules/novatiqIdSystem.js +1 -1
- package/dist/src/metadata/modules/oguryBidAdapter.js +1 -1
- package/dist/src/metadata/modules/omsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/onetagBidAdapter.js +1 -1
- package/dist/src/metadata/modules/openwebBidAdapter.js +1 -1
- package/dist/src/metadata/modules/openxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/operaadsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/optidigitalBidAdapter.js +1 -1
- package/dist/src/metadata/modules/optoutBidAdapter.js +1 -1
- package/dist/src/metadata/modules/orbidderBidAdapter.js +1 -1
- package/dist/src/metadata/modules/outbrainBidAdapter.js +1 -1
- package/dist/src/metadata/modules/ozoneBidAdapter.js +1 -1
- package/dist/src/metadata/modules/pairIdSystem.js +1 -1
- package/dist/src/metadata/modules/performaxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/pgamsspBidAdapter.js +1 -1
- package/dist/src/metadata/modules/pixfutureBidAdapter.js +1 -1
- package/dist/src/metadata/modules/playdigoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/prebid-core.js +1 -1
- package/dist/src/metadata/modules/precisoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/prismaBidAdapter.js +1 -1
- package/dist/src/metadata/modules/programmaticXBidAdapter.js +1 -1
- package/dist/src/metadata/modules/proxistoreBidAdapter.js +1 -1
- package/dist/src/metadata/modules/publinkIdSystem.js +1 -1
- package/dist/src/metadata/modules/pubmaticBidAdapter.js +1 -1
- package/dist/src/metadata/modules/pubmaticIdSystem.js +1 -1
- package/dist/src/metadata/modules/pulsepointBidAdapter.js +1 -1
- package/dist/src/metadata/modules/pwbidBidAdapter.js +1 -1
- package/dist/src/metadata/modules/qtBidAdapter.js +1 -1
- package/dist/src/metadata/modules/quantcastBidAdapter.js +1 -1
- package/dist/src/metadata/modules/quantcastIdSystem.js +1 -1
- package/dist/src/metadata/modules/r2b2BidAdapter.js +1 -1
- package/dist/src/metadata/modules/raynRtdProvider.js +1 -1
- package/dist/src/metadata/modules/readpeakBidAdapter.js +1 -1
- package/dist/src/metadata/modules/relayBidAdapter.js +1 -1
- package/dist/src/metadata/modules/relevantdigitalBidAdapter.js +1 -1
- package/dist/src/metadata/modules/resetdigitalBidAdapter.js +1 -1
- package/dist/src/metadata/modules/responsiveAdsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/retailspotBidAdapter.js +1 -1
- package/dist/src/metadata/modules/revcontentBidAdapter.js +1 -1
- package/dist/src/metadata/modules/rhythmoneBidAdapter.js +1 -1
- package/dist/src/metadata/modules/richaudienceBidAdapter.js +1 -1
- package/dist/src/metadata/modules/riseBidAdapter.js +1 -1
- package/dist/src/metadata/modules/rixengineBidAdapter.js +1 -1
- package/dist/src/metadata/modules/rtbhouseBidAdapter.js +1 -1
- package/dist/src/metadata/modules/rubiconBidAdapter.js +1 -1
- package/dist/src/metadata/modules/rumbleBidAdapter.js +2 -0
- package/dist/src/metadata/modules/scatteredBidAdapter.js +1 -1
- package/dist/src/metadata/modules/seedingAllianceBidAdapter.js +1 -1
- package/dist/src/metadata/modules/seedtagBidAdapter.js +1 -1
- package/dist/src/metadata/modules/semantiqRtdProvider.js +1 -1
- package/dist/src/metadata/modules/setupadBidAdapter.js +1 -1
- package/dist/src/metadata/modules/sevioBidAdapter.js +2 -0
- package/dist/src/metadata/modules/sharedIdSystem.js +1 -1
- package/dist/src/metadata/modules/sharethroughBidAdapter.js +1 -1
- package/dist/src/metadata/modules/showheroes-bsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/silvermobBidAdapter.js +1 -1
- package/dist/src/metadata/modules/sirdataRtdProvider.js +1 -1
- package/dist/src/metadata/modules/slimcutBidAdapter.js +1 -1
- package/dist/src/metadata/modules/smaatoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/smartadserverBidAdapter.js +1 -1
- package/dist/src/metadata/modules/smartxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/smartyadsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/smilewantedBidAdapter.js +1 -1
- package/dist/src/metadata/modules/snigelBidAdapter.js +1 -1
- package/dist/src/metadata/modules/sonaradsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/sonobiBidAdapter.js +1 -1
- package/dist/src/metadata/modules/sovrnBidAdapter.js +1 -1
- package/dist/src/metadata/modules/sparteoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/ssmasBidAdapter.js +1 -1
- package/dist/src/metadata/modules/sspBCBidAdapter.js +1 -1
- package/dist/src/metadata/modules/stackadaptBidAdapter.js +1 -1
- package/dist/src/metadata/modules/startioBidAdapter.js +1 -1
- package/dist/src/metadata/modules/stroeerCoreBidAdapter.js +1 -1
- package/dist/src/metadata/modules/stvBidAdapter.js +1 -1
- package/dist/src/metadata/modules/sublimeBidAdapter.js +1 -1
- package/dist/src/metadata/modules/taboolaBidAdapter.js +1 -1
- package/dist/src/metadata/modules/taboolaIdSystem.js +1 -1
- package/dist/src/metadata/modules/tappxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/targetVideoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/teadsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/teadsIdSystem.js +1 -1
- package/dist/src/metadata/modules/tealBidAdapter.js +1 -1
- package/dist/src/metadata/modules/themoneytizerBidAdapter.js +1 -1
- package/dist/src/metadata/modules/tncIdSystem.js +1 -1
- package/dist/src/metadata/modules/topicsFpdModule.js +1 -1
- package/dist/src/metadata/modules/tripleliftBidAdapter.js +1 -1
- package/dist/src/metadata/modules/ttdBidAdapter.js +1 -1
- package/dist/src/metadata/modules/twistDigitalBidAdapter.js +1 -1
- package/dist/src/metadata/modules/underdogmediaBidAdapter.js +1 -1
- package/dist/src/metadata/modules/undertoneBidAdapter.js +1 -1
- package/dist/src/metadata/modules/unifiedIdSystem.js +1 -1
- package/dist/src/metadata/modules/unrulyBidAdapter.js +1 -1
- package/dist/src/metadata/modules/userId.js +1 -1
- package/dist/src/metadata/modules/validationFpdModule.js +1 -1
- package/dist/src/metadata/modules/vidazooBidAdapter.js +1 -1
- package/dist/src/metadata/modules/vidoomyBidAdapter.js +1 -1
- package/dist/src/metadata/modules/viewdeosDXBidAdapter.js +1 -1
- package/dist/src/metadata/modules/viouslyBidAdapter.js +1 -1
- package/dist/src/metadata/modules/visxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/vlybyBidAdapter.js +1 -1
- package/dist/src/metadata/modules/voxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/vrtcalBidAdapter.js +1 -1
- package/dist/src/metadata/modules/vuukleBidAdapter.js +1 -1
- package/dist/src/metadata/modules/weboramaRtdProvider.js +1 -1
- package/dist/src/metadata/modules/welectBidAdapter.js +1 -1
- package/dist/src/metadata/modules/yahooAdsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/yieldlabBidAdapter.js +1 -1
- package/dist/src/metadata/modules/yieldliftBidAdapter.js +1 -1
- package/dist/src/metadata/modules/yieldloveBidAdapter.js +1 -1
- package/dist/src/metadata/modules/yieldmoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/zeotapIdPlusIdSystem.js +1 -1
- package/dist/src/metadata/modules/zeta_globalBidAdapter.js +1 -1
- package/dist/src/metadata/modules/zeta_global_sspBidAdapter.js +1 -1
- package/dist/src/modules/1plusXRtdProvider.js +6 -2
- package/dist/src/modules/1plusXRtdProvider.js.map +1 -1
- package/dist/src/modules/33acrossAnalyticsAdapter.js +1 -1
- package/dist/src/modules/33acrossBidAdapter.js +1 -1
- package/dist/src/modules/33acrossIdSystem.js +1 -1
- package/dist/src/modules/adWMGBidAdapter.js.map +1 -1
- package/dist/src/modules/adagioAnalyticsAdapter.js +1 -1
- package/dist/src/modules/adagioBidAdapter.js +1 -1
- package/dist/src/modules/addefendBidAdapter.js +1 -1
- package/dist/src/modules/adgenerationBidAdapter.js +1 -1
- package/dist/src/modules/adlooxRtdProvider.js +1 -1
- package/dist/src/modules/admixerBidAdapter.js +5 -4
- package/dist/src/modules/admixerBidAdapter.js.map +1 -1
- package/dist/src/modules/adqueryBidAdapter.js +1 -1
- package/dist/src/modules/adrelevantisBidAdapter.js +1 -1
- package/dist/src/modules/adspiritBidAdapter.js.map +1 -1
- package/dist/src/modules/adstirBidAdapter.js +1 -1
- package/dist/src/modules/adtrgtmeBidAdapter.js +1 -1
- package/dist/src/modules/adtrgtmeBidAdapter.js.map +1 -1
- package/dist/src/modules/advertisingBidAdapter.js +2 -2
- package/dist/src/modules/adxcgAnalyticsAdapter.js +1 -1
- package/dist/src/modules/adxcgBidAdapter.js +4 -39
- package/dist/src/modules/adxcgBidAdapter.js.map +1 -1
- package/dist/src/modules/adyoulikeBidAdapter.js +1 -1
- package/dist/src/modules/agmaAnalyticsAdapter.js +1 -1
- package/dist/src/modules/ajaBidAdapter.js +1 -1
- package/dist/src/modules/amxBidAdapter.js +2 -2
- package/dist/src/modules/amxBidAdapter.js.map +1 -1
- package/dist/src/modules/amxIdSystem.js +1 -1
- package/dist/src/modules/aniviewBidAdapter.js +1 -1
- package/dist/src/modules/appierAnalyticsAdapter.js +1 -1
- package/dist/src/modules/appnexusBidAdapter.js +2 -2
- package/dist/src/modules/asoBidAdapter.js +1 -1
- package/dist/src/modules/axonixBidAdapter.js +1 -1
- package/dist/src/modules/beopBidAdapter.js +2 -2
- package/dist/src/modules/bidglassBidAdapter.js +1 -1
- package/dist/src/modules/bitmediaBidAdapter.js +1 -1
- package/dist/src/modules/blockthroughBidAdapter.js +1 -1
- package/dist/src/modules/bmtmBidAdapter.js +1 -1
- package/dist/src/modules/bridBidAdapter.js +1 -1
- package/dist/src/modules/bridgewellBidAdapter.js +1 -1
- package/dist/src/modules/carodaBidAdapter.js +1 -1
- package/dist/src/modules/chromeAiRtdProvider.js.map +1 -1
- package/dist/src/modules/chtnwBidAdapter.js +1 -1
- package/dist/src/modules/concertBidAdapter.js +1 -1
- package/dist/src/modules/connectadBidAdapter.js +1 -1
- package/dist/src/modules/consentManagementGpp.js.map +1 -1
- package/dist/src/modules/consentManagementTcf.js.map +1 -1
- package/dist/src/modules/consentManagementUsp.js.map +1 -1
- package/dist/src/modules/consumableBidAdapter.js +1 -1
- package/dist/src/modules/contxtfulBidAdapter.js +1 -1
- package/dist/src/modules/conversantBidAdapter.js +1 -1
- package/dist/src/modules/craftBidAdapter.js +1 -1
- package/dist/src/modules/criteoBidAdapter.js +2 -2
- package/dist/src/modules/currency.js.map +1 -1
- package/dist/src/modules/cwireBidAdapter.js +1 -1
- package/dist/src/modules/cwireBidAdapter.js.map +1 -1
- package/dist/src/modules/dailymotionBidAdapter.js +1 -1
- package/dist/src/modules/dailymotionBidAdapter.js.map +1 -1
- package/dist/src/modules/dchain.js.map +1 -1
- package/dist/src/modules/dspxBidAdapter.js +1 -1
- package/dist/src/modules/dspxBidAdapter.js.map +1 -1
- package/dist/src/modules/dxkultureBidAdapter.js +1 -1
- package/dist/src/modules/eightPodBidAdapter.js.map +1 -1
- package/dist/src/modules/eplanningBidAdapter.js +1 -1
- package/dist/src/modules/equativBidAdapter.js +1 -1
- package/dist/src/modules/eskimiBidAdapter.js +1 -1
- package/dist/src/modules/euidIdSystem.js +1 -1
- package/dist/src/modules/exadsBidAdapter.js +1 -1
- package/dist/src/modules/excoBidAdapter.js +3 -3
- package/dist/src/modules/feedadBidAdapter.js +2 -2
- package/dist/src/modules/finativeBidAdapter.js +1 -1
- package/dist/src/modules/genericAnalyticsAdapter.js.map +1 -1
- package/dist/src/modules/geolocationRtdProvider.js.map +1 -1
- package/dist/src/modules/getintentBidAdapter.js +4 -2
- package/dist/src/modules/getintentBidAdapter.js.map +1 -1
- package/dist/src/modules/gmosspBidAdapter.js +1 -1
- package/dist/src/modules/gmosspBidAdapter.js.map +1 -1
- package/dist/src/modules/gppControl_usstates.js.map +1 -1
- package/dist/src/modules/gptPreAuction.d.ts +3 -3
- package/dist/src/modules/gptPreAuction.js.map +1 -1
- package/dist/src/modules/greenbidsAnalyticsAdapter.js +1 -1
- package/dist/src/modules/greenbidsBidAdapter.js +1 -1
- package/dist/src/modules/greenbidsRtdProvider.js +1 -1
- package/dist/src/modules/gridBidAdapter.js +2 -2
- package/dist/src/modules/gumgumBidAdapter.js +2 -2
- package/dist/src/modules/h12mediaBidAdapter.js +1 -1
- package/dist/src/modules/hypelabBidAdapter.js +1 -1
- package/dist/src/modules/iasRtdProvider.js +110 -5
- package/dist/src/modules/iasRtdProvider.js.map +1 -1
- package/dist/src/modules/id5AnalyticsAdapter.js +1 -1
- package/dist/src/modules/id5IdSystem.js +1 -1
- package/dist/src/modules/improvedigitalBidAdapter.js +1 -1
- package/dist/src/modules/inmobiBidAdapter.js +1 -1
- package/dist/src/modules/insticatorBidAdapter.js +1 -1
- package/dist/src/modules/intentIqAnalyticsAdapter.js +1 -1
- package/dist/src/modules/intentIqAnalyticsAdapter.js.map +1 -1
- package/dist/src/modules/intentIqIdSystem.js.map +1 -1
- package/dist/src/modules/ixBidAdapter.js +1 -1
- package/dist/src/modules/jixieBidAdapter.js +1 -1
- package/dist/src/modules/justpremiumBidAdapter.js +1 -1
- package/dist/src/modules/jwplayerRtdProvider.js +6 -2
- package/dist/src/modules/jwplayerRtdProvider.js.map +1 -1
- package/dist/src/modules/jwplayerVideoProvider.js +12 -9
- package/dist/src/modules/jwplayerVideoProvider.js.map +1 -1
- package/dist/src/modules/kargoBidAdapter.js +1 -1
- package/dist/src/modules/kimberliteBidAdapter.js +1 -1
- package/dist/src/modules/kubientBidAdapter.js +0 -1
- package/dist/src/modules/kubientBidAdapter.js.map +1 -1
- package/dist/src/modules/lassoBidAdapter.js +1 -1
- package/dist/src/modules/lifestreetBidAdapter.js +1 -1
- package/dist/src/modules/logicadBidAdapter.js +1 -1
- package/dist/src/modules/luceadBidAdapter.js +1 -1
- package/dist/src/modules/mabidderBidAdapter.js +1 -1
- package/dist/src/modules/madsenseBidAdapter.js +1 -1
- package/dist/src/modules/magniteAnalyticsAdapter.js +1 -1
- package/dist/src/modules/malltvAnalyticsAdapter.js +1 -1
- package/dist/src/modules/marsmediaBidAdapter.js +1 -1
- package/dist/src/modules/mediafuseBidAdapter.js +2 -2
- package/dist/src/modules/medianetAnalyticsAdapter.js.map +1 -1
- package/dist/src/modules/medianetBidAdapter.js +6 -2
- package/dist/src/modules/medianetBidAdapter.js.map +1 -1
- package/dist/src/modules/mediasquareBidAdapter.js +2 -2
- package/dist/src/modules/mgidBidAdapter.js +1 -1
- package/dist/src/modules/michaoBidAdapter.js.map +1 -1
- package/dist/src/modules/missenaBidAdapter.js +1 -1
- package/dist/src/modules/mobilefuseBidAdapter.js +1 -1
- package/dist/src/modules/multibid/index.js.map +1 -1
- package/dist/src/modules/nextMillenniumBidAdapter.js +1 -1
- package/dist/src/modules/nexverseBidAdapter.js.map +1 -1
- package/dist/src/modules/nobidAnalyticsAdapter.js +1 -1
- package/dist/src/modules/nobidBidAdapter.js +1 -1
- package/dist/src/modules/nodalsAiRtdProvider.js +4 -2
- package/dist/src/modules/nodalsAiRtdProvider.js.map +1 -1
- package/dist/src/modules/oguryBidAdapter.js +1 -1
- package/dist/src/modules/onetagBidAdapter.js +1 -1
- package/dist/src/modules/onetagBidAdapter.js.map +1 -1
- package/dist/src/modules/ooloAnalyticsAdapter.js +1 -1
- package/dist/src/modules/openxBidAdapter.js +1 -1
- package/dist/src/modules/optidigitalBidAdapter.js +1 -1
- package/dist/src/modules/orbidderBidAdapter.js +1 -1
- package/dist/src/modules/outbrainBidAdapter.js +1 -1
- package/dist/src/modules/pixfutureBidAdapter.js +2 -2
- package/dist/src/modules/prebidServerBidAdapter/index.js.map +1 -1
- package/dist/src/modules/priceFloors.js.map +1 -1
- package/dist/src/modules/publinkIdSystem.js +1 -1
- package/dist/src/modules/pubmaticAnalyticsAdapter.js +2 -2
- package/dist/src/modules/pubmaticBidAdapter.js +2 -2
- package/dist/src/modules/pubmaticRtdProvider.js.map +1 -1
- package/dist/src/modules/pubwiseAnalyticsAdapter.js +1 -1
- package/dist/src/modules/pubxaiAnalyticsAdapter.js +1 -1
- package/dist/src/modules/pulsepointBidAdapter.js +2 -38
- package/dist/src/modules/pulsepointBidAdapter.js.map +1 -1
- package/dist/src/modules/pxyzBidAdapter.js +1 -1
- package/dist/src/modules/quantcastBidAdapter.js +1 -1
- package/dist/src/modules/readpeakBidAdapter.js +1 -1
- package/dist/src/modules/readpeakBidAdapter.js.map +1 -1
- package/dist/src/modules/relaidoBidAdapter.js +1 -1
- package/dist/src/modules/retailspotBidAdapter.js +1 -1
- package/dist/src/modules/rhythmoneBidAdapter.js +1 -1
- package/dist/src/modules/rtdModule/index.js.map +1 -1
- package/dist/src/modules/rtdModule/spec.js.map +1 -1
- package/dist/src/modules/rubiconBidAdapter.js +6 -2
- package/dist/src/modules/rubiconBidAdapter.js.map +1 -1
- package/dist/src/modules/rumbleBidAdapter.js +103 -0
- package/dist/src/modules/rumbleBidAdapter.js.map +1 -0
- package/dist/src/modules/schain.js.map +1 -1
- package/dist/src/modules/seedingAllianceBidAdapter.js +1 -1
- package/dist/src/modules/seedtagBidAdapter.js +1 -1
- package/dist/src/modules/sevioBidAdapter.js +251 -0
- package/dist/src/modules/sevioBidAdapter.js.map +1 -0
- package/dist/src/modules/sharedIdSystem.js.map +1 -1
- package/dist/src/modules/sharethroughAnalyticsAdapter.js +1 -1
- package/dist/src/modules/sharethroughBidAdapter.js +1 -1
- package/dist/src/modules/showheroes-bsBidAdapter.js +1 -1
- package/dist/src/modules/smaatoBidAdapter.js +1 -1
- package/dist/src/modules/smartadserverBidAdapter.js +1 -1
- package/dist/src/modules/smartxBidAdapter.js +1 -1
- package/dist/src/modules/smilewantedBidAdapter.js +1 -1
- package/dist/src/modules/snigelBidAdapter.js +1 -1
- package/dist/src/modules/sonaradsBidAdapter.js +2 -2
- package/dist/src/modules/sonobiBidAdapter.js +1 -1
- package/dist/src/modules/sovrnBidAdapter.js +1 -1
- package/dist/src/modules/sparteoBidAdapter.js +1 -1
- package/dist/src/modules/sspBCBidAdapter.js +1 -1
- package/dist/src/modules/storageControl.js.map +1 -1
- package/dist/src/modules/stvBidAdapter.js +1 -1
- package/dist/src/modules/sublimeBidAdapter.js +2 -2
- package/dist/src/modules/taboolaBidAdapter.js +1 -1
- package/dist/src/modules/tappxBidAdapter.js +1 -1
- package/dist/src/modules/targetVideoBidAdapter.js +1 -1
- package/dist/src/modules/tcfControl.js.map +1 -1
- package/dist/src/modules/teadsBidAdapter.js +1 -1
- package/dist/src/modules/terceptAnalyticsAdapter.js +1 -1
- package/dist/src/modules/themoneytizerBidAdapter.js +1 -3
- package/dist/src/modules/themoneytizerBidAdapter.js.map +1 -1
- package/dist/src/modules/trionBidAdapter.js +1 -1
- package/dist/src/modules/tripleliftBidAdapter.js +1 -1
- package/dist/src/modules/ttdBidAdapter.js +9 -2
- package/dist/src/modules/ttdBidAdapter.js.map +1 -1
- package/dist/src/modules/ucfunnelAnalyticsAdapter.js +1 -1
- package/dist/src/modules/uid2IdSystem.js +1 -1
- package/dist/src/modules/underdogmediaBidAdapter.js +1 -1
- package/dist/src/modules/undertoneBidAdapter.js +1 -1
- package/dist/src/modules/unrulyBidAdapter.js +1 -1
- package/dist/src/modules/userId/index.js +12 -8
- package/dist/src/modules/userId/index.js.map +1 -1
- package/dist/src/modules/userId/spec.js.map +1 -1
- package/dist/src/modules/validationFpdModule/index.js.map +1 -1
- package/dist/src/modules/videoModule/index.js.map +1 -1
- package/dist/src/modules/videobyteBidAdapter.js +1 -1
- package/dist/src/modules/visxBidAdapter.js +1 -1
- package/dist/src/modules/vuukleBidAdapter.js +1 -1
- package/dist/src/modules/weboramaRtdProvider.js +30 -11
- package/dist/src/modules/weboramaRtdProvider.js.map +1 -1
- package/dist/src/modules/welectBidAdapter.js.map +1 -1
- package/dist/src/modules/widespaceBidAdapter.js +1 -1
- package/dist/src/modules/winrBidAdapter.js +1 -1
- package/dist/src/modules/yahooAdsBidAdapter.js +1 -1
- package/dist/src/modules/yandexBidAdapter.js +47 -15
- package/dist/src/modules/yandexBidAdapter.js.map +1 -1
- package/dist/src/modules/yieldmoBidAdapter.js +2 -2
- package/dist/src/modules/yieldoneAnalyticsAdapter.js +1 -1
- package/dist/src/package.json +1 -1
- package/dist/src/public/rumbleBidAdapter.js +1 -0
- package/dist/src/public/sevioBidAdapter.js +1 -0
- package/dist/src/src/activities/params.d.ts +5 -0
- package/dist/src/src/activities/params.js +6 -0
- package/dist/src/src/activities/params.js.map +1 -1
- package/dist/src/src/activities/redactor.js.map +1 -1
- package/dist/src/src/adRendering.js.map +1 -1
- package/dist/src/src/adUnits.js.map +1 -1
- package/dist/src/src/adapterManager.js.map +1 -1
- package/dist/src/src/adapters/bidderFactory.js.map +1 -1
- package/dist/src/src/ajax.js.map +1 -1
- package/dist/src/src/auction.js.map +1 -1
- package/dist/src/src/banner.js.map +1 -1
- package/dist/src/src/bidTTL.js.map +1 -1
- package/dist/src/src/bidderSettings.js.map +1 -1
- package/dist/src/src/bidfactory.js.map +1 -1
- package/dist/src/src/config.js +3 -3
- package/dist/src/src/config.js.map +1 -1
- package/dist/src/src/consentHandler.js.map +1 -1
- package/dist/src/src/constants.js.map +1 -1
- package/dist/src/src/cpmBucketManager.js.map +1 -1
- package/dist/src/src/debugging.js +1 -1
- package/dist/src/src/events.js.map +1 -1
- package/dist/src/src/fpd/enrichment.js.map +1 -1
- package/dist/src/src/hook.js.map +1 -1
- package/dist/src/src/mediaTypes.js.map +1 -1
- package/dist/src/src/native.js.map +1 -1
- package/dist/src/src/prebid.js +2 -2
- package/dist/src/src/prebid.js.map +1 -1
- package/dist/src/src/prebidGlobal.js.map +1 -1
- package/dist/src/src/refererDetection.js.map +1 -1
- package/dist/src/src/storageManager.js +26 -25
- package/dist/src/src/storageManager.js.map +1 -1
- package/dist/src/src/targeting.d.ts +3 -3
- package/dist/src/src/targeting.js.map +1 -1
- package/dist/src/src/types/common.d.js.map +1 -1
- package/dist/src/src/types/common.d.ts +29 -29
- package/dist/src/src/types/local/buildOptions.d.js.map +1 -1
- package/dist/src/src/types/local/shim.d.js.map +1 -1
- package/dist/src/src/types/objects.d.js.map +1 -1
- package/dist/src/src/types/objects.d.ts +15 -15
- package/dist/src/src/types/ortb/common.d.js.map +1 -1
- package/dist/src/src/types/ortb/common.d.ts +1 -1
- package/dist/src/src/types/ortb/ext/dchain.d.js.map +1 -1
- package/dist/src/src/types/ortb/ext/dchain.d.ts +69 -69
- package/dist/src/src/types/ortb/ext/dsa.d.js.map +1 -1
- package/dist/src/src/types/ortb/ext/dsa.d.ts +50 -50
- package/dist/src/src/types/ortb/request.d.js.map +1 -1
- package/dist/src/src/types/ortb/request.d.ts +21 -21
- package/dist/src/src/types/ortb/response.d.js.map +1 -1
- package/dist/src/src/types/ortb/response.d.ts +6 -6
- package/dist/src/src/types/summary/core.d.ts +5 -5
- package/dist/src/src/types/summary/modules.d.ts +2 -2
- package/dist/src/src/userSync.js.map +1 -1
- package/dist/src/src/utils/objects.js.map +1 -1
- package/dist/src/src/utils/perfMetrics.js.map +1 -1
- package/dist/src/src/utils/promise.js.map +1 -1
- package/dist/src/src/utils/ttlCollection.js.map +1 -1
- package/dist/src/src/video.js.map +1 -1
- package/dist/src/src/videoCache.js.map +1 -1
- package/dist/src/test/helpers/index_adapter_utils.js +1 -1
- package/dist/src/test/helpers/index_adapter_utils.js.map +1 -1
- package/dist/src/test/helpers/refererDetectionHelper.js.map +1 -1
- package/dist/src/test/mocks/timers.js +12 -12
- package/dist/src/test/mocks/timers.js.map +1 -1
- package/dist/src/test/spec/adloader_spec.js.map +1 -1
- package/dist/src/test/spec/config_spec.js +9 -3
- package/dist/src/test/spec/config_spec.js.map +1 -1
- package/dist/src/test/spec/libraries/greedy/greedyPromise_spec.js +2 -2
- package/dist/src/test/spec/libraries/greedy/greedyPromise_spec.js.map +1 -1
- package/dist/src/test/spec/modules/1plusXRtdProvider_spec.js +2 -9
- package/dist/src/test/spec/modules/1plusXRtdProvider_spec.js.map +1 -1
- package/dist/src/test/spec/modules/33acrossAnalyticsAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/33acrossBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/33acrossIdSystem_spec.js +1 -1
- package/dist/src/test/spec/modules/adagioAnalyticsAdapter_spec.js +4 -4
- package/dist/src/test/spec/modules/adgridBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/adkernelAdnBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/adkernelBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/admediaBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/adnuntiusBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/adqueryBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/adrelevantisBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/adspiritBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/adtrgtmeBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/adtrgtmeBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/adtrueBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/advertisingBidAdapter_spec.js +9 -9
- package/dist/src/test/spec/modules/advertisingBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/adyoulikeBidAdapter_spec.js +3 -3
- package/dist/src/test/spec/modules/ajaBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/amxBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/appierAnalyticsAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/appnexusBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/asoBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/bidmaticBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/blockthroughBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/bridBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/criteoBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/dailymotionBidAdapter_spec.js +4 -4
- package/dist/src/test/spec/modules/datablocksBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/deepintentBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/dexertoBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/dochaseBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/dspxBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/dxkultureBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/ehealthcaresolutionsBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/enrichmentLiftMeasurement_spec.js.map +1 -1
- package/dist/src/test/spec/modules/eplanningBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/equativBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/equativBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/excoBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/feedadBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/finativeBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/ftrackIdSystem_spec.js.map +1 -1
- package/dist/src/test/spec/modules/fwsspBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/gmosspBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/greenbidsAnalyticsAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/gridBidAdapter_spec.js +6 -6
- package/dist/src/test/spec/modules/gumgumBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/hypelabBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/iasRtdProvider_spec.js +104 -1
- package/dist/src/test/spec/modules/iasRtdProvider_spec.js.map +1 -1
- package/dist/src/test/spec/modules/id5IdSystem_spec.js +4 -4
- package/dist/src/test/spec/modules/insticatorBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/intentIqIdSystem_spec.js.map +1 -1
- package/dist/src/test/spec/modules/invibesBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/ixBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/justpremiumBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/kargoBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/kargoBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/lane4BidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/lemmaDigitalBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/liveIntentExternalIdSystem_spec.js +10 -10
- package/dist/src/test/spec/modules/liveIntentIdSystem_spec.js +1 -1
- package/dist/src/test/spec/modules/liveIntentRtdProvider_spec.js.map +1 -1
- package/dist/src/test/spec/modules/magniteAnalyticsAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/malltvAnalyticsAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/mediaeyesBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/mediafuseBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/mediagoBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/medianetBidAdapter_spec.js +43 -26
- package/dist/src/test/spec/modules/medianetBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/mediasquareBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/missenaBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/nexx360BidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/nobidAnalyticsAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/nobidBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/nobidBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/oguryBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/onetagBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/optoutBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/orbitsoftBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/outbrainBidAdapter_spec.js +3 -3
- package/dist/src/test/spec/modules/oxxionAnalyticsAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/ozoneBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/prebidServerBidAdapter_spec.js +4 -4
- package/dist/src/test/spec/modules/prebidServerBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/prismaBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/publinkIdSystem_spec.js +5 -5
- package/dist/src/test/spec/modules/pubmaticAnalyticsAdapter_spec.js +6 -6
- package/dist/src/test/spec/modules/pubmaticBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/pubmaticRtdProvider_spec.js.map +1 -1
- package/dist/src/test/spec/modules/pubwiseAnalyticsAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/pubxaiAnalyticsAdapter_spec.js +6 -6
- package/dist/src/test/spec/modules/pwbidBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/quantcastBidAdapter_spec.js +6 -6
- package/dist/src/test/spec/modules/readpeakBidAdapter_spec.js +4 -4
- package/dist/src/test/spec/modules/relaidoBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/relevadRtdProvider_spec.js.map +1 -1
- package/dist/src/test/spec/modules/relevatehealthBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/richaudienceBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/rubiconBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/rubiconBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/rumbleBidAdapter_spec.js +110 -0
- package/dist/src/test/spec/modules/rumbleBidAdapter_spec.js.map +1 -0
- package/dist/src/test/spec/modules/sevioBidAdapter_spec.js +182 -0
- package/dist/src/test/spec/modules/sevioBidAdapter_spec.js.map +1 -0
- package/dist/src/test/spec/modules/smaatoBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/smarticoBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/smartxBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/sonaradsBidAdapter_spec.js +5 -5
- package/dist/src/test/spec/modules/sovrnBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/sparteoBidAdapter_spec.js +3 -3
- package/dist/src/test/spec/modules/sspBCBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/stvBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/taboolaBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/tapnativeBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/targetVideoBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/themoneytizerBidAdapter_spec.js +0 -5
- package/dist/src/test/spec/modules/themoneytizerBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/trionBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/ttdBidAdapter_spec.js +24 -3
- package/dist/src/test/spec/modules/ttdBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/ucfunnelAnalyticsAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/uid2IdSystem_spec.js.map +1 -1
- package/dist/src/test/spec/modules/unrulyBidAdapter_spec.js +3 -3
- package/dist/src/test/spec/modules/userId_spec.js +41 -6
- package/dist/src/test/spec/modules/userId_spec.js.map +1 -1
- package/dist/src/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js +1738 -9
- package/dist/src/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js.map +1 -1
- package/dist/src/test/spec/modules/videobyteBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/visxBidAdapter_spec.js +12 -12
- package/dist/src/test/spec/modules/winrBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/yahooAdsBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/yandexBidAdapter_spec.js +107 -2
- package/dist/src/test/spec/modules/yandexBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/yieldoneAnalyticsAdapter_spec.js +2 -2
- package/dist/src/test/spec/refererDetection_spec.js.map +1 -1
- package/dist/src/test/spec/unit/core/storageManager_spec.js +18 -1
- package/dist/src/test/spec/unit/core/storageManager_spec.js.map +1 -1
- package/dist/src/test/spec/unit/core/targeting_spec.js.map +1 -1
- package/dist/src/test/spec/utils_spec.js.map +1 -1
- package/eslint.config.js +2 -6
- package/libraries/analyticsAdapter/AnalyticsAdapter.ts +28 -28
- package/libraries/appnexusUtils/anKeywords.js +11 -0
- package/libraries/consentManagement/cmUtils.ts +18 -18
- package/libraries/creative-renderer-display/renderer.js +1 -1
- package/libraries/cryptoUtils/wallets.js +38 -0
- package/libraries/dspxUtils/bidderUtils.js +1 -1
- package/libraries/impUtils.js +33 -0
- package/libraries/nexx360Utils/index.js +8 -8
- package/libraries/ortbConverter/converter.ts +79 -79
- package/libraries/video/constants/events.ts +5 -5
- package/metadata/modules/33acrossBidAdapter.json +1 -1
- package/metadata/modules/33acrossIdSystem.json +1 -1
- package/metadata/modules/acuityadsBidAdapter.json +1 -1
- package/metadata/modules/adagioBidAdapter.json +1 -1
- package/metadata/modules/adagioRtdProvider.json +1 -1
- package/metadata/modules/addefendBidAdapter.json +1 -1
- package/metadata/modules/adfBidAdapter.json +1 -1
- package/metadata/modules/adfusionBidAdapter.json +1 -1
- package/metadata/modules/adheseBidAdapter.json +1 -1
- package/metadata/modules/adkernelAdnBidAdapter.json +1 -1
- package/metadata/modules/adkernelBidAdapter.json +4 -4
- package/metadata/modules/admaticBidAdapter.json +2 -2
- package/metadata/modules/admixerBidAdapter.json +8 -1
- package/metadata/modules/admixerIdSystem.json +1 -1
- package/metadata/modules/adnowBidAdapter.json +1 -1
- package/metadata/modules/adnuntiusBidAdapter.json +1 -1
- package/metadata/modules/adnuntiusRtdProvider.json +1 -1
- package/metadata/modules/adotBidAdapter.json +1 -1
- package/metadata/modules/adponeBidAdapter.json +1 -1
- package/metadata/modules/adqueryBidAdapter.json +1 -1
- package/metadata/modules/adqueryIdSystem.json +1 -1
- package/metadata/modules/adrinoBidAdapter.json +1 -1
- package/metadata/modules/ads_interactiveBidAdapter.json +1 -1
- package/metadata/modules/adtargetBidAdapter.json +1 -1
- package/metadata/modules/adtelligentBidAdapter.json +3 -3
- package/metadata/modules/adtelligentIdSystem.json +1 -1
- package/metadata/modules/aduptechBidAdapter.json +1 -1
- package/metadata/modules/adyoulikeBidAdapter.json +1 -1
- package/metadata/modules/aidemBidAdapter.json +1 -1
- package/metadata/modules/airgridRtdProvider.json +1 -1
- package/metadata/modules/alkimiBidAdapter.json +1 -1
- package/metadata/modules/ampliffyBidAdapter.json +1 -1
- package/metadata/modules/amxBidAdapter.json +1 -1
- package/metadata/modules/amxIdSystem.json +1 -1
- package/metadata/modules/aniviewBidAdapter.json +1 -1
- package/metadata/modules/anonymisedRtdProvider.json +1 -1
- package/metadata/modules/appierBidAdapter.json +15 -29
- package/metadata/modules/appnexusBidAdapter.json +5 -5
- package/metadata/modules/appushBidAdapter.json +1 -1
- package/metadata/modules/apstreamBidAdapter.json +1 -1
- package/metadata/modules/audiencerunBidAdapter.json +1 -1
- package/metadata/modules/axisBidAdapter.json +1 -1
- package/metadata/modules/azerionedgeRtdProvider.json +1 -1
- package/metadata/modules/beopBidAdapter.json +1 -1
- package/metadata/modules/betweenBidAdapter.json +1 -1
- package/metadata/modules/bidmaticBidAdapter.json +1 -1
- package/metadata/modules/bidtheatreBidAdapter.json +1 -1
- package/metadata/modules/bliinkBidAdapter.json +1 -1
- package/metadata/modules/blockthroughBidAdapter.json +1 -1
- package/metadata/modules/blueBidAdapter.json +1 -1
- package/metadata/modules/bmsBidAdapter.json +1 -1
- package/metadata/modules/boldwinBidAdapter.json +1 -1
- package/metadata/modules/bridBidAdapter.json +1 -1
- package/metadata/modules/browsiBidAdapter.json +1 -1
- package/metadata/modules/bucksenseBidAdapter.json +1 -1
- package/metadata/modules/carodaBidAdapter.json +1 -1
- package/metadata/modules/categoryTranslation.json +1 -1
- package/metadata/modules/ccxBidAdapter.json +1 -1
- package/metadata/modules/ceeIdSystem.json +1 -1
- package/metadata/modules/chromeAiRtdProvider.json +1 -1
- package/metadata/modules/compassBidAdapter.json +1 -1
- package/metadata/modules/conceptxBidAdapter.json +1 -1
- package/metadata/modules/connatixBidAdapter.json +1 -1
- package/metadata/modules/connectIdSystem.json +1 -1
- package/metadata/modules/connectadBidAdapter.json +1 -1
- package/metadata/modules/contentexchangeBidAdapter.json +1 -1
- package/metadata/modules/conversantBidAdapter.json +1 -1
- package/metadata/modules/copper6sspBidAdapter.json +1 -1
- package/metadata/modules/cpmstarBidAdapter.json +1 -1
- package/metadata/modules/criteoBidAdapter.json +1 -1
- package/metadata/modules/criteoIdSystem.json +1 -1
- package/metadata/modules/cwireBidAdapter.json +1 -1
- package/metadata/modules/czechAdIdSystem.json +1 -1
- package/metadata/modules/dailymotionBidAdapter.json +1 -1
- package/metadata/modules/debugging.json +1 -1
- package/metadata/modules/deepintentBidAdapter.json +1 -1
- package/metadata/modules/deltaprojectsBidAdapter.json +1 -1
- package/metadata/modules/dianomiBidAdapter.json +1 -1
- package/metadata/modules/digitalMatterBidAdapter.json +1 -1
- package/metadata/modules/distroscaleBidAdapter.json +1 -1
- package/metadata/modules/docereeAdManagerBidAdapter.json +3 -3
- package/metadata/modules/docereeBidAdapter.json +3 -3
- package/metadata/modules/dspxBidAdapter.json +1 -1
- package/metadata/modules/e_volutionBidAdapter.json +1 -1
- package/metadata/modules/edge226BidAdapter.json +3 -3
- package/metadata/modules/equativBidAdapter.json +1 -1
- package/metadata/modules/eskimiBidAdapter.json +1 -1
- package/metadata/modules/etargetBidAdapter.json +1 -1
- package/metadata/modules/euidIdSystem.json +1 -1
- package/metadata/modules/exadsBidAdapter.json +1 -1
- package/metadata/modules/feedadBidAdapter.json +1 -1
- package/metadata/modules/fwsspBidAdapter.json +1 -1
- package/metadata/modules/gamoshiBidAdapter.json +1 -1
- package/metadata/modules/glomexBidAdapter.json +1 -1
- package/metadata/modules/goldbachBidAdapter.json +1 -1
- package/metadata/modules/greenbidsBidAdapter.json +1 -1
- package/metadata/modules/gridBidAdapter.json +1 -1
- package/metadata/modules/gumgumBidAdapter.json +1 -1
- package/metadata/modules/hadronIdSystem.json +1 -1
- package/metadata/modules/hadronRtdProvider.json +1 -1
- package/metadata/modules/holidBidAdapter.json +1 -1
- package/metadata/modules/hybridBidAdapter.json +1 -1
- package/metadata/modules/id5IdSystem.json +1 -1
- package/metadata/modules/identityLinkIdSystem.json +1 -1
- package/metadata/modules/illuminBidAdapter.json +1 -1
- package/metadata/modules/impactifyBidAdapter.json +1 -1
- package/metadata/modules/improvedigitalBidAdapter.json +1 -1
- package/metadata/modules/inmobiBidAdapter.json +1 -1
- package/metadata/modules/innityBidAdapter.json +1 -1
- package/metadata/modules/insticatorBidAdapter.json +1 -1
- package/metadata/modules/intentIqIdSystem.json +1 -1
- package/metadata/modules/invibesBidAdapter.json +1 -1
- package/metadata/modules/ipromBidAdapter.json +1 -1
- package/metadata/modules/ixBidAdapter.json +1 -1
- package/metadata/modules/justIdSystem.json +1 -1
- package/metadata/modules/justpremiumBidAdapter.json +1 -1
- package/metadata/modules/jwplayerBidAdapter.json +1 -1
- package/metadata/modules/kargoBidAdapter.json +1 -1
- package/metadata/modules/kubientBidAdapter.json +3 -8
- package/metadata/modules/kueezRtbBidAdapter.json +1 -1
- package/metadata/modules/limelightDigitalBidAdapter.json +2 -2
- package/metadata/modules/liveIntentIdSystem.json +1 -1
- package/metadata/modules/liveIntentRtdProvider.json +1 -1
- package/metadata/modules/livewrappedBidAdapter.json +1 -1
- package/metadata/modules/loopmeBidAdapter.json +1 -1
- package/metadata/modules/lotamePanoramaIdSystem.json +1 -1
- package/metadata/modules/luceadBidAdapter.json +1 -1
- package/metadata/modules/luponmediaBidAdapter.json +1 -1
- package/metadata/modules/madvertiseBidAdapter.json +1 -1
- package/metadata/modules/marsmediaBidAdapter.json +1 -1
- package/metadata/modules/mediaConsortiumBidAdapter.json +1 -1
- package/metadata/modules/mediaforceBidAdapter.json +1 -1
- package/metadata/modules/mediafuseBidAdapter.json +1 -1
- package/metadata/modules/mediagoBidAdapter.json +1 -1
- package/metadata/modules/mediakeysBidAdapter.json +1 -1
- package/metadata/modules/medianetBidAdapter.json +2 -2
- package/metadata/modules/mediasquareBidAdapter.json +1 -1
- package/metadata/modules/mgidBidAdapter.json +1 -1
- package/metadata/modules/mgidRtdProvider.json +1 -1
- package/metadata/modules/mgidXBidAdapter.json +1 -1
- package/metadata/modules/minutemediaBidAdapter.json +1 -1
- package/metadata/modules/missenaBidAdapter.json +1 -1
- package/metadata/modules/mobianRtdProvider.json +1 -1
- package/metadata/modules/mobilefuseBidAdapter.json +1 -1
- package/metadata/modules/mobkoiBidAdapter.json +1 -1
- package/metadata/modules/mobkoiIdSystem.json +1 -1
- package/metadata/modules/nativeryBidAdapter.json +1 -1
- package/metadata/modules/nativoBidAdapter.json +1 -1
- package/metadata/modules/newspassidBidAdapter.json +1 -1
- package/metadata/modules/nextMillenniumBidAdapter.json +1 -1
- package/metadata/modules/nextrollBidAdapter.json +1 -1
- package/metadata/modules/nexx360BidAdapter.json +8 -8
- package/metadata/modules/nobidBidAdapter.json +2 -2
- package/metadata/modules/nodalsAiRtdProvider.json +1 -1
- package/metadata/modules/novatiqIdSystem.json +1 -1
- package/metadata/modules/oguryBidAdapter.json +1 -1
- package/metadata/modules/omsBidAdapter.json +1 -1
- package/metadata/modules/onetagBidAdapter.json +1 -1
- package/metadata/modules/openwebBidAdapter.json +1 -1
- package/metadata/modules/openxBidAdapter.json +1 -1
- package/metadata/modules/operaadsBidAdapter.json +1 -1
- package/metadata/modules/optidigitalBidAdapter.json +1 -1
- package/metadata/modules/optoutBidAdapter.json +1 -1
- package/metadata/modules/orbidderBidAdapter.json +1 -1
- package/metadata/modules/outbrainBidAdapter.json +1 -1
- package/metadata/modules/ozoneBidAdapter.json +1 -1
- package/metadata/modules/pairIdSystem.json +1 -1
- package/metadata/modules/performaxBidAdapter.json +4 -5
- package/metadata/modules/pgamsspBidAdapter.json +1 -1
- package/metadata/modules/pixfutureBidAdapter.json +1 -1
- package/metadata/modules/playdigoBidAdapter.json +1 -1
- package/metadata/modules/prebid-core.json +2 -2
- package/metadata/modules/precisoBidAdapter.json +1 -1
- package/metadata/modules/prismaBidAdapter.json +1 -1
- package/metadata/modules/programmaticXBidAdapter.json +1 -1
- package/metadata/modules/proxistoreBidAdapter.json +1 -1
- package/metadata/modules/publinkIdSystem.json +1 -1
- package/metadata/modules/pubmaticBidAdapter.json +1 -1
- package/metadata/modules/pubmaticIdSystem.json +1 -1
- package/metadata/modules/pulsepointBidAdapter.json +1 -1
- package/metadata/modules/pwbidBidAdapter.json +1 -1
- package/metadata/modules/qtBidAdapter.json +1 -1
- package/metadata/modules/quantcastBidAdapter.json +1 -1
- package/metadata/modules/quantcastIdSystem.json +1 -1
- package/metadata/modules/r2b2BidAdapter.json +1 -1
- package/metadata/modules/raynRtdProvider.json +1 -1
- package/metadata/modules/readpeakBidAdapter.json +1 -1
- package/metadata/modules/relayBidAdapter.json +1 -1
- package/metadata/modules/relevantdigitalBidAdapter.json +1 -1
- package/metadata/modules/resetdigitalBidAdapter.json +1 -1
- package/metadata/modules/responsiveAdsBidAdapter.json +1 -1
- package/metadata/modules/retailspotBidAdapter.json +1 -1
- package/metadata/modules/revcontentBidAdapter.json +7 -117
- package/metadata/modules/rhythmoneBidAdapter.json +1 -1
- package/metadata/modules/richaudienceBidAdapter.json +1 -1
- package/metadata/modules/riseBidAdapter.json +2 -2
- package/metadata/modules/rixengineBidAdapter.json +1 -1
- package/metadata/modules/rtbhouseBidAdapter.json +1 -1
- package/metadata/modules/rubiconBidAdapter.json +1 -1
- package/metadata/modules/rumbleBidAdapter.json +13 -0
- package/metadata/modules/scatteredBidAdapter.json +1 -1
- package/metadata/modules/seedingAllianceBidAdapter.json +1 -1
- package/metadata/modules/seedtagBidAdapter.json +1 -1
- package/metadata/modules/semantiqRtdProvider.json +1 -1
- package/metadata/modules/setupadBidAdapter.json +1 -1
- package/metadata/modules/sevioBidAdapter.json +18 -0
- package/metadata/modules/sharedIdSystem.json +1 -1
- package/metadata/modules/sharethroughBidAdapter.json +1 -1
- package/metadata/modules/showheroes-bsBidAdapter.json +1 -1
- package/metadata/modules/silvermobBidAdapter.json +1 -1
- package/metadata/modules/sirdataRtdProvider.json +1 -1
- package/metadata/modules/slimcutBidAdapter.json +1 -1
- package/metadata/modules/smaatoBidAdapter.json +1 -1
- package/metadata/modules/smartadserverBidAdapter.json +1 -1
- package/metadata/modules/smartxBidAdapter.json +1 -1
- package/metadata/modules/smartyadsBidAdapter.json +1 -1
- package/metadata/modules/smilewantedBidAdapter.json +1 -1
- package/metadata/modules/snigelBidAdapter.json +1 -1
- package/metadata/modules/sonaradsBidAdapter.json +1 -1
- package/metadata/modules/sonobiBidAdapter.json +1 -1
- package/metadata/modules/sovrnBidAdapter.json +4 -4
- package/metadata/modules/sparteoBidAdapter.json +1 -1
- package/metadata/modules/ssmasBidAdapter.json +1 -1
- package/metadata/modules/sspBCBidAdapter.json +1 -1
- package/metadata/modules/stackadaptBidAdapter.json +1 -1
- package/metadata/modules/startioBidAdapter.json +1 -1
- package/metadata/modules/stroeerCoreBidAdapter.json +1 -1
- package/metadata/modules/stvBidAdapter.json +1 -1
- package/metadata/modules/sublimeBidAdapter.json +1 -1
- package/metadata/modules/taboolaBidAdapter.json +1 -1
- package/metadata/modules/taboolaIdSystem.json +1 -1
- package/metadata/modules/tappxBidAdapter.json +1 -1
- package/metadata/modules/targetVideoBidAdapter.json +1 -1
- package/metadata/modules/teadsBidAdapter.json +1 -1
- package/metadata/modules/teadsIdSystem.json +1 -1
- package/metadata/modules/tealBidAdapter.json +1 -1
- package/metadata/modules/themoneytizerBidAdapter.json +3 -8
- package/metadata/modules/tncIdSystem.json +1 -1
- package/metadata/modules/topicsFpdModule.json +1 -1
- package/metadata/modules/tripleliftBidAdapter.json +1 -1
- package/metadata/modules/ttdBidAdapter.json +1 -1
- package/metadata/modules/twistDigitalBidAdapter.json +1 -1
- package/metadata/modules/underdogmediaBidAdapter.json +1 -1
- package/metadata/modules/undertoneBidAdapter.json +1 -1
- package/metadata/modules/unifiedIdSystem.json +1 -1
- package/metadata/modules/unrulyBidAdapter.json +1 -1
- package/metadata/modules/userId.json +1 -1
- package/metadata/modules/validationFpdModule.json +1 -1
- package/metadata/modules/vidazooBidAdapter.json +1 -1
- package/metadata/modules/vidoomyBidAdapter.json +1 -1
- package/metadata/modules/viewdeosDXBidAdapter.json +1 -1
- package/metadata/modules/viouslyBidAdapter.json +1 -1
- package/metadata/modules/visxBidAdapter.json +1 -1
- package/metadata/modules/vlybyBidAdapter.json +1 -1
- package/metadata/modules/voxBidAdapter.json +1 -1
- package/metadata/modules/vrtcalBidAdapter.json +1 -1
- package/metadata/modules/vuukleBidAdapter.json +1 -1
- package/metadata/modules/weboramaRtdProvider.json +1 -1
- package/metadata/modules/welectBidAdapter.json +1 -1
- package/metadata/modules/yahooAdsBidAdapter.json +1 -1
- package/metadata/modules/yieldlabBidAdapter.json +1 -1
- package/metadata/modules/yieldliftBidAdapter.json +1 -1
- package/metadata/modules/yieldloveBidAdapter.json +1 -1
- package/metadata/modules/yieldmoBidAdapter.json +1 -1
- package/metadata/modules/zeotapIdPlusIdSystem.json +1 -1
- package/metadata/modules/zeta_globalBidAdapter.json +1 -1
- package/metadata/modules/zeta_global_sspBidAdapter.json +1 -1
- package/metadata/modules.json +23 -2
- package/modules/1plusXRtdProvider.js +6 -2
- package/modules/adWMGBidAdapter.js +8 -8
- package/modules/admixerBidAdapter.js +9 -4
- package/modules/adspiritBidAdapter.js +8 -8
- package/modules/adtrgtmeBidAdapter.js +2 -2
- package/modules/adxcgBidAdapter.js +2 -36
- package/modules/amxBidAdapter.js +3 -3
- package/modules/chromeAiRtdProvider.js +5 -5
- package/modules/consentManagementGpp.ts +11 -11
- package/modules/consentManagementTcf.ts +33 -33
- package/modules/consentManagementUsp.ts +14 -14
- package/modules/currency.ts +59 -59
- package/modules/cwireBidAdapter.js +2 -2
- package/modules/dailymotionBidAdapter.js +4 -4
- package/modules/dchain.ts +4 -4
- package/modules/dspxBidAdapter.js +8 -8
- package/modules/eightPodBidAdapter.js +8 -8
- package/modules/genericAnalyticsAdapter.ts +50 -50
- package/modules/geolocationRtdProvider.ts +48 -48
- package/modules/getintentBidAdapter.js +4 -2
- package/modules/gmosspBidAdapter.js +1 -1
- package/modules/gppControl_usstates.ts +40 -40
- package/modules/gptPreAuction.ts +34 -34
- package/modules/iasRtdProvider.js +87 -5
- package/modules/intentIqAnalyticsAdapter.js +8 -8
- package/modules/intentIqIdSystem.js +2 -2
- package/modules/jwplayerRtdProvider.js +6 -2
- package/modules/jwplayerVideoProvider.js +13 -9
- package/modules/kubientBidAdapter.js +0 -1
- package/modules/medianetAnalyticsAdapter.js +5 -5
- package/modules/medianetBidAdapter.js +5 -1
- package/modules/michaoBidAdapter.ts +7 -7
- package/modules/multibid/index.ts +31 -31
- package/modules/nexverseBidAdapter.js +1 -1
- package/modules/nodalsAiRtdProvider.js +4 -2
- package/modules/onetagBidAdapter.js +12 -12
- package/modules/prebidServerBidAdapter/index.ts +130 -130
- package/modules/priceFloors.ts +131 -131
- package/modules/pubmaticRtdProvider.js +143 -143
- package/modules/pulsepointBidAdapter.js +3 -38
- package/modules/readpeakBidAdapter.js +17 -17
- package/modules/rtdModule/index.ts +8 -8
- package/modules/rtdModule/spec.ts +30 -30
- package/modules/rubiconBidAdapter.js +5 -1
- package/modules/rumbleBidAdapter.js +128 -0
- package/modules/rumbleBidAdapter.md +114 -0
- package/modules/schain.ts +4 -4
- package/modules/sevioBidAdapter.js +259 -0
- package/modules/sevioBidAdapter.md +29 -0
- package/modules/sharedIdSystem.ts +29 -29
- package/modules/storageControl.ts +72 -72
- package/modules/tcfControl.ts +60 -60
- package/modules/themoneytizerBidAdapter.js +2 -4
- package/modules/ttdBidAdapter.js +11 -1
- package/modules/ttdBidAdapter.md +3 -1
- package/modules/userId/index.ts +129 -119
- package/modules/userId/spec.ts +136 -136
- package/modules/validationFpdModule/index.ts +4 -4
- package/modules/videoModule/index.ts +37 -37
- package/modules/weboramaRtdProvider.js +30 -11
- package/modules/welectBidAdapter.js +3 -3
- package/modules/yandexBidAdapter.js +67 -24
- package/package.json +1 -1
- package/src/activities/params.js +6 -0
- package/src/activities/redactor.ts +8 -8
- package/src/adRendering.ts +61 -61
- package/src/adUnits.ts +100 -100
- package/src/adapterManager.ts +605 -605
- package/src/adapters/bidderFactory.ts +99 -99
- package/src/ajax.ts +39 -39
- package/src/auction.ts +217 -217
- package/src/banner.ts +28 -28
- package/src/bidTTL.ts +16 -16
- package/src/bidderSettings.ts +46 -46
- package/src/bidfactory.ts +107 -107
- package/src/config.ts +65 -65
- package/src/consentHandler.ts +25 -25
- package/src/constants.ts +14 -14
- package/src/cpmBucketManager.ts +7 -7
- package/src/events.ts +75 -75
- package/src/fpd/enrichment.ts +8 -8
- package/src/hook.ts +14 -14
- package/src/mediaTypes.ts +16 -16
- package/src/native.ts +62 -62
- package/src/prebid.ts +362 -362
- package/src/prebidGlobal.ts +18 -18
- package/src/refererDetection.ts +54 -54
- package/src/storageManager.ts +76 -73
- package/src/targeting.ts +215 -215
- package/src/types/common.d.ts +29 -29
- package/src/types/local/buildOptions.d.ts +3 -3
- package/src/types/local/shim.d.ts +6 -6
- package/src/types/objects.d.ts +15 -15
- package/src/types/ortb/common.d.ts +1 -1
- package/src/types/ortb/ext/dchain.d.ts +69 -69
- package/src/types/ortb/ext/dsa.d.ts +50 -50
- package/src/types/ortb/request.d.ts +21 -21
- package/src/types/ortb/response.d.ts +6 -6
- package/src/userSync.ts +32 -32
- package/src/utils/objects.ts +11 -11
- package/src/utils/perfMetrics.ts +193 -193
- package/src/utils/promise.ts +14 -14
- package/src/utils/ttlCollection.ts +25 -25
- package/src/video.ts +73 -73
- package/src/videoCache.ts +60 -60
- package/test/helpers/index_adapter_utils.js +1 -2
- package/test/helpers/refererDetectionHelper.js +2 -2
- package/test/mocks/timers.js +12 -9
- package/test/spec/adloader_spec.js +13 -13
- package/test/spec/config_spec.js +9 -3
- package/test/spec/libraries/greedy/greedyPromise_spec.js +2 -2
- package/test/spec/modules/1plusXRtdProvider_spec.js +2 -9
- package/test/spec/modules/adgridBidAdapter_spec.js +6 -6
- package/test/spec/modules/adkernelAdnBidAdapter_spec.js +127 -127
- package/test/spec/modules/adkernelBidAdapter_spec.js +308 -308
- package/test/spec/modules/admediaBidAdapter_spec.js +34 -34
- package/test/spec/modules/adnuntiusBidAdapter_spec.js +7 -7
- package/test/spec/modules/adspiritBidAdapter_spec.js +1 -1
- package/test/spec/modules/adtrgtmeBidAdapter_spec.js +3 -3
- package/test/spec/modules/adtrueBidAdapter_spec.js +19 -19
- package/test/spec/modules/advertisingBidAdapter_spec.js +2 -2
- package/test/spec/modules/bidmaticBidAdapter_spec.js +2 -2
- package/test/spec/modules/datablocksBidAdapter_spec.js +115 -115
- package/test/spec/modules/deepintentBidAdapter_spec.js +51 -51
- package/test/spec/modules/dexertoBidAdapter_spec.js +16 -16
- package/test/spec/modules/dochaseBidAdapter_spec.js +17 -17
- package/test/spec/modules/dspxBidAdapter_spec.js +23 -23
- package/test/spec/modules/ehealthcaresolutionsBidAdapter_spec.js +17 -17
- package/test/spec/modules/enrichmentLiftMeasurement_spec.js +8 -8
- package/test/spec/modules/equativBidAdapter_spec.js +1 -1
- package/test/spec/modules/finativeBidAdapter_spec.js +11 -11
- package/test/spec/modules/ftrackIdSystem_spec.js +16 -16
- package/test/spec/modules/fwsspBidAdapter_spec.js +5 -5
- package/test/spec/modules/hypelabBidAdapter_spec.js +9 -9
- package/test/spec/modules/iasRtdProvider_spec.js +89 -8
- package/test/spec/modules/intentIqIdSystem_spec.js +3 -3
- package/test/spec/modules/invibesBidAdapter_spec.js +2 -2
- package/test/spec/modules/kargoBidAdapter_spec.js +7 -7
- package/test/spec/modules/lane4BidAdapter_spec.js +17 -17
- package/test/spec/modules/lemmaDigitalBidAdapter_spec.js +37 -37
- package/test/spec/modules/liveIntentRtdProvider_spec.js +2 -2
- package/test/spec/modules/mediaeyesBidAdapter_spec.js +166 -166
- package/test/spec/modules/mediagoBidAdapter_spec.js +1 -1
- package/test/spec/modules/medianetBidAdapter_spec.js +1724 -1707
- package/test/spec/modules/mediasquareBidAdapter_spec.js +7 -7
- package/test/spec/modules/nexx360BidAdapter_spec.js +6 -6
- package/test/spec/modules/nobidBidAdapter_spec.js +16 -16
- package/test/spec/modules/onetagBidAdapter_spec.js +47 -47
- package/test/spec/modules/optoutBidAdapter_spec.js +1 -1
- package/test/spec/modules/orbitsoftBidAdapter_spec.js +85 -85
- package/test/spec/modules/oxxionAnalyticsAdapter_spec.js +1 -1
- package/test/spec/modules/ozoneBidAdapter_spec.js +439 -439
- package/test/spec/modules/prebidServerBidAdapter_spec.js +2 -2
- package/test/spec/modules/prismaBidAdapter_spec.js +6 -6
- package/test/spec/modules/pubmaticBidAdapter_spec.js +3 -3
- package/test/spec/modules/pubmaticRtdProvider_spec.js +1389 -1389
- package/test/spec/modules/pwbidBidAdapter_spec.js +25 -25
- package/test/spec/modules/relevadRtdProvider_spec.js +1 -1
- package/test/spec/modules/relevatehealthBidAdapter_spec.js +16 -16
- package/test/spec/modules/richaudienceBidAdapter_spec.js +10 -10
- package/test/spec/modules/rubiconBidAdapter_spec.js +7 -7
- package/test/spec/modules/rumbleBidAdapter_spec.js +125 -0
- package/test/spec/modules/sevioBidAdapter_spec.js +209 -0
- package/test/spec/modules/smaatoBidAdapter_spec.js +30 -30
- package/test/spec/modules/smarticoBidAdapter_spec.js +10 -10
- package/test/spec/modules/stvBidAdapter_spec.js +32 -32
- package/test/spec/modules/tapnativeBidAdapter_spec.js +17 -17
- package/test/spec/modules/themoneytizerBidAdapter_spec.js +0 -6
- package/test/spec/modules/ttdBidAdapter_spec.js +27 -2
- package/test/spec/modules/uid2IdSystem_spec.js +3 -3
- package/test/spec/modules/userId_spec.js +41 -7
- package/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js +1953 -154
- package/test/spec/modules/yandexBidAdapter_spec.js +128 -0
- package/test/spec/refererDetection_spec.js +11 -11
- package/test/spec/unit/core/storageManager_spec.js +20 -1
- package/test/spec/unit/core/targeting_spec.js +8 -8
- package/test/spec/utils_spec.js +25 -25
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[60802],{67464:(e,t,n)=>{n.d(t,{A4:()=>c,J7:()=>l,Pg:()=>u});var r=n(75049),i=n(10466),o=n(51748),s=n(70736);const a=(0,o.m)(),d="outstream";function c(e){const{url:t,config:n,id:o,callback:c,loaded:l,adUnitCode:u,renderNow:g}=e;this.url=t,this.config=n,this.handlers={},this.id=o,this.renderNow=g,this.adUnitCode=u,this.loaded=l,this.cmd=[],this.push=e=>{"function"==typeof e?this.loaded?e.call():this.cmd.push(e):(0,i.logError)("Commands given to Renderer.push must be wrapped in a function")},this.callback=c||(()=>{this.loaded=!0,this.process()}),this.render=function(){const e=arguments,n=()=>{this._render?this._render.apply(this,e):(0,i.logWarn)("No render function was provided, please use .setRender on the renderer")};!function(e){const t=a.adUnits.find((t=>t.code===e));if(!t)return!1;const n=t?.renderer,r=!!(n&&n.url&&n.render),i=t?.mediaTypes?.video?.renderer,o=!!(i&&i.url&&i.render);return!!(r&&!0!==n.backupOnly||o&&!0!==i.backupOnly)}(u)?g?n():(this.cmd.unshift(n),(0,r.R)(t,s.tp,d,this.callback,this.documentContext)):((0,i.logWarn)(`External Js not loaded by Renderer since renderer url and callback is already defined on adUnit ${u}`),n())}.bind(this)}function l(e){return!(!e||!e.url&&!e.renderNow)}function u(e,t,n){let r=null;e.config&&e.config.documentResolver&&(r=e.config.documentResolver(t,document,n)),r||(r=document),e.documentContext=r,e.render(t,e.documentContext)}c.install=function(e){let{url:t,config:n,id:r,callback:i,loaded:o,adUnitCode:s,renderNow:a}=e;return new c({url:t,config:n,id:r,callback:i,loaded:o,adUnitCode:s,renderNow:a})},c.prototype.getConfig=function(){return this.config},c.prototype.setRender=function(e){this._render=e},c.prototype.setEventHandlers=function(e){this.handlers=e},c.prototype.handleVideoEvent=function(e){let{id:t,eventName:n}=e;"function"==typeof this.handlers[n]&&this.handlers[n](),(0,i.logMessage)(`Prebid Renderer event for id ${t} type ${n}`)},c.prototype.process=function(){for(;this.cmd.length>0;)try{this.cmd.shift().call()}catch(e){(0,i.logError)(`Error processing Renderer command on ad unit '${this.adUnitCode}':`,e)}}},45808:(e,t,n)=>{n.d(t,{DL:()=>l,Ml:()=>i,Ue:()=>r,VJ:()=>g,hE:()=>u,hq:()=>c,mo:()=>d,pY:()=>f,qX:()=>o,uc:()=>a,yg:()=>p,yl:()=>s});const r="accessDevice",i="syncUser",o="enrichUfpd",s="enrichEids",a="fetchBids",d="reportAnalytics",c="transmitEids",l="transmitUfpd",u="transmitPreciseGeo",g="transmitTid",f="loadExternalScript",p="accessRequestCredentials"},77610:(e,t,n)=>{n.d(t,{s:()=>i});var r=n(51409);const i=(0,n(25291).ZI)((e=>r.Ay.resolveAlias(e)))},70736:(e,t,n)=>{n.d(t,{Tn:()=>a,fW:()=>o,tW:()=>i,tp:()=>r,zu:()=>s});const r="prebid",i="bidder",o="userId",s="rtd",a="analytics"},25291:(e,t,n)=>{n.d(t,{Dk:()=>s,Ez:()=>l,Ii:()=>o,TQ:()=>p,U3:()=>h,XG:()=>u,ZI:()=>m,Zw:()=>c,bt:()=>g,e3:()=>f,iK:()=>a,q7:()=>d});var r=n(70736),i=n(32592);const o="component",s=o+"Type",a=o+"Name",d="adapterCode",c="storageType",l="storageKey",u="configName",g="syncType",f="syncUrl",p="_config";function m(e){return function(t,n,i){const c={[s]:t,[a]:n,[o]:`${t}.${n}`};return t===r.tW&&(c[d]=e(n)),h(Object.assign(c,i))}}const h=(0,i.A_)("sync",(e=>e))},53578:(e,t,n)=>{n.d(t,{Vx:()=>d,l7:()=>a,p4:()=>h,$V:()=>m,nl:()=>f,ZP:()=>b,$p:()=>y,uD:()=>p});var r=n(58928),i=n(91933),o=n(53202),s=n(45808);const a=["data","ext.data","yob","gender","keywords","kwarray","id","buyeruid","customdata"].map((e=>`user.${e}`)).concat("device.ext.cdep"),d=["user.eids","user.ext.eids"],c=["user.geo.lat","user.geo.lon","device.geo.lat","device.geo.lon"],l=["device.ip"],u=["device.ipv6"];function g(e){return Object.assign({get(){},run(e,t,n,r,i){const o=n&&n[r];if(m(o)&&i()){const e=this.get(o);void 0===e?delete n[r]:n[r]=e}}},e)}function f(e){return e.forEach((e=>{e.paths=e.paths.map((e=>{const t=e.split("."),n=t.pop();return[t.length>0?t.join("."):null,n]}))})),function(t,n){const i=[];for(var o=arguments.length,s=new Array(o>2?o-2:0),a=2;a<o;a++)s[a-2]=arguments[a];const d=p(t,...s);return e.forEach((e=>{if(!1!==t[e.name])for(const[o,s]of e.paths){const a=null==o?n:(0,r.A)(n,o);if(i.push(e.run(n,o,a,s,d.bind(null,e))),!1===t[e.name])return}})),i.filter((e=>null!=e))}}function p(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return function(t){return e.hasOwnProperty(t.name)||(e[t.name]=!!t.applies(...n)),e[t.name]}}function m(e){return null!=e&&("object"!=typeof e||Object.keys(e).length>0)}function h(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o.io;return function(n){return!t(e,n)}}function b(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;return[{name:s.DL,paths:a,applies:h(s.DL,e)},{name:s.hq,paths:d,applies:h(s.hq,e)},{name:s.hE,paths:c,applies:h(s.hE,e),get:e=>Math.round(100*(e+Number.EPSILON))/100},{name:s.hE,paths:l,applies:h(s.hE,e),get:e=>function(e){if(!e)return null;const t=e.split(".").map(Number);if(4!=t.length)return null;const n=[];for(let e=0;e<4;e++){const t=Math.max(0,Math.min(8,24-8*e));n.push(255<<8-t&255)}return t.map(((e,t)=>e&n[t])).join(".")}(e)},{name:s.hE,paths:u,applies:h(s.hE,e),get:e=>function(e){if(!e)return null;let t=e.split(":").map((e=>parseInt(e,16)));for(t=t.map((e=>isNaN(e)?0:e));t.length<8;)t.push(0);if(8!=t.length)return null;const n=[];for(let e=0;e<8;e++){const t=Math.max(0,Math.min(16,64-16*e));n.push(65535<<16-t&65535)}return t.map(((e,t)=>e&n[t])).map((e=>e.toString(16))).join(":")}(e)},{name:s.VJ,paths:["source.tid"],applies:h(s.VJ,e)}].map(g)}const y=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;const t=f(b(e)),n=f(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;return[{name:s.hq,paths:["userId","userIdAsEids"],applies:h(s.hq,e)},{name:s.VJ,paths:["ortb2Imp.ext.tid"],applies:h(s.VJ,e)}].map(g)}(e));return function(e){const r={};return{ortb2:n=>(t(r,n,e),n),bidRequest:t=>(n(r,t,e),t)}}}();(0,o.qB)(s.VJ,"enableTIDs config",(()=>{if(!i.$W.getConfig("enableTIDs"))return{allow:!1,reason:"TIDs are disabled"}}))},53202:(e,t,n)=>{n.d(t,{io:()=>s,qB:()=>o});var r=n(10466),i=n(25291);const[o,s]=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(0,r.prefixLog)("Activity control:");const t={};function n(e){return t[e]=t[e]||[]}function o(t,n,r,o){let s;try{s=r(o)}catch(r){e.logError(`Exception in rule ${n} for '${t}'`,r),s={allow:!1,reason:r}}return s&&Object.assign({activity:t,name:n,component:o[i.Ii]},s)}const s={};function a(t){let{activity:n,name:r,allow:i,reason:o,component:a}=t;const d=`${r} ${i?"allowed":"denied"} '${n}' for '${a}'${o?":":""}`,c=s.hasOwnProperty(d);if(c&&clearTimeout(s[d]),s[d]=setTimeout((()=>delete s[d]),1e3),!c){const t=[d];o&&t.push(o),(i?e.logInfo:e.logWarn).apply(e,t)}}return[function(e,t,r){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:10;const o=n(e),s=o.findIndex((e=>{let[t]=e;return i<t})),a=[i,t,r];return o.splice(s<0?o.length:s,0,a),function(){const e=o.indexOf(a);e>=0&&o.splice(e,1)}},function(e,t){let r,i;for(const[s,d,c]of n(e)){if(r!==s&&i)break;r=s;const n=o(e,d,c,t);if(n){if(!n.allow)return a(n),!1;i=n}}return i&&a(i),!0}]}()},71852:(e,t,n)=>{n.d(t,{$A:()=>I,BS:()=>P,Hh:()=>W,Pk:()=>j,Uc:()=>O,XO:()=>M,_0:()=>D,bw:()=>_,n6:()=>C,qn:()=>$,vB:()=>N,vW:()=>R,vd:()=>k});var r=n(10466),i=n(18014),o=n(11418),s=n(91933),a=n(67464),d=n(59794),c=n(63006),l=n(45144),u=n(32592),g=n(80356),f=n(13064),p=n(51409),m=n(37841),h=n(10552),b=n(72122);const{AD_RENDER_FAILED:y,AD_RENDER_SUCCEEDED:v,STALE_RENDER:E,BID_WON:A,EXPIRED_RENDER:w}=o.qY,{EXCEPTION:T}=o.as,I=(0,u.A_)("sync",(function(e){return(arguments.length>2&&void 0!==arguments[2]?arguments[2]:f.U9.resolve()).then((t=>t??c.n.findBidByAdId(e))).catch((()=>{}))})),C=(0,u.A_)("sync",(function(e){((0,b.$T)(e.eventtrackers)[b.RO]?.[b.Ni]||[]).forEach((e=>(0,r.triggerPixel)(e))),i.emit(A,e),c.n.addWinningBid(e)}));function S(e){let{reason:t,message:n,bid:o,id:s}=e;const a={reason:t,message:n};o&&(a.bid=o,a.adId=o.adId),s&&(a.adId=s),(0,r.logError)(`Error rendering ad (id: ${s}): ${n}`),i.emit(y,a)}function B(e){let{doc:t,bid:n,id:r}=e;const o={doc:t,bid:n,adId:r};p.Ay.callAdRenderSucceededBidder(n.adapterCode||n.bidder,n),i.emit(v,o)}function O(e,t){switch(e.event){case o.qY.AD_RENDER_FAILED:S({bid:t,id:t.adId,reason:e.info.reason,message:e.info.message});break;case o.qY.AD_RENDER_SUCCEEDED:B({doc:null,bid:t,id:t.adId});break;default:(0,r.logError)(`Received event request for unsupported event: '${e.event}' (adId: '${t.adId}')`)}}function R(e,t,n){let{resizeFn:r,fireTrackers:i=g.vO}=n;if("resizeNativeHeight"===e.action)r(e.width,e.height);else i(e,t)}const U={[o.nl.EVENT]:O};U[o.nl.NATIVE]=R;const k=(0,u.A_)("sync",(function(e,t){const{ad:n,adUrl:i,cpm:o,originalCpm:s,width:a,height:d,instl:c}=e,l={AUCTION_PRICE:s||o,CLICKTHROUGH:t?.clickUrl||""};return{ad:(0,r.replaceMacros)(n,l),adUrl:(0,r.replaceMacros)(i,l),width:a,height:d,instl:c}})),D=(0,u.A_)("sync",(function(e){let{renderFn:t,resizeFn:n,bidResponse:i,options:s,doc:a,isMainDocument:c=a===document&&!(0,r.inIframe)()}=e;const l=i.mediaType===d.G_;if(c||l)return void S({reason:o.as.PREVENT_WRITING_ON_MAIN_DOCUMENT,message:l?"Cannot render video ad without a renderer":"renderAd was prevented from writing to the main document.",bid:i,id:i.adId});const u=k(i,s);t(Object.assign({adId:i.adId},u));const{width:g,height:f}=u;null!=(g??f)&&n(g,f)}));function _(e){let{renderFn:t,resizeFn:n,adId:a,options:d,bidResponse:c,doc:l}=e;W(c,(()=>{if(null!=c){if((c.status!==o.tl.RENDERED||((0,r.logWarn)(`Ad id ${a} has been rendered before`),i.emit(E,c),!s.$W.getConfig("auctionOptions")?.suppressStaleRender))&&(h.uW.isBidNotExpired(c)||((0,r.logWarn)(`Ad id ${a} has been expired`),i.emit(w,c),!s.$W.getConfig("auctionOptions")?.suppressExpiredRender)))try{D({renderFn:t,resizeFn:n,bidResponse:c,options:d,doc:l})}catch(e){S({reason:o.as.EXCEPTION,message:e.message,id:a,bid:c})}}else S({reason:o.as.CANNOT_FIND_AD,message:`Cannot find ad '${a}'`,id:a})}))}function $(e){const t=(0,m.BO)(e.metrics);t.checkpoint("bidRender"),t.timeBetween("bidWon","bidRender","render.deferred"),t.timeBetween("auctionEnd","bidRender","render.pending"),t.timeBetween("requestBids","bidRender","render.e2e"),e.status=o.tl.RENDERED}D.before((function(e,t){const{bidResponse:n,doc:r}=t;(0,a.J7)(n.renderer)?((0,a.Pg)(n.renderer,n,r),B({doc:r,bid:n,id:n.adId}),e.bail()):e(t)}),100);const q=new WeakMap,x=new WeakSet;function W(e,t){null!=e?(q.set(e,t),e.deferRendering||N(e),j(e)):t()}function j(e){x.has(e)||(x.add(e),C(e))}function N(e){const t=q.get(e);t&&(t(),$(e),q.delete(e))}function P(e,t,n){let i;function s(e,n){S(Object.assign({id:t,bid:i},{reason:e,message:n}))}function a(t,n){const r=e.defaultView?.frameElement;r&&(t&&(r.width=t,r.style.width&&(r.style.width=`${t}px`)),n&&(r.height=n,r.style.height&&(r.style.height=`${n}px`)))}const d=(c={resizeFn:a},function(e,t,n){U.hasOwnProperty(e)&&U[e](t,n,c)});var c;function u(t){t.ad?(e.write(t.ad),e.close(),B({doc:e,bid:i,id:i.adId})):(0,l.HH)(i).then((n=>n(t,{sendMessage:(e,t)=>d(e,t,i),mkFrame:r.createIframe},e.defaultView))).then((()=>B({doc:e,bid:i,id:i.adId})),(e=>{s(e?.reason||o.as.EXCEPTION,e?.message),e?.stack&&(0,r.logError)(e)}));const n=document.createComment(`Creative ${i.creativeId} served by ${i.bidder} Prebid.js Header Bidding`);(0,r.insertElement)(n,e,"html")}try{t&&e?I(t).then((r=>{i=r,_({renderFn:u,resizeFn:a,adId:t,options:{clickUrl:n?.clickThrough},bidResponse:r,doc:e})})):s(o.as.MISSING_DOC_OR_ADID,"missing "+(t?"doc":"adId"))}catch(e){s(T,e.message)}}function M(){if(!window.frames[o.IY])if(document.body){const e=(0,r.createInvisibleIframe)();e.name=o.IY,document.body.appendChild(e)}else window.requestAnimationFrame(M)}},71958:(e,t,n)=>{n.d(t,{U:()=>s});var r=n(51748),i=n(10466);const o=(0,r.m)();function s(e,t){o.adServers=o.adServers||{},o.adServers[e]=o.adServers[e]||{},Object.keys(t).forEach((n=>{o.adServers[e][n]?(0,i.logWarn)(`Attempting to add an already registered function property ${n} for AdServer ${e}.`):o.adServers[e][n]=t[n]}))}},5672:(e,t,n)=>{function r(e){var t=e;return{callBids:function(){},setBidderCode:function(e){t=e},getBidderCode:function(){return t}}}n.d(t,{A:()=>r})},51409:(e,t,n)=>{n.d(t,{S1:()=>j,Ay:()=>re,tS:()=>J,pX:()=>Y,Mf:()=>X,K5:()=>H,Gs:()=>K});var r=n(26665),i=n(10466),o=n(80356),s=n(3516),a=n(62201),d=n(91933),c=n(32592);const l="requests",u="wins",g="auctions";let f={};function p(e,t){const n=f[e]=f[e]||{bidders:{}};return t?n.bidders[t]=n.bidders[t]||{}:n}function m(e,t){return function(n,r){const i=p(n,t&&r);return i[e]=(i[e]??0)+1,i[e]}}function h(e,t){return function(n,r){return p(n,t&&r)[e]??0}}const b=m(l,!1),y=m(l,!0),v=m(u,!0),E=m(g,!1),A=h(l,!1),w=h(l,!0),T=h(u,!0),I=h(g,!1);var C=n(10867),S=n(41385),B=n(18014),O=n(11418),R=n(37841),U=n(63006),k=n(70736),D=n(53202),_=n(45808),$=n(25291),q=n(53578),x=n(72122);const W="pbsBidAdapter",j={CLIENT:"client",SERVER:"server"},N={isAllowed:D.io,redact:q.$p},P={},M={},F={};let G=[];d.$W.getConfig("s2sConfig",(e=>{e&&e.s2sConfig&&(G=(0,r.cy)(e.s2sConfig)?e.s2sConfig:[e.s2sConfig])}));const L=(0,$.ZI)((e=>Z.resolveAlias(e)));function z(e){return e.configName??e.name}function H(e){return L(k.tp,W,{[$.XG]:z(e)})}const V=["nativeParams","nativeOrtbRequest","renderer"];function Q(e){let{bidderCode:t,auctionId:n,bidderRequestId:o,adUnits:s,src:a,metrics:d}=e;return s.reduce(((e,s)=>{const c=s.bids.filter((e=>e.bidder===t));return null==t&&0===c.length&&null!=s.s2sBid&&c.push({bidder:null}),e.push(c.reduce(((e,c)=>{const l=null==(c=Object.assign({},c,{ortb2Imp:(0,i.mergeDeep)({},s.ortb2Imp,c.ortb2Imp)},(0,r.SH)(s,V))).mediaTypes?s.mediaTypes:c.mediaTypes;return(0,i.isValidMediaTypes)(l)?c=Object.assign({},c,{mediaTypes:l}):(0,i.logError)(`mediaTypes is not correctly configured for adunit ${s.code}`),"client"===a&&y(s.code,t),e.push(Object.assign({},c,{adUnitCode:s.code,transactionId:s.transactionId,adUnitId:s.adUnitId,sizes:l?.banner?.sizes||l?.video?.playerSize||[],bidId:c.bid_id||(0,i.getUniqueIdentifierStr)(),bidderRequestId:o,auctionId:n,src:a,metrics:d,auctionsCount:I(s.code),bidRequestsCount:A(s.code),bidderRequestsCount:w(s.code,c.bidder),bidderWinsCount:T(s.code,c.bidder),deferBilling:!!s.deferBilling})),e}),[])),e}),[]).reduce(i.flatten,[]).filter((e=>""!==e))}const J=(0,c.A_)("sync",(function(e,t){let{getS2SBidders:n=Y}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null==t)return e;{const r=n(t);return e.filter((e=>{if(!r.has(e.bidder))return!1;if(null==e.s2sConfigName)return!0;const n=z(t);return(Array.isArray(e.s2sConfigName)?e.s2sConfigName:[e.s2sConfigName]).includes(n)}))}}),"filterBidsForAdUnit");const K=(0,c.A_)("sync",((e,t)=>e),"setupAdUnitMediaTypes");function Y(e){(0,r.cy)(e)||(e=[e]);const t=new Set([null]);return e.filter((e=>e&&e.enabled)).flatMap((e=>e.bidders)).forEach((e=>t.add(e))),t}const X=(0,c.A_)("sync",(function(e,t){let{getS2SBidders:n=Y}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=n(t);return(0,i.getBidderCodes)(e).reduce(((e,t)=>(e[r.has(t)?j.SERVER:j.CLIENT].push(t),e)),{[j.CLIENT]:[],[j.SERVER]:[]})}),"partitionBidders"),Z={bidderRegistry:P,analyticsRegistry:F,aliasRegistry:M,makeBidRequests:(0,c.A_)("sync",(function(e,t,n,s,a){let c=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},l=arguments.length>6?arguments[6]:void 0;l=(0,R.BO)(l),B.emit(O.qY.BEFORE_REQUEST_BIDS,e),(0,o.nk)(e),e.map((e=>e.code)).filter(i.uniques).forEach(E),e.forEach((e=>{(0,r.Qd)(e.mediaTypes)||(e.mediaTypes={}),e.bids=e.bids.filter((e=>!e.bidder||N.isAllowed(_.uc,L(k.tW,e.bidder)))),b(e.code)})),e=K(e,a);let{[j.CLIENT]:u,[j.SERVER]:g}=X(e,G);d.$W.getConfig("bidderSequence")===d.Ov&&(u=(0,i.shuffle)(u));const f=(0,C.EN)(),p=[],m=c.global||{},h=c.bidder||{};function y(e,t){const r=N.redact(null!=t?t:L(k.tW,e.bidderCode)),o=Object.freeze(r.ortb2((0,i.mergeDeep)({source:{tid:n}},m,h[e.bidderCode])));return e.ortb2=o,e.bids=e.bids.map((e=>(e.ortb2=o,r.bidRequest(e)))),e}G.forEach((o=>{const s=H(o);if(o&&o.enabled&&N.isAllowed(_.uc,s)){const{adUnits:a,hasModuleBids:d}=function(e,t){let n=(0,r.Go)(e),o=!1;return n.forEach((e=>{const n=e.bids.filter((e=>e.module===W&&e.params?.configName===z(t)));1===n.length?(e.s2sBid=n[0],o=!0,e.ortb2Imp=(0,i.mergeDeep)({},e.s2sBid.ortb2Imp,e.ortb2Imp)):n.length>1&&(0,i.logWarn)('Multiple "module" bids for the same s2s configuration; all will be ignored',n),e.bids=J(e.bids,t).map((e=>(e.bid_id=(0,i.getUniqueIdentifierStr)(),e)))})),n=n.filter((e=>!(t.filterBidderlessCalls&&1===e.bids.length&&null==e.bids[0].bidder||0===e.bids.length&&null==e.s2sBid))),{adUnits:n,hasModuleBids:o}}(e,o),c=(0,i.generateUUID)();(0===g.length&&d?[null]:g).forEach((e=>{const d=(0,i.getUniqueIdentifierStr)(),u=l.fork(),g=y({bidderCode:e,auctionId:n,bidderRequestId:d,uniquePbsTid:c,bids:Q({bidderCode:e,auctionId:n,bidderRequestId:d,adUnits:(0,r.Go)(a),src:O.RW.SRC,metrics:u}),auctionStart:t,timeout:o.timeout,src:O.RW.SRC,refererInfo:f,metrics:u},s);0!==g.bids.length&&p.push(g)})),a.forEach((e=>{const t=e.bids.filter((e=>p.find((t=>t.bids.find((t=>t.bidId===e.bid_id))))));e.bids=t})),p.forEach((e=>{void 0===e.adUnitsS2SCopy&&(e.adUnitsS2SCopy=a.filter((e=>e.bids.length>0||null!=e.s2sBid)))}))}}));const v=function(e){let t=(0,r.Go)(e);return t.forEach((e=>{e.bids=J(e.bids,null)})),t=t.filter((e=>0!==e.bids.length)),t}(e);return u.forEach((e=>{const o=(0,i.getUniqueIdentifierStr)(),a=l.fork(),d=y({bidderCode:e,auctionId:n,bidderRequestId:o,bids:Q({bidderCode:e,auctionId:n,bidderRequestId:o,adUnits:(0,r.Go)(v),src:"client",metrics:a}),auctionStart:t,timeout:s,refererInfo:f,metrics:a}),c=P[e];c||(0,i.logError)(`Trying to make a request for bidder that does not exist: ${e}`),c&&d.bids&&0!==d.bids.length&&p.push(d)})),p.forEach((e=>{S.mW.getConsentData()&&(e.gdprConsent=S.mW.getConsentData()),S.t6.getConsentData()&&(e.uspConsent=S.t6.getConsentData()),S.ad.getConsentData()&&(e.gppConsent=S.ad.getConsentData())})),p}),"makeBidRequests"),callBids(e,t,n,r,o,s,c){let l=arguments.length>7&&void 0!==arguments[7]?arguments[7]:{};if(!t.length)return void(0,i.logWarn)("callBids executed with no bidRequests. Were they filtered by labels or sizing?");const[u,g]=t.reduce(((e,t)=>(e[Number(void 0!==t.src&&t.src===O.RW.SRC)].push(t),e)),[[],[]]);var f=[];g.forEach((e=>{for(var t=-1,n=0;n<f.length;++n)if(e.uniquePbsTid===f[n].uniquePbsTid){t=n;break}t<=-1&&f.push(e)}));let p=0;G.forEach((e=>{if(e&&f[p]&&Y(e).has(f[p].bidderCode)){const t=(0,a.g4)(s,o?{request:o.request.bind(null,"s2s"),done:o.done}:void 0),d=e.bidders,u=P[e.adapter],m=f[p].uniquePbsTid,h=f[p].adUnitsS2SCopy,b=g.filter((e=>e.uniquePbsTid===m));if(u){const o={ad_units:h,s2sConfig:e,ortb2Fragments:l,requestBidsTimeout:s};if(o.ad_units.length){const e=b.map((e=>(e.start=(0,i.timestamp)(),function(t){t||c(e.bidderRequestId);for(var n=arguments.length,i=new Array(n>1?n-1:0),o=1;o<n;o++)i[o-1]=arguments[o];r.apply(e,[t,...i])}))),s=(0,i.getBidderCodes)(o.ad_units).filter((e=>d.includes(e)));(0,i.logMessage)(`CALLING S2S HEADER BIDDERS ==== ${s.length>0?s.join(", "):'No bidder specified, using "ortb2Imp" definition(s) only'}`),b.forEach((e=>{B.emit(O.qY.BID_REQUESTED,{...e,tid:e.auctionId})})),u.callBids(o,g,n,(t=>e.forEach((e=>e(t)))),t)}}else(0,i.logError)("missing "+e.adapter);p++}})),u.forEach((e=>{e.start=(0,i.timestamp)();const t=P[e.bidderCode];d.$W.runWithBidder(e.bidderCode,(()=>{(0,i.logMessage)("CALLING BIDDER"),B.emit(O.qY.BID_REQUESTED,e)}));const l=(0,a.g4)(s,o?{request:o.request.bind(null,e.bidderCode),done:o.done}:void 0),u=r.bind(e);try{d.$W.runWithBidder(e.bidderCode,t.callBids.bind(t,e,n,u,l,(()=>c(e.bidderRequestId)),d.$W.callbackWithBidder(e.bidderCode)))}catch(t){(0,i.logError)(`${e.bidderCode} Bid Adapter emitted an uncaught error when parsing their bidRequest`,{e:t,bidRequest:e}),u()}}))},videoAdapters:[],registerBidAdapter(e,t){let{supportedMediaTypes:n=[]}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};e&&t?"function"==typeof e.callBids?(P[t]=e,S.o2.register(k.tW,t,e.getSpec?.().gvlid),n.includes("video")&&Z.videoAdapters.push(t),n.includes("native")&&o.mT.push(t)):(0,i.logError)("Bidder adaptor error for bidder code: "+t+"bidder must implement a callBids() function"):(0,i.logError)("bidAdapter or bidderCode not specified")},aliasBidAdapter(e,t,n){if(void 0===P[t]){const r=P[e];if(void 0===r){const n=[];G.forEach((r=>{if(r.bidders&&r.bidders.length){const i=r&&r.bidders;r&&i.includes(t)?M[t]=e:n.push(e)}})),n.forEach((e=>{(0,i.logError)('bidderCode "'+e+'" is not an existing bidder.',"adapterManager.aliasBidAdapter")}))}else try{let a;const d=function(e){const t=[];Z.videoAdapters.includes(e)&&t.push("video");o.mT.includes(e)&&t.push("native");return t}(e);if(r.constructor.prototype!=Object.prototype)a=new r.constructor,a.setBidderCode(t);else{const{useBaseGvlid:o=!1}=n||{},d=r.getSpec(),c=o?d.gvlid:n?.gvlid;null==c&&null!=d.gvlid&&(0,i.logWarn)(`Alias '${t}' will NOT re-use the GVL ID of the original adapter ('${d.code}', gvlid: ${d.gvlid}). Functionality that requires TCF consent may not work as expected.`);const l=n&&n.skipPbsAliasing;a=(0,s.xb)(Object.assign({},d,{code:t,gvlid:c,skipPbsAliasing:l})),M[t]=e}Z.registerBidAdapter(a,t,{supportedMediaTypes:d})}catch(t){(0,i.logError)(e+" bidder does not currently support aliasing.","adapterManager.aliasBidAdapter")}}else(0,i.logMessage)('alias name "'+t+'" has been already specified.')},resolveAlias(e){let t,n=e;for(;M[n]&&(!t||!t.has(n));)n=M[n],(t=t||new Set).add(n);return n},registerAnalyticsAdapter(e){let{adapter:t,code:n,gvlid:r}=e;t&&n?"function"==typeof t.enableAnalytics?(t.code=n,F[n]={adapter:t,gvlid:r},S.o2.register(k.Tn,n,r)):(0,i.logError)(`Prebid Error: Analytics adaptor error for analytics "${n}"\n analytics adapter must implement an enableAnalytics() function`):(0,i.logError)("Prebid Error: analyticsAdapter or analyticsCode not specified")},enableAnalytics(e){(0,r.cy)(e)||(e=[e]),e.forEach((e=>{const t=F[e.provider];t&&t.adapter?N.isAllowed(_.mo,L(k.Tn,e.provider,{[$.TQ]:e}))&&t.adapter.enableAnalytics(e):(0,i.logError)(`Prebid Error: no analytics adapter found in registry for '${e.provider}'.`)}))},getBidAdapter:e=>P[e],getAnalyticsAdapter:e=>F[e],callTimedOutBidders(e,t,n){t=t.map((t=>(t.params=(0,i.getUserConfiguredParams)(e,t.adUnitCode,t.bidder),t.timeout=n,t))),t=(0,i.groupBy)(t,"bidder"),Object.keys(t).forEach((e=>{ne(e,"onTimeout",t[e])}))},callBidWonBidder(e,t,n){t.params=(0,i.getUserConfiguredParams)(n,t.adUnitCode,t.bidder),v(t.adUnitCode,t.bidder),ne(e,"onBidWon",t)},triggerBilling:(()=>{const e=new WeakSet;return t=>{e.has(t)||(e.add(t),((0,x.$T)(t.eventtrackers)[x.OA]?.[x.Ni]||[]).forEach((e=>i.internal.triggerPixel(e))),ne(t.bidder,"onBidBillable",t))}})(),callSetTargetingBidder(e,t){ne(e,"onSetTargeting",t)},callBidViewableBidder(e,t){ne(e,"onBidViewable",t)},callBidderError(e,t,n){ne(e,"onBidderError",{error:t,bidderRequest:n})},callAdRenderSucceededBidder(e,t){ne(e,"onAdRenderSucceeded",t)},callDataDeletionRequest:(0,c.A_)("sync",(function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];const r="onDataDeletionRequest";Object.keys(P).filter((e=>!M.hasOwnProperty(e))).forEach((e=>{const n=ee(e,r);if(null!=n){const i=U.n.getBidsRequested().filter((t=>function(e){const t=new Set;for(;M.hasOwnProperty(e)&&!t.has(e);)t.add(e),e=M[e];return e}(t.bidderCode)===e));te(e,r,...n,i,...t)}})),Object.entries(F).forEach((e=>{let[n,o]=e;const s=o?.adapter?.[r];if("function"==typeof s)try{s.apply(o.adapter,t)}catch(e){(0,i.logError)(`error calling ${r} of ${n}`,e)}}))}))};function ee(e,t){const n=P[e],r=n?.getSpec&&n.getSpec();if(r&&r[t]&&"function"==typeof r[t])return[r,r[t]]}function te(e,t,n,r){try{(0,i.logInfo)(`Invoking ${e}.${t}`);for(var o=arguments.length,s=new Array(o>4?o-4:0),a=4;a<o;a++)s[a-4]=arguments[a];d.$W.runWithBidder(e,r.bind(n,...s))}catch(n){(0,i.logWarn)(`Error calling ${t} of ${e}`)}}function ne(e,t,n){if(n?.source!==O.RW.SRC){const r=ee(e,t);null!=r&&te(e,t,...r,n)}}const re=Z},3516:(e,t,n)=>{n.d(t,{JN:()=>U,JS:()=>D,a$:()=>I,eI:()=>C,fn:()=>k,xb:()=>S});var r=n(5672),i=n(51409),o=n(91933),s=n(63320),a=n(73391),d=n(80356),c=n(36220),l=n(11418),u=n(18014),g=n(26665),f=n(10466),p=n(32592),m=n(63006),h=n(77156),b=n(37841),y=n(53202),v=n(77610),E=n(70736),A=n(45808);const w=["cpm","ttl","creativeId","netRevenue","currency"],T=["auctionId","transactionId"];function I(e){const t=Array.isArray(e.supportedMediaTypes)?{supportedMediaTypes:e.supportedMediaTypes}:void 0;function n(e){const n=S(e);i.Ay.registerBidAdapter(n,e.code,t)}n(e),Array.isArray(e.aliases)&&e.aliases.forEach((t=>{let r,o,s=t;(0,g.Qd)(t)&&(s=t.code,r=t.gvlid,o=t.skipPbsAliasing),i.Ay.aliasRegistry[s]=e.code,n(Object.assign({},e,{code:s,gvlid:r,skipPbsAliasing:o}))}))}const C=(0,f.memoize)((e=>{let{bidderCode:t}=e;if((0,y.io)(A.VJ,(0,v.s)(E.tW,t)))return{bidRequest:e=>e,bidderRequest:e=>e};function n(e,t,n){return T.includes(t)?null:Reflect.get(e,t,n)}function r(e,t){const n=new Proxy(e,t);return Object.entries(e).filter((e=>{let[t,n]=e;return"function"==typeof n})).forEach((t=>{let[r,i]=t;return n[r]=i.bind(e)})),n}const i=(0,f.memoize)((e=>r(e,{get:n})),(e=>e.bidId));return{bidRequest:i,bidderRequest:e=>r(e,{get:(t,r,o)=>"bids"===r?e.bids.map(i):n(t,r,o)})}}));function S(e){return Object.assign((0,r.A)(e.code),{getSpec:function(){return Object.freeze(Object.assign({},e))},registerSyncs:t,callBids:function(n,r,a,d,c,p){if(!Array.isArray(n.bids))return;const m=C(n),y={};const v=[];function E(){a(),o.$W.runWithBidder(e.code,(()=>{u.emit(l.qY.BIDDER_DONE,n),t(v,n.gdprConsent,n.uspConsent,n.gppConsent)}))}const A=D(n).measureTime("validate",(()=>n.bids.filter((t=>function(t){if(!e.isBidRequestValid(t))return(0,f.logWarn)(`Invalid bid sent to bidder ${e.code}: ${JSON.stringify(t)}`),!1;return!0}(m.bidRequest(t))))));if(0===A.length)return void E();const w={};A.forEach((e=>{w[e.bidId]=e})),O(e,A,n,d,p,{onRequest:e=>u.emit(l.qY.BEFORE_BIDDER_HTTP,n,e),onResponse:t=>{c(e.code),v.push(t)},onPaapi:e=>{const t=w[e.bidId];t?U(t,e):(0,f.logWarn)("Received fledge auction configuration for an unknown bidId",e)},onError:(t,r)=>{r.timedOut||c(e.code),i.Ay.callBidderError(e.code,r,n),u.emit(l.qY.BIDDER_ERROR,{error:r,bidderRequest:n}),(0,f.logError)(`Server call for ${e.code} failed: ${t} ${r.status}. Continuing without bids.`,{bidRequests:A})},onBid:t=>{const n=w[t.requestId],i=t;if(n){if(i.adapterCode=n.bidder,function(e,t){const n=h.u.get(t,"allowAlternateBidderCodes")||!1;let r=h.u.get(t,"allowedAlternateBidderCodes");if(e&&t&&t!==e&&(r=(0,g.cy)(r)?r.map((e=>e.trim().toLowerCase())).filter((e=>!!e)).filter(f.uniques):r,!n||(0,g.cy)(r)&&"*"!==r[0]&&!r.includes(e)))return!0;return!1}(t.bidderCode,n.bidder))return(0,f.logWarn)(`${t.bidderCode} is not a registered partner or known bidder of ${n.bidder}, hence continuing without bid. If you wish to support this bidder, please mark allowAlternateBidderCodes as true in bidderSettings.`),void r.reject(n.adUnitCode,t,l.Tf.BIDDER_DISALLOWED);i.originalCpm=t.cpm,i.originalCurrency=t.currency,i.meta=t.meta||Object.assign({},t[n.bidder]),i.deferBilling=n.deferBilling,i.deferRendering=i.deferBilling&&(t.deferRendering??"function"!=typeof e.onBidBillable);const o=Object.assign((0,s.O)(n),i,(0,f.pick)(n,T));!function(e,t){const n=(0,b.BO)(t.metrics);n.checkpoint("addBidResponse"),y[e]=!0,n.measureTime("addBidResponse.validate",(()=>k(e,t)))?r(e,t):r.reject(e,t,l.Tf.INVALID)}(n.adUnitCode,o)}else(0,f.logWarn)(`Bidder ${e.code} made bid for unknown request ID: ${t.requestId}. Ignoring.`),r.reject(null,t,l.Tf.INVALID_REQUEST_ID)},onCompletion:E})}});function t(t,n,r,i){R(e,t,n,r,i)}}const B=["bids","paapi"],O=(0,p.A_)("async",(function(e,t,n,r,i,o){let{onRequest:s,onResponse:a,onPaapi:d,onError:c,onBid:u,onCompletion:p}=o;const m=D(n);p=m.startTiming("total").stopBefore(p);const b=C(n);let w=m.measureTime("buildRequests",(()=>e.buildRequests(t.map(b.bidRequest),b.bidderRequest(n))));if(Array.isArray(w)||(w=[w]),!w||0===w.length)return void p();const T=(0,f.delayExecution)(p,w.length);w.forEach((t=>{const n=m.fork();function o(e){null!=e&&(e.metrics=n.fork().renameWith()),u(e)}const p=i((function(r,i){w();try{r=JSON.parse(r)}catch(e){}r={body:r,headers:{get:i.getResponseHeader.bind(i)}},a(r);try{r=n.measureTime("interpretResponse",(()=>e.interpretResponse(r,t)))}catch(t){return(0,f.logError)(`Bidder ${e.code} failed to interpret the server's response. Continuing without bids`,null,t),void T()}let s,c;r&&!Object.keys(r).some((e=>!B.includes(e)))?(s=r.bids,c=r.paapi):s=r,(0,g.cy)(c)&&c.forEach(d),s&&((0,g.cy)(s)?s.forEach(o):o(s)),T()})),b=i((function(e,t){w(),c(e,t),T()}));s(t);const w=n.startTiming("net"),I="TRUE"===(0,f.getParameterByName)(l.M).toUpperCase()||(0,f.debugTurnedOn)();function C(n){const r=t.options;return Object.assign(n,r,{browsingTopics:!(r?.hasOwnProperty("browsingTopics")&&!r.browsingTopics)&&((h.u.get(e.code,"topicsHeader")??!0)&&(0,y.io)(A.DL,(0,v.s)(E.tW,e.code))),suppressTopicsEnrollmentWarning:r?.hasOwnProperty("suppressTopicsEnrollmentWarning")?r.suppressTopicsEnrollmentWarning:!I})}switch(t.method){case"GET":r(`${t.url}${function(e){if(e)return`?${"object"==typeof e?(0,f.parseQueryStringParameters)(e):e}`;return""}(t.data)}`,{success:p,error:b},void 0,C({method:"GET",withCredentials:!0}));break;case"POST":const n=t.options?.endpointCompression,i=e=>{let{url:t,payload:n}=e;r(t,{success:p,error:b},n,C({method:"POST",contentType:"text/plain",withCredentials:!0}))};n&&I&&(0,f.logWarn)(`Skipping GZIP compression for ${e.code} as debug mode is enabled`),n&&!I&&(0,f.isGzipCompressionSupported)()?(0,f.compressDataWithGZip)(t.data).then((e=>{const n=new URL(t.url,window.location.origin);n.searchParams.has("gzip")||n.searchParams.set("gzip","1"),i({url:n.href,payload:e})})):i({url:t.url,payload:"string"==typeof t.data?t.data:JSON.stringify(t.data)});break;default:(0,f.logWarn)(`Skipping invalid request from ${e.code}. Request type ${t.method} must be GET or POST`),T()}}))}),"processBidderRequests"),R=(0,p.A_)("async",(function(e,t,n,r,s){const d=o.$W.getConfig("userSync.aliasSyncEnabled");if(e.getUserSyncs&&(d||!i.Ay.aliasRegistry[e.code])){let i=e.getUserSyncs({iframeEnabled:a.zt.canBidderRegisterSync("iframe",e.code),pixelEnabled:a.zt.canBidderRegisterSync("image",e.code)},t,n,r,s);i&&(Array.isArray(i)||(i=[i]),i.forEach((t=>{a.zt.registerSync(t.type,e.code,t.url)})),a.zt.bidderDone(e.code))}}),"registerSyncs"),U=(0,p.A_)("sync",((e,t)=>{}),"addPaapiConfig");function k(e,t){let{index:n=m.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};function r(e){return`Invalid bid from ${t.bidderCode}. Ignoring bid: ${e}`}return e?t?function(){const e=Object.keys(t);return w.every((n=>e.includes(n)&&![void 0,null].includes(t[n])))}()?"native"!==t.mediaType||(0,d.Bm)(t,{index:n})?"video"!==t.mediaType||(0,c.vk)(t,{index:n})?!("banner"===t.mediaType&&!function(e,t){let{index:n=m.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if((t.width||0===parseInt(t.width,10))&&(t.height||0===parseInt(t.height,10)))return t.width=parseInt(t.width,10),t.height=parseInt(t.height,10),!0;if(null!=t.wratio&&null!=t.hratio)return t.wratio=parseInt(t.wratio,10),t.hratio=parseInt(t.hratio,10),!0;const r=n.getBidRequest(t),i=n.getMediaTypes(t),o=r&&r.sizes||i&&i.banner&&i.banner.sizes,s=(0,f.parseSizesInput)(o);if(1===s.length){const[e,n]=s[0].split("x");return t.width=parseInt(e,10),t.height=parseInt(n,10),!0}return!1}(e,t,{index:n}))||((0,f.logError)(r("Banner bids require a width and height")),!1):((0,f.logError)(r("Video bid does not have required vastUrl or renderer property")),!1):((0,f.logError)(r("Native bid missing some required properties.")),!1):((0,f.logError)(r(`Bidder ${t.bidderCode} is missing required params. Check http://prebid.org/dev-docs/bidder-adapter-1.html for list of params.`)),!1):((0,f.logWarn)(`Some adapter tried to add an undefined bid for ${e}.`),!1):((0,f.logWarn)("No adUnitCode was supplied to addBidResponse."),!1)}function D(e){return(0,b.BO)(e.metrics).renameWith((t=>[`adapter.client.${t}`,`adapters.client.${e.bidderCode}.${t}`]))}},75049:(e,t,n)=>{n.d(t,{R:()=>c});var r=n(45808),i=n(77610),o=n(53202),s=n(10466);const a=new WeakMap,d=["debugging","outstream","aaxBlockmeter","adagio","adloox","arcspan","airgrid","browsi","brandmetrics","clean.io","humansecurityMalvDefense","humansecurity","confiant","contxtful","hadron","mediafilter","medianet","azerionedge","a1Media","geoedge","qortex","dynamicAdBoost","51Degrees","symitridap","wurfl","nodalsAi","anonymised","optable","justtag","tncId","ftrackId","id5"];function c(e,t,n,c,l,u){if(!(0,o.io)(r.pY,(0,i.s)(t,n)))return;if(!n||!e)return void(0,s.logError)("cannot load external script without url and moduleCode");if(!d.includes(n))return void(0,s.logError)(`${n} not whitelisted for loading external JavaScript`);l||(l=document);const g=m(l,e);if(g)return c&&"function"==typeof c&&(g.loaded?c():g.callbacks.push(c)),g.tag;const f=a.get(l)||{},p={loaded:!1,tag:null,callbacks:[]};return f[e]=p,a.set(l,f),c&&"function"==typeof c&&p.callbacks.push(c),(0,s.logWarn)(`module ${n} is loading external JavaScript`),function(t,n,r,i){r||(r=document);var o=r.createElement("script");o.type="text/javascript",o.async=!0;const a=m(r,e);a&&(a.tag=o);o.readyState?o.onreadystatechange=function(){"loaded"!==o.readyState&&"complete"!==o.readyState||(o.onreadystatechange=null,n())}:o.onload=function(){n()};o.src=t,i&&(0,s.setScriptAttributes)(o,i);return(0,s.insertElement)(o,r),o}(e,(function(){p.loaded=!0;try{for(let e=0;e<p.callbacks.length;e++)p.callbacks[e]()}catch(e){(0,s.logError)("Error executing callback","adloader.js:loadExternalScript",e)}}),l,u);function m(e,t){const n=a.get(e);return n&&n[t]?n[t]:null}}},3129:(e,t,n)=>{n.d(t,{Q:()=>r});const r=(0,n(32592).A_)("sync",(()=>{}))},62201:(e,t,n)=>{n.d(t,{RD:()=>y,Rz:()=>b,g4:()=>h,hd:()=>v,p3:()=>f});var r=n(45808),i=n(77610),o=n(53202),s=n(91933),a=n(32592),d=n(10466);const c={fetch:window.fetch.bind(window),makeRequest:(e,t)=>new Request(e,t),timeout(e,t){const n=new AbortController;let r=setTimeout((()=>{n.abort(),(0,d.logError)(`Request timeout after ${e}ms`,t),r=null}),e);return{signal:n.signal,done(){r&&clearTimeout(r)}}}},l="GET",u="POST",g="Content-Type",f=(0,a.A_)("async",(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0;return e.withCredentials&&(e.withCredentials=t&&n?(0,o.io)(r.yg,(0,i.s)(t,n)):(0,d.hasDeviceAccess)()),e}),"processRequestOptions");function p(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3e3,{request:t,done:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0,o=(t,n)=>{let o;null==e||null!=n?.signal||s.$W.getConfig("disableAjaxTimeout")||(o=c.timeout(e,t),n=Object.assign({signal:o.signal},n)),f(n,r,i);let a=c.fetch(t,n);return null!=o?.done&&(a=a.finally(o.done)),a};return null==t&&null==n||(o=(e=>function(r,i){const o=new URL(null==r?.url?r:r.url,document.location).origin;let s=e(r,i);return t&&t(o),n&&(s=s.finally((()=>n(o)))),s})(o)),o}function m(e,t){let n,{status:r,statusText:i="",headers:o,url:s}=e;function a(e){if(void 0===n)try{n=(new DOMParser).parseFromString(t,o?.get(g)?.split(";")?.[0])}catch(t){n=null,e&&e(t)}return n}return{readyState:XMLHttpRequest.DONE,status:r,statusText:i,responseText:t,response:t,responseType:"",responseURL:s,get responseXML(){return a(d.logError)},getResponseHeader:e=>o?.has(e)?o.get(e):null,toJSON(){return Object.assign({responseXML:a()},this)},timedOut:!1}}function h(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3e3,{request:t,done:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const r=p(e,{request:t,done:n},arguments.length>2?arguments[2]:void 0,arguments.length>3?arguments[3]:void 0);return function(e,t,n){!function(e,t){const{success:n,error:r}="object"==typeof t&&null!=t?t:{success:"function"==typeof t?t:()=>null,error:(e,t)=>(0,d.logError)("Network error",e,t)};e.then((e=>e.text().then((t=>[e,t])))).then((e=>{let[t,i]=e;const o=m(t,i);t.ok||304===t.status?n(i,o):r(t.statusText,o)}),(e=>r("",Object.assign(m({status:0},""),{reason:e,timedOut:"AbortError"===e?.name}))))}(r(function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=n.method||(t?u:l);if(r===l&&t){const r=(0,d.parseUrl)(e,n);Object.assign(r.search,t),e=(0,d.buildUrl)(r)}const i=new Headers(n.customHeaders);i.set(g,n.contentType||"text/plain");const o={method:r,headers:i};return r!==l&&t&&(o.body=t),n.withCredentials&&(o.credentials="include"),isSecureContext&&(["browsingTopics","adAuctionHeaders"].forEach((e=>{n[e]&&(o[e]=!0)})),null!=n.suppressTopicsEnrollmentWarning&&(o.suppressTopicsEnrollmentWarning=n.suppressTopicsEnrollmentWarning)),n.keepalive&&(o.keepalive=!0),c.makeRequest(e,o)}(e,n,arguments.length>3&&void 0!==arguments[3]?arguments[3]:{})),t)}}function b(e,t){return!(!window.navigator||!window.navigator.sendBeacon)&&window.navigator.sendBeacon(e,t)}const y=h(),v=p()},71186:(e,t,n)=>{n.d(t,{AA:()=>B,BU:()=>P,HN:()=>J,UZ:()=>O,ZV:()=>G,mO:()=>F,mX:()=>$,sR:()=>q,v8:()=>N,w1:()=>W});var r=n(10466),i=n(26665),o=n(1124),s=n(80356),a=n(51640),d=n(67464),c=n(91933),l=n(73391),u=n(32592),g=n(36220),f=n(59794),p=n(63006),m=n(77156),h=n(18014),b=n(51409),y=n(11418),v=n(13064),E=n(37841),A=n(77459),w=n(51748),T=n(10939),I=n(15482);const{syncUsers:C}=l.zt,S="started",B="inProgress",O="completed";h.on(y.qY.BID_ADJUSTMENT,(function(e){!function(e){const t=(0,A.y)(e.cpm,e);t>=0&&(e.cpm=t)}(e)}));const R=4,U={},k={},D=[],_=(0,w.m)();function $(e){let{adUnits:t,adUnitCodes:n,callback:i,cbTimeout:l,labels:u,auctionId:m,ortb2Fragments:A,metrics:w}=e;w=(0,E.BO)(w);const $=t,F=u,G=n,L=m||(0,r.generateUUID)(),z=l,H=new Set,V=(0,v.v6)(),Q=(0,v.v6)();let J=[],K=i,X=[];const Z=(0,T.H)({startTime:e=>e.responseTimestamp,ttl:e=>null==(0,I.S9)()?null:1e3*Math.max((0,I.S9)(),e.ttl)});let ee,te,ne,re,ie=[],oe=[],se=[];function ae(){return{auctionId:L,timestamp:ee,auctionEnd:te,auctionStatus:re,adUnits:$,adUnitCodes:G,labels:F,bidderRequests:X,noBids:ie,bidsReceived:Z.toArray(),bidsRejected:J,winningBids:oe,timeout:z,metrics:w,seatNonBids:se}}function de(e){if(e?h.emit(y.qY.AUCTION_TIMEOUT,ae()):clearTimeout(ne),void 0===te){let n=[];e&&((0,r.logMessage)(`Auction ${L} timedOut`),n=X.filter((e=>!H.has(e.bidderRequestId))).flatMap((e=>e.bids)),n.length&&h.emit(y.qY.BID_TIMEOUT,n)),re=O,te=Date.now(),w.checkpoint("auctionEnd"),w.timeBetween("requestBids","auctionEnd","requestBids.total"),w.timeBetween("callBids","auctionEnd","requestBids.callBids"),V.resolve(),h.emit(y.qY.AUCTION_END,ae()),j($,(function(){try{if(null!=K){const t=Z.toArray().filter((e=>G.includes(e.adUnitCode))).reduce(Y,{});K.apply(_,[t,e,L]),K=null}}catch(e){(0,r.logError)("Error executing bidsBackHandler",null,e)}finally{n.length&&b.Ay.callTimedOutBidders(t,n,z);const e=c.$W.getConfig("userSync")??{};e.enableOverride||C(e.syncDelay)}}))}}function ce(){c.$W.resetBidder(),(0,r.logInfo)(`Bids Received for Auction with id: ${L}`,Z.toArray()),re=O,de(!1)}function le(e){H.add(e)}function ue(e){e.forEach((e=>{var t;t=e,X=X.concat(t)}));const t={},n={bidRequests:e,run:()=>{ne=setTimeout((()=>de(!0)),z),re=B,h.emit(y.qY.AUCTION_INIT,ae());const n=function(e,t){let{index:n=p.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=0,l=!1;const u=new Set,m={};function b(){i--,l&&0===i&&e()}function E(e,t,n){return m[t.requestId]=!0,function(e,t){let{index:n=p.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const i=n.getBidderRequest(e),o=n.getAdUnit(e),s=i&&i.start||e.requestTimestamp;Object.assign(e,{responseTimestamp:e.responseTimestamp||(0,r.timestamp)(),requestTimestamp:e.requestTimestamp||s,cpm:parseFloat(e.cpm)||0,bidder:e.bidder||e.bidderCode,adUnitCode:t}),null!=o?.ttlBuffer&&(e.ttlBuffer=o.ttlBuffer);e.timeToRespond=e.responseTimestamp-e.requestTimestamp}(t,e),i++,n(b)}function A(e,i){E(e,i,(e=>{const l=function(e){let{index:t=p.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};h.emit(y.qY.BID_ADJUSTMENT,e);const n=t.getAdUnit(e);e.instl=1===n?.ortb2Imp?.instl;const r=t.getBidRequest(e)?.renderer||n.renderer,i=e.mediaType,s=t.getMediaTypes(e),a=s&&s[i];var l=a&&a.renderer,u=null;!l||!l.render||!0===l.backupOnly&&e.renderer?!r||!r.render||!0===r.backupOnly&&e.renderer||(u=r):u=l;u&&(e.renderer=d.A4.install({url:u.url,config:u.options,renderNow:null==u.url}),e.renderer.setRender(u.render));const g=M(e.mediaType,s,c.$W.getConfig("mediaTypePriceGranularity")),f=(0,o.j)(e.cpm,"object"==typeof g?g:c.$W.getConfig("customPriceBucket"),c.$W.getConfig("currency.granularityMultiplier"));return e.pbLg=f.low,e.pbMg=f.med,e.pbHg=f.high,e.pbAg=f.auto,e.pbDg=f.dense,e.pbCg=f.custom,e}(i);h.emit(y.qY.BID_ACCEPTED,l),l.mediaType===f.G_?function(e,t,n){let{index:i=p.n.index}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=!0;const s=i.getMediaTypes({requestId:t.originalRequestId||t.requestId,adUnitId:t.adUnitId})?.video,d=s&&s?.context,l=s&&s?.useCacheKey,{useLocal:u,url:f,ignoreBidderCacheKey:m}=c.$W.getConfig("cache")||{};u?(0,a.Sb)(t):f&&(l||d!==g.H6)&&(!t.videoCacheKey||m?(o=!1,P(e,t,n,s)):t.vastUrl||((0,r.logError)("videoCacheKey specified but not required vastUrl for video bid"),o=!1));o&&(N(e,t),n())}(t,l,e):((0,s.l6)(l)&&(0,s.gs)(l,n.getAdUnit(l)),N(t,l),e())}))}function w(e,n,i){return E(e,n,(e=>{n.rejectionReason=i,(0,r.logWarn)(`Bid from ${n.bidder||"unknown bidder"} was rejected: ${i}`,n),h.emit(y.qY.BID_REJECTED,n),t.addBidRejected(n),e()}))}function T(){const n=this;let o=t.getBidRequests();const s=c.$W.getConfig("auctionOptions");if(u.add(n),s&&!(0,r.isEmpty)(s)){const e=s.secondaryBidders;e&&!o.every((t=>e.includes(t.bidderCode)))&&(o=o.filter((t=>!e.includes(t.bidderCode))))}l=o.every((e=>u.has(e))),n.bids.forEach((e=>{m[e.bidId]||(t.addNoBid(e),h.emit(y.qY.NO_BID,e))})),l&&0===i&&e()}return{addBidResponse:function(){function e(e,t){q.call({dispatch:A},e,t,(()=>{let n=!1;return r=>{n||(w(e,t,r),n=!0)}})())}return e.reject=w,e}(),adapterDone:function(){x(v.U9.resolve()).finally((()=>T.call(this)))}}}(ce,this);b.Ay.callBids($,e,n.addBidResponse,n.adapterDone,{request(e,n){l(U,n),l(t,e),k[e]||(k[e]={SRA:!0,origin:n}),t[e]>1&&(k[e].SRA=!1)},done(e){U[e]--,D[0]&&i(D[0])&&D.shift()}},z,le,A),Q.resolve()}};function i(e){let t=!0;const n=c.$W.getConfig("maxRequestsPerOrigin")||R;return e.bidRequests.some((e=>{let r=1;const i=void 0!==e.src&&e.src===y.RW.SRC?"s2s":e.bidderCode;return k[i]&&(!1===k[i].SRA&&(r=Math.min(e.bids.length,n)),U[k[i].origin]+r>n&&(t=!1)),!t})),t&&e.run(),t}function l(e,t){void 0===e[t]?e[t]=1:e[t]++}i(n)||((0,r.logWarn)("queueing auction due to limited endpoint capacity"),D.push(n))}return(0,I.lc)((()=>Z.refresh())),h.on(y.qY.SEAT_NON_BID,(e=>{var t;e.auctionId===L&&(t=e.seatnonbid,se=se.concat(t))})),{addBidReceived:function(e){Z.add(e)},addBidRejected:function(e){J=J.concat(e)},addNoBid:function(e){ie=ie.concat(e)},callBids:function(){re=S,ee=Date.now();const e=w.measureTime("requestBids.makeRequests",(()=>b.Ay.makeBidRequests($,ee,L,z,F,A,w)));(0,r.logInfo)(`Bids Requested for Auction with id: ${L}`,e),w.checkpoint("callBids"),e.length<1?((0,r.logWarn)("No valid bid requests returned for auction"),ce()):W.call({dispatch:ue,context:this},e)},addWinningBid:function(e){oe=oe.concat(e),b.Ay.callBidWonBidder(e.adapterCode||e.bidder,e,t),e.deferBilling||b.Ay.triggerBilling(e)},setBidTargeting:function(e){b.Ay.callSetTargetingBidder(e.adapterCode||e.bidder,e)},getWinningBids:()=>oe,getAuctionStart:()=>ee,getAuctionEnd:()=>te,getTimeout:()=>z,getAuctionId:()=>L,getAuctionStatus:()=>re,getAdUnits:()=>$,getAdUnitCodes:()=>G,getBidRequests:()=>X,getBidsReceived:()=>Z.toArray(),getNoBids:()=>ie,getNonBids:()=>se,getFPD:()=>A,getMetrics:()=>w,end:V.promise,requestsDone:Q.promise,getProperties:ae}}const q=(0,u.u2)((0,u.A_)("async",(function(e,t,n){!function(e){const t=c.$W.getConfig("maxBid");return!t||!e.cpm||t>=Number(e.cpm)}(t)?n(y.Tf.PRICE_TOO_HIGH):this.dispatch.call(null,e,t)}),"addBidResponse")),x=(0,u.A_)("sync",(e=>e),"responsesReady"),W=(0,u.A_)("sync",(function(e){this.dispatch.call(this.context,e)}),"addBidderRequests"),j=(0,u.A_)("async",(function(e,t){t&&t()}),"bidsBackCallback");function N(e,t){!function(e){let t;const n=!0===m.u.get(e.bidderCode,"allowZeroCpmBids")?e.cpm>=0:e.cpm>0;e.bidderCode&&(n||e.dealId)&&(t=function(e,t){let{index:n=p.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!t)return{};const r=n.getBidRequest(t);var i={};const o=J(t.mediaType,e);K(i,o,t,r),e&&m.u.getOwn(e,y.iD.ADSERVER_TARGETING)&&(K(i,m.u.ownSettingsFor(e),t,r),t.sendStandardTargeting=m.u.get(e,"sendStandardTargeting"));return i}(e.bidderCode,e));e.adserverTargeting=Object.assign(e.adserverTargeting||{},t)}(t),(0,E.BO)(t.metrics).timeSince("addBidResponse","addBidResponse.total"),e.addBidReceived(t),h.emit(y.qY.BID_RESPONSE,t)}const P=(0,u.A_)("async",(function(e,t,n,r){(0,a.X5)(e,t,n)}),"callPrebidCache");function M(e,t,n){if(e&&n){if(e===f.G_){const e=t?.[f.G_]?.context??"instream";if(n[`${f.G_}-${e}`])return n[`${f.G_}-${e}`]}return n[e]}}const F=function(e){let{index:t=p.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=M(e.mediaType,t.getMediaTypes(e),c.$W.getConfig("mediaTypePriceGranularity"));return"string"==typeof e.mediaType&&n?"string"==typeof n?n:"custom":c.$W.getConfig("priceGranularity")},G=e=>t=>{const n=e||F(t);return n===y.UE.AUTO?t.pbAg:n===y.UE.DENSE?t.pbDg:n===y.UE.LOW?t.pbLg:n===y.UE.MEDIUM?t.pbMg:n===y.UE.HIGH?t.pbHg:n===y.UE.CUSTOM?t.pbCg:void 0},L=()=>e=>e.creativeId?e.creativeId:"",z=()=>e=>e.meta&&e.meta.advertiserDomains&&e.meta.advertiserDomains.length>0?[e.meta.advertiserDomains].flat()[0]:"",H=()=>e=>e.meta&&(e.meta.networkId||e.meta.networkName)?e?.meta?.networkName||e?.meta?.networkId:"",V=()=>e=>{const t=e?.meta?.primaryCatId;return Array.isArray(t)?t[0]||"":t||""};function Q(e,t){return{key:e,val:"function"==typeof t?function(e,n){return t(e,n)}:function(e){return e[t]}}}function J(e,t){const n=Object.assign({},m.u.settingsFor(null));if(n[y.iD.ADSERVER_TARGETING]||(n[y.iD.ADSERVER_TARGETING]=[Q(y.xS.BIDDER,"bidderCode"),Q(y.xS.AD_ID,"adId"),Q(y.xS.PRICE_BUCKET,G()),Q(y.xS.SIZE,"size"),Q(y.xS.DEAL,"dealId"),Q(y.xS.SOURCE,"source"),Q(y.xS.FORMAT,"mediaType"),Q(y.xS.ADOMAIN,z()),Q(y.xS.ACAT,V()),Q(y.xS.DSP,H()),Q(y.xS.CRID,L())]),"video"===e){const e=n[y.iD.ADSERVER_TARGETING].slice();if(n[y.iD.ADSERVER_TARGETING]=e,[y.xS.UUID,y.xS.CACHE_ID].forEach((t=>{void 0===e.find((e=>e.key===t))&&e.push(Q(t,"videoCacheKey"))})),c.$W.getConfig("cache.url")&&(!t||!1!==m.u.get(t,"sendStandardTargeting"))){const t=(0,r.parseUrl)(c.$W.getConfig("cache.url"));void 0===e.find((e=>e.key===y.xS.CACHE_HOST))&&e.push(Q(y.xS.CACHE_HOST,(function(e){return e?.adserverTargeting?.[y.xS.CACHE_HOST]||t.hostname})))}}return n}function K(e,t,n,o){var s=t[y.iD.ADSERVER_TARGETING];return n.size=n.getSize(),(s||[]).forEach((function(s){var a=s.key,d=s.val;if(e[a]&&(0,r.logWarn)("The key: "+a+" is being overwritten"),(0,i.fp)(d))try{d=d(n,o)}catch(e){(0,r.logError)("bidmanager","ERROR",e)}(void 0===t.suppressEmptyKeys||!0!==t.suppressEmptyKeys)&&a!==y.xS.DEAL&&a!==y.xS.ACAT&&a!==y.xS.DSP&&a!==y.xS.CRID||!(0,r.isEmptyStr)(d)&&null!=d?e[a]=d:(0,r.logInfo)("suppressing empty key '"+a+"' from adserver targeting")})),e}function Y(e,t){return e[t.adUnitCode]||(e[t.adUnitCode]={bids:[]}),e[t.adUnitCode].bids.push(t),e}},63006:(e,t,n)=>{n.d(t,{n:()=>l});var r=n(10466),i=n(71186);function o(e){Object.assign(this,{getAuction(t){let{auctionId:n}=t;if(null!=n)return e().find((e=>e.getAuctionId()===n))},getAdUnit(t){let{adUnitId:n}=t;if(null!=n)return e().flatMap((e=>e.getAdUnits())).find((e=>e.adUnitId===n))},getMediaTypes(e){let{adUnitId:t,requestId:n}=e;if(null!=n){const e=this.getBidRequest({requestId:n});if(null!=e&&(null==t||e.adUnitId===t))return e.mediaTypes}else if(null!=t){const e=this.getAdUnit({adUnitId:t});if(null!=e)return e.mediaTypes}},getBidderRequest(t){let{requestId:n,bidderRequestId:r}=t;if(null!=n||null!=r){let t=e().flatMap((e=>e.getBidRequests()));return null!=r&&(t=t.filter((e=>e.bidderRequestId===r))),null==n?t[0]:t.find((e=>e.bids&&null!=e.bids.find((e=>e.bidId===n))))}},getBidRequest(t){let{requestId:n}=t;if(null!=n)return e().flatMap((e=>e.getBidRequests())).flatMap((e=>e.bids)).find((e=>e&&e.bidId===n))},getOrtb2(e){return this.getBidderRequest(e)?.ortb2||this.getAuction(e)?.getFPD()?.global?.ortb2}})}var s=n(11418),a=n(37841),d=n(10939),c=n(15482);const l=function(){const e=(0,d.H)({startTime:e=>e.end.then((()=>e.getAuctionEnd())),ttl:e=>null==(0,c.S9)()?null:e.end.then((()=>1e3*Math.max((0,c.S9)(),...e.getBidsReceived().map((e=>e.ttl)))))});(0,c.lc)((()=>e.refresh()));const t={onExpiry:e.onExpiry};function n(t){for(const n of e)if(n.getAuctionId()===t)return n}function l(){return e.toArray().flatMap((e=>e.getBidsReceived()))}return t.addWinningBid=function(e){const t=(0,a.BO)(e.metrics);t.checkpoint("bidWon"),t.timeBetween("auctionEnd","bidWon","adserver.pending"),t.timeBetween("requestBids","bidWon","adserver.e2e");const i=n(e.auctionId);i?i.addWinningBid(e):(0,r.logWarn)("Auction not found when adding winning bid")},Object.entries({getAllWinningBids:{name:"getWinningBids"},getBidsRequested:{name:"getBidRequests"},getNoBids:{},getAdUnits:{},getBidsReceived:{pre:e=>e.getAuctionStatus()===i.UZ},getAdUnitCodes:{post:r.uniques}}).forEach((n=>{let[r,{name:i=r,pre:o,post:s}]=n;const a=null==o?e=>e[i]():e=>o(e)?e[i]():[],d=null==s?e=>e:e=>e.filter(s);t[r]=()=>d(e.toArray().flatMap(a))})),t.getAllBidsForAdUnitCode=function(e){return l().filter((t=>t&&t.adUnitCode===e))},t.createAuction=function(t){const n=(0,i.mX)(t);return function(t){e.add(t)}(n),n},t.findBidByAdId=function(e){return l().find((t=>t.adId===e))},t.getStandardBidderAdServerTargeting=function(){return(0,i.HN)()[s.iD.ADSERVER_TARGETING]},t.setStatusForBids=function(e,r){const i=t.findBidByAdId(e);if(i&&(i.status=r),i&&r===s.tl.BID_TARGETING_SET){const e=n(i.auctionId);e&&e.setBidTargeting(i)}},t.getLastAuctionId=function(){const t=e.toArray();return t.length&&t[t.length-1].getAuctionId()},t.clearAllAuctions=function(){e.clear()},t.index=new o((()=>e.toArray())),t}()},15482:(e,t,n)=>{n.d(t,{S9:()=>l,cT:()=>c,lc:()=>u});var r=n(91933),i=n(10466);const o="minBidCacheTTL";let s=1,a=null;const d=[];function c(e){return e.ttl-(e.hasOwnProperty("ttlBuffer")?e.ttlBuffer:s)}function l(){return a}function u(e){d.push(e)}r.$W.getConfig("ttlBuffer",(e=>{"number"==typeof e.ttlBuffer?s=e.ttlBuffer:(0,i.logError)("Invalid value for ttlBuffer",e.ttlBuffer)})),r.$W.getConfig(o,(e=>{const t=a;a=e?.[o],a="number"==typeof a?a:null,t!==a&&d.forEach((e=>e(a)))}))},77156:(e,t,n)=>{n.d(t,{u:()=>a});var r=n(58928),i=n(10466),o=n(51748),s=n(11418);const a=new class{constructor(e,t){this.getSettings=e,this.defaultScope=t}get(e,t){let n=this.getOwn(e,t);return void 0===n&&(n=this.getOwn(null,t)),n}getOwn(e,t){return e=this.#e(e),(0,r.A)(this.getSettings(),`${e}.${t}`)}getScopes(){return Object.keys(this.getSettings()).filter((e=>e!==this.defaultScope))}settingsFor(e){return(0,i.mergeDeep)({},this.ownSettingsFor(null),this.ownSettingsFor(e))}ownSettingsFor(e){return e=this.#e(e),this.getSettings()[e]||{}}#e(e){return null==e?this.defaultScope:e}}((()=>(0,o.m)().bidderSettings||{}),s.iD.BD_SETTING_STANDARD)},63320:(e,t,n)=>{n.d(t,{O:()=>o});var r=n(10466);function i(){let{src:e="client",bidder:t="",bidId:n,transactionId:i,adUnitId:o,auctionId:s}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};var a=e;Object.assign(this,{bidderCode:t,width:0,height:0,adId:(0,r.getUniqueIdentifierStr)(),requestId:n,transactionId:i,adUnitId:o,auctionId:s,mediaType:"banner",source:a}),this.getSize=function(){return this.width+"x"+this.height}}function o(e){return new i(e)}},91933:(e,t,n)=>{n.d(t,{$W:()=>m,Ov:()=>l});var r=n(1124),i=n(10466),o=n(26665),s=n(58928),a=n(11418);const d="TRUE"===(0,i.getParameterByName)(a.M).toUpperCase(),c={},l="random",u={};u[l]=!0,u.fixed=!0;const g=l,f={LOW:"low",MEDIUM:"medium",HIGH:"high",AUTO:"auto",DENSE:"dense",CUSTOM:"custom"};function p(e){const t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1]?{priceGranularity:f.MEDIUM,customPriceBucket:{},mediaTypePriceGranularity:{},bidderSequence:g,auctionOptions:{}}:{};function n(e){return t[e]}function s(n,r){t.hasOwnProperty(n)||Object.defineProperty(e,n,{enumerable:!0}),t[n]=r}const a={publisherDomain:{set(e){null!=e&&(0,i.logWarn)("publisherDomain is deprecated and has no effect since v7 - use pageUrl instead"),s("publisherDomain",e)}},priceGranularity:{set(e){c(e)&&("string"==typeof e?s("priceGranularity",d(e)?e:f.MEDIUM):(0,o.Qd)(e)&&(s("customPriceBucket",e),s("priceGranularity",f.CUSTOM),(0,i.logMessage)("Using custom price granularity")))}},customPriceBucket:{},mediaTypePriceGranularity:{set(e){null!=e&&s("mediaTypePriceGranularity",Object.keys(e).reduce(((t,r)=>(c(e[r])?"string"==typeof e?t[r]=d(e[r])?e[r]:n("priceGranularity"):(0,o.Qd)(e)&&(t[r]=e[r],(0,i.logMessage)(`Using custom price granularity for ${r}`)):(0,i.logWarn)(`Invalid price granularity for media type: ${r}`),t)),{}))}},bidderSequence:{set(e){u[e]?s("bidderSequence",e):(0,i.logWarn)(`Invalid order: ${e}. Bidder Sequence was not set.`)}},auctionOptions:{set(e){(function(e){if(!(0,o.Qd)(e))return(0,i.logWarn)("Auction Options must be an object"),!1;for(const t of Object.keys(e)){if("secondaryBidders"!==t&&"suppressStaleRender"!==t&&"suppressExpiredRender"!==t)return(0,i.logWarn)(`Auction Options given an incorrect param: ${t}`),!1;if("secondaryBidders"===t){if(!(0,o.cy)(e[t]))return(0,i.logWarn)(`Auction Options ${t} must be of type Array`),!1;if(!e[t].every(o.O8))return(0,i.logWarn)(`Auction Options ${t} must be only string`),!1}else if(("suppressStaleRender"===t||"suppressExpiredRender"===t)&&!(0,o.Lm)(e[t]))return(0,i.logWarn)(`Auction Options ${t} must be of type boolean`),!1}return!0})(e)&&s("auctionOptions",e)}}};return Object.defineProperties(e,Object.fromEntries(Object.entries(a).map((e=>{let[r,i]=e;return[r,Object.assign({get:n.bind(null,r),set:s.bind(null,r),enumerable:t.hasOwnProperty(r),configurable:!t.hasOwnProperty(r)},i)]})))),e;function d(e){return Object.keys(f).find((t=>e===f[t]))}function c(e){if(!e)return(0,i.logError)("Prebid Error: no value passed to `setPriceGranularity()`"),!1;if("string"==typeof e)d(e)||(0,i.logWarn)("Prebid Warning: setPriceGranularity was called with invalid setting, using `medium` as default.");else if((0,o.Qd)(e)&&!(0,r.q)(e))return(0,i.logError)("Invalid custom price value passed to `setPriceGranularity()`"),!1;return!0}}const m=function(){const e=[];let t,n,r,a=null;function l(){t={};const e=p({debug:d,bidderTimeout:3e3,enableSendAllBids:true,useBidCache:false,deviceAccess:true,disableAjaxTimeout:false,maxNestedIframes:10,maxBid:5e3,userSync:{topics:c}});n&&v(Object.keys(n).reduce(((t,r)=>(n[r]!==e[r]&&(t[r]=e[r]||{}),t)),{})),n=e,r={}}function u(){if(a&&r&&(0,o.Qd)(r[a])){const e=r[a],t=new Set([...Object.keys(n),...Object.keys(e)]),s={};for(const r of t){const t=n[r],a=e[r];s[r]=void 0===a?t:void 0===t?a:(0,o.Qd)(a)?(0,i.mergeDeep)({},t,a):a}return s}return{...n}}const[g,f]=[u,function(){const e=u();return Object.defineProperty(e,"ortb2",{get:function(){throw new Error("invalid access to 'orbt2' config - use request parameters instead")}}),e}].map((e=>function(){if(arguments.length<=1&&"function"!=typeof(arguments.length<=0?void 0:arguments[0])){const t=arguments.length<=0?void 0:arguments[0];return t?(0,s.A)(e(),t):u()}return y(...arguments)})),[m,h]=[f,g].map((e=>function(){let t=e(...arguments);return t&&"object"==typeof t&&(t=(0,o.Go)(t)),t}));function b(e){if(!(0,o.Qd)(e))return void(0,i.logError)("setConfig options must be an object");const r=Object.keys(e),s={};r.forEach((r=>{let a=e[r];(0,o.Qd)(t[r])&&(0,o.Qd)(a)&&(a=Object.assign({},t[r],a));try{s[r]=n[r]=a}catch(e){(0,i.logWarn)(`Cannot set config for property ${r} : `,e)}})),v(s)}function y(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=n;if("string"!=typeof t&&(o=t,t="*",r=n||{}),"function"!=typeof o)return void(0,i.logError)("listener must be a function");const s={topic:t,callback:o};return e.push(s),r.init&&o("*"===t?f():{[t]:f(t)}),function(){e.splice(e.indexOf(s),1)}}function v(t){const n=Object.keys(t);e.filter((e=>n.includes(e.topic))).forEach((e=>{e.callback({[e.topic]:t[e.topic]})})),e.filter((e=>"*"===e.topic)).forEach((e=>e.callback(t)))}function E(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];try{!function(e){if(!(0,o.Qd)(e))throw"setBidderConfig bidder options must be an object";if(!Array.isArray(e.bidders)||!e.bidders.length)throw"setBidderConfig bidder options must contain a bidders list with at least 1 bidder";if(!(0,o.Qd)(e.config))throw"setBidderConfig bidder options must contain a config object"}(e),e.bidders.forEach((n=>{r[n]||(r[n]=p({},!1)),Object.keys(e.config).forEach((s=>{const a=e.config[s],d=r[n][s];if((0,o.Qd)(a)&&(null==d||(0,o.Qd)(d))){const e=t?i.mergeDeep:Object.assign;r[n][s]=e({},d||{},a)}else r[n][s]=a}))}))}catch(e){(0,i.logError)(e)}}function A(e,t){a=e;try{return t()}finally{w()}}function w(){a=null}return l(),{getCurrentBidder:function(){return a},resetBidder:w,getConfig:f,getAnyConfig:g,readConfig:m,readAnyConfig:h,setConfig:b,mergeConfig:function(e){if(!(0,o.Qd)(e))return void(0,i.logError)("mergeConfig input must be an object");const t=(0,i.mergeDeep)(u(),e);return b({...t}),t},setDefaults:function(e){(0,o.Qd)(t)?(Object.assign(t,e),Object.assign(n,e)):(0,i.logError)("defaults must be an object")},resetConfig:l,runWithBidder:A,callbackWithBidder:function(e){return function(t){return function(){if("function"==typeof t){for(var n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return A(e,t.bind(this,...r))}(0,i.logWarn)("config.callbackWithBidder callback is not a function")}}},setBidderConfig:E,getBidderConfig:function(){return r},mergeBidderConfig:function(e){return E(e,!0)}}}()},41385:(e,t,n)=>{n.d(t,{B1:()=>a,SL:()=>v,ad:()=>m,et:()=>h,mW:()=>f,o2:()=>b,t6:()=>p});var r=n(10466),i=n(26665),o=n(13064),s=n(91933);const a=Object.freeze({}),d="gdpr",c="gpp",l="usp",u="coppa";class g{#t;#n;#r;#i;#o=!0;#s;constructor(){this.reset()}#a(e){this.#i=!0,this.#n=e,this.#r.resolve(e)}reset(){this.#r=(0,o.v6)(),this.#t=!1,this.#n=null,this.#i=!1,this.generatedTime=null}enable(){this.#t=!0}get enabled(){return this.#t}get ready(){return this.#i}get promise(){return this.#i?o.U9.resolve(this.#n):(this.#t||this.#a(null),this.#r.promise)}setConsentData(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(0,r.timestamp)();this.generatedTime=t,this.#o=!0,this.#a(e)}getConsentData(){return this.#n}get hash(){return this.#o&&(this.#s=(0,r.cyrb53Hash)(JSON.stringify(this.#n&&this.hashFields?this.hashFields.map((e=>this.#n[e])):this.#n)),this.#o=!1),this.#s}}const f=new class extends g{hashFields=["gdprApplies","consentString"];getConsentMeta(){const e=this.getConsentData();if(e&&e.vendorData&&this.generatedTime)return{gdprApplies:e.gdprApplies,consentStringSize:(0,i.O8)(e.vendorData.tcString)?e.vendorData.tcString.length:0,generatedAt:this.generatedTime,apiVersion:e.apiVersion}}},p=new class extends g{getConsentMeta(){if(this.getConsentData()&&this.generatedTime)return{generatedAt:this.generatedTime}}},m=new class extends g{hashFields=["applicableSections","gppString"];getConsentMeta(){if(this.getConsentData()&&this.generatedTime)return{generatedAt:this.generatedTime}}},h=(()=>{function e(){return!!s.$W.getConfig("coppa")}return{getCoppa:e,getConsentData:e,getConsentMeta:e,reset(){},get promise(){return o.U9.resolve(e())},get hash(){return e()?"1":"0"}}})(),b=function(){const e={},t={},n={};return{register(r,i,o){o&&((e[i]=e[i]||{})[r]=o,t.hasOwnProperty(i)?t[i]!==o&&(t[i]=n):t[i]=o)},get(r){const i={modules:e[r]||{}};return t.hasOwnProperty(r)&&t[r]!==n&&(i.gvlid=t[r]),i}}}(),y={[d]:f,[l]:p,[c]:m,[u]:h};const v=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:y;const t=Object.entries(e);return Object.assign({get promise(){return o.U9.all(t.map((e=>{let[t,n]=e;return n.promise.then((e=>[t,e]))}))).then((e=>Object.fromEntries(e)))},get hash(){return(0,r.cyrb53Hash)(t.map((e=>{let[t,n]=e;return n.hash})).join(":"))}},Object.fromEntries(["getConsentData","getConsentMeta","reset"].map((e=>{return[e,(n=e,function(){return Object.fromEntries(t.map((e=>{let[t,r]=e;return[t,r[n]()]})))})];var n}))))}()},11418:(e,t,n)=>{n.d(t,{IY:()=>A,M:()=>i,RW:()=>f,Tf:()=>m,UE:()=>c,XQ:()=>o,Zh:()=>u,_B:()=>v,as:()=>a,cA:()=>d,h0:()=>h,iD:()=>r,jO:()=>b,nl:()=>E,oA:()=>y,qY:()=>s,tl:()=>p,x5:()=>g,xS:()=>l});const r={PL_CODE:"code",PL_SIZE:"sizes",PL_BIDS:"bids",BD_BIDDER:"bidder",BD_ID:"paramsd",BD_PL_ID:"placementId",ADSERVER_TARGETING:"adserverTargeting",BD_SETTING_STANDARD:"standard"},i="pbjs_debug",o={GOOD:1},s={AUCTION_INIT:"auctionInit",AUCTION_TIMEOUT:"auctionTimeout",AUCTION_END:"auctionEnd",BID_ADJUSTMENT:"bidAdjustment",BID_TIMEOUT:"bidTimeout",BID_REQUESTED:"bidRequested",BID_RESPONSE:"bidResponse",BID_REJECTED:"bidRejected",NO_BID:"noBid",SEAT_NON_BID:"seatNonBid",BID_WON:"bidWon",BIDDER_DONE:"bidderDone",BIDDER_ERROR:"bidderError",SET_TARGETING:"setTargeting",BEFORE_REQUEST_BIDS:"beforeRequestBids",BEFORE_BIDDER_HTTP:"beforeBidderHttp",REQUEST_BIDS:"requestBids",ADD_AD_UNITS:"addAdUnits",AD_RENDER_FAILED:"adRenderFailed",AD_RENDER_SUCCEEDED:"adRenderSucceeded",TCF2_ENFORCEMENT:"tcf2Enforcement",AUCTION_DEBUG:"auctionDebug",BID_VIEWABLE:"bidViewable",STALE_RENDER:"staleRender",EXPIRED_RENDER:"expiredRender",BILLABLE_EVENT:"billableEvent",BID_ACCEPTED:"bidAccepted",RUN_PAAPI_AUCTION:"paapiRunAuction",PBS_ANALYTICS:"pbsAnalytics",PAAPI_BID:"paapiBid",PAAPI_NO_BID:"paapiNoBid",PAAPI_ERROR:"paapiError",BEFORE_PBS_HTTP:"beforePBSHttp",BROWSI_INIT:"browsiInit",BROWSI_DATA:"browsiData"},a={PREVENT_WRITING_ON_MAIN_DOCUMENT:"preventWritingOnMainDocument",NO_AD:"noAd",EXCEPTION:"exception",CANNOT_FIND_AD:"cannotFindAd",MISSING_DOC_OR_ADID:"missingDocOrAdid"},d={bidWon:"adUnitCode"},c={LOW:"low",MEDIUM:"medium",HIGH:"high",AUTO:"auto",DENSE:"dense",CUSTOM:"custom"},l={BIDDER:"hb_bidder",AD_ID:"hb_adid",PRICE_BUCKET:"hb_pb",SIZE:"hb_size",DEAL:"hb_deal",SOURCE:"hb_source",FORMAT:"hb_format",UUID:"hb_uuid",CACHE_ID:"hb_cache_id",CACHE_HOST:"hb_cache_host",ADOMAIN:"hb_adomain",ACAT:"hb_acat",CRID:"hb_crid",DSP:"hb_dsp"},u={BIDDER:"hb_bidder",AD_ID:"hb_adid",PRICE_BUCKET:"hb_pb",SIZE:"hb_size",DEAL:"hb_deal",FORMAT:"hb_format",UUID:"hb_uuid",CACHE_HOST:"hb_cache_host"},g={title:"hb_native_title",body:"hb_native_body",body2:"hb_native_body2",privacyLink:"hb_native_privacy",privacyIcon:"hb_native_privicon",sponsoredBy:"hb_native_brand",image:"hb_native_image",icon:"hb_native_icon",clickUrl:"hb_native_linkurl",displayUrl:"hb_native_displayurl",cta:"hb_native_cta",rating:"hb_native_rating",address:"hb_native_address",downloads:"hb_native_downloads",likes:"hb_native_likes",phone:"hb_native_phone",price:"hb_native_price",salePrice:"hb_native_saleprice",rendererUrl:"hb_renderer_url",adTemplate:"hb_adTemplate"},f={SRC:"s2s",DEFAULT_ENDPOINT:"https://prebid.adnxs.com/pbs/v1/openrtb2/auction",SYNCED_BIDDERS_KEY:"pbjsSyncs"},p={BID_TARGETING_SET:"targetingSet",RENDERED:"rendered",BID_REJECTED:"bidRejected"},m={INVALID:"Bid has missing or invalid properties",INVALID_REQUEST_ID:"Invalid request ID",BIDDER_DISALLOWED:"Bidder code is not allowed by allowedAlternateBidderCodes / allowUnknownBidderCodes",FLOOR_NOT_MET:"Bid does not meet price floor",CANNOT_CONVERT_CURRENCY:"Unable to convert currency",DSA_REQUIRED:"Bid does not provide required DSA transparency info",DSA_MISMATCH:"Bid indicates inappropriate DSA rendering method",PRICE_TOO_HIGH:"Bid price exceeds maximum value"},h={body:"desc",body2:"desc2",sponsoredBy:"sponsored",cta:"ctatext",rating:"rating",address:"address",downloads:"downloads",likes:"likes",phone:"phone",price:"price",salePrice:"saleprice",displayUrl:"displayurl"},b={sponsored:1,desc:2,rating:3,likes:4,downloads:5,price:6,saleprice:7,phone:8,address:9,desc2:10,displayurl:11,ctatext:12},y={ICON:1,MAIN:3},v=["privacyIcon","clickUrl","adTemplate","rendererUrl","type"],E={REQUEST:"Prebid Request",RESPONSE:"Prebid Response",NATIVE:"Prebid Native",EVENT:"Prebid Event"},A="__pb_locator__"},1124:(e,t,n)=>{n.d(t,{j:()=>u,q:()=>f});var r=n(10466),i=n(91933);const o=2,s={buckets:[{max:5,increment:.5}]},a={buckets:[{max:20,increment:.1}]},d={buckets:[{max:20,increment:.01}]},c={buckets:[{max:3,increment:.01},{max:8,increment:.05},{max:20,increment:.5}]},l={buckets:[{max:5,increment:.05},{max:10,increment:.1},{max:20,increment:.5}]};function u(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,r=parseFloat(e);return isNaN(r)&&(r=""),{low:""===r?"":g(e,s,n),med:""===r?"":g(e,a,n),high:""===r?"":g(e,d,n),auto:""===r?"":g(e,l,n),dense:""===r?"":g(e,c,n),custom:""===r?"":g(e,t,n)}}function g(e,t,n){let s="";if(!f(t))return s;const a=t.buckets.reduce(((e,t)=>e.max>t.max?e:t),{max:0});let d=0;const c=t.buckets.find((t=>{if(e>a.max*n){let e=t.precision;void 0===e&&(e=o),s=(t.max*n).toFixed(e)}else{if(e<=t.max*n&&e>=d*n)return t.min=d,t;d=t.max}}));return c&&(s=function(e,t,n){const s=void 0!==t.precision?t.precision:o,a=t.increment*n,d=t.min*n;let c=Math.floor;const l=i.$W.getConfig("cpmRoundingFunction");"function"==typeof l&&(c=l);const u=Math.pow(10,s+2),g=(e*u-d*u)/(a*u);let f,p;try{f=c(g)*a+d}catch(e){p=!0}(p||"number"!=typeof f)&&((0,r.logWarn)("Invalid rounding function passed in config"),f=Math.floor(g)*a+d);return f=Number(f.toFixed(10)),f.toFixed(s)}(e,c,n)),s}function f(e){if((0,r.isEmpty)(e)||!e.buckets||!Array.isArray(e.buckets))return!1;let t=!0;return e.buckets.forEach((e=>{e.max&&e.increment||(t=!1)})),t}},45144:(e,t,n)=>{n.d(t,{HH:()=>c,kj:()=>d,xh:()=>a});var r=n(13064),i=n(10466),o=n(24830),s=n(32592);const a=3,d=(0,s.A_)("sync",(function(e){return o.G})),c=function(){const e={};return function(t){const n=d(t);return e.hasOwnProperty(n)||(e[n]=new r.U9((e=>{const t=(0,i.createInvisibleIframe)();t.srcdoc=`<script>${n}<\/script>`,t.onload=()=>e(t.contentWindow.render),document.body.appendChild(t)}))),e[n]}}()},87067:(e,t,n)=>{n.d(t,{L6:()=>h,ey:()=>u});var r=n(91933),i=n(32592),o=n(51748),s=n(10466),a=n(63320),d=n(75049),c=n(13064),l=n(70736);const u="__pbjs_debugging__";function g(){return(0,o.m)().installedModules.includes("debugging")}function f(e){return new c.U9((t=>{(0,d.R)(e,l.tp,"debugging",t)}))}function p(){let{alreadyInstalled:e=g,script:t=f}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=null;return function(){return null==n&&(n=new c.U9(((n,d)=>{setTimeout((()=>{if(e())n();else{const e="https://cdn.jsdelivr.net/npm/prebid.js@latest/dist/chunks/debugging-standalone.js";(0,s.logMessage)(`Debugging module not installed, loading it from "${e}"...`),(0,o.m)()._installDebugging=!0,t(e).then((()=>{(0,o.m)()._installDebugging({DEBUG_KEY:u,hook:i.A_,config:r.$W,createBid:a.O,logger:(0,s.prefixLog)("DEBUG:")})})).then(n,d)}}))}))),n}}const m=function(){let{load:e=p(),hook:t=(0,i.Yn)("requestBids")}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=null,r=!1;function o(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),i=1;i<t;i++)r[i-1]=arguments[i];return(n||c.U9.resolve()).then((()=>e.apply(this,r)))}function s(){t.getHooks({hook:o}).remove(),r=!1}return{enable:function(){r||(n=e(),t.before(o,99),r=!0)},disable:s,reset:function(){n=null,s()}}}();m.reset;function h(){let e=null;try{e=window.sessionStorage}catch(e){}if(null!==e){const t=m;let n=null;try{n=e.getItem(u)}catch(e){}null!==n&&t.enable()}}r.$W.getConfig("debugging",(function(e){let{debugging:t}=e;t?.enabled?m.enable():m.disable()}))},72122:(e,t,n)=>{n.d(t,{$T:()=>a,Ni:()=>r,OA:()=>o,RO:()=>s,fR:()=>i});const r=1,i=2,o=1,s=500;function a(e){return(e??[]).reduce(((e,t)=>{let{event:n,method:r,url:i}=t;const o=e[n]=e[n]??{};return(o[r]=o[r]??[]).push(i),e}),{})}},18014:(e,t,n)=>{n.r(t),n.d(t,{addEvents:()=>y,clearEvents:()=>E,emit:()=>b,get:()=>m,getEvents:()=>h,has:()=>v,off:()=>p,on:()=>f});var r=n(10466),i=n(11418),o=n(10939),s=n(91933);const a="eventHistoryTTL";let d=null;const c=(0,o.H)({monotonic:!0,ttl:()=>d});s.$W.getConfig(a,(e=>{const t=d,n=e?.[a];d="number"==typeof n?1e3*n:null,t!==d&&c.refresh()}));let l=Object.values(i.qY);const u=i.cA,g=function(){const e={};function t(e){return l.includes(e)}return{has:t,on:function(n,i,o){if(t(n)){const t=e[n]||{que:[]};o?(t[o]=t[o]||{que:[]},t[o].que.push(i)):t.que.push(i),e[n]=t}else r.logError("Wrong event name : "+n+" Valid event names :"+l)},emit:function(t){for(var n=arguments.length,i=new Array(n>1?n-1:0),o=1;o<n;o++)i[o-1]=arguments[o];!function(t,n){r.logMessage("Emitting event for: "+t);const i=n[0]||{},o=i[u[t]],s=e[t]||{que:[]};var a=Object.keys(s);const d=[];c.add({eventType:t,args:i,id:o,elapsedTime:r.getPerformanceNow()}),o&&a.includes(o)&&d.push(...s[o].que),d.push(...s.que),(d||[]).forEach((function(e){if(e)try{e(...n)}catch(e){r.logError("Error executing handler:","events.js",e,t)}}))}(t,i)},off:function(t,n,i){const o=e[t];r.isEmpty(o)||r.isEmpty(o.que)&&r.isEmpty(o[i])||i&&(r.isEmpty(o[i])||r.isEmpty(o[i].que))||(i?(o[i].que||[]).forEach((function(e){const t=o[i].que;e===n&&t.splice(t.indexOf(e),1)})):(o.que||[]).forEach((function(e){const t=o.que;e===n&&t.splice(t.indexOf(e),1)})),e[t]=o)},get:function(){return e},addEvents:function(e){l=l.concat(e)},getEvents:function(){return c.toArray().map((e=>Object.assign({},e)))}}}();r._setEventEmitter(g.emit.bind(g));const{on:f,off:p,get:m,getEvents:h,emit:b,addEvents:y,has:v}=g;function E(){c.clear()}},16169:(e,t,n)=>{n.d(t,{w:()=>A});var r=n(32592),i=n(10867),o=n(91780),s=n(10466),a=n(83435),d=n(58928),c=n(26665),l=n(91933),u=n(42217),g=n(13064),f=n(51833),p=n(53202),m=n(77610),h=n(45808),b=n(70736),y=n(30183);const v={getRefererInfo:i.EN,findRootDomain:o.S,getWindowTop:s.getWindowTop,getWindowSelf:s.getWindowSelf,getHighEntropySUA:u.FD,getLowEntropySUA:u.zO,getDocument:s.getDocument},E=(0,f.i8)("FPD"),A=(0,r.A_)("sync",(e=>{const t=[e,T().catch((()=>null)),g.U9.resolve("cookieDeprecationLabel"in navigator&&(0,p.io)(h.Ue,(0,m.s)(b.tp,"cdep"))&&navigator.cookieDeprecationLabel.getValue()).catch((()=>null))];return g.U9.all(t).then((e=>{let[t,n,r]=e;const i=v.getRefererInfo();if(Object.entries(C).forEach((e=>{let[n,r]=e;const o=r(t,i);o&&Object.keys(o).length>0&&(t[n]=(0,s.mergeDeep)({},o,t[n]))})),n&&(0,a.J)(t,"device.sua",Object.assign({},n,t.device.sua)),r){const e={cdep:r};(0,a.J)(t,"device.ext",Object.assign({},e,t.device.ext))}const o=v.getDocument().documentElement.lang;if(o&&((0,a.J)(t,"site.ext.data.documentLang",o),!(0,d.A)(t,"site.content.language"))){const e=o.split("-")[0];(0,a.J)(t,"site.content.language",e)}t=E(t);for(const e of f.Dy)if((0,f.O$)(t,e)){t[e]=(0,s.mergeDeep)({},S(t,i),t[e]);break}return t}))}));function w(e){try{return e(v.getWindowTop())}catch(t){return e(v.getWindowSelf())}}function T(){const e=l.$W.getConfig("firstPartyData.uaHints");return Array.isArray(e)&&0!==e.length?v.getHighEntropySUA(e):g.U9.resolve(v.getLowEntropySUA())}function I(e){return(0,c.SH)(e,Object.keys(e))}const C={site(e,t){if(!f.Dy.filter((e=>"site"!==e)).some(f.O$.bind(null,e)))return I({page:t.page,ref:t.ref})},device:()=>w((e=>{const t=(0,s.getWinDimensions)().screen.width,n=(0,s.getWinDimensions)().screen.height,{width:r,height:i}=(0,y.M)(),o={w:t,h:n,dnt:(0,s.getDNT)()?1:0,ua:e.navigator.userAgent,language:e.navigator.language.split("-").shift(),ext:{vpw:r,vph:i}};return e.navigator?.webdriver&&(0,a.J)(o,"ext.webdriver",!0),o})),regs(){const e={};w((e=>e.navigator.globalPrivacyControl))&&(0,a.J)(e,"ext.gpc","1");const t=l.$W.getConfig("coppa");return"boolean"==typeof t&&(e.coppa=t?1:0),e}};function S(e,t){const n=(0,i.gR)(t.page,{noLeadingWww:!0}),r=w((e=>e.document.querySelector("meta[name='keywords']")))?.content?.replace?.(/\s/g,"");return I({domain:n,keywords:r,publisher:I({domain:v.findRootDomain(n)})})}},40069:(e,t,n)=>{n.d(t,{mZ:()=>o});var r=n(10466),i=n(83435);const o=(0,n(32592).A_)("sync",(function(e){return[s,a].forEach((t=>function(e,t){t.global=e(t.global,"global FPD"),Object.entries(t.bidder).forEach((n=>{let[r,i]=n;t.bidder[r]=e(i,`bidder '${r}' FPD`)}))}(t,e))),e}));function s(e,t){if(!e)return e;const n=[],o=[...(e?.user?.eids??[]).map((e=>[0,e])),...(e?.user?.ext?.eids??[]).map((e=>[1,e]))].filter((e=>{let[i,o]=e;return n.findIndex((e=>{let[t,n]=e;return i!==t&&(0,r.deepEqual)(n,o)}))>-1?((0,r.logWarn)(`Found duplicate EID in user.eids and user.ext.eids (${t})`,o),!1):(n.push([i,o]),!0)}));return o.length>0&&(0,i.J)(e,"user.ext.eids",o.map((e=>{let[t,n]=e;return n}))),delete e?.user?.eids,e}function a(e,t){if(!e)return e;const n=e.source?.schain,o=e.source?.ext?.schain;return null==n||null==o||(0,r.deepEqual)(n,o)||(0,r.logWarn)(`Conflicting source.schain and source.ext.schain (${t}), preferring source.schain`,{"source.schain":n,"source.ext.schain":o}),null!=(n??o)&&(0,i.J)(e,"source.ext.schain",n??o),delete e.source?.schain,e}},51833:(e,t,n)=>{n.d(t,{Dy:()=>i,O$:()=>s,i8:()=>o});var r=n(10466);const i=["dooh","app","site"];function o(e){return function(t){return i.reduce(((n,i)=>(s(t,i)&&(null!=n?((0,r.logWarn)(`${e} specifies both '${n}' and '${i}'; dropping the latter.`),delete t[i]):n=i),n)),null),t}}function s(e,t){return null!=e[t]&&Object.keys(e[t]).length>0}},91780:(e,t,n)=>{n.d(t,{S:()=>o});var r=n(10466);const i=(0,n(61443).CK)("fpdEnrichment"),o=(0,r.memoize)((function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.location.host;if(!i.cookiesAreEnabled())return e;const t=e.split(".");if(2===t.length)return e;let n,o,s=-2;const a=`_rdc${Date.now()}`,d="writeable";do{n=t.slice(s).join(".");const e=new Date((0,r.timestamp)()+1e4).toUTCString();i.setCookie(a,d,e,"Lax",n,void 0);i.getCookie(a,void 0)===d?(o=!1,i.setCookie(a,"","Thu, 01 Jan 1970 00:00:01 GMT",void 0,n,void 0)):(s+=-1,o=Math.abs(s)<=t.length)}while(o);return n}))},42217:(e,t,n)=>{n.d(t,{CP:()=>u,FD:()=>l,zO:()=>c});var r=n(10466),i=n(26665),o=n(13064);const s=2,a=["architecture","bitness","model","platformVersion","fullVersionList"],d=["brands","mobile","platform"],c=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.navigator?.userAgentData;const t=e&&d.some((t=>void 0!==e[t]))?Object.freeze(g(1,e)):null;return function(){return t}}(),l=u();function u(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.navigator?.userAgentData;const t={},n=new WeakMap;return function(){let i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a;if(!n.has(i)){const e=Array.from(i);e.sort(),n.set(i,e.join("|"))}const d=n.get(i);if(!t.hasOwnProperty(d))try{t[d]=e.getHighEntropyValues(i).then((e=>(0,r.isEmpty)(e)?null:Object.freeze(g(s,e)))).catch((()=>null))}catch(e){t[d]=o.U9.resolve(null)}return t[d]}}function g(e,t){function n(e,t){const n={brand:e};return(0,i.O8)(t)&&!(0,r.isEmptyStr)(t)&&(n.version=t.split(".")),n}const o={source:e};return t.platform&&(o.platform=n(t.platform,t.platformVersion)),(t.fullVersionList||t.brands)&&(o.browsers=(t.fullVersionList||t.brands).map((e=>{let{brand:t,version:r}=e;return n(t,r)}))),void 0!==t.mobile&&(o.mobile=t.mobile?1:0),["model","bitness","architecture"].forEach((e=>{const n=t[e];(0,i.O8)(n)&&(o[e]=n)})),o}},32592:(e,t,n)=>{n.d(t,{A_:()=>s,Gc:()=>d,Y6:()=>p,Yn:()=>c,bz:()=>f,pT:()=>l,u2:()=>m,xG:()=>g});var r=n(35481),i=n.n(r),o=n(13064);const s=i()({ready:i().SYNC|i().ASYNC|i().QUEUE}),a=(0,o.v6)();s.ready=(()=>{const e=s.ready;return function(){try{return e.apply(s)}finally{a.resolve()}}})();const d=a.promise,c=s.get;function l(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:15;0===e.getHooks({hook:t}).length&&e.before(t,n)}const u={};function g(e,t){let{postInstallAllowed:n=!1}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};s("async",(function(r){r.forEach((e=>t(...e))),n&&(u[e]=t)}),e)([])}function f(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];const i=u[e];if(i)return i(...n);c(e).before(((e,t)=>{t.push(n),e(t)}))}function p(e,t){return Object.defineProperties(t,Object.fromEntries(["before","after","getHooks","removeAll"].map((t=>[t,{get:()=>e[t]}])))),t}function m(e){return p(e,(function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return n.push((function(){})),e.apply(this,n)}))}},59794:(e,t,n)=>{n.d(t,{D4:()=>o,GE:()=>a,G_:()=>i,LM:()=>s,s6:()=>r});const r="native",i="video",o="banner",s="adpod",a=[r,i,o]},80356:(e,t,n)=>{n.d(t,{Bm:()=>v,Ex:()=>q,Gg:()=>T,IX:()=>S,Xj:()=>D,gs:()=>A,l6:()=>m,mT:()=>u,nk:()=>b,rn:()=>R,vO:()=>E,yl:()=>B});var r=n(10466),i=n(26665),o=n(63006),s=n(11418),a=n(59794),d=n(71852),c=n(45144),l=n(72122);const u=[],g={image:{ortb:{ver:"1.2",assets:[{required:1,id:1,img:{type:3,wmin:100,hmin:100}},{required:1,id:2,title:{len:140}},{required:1,id:3,data:{type:1}},{required:0,id:4,data:{type:2}},{required:0,id:5,img:{type:1,wmin:20,hmin:20}}]},image:{required:!0},title:{required:!0},sponsoredBy:{required:!0},clickUrl:{required:!0},body:{required:!1},icon:{required:!1}}},f=x(s.h0),p=x(s.jO);function m(e){return null!=e.native&&"object"==typeof e.native}function h(e){if(e&&e.type&&function(e){if(!e||!Object.keys(g).includes(e))return(0,r.logError)(`${e} nativeParam is not supported`),!1;return!0}(e.type)&&(e=g[e.type]),!e||!e.ortb||y(e.ortb))return e}function b(e){e.forEach((e=>{const t=e.nativeParams||e?.mediaTypes?.native;t&&(e.nativeParams=h(t)),e.nativeParams&&(e.nativeOrtbRequest=e.nativeParams.ortb||R(e.nativeParams))}))}function y(e){const t=e.assets;if(!Array.isArray(t)||0===t.length)return(0,r.logError)("assets in mediaTypes.native.ortb is not an array, or it's empty. Assets: ",t),!1;const n=t.map((e=>e.id));return t.length!==new Set(n).size||n.some((e=>e!==parseInt(e,10)))?((0,r.logError)("each asset object must have 'id' property, it must be unique and it must be an integer"),!1):e.hasOwnProperty("eventtrackers")&&!Array.isArray(e.eventtrackers)?((0,r.logError)("ortb.eventtrackers is not an array. Eventtrackers: ",e.eventtrackers),!1):t.every((e=>function(e){if(!(0,i.Qd)(e))return(0,r.logError)("asset must be an object. Provided asset: ",e),!1;if(e.img){if(!(0,i.Et)(e.img.w)&&!(0,i.Et)(e.img.wmin))return(0,r.logError)("for img asset there must be 'w' or 'wmin' property"),!1;if(!(0,i.Et)(e.img.h)&&!(0,i.Et)(e.img.hmin))return(0,r.logError)("for img asset there must be 'h' or 'hmin' property"),!1}else if(e.title){if(!(0,i.Et)(e.title.len))return(0,r.logError)("for title asset there must be 'len' property defined"),!1}else if(e.data){if(!(0,i.Et)(e.data.type))return(0,r.logError)("for data asset 'type' property must be a number"),!1}else if(e.video&&!(Array.isArray(e.video.mimes)&&Array.isArray(e.video.protocols)&&(0,i.Et)(e.video.minduration)&&(0,i.Et)(e.video.maxduration)))return(0,r.logError)("video asset is not properly configured"),!1;return!0}(e)))}function v(e){let{index:t=o.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=t.getAdUnit(e);if(!n)return!1;const i=n.nativeOrtbRequest;return function(e,t){if(!e?.link?.url)return(0,r.logError)("native response doesn't have 'link' property. Ortb response: ",e),!1;const n=t.assets.filter((e=>1===e.required)).map((e=>e.id)),i=e.assets.map((e=>e.id)),o=n.every((e=>i.includes(e)));o||(0,r.logError)(`didn't receive a bid with all required assets. Required ids: ${n}, but received ids in response: ${i}`);return o}(e.native?.ortb||$(e.native,i),i)}function E(e,t){const n=t.native.ortb||_(t.native);return"click"===e.action?function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,{fetchURL:n=r.triggerPixel}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(t){const r=(e.assets||[]).filter((e=>e.link)).reduce(((e,t)=>(e[t.id]=t.link,e)),{}),i=e.link?.clicktrackers||[],o=r[t];let s=i;o&&(s=o.clicktrackers||[]),s.forEach((e=>n(e)))}else(e.link?.clicktrackers||[]).forEach((e=>n(e)))}(n,e?.assetId):function(e){let{runMarkup:t=(e=>(0,r.insertHtmlIntoIframe)(e)),fetchURL:n=r.triggerPixel}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{[l.Ni]:i=[],[l.fR]:o=[]}=(0,l.$T)(e.eventtrackers||[])[l.OA]||{};e.imptrackers&&(i=i.concat(e.imptrackers));i.forEach((e=>n(e))),o=o.map((e=>`<script async src="${e}"><\/script>`)),e.jstracker&&(o=o.concat([e.jstracker]));o.length&&t(o.join("\n"))}(n),e.action}function A(e,t){const n=t?.nativeOrtbRequest,r=e.native?.ortb;if(n&&r){const t=q(r,n);Object.assign(e.native,t)}["rendererUrl","adTemplate"].forEach((n=>{const r=t?.nativeParams?.[n];r&&(e.native[n]=O(r))}))}function w(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const r=[];return Object.entries(e).filter((e=>{let[r,i]=e;return i&&(!1===n&&"ext"===r||null==t||t.includes(r))})).forEach((e=>{let[i,o]=e;!1===n&&"ext"===i?r.push(...w(o,t,!0)):(n||s.x5.hasOwnProperty(i))&&r.push({key:i,value:O(o)})})),r}function T(e,t,n){const r={...(0,i.SH)(e.native,["rendererUrl","adTemplate"]),assets:w(e.native,n),nativeKeys:s.x5};return e.native.ortb?r.ortb=e.native.ortb:t.mediaTypes?.native?.ortb&&(r.ortb=$(e.native,t.nativeOrtbRequest)),r}function I(e,t,n){let{index:r=o.n.index}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const i={message:"assetResponse",adId:e.adId};let s=(0,d.vd)(t).native;return s?(i.native=Object.assign({},s),i.renderer=(0,c.kj)(t),i.rendererVersion=c.xh,null!=n&&(s.assets=s.assets.filter((e=>{let{key:t}=e;return n.includes(t)})))):s=T(t,r.getAdUnit(t),n),Object.assign(i,s)}const C=Object.fromEntries(Object.entries(s.x5).map((e=>{let[t,n]=e;return[n,t]})));function S(e,t){const n=e.assets.map((e=>C[e]));return I(e,t,n)}function B(e,t){return I(e,t,null)}function O(e){return e?.url||e}function R(e){if(!e&&!(0,i.Qd)(e))return void(0,r.logError)("Native assets object is empty or not an object: ",e);const t={ver:"1.2",assets:[]};for(const n in e){if(s._B.includes(n))continue;if(!s.x5.hasOwnProperty(n)){(0,r.logError)(`Unrecognized native asset code: ${n}. Asset will be ignored.`);continue}if("privacyLink"===n){t.privacy=1;continue}const o=e[n];let a=0;o.required&&(0,i.Lm)(o.required)&&(a=Number(o.required));const d={id:t.assets.length,required:a};if(n in s.h0)d.data={type:s.jO[s.h0[n]]},o.len&&(d.data.len=o.len);else if("icon"===n||"image"===n){if(d.img={type:"icon"===n?s.oA.ICON:s.oA.MAIN},o.aspect_ratios)if((0,i.cy)(o.aspect_ratios))if(o.aspect_ratios.length){const{min_width:e,min_height:t}=o.aspect_ratios[0];(0,i.Fq)(e)&&(0,i.Fq)(t)?(d.img.wmin=e,d.img.hmin=t):(0,r.logError)("image.aspect_ratios min_width or min_height are invalid: ",e,t);const n=o.aspect_ratios.filter((e=>e.ratio_width&&e.ratio_height)).map((e=>`${e.ratio_width}:${e.ratio_height}`));n.length>0&&(d.img.ext={aspectratios:n})}else(0,r.logError)("image.aspect_ratios was passed, but it's empty:",o.aspect_ratios);else(0,r.logError)("image.aspect_ratios was passed, but it's not a an array:",o.aspect_ratios);o.sizes&&(2===o.sizes.length&&(0,i.Fq)(o.sizes[0])&&(0,i.Fq)(o.sizes[1])?(d.img.w=o.sizes[0],d.img.h=o.sizes[1],delete d.img.hmin,delete d.img.wmin):(0,r.logError)("image.sizes was passed, but its value is not an array of integers:",o.sizes))}else"title"===n?d.title={len:o.len||140}:"ext"===n&&(d.ext=o,delete d.required);t.assets.push(d)}return t}function U(e,t){for(;e&&t&&e!==t;)e>t?e-=t:t-=e;return e||t}function k(e){if(!y(e))return;const t={};for(const n of e.assets){if(n.title){const e={required:!!n.required&&Boolean(n.required),len:n.title.len};t.title=e}else if(n.img){const e={required:!!n.required&&Boolean(n.required)};if(n.img.w&&n.img.h)e.sizes=[n.img.w,n.img.h];else if(n.img.wmin&&n.img.hmin){const t=U(n.img.wmin,n.img.hmin);e.aspect_ratios=[{min_width:n.img.wmin,min_height:n.img.hmin,ratio_width:n.img.wmin/t,ratio_height:n.img.hmin/t}]}n.img.type===s.oA.MAIN?t.image=e:t.icon=e}else if(n.data){const e=Object.keys(s.jO).find((e=>s.jO[e]===n.data.type)),r=Object.keys(s.h0).find((t=>s.h0[t]===e));t[r]={required:!!n.required&&Boolean(n.required)},n.data.len&&(t[r].len=n.data.len)}e.privacy&&(t.privacyLink={required:!1})}return t}function D(e){{if(!e||!(0,i.cy)(e))return e;if(!e.some((e=>(e?.mediaTypes||{})[a.s6]?.ortb)))return e;const t=(0,i.Go)(e);for(const e of t)e.mediaTypes&&e.mediaTypes[a.s6]&&e.mediaTypes[a.s6].ortb&&(e.mediaTypes[a.s6]=Object.assign((0,r.pick)(e.mediaTypes[a.s6],s._B),k(e.mediaTypes[a.s6].ortb)),e.nativeParams=h(e.mediaTypes[a.s6]));return t}}function _(e){const t={link:{},eventtrackers:[]};return Object.entries(e).forEach((e=>{let[n,r]=e;switch(n){case"clickUrl":t.link.url=r;break;case"clickTrackers":t.link.clicktrackers=Array.isArray(r)?r:[r];break;case"impressionTrackers":(Array.isArray(r)?r:[r]).forEach((e=>{t.eventtrackers.push({event:l.OA,method:l.Ni,url:e})}));break;case"javascriptTrackers":t.jstracker=Array.isArray(r)?r.join(""):r;break;case"privacyLink":t.privacy=r}})),t}function $(e,t){const n={..._(e),assets:[]};function r(e,r){let o=t.assets.find(e);null!=o&&(o=(0,i.Go)(o),r(o),n.assets.push(o))}return Object.keys(e).filter((t=>!!e[t])).forEach((t=>{const n=O(e[t]);switch(t){case"title":r((e=>null!=e.title),(e=>{e.title={text:n}}));break;case"image":case"icon":const e="image"===t?s.oA.MAIN:s.oA.ICON;r((t=>null!=t.img&&t.img.type===e),(e=>{e.img={url:n}}));break;default:t in s.h0&&r((e=>null!=e.data&&e.data.type===s.jO[s.h0[t]]),(e=>{e.data={value:n}}))}})),n}function q(e,t){const n={},r=t?.assets||[];n.clickUrl=e.link?.url,n.privacyLink=e.privacy;for(const t of e?.assets||[]){const e=r.find((e=>t.id===e.id));t.title?n.title=t.title.text:t.img?n[e?.img?.type===s.oA.MAIN?"image":"icon"]={url:t.img.url,width:t.img.w,height:t.img.h}:t.data&&(n[f[p[e?.data?.type]]]=t.data.value)}n.impressionTrackers=[];let i=[];e.imptrackers&&n.impressionTrackers.push(...e.imptrackers);for(const t of e?.eventtrackers||[])t.event===l.OA&&t.method===l.Ni&&n.impressionTrackers.push(t.url),t.event===l.OA&&t.method===l.fR&&i.push(t.url);return i=i.map((e=>`<script async src="${e}"><\/script>`)),e?.jstracker&&i.push(e.jstracker),i.length&&(n.javascriptTrackers=i.join("\n")),n}function x(e){var t={};for(var n in e)t[e[n]]=n;return t}},22517:(e,t,n)=>{n.d(t,{Cf:()=>a,S3:()=>i,Tb:()=>o,WR:()=>s,e4:()=>c,pS:()=>u,qN:()=>d,yB:()=>g,zt:()=>r});const r=["request","imp","bidResponse","response"],[i,o,s,a]=r,[d,c]=["default","pbs"],l=new Set(r);const{registerOrtbProcessor:u,getProcessors:g}=function(){const e={};return{registerOrtbProcessor(t){let{type:n,name:i,fn:o,priority:s=0,dialects:a=[d]}=t;if(!l.has(n))throw new Error(`ORTB processor type must be one of: ${r.join(", ")}`);a.forEach((t=>{e.hasOwnProperty(t)||(e[t]={}),e[t].hasOwnProperty(n)||(e[t][n]={}),e[t][n][i]={priority:s,fn:o}}))},getProcessors:t=>e[t]||{}}}()},57215:(e,t,n)=>{n.d(t,{WH:()=>Z,xu:()=>te,Z:()=>ee,gH:()=>ae});var r=n(51748),i=n(10466),o=n(26665),s=n(58928),a=n(83435),d=n(80356),c=n(11418),l=n(71852),u=n(45144);const{REQUEST:g,RESPONSE:f,NATIVE:p,EVENT:m}=c.nl,h={[g]:function(e,t,n){(0,l.bw)({renderFn(t){e(Object.assign({message:f,renderer:(0,u.kj)(n),rendererVersion:u.xh},t))},resizeFn:y(t.adId,n),options:t.options,adId:t.adId,bidResponse:n})},[m]:function(e,t,n){if(null==n)return void(0,i.logError)(`Cannot find ad '${t.adId}' for x-origin event request`);if(n.status!==c.tl.RENDERED)return void(0,i.logWarn)(`Received x-origin event request without corresponding render request for ad '${n.adId}'`);return(0,l.Uc)(t,n)}};function b(){window.addEventListener("message",(function(e){!function(e){var t=e.message?"message":"data",n={};try{n=JSON.parse(e[t])}catch(e){return}if(n&&n.adId&&n.message&&h.hasOwnProperty(n.message))(0,l.$A)(n.adId,n.message===c.nl.REQUEST).then((t=>{var r,o;h[n.message]((r=n.adId,o=function(e){return null==e.origin&&0===e.ports.length?function(){const e="Cannot post message to a frame with null origin. Please update creatives to use MessageChannel, see https://github.com/prebid/Prebid.js/issues/7870";throw(0,i.logError)(e),new Error(e)}:e.ports.length>0?function(t){e.ports[0].postMessage(JSON.stringify(t))}:function(t){e.source.postMessage(JSON.stringify(t),e.origin)}}(e),function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return o(Object.assign({},e,{adId:r}),...n)}),n,t)}))}(e)}),!1)}function y(e,t){return function(n,r){!function(e){let{instl:t,adId:n,adUnitCode:r,width:o,height:s}=e;if(t)return;function a(e){return e?e+"px":"100%"}function d(e){const t=c(n,r),i=document.getElementById(t);return i&&i.querySelector(e)}function c(e,t){return(0,i.isGptPubadsDefined)()?l(e):(0,i.isApnGetTagDefined)()?u(t):t}function l(e){const t=window.googletag.pubads().getSlots().find((t=>t.getTargetingKeys().find((n=>t.getTargeting(n).includes(e)))));return t?t.getSlotElementId():null}function u(e){const t=window.apntag.getTag(e);return t&&t.targetId}["div","iframe"].forEach((e=>{const t=d(e+':not([style*="display: none"])');if(t){const e=t.style;e.width=a(o),e.height=a(s)}else(0,i.logError)(`Unable to locate matching page element for adUnitCode ${r}. Can't resize it to ad's dimensions. Please review setup.`)}))}({...t,width:n,height:r,adId:e})}}Object.assign(h,{[p]:function(e,t,n){if(null==n)return void(0,i.logError)(`Cannot find ad for x-origin event request: '${t.adId}'`);switch(t.action){case"assetRequest":(0,l.Hh)(n,(()=>e((0,d.IX)(t,n))));break;case"allAssetRequest":(0,l.Hh)(n,(()=>e((0,d.yl)(t,n))));break;default:(0,l.vW)(t,n,{resizeFn:y(t.adId,n)}),(0,l.Pk)(n)}}});var v=n(73391),E=n(91933),A=n(63006),w=n(10552),T=n(32592),I=n(87067),C=n(61443),S=n(51409),B=n(18014),O=n(37841),R=n(13064);function U(){const e=(0,r.m)().scheduler??window.scheduler;return e?.yield?e.yield():R.U9.resolve()}var k=n(16169),D=n(41385),_=n(79236),$=n(36220);const q=[["format",e=>Array.isArray(e)&&e.length>0&&e.every((e=>"object"==typeof e))],["w",o.Fq],["h",o.Fq],["btype",o.Uu],["battr",o.Uu],["pos",o.Fq],["mimes",e=>Array.isArray(e)&&e.length>0&&e.every((e=>"string"==typeof e))],["topframe",e=>[1,0].includes(e)],["expdir",o.Uu],["api",o.Uu],["id",o.O8],["vcm",e=>[1,0].includes(e)]],x=new Map(q);var W=n(59794);function j(e,t){var n=this;return function(){for(var r=arguments.length,o=new Array(r),s=0;s<r;s++)o[s]=arguments[s];return document.prerendering&&e()?new Promise((e=>{document.addEventListener("prerenderingchange",(()=>{(0,i.logInfo)("Auctions were suspended while page was prerendering"),e(t.apply(n,o))}),{once:!0})})):Promise.resolve(t.apply(n,o))}}var N=n(3516),P=n(40069);const M=(0,r.m)(),{triggerUserSyncs:F}=v.zt,{ADD_AD_UNITS:G,REQUEST_BIDS:L,SET_TARGETING:z}=c.qY;function H(e,t){let n=[];return(0,o.cy)(e)&&(t?e.length===t:e.length>0)&&(e.every((e=>(0,o.Uu)(e,2)))?n=e:(0,o.Uu)(e,2)&&n.push(e)),n}function V(e,t){const n=(0,s.A)(e,`ortb2Imp.${t}`),r=(0,s.A)(e,`mediaTypes.${t}`);if(!n&&!r)return;const o={[W.G_]:$.Zy,[W.D4]:x}[t];o&&[...o].forEach((n=>{let[r,o]=n;const d=(0,s.A)(e,`mediaTypes.${t}.${r}`),c=(0,s.A)(e,`ortb2Imp.${t}.${r}`);null==d&&null==c||(null==d?(0,a.J)(e,`mediaTypes.${t}.${r}`,c):null==c?(0,a.J)(e,`ortb2Imp.${t}.${r}`,d):((0,i.logWarn)(`adUnit ${e.code}: specifies conflicting ortb2Imp.${t}.${r} and mediaTypes.${t}.${r}, the latter will be ignored`,e),(0,a.J)(e,`mediaTypes.${t}.${r}`,c)))}))}function Q(e){const t=(0,o.Go)(e),n=t.mediaTypes.banner,r=null==n.sizes?null:H(n.sizes),s=e.ortb2Imp?.banner?.format??n?.format;let d;if(null!=s){(0,a.J)(t,"ortb2Imp.banner.format",s),n.format=s;try{d=s.filter((t=>{let{w:n,h:r,wratio:o,hratio:s}=t;return null!=(n??r)&&null!=(o??s)?((0,i.logWarn)("Ad unit banner.format specifies both w/h and wratio/hratio",e),!1):null!=n&&null!=r||null!=o&&null!=s})).map((e=>{let{w:t,h:n,wratio:r,hratio:i}=e;return[t??r,n??i]}))}catch(t){(0,i.logError)(`Invalid format definition on ad unit ${e.code}`,s)}null==d||null==r||(0,i.deepEqual)(r,d)||(0,i.logWarn)(`Ad unit ${e.code} has conflicting sizes and format definitions`,e)}const c=d??r??[],l=e.ortb2Imp?.banner?.expdir??n.expdir;return null!=l&&(n.expdir=l,(0,a.J)(t,"ortb2Imp.banner.expdir",l)),c.length>0?(n.sizes=c,t.sizes=c):((0,i.logError)("Detected a mediaTypes.banner object without a proper sizes field. Please ensure the sizes are listed like: [[300, 250], ...]. Removing invalid mediaTypes.banner object from request."),delete t.mediaTypes.banner),function(e,t){const n=e?.mediaTypes?.banner;(0,o.Qd)(n)?null!=n&&Object.entries(n).forEach((r=>{let[o,s]=r;x.has(o)&&(x.get(o)(s)||("function"==typeof t?t(o,s,e):((0,i.logWarn)(`Invalid prop in adUnit "${e.code}": Invalid value for mediaTypes.banner.${o} ORTB property. The property has been removed.`,e),delete n[o])))})):(0,i.logWarn)("validateOrtbBannerFields: bannerParams must be an object.")}(t),V(t,"banner"),t}function J(e){const t=(0,o.Go)(e),n=t.mediaTypes.video;if(n.playerSize){const e="number"==typeof n.playerSize[0]?2:1,r=H(n.playerSize,e);r.length>0?(2===e&&(0,i.logInfo)("Transforming video.playerSize from [640,480] to [[640,480]] so it's in the proper format."),n.playerSize=r,t.sizes=r):((0,i.logError)("Detected incorrect configuration of mediaTypes.video.playerSize. Please specify only one set of dimensions in a format like: [[640, 480]]. Removing invalid mediaTypes.video.playerSize property from request."),delete t.mediaTypes.video.playerSize)}return(0,$.aP)(t),V(t,"video"),t}function K(e){function t(t){return(0,i.logError)(`Error in adUnit "${e.code}": ${t}. Removing native request from ad unit`,e),delete r.mediaTypes.native,r}function n(e){for(const t of["types"])if(s.hasOwnProperty(t)){const n=e(t);if(n)return n}}const r=(0,o.Go)(e),s=r.mediaTypes.native;if(s.ortb){if(s.ortb.assets?.some((e=>!(0,o.Et)(e.id)||e.id<0||e.id%1!=0)))return t("native asset ID must be a nonnegative integer");if(n((e=>t(`ORTB native requests cannot specify "${e}"`))))return r;const e=Object.keys(c.x5).filter((e=>c.x5[e].includes("hb_native_"))),a=Object.keys(s).filter((t=>e.includes(t)));a.length>0&&((0,i.logError)(`when using native OpenRTB format, you cannot use legacy native properties. Deleting ${a} keys from request.`),a.forEach((e=>delete r.mediaTypes.native[e])))}else n((t=>(0,i.logWarn)(`mediaTypes.native.${t} is deprecated, consider using native ORTB instead`,e)));return s.image&&s.image.sizes&&!Array.isArray(s.image.sizes)&&((0,i.logError)("Please use an array of sizes for native.image.sizes field. Removing invalid mediaTypes.native.image.sizes property from request."),delete r.mediaTypes.native.image.sizes),s.image&&s.image.aspect_ratios&&!Array.isArray(s.image.aspect_ratios)&&((0,i.logError)("Please use an array of sizes for native.image.aspect_ratios field. Removing invalid mediaTypes.native.image.aspect_ratios property from request."),delete r.mediaTypes.native.image.aspect_ratios),s.icon&&s.icon.sizes&&!Array.isArray(s.icon.sizes)&&((0,i.logError)("Please use an array of sizes for native.icon.sizes field. Removing invalid mediaTypes.native.icon.sizes property from request."),delete r.mediaTypes.native.icon.sizes),r}function Y(e,t){const n=e?.mediaTypes?.[t]?.pos;if(!(0,o.Et)(n)||isNaN(n)||!isFinite(n)){const n=`Value of property 'pos' on ad unit ${e.code} should be of type: Number`;(0,i.logWarn)(n),delete e.mediaTypes[t].pos}return e}function X(e){const t=e=>`adUnit.code '${n.code}' ${e}`,n=e,r=n.mediaTypes,s=n.bids;return null==s||(0,o.cy)(s)?null==s&&null==n.ortb2Imp?((0,i.logError)(t("has no 'adUnit.bids' and no 'adUnit.ortb2Imp'. Removing adUnit from auction")),null):r&&0!==Object.keys(r).length?(null==n.ortb2Imp||null!=s&&0!==s.length||(n.bids=[{bidder:null}],(0,i.logMessage)(t("defines 'adUnit.ortb2Imp' with no 'adUnit.bids'; it will be seen only by S2S adapters"))),n):((0,i.logError)(t("does not define a 'mediaTypes' object. This is a required field for the auction, so this adUnit has been removed.")),null):((0,i.logError)(t("defines 'adUnit.bids' that is not an array. Removing adUnit from auction")),null)}(0,I.L6)(),M.bidderSettings=M.bidderSettings||{},M.libLoaded=!0,M.version="v10.2.0",(0,i.logInfo)("Prebid.js v10.2.0 loaded"),M.adUnits=M.adUnits||[];const Z={validateAdUnit:X,validateBannerMediaType:Q,validateSizes:H};Object.assign(Z,{validateNativeMediaType:K}),Object.assign(Z,{validateVideoMediaType:J});const ee=(0,T.A_)("sync",(function(e){const t=[];return e.forEach((e=>{const n=X(e);if(null==n)return;const r=n.mediaTypes;let i,o,s;r.banner&&(i=Q(n),r.banner.hasOwnProperty("pos")&&(i=Y(i,"banner"))),r.video&&(o=J(i||n),r.video.hasOwnProperty("pos")&&(o=Y(o,"video"))),r.native&&(s=K(o||(i||n)));const a=Object.assign({},i,o,s);t.push(a)})),t}),"checkAdUnitSetup");function te(e,t){let n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];(0,r.m)()[e]=n?function(e,t){return function(){for(var n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return(0,i.logInfo)(`Invoking pbjs.${e}`,r),t.apply(this,r)}}(e,t):t}function ne(e){return re(e)[e]}function re(e){return w.iS.getAllTargeting(e)}function ie(e){return(e=e.slice()).bids=e,e}function oe(e){const t=A.n[e]().filter((e=>A.n.getAdUnitCodes().includes(e.adUnitCode))),n=A.n.getLastAuctionId();return t.map((e=>e.adUnitCode)).filter(i.uniques).map((e=>t.filter((t=>t.auctionId===n&&t.adUnitCode===e)))).filter((e=>e&&e[0]&&e[0].adUnitCode)).map((e=>({[e[0].adUnitCode]:ie(e)}))).reduce(((e,t)=>Object.assign(e,t)),{})}te("triggerUserSyncs",F),te("getAdserverTargetingForAdUnitCodeStr",(function(e){if(e){const t=ne(e);return(0,i.transformAdServerTargetingObj)(t)}(0,i.logMessage)("Need to call getAdserverTargetingForAdUnitCodeStr with adunitCode")})),te("getHighestUnusedBidResponseForAdUnitCode",(function(e){if(e){const t=A.n.getAllBidsForAdUnitCode(e).filter(w.Yl);return t.length?t.reduce(_.Vk):null}(0,i.logMessage)("Need to call getHighestUnusedBidResponseForAdUnitCode with adunitCode")})),te("getAdserverTargetingForAdUnitCode",ne),te("getAdserverTargeting",re),te("getConsentMetadata",(function(){return D.SL.getConsentMeta()})),te("getNoBids",(function(){return oe("getNoBids")})),te("getNoBidsForAdUnitCode",(function(e){return ie(A.n.getNoBids().filter((t=>t.adUnitCode===e)))})),te("getBidResponses",(function(){return oe("getBidsReceived")})),te("getBidResponsesForAdUnitCode",(function(e){return ie(A.n.getBidsReceived().filter((t=>t.adUnitCode===e)))})),te("setTargetingForGPTAsync",(function(e,t){(0,i.isGptPubadsDefined)()?w.iS.setTargetingForGPT(e,t):(0,i.logError)("window.googletag is not defined on the page")})),te("setTargetingForAst",(function(e){w.iS.isApntagDefined()?(w.iS.setTargetingForAst(e),B.emit(z,w.iS.getAllTargeting())):(0,i.logError)("window.apntag is not defined on the page")})),te("renderAd",(async function(e,t,n){await U(),(0,l.BS)(e,t,n)})),te("removeAdUnit",(function(e){if(!e)return void(M.adUnits=[]);let t;t=(0,o.cy)(e)?e:[e],t.forEach((e=>{for(let t=M.adUnits.length-1;t>=0;t--)M.adUnits[t].code===e&&M.adUnits.splice(t,1)}))}));const se=function(){const e=(0,T.A_)("async",(function(e){let{bidsBackHandler:t,timeout:n,adUnits:r,adUnitCodes:s,labels:a,auctionId:d,ttlBuffer:c,ortb2:l,metrics:u,defer:g}=e??{};B.emit(L);const f=n||E.$W.getConfig("bidderTimeout");null==s||Array.isArray(s)||(s=[s]),s&&s.length?r=r.filter((e=>s.includes(e.code))):s=r&&r.map((e=>e.code)),s=s.filter(i.uniques);let p={global:(0,i.mergeDeep)({},E.$W.getAnyConfig("ortb2")||{},l||{}),bidder:Object.fromEntries(Object.entries(E.$W.getBidderConfig()).map((e=>{let[t,n]=e;return[t,(0,o.Go)(n.ortb2)]})).filter((e=>{let[t,n]=e;return null!=n})))};p=(0,P.mZ)(p),(0,k.w)(R.U9.resolve(p.global)).then((e=>(p.global=e,ae({bidsBackHandler:t,timeout:f,adUnits:r,adUnitCodes:s,labels:a,auctionId:d,ttlBuffer:c,ortb2Fragments:p,metrics:u,defer:g}))))}),"requestBids");return(0,T.Y6)(e,j((()=>!E.$W.getConfig("allowPrerendering")),(function(){const t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.adUnits||M.adUnits;return t.adUnits=Array.isArray(n)?n.slice():[n],t.metrics=(0,O.K7)(),t.metrics.checkpoint("requestBids"),t.defer=(0,R.v6)({promiseFactory:e=>new Promise(e)}),e.call(this,t),t.defer.promise})))}();te("requestBids",se);const ae=(0,T.A_)("async",(function(){let{bidsBackHandler:e,timeout:t,adUnits:n,ttlBuffer:r,adUnitCodes:o,labels:s,auctionId:d,ortb2Fragments:c,metrics:l,defer:u}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const g=(0,S.pX)(E.$W.getConfig("s2sConfig")||[]);!function(e){e.forEach((e=>(0,$.V0)(e)))}(n);const f=(0,O.BO)(l).measureTime("requestBids.validate",(()=>ee(n)));function p(t,n,r){if("function"==typeof e)try{e(t,n,r)}catch(e){(0,i.logError)("Error executing bidsBackHandler",null,e)}u.resolve({bids:t,timedOut:n,auctionId:r})}const m={};if(f.forEach((e=>{const t=Object.keys(e.mediaTypes||{banner:"banner"}),n=e.bids.map((e=>e.bidder)),o=S.Ay.bidderRegistry,s=n.filter((e=>!g.has(e)));e.adUnitId=(0,i.generateUUID)();const a=e.ortb2Imp?.ext?.tid;a&&(m.hasOwnProperty(e.code)?(0,i.logWarn)(`Multiple distinct ortb2Imp.ext.tid were provided for twin ad units '${e.code}'`):m[e.code]=a),null==r||e.hasOwnProperty("ttlBuffer")||(e.ttlBuffer=r),s.forEach((n=>{const r=o[n],s=r&&r.getSpec&&r.getSpec(),a=s&&s.supportedMediaTypes||["banner"];t.some((e=>a.includes(e)))||((0,i.logWarn)((0,i.unsupportedBidderMessage)(e,n)),e.bids=e.bids.filter((e=>e.bidder!==n)))}))})),f&&0!==f.length){f.forEach((e=>{const t=e.ortb2Imp?.ext?.tid||m[e.code]||(0,i.generateUUID)();m.hasOwnProperty(e.code)||(m[e.code]=t),e.transactionId=t,(0,a.J)(e,"ortb2Imp.ext.tid",t)}));const e=A.n.createAuction({adUnits:f,adUnitCodes:o,callback:p,cbTimeout:t,labels:s,auctionId:d,ortb2Fragments:c,metrics:l}),n=f.length;n>15&&(0,i.logInfo)(`Current auction ${e.getAuctionId()} contains ${n} adUnits.`,f),o.forEach((t=>w.iS.setLatestAuctionForAdUnit(t,e.getAuctionId()))),e.callBids()}else(0,i.logMessage)("No adUnits configured. No bids requested."),p()}),"startAuction");se.before((function(e,t){function n(e){let t;for(;t=e.shift();)t()}n(C.s0),n(le),e.call(this,t)}),49),te("addAdUnits",(function(e){M.adUnits.push(...Array.isArray(e)?e:[e]),B.emit(G)}));const de={bidWon(e){if(A.n.getBidsRequested().map((e=>e.bids.map((e=>e.adUnitCode)))).reduce(i.flatten).filter(i.uniques).includes(e))return!0;(0,i.logError)('The "'+e+'" placement is not defined.')}};function ce(e,t){return de.hasOwnProperty(e)&&de[e](t)}te("onEvent",(function(e,t,n){(0,o.fp)(t)?!n||ce(e,n)?B.on(e,t,n):(0,i.logError)('The id provided is not valid for event "'+e+'" and no handler was set.'):(0,i.logError)('The event handler provided is not a function and was not set on event "'+e+'".')})),te("offEvent",(function(e,t,n){n&&!ce(e,n)||B.off(e,t,n)})),te("getEvents",(function(){return B.getEvents()})),te("registerBidAdapter",(function(e,t,n){try{const r=n?(0,N.xb)(n):e();S.Ay.registerBidAdapter(r,t)}catch(e){(0,i.logError)("Error registering bidder adapter : "+e.message)}})),te("registerAnalyticsAdapter",(function(e){try{S.Ay.registerAnalyticsAdapter(e)}catch(e){(0,i.logError)("Error registering analytics adapter : "+e.message)}}));const le=[],ue=(0,T.A_)("async",(function(e){e&&!(0,i.isEmpty)(e)?S.Ay.enableAnalytics(e):(0,i.logError)("pbjs.enableAnalytics should be called with option {}")}),"enableAnalyticsCb");function ge(e){if("function"==typeof e)try{e.call()}catch(e){(0,i.logError)("Error processing command :",e.message,e.stack)}else(0,i.logError)("Commands written into pbjs.cmd.push must be wrapped in a function")}async function fe(e){for(const t of e){if(void 0===t.called)try{t.call(),t.called=!0}catch(e){(0,i.logError)("Error processing command :","prebid.js",e)}await U()}}te("enableAnalytics",(function(e){le.push(ue.bind(this,e))})),te("aliasBidder",(function(e,t,n){e&&t?S.Ay.aliasBidAdapter(e,t,n):(0,i.logError)("bidderCode and alias must be passed as arguments","pbjs.aliasBidder")})),M.aliasRegistry=S.Ay.aliasRegistry,E.$W.getConfig("aliasRegistry",(e=>{"private"===e.aliasRegistry&&delete M.aliasRegistry})),te("getAllWinningBids",(function(){return A.n.getAllWinningBids()})),te("getAllPrebidWinningBids",(function(){return(0,i.logWarn)("getAllPrebidWinningBids may be removed or renamed in a future version. This function returns bids that have won in prebid and have had targeting set but have not (yet?) won in the ad server. It excludes bids that have been rendered."),A.n.getBidsReceived().filter((e=>e.status===c.tl.BID_TARGETING_SET))})),te("getHighestCpmBids",(function(e){return w.iS.getWinningBids(e)})),te("clearAllAuctions",(function(){A.n.clearAllAuctions()})),te("markWinningBidAsUsed",(function(e){let t,{adId:n,adUnitCode:r,analytics:o=!1,events:s=!1}=e;r&&null==n?t=w.iS.getWinningBids(r):n?t=A.n.getBidsReceived().filter((e=>e.adId===n)):(0,i.logWarn)("Improper use of markWinningBidAsUsed. It needs an adUnitCode or an adId to function."),t.length>0&&(o||s?(0,l.n6)(t[0]):A.n.addWinningBid(t[0]),(0,l.qn)(t[0]))})),te("getConfig",E.$W.getAnyConfig),te("readConfig",E.$W.readAnyConfig),te("mergeConfig",E.$W.mergeConfig),te("mergeBidderConfig",E.$W.mergeBidderConfig),te("setConfig",E.$W.setConfig),te("setBidderConfig",E.$W.setBidderConfig),M.que.push((()=>b()));te("processQueue",j((()=>M.delayPrerendering),(async function(){M.que.push=M.cmd.push=ge,(0,l.XO)(),T.A_.ready(),await fe(M.que),await fe(M.cmd)})),!1),te("triggerBilling",(function(e){let{adId:t,adUnitCode:n}=e;A.n.getAllWinningBids().filter((e=>e.adId===t||null==t&&e.adUnitCode===n)).forEach((e=>{S.Ay.triggerBilling(e),(0,l.vB)(e)}))}))},51748:(e,t,n)=>{n.d(t,{E:()=>s,m:()=>o});const r=window,i=r.pbjs=r.pbjs||{};function o(){return i}function s(e){i.installedModules.push(e)}i.cmd=i.cmd||[],i.que=i.que||[],i.installedModules=i.installedModules||[],r===window&&(r._pbjsGlobals=r._pbjsGlobals||[],r._pbjsGlobals.push("pbjs"))},10867:(e,t,n)=>{n.d(t,{EN:()=>d,gR:()=>s});var r=n(91933),i=n(10466);function o(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window;if(!e)return e;if(/\w+:\/\//.exec(e))return e;let n=t.location.protocol;try{n=t.top.location.protocol}catch(e){}return/^\/\//.exec(e)?n+e:`${n}//${e}`}function s(e){let t,{noLeadingWww:n=!1,noPort:r=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};try{t=new URL(o(e))}catch(e){return}return t=r?t.hostname:t.host,n&&t.startsWith("www.")&&(t=t.substring(4)),t}function a(e){try{const t=e.querySelector("link[rel='canonical']");if(null!==t)return t.href}catch(e){}return null}const d=function(e){let t,n,r,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window;return i.top!==i?e:function(){const o=a(i.document),s=i.location.href;return t===o&&s===n||(t=o,n=s,r=e()),r}}((c=window,function(){const e=[],t=function(e){try{if(!e.location.ancestorOrigins)return;return e.location.ancestorOrigins}catch(e){}}(c),n=r.$W.getConfig("maxNestedIframes");let d,l,u,g,f=!1,p=0,m=!1,h=!1,b=!1;do{const n=d,r=h;let o,s=!1,g=null;h=!1,d=d?d.parent:c;try{o=d.location.href||null}catch(e){s=!0}if(s)if(r){const e=n.context;try{g=e.sourceUrl,l=g,b=!0,m=!0,d===c.top&&(f=!0),e.canonicalUrl&&(u=e.canonicalUrl)}catch(e){}}else{(0,i.logWarn)("Trying to access cross domain iframe. Continuing without referrer and location");try{const e=n.document.referrer;e&&(g=e,d===c.top&&(f=!0))}catch(e){}!g&&t&&t[p-1]&&(g=t[p-1],d===c.top&&(b=!0)),g&&!m&&(l=g)}else{if(o&&(g=o,l=g,m=!1,d===c.top)){f=!0;const e=a(d.document);e&&(u=e)}d.context&&d.context.sourceUrl&&(h=!0)}e.push(g),p++}while(d!==c.top&&p<n);e.reverse();try{g=c.top.document.referrer}catch(e){}const y=f||b?l:null,v=r.$W.getConfig("pageUrl")||u||null;let E=r.$W.getConfig("pageUrl")||y||o(v,c);return y&&y.indexOf("?")>-1&&-1===E.indexOf("?")&&(E=`${E}${y.substring(y.indexOf("?"))}`),{reachedTop:f,isAmp:m,numIframes:p-1,stack:e,topmostLocation:l||null,location:y,canonicalUrl:v,page:E,domain:s(E)||null,ref:g||null,legacy:{reachedTop:f,isAmp:m,numIframes:p-1,stack:e,referer:l||null,canonicalUrl:v}}}));var c},61443:(e,t,n)=>{n.d(t,{CK:()=>y,X0:()=>p,le:()=>h,p6:()=>E,qk:()=>f,s0:()=>m,vM:()=>b});var r=n(10466),i=n(77156),o=n(70736),s=n(53202),a=n(25291),d=n(45808),c=n(91933),l=n(32592),u=n(51409),g=n(77610);const f="html5",p="cookie";let m=[];function h(){let{moduleName:e,moduleType:t,advertiseKeys:n=!0}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{isAllowed:i=s.io}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};function l(r,s,l){let f=e;const p=c.$W.getCurrentBidder();p&&t===o.tW&&u.Ay.aliasRegistry[p]===e&&(f=p);const m={[a.Zw]:s};n&&null!=l&&(m[a.Ez]=l);return r({valid:i(d.Ue,(0,g.s)(t,f,m))})}function h(e,t,n,r){if(!r||"function"!=typeof r)return l(e,t,n);m.push((function(){const i=l(e,t,n);r(i)}))}function b(e){const t=e.charAt(0).toUpperCase()+e.substring(1),n=()=>window[e],i=function(t){return h((function(t){if(t&&t.valid)try{return!!n()}catch(t){(0,r.logError)(`${e} api disabled`)}return!1}),f,null,t)};return{[`has${t}`]:i,[`${e}IsEnabled`]:e=>h((function(e){if(e&&e.valid)try{return n().setItem("prebid.cookieTest","1"),"1"===n().getItem("prebid.cookieTest")}catch(e){}finally{try{n().removeItem("prebid.cookieTest")}catch(e){}}return!1}),f,null,e),[`setDataIn${t}`]:(e,t,r)=>h((function(r){r&&r.valid&&i()&&n().setItem(e,t)}),f,e,r),[`getDataFrom${t}`]:(e,t)=>h((function(t){return t&&t.valid&&i()?n().getItem(e):null}),f,e,t),[`removeDataFrom${t}`]:(e,t)=>h((function(t){t&&t.valid&&i()&&n().removeItem(e)}),f,e,t)}}return{setCookie:function(e,t,n,r,i,o){return h((function(o){if(o&&o.valid){const o=i&&""!==i?` ;domain=${encodeURIComponent(i)}`:"",s=n&&""!==n?` ;expires=${n}`:"",a=null!=r&&"none"==r.toLowerCase()?"; Secure":"";document.cookie=`${e}=${encodeURIComponent(t)}${s}; path=/${o}${r?`; SameSite=${r}`:""}${a}`}}),p,e,o)},getCookie:function(e,t){return h((function(t){if(t&&t.valid){const t=window.document.cookie.match("(^|;)\\s*"+e+"\\s*=\\s*([^;]*)\\s*(;|$)");return t?decodeURIComponent(t[2]):null}return null}),p,e,t)},cookiesAreEnabled:function(e){return h((function(e){return!(!e||!e.valid)&&(0,r.checkCookieSupport)()}),p,null,e)},...b("localStorage"),...b("sessionStorage"),findSimilarCookies:function(e,t){return h((function(t){if(t&&t.valid){const t=[];if((0,r.hasDeviceAccess)()){const n=document.cookie.split(";");for(;n.length;){const r=n.pop();let i=r.indexOf("=");i=i<0?r.length:i;decodeURIComponent(r.slice(0,i).replace(/^\s+/,"")).indexOf(e)>=0&&t.push(decodeURIComponent(r.slice(i+1)))}}return t}}),p,e,t)}}}function b(){let{moduleType:e,moduleName:t,bidderCode:n}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};function r(){throw new Error("Invalid invocation for getStorageManager: must set either bidderCode, or moduleType + moduleName")}return n?((e&&e!==o.tW||t)&&r(),e=o.tW,t=n):t&&e||r(),h({moduleType:e,moduleName:t})}function y(e){return h({moduleName:e,moduleType:o.tp})}function v(){if(!(0,r.hasDeviceAccess)())return{allow:!1}}(0,s.qB)(d.Ue,"deviceAccess config",v),(0,s.qB)(d.yg,"deviceAccess config",v),(0,s.qB)(d.Ue,"bidderSettings.*.storageAllowed",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i.u;if(e[a.Dk]!==o.tW)return;let n=t.get(e[a.q7],"storageAllowed");if(n&&!0!==n){const t=e[a.Zw];n=Array.isArray(n)?n.some((e=>e===t)):n===t}else n=!!n;return n?void 0:{allow:n}}));const E=(0,l.A_)("sync",((e,t)=>{}))},10552:(e,t,n)=>{n.d(t,{Jp:()=>I,ME:()=>T,Yl:()=>w,iS:()=>S,m2:()=>C,uW:()=>A});var r=n(63006),i=n(15482),o=n(77156),s=n(91933),a=n(11418),d=n(18014),c=n(32592),l=n(59794),u=n(10466),g=n(26665),f=n(58928),p=n(79236),m=[];const h=20,b="targetingControls.allowTargetingKeys",y="targetingControls.addTargetingKeys",v=`Only one of "${b}" or "${y}" can be set`,E=Object.keys(a.xS).map((e=>a.xS[e])),A={isBidNotExpired:e=>e.responseTimestamp+1e3*(0,i.cT)(e)>(0,u.timestamp)(),isUnusedBid:e=>e&&(e.status&&![a.tl.RENDERED].includes(e.status)||!e.status)};function w(e){return!Object.values(A).some((t=>!t(e)))}const T=(0,c.A_)("sync",(function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=arguments.length>3&&void 0!==arguments[3]&&arguments[3],i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:u.sortByHighestCpm;if(!r){const r=[],o=s.$W.getConfig("sendBidsControl.dealPrioritization"),a=(0,u.groupBy)(e,"adUnitCode");return Object.keys(a).forEach((e=>{let s=[];const d=(0,u.groupBy)(a[e],"bidderCode");Object.keys(d).forEach((e=>{s.push(d[e].reduce(t))})),n?(s=o?s.sort(I(!0)):s.sort(((e,t)=>t.cpm-e.cpm)),r.push(...s.slice(0,n))):(s=s.sort(i),r.push(...s))})),r}return e}));function I(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return function(t,n){return void 0!==t.adserverTargeting.hb_deal&&void 0===n.adserverTargeting.hb_deal?-1:void 0===t.adserverTargeting.hb_deal&&void 0!==n.adserverTargeting.hb_deal?1:e?n.cpm-t.cpm:n.adserverTargeting.hb_pb-t.adserverTargeting.hb_pb}}function C(e,t){return(arguments.length>2&&void 0!==arguments[2]?arguments[2]:()=>window.googletag.pubads().getSlots())().reduce(((e,n)=>{const r=(0,g.fp)(t)&&t(n);return Object.keys(e).filter((0,g.fp)(r)?r:(0,u.isAdUnitCodeMatchingSlot)(n)).forEach((t=>e[t].push(n))),e}),Object.fromEntries(e.map((e=>[e,[]]))))}const S=function(e){const t={},n={setLatestAuctionForAdUnit(e,n){t[e]=n},resetPresetTargetingAST(e){r(e).forEach((function(e){const t=window.apntag.getTag(e);if(t&&t.keywords){const n=Object.keys(t.keywords),r={};n.forEach((e=>{m.includes(e.toLowerCase())||(r[e]=t.keywords[e])})),window.apntag.modifyTag(e,{keywords:r})}}))},getAllTargeting(t,n,d){let c=arguments.length>3&&void 0!==arguments[3]?arguments[3]:p.Vk,l=arguments.length>4&&void 0!==arguments[4]?arguments[4]:u.sortByHighestCpm;d||=i(c,l);const f=r(t),w=s.$W.getConfig("enableSendAllBids"),C=s.$W.getConfig("sendBidsControl.bidLimit"),B=w&&(n||C)||0,{customKeysByUnit:O,filteredBids:R}=function(e,t){const n=[],r={},i=s.$W.getConfig("targetingControls.alwaysIncludeDeals");return t.forEach((t=>{const s=e.includes(t.adUnitCode),a=!0===o.u.get(t.bidderCode,"allowZeroCpmBids")?t.cpm>=0:t.cpm>0,d=i&&t.dealId;s&&(d||a)&&(n.push(t),Object.keys(t.adserverTargeting).filter(function(){const e=S();return function(t){return-1===e.indexOf(t)}}()).forEach((e=>{const n=e.substring(0,20),i=r[t.adUnitCode]||{},o=[t.adserverTargeting[e]];i[n]?i[n]=i[n].concat(o).filter(u.uniques):i[n]=o,r[t.adUnitCode]=i})))})),{filteredBids:n,customKeysByUnit:r}}(f,d);let U=function(t,n,r){const i=!0===s.$W.getConfig("targetingControls.allBidsCustomTargeting"),o=A(t,r).concat(function(e){const t=s.$W.getConfig("targetingControls.alwaysIncludeDeals"),n=s.$W.getConfig("enableSendAllBids");return function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const r=E.slice(),i=s.$W.getConfig("targetingControls.allowSendAllBidsTargetingKeys"),o=i?i.map((e=>a.xS[e])):r;return e.reduce(((e,i)=>{if(t||n&&i.dealId){const t=function(e,t){return t.reduce(((t,n)=>(e.adserverTargeting[n]&&t.push({[`${n}_${e.bidderCode}`.substring(0,h)]:[e.adserverTargeting[n]]}),t)),[])}(i,r.filter((e=>void 0!==i.adserverTargeting[e]&&(n||-1!==o.indexOf(e)))));t&&e.push({[i.adUnitCode]:t})}return e}),[])}(e,n,t)}(t)).concat(function(t){function n(e){return e?.[a.iD.ADSERVER_TARGETING]}function r(e){const t=n(e);return Object.keys(t).map((function(e){return(0,g.O8)(t[e])&&(t[e]=t[e].split(",").map((e=>e.trim()))),(0,g.cy)(t[e])||(t[e]=[t[e]]),{[e]:t[e]}}))}return e.getAdUnits().filter((e=>t.includes(e.code)&&n(e))).reduce(((e,t)=>{const n=r(t);return n&&e.push({[t.code]:n}),e}),[])}(r));i&&o.push(...function(e,t){return e.reduce(((e,n)=>{const r=Object.assign({},n),i=t[r.adUnitCode],o=[];return i&&Object.keys(i).forEach((e=>{e&&i[e]&&o.push({[e]:i[e]})})),e.push({[r.adUnitCode]:o}),e}),[])}(t,n));return o.forEach((e=>{!function(e){Object.keys(e).forEach((t=>{e[t].forEach((e=>{const t=Object.keys(e);-1===m.indexOf(t[0])&&(m=t.concat(m))}))}))}(e)})),o}(T(R,c,B,void 0,l),O,f);const k=Object.keys(Object.assign({},a.Zh));let D=s.$W.getConfig(b);const _=s.$W.getConfig(y);if(null!=_&&null!=D)throw new Error(v);D=null!=_?k.concat(_):D||k,Array.isArray(D)&&D.length>0&&(U=function(e,t){const n=Object.assign({},a.xS),r=Object.keys(a.xS),i={};(0,u.logInfo)(`allowTargetingKeys - allowed keys [ ${t.map((e=>n[e])).join(", ")} ]`),e.map((e=>{const o=Object.keys(e)[0],s=e[o].filter((e=>{const o=Object.keys(e)[0],s=0===r.filter((e=>0===o.indexOf(n[e]))).length||t.find((e=>{const t=n[e];return 0===o.indexOf(t)}));return i[o]=!s,s}));e[o]=s}));const o=Object.keys(i).filter((e=>i[e]));(0,u.logInfo)(`allowTargetingKeys - removed keys [ ${o.join(", ")} ]`);const s=e.filter((e=>e[Object.keys(e)[0]].length>0));return s}(U,D));let $=function(e){return e.map((e=>({[Object.keys(e)[0]]:e[Object.keys(e)[0]].map((e=>({[Object.keys(e)[0]]:e[Object.keys(e)[0]].join(",")}))).reduce(((e,t)=>Object.assign(t,e)),{})}))).reduce((function(e,t){var n=Object.keys(t)[0];return e[n]=Object.assign({},e[n],t[n]),e}),{})}(U);const q=s.$W.getConfig("targetingControls.auctionKeyMaxChars");return q&&((0,u.logInfo)(`Detected 'targetingControls.auctionKeyMaxChars' was active for this auction; set with a limit of ${q} characters. Running checks on auction keys...`),$=function(e,t){const n=(0,g.Go)(e),r=Object.keys(n).map((e=>({adUnitCode:e,adserverTargeting:n[e]}))).sort(I());return r.reduce((function(e,r,i,o){let s=(a=r.adserverTargeting,Object.keys(a).reduce((function(e,t){return e+`${t}%3d${encodeURIComponent(a[t])}%26`}),""));var a;i+1===o.length&&(s=s.slice(0,-3));const d=r.adUnitCode,c=s.length;return c<=t?(t-=c,(0,u.logInfo)(`AdUnit '${d}' auction keys comprised of ${c} characters. Deducted from running threshold; new limit is ${t}`,n[d]),e[d]=n[d]):(0,u.logWarn)(`The following keys for adUnitCode '${d}' exceeded the current limit of the 'auctionKeyMaxChars' setting.\nThe key-set size was ${c}, the current allotted amount was ${t}.\n`,n[d]),i+1===o.length&&0===Object.keys(e).length&&(0,u.logError)("No auction targeting keys were permitted due to the setting in setConfig(targetingControls.auctionKeyMaxChars). Please review setup and consider adjusting."),e}),{})}($,q)),f.forEach((e=>{$[e]||($[e]={})})),$},setTargetingForGPT:(0,c.A_)("sync",(function(t,r){const i=n.getAllTargeting(t),o=Object.fromEntries(m.map((e=>[e,null])));Object.entries(C(Object.keys(i),r)).forEach((e=>{let[t,n]=e;n.forEach((e=>{Object.keys(i[t]).forEach((e=>{let n=i[t][e];"string"==typeof n&&-1!==n.indexOf(",")&&(n=n.split(",")),i[t][e]=n})),(0,u.logMessage)(`Attempting to set targeting-map for slot: ${e.getSlotElementId()} with targeting-map:`,i[t]),e.updateTargetingFromMap(Object.assign({},o,i[t]))}))})),Object.keys(i).forEach((t=>{Object.keys(i[t]).forEach((n=>{"hb_adid"===n&&e.setStatusForBids(i[t][n],a.tl.BID_TARGETING_SET)}))})),n.targetingDone(i),d.emit(a.qY.SET_TARGETING,i)}),"setTargetingForGPT"),targetingDone:(0,c.A_)("sync",(function(e){return e}),"targetingDone"),getWinningBids(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:p.Vk,s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:u.sortByHighestCpm;const a=t||i(n,s),d=r(e);return a.filter((e=>d.includes(e.adUnitCode))).filter((e=>!0===o.u.get(e.bidderCode,"allowZeroCpmBids")?e.cpm>=0:e.cpm>0)).map((e=>e.adUnitCode)).filter(u.uniques).map((e=>a.filter((t=>t.adUnitCode===e?t:null)).reduce(p.Vk)))},setTargetingForAst(e){const t=n.getAllTargeting(e);try{n.resetPresetTargetingAST(e)}catch(e){(0,u.logError)("unable to reset targeting for AST"+e)}Object.keys(t).forEach((e=>Object.keys(t[e]).forEach((n=>{if((0,u.logMessage)(`Attempting to set targeting for targetId: ${e} key: ${n} value: ${t[e][n]}`),(0,g.O8)(t[e][n])||(0,g.cy)(t[e][n])){const r={},i=/pt[0-9]/;n.search(i)<0?r[n.toUpperCase()]=t[e][n]:r[n]=t[e][n],window.apntag.setKeywords(e,r,{overrideKeyValue:!0})}}))))},isApntagDefined(){if(window.apntag&&(0,g.fp)(window.apntag.setKeywords))return!0}};function r(t){return"string"==typeof t?[t]:(0,g.cy)(t)?t:e.getAdUnitCodes()||[]}function i(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:p.Bq,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;const i=e.getBidsReceived().reduce(((e,n)=>{const r=s.$W.getConfig("useBidCache"),i=s.$W.getConfig("bidCacheFilterFunction"),o=t[n.adUnitCode]===n.auctionId,a=!(r&&!o&&"function"==typeof i)||!!i(n);return(r||o)&&a&&n?.video?.context!==l.LM&&w(n)&&(n.latestTargetedAuctionId=t[n.adUnitCode],e.push(n)),e}),[]);return T(i,n,void 0,void 0,r)}function A(e,t){const r=n.getWinningBids(t,e),i=S();return r.map((e=>({[e.adUnitCode]:Object.keys(e.adserverTargeting).filter((t=>void 0===e.sendStandardTargeting||e.sendStandardTargeting||-1===i.indexOf(t))).reduce(((t,n)=>{const r=[e.adserverTargeting[n]],i={[n.substring(0,h)]:r};if(n===a.xS.DEAL){const o=`${n}_${e.bidderCode}`.substring(0,h),s={[o]:r};return[...t,i,s]}return[...t,i]}),[])})))}function S(){return e.getStandardBidderAdServerTargeting().map((e=>e.key)).concat(E).filter(u.uniques)}return s.$W.getConfig("targetingControls",(function(e){null!=(0,f.A)(e,b)&&null!=(0,f.A)(e,y)&&(0,u.logError)(v)})),n}(r.n)},73391:(e,t,n)=>{n.d(t,{qh:()=>g,zt:()=>p});var r=n(26665),i=n(10466),o=n(91933),s=n(61443),a=n(53202),d=n(45808),c=n(25291),l=n(70736),u=n(77610);const g={syncEnabled:!0,filterSettings:{image:{bidders:"*",filter:"include"}},syncsPerBidder:5,syncDelay:3e3,auctionDelay:500};o.$W.setDefaults({userSync:(0,r.Go)(g)});const f=(0,s.CK)("usersync");const p=function(e){const t={};let n={image:[],iframe:[]};const s=new Set;let a={};const g={image:!0,iframe:!1};let f=e.config;function p(){if(f.syncEnabled&&e.browserSupportsCookies){try{!function(){if(!g.iframe)return;m(n.iframe,(e=>{const[t,r]=e;(0,i.logMessage)(`Invoking iframe user sync for bidder: ${t}`),(0,i.insertUserSyncIframe)(r),function(e,t){e.image=e.image.filter((e=>e[0]!==t))}(n,t)}))}(),function(){if(!g.image)return;m(n.image,(e=>{const[t,n]=e;(0,i.logMessage)(`Invoking image pixel user sync for bidder: ${t}`),(0,i.triggerPixel)(n)}))}()}catch(e){return(0,i.logError)("Error firing user syncs",e)}n={image:[],iframe:[]}}}function m(e,t){(0,i.shuffle)(e).forEach(t)}function h(e,t){const n=f.filterSettings;if(function(e,t){if(e.all&&e[t])return(0,i.logWarn)(`Detected presence of the "filterSettings.all" and "filterSettings.${t}" in userSync config. You cannot mix "all" with "iframe/image" configs; they are mutually exclusive.`),!1;const n=e.all?e.all:e[t],o=e.all?"all":t;if(!n)return!1;const s=n.filter,a=n.bidders;if(s&&"include"!==s&&"exclude"!==s)return(0,i.logWarn)(`UserSync "filterSettings.${o}.filter" setting '${s}' is not a valid option; use either 'include' or 'exclude'.`),!1;if("*"!==a&&!(Array.isArray(a)&&a.length>0&&a.every((e=>(0,r.O8)(e)&&"*"!==e))))return(0,i.logWarn)(`Detected an invalid setup in userSync "filterSettings.${o}.bidders"; use either '*' (to represent all bidders) or an array of bidders.`),!1;return!0}(n,e)){g[e]=!0;const r=n.all?n.all:n[e],i="*"===r.bidders?[t]:r.bidders,o={include:(e,t)=>!e.includes(t),exclude:(e,t)=>e.includes(t)};return o[r.filter||"include"](i,t)}return!g[e]}return o.$W.getConfig("userSync",(e=>{if(e.userSync){const t=e.userSync.filterSettings;(0,r.Qd)(t)&&(t.image||t.all||(e.userSync.filterSettings.image={bidders:"*",filter:"include"}))}f=Object.assign(f,e.userSync)})),e.regRule(d.Ml,"userSync config",(e=>{if(!f.syncEnabled)return{allow:!1,reason:"syncs are disabled"};if(e[c.Dk]===l.tW){const n=e[c.bt],r=e[c.iK];if(!t.canBidderRegisterSync(n,r))return{allow:!1,reason:`${n} syncs are not enabled for ${r}`}}})),t.registerSync=(t,o,g)=>s.has(o)?(0,i.logMessage)(`already fired syncs for "${o}", ignoring registerSync call`):f.syncEnabled&&(0,r.cy)(n[t])?o?0!==f.syncsPerBidder&&Number(a[o])>=f.syncsPerBidder?(0,i.logWarn)(`Number of user syncs exceeded for "${o}"`):void(e.isAllowed(d.Ml,(0,u.s)(l.tW,o,{[c.bt]:t,[c.e3]:g}))&&(n[t].push([o,g]),a=function(e,t){return e[t]?e[t]+=1:e[t]=1,e}(a,o))):(0,i.logWarn)("Bidder is required for registering sync"):(0,i.logWarn)(`User sync type "${t}" not supported`),t.bidderDone=s.add.bind(s),t.syncUsers=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(e)return setTimeout(p,Number(e));p()},t.triggerUserSyncs=()=>{f.enableOverride&&t.syncUsers()},t.canBidderRegisterSync=(e,t)=>!f.filterSettings||!h(e,t),t}(Object.defineProperties({config:o.$W.getConfig("userSync"),isAllowed:a.io,regRule:a.qB},{browserSupportsCookies:{get:function(){return!(0,i.isSafariBrowser)()&&f.cookiesAreEnabled()}}}))},10466:(e,t,n)=>{n.r(t),n.d(t,{_each:()=>te,_map:()=>re,_setEventEmitter:()=>h,binarySearch:()=>rt,buildUrl:()=>He,canAccessWindowTop:()=>M,checkCookieSupport:()=>De,cleanObj:()=>Me,compareCodeAndSlot:()=>je,compressDataWithGZip:()=>ct,contains:()=>ne,convertObjectToArray:()=>tt,createIframe:()=>K,createInvisibleIframe:()=>Y,createTrackPixelHtml:()=>ce,createTrackPixelIframeHtml:()=>ue,cyrb53Hash:()=>Ke,debugTurnedOn:()=>J,deepAccess:()=>s.A,deepClone:()=>a.Go,deepEqual:()=>Ve,deepSetValue:()=>d.J,delayExecution:()=>_e,encodeMacroURI:()=>le,extractDomainFromHost:()=>st,flatten:()=>fe,formatQS:()=>Le,generateUUID:()=>S,getBidIdParameter:()=>B,getBidRequest:()=>pe,getBidderCodes:()=>he,getDNT:()=>We,getDefinedParams:()=>a.SH,getDocument:()=>P,getDomLoadingDuration:()=>Ue,getParameterByName:()=>X,getPerformanceNow:()=>Re,getPrebidInternal:()=>w,getSafeframeGeometry:()=>Te,getUniqueIdentifierStr:()=>C,getUnixTimestampFromNow:()=>et,getUserConfiguredParams:()=>xe,getValue:()=>me,getWinDimensions:()=>y,getWindowLocation:()=>N,getWindowSelf:()=>j,getWindowTop:()=>W,groupBy:()=>$e,hasConsoleLogger:()=>Q,hasDeviceAccess:()=>ke,hasNonSerializableProperty:()=>it,inIframe:()=>Ae,insertElement:()=>ie,insertHtmlIntoIframe:()=>ae,insertUserSyncIframe:()=>de,internal:()=>E,isA:()=>a.KG,isAdUnitCodeMatchingSlot:()=>Ne,isApnGetTagDefined:()=>ye,isArray:()=>a.cy,isArrayOfNums:()=>a.Uu,isBoolean:()=>a.Lm,isEmpty:()=>Z,isEmptyStr:()=>ee,isFn:()=>a.fp,isGptPubadsDefined:()=>be,isGzipCompressionSupported:()=>dt,isInteger:()=>a.Fq,isNumber:()=>a.Et,isPlainObject:()=>a.Qd,isSafariBrowser:()=>Ie,isSafeFrameWindow:()=>we,isStr:()=>a.O8,isValidMediaTypes:()=>qe,logError:()=>z,logInfo:()=>G,logMessage:()=>F,logWarn:()=>L,memoize:()=>Ze,mergeDeep:()=>Qe,parseGPTSingleSizeArray:()=>_,parseGPTSingleSizeArrayToRtbSize:()=>q,parseQS:()=>Ge,parseQueryStringParameters:()=>O,parseSizesInput:()=>k,parseUrl:()=>ze,pick:()=>Fe,prefixLog:()=>H,replaceAuctionPrice:()=>Se,replaceClickThrough:()=>Be,replaceMacros:()=>Ce,resetWinDimensions:()=>v,safeJSONEncode:()=>Xe,safeJSONParse:()=>Ye,setOnAny:()=>ot,setScriptAttributes:()=>nt,shuffle:()=>Ee,sizeTupleToRtbSize:()=>$,sizeTupleToSizeString:()=>D,sizesToSizeTuples:()=>U,sortByHighestCpm:()=>ve,timestamp:()=>Oe,transformAdServerTargetingObj:()=>R,triggerNurlWithCpm:()=>at,triggerPixel:()=>se,uniques:()=>ge,unsupportedBidderMessage:()=>Pe,waitForElementToLoad:()=>oe});var r=n(91933),i=n(11418),o=n(13064),s=n(58928),a=n(26665),d=n(83435);const c=Boolean(window.console),l=Boolean(c&&window.console.log),u=Boolean(c&&window.console.info),g=Boolean(c&&window.console.warn),f=Boolean(c&&window.console.error);let p,m;function h(e){p=e}function b(){null!=p&&p(...arguments)}const y=function(){let e;return()=>((!m||!e||Date.now()-e>20)&&(E.resetWinDimensions(),e=Date.now()),m)}();function v(){const e=M()?E.getWindowTop():E.getWindowSelf();m={screen:{width:e.screen?.width,height:e.screen?.height,availWidth:e.screen?.availWidth,availHeight:e.screen?.availHeight,colorDepth:e.screen?.colorDepth},innerHeight:e.innerHeight,innerWidth:e.innerWidth,outerWidth:e.outerWidth,outerHeight:e.outerHeight,visualViewport:{height:e.visualViewport?.height,width:e.visualViewport?.width},document:{documentElement:{clientWidth:e.document?.documentElement?.clientWidth,clientHeight:e.document?.documentElement?.clientHeight,scrollTop:e.document?.documentElement?.scrollTop,scrollLeft:e.document?.documentElement?.scrollLeft},body:{scrollTop:document.body?.scrollTop,scrollLeft:document.body?.scrollLeft,clientWidth:document.body?.clientWidth,clientHeight:document.body?.clientHeight}}}}const E={checkCookieSupport:De,createTrackPixelIframeHtml:ue,getWindowSelf:j,getWindowTop:W,canAccessWindowTop:M,getWindowLocation:N,insertUserSyncIframe:de,insertElement:ie,isFn:a.fp,triggerPixel:se,logError:z,logWarn:L,logMessage:F,logInfo:G,parseQS:Ge,formatQS:Le,deepEqual:Ve,resetWinDimensions:v},A={};function w(){return A}var T,I=(T=0,function(){return++T});function C(){return I()+Math.random().toString(16).substr(2)}function S(e){return e?(e^(window&&window.crypto&&window.crypto.getRandomValues?crypto.getRandomValues(new Uint8Array(1))[0]%16:16*Math.random())>>e/4).toString(16):([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,S)}function B(e,t){return t?.[e]||""}function O(e){let t="";for(var n in e)e.hasOwnProperty(n)&&(t+=n+"="+encodeURIComponent(e[n])+"&");return t=t.replace(/&$/,""),t}function R(e){return e&&Object.getOwnPropertyNames(e).length>0?Object.keys(e).map((t=>`${t}=${encodeURIComponent(e[t])}`)).join("&"):""}function U(e){return"string"==typeof e?e.split(/\s*,\s*/).map((e=>e.match(/^(\d+)x(\d+)$/i))).filter((e=>e)).map((e=>{let[t,n,r]=e;return[parseInt(n,10),parseInt(r,10)]})):Array.isArray(e)?x(e)?[e]:e.filter(x):[]}function k(e){return U(e).map(D)}function D(e){return e[0]+"x"+e[1]}function _(e){if(x(e))return D(e)}function $(e){return{w:e[0],h:e[1]}}function q(e){if(x(e))return $(e)}function x(e){return(0,a.cy)(e)&&2===e.length&&!isNaN(e[0])&&!isNaN(e[1])}function W(){return window.top}function j(){return window.self}function N(){return window.location}function P(){return document}function M(){try{if(E.getWindowTop().location.href)return!0}catch(e){return!1}}function F(){J()&&l&&console.log.apply(console,V(arguments,"MESSAGE:"))}function G(){J()&&u&&console.info.apply(console,V(arguments,"INFO:"))}function L(){J()&&g&&console.warn.apply(console,V(arguments,"WARNING:")),b(i.qY.AUCTION_DEBUG,{type:"WARNING",arguments})}function z(){J()&&f&&console.error.apply(console,V(arguments,"ERROR:")),b(i.qY.AUCTION_DEBUG,{type:"ERROR",arguments})}function H(e){function t(t){return function(){for(var n=arguments.length,r=new Array(n),i=0;i<n;i++)r[i]=arguments[i];t(e,...r)}}return{logError:t(z),logWarn:t(L),logMessage:t(F),logInfo:t(G)}}function V(e,t){e=[].slice.call(e);const n=r.$W.getCurrentBidder();return t&&e.unshift(t),n&&e.unshift(i("#aaa")),e.unshift(i("#3b88c3")),e.unshift("%cPrebid"+(n?`%c${n}`:"")),e;function i(e){return`display: inline-block; color: #fff; background: ${e}; padding: 1px 4px; border-radius: 3px;`}}function Q(){return l}function J(){return!!r.$W.getConfig("debug")}const K=(()=>{const e={border:"0px",hspace:"0",vspace:"0",marginWidth:"0",marginHeight:"0",scrolling:"no",frameBorder:"0",allowtransparency:"true"};return function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const i=t.createElement("iframe");return Object.assign(i,Object.assign({},e,n)),Object.assign(i.style,r),i}})();function Y(){return K(document,{id:C(),width:0,height:0,src:"about:blank"},{display:"none",height:"0px",width:"0px",border:"0px"})}function X(e){return Ge(N().search)[e]||""}function Z(e){return!e||((0,a.cy)(e)||(0,a.O8)(e)?!(e.length>0):Object.keys(e).length<=0)}function ee(e){return(0,a.O8)(e)&&(!e||0===e.length)}function te(e,t){if((0,a.fp)(e?.forEach))return e.forEach(t,this);Object.entries(e||{}).forEach((e=>{let[n,r]=e;return t.call(this,r,n)}))}function ne(e,t){return(0,a.fp)(e?.includes)&&e.includes(t)}function re(e,t){return(0,a.fp)(e?.map)?e.map(t):Object.entries(e||{}).map((n=>{let[r,i]=n;return t(i,r,e)}))}function ie(e,t,n,r){let i;t=t||document,i=n?t.getElementsByTagName(n):t.getElementsByTagName("head");try{if(i=i.length?i:t.getElementsByTagName("body"),i.length){i=i[0];const t=r?null:i.firstChild;return i.insertBefore(e,t)}}catch(e){}}function oe(e,t){let n=null;return new o.U9((r=>{const i=function(){e.removeEventListener("load",i),e.removeEventListener("error",i),null!=n&&window.clearTimeout(n),r()};e.addEventListener("load",i),e.addEventListener("error",i),null!=t&&(n=window.setTimeout(i,t))}))}function se(e,t,n){const r=new Image;t&&E.isFn(t)&&oe(r,n).then(t),r.src=e}function ae(e){if(!e)return;const t=Y();var n;E.insertElement(t,document,"body"),(n=t.contentWindow.document).open(),n.write(e),n.close()}function de(e,t,n){const r=E.createTrackPixelIframeHtml(e,!1,"allow-scripts allow-same-origin"),i=document.createElement("div");i.innerHTML=r;const o=i.firstChild;t&&E.isFn(t)&&oe(o,n).then(t),E.insertElement(o,document,"html",!0)}function ce(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:encodeURI;if(!e)return"";let n='<div style="position:absolute;left:0px;top:0px;visibility:hidden;">';return n+='<img src="'+t(e)+'"></div>',n}function le(e){return Array.from(e.matchAll(/\$({[^}]+})/g)).map((e=>e[1])).reduce(((e,t)=>e.replace("$"+encodeURIComponent(t),"$"+t)),encodeURI(e))}function ue(e){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";return e?((!(arguments.length>1&&void 0!==arguments[1])||arguments[1])&&(e=encodeURI(e)),t&&(t=`sandbox="${t}"`),`<iframe ${t} id="${C()}"\n frameborder="0"\n allowtransparency="true"\n marginheight="0" marginwidth="0"\n width="0" hspace="0" vspace="0" height="0"\n style="height:0px;width:0px;display:none;"\n scrolling="no"\n src="${e}">\n </iframe>`):""}function ge(e,t,n){return n.indexOf(e)===t}function fe(e,t){return e.concat(t)}function pe(e,t){if(e)return t.flatMap((e=>e.bids)).find((t=>["bidId","adId","bid_id"].some((n=>t[n]===e))))}function me(e,t){return e[t]}function he(e){return e.map((e=>e.bids.map((e=>e.bidder)).reduce(fe,[]))).reduce(fe,[]).filter((e=>void 0!==e)).filter(ge)}function be(){if(window.googletag&&(0,a.fp)(window.googletag.pubads)&&(0,a.fp)(window.googletag.pubads().getSlots))return!0}function ye(){if(window.apntag&&(0,a.fp)(window.apntag.getTag))return!0}const ve=(e,t)=>t.cpm-e.cpm;function Ee(e){let t=e.length;for(;t>0;){const n=Math.floor(Math.random()*t);t--;const r=e[t];e[t]=e[n],e[n]=r}return e}function Ae(){try{return E.getWindowSelf()!==E.getWindowTop()}catch(e){return!0}}function we(){if(!Ae())return!1;const e=E.getWindowSelf();return!(!e.$sf||!e.$sf.ext)}function Te(){try{const e=j();return"function"==typeof e.$sf.ext.geom?e.$sf.ext.geom():void 0}catch(e){return void z("Error getting SafeFrame geometry",e)}}function Ie(){return/^((?!chrome|android|crios|fxios).)*safari/i.test(navigator.userAgent)}function Ce(e,t){if(e)return Object.entries(t).reduce(((e,t)=>{let[n,r]=t;return e.replace(new RegExp("\\$\\{"+n+"\\}","g"),r||"")}),e)}function Se(e,t){return Ce(e,{AUCTION_PRICE:t})}function Be(e,t){if(e&&t&&"string"==typeof t)return e.replace(/\${CLICKTHROUGH}/g,t)}function Oe(){return(new Date).getTime()}function Re(){return window.performance&&window.performance.now&&window.performance.now()||0}function Ue(e){let t=-1;const n=(e=e||j()).performance;if(e.performance?.timing&&e.performance.timing.navigationStart>0){const e=n.timing.domLoading-n.timing.navigationStart;e>0&&(t=e)}return t}function ke(){return!1!==r.$W.getConfig("deviceAccess")}function De(){if(window.navigator.cookieEnabled||document.cookie.length)return!0}function _e(e,t){if(t<1)throw new Error(`numRequiredCalls must be a positive number. Got ${t}`);let n=0;return function(){n++,n===t&&e.apply(this,arguments)}}function $e(e,t){return e.reduce((function(e,n){return(e[n[t]]=e[n[t]]||[]).push(n),e}),{})}function qe(e){const t=["banner","native","video"],n=["instream","outstream","adpod"];return!!Object.keys(e).every((e=>t.includes(e)))&&(!e.video||!e.video.context||n.includes(e.video.context))}function xe(e,t,n){return e.filter((e=>e.code===t)).flatMap((e=>e.bids)).filter((e=>e.bidder===n)).map((e=>e.params||{}))}function We(){return"1"===navigator.doNotTrack||"1"===window.doNotTrack||"1"===navigator.msDoNotTrack||"yes"===navigator.doNotTrack}const je=(e,t)=>e.getAdUnitPath()===t||e.getSlotElementId()===t;function Ne(e){return t=>je(e,t)}function Pe(e,t){const n=Object.keys(e.mediaTypes||{banner:"banner"}).join(", ");return`\n ${e.code} is a ${n} ad unit\n containing bidders that don't support ${n}: ${t}.\n This bidder won't fetch demand.\n `}function Me(e){return Object.fromEntries(Object.entries(e).filter((e=>{let[t,n]=e;return void 0!==n})))}function Fe(e,t){return"object"!=typeof e?{}:t.reduce(((n,r,i)=>{if("function"==typeof r)return n;let o=r;const s=r.match(/^(.+?)\sas\s(.+?)$/i);s&&(r=s[1],o=s[2]);let a=e[r];return"function"==typeof t[i+1]&&(a=t[i+1](a,n)),void 0!==a&&(n[o]=a),n}),{})}function Ge(e){return e?e.replace(/^\?/,"").split("&").reduce(((e,t)=>{let[n,r]=t.split("=");return/\[\]$/.test(n)?(n=n.replace("[]",""),e[n]=e[n]||[],e[n].push(r)):e[n]=r||"",e}),{}):{}}function Le(e){return Object.keys(e).map((t=>Array.isArray(e[t])?e[t].map((e=>`${t}[]=${e}`)).join("&"):`${t}=${e[t]}`)).join("&")}function ze(e,t){const n=document.createElement("a");t&&"noDecodeWholeURL"in t&&t.noDecodeWholeURL?n.href=e:n.href=decodeURIComponent(e);const r=t&&"decodeSearchAsString"in t&&t.decodeSearchAsString;return{href:n.href,protocol:(n.protocol||"").replace(/:$/,""),hostname:n.hostname,port:+n.port,pathname:n.pathname.replace(/^(?!\/)/,"/"),search:r?n.search:E.parseQS(n.search||""),hash:(n.hash||"").replace(/^#/,""),host:n.host||window.location.host}}function He(e){return(e.protocol||"http")+"://"+(e.host||e.hostname+(e.port?`:${e.port}`:""))+(e.pathname||"")+(e.search?`?${E.formatQS(e.search||"")}`:"")+(e.hash?`#${e.hash}`:"")}function Ve(e,t){let{checkTypes:n=!1}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(e===t)return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;const r=Array.isArray(e),i=Array.isArray(t);if(r&&i){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(!Ve(e[r],t[r],{checkTypes:n}))return!1;return!0}if(r||i)return!1;if(n&&e.constructor!==t.constructor)return!1;const o=Object.keys(e),s=Object.keys(t);if(o.length!==s.length)return!1;for(const r of o){if(!Object.prototype.hasOwnProperty.call(t,r))return!1;if(!Ve(e[r],t[r],{checkTypes:n}))return!1}return!0}function Qe(e){for(let t=0;t<(arguments.length<=1?0:arguments.length-1);t++){const n=t+1<1||arguments.length<=t+1?void 0:arguments[t+1];(0,a.Qd)(n)&&Je(e,n)}return e}function Je(e,t){if(!(0,a.Qd)(e)||!(0,a.Qd)(t))return;const n=Object.keys(t);for(let r=0;r<n.length;r++){const i=n[r];if("__proto__"===i||"constructor"===i)continue;const o=t[i];(0,a.Qd)(o)?(e[i]||(e[i]={}),Je(e[i],o)):Array.isArray(o)?Array.isArray(e[i])?o.forEach((t=>{e[i].some((e=>Ve(e,t)))||e[i].push(t)})):e[i]=[...o]:e[i]=o}}function Ke(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;const n=function(e,t){if((0,a.fp)(Math.imul))return Math.imul(e,t);var n=(4194303&e)*(t|=0);return 4290772992&e&&(n+=(4290772992&e)*t|0),0|n};let r=3735928559^t,i=1103547991^t;for(let t,o=0;o<e.length;o++)t=e.charCodeAt(o),r=n(r^t,2654435761),i=n(i^t,1597334677);return r=n(r^r>>>16,2246822507)^n(i^i>>>13,3266489909),i=n(i^i>>>16,2246822507)^n(r^r>>>13,3266489909),(4294967296*(2097151&i)+(r>>>0)).toString()}function Ye(e){try{return JSON.parse(e)}catch(e){}}function Xe(e){try{return JSON.stringify(e)}catch(e){return""}}function Ze(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(e){return e};const n=new Map,r=function(){const r=t.apply(this,arguments);return n.has(r)||n.set(r,e.apply(this,arguments)),n.get(r)};return r.clear=n.clear.bind(n),r}function et(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"d";if(["m","d"].indexOf(t)<0)return Date.now();const n=e/("m"===t?1440:1);return Date.now()+(e&&e>0?864e5*n:0)}function tt(e){return Object.keys(e).map((t=>({[t]:e[t]})))}function nt(e,t){Object.entries(t).forEach((t=>{let[n,r]=t;return e.setAttribute(n,r)}))}function rt(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e=>e,r=0,i=e.length&&e.length-1;const o=n(t);for(;i-r>1;){const t=r+Math.round((i-r)/2);o>n(e[t])?r=t:i=t}for(;e.length>r&&o>n(e[r]);)r++;return r}function it(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new Set;for(const n in e){const r=e[n],i=typeof r;if(void 0===r||"function"===i||"symbol"===i||r instanceof RegExp||r instanceof Map||r instanceof Set||r instanceof Date||null!==r&&"object"===i&&r.hasOwnProperty("toJSON"))return!0;if(null!==r&&"object"===i&&r.constructor===Object){if(t.has(r))return!0;if(t.add(r),it(r,t))return!0}}return!1}function ot(e,t){for(let n,r=0;r<e.length;r++)if(n=(0,s.A)(e[r],t),n)return n}function st(e){let t=null;try{const n=/[-\w]+\.([-\w]+|[-\w]{3,}|[-\w]{1,3}\.[-\w]{2})$/i.exec(e);if(null!=n&&n.length>0){t=n[0];for(let e=1;e<n.length;e++)n[e].length>t.length&&(t=n[e])}}catch(e){t=null}return t}function at(e,t){(0,a.O8)(e.nurl)&&""!==e.nurl&&(e.nurl=e.nurl.replace(/\${AUCTION_PRICE}/,t),se(e.nurl))}const dt=function(){let e;return function(){if(void 0!==e)return e;try{void 0===window.CompressionStream?e=!1:(new window.CompressionStream("gzip"),e=!0)}catch(t){e=!1}return e}}();async function ct(e){"string"!=typeof e&&(e=JSON.stringify(e));const t=(new TextEncoder).encode(e),n=new Blob([t]).stream().pipeThrough(new window.CompressionStream("gzip")),r=await new Response(n).blob(),i=await r.arrayBuffer();return new Uint8Array(i)}},77459:(e,t,n)=>{n.d(t,{y:()=>s});var r=n(63006),i=n(77156),o=n(10466);function s(e,t,n){let{index:s=r.n.index,bs:a=i.u}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};n=n||s.getBidRequest(t);const d=t?.adapterCode,c=t?.bidderCode||n?.bidder,l=a.get(t?.adapterCode,"adjustAlternateBids"),u=a.getOwn(c,"bidCpmAdjustment")||a.get(l?d:c,"bidCpmAdjustment");if(u&&"function"==typeof u)try{return u(e,Object.assign({},t),n)}catch(e){(0,o.logError)("Error during bid adjustment",e)}return e}},93448:(e,t,n)=>{function r(e){return!e?.gdprApplies||!0===e?.vendorData?.purpose?.consents?.[1]}n.d(t,{C:()=>r})},26665:(e,t,n)=>{n.d(t,{Et:()=>h,Fq:()=>v,Go:()=>i,KG:()=>g,Lm:()=>y,O8:()=>p,Qd:()=>b,SH:()=>o,Uu:()=>E,cy:()=>m,fp:()=>f});var r=n(91490);function i(e){return(0,r.Q)(e)||{}}function o(e,t){return t.filter((t=>e[t])).reduce(((t,n)=>Object.assign(t,{[n]:e[n]})),{})}const s="String",a="Function",d="Number",c="Object",l="Boolean",u=Object.prototype.toString;function g(e,t){return u.call(e)==="[object "+t+"]"}function f(e){return g(e,a)}function p(e){return g(e,s)}const m=Array.isArray.bind(Array);function h(e){return g(e,d)}function b(e){return g(e,c)}function y(e){return g(e,l)}const v=Number.isInteger.bind(Number);function E(e,t){return m(e)&&(!t||e.length===t)&&e.every((e=>v(e)))}},37841:(e,t,n)=>{n.d(t,{Ak:()=>h,BO:()=>f,K7:()=>p,NL:()=>b});var r=n(91933);const i="performanceMetrics",o=window.performance&&window.performance.now?()=>window.performance.now():()=>Date.now(),s=new WeakMap;function a(e,t,n){return function(){t&&t();try{for(var r=arguments.length,i=new Array(r),o=0;o<r;o++)i[o]=arguments[o];return e.apply(this,i)}finally{n&&n()}}}function d(){let{now:e=o,mkNode:t=l,mkTimer:n=c,mkRenamer:r=(e=>e),nodes:i=s}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(){return function o(s){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e=>({forEach(t){t(e)}});a=r(a);const d=(c="timestamps",function(e){return s.dfWalk({visit(t,n){const r=n[c];if(r.hasOwnProperty(e))return r[e]}})});var c;function l(e,t){const n=a(e);s.dfWalk({follow:(e,t)=>t.propagate&&(!e||!e.stopPropagation),visit(e,r){n.forEach((n=>{null==e?r.metrics[n]=t:(r.groups.hasOwnProperty(n)||(r.groups[n]=[]),r.groups[n].push(t))}))}})}function u(t){return n(e,(e=>l(t,e)))}function g(){let e={};return s.dfWalk({visit(t,n){e=Object.assign({},!t||t.includeGroups?n.groups:null,n.metrics,e)}}),e}const f={startTiming:u,measureTime:function(e,t){return u(e).stopAfter(t)()},measureHookTime:function(e,t,n){const r=u(e);return n(function(e){const t=r.stopBefore(e);return t.bail=e.bail&&r.stopBefore(e.bail),t.stopTiming=r,t.untimed=e,t}(t))},checkpoint:function(t){s.timestamps[t]=e()},timeSince:function(t,n){const r=d(t),i=null!=r?e()-r:null;return null!=n&&l(n,i),i},timeBetween:function(e,t,n){const r=d(e),i=d(t),o=null!=r&&null!=i?i-r:null;return null!=n&&l(n,o),o},setMetric:l,getMetrics:g,fork:function(){let{propagate:e=!0,stopPropagation:n=!1,includeGroups:r=!1}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return o(t([[s,{propagate:e,stopPropagation:n,includeGroups:r}]]),a)},join:function(e){let{propagate:t=!0,stopPropagation:n=!1,includeGroups:r=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const o=i.get(e);null!=o&&o.addParent(s,{propagate:t,stopPropagation:n,includeGroups:r})},newMetrics:function(){return o(s.newSibling(),a)},renameWith:function(e){return o(s,e)},toJSON:()=>g()};return i.set(f,s),f}(t([]))}}function c(e,t){const n=e();let r=!1;function i(){r||(t(e()-n),r=!0)}return i.stopBefore=e=>a(e,i),i.stopAfter=e=>a(e,null,i),i}function l(e){return{metrics:{},timestamps:{},groups:{},addParent(t,n){e.push([t,n])},newSibling:()=>l(e.slice()),dfWalk(){let t,{visit:n,follow:r=(()=>!0),visited:i=new Set,inEdge:o}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!i.has(this)){if(i.add(this),t=n(o,this),null!=t)return t;for(const[s,a]of e)if(r(o,a)&&(t=s.dfWalk({visit:n,follow:r,visited:i,inEdge:a}),null!=t))return t}}}}const u=(()=>{const e=function(){},t=()=>({}),n={forEach:e},r=()=>null;r.stopBefore=e=>e,r.stopAfter=e=>e;const i=Object.defineProperties({dfWalk:e,newSibling:()=>i,addParent:e},Object.fromEntries(["metrics","timestamps","groups"].map((e=>[e,{get:t}]))));return d({now:()=>0,mkNode:()=>i,mkRenamer:()=>()=>n,mkTimer:()=>r,nodes:{get:e,set:e}})()})();let g=!0;function f(e){return g&&e||u}r.$W.getConfig(i,(e=>{g=!!e[i]}));const p=(()=>{const e=d();return function(){return g?e():u}})();function m(e,t){return function(n,r){var i=this;return function(o){for(var s=arguments.length,a=new Array(s>1?s-1:0),d=1;d<s;d++)a[d-1]=arguments[d];return f(t.apply(i,a)).measureHookTime(e+n,o,(e=>r.call(i,e,...a)))}}}const h=m("requestBids.",(e=>e.metrics)),b=m("addBidResponse.",((e,t)=>t.metrics))},13064:(e,t,n)=>{n.d(t,{U9:()=>o,cb:()=>s,v6:()=>a});var r=n(51748);const i=(0,r.m)().setTimeout??setTimeout,o=(0,r.m)().Promise??Promise;function s(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return new o((t=>{i(t,e)}))}function a(){let e,t,{promiseFactory:n=(e=>new o(e))}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};function r(e){return t=>e(t)}return{promise:n(((n,r)=>{e=n,t=r})),resolve:r(e),reject:r(t)}}},79236:(e,t,n)=>{function r(e,t){return e===t?0:e<t?-1:1}function i(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:e=>e;return(t,n)=>r(e(t),e(n))}function o(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:r;return(t,n)=>-e(t,n)||0}function s(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(e,n){for(const r of t){const t=r(e,n);if(0!==t)return t}return 0}}function a(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:r;return(t,n)=>e(n,t)<0?n:t}function d(){return a(o(arguments.length>0&&void 0!==arguments[0]?arguments[0]:r))}n.d(t,{Bp:()=>a,Bq:()=>g,NV:()=>i,Ph:()=>d,Vk:()=>u});const c=i((e=>e.cpm)),l=i((e=>e.responseTimestamp)),u=d(s(c,o(i((e=>e.timeToRespond))))),g=d(s(c,o(l)));d(s(c,l))},10939:(e,t,n)=>{n.d(t,{H:()=>l});var r=n(13064),i=n(10466);let o=null,s=0,a=[];function d(){document.hidden?o=Date.now():(s+=Date.now()-(o??0),o=null,a.forEach((e=>{let{callback:t,startTime:n,setTimerId:r}=e;return r(c(t,s-n)())})),a=[])}function c(e,t){const n=s;let r=setTimeout((()=>{s===n&&null==o?e():null!=o?a.push({callback:e,startTime:n,setTimerId(e){r=e}}):r=c(e,s-n)()}),t);return()=>r}function l(){let{startTime:e=i.timestamp,ttl:t=(()=>null),monotonic:n=!1,slack:o=5e3}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const s=new Map,a=[],d=[],l=n?e=>d.push(e):e=>d.splice((0,i.binarySearch)(d,e,(e=>e.expiry)),0,e);let u,g;function f(){if(g&&clearTimeout(g),d.length>0){const e=(0,i.timestamp)();u=Math.max(e,d[0].expiry+o),g=c((()=>{const e=(0,i.timestamp)();let t=0;for(const n of d){if(n.expiry>e)break;a.forEach((e=>{try{e(n.item)}catch(e){(0,i.logError)(e)}})),s.delete(n.item),t++}d.splice(0,t),g=null,f()}),u-e)}else g=null}function p(n){const i={},s=m;let a;const[d,c]=Object.entries({start:e,delta:t}).map((e=>{let t,[d,c]=e;return function(){const e=t={};r.U9.resolve(c(n)).then((n=>{e===t&&(i[d]=n,s===m&&null!=i.start&&null!=i.delta&&(a=i.start+i.delta,l(p),(null==g||u>a+o)&&f()))}))}})),p={item:n,refresh:c,get expiry(){return a}};return d(),c(),p}let m={};return{[Symbol.iterator]:()=>s.keys(),add(e){!s.has(e)&&s.set(e,p(e))},clear(){d.length=0,f(),s.clear(),m={}},toArray:()=>Array.from(s.keys()),refresh(){d.length=0,f();for(const e of s.values())e.refresh()},onExpiry:e=>(a.push(e),()=>{const t=a.indexOf(e);t>=0&&a.splice(t,1)})}}document.addEventListener("visibilitychange",d)},36220:(e,t,n)=>{n.d(t,{E2:()=>m,H6:()=>d,V0:()=>g,Zy:()=>u,aP:()=>f,mn:()=>c,vk:()=>p});var r=n(26665),i=n(10466),o=n(91933),s=n(32592),a=n(63006);const d="outstream",c="instream",l=[["mimes",e=>Array.isArray(e)&&e.length>0&&e.every((e=>"string"==typeof e))],["minduration",r.Fq],["maxduration",r.Fq],["startdelay",r.Fq],["maxseq",r.Fq],["poddur",r.Fq],["protocols",r.Uu],["w",r.Fq],["h",r.Fq],["podid",r.O8],["podseq",r.Fq],["rqddurs",r.Uu],["placement",r.Fq],["plcmt",r.Fq],["linearity",r.Fq],["skip",e=>[1,0].includes(e)],["skipmin",r.Fq],["skipafter",r.Fq],["sequence",r.Fq],["slotinpod",r.Fq],["mincpmpersec",r.Et],["battr",r.Uu],["maxextended",r.Fq],["minbitrate",r.Fq],["maxbitrate",r.Fq],["boxingallowed",r.Fq],["playbackmethod",r.Uu],["playbackend",r.Fq],["delivery",r.Uu],["pos",r.Fq],["api",r.Uu],["companiontype",r.Uu],["poddedupe",r.Uu]],u=new Map(l);function g(e){const t=e?.mediaTypes?.video;if(null!=t){null==t.plcmt&&(t.context===d||[2,3,4].includes(t.placement)?t.plcmt=4:t.playbackmethod?.some?.((e=>[2,6].includes(e)))&&(t.plcmt=2));const n=(0,r.Uu)(t.playerSize,2)?t.playerSize:Array.isArray(t.playerSize)&&(0,r.Uu)(t.playerSize[0])?t.playerSize[0]:null,o=(0,r.Et)(t.w)&&(0,r.Et)(t.h)?[t.w,t.h]:null;let s=!1;null==n?null!=o&&(null!=t.playerSize?s=!0:t.playerSize=[o]):["w","h"].forEach(((e,r)=>{null!=t[e]&&t[e]!==n[r]?s=!0:t[e]=n[r]})),s&&(0,i.logWarn)(`Ad unit "${e.code} has conflicting playerSize and w/h`,e)}}function f(e,t){const n=e?.mediaTypes?.video;(0,r.Qd)(n)?null!=n&&Object.entries(n).forEach((r=>{let[o,s]=r;if(!u.has(o))return;u.get(o)(s)||("function"==typeof t?t(o,s,e):(delete n[o],(0,i.logWarn)(`Invalid prop in adUnit "${e.code}": Invalid value for mediaTypes.video.${o} ORTB property. The property has been removed.`)))})):(0,i.logWarn)("validateOrtbVideoFields: videoParams must be an object.")}function p(e){let{index:t=a.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=t.getMediaTypes(e)?.video,r=n&&n?.context,i=n&&n?.useCacheKey,o=t.getAdUnit(e);return m(e,o,n,r,i)}const m=(0,s.A_)("sync",(function(e,t,n,r,s){if(n&&(s||r!==d)){const{url:t,useLocal:n}=o.$W.getConfig("cache")||{};return t||n||!e.vastXml||e.vastUrl?!(!e.vastUrl&&!e.vastXml):((0,i.logError)('\n This bid contains only vastXml and will not work when a prebid cache url is not specified.\n Try enabling either prebid cache with pbjs.setConfig({ cache: {url: "..."} });\n or local cache with pbjs.setConfig({ cache: { useLocal: true }});\n '),!1)}return!(r===d&&!s)||!!(e.renderer||t&&t.renderer||n.renderer)}),"checkVideoBidSetup")},51640:(e,t,n)=>{n.d(t,{M_:()=>u,Sb:()=>g,X5:()=>v,kh:()=>c});var r=n(62201),i=n(91933),o=n(63006),s=n(10466),a=n(71186);const d=15,c=new Map;function l(e){return e.vastXml?e.vastXml:(t=e.vastUrl,n=e.vastImpUrl,`<VAST version="3.0">\n <Ad>\n <Wrapper>\n <AdSystem>prebid.org wrapper</AdSystem>\n <VASTAdTagURI><![CDATA[${t}]]></VASTAdTagURI>\n ${(n=n&&(Array.isArray(n)?n:[n]))?n.map((e=>`<Impression><![CDATA[${e}]]></Impression>`)).join(""):""}\n <Creatives></Creatives>\n </Wrapper>\n </Ad>\n </VAST>`);var t,n}function u(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:r.g4;const s={puts:e.map((e=>function(e){let{index:t=o.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=l(e),r=t.getAuction(e),s={type:"xml",value:n,ttlseconds:Number(e.ttl)+d};return i.$W.getConfig("cache.vasttrack")&&(s.bidder=e.bidder,s.bidid=e.requestId,s.aid=e.auctionId),null!=r&&(s.timestamp=r.getAuctionStart()),"string"==typeof e.customCacheKey&&""!==e.customCacheKey&&(s.key=e.customCacheKey),s}(e)))};n(i.$W.getConfig("cache.timeout"))(i.$W.getConfig("cache.url"),function(e){return{success:function(t){let n;try{n=JSON.parse(t).responses}catch(t){return void e(t,[])}n?e(null,n):e(new Error("The cache server didn't respond with a responses property."),[])},error:function(t,n){e(new Error(`Error storing video ad in the cache: ${t}: ${JSON.stringify(n)}`),[])}}}(t),JSON.stringify(s),{contentType:"text/plain",withCredentials:!0})}const g=e=>{const t=l(e),n=URL.createObjectURL(new Blob([t],{type:"text/xml"}));f(e,n),c.set(e.videoCacheKey,n)},f=(e,t,n)=>{e.videoCacheKey=n||(0,s.generateUUID)(),e.vastUrl||(e.vastUrl=t)},p={store:u};function m(e){const t=e.map((e=>e.bidResponse));p.store(t,(function(n,r){var o;n?(o=n,(0,s.logError)(`Failed to save to the video cache: ${o}. Video bids will be discarded:`,t)):e.length!==r.length?(0,s.logError)(`expected ${e.length} cache IDs, got ${r.length} instead`):r.forEach(((t,n)=>{const{auctionInstance:r,bidResponse:o,afterBidAdded:d}=e[n];var c;""===t.uuid?(0,s.logWarn)("Supplied video cache key was already in use by Prebid Cache; caching attempt was rejected. Video bid must be discarded."):(f(o,(c=t.uuid,`${i.$W.getConfig("cache.url")}?uuid=${c}`),t.uuid),(0,a.v8)(r,o),d())}))}))}let h,b,y;i.$W.getConfig("cache",(e=>{let{cache:t}=e;h="number"==typeof t.batchSize&&t.batchSize>0?t.batchSize:1,b="number"==typeof t.batchTimeout&&t.batchTimeout>0?t.batchTimeout:0,t.useLocal&&!y&&(y=o.n.onExpiry((e=>{e.getBidsReceived().forEach((e=>{const t=c.get(e.videoCacheKey);t&&t.startsWith("blob")&&URL.revokeObjectURL(t),c.delete(e.videoCacheKey)}))})))}));const v=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:setTimeout,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:m,n=[[]],r=!1;const i=e=>e();return function(o,s,a){const d=b>0?e:i;n[n.length-1].length>=h&&n.push([]),n[n.length-1].push({auctionInstance:o,bidResponse:s,afterBidAdded:a}),r||(r=!0,d((()=>{n.forEach(t),n=[[]],r=!1}),b))}}()}}]);
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[60802],{67464:(e,t,n)=>{n.d(t,{A4:()=>c,J7:()=>l,Pg:()=>u});var r=n(75049),i=n(10466),o=n(51748),s=n(70736);const a=(0,o.m)(),d="outstream";function c(e){const{url:t,config:n,id:o,callback:c,loaded:l,adUnitCode:u,renderNow:g}=e;this.url=t,this.config=n,this.handlers={},this.id=o,this.renderNow=g,this.adUnitCode=u,this.loaded=l,this.cmd=[],this.push=e=>{"function"==typeof e?this.loaded?e.call():this.cmd.push(e):(0,i.logError)("Commands given to Renderer.push must be wrapped in a function")},this.callback=c||(()=>{this.loaded=!0,this.process()}),this.render=function(){const e=arguments,n=()=>{this._render?this._render.apply(this,e):(0,i.logWarn)("No render function was provided, please use .setRender on the renderer")};!function(e){const t=a.adUnits.find((t=>t.code===e));if(!t)return!1;const n=t?.renderer,r=!!(n&&n.url&&n.render),i=t?.mediaTypes?.video?.renderer,o=!!(i&&i.url&&i.render);return!!(r&&!0!==n.backupOnly||o&&!0!==i.backupOnly)}(u)?g?n():(this.cmd.unshift(n),(0,r.R)(t,s.tp,d,this.callback,this.documentContext)):((0,i.logWarn)(`External Js not loaded by Renderer since renderer url and callback is already defined on adUnit ${u}`),n())}.bind(this)}function l(e){return!(!e||!e.url&&!e.renderNow)}function u(e,t,n){let r=null;e.config&&e.config.documentResolver&&(r=e.config.documentResolver(t,document,n)),r||(r=document),e.documentContext=r,e.render(t,e.documentContext)}c.install=function(e){let{url:t,config:n,id:r,callback:i,loaded:o,adUnitCode:s,renderNow:a}=e;return new c({url:t,config:n,id:r,callback:i,loaded:o,adUnitCode:s,renderNow:a})},c.prototype.getConfig=function(){return this.config},c.prototype.setRender=function(e){this._render=e},c.prototype.setEventHandlers=function(e){this.handlers=e},c.prototype.handleVideoEvent=function(e){let{id:t,eventName:n}=e;"function"==typeof this.handlers[n]&&this.handlers[n](),(0,i.logMessage)(`Prebid Renderer event for id ${t} type ${n}`)},c.prototype.process=function(){for(;this.cmd.length>0;)try{this.cmd.shift().call()}catch(e){(0,i.logError)(`Error processing Renderer command on ad unit '${this.adUnitCode}':`,e)}}},45808:(e,t,n)=>{n.d(t,{DL:()=>l,Ml:()=>i,Ue:()=>r,VJ:()=>g,hE:()=>u,hq:()=>c,mo:()=>d,pY:()=>f,qX:()=>o,uc:()=>a,yg:()=>p,yl:()=>s});const r="accessDevice",i="syncUser",o="enrichUfpd",s="enrichEids",a="fetchBids",d="reportAnalytics",c="transmitEids",l="transmitUfpd",u="transmitPreciseGeo",g="transmitTid",f="loadExternalScript",p="accessRequestCredentials"},77610:(e,t,n)=>{n.d(t,{s:()=>i});var r=n(51409);const i=(0,n(25291).ZI)((e=>r.Ay.resolveAlias(e)))},70736:(e,t,n)=>{n.d(t,{Tn:()=>a,fW:()=>o,tW:()=>i,tp:()=>r,zu:()=>s});const r="prebid",i="bidder",o="userId",s="rtd",a="analytics"},25291:(e,t,n)=>{n.d(t,{Dk:()=>s,Ez:()=>l,Ii:()=>o,OI:()=>u,TQ:()=>m,U3:()=>b,XG:()=>g,ZI:()=>h,Zw:()=>c,bt:()=>f,e3:()=>p,iK:()=>a,q7:()=>d});var r=n(70736),i=n(32592);const o="component",s=o+"Type",a=o+"Name",d="adapterCode",c="storageType",l="storageKey",u="write",g="configName",f="syncType",p="syncUrl",m="_config";function h(e){return function(t,n,i){const c={[s]:t,[a]:n,[o]:`${t}.${n}`};return t===r.tW&&(c[d]=e(n)),b(Object.assign(c,i))}}const b=(0,i.A_)("sync",(e=>e))},53578:(e,t,n)=>{n.d(t,{Vx:()=>d,l7:()=>a,p4:()=>h,$V:()=>m,nl:()=>f,ZP:()=>b,$p:()=>y,uD:()=>p});var r=n(58928),i=n(91933),o=n(53202),s=n(45808);const a=["data","ext.data","yob","gender","keywords","kwarray","id","buyeruid","customdata"].map((e=>`user.${e}`)).concat("device.ext.cdep"),d=["user.eids","user.ext.eids"],c=["user.geo.lat","user.geo.lon","device.geo.lat","device.geo.lon"],l=["device.ip"],u=["device.ipv6"];function g(e){return Object.assign({get(){},run(e,t,n,r,i){const o=n&&n[r];if(m(o)&&i()){const e=this.get(o);void 0===e?delete n[r]:n[r]=e}}},e)}function f(e){return e.forEach((e=>{e.paths=e.paths.map((e=>{const t=e.split("."),n=t.pop();return[t.length>0?t.join("."):null,n]}))})),function(t,n){const i=[];for(var o=arguments.length,s=new Array(o>2?o-2:0),a=2;a<o;a++)s[a-2]=arguments[a];const d=p(t,...s);return e.forEach((e=>{if(!1!==t[e.name])for(const[o,s]of e.paths){const a=null==o?n:(0,r.A)(n,o);if(i.push(e.run(n,o,a,s,d.bind(null,e))),!1===t[e.name])return}})),i.filter((e=>null!=e))}}function p(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return function(t){return e.hasOwnProperty(t.name)||(e[t.name]=!!t.applies(...n)),e[t.name]}}function m(e){return null!=e&&("object"!=typeof e||Object.keys(e).length>0)}function h(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o.io;return function(n){return!t(e,n)}}function b(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;return[{name:s.DL,paths:a,applies:h(s.DL,e)},{name:s.hq,paths:d,applies:h(s.hq,e)},{name:s.hE,paths:c,applies:h(s.hE,e),get:e=>Math.round(100*(e+Number.EPSILON))/100},{name:s.hE,paths:l,applies:h(s.hE,e),get:e=>function(e){if(!e)return null;const t=e.split(".").map(Number);if(4!=t.length)return null;const n=[];for(let e=0;e<4;e++){const t=Math.max(0,Math.min(8,24-8*e));n.push(255<<8-t&255)}return t.map(((e,t)=>e&n[t])).join(".")}(e)},{name:s.hE,paths:u,applies:h(s.hE,e),get:e=>function(e){if(!e)return null;let t=e.split(":").map((e=>parseInt(e,16)));for(t=t.map((e=>isNaN(e)?0:e));t.length<8;)t.push(0);if(8!=t.length)return null;const n=[];for(let e=0;e<8;e++){const t=Math.max(0,Math.min(16,64-16*e));n.push(65535<<16-t&65535)}return t.map(((e,t)=>e&n[t])).map((e=>e.toString(16))).join(":")}(e)},{name:s.VJ,paths:["source.tid"],applies:h(s.VJ,e)}].map(g)}const y=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;const t=f(b(e)),n=f(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;return[{name:s.hq,paths:["userId","userIdAsEids"],applies:h(s.hq,e)},{name:s.VJ,paths:["ortb2Imp.ext.tid"],applies:h(s.VJ,e)}].map(g)}(e));return function(e){const r={};return{ortb2:n=>(t(r,n,e),n),bidRequest:t=>(n(r,t,e),t)}}}();(0,o.qB)(s.VJ,"enableTIDs config",(()=>{if(!i.$W.getConfig("enableTIDs"))return{allow:!1,reason:"TIDs are disabled"}}))},53202:(e,t,n)=>{n.d(t,{io:()=>s,qB:()=>o});var r=n(10466),i=n(25291);const[o,s]=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(0,r.prefixLog)("Activity control:");const t={};function n(e){return t[e]=t[e]||[]}function o(t,n,r,o){let s;try{s=r(o)}catch(r){e.logError(`Exception in rule ${n} for '${t}'`,r),s={allow:!1,reason:r}}return s&&Object.assign({activity:t,name:n,component:o[i.Ii]},s)}const s={};function a(t){let{activity:n,name:r,allow:i,reason:o,component:a}=t;const d=`${r} ${i?"allowed":"denied"} '${n}' for '${a}'${o?":":""}`,c=s.hasOwnProperty(d);if(c&&clearTimeout(s[d]),s[d]=setTimeout((()=>delete s[d]),1e3),!c){const t=[d];o&&t.push(o),(i?e.logInfo:e.logWarn).apply(e,t)}}return[function(e,t,r){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:10;const o=n(e),s=o.findIndex((e=>{let[t]=e;return i<t})),a=[i,t,r];return o.splice(s<0?o.length:s,0,a),function(){const e=o.indexOf(a);e>=0&&o.splice(e,1)}},function(e,t){let r,i;for(const[s,d,c]of n(e)){if(r!==s&&i)break;r=s;const n=o(e,d,c,t);if(n){if(!n.allow)return a(n),!1;i=n}}return i&&a(i),!0}]}()},71852:(e,t,n)=>{n.d(t,{$A:()=>I,BS:()=>P,Hh:()=>W,Pk:()=>j,Uc:()=>O,XO:()=>M,_0:()=>D,bw:()=>_,n6:()=>C,qn:()=>$,vB:()=>N,vW:()=>R,vd:()=>k});var r=n(10466),i=n(18014),o=n(11418),s=n(91933),a=n(67464),d=n(59794),c=n(63006),l=n(45144),u=n(32592),g=n(80356),f=n(13064),p=n(51409),m=n(37841),h=n(10552),b=n(72122);const{AD_RENDER_FAILED:y,AD_RENDER_SUCCEEDED:v,STALE_RENDER:E,BID_WON:A,EXPIRED_RENDER:w}=o.qY,{EXCEPTION:T}=o.as,I=(0,u.A_)("sync",(function(e){return(arguments.length>2&&void 0!==arguments[2]?arguments[2]:f.U9.resolve()).then((t=>t??c.n.findBidByAdId(e))).catch((()=>{}))})),C=(0,u.A_)("sync",(function(e){((0,b.$T)(e.eventtrackers)[b.RO]?.[b.Ni]||[]).forEach((e=>(0,r.triggerPixel)(e))),i.emit(A,e),c.n.addWinningBid(e)}));function S(e){let{reason:t,message:n,bid:o,id:s}=e;const a={reason:t,message:n};o&&(a.bid=o,a.adId=o.adId),s&&(a.adId=s),(0,r.logError)(`Error rendering ad (id: ${s}): ${n}`),i.emit(y,a)}function B(e){let{doc:t,bid:n,id:r}=e;const o={doc:t,bid:n,adId:r};p.Ay.callAdRenderSucceededBidder(n.adapterCode||n.bidder,n),i.emit(v,o)}function O(e,t){switch(e.event){case o.qY.AD_RENDER_FAILED:S({bid:t,id:t.adId,reason:e.info.reason,message:e.info.message});break;case o.qY.AD_RENDER_SUCCEEDED:B({doc:null,bid:t,id:t.adId});break;default:(0,r.logError)(`Received event request for unsupported event: '${e.event}' (adId: '${t.adId}')`)}}function R(e,t,n){let{resizeFn:r,fireTrackers:i=g.vO}=n;if("resizeNativeHeight"===e.action)r(e.width,e.height);else i(e,t)}const U={[o.nl.EVENT]:O};U[o.nl.NATIVE]=R;const k=(0,u.A_)("sync",(function(e,t){const{ad:n,adUrl:i,cpm:o,originalCpm:s,width:a,height:d,instl:c}=e,l={AUCTION_PRICE:s||o,CLICKTHROUGH:t?.clickUrl||""};return{ad:(0,r.replaceMacros)(n,l),adUrl:(0,r.replaceMacros)(i,l),width:a,height:d,instl:c}})),D=(0,u.A_)("sync",(function(e){let{renderFn:t,resizeFn:n,bidResponse:i,options:s,doc:a,isMainDocument:c=a===document&&!(0,r.inIframe)()}=e;const l=i.mediaType===d.G_;if(c||l)return void S({reason:o.as.PREVENT_WRITING_ON_MAIN_DOCUMENT,message:l?"Cannot render video ad without a renderer":"renderAd was prevented from writing to the main document.",bid:i,id:i.adId});const u=k(i,s);t(Object.assign({adId:i.adId},u));const{width:g,height:f}=u;null!=(g??f)&&n(g,f)}));function _(e){let{renderFn:t,resizeFn:n,adId:a,options:d,bidResponse:c,doc:l}=e;W(c,(()=>{if(null!=c){if((c.status!==o.tl.RENDERED||((0,r.logWarn)(`Ad id ${a} has been rendered before`),i.emit(E,c),!s.$W.getConfig("auctionOptions")?.suppressStaleRender))&&(h.uW.isBidNotExpired(c)||((0,r.logWarn)(`Ad id ${a} has been expired`),i.emit(w,c),!s.$W.getConfig("auctionOptions")?.suppressExpiredRender)))try{D({renderFn:t,resizeFn:n,bidResponse:c,options:d,doc:l})}catch(e){S({reason:o.as.EXCEPTION,message:e.message,id:a,bid:c})}}else S({reason:o.as.CANNOT_FIND_AD,message:`Cannot find ad '${a}'`,id:a})}))}function $(e){const t=(0,m.BO)(e.metrics);t.checkpoint("bidRender"),t.timeBetween("bidWon","bidRender","render.deferred"),t.timeBetween("auctionEnd","bidRender","render.pending"),t.timeBetween("requestBids","bidRender","render.e2e"),e.status=o.tl.RENDERED}D.before((function(e,t){const{bidResponse:n,doc:r}=t;(0,a.J7)(n.renderer)?((0,a.Pg)(n.renderer,n,r),B({doc:r,bid:n,id:n.adId}),e.bail()):e(t)}),100);const q=new WeakMap,x=new WeakSet;function W(e,t){null!=e?(q.set(e,t),e.deferRendering||N(e),j(e)):t()}function j(e){x.has(e)||(x.add(e),C(e))}function N(e){const t=q.get(e);t&&(t(),$(e),q.delete(e))}function P(e,t,n){let i;function s(e,n){S(Object.assign({id:t,bid:i},{reason:e,message:n}))}function a(t,n){const r=e.defaultView?.frameElement;r&&(t&&(r.width=t,r.style.width&&(r.style.width=`${t}px`)),n&&(r.height=n,r.style.height&&(r.style.height=`${n}px`)))}const d=(c={resizeFn:a},function(e,t,n){U.hasOwnProperty(e)&&U[e](t,n,c)});var c;function u(t){t.ad?(e.write(t.ad),e.close(),B({doc:e,bid:i,id:i.adId})):(0,l.HH)(i).then((n=>n(t,{sendMessage:(e,t)=>d(e,t,i),mkFrame:r.createIframe},e.defaultView))).then((()=>B({doc:e,bid:i,id:i.adId})),(e=>{s(e?.reason||o.as.EXCEPTION,e?.message),e?.stack&&(0,r.logError)(e)}));const n=document.createComment(`Creative ${i.creativeId} served by ${i.bidder} Prebid.js Header Bidding`);(0,r.insertElement)(n,e,"html")}try{t&&e?I(t).then((r=>{i=r,_({renderFn:u,resizeFn:a,adId:t,options:{clickUrl:n?.clickThrough},bidResponse:r,doc:e})})):s(o.as.MISSING_DOC_OR_ADID,"missing "+(t?"doc":"adId"))}catch(e){s(T,e.message)}}function M(){if(!window.frames[o.IY])if(document.body){const e=(0,r.createInvisibleIframe)();e.name=o.IY,document.body.appendChild(e)}else window.requestAnimationFrame(M)}},71958:(e,t,n)=>{n.d(t,{U:()=>s});var r=n(51748),i=n(10466);const o=(0,r.m)();function s(e,t){o.adServers=o.adServers||{},o.adServers[e]=o.adServers[e]||{},Object.keys(t).forEach((n=>{o.adServers[e][n]?(0,i.logWarn)(`Attempting to add an already registered function property ${n} for AdServer ${e}.`):o.adServers[e][n]=t[n]}))}},5672:(e,t,n)=>{function r(e){var t=e;return{callBids:function(){},setBidderCode:function(e){t=e},getBidderCode:function(){return t}}}n.d(t,{A:()=>r})},51409:(e,t,n)=>{n.d(t,{S1:()=>j,Ay:()=>re,tS:()=>J,pX:()=>Y,Mf:()=>X,K5:()=>H,Gs:()=>K});var r=n(26665),i=n(10466),o=n(80356),s=n(3516),a=n(62201),d=n(91933),c=n(32592);const l="requests",u="wins",g="auctions";let f={};function p(e,t){const n=f[e]=f[e]||{bidders:{}};return t?n.bidders[t]=n.bidders[t]||{}:n}function m(e,t){return function(n,r){const i=p(n,t&&r);return i[e]=(i[e]??0)+1,i[e]}}function h(e,t){return function(n,r){return p(n,t&&r)[e]??0}}const b=m(l,!1),y=m(l,!0),v=m(u,!0),E=m(g,!1),A=h(l,!1),w=h(l,!0),T=h(u,!0),I=h(g,!1);var C=n(10867),S=n(41385),B=n(18014),O=n(11418),R=n(37841),U=n(63006),k=n(70736),D=n(53202),_=n(45808),$=n(25291),q=n(53578),x=n(72122);const W="pbsBidAdapter",j={CLIENT:"client",SERVER:"server"},N={isAllowed:D.io,redact:q.$p},P={},M={},F={};let G=[];d.$W.getConfig("s2sConfig",(e=>{e&&e.s2sConfig&&(G=(0,r.cy)(e.s2sConfig)?e.s2sConfig:[e.s2sConfig])}));const L=(0,$.ZI)((e=>Z.resolveAlias(e)));function z(e){return e.configName??e.name}function H(e){return L(k.tp,W,{[$.XG]:z(e)})}const V=["nativeParams","nativeOrtbRequest","renderer"];function Q(e){let{bidderCode:t,auctionId:n,bidderRequestId:o,adUnits:s,src:a,metrics:d}=e;return s.reduce(((e,s)=>{const c=s.bids.filter((e=>e.bidder===t));return null==t&&0===c.length&&null!=s.s2sBid&&c.push({bidder:null}),e.push(c.reduce(((e,c)=>{const l=null==(c=Object.assign({},c,{ortb2Imp:(0,i.mergeDeep)({},s.ortb2Imp,c.ortb2Imp)},(0,r.SH)(s,V))).mediaTypes?s.mediaTypes:c.mediaTypes;return(0,i.isValidMediaTypes)(l)?c=Object.assign({},c,{mediaTypes:l}):(0,i.logError)(`mediaTypes is not correctly configured for adunit ${s.code}`),"client"===a&&y(s.code,t),e.push(Object.assign({},c,{adUnitCode:s.code,transactionId:s.transactionId,adUnitId:s.adUnitId,sizes:l?.banner?.sizes||l?.video?.playerSize||[],bidId:c.bid_id||(0,i.getUniqueIdentifierStr)(),bidderRequestId:o,auctionId:n,src:a,metrics:d,auctionsCount:I(s.code),bidRequestsCount:A(s.code),bidderRequestsCount:w(s.code,c.bidder),bidderWinsCount:T(s.code,c.bidder),deferBilling:!!s.deferBilling})),e}),[])),e}),[]).reduce(i.flatten,[]).filter((e=>""!==e))}const J=(0,c.A_)("sync",(function(e,t){let{getS2SBidders:n=Y}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null==t)return e;{const r=n(t);return e.filter((e=>{if(!r.has(e.bidder))return!1;if(null==e.s2sConfigName)return!0;const n=z(t);return(Array.isArray(e.s2sConfigName)?e.s2sConfigName:[e.s2sConfigName]).includes(n)}))}}),"filterBidsForAdUnit");const K=(0,c.A_)("sync",((e,t)=>e),"setupAdUnitMediaTypes");function Y(e){(0,r.cy)(e)||(e=[e]);const t=new Set([null]);return e.filter((e=>e&&e.enabled)).flatMap((e=>e.bidders)).forEach((e=>t.add(e))),t}const X=(0,c.A_)("sync",(function(e,t){let{getS2SBidders:n=Y}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=n(t);return(0,i.getBidderCodes)(e).reduce(((e,t)=>(e[r.has(t)?j.SERVER:j.CLIENT].push(t),e)),{[j.CLIENT]:[],[j.SERVER]:[]})}),"partitionBidders"),Z={bidderRegistry:P,analyticsRegistry:F,aliasRegistry:M,makeBidRequests:(0,c.A_)("sync",(function(e,t,n,s,a){let c=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},l=arguments.length>6?arguments[6]:void 0;l=(0,R.BO)(l),B.emit(O.qY.BEFORE_REQUEST_BIDS,e),(0,o.nk)(e),e.map((e=>e.code)).filter(i.uniques).forEach(E),e.forEach((e=>{(0,r.Qd)(e.mediaTypes)||(e.mediaTypes={}),e.bids=e.bids.filter((e=>!e.bidder||N.isAllowed(_.uc,L(k.tW,e.bidder)))),b(e.code)})),e=K(e,a);let{[j.CLIENT]:u,[j.SERVER]:g}=X(e,G);d.$W.getConfig("bidderSequence")===d.Ov&&(u=(0,i.shuffle)(u));const f=(0,C.EN)(),p=[],m=c.global||{},h=c.bidder||{};function y(e,t){const r=N.redact(null!=t?t:L(k.tW,e.bidderCode)),o=Object.freeze(r.ortb2((0,i.mergeDeep)({source:{tid:n}},m,h[e.bidderCode])));return e.ortb2=o,e.bids=e.bids.map((e=>(e.ortb2=o,r.bidRequest(e)))),e}G.forEach((o=>{const s=H(o);if(o&&o.enabled&&N.isAllowed(_.uc,s)){const{adUnits:a,hasModuleBids:d}=function(e,t){let n=(0,r.Go)(e),o=!1;return n.forEach((e=>{const n=e.bids.filter((e=>e.module===W&&e.params?.configName===z(t)));1===n.length?(e.s2sBid=n[0],o=!0,e.ortb2Imp=(0,i.mergeDeep)({},e.s2sBid.ortb2Imp,e.ortb2Imp)):n.length>1&&(0,i.logWarn)('Multiple "module" bids for the same s2s configuration; all will be ignored',n),e.bids=J(e.bids,t).map((e=>(e.bid_id=(0,i.getUniqueIdentifierStr)(),e)))})),n=n.filter((e=>!(t.filterBidderlessCalls&&1===e.bids.length&&null==e.bids[0].bidder||0===e.bids.length&&null==e.s2sBid))),{adUnits:n,hasModuleBids:o}}(e,o),c=(0,i.generateUUID)();(0===g.length&&d?[null]:g).forEach((e=>{const d=(0,i.getUniqueIdentifierStr)(),u=l.fork(),g=y({bidderCode:e,auctionId:n,bidderRequestId:d,uniquePbsTid:c,bids:Q({bidderCode:e,auctionId:n,bidderRequestId:d,adUnits:(0,r.Go)(a),src:O.RW.SRC,metrics:u}),auctionStart:t,timeout:o.timeout,src:O.RW.SRC,refererInfo:f,metrics:u},s);0!==g.bids.length&&p.push(g)})),a.forEach((e=>{const t=e.bids.filter((e=>p.find((t=>t.bids.find((t=>t.bidId===e.bid_id))))));e.bids=t})),p.forEach((e=>{void 0===e.adUnitsS2SCopy&&(e.adUnitsS2SCopy=a.filter((e=>e.bids.length>0||null!=e.s2sBid)))}))}}));const v=function(e){let t=(0,r.Go)(e);return t.forEach((e=>{e.bids=J(e.bids,null)})),t=t.filter((e=>0!==e.bids.length)),t}(e);return u.forEach((e=>{const o=(0,i.getUniqueIdentifierStr)(),a=l.fork(),d=y({bidderCode:e,auctionId:n,bidderRequestId:o,bids:Q({bidderCode:e,auctionId:n,bidderRequestId:o,adUnits:(0,r.Go)(v),src:"client",metrics:a}),auctionStart:t,timeout:s,refererInfo:f,metrics:a}),c=P[e];c||(0,i.logError)(`Trying to make a request for bidder that does not exist: ${e}`),c&&d.bids&&0!==d.bids.length&&p.push(d)})),p.forEach((e=>{S.mW.getConsentData()&&(e.gdprConsent=S.mW.getConsentData()),S.t6.getConsentData()&&(e.uspConsent=S.t6.getConsentData()),S.ad.getConsentData()&&(e.gppConsent=S.ad.getConsentData())})),p}),"makeBidRequests"),callBids(e,t,n,r,o,s,c){let l=arguments.length>7&&void 0!==arguments[7]?arguments[7]:{};if(!t.length)return void(0,i.logWarn)("callBids executed with no bidRequests. Were they filtered by labels or sizing?");const[u,g]=t.reduce(((e,t)=>(e[Number(void 0!==t.src&&t.src===O.RW.SRC)].push(t),e)),[[],[]]);var f=[];g.forEach((e=>{for(var t=-1,n=0;n<f.length;++n)if(e.uniquePbsTid===f[n].uniquePbsTid){t=n;break}t<=-1&&f.push(e)}));let p=0;G.forEach((e=>{if(e&&f[p]&&Y(e).has(f[p].bidderCode)){const t=(0,a.g4)(s,o?{request:o.request.bind(null,"s2s"),done:o.done}:void 0),d=e.bidders,u=P[e.adapter],m=f[p].uniquePbsTid,h=f[p].adUnitsS2SCopy,b=g.filter((e=>e.uniquePbsTid===m));if(u){const o={ad_units:h,s2sConfig:e,ortb2Fragments:l,requestBidsTimeout:s};if(o.ad_units.length){const e=b.map((e=>(e.start=(0,i.timestamp)(),function(t){t||c(e.bidderRequestId);for(var n=arguments.length,i=new Array(n>1?n-1:0),o=1;o<n;o++)i[o-1]=arguments[o];r.apply(e,[t,...i])}))),s=(0,i.getBidderCodes)(o.ad_units).filter((e=>d.includes(e)));(0,i.logMessage)(`CALLING S2S HEADER BIDDERS ==== ${s.length>0?s.join(", "):'No bidder specified, using "ortb2Imp" definition(s) only'}`),b.forEach((e=>{B.emit(O.qY.BID_REQUESTED,{...e,tid:e.auctionId})})),u.callBids(o,g,n,(t=>e.forEach((e=>e(t)))),t)}}else(0,i.logError)("missing "+e.adapter);p++}})),u.forEach((e=>{e.start=(0,i.timestamp)();const t=P[e.bidderCode];d.$W.runWithBidder(e.bidderCode,(()=>{(0,i.logMessage)("CALLING BIDDER"),B.emit(O.qY.BID_REQUESTED,e)}));const l=(0,a.g4)(s,o?{request:o.request.bind(null,e.bidderCode),done:o.done}:void 0),u=r.bind(e);try{d.$W.runWithBidder(e.bidderCode,t.callBids.bind(t,e,n,u,l,(()=>c(e.bidderRequestId)),d.$W.callbackWithBidder(e.bidderCode)))}catch(t){(0,i.logError)(`${e.bidderCode} Bid Adapter emitted an uncaught error when parsing their bidRequest`,{e:t,bidRequest:e}),u()}}))},videoAdapters:[],registerBidAdapter(e,t){let{supportedMediaTypes:n=[]}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};e&&t?"function"==typeof e.callBids?(P[t]=e,S.o2.register(k.tW,t,e.getSpec?.().gvlid),n.includes("video")&&Z.videoAdapters.push(t),n.includes("native")&&o.mT.push(t)):(0,i.logError)("Bidder adaptor error for bidder code: "+t+"bidder must implement a callBids() function"):(0,i.logError)("bidAdapter or bidderCode not specified")},aliasBidAdapter(e,t,n){if(void 0===P[t]){const r=P[e];if(void 0===r){const n=[];G.forEach((r=>{if(r.bidders&&r.bidders.length){const i=r&&r.bidders;r&&i.includes(t)?M[t]=e:n.push(e)}})),n.forEach((e=>{(0,i.logError)('bidderCode "'+e+'" is not an existing bidder.',"adapterManager.aliasBidAdapter")}))}else try{let a;const d=function(e){const t=[];Z.videoAdapters.includes(e)&&t.push("video");o.mT.includes(e)&&t.push("native");return t}(e);if(r.constructor.prototype!=Object.prototype)a=new r.constructor,a.setBidderCode(t);else{const{useBaseGvlid:o=!1}=n||{},d=r.getSpec(),c=o?d.gvlid:n?.gvlid;null==c&&null!=d.gvlid&&(0,i.logWarn)(`Alias '${t}' will NOT re-use the GVL ID of the original adapter ('${d.code}', gvlid: ${d.gvlid}). Functionality that requires TCF consent may not work as expected.`);const l=n&&n.skipPbsAliasing;a=(0,s.xb)(Object.assign({},d,{code:t,gvlid:c,skipPbsAliasing:l})),M[t]=e}Z.registerBidAdapter(a,t,{supportedMediaTypes:d})}catch(t){(0,i.logError)(e+" bidder does not currently support aliasing.","adapterManager.aliasBidAdapter")}}else(0,i.logMessage)('alias name "'+t+'" has been already specified.')},resolveAlias(e){let t,n=e;for(;M[n]&&(!t||!t.has(n));)n=M[n],(t=t||new Set).add(n);return n},registerAnalyticsAdapter(e){let{adapter:t,code:n,gvlid:r}=e;t&&n?"function"==typeof t.enableAnalytics?(t.code=n,F[n]={adapter:t,gvlid:r},S.o2.register(k.Tn,n,r)):(0,i.logError)(`Prebid Error: Analytics adaptor error for analytics "${n}"\n analytics adapter must implement an enableAnalytics() function`):(0,i.logError)("Prebid Error: analyticsAdapter or analyticsCode not specified")},enableAnalytics(e){(0,r.cy)(e)||(e=[e]),e.forEach((e=>{const t=F[e.provider];t&&t.adapter?N.isAllowed(_.mo,L(k.Tn,e.provider,{[$.TQ]:e}))&&t.adapter.enableAnalytics(e):(0,i.logError)(`Prebid Error: no analytics adapter found in registry for '${e.provider}'.`)}))},getBidAdapter:e=>P[e],getAnalyticsAdapter:e=>F[e],callTimedOutBidders(e,t,n){t=t.map((t=>(t.params=(0,i.getUserConfiguredParams)(e,t.adUnitCode,t.bidder),t.timeout=n,t))),t=(0,i.groupBy)(t,"bidder"),Object.keys(t).forEach((e=>{ne(e,"onTimeout",t[e])}))},callBidWonBidder(e,t,n){t.params=(0,i.getUserConfiguredParams)(n,t.adUnitCode,t.bidder),v(t.adUnitCode,t.bidder),ne(e,"onBidWon",t)},triggerBilling:(()=>{const e=new WeakSet;return t=>{e.has(t)||(e.add(t),((0,x.$T)(t.eventtrackers)[x.OA]?.[x.Ni]||[]).forEach((e=>i.internal.triggerPixel(e))),ne(t.bidder,"onBidBillable",t))}})(),callSetTargetingBidder(e,t){ne(e,"onSetTargeting",t)},callBidViewableBidder(e,t){ne(e,"onBidViewable",t)},callBidderError(e,t,n){ne(e,"onBidderError",{error:t,bidderRequest:n})},callAdRenderSucceededBidder(e,t){ne(e,"onAdRenderSucceeded",t)},callDataDeletionRequest:(0,c.A_)("sync",(function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];const r="onDataDeletionRequest";Object.keys(P).filter((e=>!M.hasOwnProperty(e))).forEach((e=>{const n=ee(e,r);if(null!=n){const i=U.n.getBidsRequested().filter((t=>function(e){const t=new Set;for(;M.hasOwnProperty(e)&&!t.has(e);)t.add(e),e=M[e];return e}(t.bidderCode)===e));te(e,r,...n,i,...t)}})),Object.entries(F).forEach((e=>{let[n,o]=e;const s=o?.adapter?.[r];if("function"==typeof s)try{s.apply(o.adapter,t)}catch(e){(0,i.logError)(`error calling ${r} of ${n}`,e)}}))}))};function ee(e,t){const n=P[e],r=n?.getSpec&&n.getSpec();if(r&&r[t]&&"function"==typeof r[t])return[r,r[t]]}function te(e,t,n,r){try{(0,i.logInfo)(`Invoking ${e}.${t}`);for(var o=arguments.length,s=new Array(o>4?o-4:0),a=4;a<o;a++)s[a-4]=arguments[a];d.$W.runWithBidder(e,r.bind(n,...s))}catch(n){(0,i.logWarn)(`Error calling ${t} of ${e}`)}}function ne(e,t,n){if(n?.source!==O.RW.SRC){const r=ee(e,t);null!=r&&te(e,t,...r,n)}}const re=Z},3516:(e,t,n)=>{n.d(t,{JN:()=>U,JS:()=>D,a$:()=>I,eI:()=>C,fn:()=>k,xb:()=>S});var r=n(5672),i=n(51409),o=n(91933),s=n(63320),a=n(73391),d=n(80356),c=n(36220),l=n(11418),u=n(18014),g=n(26665),f=n(10466),p=n(32592),m=n(63006),h=n(77156),b=n(37841),y=n(53202),v=n(77610),E=n(70736),A=n(45808);const w=["cpm","ttl","creativeId","netRevenue","currency"],T=["auctionId","transactionId"];function I(e){const t=Array.isArray(e.supportedMediaTypes)?{supportedMediaTypes:e.supportedMediaTypes}:void 0;function n(e){const n=S(e);i.Ay.registerBidAdapter(n,e.code,t)}n(e),Array.isArray(e.aliases)&&e.aliases.forEach((t=>{let r,o,s=t;(0,g.Qd)(t)&&(s=t.code,r=t.gvlid,o=t.skipPbsAliasing),i.Ay.aliasRegistry[s]=e.code,n(Object.assign({},e,{code:s,gvlid:r,skipPbsAliasing:o}))}))}const C=(0,f.memoize)((e=>{let{bidderCode:t}=e;if((0,y.io)(A.VJ,(0,v.s)(E.tW,t)))return{bidRequest:e=>e,bidderRequest:e=>e};function n(e,t,n){return T.includes(t)?null:Reflect.get(e,t,n)}function r(e,t){const n=new Proxy(e,t);return Object.entries(e).filter((e=>{let[t,n]=e;return"function"==typeof n})).forEach((t=>{let[r,i]=t;return n[r]=i.bind(e)})),n}const i=(0,f.memoize)((e=>r(e,{get:n})),(e=>e.bidId));return{bidRequest:i,bidderRequest:e=>r(e,{get:(t,r,o)=>"bids"===r?e.bids.map(i):n(t,r,o)})}}));function S(e){return Object.assign((0,r.A)(e.code),{getSpec:function(){return Object.freeze(Object.assign({},e))},registerSyncs:t,callBids:function(n,r,a,d,c,p){if(!Array.isArray(n.bids))return;const m=C(n),y={};const v=[];function E(){a(),o.$W.runWithBidder(e.code,(()=>{u.emit(l.qY.BIDDER_DONE,n),t(v,n.gdprConsent,n.uspConsent,n.gppConsent)}))}const A=D(n).measureTime("validate",(()=>n.bids.filter((t=>function(t){if(!e.isBidRequestValid(t))return(0,f.logWarn)(`Invalid bid sent to bidder ${e.code}: ${JSON.stringify(t)}`),!1;return!0}(m.bidRequest(t))))));if(0===A.length)return void E();const w={};A.forEach((e=>{w[e.bidId]=e})),O(e,A,n,d,p,{onRequest:e=>u.emit(l.qY.BEFORE_BIDDER_HTTP,n,e),onResponse:t=>{c(e.code),v.push(t)},onPaapi:e=>{const t=w[e.bidId];t?U(t,e):(0,f.logWarn)("Received fledge auction configuration for an unknown bidId",e)},onError:(t,r)=>{r.timedOut||c(e.code),i.Ay.callBidderError(e.code,r,n),u.emit(l.qY.BIDDER_ERROR,{error:r,bidderRequest:n}),(0,f.logError)(`Server call for ${e.code} failed: ${t} ${r.status}. Continuing without bids.`,{bidRequests:A})},onBid:t=>{const n=w[t.requestId],i=t;if(n){if(i.adapterCode=n.bidder,function(e,t){const n=h.u.get(t,"allowAlternateBidderCodes")||!1;let r=h.u.get(t,"allowedAlternateBidderCodes");if(e&&t&&t!==e&&(r=(0,g.cy)(r)?r.map((e=>e.trim().toLowerCase())).filter((e=>!!e)).filter(f.uniques):r,!n||(0,g.cy)(r)&&"*"!==r[0]&&!r.includes(e)))return!0;return!1}(t.bidderCode,n.bidder))return(0,f.logWarn)(`${t.bidderCode} is not a registered partner or known bidder of ${n.bidder}, hence continuing without bid. If you wish to support this bidder, please mark allowAlternateBidderCodes as true in bidderSettings.`),void r.reject(n.adUnitCode,t,l.Tf.BIDDER_DISALLOWED);i.originalCpm=t.cpm,i.originalCurrency=t.currency,i.meta=t.meta||Object.assign({},t[n.bidder]),i.deferBilling=n.deferBilling,i.deferRendering=i.deferBilling&&(t.deferRendering??"function"!=typeof e.onBidBillable);const o=Object.assign((0,s.O)(n),i,(0,f.pick)(n,T));!function(e,t){const n=(0,b.BO)(t.metrics);n.checkpoint("addBidResponse"),y[e]=!0,n.measureTime("addBidResponse.validate",(()=>k(e,t)))?r(e,t):r.reject(e,t,l.Tf.INVALID)}(n.adUnitCode,o)}else(0,f.logWarn)(`Bidder ${e.code} made bid for unknown request ID: ${t.requestId}. Ignoring.`),r.reject(null,t,l.Tf.INVALID_REQUEST_ID)},onCompletion:E})}});function t(t,n,r,i){R(e,t,n,r,i)}}const B=["bids","paapi"],O=(0,p.A_)("async",(function(e,t,n,r,i,o){let{onRequest:s,onResponse:a,onPaapi:d,onError:c,onBid:u,onCompletion:p}=o;const m=D(n);p=m.startTiming("total").stopBefore(p);const b=C(n);let w=m.measureTime("buildRequests",(()=>e.buildRequests(t.map(b.bidRequest),b.bidderRequest(n))));if(Array.isArray(w)||(w=[w]),!w||0===w.length)return void p();const T=(0,f.delayExecution)(p,w.length);w.forEach((t=>{const n=m.fork();function o(e){null!=e&&(e.metrics=n.fork().renameWith()),u(e)}const p=i((function(r,i){w();try{r=JSON.parse(r)}catch(e){}r={body:r,headers:{get:i.getResponseHeader.bind(i)}},a(r);try{r=n.measureTime("interpretResponse",(()=>e.interpretResponse(r,t)))}catch(t){return(0,f.logError)(`Bidder ${e.code} failed to interpret the server's response. Continuing without bids`,null,t),void T()}let s,c;r&&!Object.keys(r).some((e=>!B.includes(e)))?(s=r.bids,c=r.paapi):s=r,(0,g.cy)(c)&&c.forEach(d),s&&((0,g.cy)(s)?s.forEach(o):o(s)),T()})),b=i((function(e,t){w(),c(e,t),T()}));s(t);const w=n.startTiming("net"),I="TRUE"===(0,f.getParameterByName)(l.M).toUpperCase()||(0,f.debugTurnedOn)();function C(n){const r=t.options;return Object.assign(n,r,{browsingTopics:!(r?.hasOwnProperty("browsingTopics")&&!r.browsingTopics)&&((h.u.get(e.code,"topicsHeader")??!0)&&(0,y.io)(A.DL,(0,v.s)(E.tW,e.code))),suppressTopicsEnrollmentWarning:r?.hasOwnProperty("suppressTopicsEnrollmentWarning")?r.suppressTopicsEnrollmentWarning:!I})}switch(t.method){case"GET":r(`${t.url}${function(e){if(e)return`?${"object"==typeof e?(0,f.parseQueryStringParameters)(e):e}`;return""}(t.data)}`,{success:p,error:b},void 0,C({method:"GET",withCredentials:!0}));break;case"POST":const n=t.options?.endpointCompression,i=e=>{let{url:t,payload:n}=e;r(t,{success:p,error:b},n,C({method:"POST",contentType:"text/plain",withCredentials:!0}))};n&&I&&(0,f.logWarn)(`Skipping GZIP compression for ${e.code} as debug mode is enabled`),n&&!I&&(0,f.isGzipCompressionSupported)()?(0,f.compressDataWithGZip)(t.data).then((e=>{const n=new URL(t.url,window.location.origin);n.searchParams.has("gzip")||n.searchParams.set("gzip","1"),i({url:n.href,payload:e})})):i({url:t.url,payload:"string"==typeof t.data?t.data:JSON.stringify(t.data)});break;default:(0,f.logWarn)(`Skipping invalid request from ${e.code}. Request type ${t.method} must be GET or POST`),T()}}))}),"processBidderRequests"),R=(0,p.A_)("async",(function(e,t,n,r,s){const d=o.$W.getConfig("userSync.aliasSyncEnabled");if(e.getUserSyncs&&(d||!i.Ay.aliasRegistry[e.code])){let i=e.getUserSyncs({iframeEnabled:a.zt.canBidderRegisterSync("iframe",e.code),pixelEnabled:a.zt.canBidderRegisterSync("image",e.code)},t,n,r,s);i&&(Array.isArray(i)||(i=[i]),i.forEach((t=>{a.zt.registerSync(t.type,e.code,t.url)})),a.zt.bidderDone(e.code))}}),"registerSyncs"),U=(0,p.A_)("sync",((e,t)=>{}),"addPaapiConfig");function k(e,t){let{index:n=m.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};function r(e){return`Invalid bid from ${t.bidderCode}. Ignoring bid: ${e}`}return e?t?function(){const e=Object.keys(t);return w.every((n=>e.includes(n)&&![void 0,null].includes(t[n])))}()?"native"!==t.mediaType||(0,d.Bm)(t,{index:n})?"video"!==t.mediaType||(0,c.vk)(t,{index:n})?!("banner"===t.mediaType&&!function(e,t){let{index:n=m.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if((t.width||0===parseInt(t.width,10))&&(t.height||0===parseInt(t.height,10)))return t.width=parseInt(t.width,10),t.height=parseInt(t.height,10),!0;if(null!=t.wratio&&null!=t.hratio)return t.wratio=parseInt(t.wratio,10),t.hratio=parseInt(t.hratio,10),!0;const r=n.getBidRequest(t),i=n.getMediaTypes(t),o=r&&r.sizes||i&&i.banner&&i.banner.sizes,s=(0,f.parseSizesInput)(o);if(1===s.length){const[e,n]=s[0].split("x");return t.width=parseInt(e,10),t.height=parseInt(n,10),!0}return!1}(e,t,{index:n}))||((0,f.logError)(r("Banner bids require a width and height")),!1):((0,f.logError)(r("Video bid does not have required vastUrl or renderer property")),!1):((0,f.logError)(r("Native bid missing some required properties.")),!1):((0,f.logError)(r(`Bidder ${t.bidderCode} is missing required params. Check http://prebid.org/dev-docs/bidder-adapter-1.html for list of params.`)),!1):((0,f.logWarn)(`Some adapter tried to add an undefined bid for ${e}.`),!1):((0,f.logWarn)("No adUnitCode was supplied to addBidResponse."),!1)}function D(e){return(0,b.BO)(e.metrics).renameWith((t=>[`adapter.client.${t}`,`adapters.client.${e.bidderCode}.${t}`]))}},75049:(e,t,n)=>{n.d(t,{R:()=>c});var r=n(45808),i=n(77610),o=n(53202),s=n(10466);const a=new WeakMap,d=["debugging","outstream","aaxBlockmeter","adagio","adloox","arcspan","airgrid","browsi","brandmetrics","clean.io","humansecurityMalvDefense","humansecurity","confiant","contxtful","hadron","mediafilter","medianet","azerionedge","a1Media","geoedge","qortex","dynamicAdBoost","51Degrees","symitridap","wurfl","nodalsAi","anonymised","optable","justtag","tncId","ftrackId","id5"];function c(e,t,n,c,l,u){if(!(0,o.io)(r.pY,(0,i.s)(t,n)))return;if(!n||!e)return void(0,s.logError)("cannot load external script without url and moduleCode");if(!d.includes(n))return void(0,s.logError)(`${n} not whitelisted for loading external JavaScript`);l||(l=document);const g=m(l,e);if(g)return c&&"function"==typeof c&&(g.loaded?c():g.callbacks.push(c)),g.tag;const f=a.get(l)||{},p={loaded:!1,tag:null,callbacks:[]};return f[e]=p,a.set(l,f),c&&"function"==typeof c&&p.callbacks.push(c),(0,s.logWarn)(`module ${n} is loading external JavaScript`),function(t,n,r,i){r||(r=document);var o=r.createElement("script");o.type="text/javascript",o.async=!0;const a=m(r,e);a&&(a.tag=o);o.readyState?o.onreadystatechange=function(){"loaded"!==o.readyState&&"complete"!==o.readyState||(o.onreadystatechange=null,n())}:o.onload=function(){n()};o.src=t,i&&(0,s.setScriptAttributes)(o,i);return(0,s.insertElement)(o,r),o}(e,(function(){p.loaded=!0;try{for(let e=0;e<p.callbacks.length;e++)p.callbacks[e]()}catch(e){(0,s.logError)("Error executing callback","adloader.js:loadExternalScript",e)}}),l,u);function m(e,t){const n=a.get(e);return n&&n[t]?n[t]:null}}},3129:(e,t,n)=>{n.d(t,{Q:()=>r});const r=(0,n(32592).A_)("sync",(()=>{}))},62201:(e,t,n)=>{n.d(t,{RD:()=>y,Rz:()=>b,g4:()=>h,hd:()=>v,p3:()=>f});var r=n(45808),i=n(77610),o=n(53202),s=n(91933),a=n(32592),d=n(10466);const c={fetch:window.fetch.bind(window),makeRequest:(e,t)=>new Request(e,t),timeout(e,t){const n=new AbortController;let r=setTimeout((()=>{n.abort(),(0,d.logError)(`Request timeout after ${e}ms`,t),r=null}),e);return{signal:n.signal,done(){r&&clearTimeout(r)}}}},l="GET",u="POST",g="Content-Type",f=(0,a.A_)("async",(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0;return e.withCredentials&&(e.withCredentials=t&&n?(0,o.io)(r.yg,(0,i.s)(t,n)):(0,d.hasDeviceAccess)()),e}),"processRequestOptions");function p(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3e3,{request:t,done:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0,o=(t,n)=>{let o;null==e||null!=n?.signal||s.$W.getConfig("disableAjaxTimeout")||(o=c.timeout(e,t),n=Object.assign({signal:o.signal},n)),f(n,r,i);let a=c.fetch(t,n);return null!=o?.done&&(a=a.finally(o.done)),a};return null==t&&null==n||(o=(e=>function(r,i){const o=new URL(null==r?.url?r:r.url,document.location).origin;let s=e(r,i);return t&&t(o),n&&(s=s.finally((()=>n(o)))),s})(o)),o}function m(e,t){let n,{status:r,statusText:i="",headers:o,url:s}=e;function a(e){if(void 0===n)try{n=(new DOMParser).parseFromString(t,o?.get(g)?.split(";")?.[0])}catch(t){n=null,e&&e(t)}return n}return{readyState:XMLHttpRequest.DONE,status:r,statusText:i,responseText:t,response:t,responseType:"",responseURL:s,get responseXML(){return a(d.logError)},getResponseHeader:e=>o?.has(e)?o.get(e):null,toJSON(){return Object.assign({responseXML:a()},this)},timedOut:!1}}function h(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3e3,{request:t,done:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const r=p(e,{request:t,done:n},arguments.length>2?arguments[2]:void 0,arguments.length>3?arguments[3]:void 0);return function(e,t,n){!function(e,t){const{success:n,error:r}="object"==typeof t&&null!=t?t:{success:"function"==typeof t?t:()=>null,error:(e,t)=>(0,d.logError)("Network error",e,t)};e.then((e=>e.text().then((t=>[e,t])))).then((e=>{let[t,i]=e;const o=m(t,i);t.ok||304===t.status?n(i,o):r(t.statusText,o)}),(e=>r("",Object.assign(m({status:0},""),{reason:e,timedOut:"AbortError"===e?.name}))))}(r(function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=n.method||(t?u:l);if(r===l&&t){const r=(0,d.parseUrl)(e,n);Object.assign(r.search,t),e=(0,d.buildUrl)(r)}const i=new Headers(n.customHeaders);i.set(g,n.contentType||"text/plain");const o={method:r,headers:i};return r!==l&&t&&(o.body=t),n.withCredentials&&(o.credentials="include"),isSecureContext&&(["browsingTopics","adAuctionHeaders"].forEach((e=>{n[e]&&(o[e]=!0)})),null!=n.suppressTopicsEnrollmentWarning&&(o.suppressTopicsEnrollmentWarning=n.suppressTopicsEnrollmentWarning)),n.keepalive&&(o.keepalive=!0),c.makeRequest(e,o)}(e,n,arguments.length>3&&void 0!==arguments[3]?arguments[3]:{})),t)}}function b(e,t){return!(!window.navigator||!window.navigator.sendBeacon)&&window.navigator.sendBeacon(e,t)}const y=h(),v=p()},71186:(e,t,n)=>{n.d(t,{AA:()=>B,BU:()=>P,HN:()=>J,UZ:()=>O,ZV:()=>G,mO:()=>F,mX:()=>$,sR:()=>q,v8:()=>N,w1:()=>W});var r=n(10466),i=n(26665),o=n(1124),s=n(80356),a=n(51640),d=n(67464),c=n(91933),l=n(73391),u=n(32592),g=n(36220),f=n(59794),p=n(63006),m=n(77156),h=n(18014),b=n(51409),y=n(11418),v=n(13064),E=n(37841),A=n(77459),w=n(51748),T=n(10939),I=n(15482);const{syncUsers:C}=l.zt,S="started",B="inProgress",O="completed";h.on(y.qY.BID_ADJUSTMENT,(function(e){!function(e){const t=(0,A.y)(e.cpm,e);t>=0&&(e.cpm=t)}(e)}));const R=4,U={},k={},D=[],_=(0,w.m)();function $(e){let{adUnits:t,adUnitCodes:n,callback:i,cbTimeout:l,labels:u,auctionId:m,ortb2Fragments:A,metrics:w}=e;w=(0,E.BO)(w);const $=t,F=u,G=n,L=m||(0,r.generateUUID)(),z=l,H=new Set,V=(0,v.v6)(),Q=(0,v.v6)();let J=[],K=i,X=[];const Z=(0,T.H)({startTime:e=>e.responseTimestamp,ttl:e=>null==(0,I.S9)()?null:1e3*Math.max((0,I.S9)(),e.ttl)});let ee,te,ne,re,ie=[],oe=[],se=[];function ae(){return{auctionId:L,timestamp:ee,auctionEnd:te,auctionStatus:re,adUnits:$,adUnitCodes:G,labels:F,bidderRequests:X,noBids:ie,bidsReceived:Z.toArray(),bidsRejected:J,winningBids:oe,timeout:z,metrics:w,seatNonBids:se}}function de(e){if(e?h.emit(y.qY.AUCTION_TIMEOUT,ae()):clearTimeout(ne),void 0===te){let n=[];e&&((0,r.logMessage)(`Auction ${L} timedOut`),n=X.filter((e=>!H.has(e.bidderRequestId))).flatMap((e=>e.bids)),n.length&&h.emit(y.qY.BID_TIMEOUT,n)),re=O,te=Date.now(),w.checkpoint("auctionEnd"),w.timeBetween("requestBids","auctionEnd","requestBids.total"),w.timeBetween("callBids","auctionEnd","requestBids.callBids"),V.resolve(),h.emit(y.qY.AUCTION_END,ae()),j($,(function(){try{if(null!=K){const t=Z.toArray().filter((e=>G.includes(e.adUnitCode))).reduce(Y,{});K.apply(_,[t,e,L]),K=null}}catch(e){(0,r.logError)("Error executing bidsBackHandler",null,e)}finally{n.length&&b.Ay.callTimedOutBidders(t,n,z);const e=c.$W.getConfig("userSync")??{};e.enableOverride||C(e.syncDelay)}}))}}function ce(){c.$W.resetBidder(),(0,r.logInfo)(`Bids Received for Auction with id: ${L}`,Z.toArray()),re=O,de(!1)}function le(e){H.add(e)}function ue(e){e.forEach((e=>{var t;t=e,X=X.concat(t)}));const t={},n={bidRequests:e,run:()=>{ne=setTimeout((()=>de(!0)),z),re=B,h.emit(y.qY.AUCTION_INIT,ae());const n=function(e,t){let{index:n=p.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=0,l=!1;const u=new Set,m={};function b(){i--,l&&0===i&&e()}function E(e,t,n){return m[t.requestId]=!0,function(e,t){let{index:n=p.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const i=n.getBidderRequest(e),o=n.getAdUnit(e),s=i&&i.start||e.requestTimestamp;Object.assign(e,{responseTimestamp:e.responseTimestamp||(0,r.timestamp)(),requestTimestamp:e.requestTimestamp||s,cpm:parseFloat(e.cpm)||0,bidder:e.bidder||e.bidderCode,adUnitCode:t}),null!=o?.ttlBuffer&&(e.ttlBuffer=o.ttlBuffer);e.timeToRespond=e.responseTimestamp-e.requestTimestamp}(t,e),i++,n(b)}function A(e,i){E(e,i,(e=>{const l=function(e){let{index:t=p.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};h.emit(y.qY.BID_ADJUSTMENT,e);const n=t.getAdUnit(e);e.instl=1===n?.ortb2Imp?.instl;const r=t.getBidRequest(e)?.renderer||n.renderer,i=e.mediaType,s=t.getMediaTypes(e),a=s&&s[i];var l=a&&a.renderer,u=null;!l||!l.render||!0===l.backupOnly&&e.renderer?!r||!r.render||!0===r.backupOnly&&e.renderer||(u=r):u=l;u&&(e.renderer=d.A4.install({url:u.url,config:u.options,renderNow:null==u.url}),e.renderer.setRender(u.render));const g=M(e.mediaType,s,c.$W.getConfig("mediaTypePriceGranularity")),f=(0,o.j)(e.cpm,"object"==typeof g?g:c.$W.getConfig("customPriceBucket"),c.$W.getConfig("currency.granularityMultiplier"));return e.pbLg=f.low,e.pbMg=f.med,e.pbHg=f.high,e.pbAg=f.auto,e.pbDg=f.dense,e.pbCg=f.custom,e}(i);h.emit(y.qY.BID_ACCEPTED,l),l.mediaType===f.G_?function(e,t,n){let{index:i=p.n.index}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=!0;const s=i.getMediaTypes({requestId:t.originalRequestId||t.requestId,adUnitId:t.adUnitId})?.video,d=s&&s?.context,l=s&&s?.useCacheKey,{useLocal:u,url:f,ignoreBidderCacheKey:m}=c.$W.getConfig("cache")||{};u?(0,a.Sb)(t):f&&(l||d!==g.H6)&&(!t.videoCacheKey||m?(o=!1,P(e,t,n,s)):t.vastUrl||((0,r.logError)("videoCacheKey specified but not required vastUrl for video bid"),o=!1));o&&(N(e,t),n())}(t,l,e):((0,s.l6)(l)&&(0,s.gs)(l,n.getAdUnit(l)),N(t,l),e())}))}function w(e,n,i){return E(e,n,(e=>{n.rejectionReason=i,(0,r.logWarn)(`Bid from ${n.bidder||"unknown bidder"} was rejected: ${i}`,n),h.emit(y.qY.BID_REJECTED,n),t.addBidRejected(n),e()}))}function T(){const n=this;let o=t.getBidRequests();const s=c.$W.getConfig("auctionOptions");if(u.add(n),s&&!(0,r.isEmpty)(s)){const e=s.secondaryBidders;e&&!o.every((t=>e.includes(t.bidderCode)))&&(o=o.filter((t=>!e.includes(t.bidderCode))))}l=o.every((e=>u.has(e))),n.bids.forEach((e=>{m[e.bidId]||(t.addNoBid(e),h.emit(y.qY.NO_BID,e))})),l&&0===i&&e()}return{addBidResponse:function(){function e(e,t){q.call({dispatch:A},e,t,(()=>{let n=!1;return r=>{n||(w(e,t,r),n=!0)}})())}return e.reject=w,e}(),adapterDone:function(){x(v.U9.resolve()).finally((()=>T.call(this)))}}}(ce,this);b.Ay.callBids($,e,n.addBidResponse,n.adapterDone,{request(e,n){l(U,n),l(t,e),k[e]||(k[e]={SRA:!0,origin:n}),t[e]>1&&(k[e].SRA=!1)},done(e){U[e]--,D[0]&&i(D[0])&&D.shift()}},z,le,A),Q.resolve()}};function i(e){let t=!0;const n=c.$W.getConfig("maxRequestsPerOrigin")||R;return e.bidRequests.some((e=>{let r=1;const i=void 0!==e.src&&e.src===y.RW.SRC?"s2s":e.bidderCode;return k[i]&&(!1===k[i].SRA&&(r=Math.min(e.bids.length,n)),U[k[i].origin]+r>n&&(t=!1)),!t})),t&&e.run(),t}function l(e,t){void 0===e[t]?e[t]=1:e[t]++}i(n)||((0,r.logWarn)("queueing auction due to limited endpoint capacity"),D.push(n))}return(0,I.lc)((()=>Z.refresh())),h.on(y.qY.SEAT_NON_BID,(e=>{var t;e.auctionId===L&&(t=e.seatnonbid,se=se.concat(t))})),{addBidReceived:function(e){Z.add(e)},addBidRejected:function(e){J=J.concat(e)},addNoBid:function(e){ie=ie.concat(e)},callBids:function(){re=S,ee=Date.now();const e=w.measureTime("requestBids.makeRequests",(()=>b.Ay.makeBidRequests($,ee,L,z,F,A,w)));(0,r.logInfo)(`Bids Requested for Auction with id: ${L}`,e),w.checkpoint("callBids"),e.length<1?((0,r.logWarn)("No valid bid requests returned for auction"),ce()):W.call({dispatch:ue,context:this},e)},addWinningBid:function(e){oe=oe.concat(e),b.Ay.callBidWonBidder(e.adapterCode||e.bidder,e,t),e.deferBilling||b.Ay.triggerBilling(e)},setBidTargeting:function(e){b.Ay.callSetTargetingBidder(e.adapterCode||e.bidder,e)},getWinningBids:()=>oe,getAuctionStart:()=>ee,getAuctionEnd:()=>te,getTimeout:()=>z,getAuctionId:()=>L,getAuctionStatus:()=>re,getAdUnits:()=>$,getAdUnitCodes:()=>G,getBidRequests:()=>X,getBidsReceived:()=>Z.toArray(),getNoBids:()=>ie,getNonBids:()=>se,getFPD:()=>A,getMetrics:()=>w,end:V.promise,requestsDone:Q.promise,getProperties:ae}}const q=(0,u.u2)((0,u.A_)("async",(function(e,t,n){!function(e){const t=c.$W.getConfig("maxBid");return!t||!e.cpm||t>=Number(e.cpm)}(t)?n(y.Tf.PRICE_TOO_HIGH):this.dispatch.call(null,e,t)}),"addBidResponse")),x=(0,u.A_)("sync",(e=>e),"responsesReady"),W=(0,u.A_)("sync",(function(e){this.dispatch.call(this.context,e)}),"addBidderRequests"),j=(0,u.A_)("async",(function(e,t){t&&t()}),"bidsBackCallback");function N(e,t){!function(e){let t;const n=!0===m.u.get(e.bidderCode,"allowZeroCpmBids")?e.cpm>=0:e.cpm>0;e.bidderCode&&(n||e.dealId)&&(t=function(e,t){let{index:n=p.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!t)return{};const r=n.getBidRequest(t);var i={};const o=J(t.mediaType,e);K(i,o,t,r),e&&m.u.getOwn(e,y.iD.ADSERVER_TARGETING)&&(K(i,m.u.ownSettingsFor(e),t,r),t.sendStandardTargeting=m.u.get(e,"sendStandardTargeting"));return i}(e.bidderCode,e));e.adserverTargeting=Object.assign(e.adserverTargeting||{},t)}(t),(0,E.BO)(t.metrics).timeSince("addBidResponse","addBidResponse.total"),e.addBidReceived(t),h.emit(y.qY.BID_RESPONSE,t)}const P=(0,u.A_)("async",(function(e,t,n,r){(0,a.X5)(e,t,n)}),"callPrebidCache");function M(e,t,n){if(e&&n){if(e===f.G_){const e=t?.[f.G_]?.context??"instream";if(n[`${f.G_}-${e}`])return n[`${f.G_}-${e}`]}return n[e]}}const F=function(e){let{index:t=p.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=M(e.mediaType,t.getMediaTypes(e),c.$W.getConfig("mediaTypePriceGranularity"));return"string"==typeof e.mediaType&&n?"string"==typeof n?n:"custom":c.$W.getConfig("priceGranularity")},G=e=>t=>{const n=e||F(t);return n===y.UE.AUTO?t.pbAg:n===y.UE.DENSE?t.pbDg:n===y.UE.LOW?t.pbLg:n===y.UE.MEDIUM?t.pbMg:n===y.UE.HIGH?t.pbHg:n===y.UE.CUSTOM?t.pbCg:void 0},L=()=>e=>e.creativeId?e.creativeId:"",z=()=>e=>e.meta&&e.meta.advertiserDomains&&e.meta.advertiserDomains.length>0?[e.meta.advertiserDomains].flat()[0]:"",H=()=>e=>e.meta&&(e.meta.networkId||e.meta.networkName)?e?.meta?.networkName||e?.meta?.networkId:"",V=()=>e=>{const t=e?.meta?.primaryCatId;return Array.isArray(t)?t[0]||"":t||""};function Q(e,t){return{key:e,val:"function"==typeof t?function(e,n){return t(e,n)}:function(e){return e[t]}}}function J(e,t){const n=Object.assign({},m.u.settingsFor(null));if(n[y.iD.ADSERVER_TARGETING]||(n[y.iD.ADSERVER_TARGETING]=[Q(y.xS.BIDDER,"bidderCode"),Q(y.xS.AD_ID,"adId"),Q(y.xS.PRICE_BUCKET,G()),Q(y.xS.SIZE,"size"),Q(y.xS.DEAL,"dealId"),Q(y.xS.SOURCE,"source"),Q(y.xS.FORMAT,"mediaType"),Q(y.xS.ADOMAIN,z()),Q(y.xS.ACAT,V()),Q(y.xS.DSP,H()),Q(y.xS.CRID,L())]),"video"===e){const e=n[y.iD.ADSERVER_TARGETING].slice();if(n[y.iD.ADSERVER_TARGETING]=e,[y.xS.UUID,y.xS.CACHE_ID].forEach((t=>{void 0===e.find((e=>e.key===t))&&e.push(Q(t,"videoCacheKey"))})),c.$W.getConfig("cache.url")&&(!t||!1!==m.u.get(t,"sendStandardTargeting"))){const t=(0,r.parseUrl)(c.$W.getConfig("cache.url"));void 0===e.find((e=>e.key===y.xS.CACHE_HOST))&&e.push(Q(y.xS.CACHE_HOST,(function(e){return e?.adserverTargeting?.[y.xS.CACHE_HOST]||t.hostname})))}}return n}function K(e,t,n,o){var s=t[y.iD.ADSERVER_TARGETING];return n.size=n.getSize(),(s||[]).forEach((function(s){var a=s.key,d=s.val;if(e[a]&&(0,r.logWarn)("The key: "+a+" is being overwritten"),(0,i.fp)(d))try{d=d(n,o)}catch(e){(0,r.logError)("bidmanager","ERROR",e)}(void 0===t.suppressEmptyKeys||!0!==t.suppressEmptyKeys)&&a!==y.xS.DEAL&&a!==y.xS.ACAT&&a!==y.xS.DSP&&a!==y.xS.CRID||!(0,r.isEmptyStr)(d)&&null!=d?e[a]=d:(0,r.logInfo)("suppressing empty key '"+a+"' from adserver targeting")})),e}function Y(e,t){return e[t.adUnitCode]||(e[t.adUnitCode]={bids:[]}),e[t.adUnitCode].bids.push(t),e}},63006:(e,t,n)=>{n.d(t,{n:()=>l});var r=n(10466),i=n(71186);function o(e){Object.assign(this,{getAuction(t){let{auctionId:n}=t;if(null!=n)return e().find((e=>e.getAuctionId()===n))},getAdUnit(t){let{adUnitId:n}=t;if(null!=n)return e().flatMap((e=>e.getAdUnits())).find((e=>e.adUnitId===n))},getMediaTypes(e){let{adUnitId:t,requestId:n}=e;if(null!=n){const e=this.getBidRequest({requestId:n});if(null!=e&&(null==t||e.adUnitId===t))return e.mediaTypes}else if(null!=t){const e=this.getAdUnit({adUnitId:t});if(null!=e)return e.mediaTypes}},getBidderRequest(t){let{requestId:n,bidderRequestId:r}=t;if(null!=n||null!=r){let t=e().flatMap((e=>e.getBidRequests()));return null!=r&&(t=t.filter((e=>e.bidderRequestId===r))),null==n?t[0]:t.find((e=>e.bids&&null!=e.bids.find((e=>e.bidId===n))))}},getBidRequest(t){let{requestId:n}=t;if(null!=n)return e().flatMap((e=>e.getBidRequests())).flatMap((e=>e.bids)).find((e=>e&&e.bidId===n))},getOrtb2(e){return this.getBidderRequest(e)?.ortb2||this.getAuction(e)?.getFPD()?.global?.ortb2}})}var s=n(11418),a=n(37841),d=n(10939),c=n(15482);const l=function(){const e=(0,d.H)({startTime:e=>e.end.then((()=>e.getAuctionEnd())),ttl:e=>null==(0,c.S9)()?null:e.end.then((()=>1e3*Math.max((0,c.S9)(),...e.getBidsReceived().map((e=>e.ttl)))))});(0,c.lc)((()=>e.refresh()));const t={onExpiry:e.onExpiry};function n(t){for(const n of e)if(n.getAuctionId()===t)return n}function l(){return e.toArray().flatMap((e=>e.getBidsReceived()))}return t.addWinningBid=function(e){const t=(0,a.BO)(e.metrics);t.checkpoint("bidWon"),t.timeBetween("auctionEnd","bidWon","adserver.pending"),t.timeBetween("requestBids","bidWon","adserver.e2e");const i=n(e.auctionId);i?i.addWinningBid(e):(0,r.logWarn)("Auction not found when adding winning bid")},Object.entries({getAllWinningBids:{name:"getWinningBids"},getBidsRequested:{name:"getBidRequests"},getNoBids:{},getAdUnits:{},getBidsReceived:{pre:e=>e.getAuctionStatus()===i.UZ},getAdUnitCodes:{post:r.uniques}}).forEach((n=>{let[r,{name:i=r,pre:o,post:s}]=n;const a=null==o?e=>e[i]():e=>o(e)?e[i]():[],d=null==s?e=>e:e=>e.filter(s);t[r]=()=>d(e.toArray().flatMap(a))})),t.getAllBidsForAdUnitCode=function(e){return l().filter((t=>t&&t.adUnitCode===e))},t.createAuction=function(t){const n=(0,i.mX)(t);return function(t){e.add(t)}(n),n},t.findBidByAdId=function(e){return l().find((t=>t.adId===e))},t.getStandardBidderAdServerTargeting=function(){return(0,i.HN)()[s.iD.ADSERVER_TARGETING]},t.setStatusForBids=function(e,r){const i=t.findBidByAdId(e);if(i&&(i.status=r),i&&r===s.tl.BID_TARGETING_SET){const e=n(i.auctionId);e&&e.setBidTargeting(i)}},t.getLastAuctionId=function(){const t=e.toArray();return t.length&&t[t.length-1].getAuctionId()},t.clearAllAuctions=function(){e.clear()},t.index=new o((()=>e.toArray())),t}()},15482:(e,t,n)=>{n.d(t,{S9:()=>l,cT:()=>c,lc:()=>u});var r=n(91933),i=n(10466);const o="minBidCacheTTL";let s=1,a=null;const d=[];function c(e){return e.ttl-(e.hasOwnProperty("ttlBuffer")?e.ttlBuffer:s)}function l(){return a}function u(e){d.push(e)}r.$W.getConfig("ttlBuffer",(e=>{"number"==typeof e.ttlBuffer?s=e.ttlBuffer:(0,i.logError)("Invalid value for ttlBuffer",e.ttlBuffer)})),r.$W.getConfig(o,(e=>{const t=a;a=e?.[o],a="number"==typeof a?a:null,t!==a&&d.forEach((e=>e(a)))}))},77156:(e,t,n)=>{n.d(t,{u:()=>a});var r=n(58928),i=n(10466),o=n(51748),s=n(11418);const a=new class{constructor(e,t){this.getSettings=e,this.defaultScope=t}get(e,t){let n=this.getOwn(e,t);return void 0===n&&(n=this.getOwn(null,t)),n}getOwn(e,t){return e=this.#e(e),(0,r.A)(this.getSettings(),`${e}.${t}`)}getScopes(){return Object.keys(this.getSettings()).filter((e=>e!==this.defaultScope))}settingsFor(e){return(0,i.mergeDeep)({},this.ownSettingsFor(null),this.ownSettingsFor(e))}ownSettingsFor(e){return e=this.#e(e),this.getSettings()[e]||{}}#e(e){return null==e?this.defaultScope:e}}((()=>(0,o.m)().bidderSettings||{}),s.iD.BD_SETTING_STANDARD)},63320:(e,t,n)=>{n.d(t,{O:()=>o});var r=n(10466);function i(){let{src:e="client",bidder:t="",bidId:n,transactionId:i,adUnitId:o,auctionId:s}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};var a=e;Object.assign(this,{bidderCode:t,width:0,height:0,adId:(0,r.getUniqueIdentifierStr)(),requestId:n,transactionId:i,adUnitId:o,auctionId:s,mediaType:"banner",source:a}),this.getSize=function(){return this.width+"x"+this.height}}function o(e){return new i(e)}},91933:(e,t,n)=>{n.d(t,{$W:()=>m,Ov:()=>l});var r=n(1124),i=n(10466),o=n(26665),s=n(58928),a=n(11418);const d="TRUE"===(0,i.getParameterByName)(a.M).toUpperCase(),c={},l="random",u={};u[l]=!0,u.fixed=!0;const g=l,f={LOW:"low",MEDIUM:"medium",HIGH:"high",AUTO:"auto",DENSE:"dense",CUSTOM:"custom"};function p(e){const t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1]?{priceGranularity:f.MEDIUM,customPriceBucket:{},mediaTypePriceGranularity:{},bidderSequence:g,auctionOptions:{}}:{};function n(e){return t[e]}function s(n,r){t.hasOwnProperty(n)||Object.defineProperty(e,n,{enumerable:!0}),t[n]=r}const a={publisherDomain:{set(e){null!=e&&(0,i.logWarn)("publisherDomain is deprecated and has no effect since v7 - use pageUrl instead"),s("publisherDomain",e)}},priceGranularity:{set(e){c(e)&&("string"==typeof e?s("priceGranularity",d(e)?e:f.MEDIUM):(0,o.Qd)(e)&&(s("customPriceBucket",e),s("priceGranularity",f.CUSTOM),(0,i.logMessage)("Using custom price granularity")))}},customPriceBucket:{},mediaTypePriceGranularity:{set(e){null!=e&&s("mediaTypePriceGranularity",Object.keys(e).reduce(((t,r)=>(c(e[r])?"string"==typeof e?t[r]=d(e[r])?e[r]:n("priceGranularity"):(0,o.Qd)(e)&&(t[r]=e[r],(0,i.logMessage)(`Using custom price granularity for ${r}`)):(0,i.logWarn)(`Invalid price granularity for media type: ${r}`),t)),{}))}},bidderSequence:{set(e){u[e]?s("bidderSequence",e):(0,i.logWarn)(`Invalid order: ${e}. Bidder Sequence was not set.`)}},auctionOptions:{set(e){(function(e){if(!(0,o.Qd)(e))return(0,i.logWarn)("Auction Options must be an object"),!1;for(const t of Object.keys(e)){if("secondaryBidders"!==t&&"suppressStaleRender"!==t&&"suppressExpiredRender"!==t)return(0,i.logWarn)(`Auction Options given an incorrect param: ${t}`),!1;if("secondaryBidders"===t){if(!(0,o.cy)(e[t]))return(0,i.logWarn)(`Auction Options ${t} must be of type Array`),!1;if(!e[t].every(o.O8))return(0,i.logWarn)(`Auction Options ${t} must be only string`),!1}else if(("suppressStaleRender"===t||"suppressExpiredRender"===t)&&!(0,o.Lm)(e[t]))return(0,i.logWarn)(`Auction Options ${t} must be of type boolean`),!1}return!0})(e)&&s("auctionOptions",e)}}};return Object.defineProperties(e,Object.fromEntries(Object.entries(a).map((e=>{let[r,i]=e;return[r,Object.assign({get:n.bind(null,r),set:s.bind(null,r),enumerable:t.hasOwnProperty(r),configurable:!t.hasOwnProperty(r)},i)]})))),e;function d(e){return Object.keys(f).find((t=>e===f[t]))}function c(e){if(!e)return(0,i.logError)("Prebid Error: no value passed to `setPriceGranularity()`"),!1;if("string"==typeof e)d(e)||(0,i.logWarn)("Prebid Warning: setPriceGranularity was called with invalid setting, using `medium` as default.");else if((0,o.Qd)(e)&&!(0,r.q)(e))return(0,i.logError)("Invalid custom price value passed to `setPriceGranularity()`"),!1;return!0}}const m=function(){const e=[];let t,n,r,a=null;function l(){t={};const e=p({debug:d,bidderTimeout:3e3,enableSendAllBids:true,useBidCache:false,deviceAccess:true,disableAjaxTimeout:false,maxNestedIframes:10,maxBid:5e3,userSync:{topics:c}});n&&v(Object.keys(n).reduce(((t,r)=>(n[r]!==e[r]&&(t[r]=e[r]||{}),t)),{})),n=e,r={}}function u(){if(a&&r&&(0,o.Qd)(r[a])){const e=r[a],t=new Set([...Object.keys(n),...Object.keys(e)]),s={};for(const r of t){const t=n[r],a=e[r];s[r]=void 0===a?t:void 0===t?a:(0,o.Qd)(a)?(0,i.mergeDeep)({},t,a):a}return s}return{...n}}const[g,f]=[u,function(){const e=u();return Object.defineProperty(e,"ortb2",{get:function(){throw new Error("invalid access to 'orbt2' config - use request parameters instead")}}),e}].map((e=>function(){if(arguments.length<=1&&"function"!=typeof(arguments.length<=0?void 0:arguments[0])){const t=arguments.length<=0?void 0:arguments[0];return t?(0,s.A)(e(),t):u()}return y(...arguments)})),[m,h]=[f,g].map((e=>function(){let t=e(...arguments);return t&&"object"==typeof t&&(t=(0,o.Go)(t)),t}));function b(e){if(!(0,o.Qd)(e))return void(0,i.logError)("setConfig options must be an object");const r=Object.keys(e),s={};r.forEach((r=>{let a=e[r];(0,o.Qd)(t[r])&&(0,o.Qd)(a)&&(a=Object.assign({},t[r],a));try{s[r]=n[r]=a}catch(e){(0,i.logWarn)(`Cannot set config for property ${r} : `,e)}})),v(s)}function y(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=n;if("string"!=typeof t&&(o=t,t="*",r=n||{}),"function"!=typeof o)return void(0,i.logError)("listener must be a function");const s={topic:t,callback:o};return e.push(s),r.init&&o("*"===t?f():{[t]:f(t)}),function(){e.splice(e.indexOf(s),1)}}function v(t){const n=Object.keys(t);e.filter((e=>n.includes(e.topic))).forEach((e=>{e.callback({[e.topic]:t[e.topic]})})),e.filter((e=>"*"===e.topic)).forEach((e=>e.callback(t)))}function E(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];try{!function(e){if(!(0,o.Qd)(e))throw new Error("setBidderConfig bidder options must be an object");if(!Array.isArray(e.bidders)||!e.bidders.length)throw new Error("setBidderConfig bidder options must contain a bidders list with at least 1 bidder");if(!(0,o.Qd)(e.config))throw new Error("setBidderConfig bidder options must contain a config object")}(e),e.bidders.forEach((n=>{r[n]||(r[n]=p({},!1)),Object.keys(e.config).forEach((s=>{const a=e.config[s],d=r[n][s];if((0,o.Qd)(a)&&(null==d||(0,o.Qd)(d))){const e=t?i.mergeDeep:Object.assign;r[n][s]=e({},d||{},a)}else r[n][s]=a}))}))}catch(e){(0,i.logError)(e)}}function A(e,t){a=e;try{return t()}finally{w()}}function w(){a=null}return l(),{getCurrentBidder:function(){return a},resetBidder:w,getConfig:f,getAnyConfig:g,readConfig:m,readAnyConfig:h,setConfig:b,mergeConfig:function(e){if(!(0,o.Qd)(e))return void(0,i.logError)("mergeConfig input must be an object");const t=(0,i.mergeDeep)(u(),e);return b({...t}),t},setDefaults:function(e){(0,o.Qd)(t)?(Object.assign(t,e),Object.assign(n,e)):(0,i.logError)("defaults must be an object")},resetConfig:l,runWithBidder:A,callbackWithBidder:function(e){return function(t){return function(){if("function"==typeof t){for(var n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return A(e,t.bind(this,...r))}(0,i.logWarn)("config.callbackWithBidder callback is not a function")}}},setBidderConfig:E,getBidderConfig:function(){return r},mergeBidderConfig:function(e){return E(e,!0)}}}()},41385:(e,t,n)=>{n.d(t,{B1:()=>a,SL:()=>v,ad:()=>m,et:()=>h,mW:()=>f,o2:()=>b,t6:()=>p});var r=n(10466),i=n(26665),o=n(13064),s=n(91933);const a=Object.freeze({}),d="gdpr",c="gpp",l="usp",u="coppa";class g{#t;#n;#r;#i;#o=!0;#s;constructor(){this.reset()}#a(e){this.#i=!0,this.#n=e,this.#r.resolve(e)}reset(){this.#r=(0,o.v6)(),this.#t=!1,this.#n=null,this.#i=!1,this.generatedTime=null}enable(){this.#t=!0}get enabled(){return this.#t}get ready(){return this.#i}get promise(){return this.#i?o.U9.resolve(this.#n):(this.#t||this.#a(null),this.#r.promise)}setConsentData(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(0,r.timestamp)();this.generatedTime=t,this.#o=!0,this.#a(e)}getConsentData(){return this.#n}get hash(){return this.#o&&(this.#s=(0,r.cyrb53Hash)(JSON.stringify(this.#n&&this.hashFields?this.hashFields.map((e=>this.#n[e])):this.#n)),this.#o=!1),this.#s}}const f=new class extends g{hashFields=["gdprApplies","consentString"];getConsentMeta(){const e=this.getConsentData();if(e&&e.vendorData&&this.generatedTime)return{gdprApplies:e.gdprApplies,consentStringSize:(0,i.O8)(e.vendorData.tcString)?e.vendorData.tcString.length:0,generatedAt:this.generatedTime,apiVersion:e.apiVersion}}},p=new class extends g{getConsentMeta(){if(this.getConsentData()&&this.generatedTime)return{generatedAt:this.generatedTime}}},m=new class extends g{hashFields=["applicableSections","gppString"];getConsentMeta(){if(this.getConsentData()&&this.generatedTime)return{generatedAt:this.generatedTime}}},h=(()=>{function e(){return!!s.$W.getConfig("coppa")}return{getCoppa:e,getConsentData:e,getConsentMeta:e,reset(){},get promise(){return o.U9.resolve(e())},get hash(){return e()?"1":"0"}}})(),b=function(){const e={},t={},n={};return{register(r,i,o){o&&((e[i]=e[i]||{})[r]=o,t.hasOwnProperty(i)?t[i]!==o&&(t[i]=n):t[i]=o)},get(r){const i={modules:e[r]||{}};return t.hasOwnProperty(r)&&t[r]!==n&&(i.gvlid=t[r]),i}}}(),y={[d]:f,[l]:p,[c]:m,[u]:h};const v=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:y;const t=Object.entries(e);return Object.assign({get promise(){return o.U9.all(t.map((e=>{let[t,n]=e;return n.promise.then((e=>[t,e]))}))).then((e=>Object.fromEntries(e)))},get hash(){return(0,r.cyrb53Hash)(t.map((e=>{let[t,n]=e;return n.hash})).join(":"))}},Object.fromEntries(["getConsentData","getConsentMeta","reset"].map((e=>{return[e,(n=e,function(){return Object.fromEntries(t.map((e=>{let[t,r]=e;return[t,r[n]()]})))})];var n}))))}()},11418:(e,t,n)=>{n.d(t,{IY:()=>A,M:()=>i,RW:()=>f,Tf:()=>m,UE:()=>c,XQ:()=>o,Zh:()=>u,_B:()=>v,as:()=>a,cA:()=>d,h0:()=>h,iD:()=>r,jO:()=>b,nl:()=>E,oA:()=>y,qY:()=>s,tl:()=>p,x5:()=>g,xS:()=>l});const r={PL_CODE:"code",PL_SIZE:"sizes",PL_BIDS:"bids",BD_BIDDER:"bidder",BD_ID:"paramsd",BD_PL_ID:"placementId",ADSERVER_TARGETING:"adserverTargeting",BD_SETTING_STANDARD:"standard"},i="pbjs_debug",o={GOOD:1},s={AUCTION_INIT:"auctionInit",AUCTION_TIMEOUT:"auctionTimeout",AUCTION_END:"auctionEnd",BID_ADJUSTMENT:"bidAdjustment",BID_TIMEOUT:"bidTimeout",BID_REQUESTED:"bidRequested",BID_RESPONSE:"bidResponse",BID_REJECTED:"bidRejected",NO_BID:"noBid",SEAT_NON_BID:"seatNonBid",BID_WON:"bidWon",BIDDER_DONE:"bidderDone",BIDDER_ERROR:"bidderError",SET_TARGETING:"setTargeting",BEFORE_REQUEST_BIDS:"beforeRequestBids",BEFORE_BIDDER_HTTP:"beforeBidderHttp",REQUEST_BIDS:"requestBids",ADD_AD_UNITS:"addAdUnits",AD_RENDER_FAILED:"adRenderFailed",AD_RENDER_SUCCEEDED:"adRenderSucceeded",TCF2_ENFORCEMENT:"tcf2Enforcement",AUCTION_DEBUG:"auctionDebug",BID_VIEWABLE:"bidViewable",STALE_RENDER:"staleRender",EXPIRED_RENDER:"expiredRender",BILLABLE_EVENT:"billableEvent",BID_ACCEPTED:"bidAccepted",RUN_PAAPI_AUCTION:"paapiRunAuction",PBS_ANALYTICS:"pbsAnalytics",PAAPI_BID:"paapiBid",PAAPI_NO_BID:"paapiNoBid",PAAPI_ERROR:"paapiError",BEFORE_PBS_HTTP:"beforePBSHttp",BROWSI_INIT:"browsiInit",BROWSI_DATA:"browsiData"},a={PREVENT_WRITING_ON_MAIN_DOCUMENT:"preventWritingOnMainDocument",NO_AD:"noAd",EXCEPTION:"exception",CANNOT_FIND_AD:"cannotFindAd",MISSING_DOC_OR_ADID:"missingDocOrAdid"},d={bidWon:"adUnitCode"},c={LOW:"low",MEDIUM:"medium",HIGH:"high",AUTO:"auto",DENSE:"dense",CUSTOM:"custom"},l={BIDDER:"hb_bidder",AD_ID:"hb_adid",PRICE_BUCKET:"hb_pb",SIZE:"hb_size",DEAL:"hb_deal",SOURCE:"hb_source",FORMAT:"hb_format",UUID:"hb_uuid",CACHE_ID:"hb_cache_id",CACHE_HOST:"hb_cache_host",ADOMAIN:"hb_adomain",ACAT:"hb_acat",CRID:"hb_crid",DSP:"hb_dsp"},u={BIDDER:"hb_bidder",AD_ID:"hb_adid",PRICE_BUCKET:"hb_pb",SIZE:"hb_size",DEAL:"hb_deal",FORMAT:"hb_format",UUID:"hb_uuid",CACHE_HOST:"hb_cache_host"},g={title:"hb_native_title",body:"hb_native_body",body2:"hb_native_body2",privacyLink:"hb_native_privacy",privacyIcon:"hb_native_privicon",sponsoredBy:"hb_native_brand",image:"hb_native_image",icon:"hb_native_icon",clickUrl:"hb_native_linkurl",displayUrl:"hb_native_displayurl",cta:"hb_native_cta",rating:"hb_native_rating",address:"hb_native_address",downloads:"hb_native_downloads",likes:"hb_native_likes",phone:"hb_native_phone",price:"hb_native_price",salePrice:"hb_native_saleprice",rendererUrl:"hb_renderer_url",adTemplate:"hb_adTemplate"},f={SRC:"s2s",DEFAULT_ENDPOINT:"https://prebid.adnxs.com/pbs/v1/openrtb2/auction",SYNCED_BIDDERS_KEY:"pbjsSyncs"},p={BID_TARGETING_SET:"targetingSet",RENDERED:"rendered",BID_REJECTED:"bidRejected"},m={INVALID:"Bid has missing or invalid properties",INVALID_REQUEST_ID:"Invalid request ID",BIDDER_DISALLOWED:"Bidder code is not allowed by allowedAlternateBidderCodes / allowUnknownBidderCodes",FLOOR_NOT_MET:"Bid does not meet price floor",CANNOT_CONVERT_CURRENCY:"Unable to convert currency",DSA_REQUIRED:"Bid does not provide required DSA transparency info",DSA_MISMATCH:"Bid indicates inappropriate DSA rendering method",PRICE_TOO_HIGH:"Bid price exceeds maximum value"},h={body:"desc",body2:"desc2",sponsoredBy:"sponsored",cta:"ctatext",rating:"rating",address:"address",downloads:"downloads",likes:"likes",phone:"phone",price:"price",salePrice:"saleprice",displayUrl:"displayurl"},b={sponsored:1,desc:2,rating:3,likes:4,downloads:5,price:6,saleprice:7,phone:8,address:9,desc2:10,displayurl:11,ctatext:12},y={ICON:1,MAIN:3},v=["privacyIcon","clickUrl","adTemplate","rendererUrl","type"],E={REQUEST:"Prebid Request",RESPONSE:"Prebid Response",NATIVE:"Prebid Native",EVENT:"Prebid Event"},A="__pb_locator__"},1124:(e,t,n)=>{n.d(t,{j:()=>u,q:()=>f});var r=n(10466),i=n(91933);const o=2,s={buckets:[{max:5,increment:.5}]},a={buckets:[{max:20,increment:.1}]},d={buckets:[{max:20,increment:.01}]},c={buckets:[{max:3,increment:.01},{max:8,increment:.05},{max:20,increment:.5}]},l={buckets:[{max:5,increment:.05},{max:10,increment:.1},{max:20,increment:.5}]};function u(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,r=parseFloat(e);return isNaN(r)&&(r=""),{low:""===r?"":g(e,s,n),med:""===r?"":g(e,a,n),high:""===r?"":g(e,d,n),auto:""===r?"":g(e,l,n),dense:""===r?"":g(e,c,n),custom:""===r?"":g(e,t,n)}}function g(e,t,n){let s="";if(!f(t))return s;const a=t.buckets.reduce(((e,t)=>e.max>t.max?e:t),{max:0});let d=0;const c=t.buckets.find((t=>{if(e>a.max*n){let e=t.precision;void 0===e&&(e=o),s=(t.max*n).toFixed(e)}else{if(e<=t.max*n&&e>=d*n)return t.min=d,t;d=t.max}}));return c&&(s=function(e,t,n){const s=void 0!==t.precision?t.precision:o,a=t.increment*n,d=t.min*n;let c=Math.floor;const l=i.$W.getConfig("cpmRoundingFunction");"function"==typeof l&&(c=l);const u=Math.pow(10,s+2),g=(e*u-d*u)/(a*u);let f,p;try{f=c(g)*a+d}catch(e){p=!0}(p||"number"!=typeof f)&&((0,r.logWarn)("Invalid rounding function passed in config"),f=Math.floor(g)*a+d);return f=Number(f.toFixed(10)),f.toFixed(s)}(e,c,n)),s}function f(e){if((0,r.isEmpty)(e)||!e.buckets||!Array.isArray(e.buckets))return!1;let t=!0;return e.buckets.forEach((e=>{e.max&&e.increment||(t=!1)})),t}},45144:(e,t,n)=>{n.d(t,{HH:()=>c,kj:()=>d,xh:()=>a});var r=n(13064),i=n(10466),o=n(24830),s=n(32592);const a=3,d=(0,s.A_)("sync",(function(e){return o.G})),c=function(){const e={};return function(t){const n=d(t);return e.hasOwnProperty(n)||(e[n]=new r.U9((e=>{const t=(0,i.createInvisibleIframe)();t.srcdoc=`<script>${n}<\/script>`,t.onload=()=>e(t.contentWindow.render),document.body.appendChild(t)}))),e[n]}}()},87067:(e,t,n)=>{n.d(t,{L6:()=>h,ey:()=>u});var r=n(91933),i=n(32592),o=n(51748),s=n(10466),a=n(63320),d=n(75049),c=n(13064),l=n(70736);const u="__pbjs_debugging__";function g(){return(0,o.m)().installedModules.includes("debugging")}function f(e){return new c.U9((t=>{(0,d.R)(e,l.tp,"debugging",t)}))}function p(){let{alreadyInstalled:e=g,script:t=f}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=null;return function(){return null==n&&(n=new c.U9(((n,d)=>{setTimeout((()=>{if(e())n();else{const e="https://cdn.jsdelivr.net/npm/prebid.js@latest/dist/chunks/debugging-standalone.js";(0,s.logMessage)(`Debugging module not installed, loading it from "${e}"...`),(0,o.m)()._installDebugging=!0,t(e).then((()=>{(0,o.m)()._installDebugging({DEBUG_KEY:u,hook:i.A_,config:r.$W,createBid:a.O,logger:(0,s.prefixLog)("DEBUG:")})})).then(n,d)}}))}))),n}}const m=function(){let{load:e=p(),hook:t=(0,i.Yn)("requestBids")}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=null,r=!1;function o(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),i=1;i<t;i++)r[i-1]=arguments[i];return(n||c.U9.resolve()).then((()=>e.apply(this,r)))}function s(){t.getHooks({hook:o}).remove(),r=!1}return{enable:function(){r||(n=e(),t.before(o,99),r=!0)},disable:s,reset:function(){n=null,s()}}}();m.reset;function h(){let e=null;try{e=window.sessionStorage}catch(e){}if(null!==e){const t=m;let n=null;try{n=e.getItem(u)}catch(e){}null!==n&&t.enable()}}r.$W.getConfig("debugging",(function(e){let{debugging:t}=e;t?.enabled?m.enable():m.disable()}))},72122:(e,t,n)=>{n.d(t,{$T:()=>a,Ni:()=>r,OA:()=>o,RO:()=>s,fR:()=>i});const r=1,i=2,o=1,s=500;function a(e){return(e??[]).reduce(((e,t)=>{let{event:n,method:r,url:i}=t;const o=e[n]=e[n]??{};return(o[r]=o[r]??[]).push(i),e}),{})}},18014:(e,t,n)=>{n.r(t),n.d(t,{addEvents:()=>y,clearEvents:()=>E,emit:()=>b,get:()=>m,getEvents:()=>h,has:()=>v,off:()=>p,on:()=>f});var r=n(10466),i=n(11418),o=n(10939),s=n(91933);const a="eventHistoryTTL";let d=null;const c=(0,o.H)({monotonic:!0,ttl:()=>d});s.$W.getConfig(a,(e=>{const t=d,n=e?.[a];d="number"==typeof n?1e3*n:null,t!==d&&c.refresh()}));let l=Object.values(i.qY);const u=i.cA,g=function(){const e={};function t(e){return l.includes(e)}return{has:t,on:function(n,i,o){if(t(n)){const t=e[n]||{que:[]};o?(t[o]=t[o]||{que:[]},t[o].que.push(i)):t.que.push(i),e[n]=t}else r.logError("Wrong event name : "+n+" Valid event names :"+l)},emit:function(t){for(var n=arguments.length,i=new Array(n>1?n-1:0),o=1;o<n;o++)i[o-1]=arguments[o];!function(t,n){r.logMessage("Emitting event for: "+t);const i=n[0]||{},o=i[u[t]],s=e[t]||{que:[]};var a=Object.keys(s);const d=[];c.add({eventType:t,args:i,id:o,elapsedTime:r.getPerformanceNow()}),o&&a.includes(o)&&d.push(...s[o].que),d.push(...s.que),(d||[]).forEach((function(e){if(e)try{e(...n)}catch(e){r.logError("Error executing handler:","events.js",e,t)}}))}(t,i)},off:function(t,n,i){const o=e[t];r.isEmpty(o)||r.isEmpty(o.que)&&r.isEmpty(o[i])||i&&(r.isEmpty(o[i])||r.isEmpty(o[i].que))||(i?(o[i].que||[]).forEach((function(e){const t=o[i].que;e===n&&t.splice(t.indexOf(e),1)})):(o.que||[]).forEach((function(e){const t=o.que;e===n&&t.splice(t.indexOf(e),1)})),e[t]=o)},get:function(){return e},addEvents:function(e){l=l.concat(e)},getEvents:function(){return c.toArray().map((e=>Object.assign({},e)))}}}();r._setEventEmitter(g.emit.bind(g));const{on:f,off:p,get:m,getEvents:h,emit:b,addEvents:y,has:v}=g;function E(){c.clear()}},16169:(e,t,n)=>{n.d(t,{w:()=>A});var r=n(32592),i=n(10867),o=n(91780),s=n(10466),a=n(83435),d=n(58928),c=n(26665),l=n(91933),u=n(42217),g=n(13064),f=n(51833),p=n(53202),m=n(77610),h=n(45808),b=n(70736),y=n(30183);const v={getRefererInfo:i.EN,findRootDomain:o.S,getWindowTop:s.getWindowTop,getWindowSelf:s.getWindowSelf,getHighEntropySUA:u.FD,getLowEntropySUA:u.zO,getDocument:s.getDocument},E=(0,f.i8)("FPD"),A=(0,r.A_)("sync",(e=>{const t=[e,T().catch((()=>null)),g.U9.resolve("cookieDeprecationLabel"in navigator&&(0,p.io)(h.Ue,(0,m.s)(b.tp,"cdep"))&&navigator.cookieDeprecationLabel.getValue()).catch((()=>null))];return g.U9.all(t).then((e=>{let[t,n,r]=e;const i=v.getRefererInfo();if(Object.entries(C).forEach((e=>{let[n,r]=e;const o=r(t,i);o&&Object.keys(o).length>0&&(t[n]=(0,s.mergeDeep)({},o,t[n]))})),n&&(0,a.J)(t,"device.sua",Object.assign({},n,t.device.sua)),r){const e={cdep:r};(0,a.J)(t,"device.ext",Object.assign({},e,t.device.ext))}const o=v.getDocument().documentElement.lang;if(o&&((0,a.J)(t,"site.ext.data.documentLang",o),!(0,d.A)(t,"site.content.language"))){const e=o.split("-")[0];(0,a.J)(t,"site.content.language",e)}t=E(t);for(const e of f.Dy)if((0,f.O$)(t,e)){t[e]=(0,s.mergeDeep)({},S(t,i),t[e]);break}return t}))}));function w(e){try{return e(v.getWindowTop())}catch(t){return e(v.getWindowSelf())}}function T(){const e=l.$W.getConfig("firstPartyData.uaHints");return Array.isArray(e)&&0!==e.length?v.getHighEntropySUA(e):g.U9.resolve(v.getLowEntropySUA())}function I(e){return(0,c.SH)(e,Object.keys(e))}const C={site(e,t){if(!f.Dy.filter((e=>"site"!==e)).some(f.O$.bind(null,e)))return I({page:t.page,ref:t.ref})},device:()=>w((e=>{const t=(0,s.getWinDimensions)().screen.width,n=(0,s.getWinDimensions)().screen.height,{width:r,height:i}=(0,y.M)(),o={w:t,h:n,dnt:(0,s.getDNT)()?1:0,ua:e.navigator.userAgent,language:e.navigator.language.split("-").shift(),ext:{vpw:r,vph:i}};return e.navigator?.webdriver&&(0,a.J)(o,"ext.webdriver",!0),o})),regs(){const e={};w((e=>e.navigator.globalPrivacyControl))&&(0,a.J)(e,"ext.gpc","1");const t=l.$W.getConfig("coppa");return"boolean"==typeof t&&(e.coppa=t?1:0),e}};function S(e,t){const n=(0,i.gR)(t.page,{noLeadingWww:!0}),r=w((e=>e.document.querySelector("meta[name='keywords']")))?.content?.replace?.(/\s/g,"");return I({domain:n,keywords:r,publisher:I({domain:v.findRootDomain(n)})})}},40069:(e,t,n)=>{n.d(t,{mZ:()=>o});var r=n(10466),i=n(83435);const o=(0,n(32592).A_)("sync",(function(e){return[s,a].forEach((t=>function(e,t){t.global=e(t.global,"global FPD"),Object.entries(t.bidder).forEach((n=>{let[r,i]=n;t.bidder[r]=e(i,`bidder '${r}' FPD`)}))}(t,e))),e}));function s(e,t){if(!e)return e;const n=[],o=[...(e?.user?.eids??[]).map((e=>[0,e])),...(e?.user?.ext?.eids??[]).map((e=>[1,e]))].filter((e=>{let[i,o]=e;return n.findIndex((e=>{let[t,n]=e;return i!==t&&(0,r.deepEqual)(n,o)}))>-1?((0,r.logWarn)(`Found duplicate EID in user.eids and user.ext.eids (${t})`,o),!1):(n.push([i,o]),!0)}));return o.length>0&&(0,i.J)(e,"user.ext.eids",o.map((e=>{let[t,n]=e;return n}))),delete e?.user?.eids,e}function a(e,t){if(!e)return e;const n=e.source?.schain,o=e.source?.ext?.schain;return null==n||null==o||(0,r.deepEqual)(n,o)||(0,r.logWarn)(`Conflicting source.schain and source.ext.schain (${t}), preferring source.schain`,{"source.schain":n,"source.ext.schain":o}),null!=(n??o)&&(0,i.J)(e,"source.ext.schain",n??o),delete e.source?.schain,e}},51833:(e,t,n)=>{n.d(t,{Dy:()=>i,O$:()=>s,i8:()=>o});var r=n(10466);const i=["dooh","app","site"];function o(e){return function(t){return i.reduce(((n,i)=>(s(t,i)&&(null!=n?((0,r.logWarn)(`${e} specifies both '${n}' and '${i}'; dropping the latter.`),delete t[i]):n=i),n)),null),t}}function s(e,t){return null!=e[t]&&Object.keys(e[t]).length>0}},91780:(e,t,n)=>{n.d(t,{S:()=>o});var r=n(10466);const i=(0,n(61443).CK)("fpdEnrichment"),o=(0,r.memoize)((function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.location.host;if(!i.cookiesAreEnabled())return e;const t=e.split(".");if(2===t.length)return e;let n,o,s=-2;const a=`_rdc${Date.now()}`,d="writeable";do{n=t.slice(s).join(".");const e=new Date((0,r.timestamp)()+1e4).toUTCString();i.setCookie(a,d,e,"Lax",n,void 0);i.getCookie(a,void 0)===d?(o=!1,i.setCookie(a,"","Thu, 01 Jan 1970 00:00:01 GMT",void 0,n,void 0)):(s+=-1,o=Math.abs(s)<=t.length)}while(o);return n}))},42217:(e,t,n)=>{n.d(t,{CP:()=>u,FD:()=>l,zO:()=>c});var r=n(10466),i=n(26665),o=n(13064);const s=2,a=["architecture","bitness","model","platformVersion","fullVersionList"],d=["brands","mobile","platform"],c=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.navigator?.userAgentData;const t=e&&d.some((t=>void 0!==e[t]))?Object.freeze(g(1,e)):null;return function(){return t}}(),l=u();function u(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.navigator?.userAgentData;const t={},n=new WeakMap;return function(){let i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a;if(!n.has(i)){const e=Array.from(i);e.sort(),n.set(i,e.join("|"))}const d=n.get(i);if(!t.hasOwnProperty(d))try{t[d]=e.getHighEntropyValues(i).then((e=>(0,r.isEmpty)(e)?null:Object.freeze(g(s,e)))).catch((()=>null))}catch(e){t[d]=o.U9.resolve(null)}return t[d]}}function g(e,t){function n(e,t){const n={brand:e};return(0,i.O8)(t)&&!(0,r.isEmptyStr)(t)&&(n.version=t.split(".")),n}const o={source:e};return t.platform&&(o.platform=n(t.platform,t.platformVersion)),(t.fullVersionList||t.brands)&&(o.browsers=(t.fullVersionList||t.brands).map((e=>{let{brand:t,version:r}=e;return n(t,r)}))),void 0!==t.mobile&&(o.mobile=t.mobile?1:0),["model","bitness","architecture"].forEach((e=>{const n=t[e];(0,i.O8)(n)&&(o[e]=n)})),o}},32592:(e,t,n)=>{n.d(t,{A_:()=>s,Gc:()=>d,Y6:()=>p,Yn:()=>c,bz:()=>f,pT:()=>l,u2:()=>m,xG:()=>g});var r=n(35481),i=n.n(r),o=n(13064);const s=i()({ready:i().SYNC|i().ASYNC|i().QUEUE}),a=(0,o.v6)();s.ready=(()=>{const e=s.ready;return function(){try{return e.apply(s)}finally{a.resolve()}}})();const d=a.promise,c=s.get;function l(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:15;0===e.getHooks({hook:t}).length&&e.before(t,n)}const u={};function g(e,t){let{postInstallAllowed:n=!1}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};s("async",(function(r){r.forEach((e=>t(...e))),n&&(u[e]=t)}),e)([])}function f(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];const i=u[e];if(i)return i(...n);c(e).before(((e,t)=>{t.push(n),e(t)}))}function p(e,t){return Object.defineProperties(t,Object.fromEntries(["before","after","getHooks","removeAll"].map((t=>[t,{get:()=>e[t]}])))),t}function m(e){return p(e,(function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return n.push((function(){})),e.apply(this,n)}))}},59794:(e,t,n)=>{n.d(t,{D4:()=>o,GE:()=>a,G_:()=>i,LM:()=>s,s6:()=>r});const r="native",i="video",o="banner",s="adpod",a=[r,i,o]},80356:(e,t,n)=>{n.d(t,{Bm:()=>v,Ex:()=>q,Gg:()=>T,IX:()=>S,Xj:()=>D,gs:()=>A,l6:()=>m,mT:()=>u,nk:()=>b,rn:()=>R,vO:()=>E,yl:()=>B});var r=n(10466),i=n(26665),o=n(63006),s=n(11418),a=n(59794),d=n(71852),c=n(45144),l=n(72122);const u=[],g={image:{ortb:{ver:"1.2",assets:[{required:1,id:1,img:{type:3,wmin:100,hmin:100}},{required:1,id:2,title:{len:140}},{required:1,id:3,data:{type:1}},{required:0,id:4,data:{type:2}},{required:0,id:5,img:{type:1,wmin:20,hmin:20}}]},image:{required:!0},title:{required:!0},sponsoredBy:{required:!0},clickUrl:{required:!0},body:{required:!1},icon:{required:!1}}},f=x(s.h0),p=x(s.jO);function m(e){return null!=e.native&&"object"==typeof e.native}function h(e){if(e&&e.type&&function(e){if(!e||!Object.keys(g).includes(e))return(0,r.logError)(`${e} nativeParam is not supported`),!1;return!0}(e.type)&&(e=g[e.type]),!e||!e.ortb||y(e.ortb))return e}function b(e){e.forEach((e=>{const t=e.nativeParams||e?.mediaTypes?.native;t&&(e.nativeParams=h(t)),e.nativeParams&&(e.nativeOrtbRequest=e.nativeParams.ortb||R(e.nativeParams))}))}function y(e){const t=e.assets;if(!Array.isArray(t)||0===t.length)return(0,r.logError)("assets in mediaTypes.native.ortb is not an array, or it's empty. Assets: ",t),!1;const n=t.map((e=>e.id));return t.length!==new Set(n).size||n.some((e=>e!==parseInt(e,10)))?((0,r.logError)("each asset object must have 'id' property, it must be unique and it must be an integer"),!1):e.hasOwnProperty("eventtrackers")&&!Array.isArray(e.eventtrackers)?((0,r.logError)("ortb.eventtrackers is not an array. Eventtrackers: ",e.eventtrackers),!1):t.every((e=>function(e){if(!(0,i.Qd)(e))return(0,r.logError)("asset must be an object. Provided asset: ",e),!1;if(e.img){if(!(0,i.Et)(e.img.w)&&!(0,i.Et)(e.img.wmin))return(0,r.logError)("for img asset there must be 'w' or 'wmin' property"),!1;if(!(0,i.Et)(e.img.h)&&!(0,i.Et)(e.img.hmin))return(0,r.logError)("for img asset there must be 'h' or 'hmin' property"),!1}else if(e.title){if(!(0,i.Et)(e.title.len))return(0,r.logError)("for title asset there must be 'len' property defined"),!1}else if(e.data){if(!(0,i.Et)(e.data.type))return(0,r.logError)("for data asset 'type' property must be a number"),!1}else if(e.video&&!(Array.isArray(e.video.mimes)&&Array.isArray(e.video.protocols)&&(0,i.Et)(e.video.minduration)&&(0,i.Et)(e.video.maxduration)))return(0,r.logError)("video asset is not properly configured"),!1;return!0}(e)))}function v(e){let{index:t=o.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=t.getAdUnit(e);if(!n)return!1;const i=n.nativeOrtbRequest;return function(e,t){if(!e?.link?.url)return(0,r.logError)("native response doesn't have 'link' property. Ortb response: ",e),!1;const n=t.assets.filter((e=>1===e.required)).map((e=>e.id)),i=e.assets.map((e=>e.id)),o=n.every((e=>i.includes(e)));o||(0,r.logError)(`didn't receive a bid with all required assets. Required ids: ${n}, but received ids in response: ${i}`);return o}(e.native?.ortb||$(e.native,i),i)}function E(e,t){const n=t.native.ortb||_(t.native);return"click"===e.action?function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,{fetchURL:n=r.triggerPixel}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(t){const r=(e.assets||[]).filter((e=>e.link)).reduce(((e,t)=>(e[t.id]=t.link,e)),{}),i=e.link?.clicktrackers||[],o=r[t];let s=i;o&&(s=o.clicktrackers||[]),s.forEach((e=>n(e)))}else(e.link?.clicktrackers||[]).forEach((e=>n(e)))}(n,e?.assetId):function(e){let{runMarkup:t=(e=>(0,r.insertHtmlIntoIframe)(e)),fetchURL:n=r.triggerPixel}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{[l.Ni]:i=[],[l.fR]:o=[]}=(0,l.$T)(e.eventtrackers||[])[l.OA]||{};e.imptrackers&&(i=i.concat(e.imptrackers));i.forEach((e=>n(e))),o=o.map((e=>`<script async src="${e}"><\/script>`)),e.jstracker&&(o=o.concat([e.jstracker]));o.length&&t(o.join("\n"))}(n),e.action}function A(e,t){const n=t?.nativeOrtbRequest,r=e.native?.ortb;if(n&&r){const t=q(r,n);Object.assign(e.native,t)}["rendererUrl","adTemplate"].forEach((n=>{const r=t?.nativeParams?.[n];r&&(e.native[n]=O(r))}))}function w(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const r=[];return Object.entries(e).filter((e=>{let[r,i]=e;return i&&(!1===n&&"ext"===r||null==t||t.includes(r))})).forEach((e=>{let[i,o]=e;!1===n&&"ext"===i?r.push(...w(o,t,!0)):(n||s.x5.hasOwnProperty(i))&&r.push({key:i,value:O(o)})})),r}function T(e,t,n){const r={...(0,i.SH)(e.native,["rendererUrl","adTemplate"]),assets:w(e.native,n),nativeKeys:s.x5};return e.native.ortb?r.ortb=e.native.ortb:t.mediaTypes?.native?.ortb&&(r.ortb=$(e.native,t.nativeOrtbRequest)),r}function I(e,t,n){let{index:r=o.n.index}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const i={message:"assetResponse",adId:e.adId};let s=(0,d.vd)(t).native;return s?(i.native=Object.assign({},s),i.renderer=(0,c.kj)(t),i.rendererVersion=c.xh,null!=n&&(s.assets=s.assets.filter((e=>{let{key:t}=e;return n.includes(t)})))):s=T(t,r.getAdUnit(t),n),Object.assign(i,s)}const C=Object.fromEntries(Object.entries(s.x5).map((e=>{let[t,n]=e;return[n,t]})));function S(e,t){const n=e.assets.map((e=>C[e]));return I(e,t,n)}function B(e,t){return I(e,t,null)}function O(e){return e?.url||e}function R(e){if(!e&&!(0,i.Qd)(e))return void(0,r.logError)("Native assets object is empty or not an object: ",e);const t={ver:"1.2",assets:[]};for(const n in e){if(s._B.includes(n))continue;if(!s.x5.hasOwnProperty(n)){(0,r.logError)(`Unrecognized native asset code: ${n}. Asset will be ignored.`);continue}if("privacyLink"===n){t.privacy=1;continue}const o=e[n];let a=0;o.required&&(0,i.Lm)(o.required)&&(a=Number(o.required));const d={id:t.assets.length,required:a};if(n in s.h0)d.data={type:s.jO[s.h0[n]]},o.len&&(d.data.len=o.len);else if("icon"===n||"image"===n){if(d.img={type:"icon"===n?s.oA.ICON:s.oA.MAIN},o.aspect_ratios)if((0,i.cy)(o.aspect_ratios))if(o.aspect_ratios.length){const{min_width:e,min_height:t}=o.aspect_ratios[0];(0,i.Fq)(e)&&(0,i.Fq)(t)?(d.img.wmin=e,d.img.hmin=t):(0,r.logError)("image.aspect_ratios min_width or min_height are invalid: ",e,t);const n=o.aspect_ratios.filter((e=>e.ratio_width&&e.ratio_height)).map((e=>`${e.ratio_width}:${e.ratio_height}`));n.length>0&&(d.img.ext={aspectratios:n})}else(0,r.logError)("image.aspect_ratios was passed, but it's empty:",o.aspect_ratios);else(0,r.logError)("image.aspect_ratios was passed, but it's not a an array:",o.aspect_ratios);o.sizes&&(2===o.sizes.length&&(0,i.Fq)(o.sizes[0])&&(0,i.Fq)(o.sizes[1])?(d.img.w=o.sizes[0],d.img.h=o.sizes[1],delete d.img.hmin,delete d.img.wmin):(0,r.logError)("image.sizes was passed, but its value is not an array of integers:",o.sizes))}else"title"===n?d.title={len:o.len||140}:"ext"===n&&(d.ext=o,delete d.required);t.assets.push(d)}return t}function U(e,t){for(;e&&t&&e!==t;)e>t?e-=t:t-=e;return e||t}function k(e){if(!y(e))return;const t={};for(const n of e.assets){if(n.title){const e={required:!!n.required&&Boolean(n.required),len:n.title.len};t.title=e}else if(n.img){const e={required:!!n.required&&Boolean(n.required)};if(n.img.w&&n.img.h)e.sizes=[n.img.w,n.img.h];else if(n.img.wmin&&n.img.hmin){const t=U(n.img.wmin,n.img.hmin);e.aspect_ratios=[{min_width:n.img.wmin,min_height:n.img.hmin,ratio_width:n.img.wmin/t,ratio_height:n.img.hmin/t}]}n.img.type===s.oA.MAIN?t.image=e:t.icon=e}else if(n.data){const e=Object.keys(s.jO).find((e=>s.jO[e]===n.data.type)),r=Object.keys(s.h0).find((t=>s.h0[t]===e));t[r]={required:!!n.required&&Boolean(n.required)},n.data.len&&(t[r].len=n.data.len)}e.privacy&&(t.privacyLink={required:!1})}return t}function D(e){{if(!e||!(0,i.cy)(e))return e;if(!e.some((e=>(e?.mediaTypes||{})[a.s6]?.ortb)))return e;const t=(0,i.Go)(e);for(const e of t)e.mediaTypes&&e.mediaTypes[a.s6]&&e.mediaTypes[a.s6].ortb&&(e.mediaTypes[a.s6]=Object.assign((0,r.pick)(e.mediaTypes[a.s6],s._B),k(e.mediaTypes[a.s6].ortb)),e.nativeParams=h(e.mediaTypes[a.s6]));return t}}function _(e){const t={link:{},eventtrackers:[]};return Object.entries(e).forEach((e=>{let[n,r]=e;switch(n){case"clickUrl":t.link.url=r;break;case"clickTrackers":t.link.clicktrackers=Array.isArray(r)?r:[r];break;case"impressionTrackers":(Array.isArray(r)?r:[r]).forEach((e=>{t.eventtrackers.push({event:l.OA,method:l.Ni,url:e})}));break;case"javascriptTrackers":t.jstracker=Array.isArray(r)?r.join(""):r;break;case"privacyLink":t.privacy=r}})),t}function $(e,t){const n={..._(e),assets:[]};function r(e,r){let o=t.assets.find(e);null!=o&&(o=(0,i.Go)(o),r(o),n.assets.push(o))}return Object.keys(e).filter((t=>!!e[t])).forEach((t=>{const n=O(e[t]);switch(t){case"title":r((e=>null!=e.title),(e=>{e.title={text:n}}));break;case"image":case"icon":const e="image"===t?s.oA.MAIN:s.oA.ICON;r((t=>null!=t.img&&t.img.type===e),(e=>{e.img={url:n}}));break;default:t in s.h0&&r((e=>null!=e.data&&e.data.type===s.jO[s.h0[t]]),(e=>{e.data={value:n}}))}})),n}function q(e,t){const n={},r=t?.assets||[];n.clickUrl=e.link?.url,n.privacyLink=e.privacy;for(const t of e?.assets||[]){const e=r.find((e=>t.id===e.id));t.title?n.title=t.title.text:t.img?n[e?.img?.type===s.oA.MAIN?"image":"icon"]={url:t.img.url,width:t.img.w,height:t.img.h}:t.data&&(n[f[p[e?.data?.type]]]=t.data.value)}n.impressionTrackers=[];let i=[];e.imptrackers&&n.impressionTrackers.push(...e.imptrackers);for(const t of e?.eventtrackers||[])t.event===l.OA&&t.method===l.Ni&&n.impressionTrackers.push(t.url),t.event===l.OA&&t.method===l.fR&&i.push(t.url);return i=i.map((e=>`<script async src="${e}"><\/script>`)),e?.jstracker&&i.push(e.jstracker),i.length&&(n.javascriptTrackers=i.join("\n")),n}function x(e){var t={};for(var n in e)t[e[n]]=n;return t}},22517:(e,t,n)=>{n.d(t,{Cf:()=>a,S3:()=>i,Tb:()=>o,WR:()=>s,e4:()=>c,pS:()=>u,qN:()=>d,yB:()=>g,zt:()=>r});const r=["request","imp","bidResponse","response"],[i,o,s,a]=r,[d,c]=["default","pbs"],l=new Set(r);const{registerOrtbProcessor:u,getProcessors:g}=function(){const e={};return{registerOrtbProcessor(t){let{type:n,name:i,fn:o,priority:s=0,dialects:a=[d]}=t;if(!l.has(n))throw new Error(`ORTB processor type must be one of: ${r.join(", ")}`);a.forEach((t=>{e.hasOwnProperty(t)||(e[t]={}),e[t].hasOwnProperty(n)||(e[t][n]={}),e[t][n][i]={priority:s,fn:o}}))},getProcessors:t=>e[t]||{}}}()},57215:(e,t,n)=>{n.d(t,{WH:()=>Z,xu:()=>te,Z:()=>ee,gH:()=>ae});var r=n(51748),i=n(10466),o=n(26665),s=n(58928),a=n(83435),d=n(80356),c=n(11418),l=n(71852),u=n(45144);const{REQUEST:g,RESPONSE:f,NATIVE:p,EVENT:m}=c.nl,h={[g]:function(e,t,n){(0,l.bw)({renderFn(t){e(Object.assign({message:f,renderer:(0,u.kj)(n),rendererVersion:u.xh},t))},resizeFn:y(t.adId,n),options:t.options,adId:t.adId,bidResponse:n})},[m]:function(e,t,n){if(null==n)return void(0,i.logError)(`Cannot find ad '${t.adId}' for x-origin event request`);if(n.status!==c.tl.RENDERED)return void(0,i.logWarn)(`Received x-origin event request without corresponding render request for ad '${n.adId}'`);return(0,l.Uc)(t,n)}};function b(){window.addEventListener("message",(function(e){!function(e){var t=e.message?"message":"data",n={};try{n=JSON.parse(e[t])}catch(e){return}if(n&&n.adId&&n.message&&h.hasOwnProperty(n.message))(0,l.$A)(n.adId,n.message===c.nl.REQUEST).then((t=>{var r,o;h[n.message]((r=n.adId,o=function(e){return null==e.origin&&0===e.ports.length?function(){const e="Cannot post message to a frame with null origin. Please update creatives to use MessageChannel, see https://github.com/prebid/Prebid.js/issues/7870";throw(0,i.logError)(e),new Error(e)}:e.ports.length>0?function(t){e.ports[0].postMessage(JSON.stringify(t))}:function(t){e.source.postMessage(JSON.stringify(t),e.origin)}}(e),function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return o(Object.assign({},e,{adId:r}),...n)}),n,t)}))}(e)}),!1)}function y(e,t){return function(n,r){!function(e){let{instl:t,adId:n,adUnitCode:r,width:o,height:s}=e;if(t)return;function a(e){return e?e+"px":"100%"}function d(e){const t=c(n,r),i=document.getElementById(t);return i&&i.querySelector(e)}function c(e,t){return(0,i.isGptPubadsDefined)()?l(e):(0,i.isApnGetTagDefined)()?u(t):t}function l(e){const t=window.googletag.pubads().getSlots().find((t=>t.getTargetingKeys().find((n=>t.getTargeting(n).includes(e)))));return t?t.getSlotElementId():null}function u(e){const t=window.apntag.getTag(e);return t&&t.targetId}["div","iframe"].forEach((e=>{const t=d(e+':not([style*="display: none"])');if(t){const e=t.style;e.width=a(o),e.height=a(s)}else(0,i.logError)(`Unable to locate matching page element for adUnitCode ${r}. Can't resize it to ad's dimensions. Please review setup.`)}))}({...t,width:n,height:r,adId:e})}}Object.assign(h,{[p]:function(e,t,n){if(null==n)return void(0,i.logError)(`Cannot find ad for x-origin event request: '${t.adId}'`);switch(t.action){case"assetRequest":(0,l.Hh)(n,(()=>e((0,d.IX)(t,n))));break;case"allAssetRequest":(0,l.Hh)(n,(()=>e((0,d.yl)(t,n))));break;default:(0,l.vW)(t,n,{resizeFn:y(t.adId,n)}),(0,l.Pk)(n)}}});var v=n(73391),E=n(91933),A=n(63006),w=n(10552),T=n(32592),I=n(87067),C=n(61443),S=n(51409),B=n(18014),O=n(37841),R=n(13064);function U(){const e=(0,r.m)().scheduler??window.scheduler;return e?.yield?e.yield():R.U9.resolve()}var k=n(16169),D=n(41385),_=n(79236),$=n(36220);const q=[["format",e=>Array.isArray(e)&&e.length>0&&e.every((e=>"object"==typeof e))],["w",o.Fq],["h",o.Fq],["btype",o.Uu],["battr",o.Uu],["pos",o.Fq],["mimes",e=>Array.isArray(e)&&e.length>0&&e.every((e=>"string"==typeof e))],["topframe",e=>[1,0].includes(e)],["expdir",o.Uu],["api",o.Uu],["id",o.O8],["vcm",e=>[1,0].includes(e)]],x=new Map(q);var W=n(59794);function j(e,t){var n=this;return function(){for(var r=arguments.length,o=new Array(r),s=0;s<r;s++)o[s]=arguments[s];return document.prerendering&&e()?new Promise((e=>{document.addEventListener("prerenderingchange",(()=>{(0,i.logInfo)("Auctions were suspended while page was prerendering"),e(t.apply(n,o))}),{once:!0})})):Promise.resolve(t.apply(n,o))}}var N=n(3516),P=n(40069);const M=(0,r.m)(),{triggerUserSyncs:F}=v.zt,{ADD_AD_UNITS:G,REQUEST_BIDS:L,SET_TARGETING:z}=c.qY;function H(e,t){let n=[];return(0,o.cy)(e)&&(t?e.length===t:e.length>0)&&(e.every((e=>(0,o.Uu)(e,2)))?n=e:(0,o.Uu)(e,2)&&n.push(e)),n}function V(e,t){const n=(0,s.A)(e,`ortb2Imp.${t}`),r=(0,s.A)(e,`mediaTypes.${t}`);if(!n&&!r)return;const o={[W.G_]:$.Zy,[W.D4]:x}[t];o&&[...o].forEach((n=>{let[r,o]=n;const d=(0,s.A)(e,`mediaTypes.${t}.${r}`),c=(0,s.A)(e,`ortb2Imp.${t}.${r}`);null==d&&null==c||(null==d?(0,a.J)(e,`mediaTypes.${t}.${r}`,c):null==c?(0,a.J)(e,`ortb2Imp.${t}.${r}`,d):((0,i.logWarn)(`adUnit ${e.code}: specifies conflicting ortb2Imp.${t}.${r} and mediaTypes.${t}.${r}, the latter will be ignored`,e),(0,a.J)(e,`mediaTypes.${t}.${r}`,c)))}))}function Q(e){const t=(0,o.Go)(e),n=t.mediaTypes.banner,r=null==n.sizes?null:H(n.sizes),s=e.ortb2Imp?.banner?.format??n?.format;let d;if(null!=s){(0,a.J)(t,"ortb2Imp.banner.format",s),n.format=s;try{d=s.filter((t=>{let{w:n,h:r,wratio:o,hratio:s}=t;return null!=(n??r)&&null!=(o??s)?((0,i.logWarn)("Ad unit banner.format specifies both w/h and wratio/hratio",e),!1):null!=n&&null!=r||null!=o&&null!=s})).map((e=>{let{w:t,h:n,wratio:r,hratio:i}=e;return[t??r,n??i]}))}catch(t){(0,i.logError)(`Invalid format definition on ad unit ${e.code}`,s)}null==d||null==r||(0,i.deepEqual)(r,d)||(0,i.logWarn)(`Ad unit ${e.code} has conflicting sizes and format definitions`,e)}const c=d??r??[],l=e.ortb2Imp?.banner?.expdir??n.expdir;return null!=l&&(n.expdir=l,(0,a.J)(t,"ortb2Imp.banner.expdir",l)),c.length>0?(n.sizes=c,t.sizes=c):((0,i.logError)("Detected a mediaTypes.banner object without a proper sizes field. Please ensure the sizes are listed like: [[300, 250], ...]. Removing invalid mediaTypes.banner object from request."),delete t.mediaTypes.banner),function(e,t){const n=e?.mediaTypes?.banner;(0,o.Qd)(n)?null!=n&&Object.entries(n).forEach((r=>{let[o,s]=r;x.has(o)&&(x.get(o)(s)||("function"==typeof t?t(o,s,e):((0,i.logWarn)(`Invalid prop in adUnit "${e.code}": Invalid value for mediaTypes.banner.${o} ORTB property. The property has been removed.`,e),delete n[o])))})):(0,i.logWarn)("validateOrtbBannerFields: bannerParams must be an object.")}(t),V(t,"banner"),t}function J(e){const t=(0,o.Go)(e),n=t.mediaTypes.video;if(n.playerSize){const e="number"==typeof n.playerSize[0]?2:1,r=H(n.playerSize,e);r.length>0?(2===e&&(0,i.logInfo)("Transforming video.playerSize from [640,480] to [[640,480]] so it's in the proper format."),n.playerSize=r,t.sizes=r):((0,i.logError)("Detected incorrect configuration of mediaTypes.video.playerSize. Please specify only one set of dimensions in a format like: [[640, 480]]. Removing invalid mediaTypes.video.playerSize property from request."),delete t.mediaTypes.video.playerSize)}return(0,$.aP)(t),V(t,"video"),t}function K(e){function t(t){return(0,i.logError)(`Error in adUnit "${e.code}": ${t}. Removing native request from ad unit`,e),delete r.mediaTypes.native,r}function n(e){for(const t of["types"])if(s.hasOwnProperty(t)){const n=e(t);if(n)return n}}const r=(0,o.Go)(e),s=r.mediaTypes.native;if(s.ortb){if(s.ortb.assets?.some((e=>!(0,o.Et)(e.id)||e.id<0||e.id%1!=0)))return t("native asset ID must be a nonnegative integer");if(n((e=>t(`ORTB native requests cannot specify "${e}"`))))return r;const e=Object.keys(c.x5).filter((e=>c.x5[e].includes("hb_native_"))),a=Object.keys(s).filter((t=>e.includes(t)));a.length>0&&((0,i.logError)(`when using native OpenRTB format, you cannot use legacy native properties. Deleting ${a} keys from request.`),a.forEach((e=>delete r.mediaTypes.native[e])))}else n((t=>(0,i.logWarn)(`mediaTypes.native.${t} is deprecated, consider using native ORTB instead`,e)));return s.image&&s.image.sizes&&!Array.isArray(s.image.sizes)&&((0,i.logError)("Please use an array of sizes for native.image.sizes field. Removing invalid mediaTypes.native.image.sizes property from request."),delete r.mediaTypes.native.image.sizes),s.image&&s.image.aspect_ratios&&!Array.isArray(s.image.aspect_ratios)&&((0,i.logError)("Please use an array of sizes for native.image.aspect_ratios field. Removing invalid mediaTypes.native.image.aspect_ratios property from request."),delete r.mediaTypes.native.image.aspect_ratios),s.icon&&s.icon.sizes&&!Array.isArray(s.icon.sizes)&&((0,i.logError)("Please use an array of sizes for native.icon.sizes field. Removing invalid mediaTypes.native.icon.sizes property from request."),delete r.mediaTypes.native.icon.sizes),r}function Y(e,t){const n=e?.mediaTypes?.[t]?.pos;if(!(0,o.Et)(n)||isNaN(n)||!isFinite(n)){const n=`Value of property 'pos' on ad unit ${e.code} should be of type: Number`;(0,i.logWarn)(n),delete e.mediaTypes[t].pos}return e}function X(e){const t=e=>`adUnit.code '${n.code}' ${e}`,n=e,r=n.mediaTypes,s=n.bids;return null==s||(0,o.cy)(s)?null==s&&null==n.ortb2Imp?((0,i.logError)(t("has no 'adUnit.bids' and no 'adUnit.ortb2Imp'. Removing adUnit from auction")),null):r&&0!==Object.keys(r).length?(null==n.ortb2Imp||null!=s&&0!==s.length||(n.bids=[{bidder:null}],(0,i.logMessage)(t("defines 'adUnit.ortb2Imp' with no 'adUnit.bids'; it will be seen only by S2S adapters"))),n):((0,i.logError)(t("does not define a 'mediaTypes' object. This is a required field for the auction, so this adUnit has been removed.")),null):((0,i.logError)(t("defines 'adUnit.bids' that is not an array. Removing adUnit from auction")),null)}(0,I.L6)(),M.bidderSettings=M.bidderSettings||{},M.libLoaded=!0,M.version="v10.3.0",(0,i.logInfo)("Prebid.js v10.3.0 loaded"),M.adUnits=M.adUnits||[];const Z={validateAdUnit:X,validateBannerMediaType:Q,validateSizes:H};Object.assign(Z,{validateNativeMediaType:K}),Object.assign(Z,{validateVideoMediaType:J});const ee=(0,T.A_)("sync",(function(e){const t=[];return e.forEach((e=>{const n=X(e);if(null==n)return;const r=n.mediaTypes;let i,o,s;r.banner&&(i=Q(n),r.banner.hasOwnProperty("pos")&&(i=Y(i,"banner"))),r.video&&(o=J(i||n),r.video.hasOwnProperty("pos")&&(o=Y(o,"video"))),r.native&&(s=K(o||(i||n)));const a=Object.assign({},i,o,s);t.push(a)})),t}),"checkAdUnitSetup");function te(e,t){let n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];(0,r.m)()[e]=n?function(e,t){return function(){for(var n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return(0,i.logInfo)(`Invoking pbjs.${e}`,r),t.apply(this,r)}}(e,t):t}function ne(e){return re(e)[e]}function re(e){return w.iS.getAllTargeting(e)}function ie(e){return(e=e.slice()).bids=e,e}function oe(e){const t=A.n[e]().filter((e=>A.n.getAdUnitCodes().includes(e.adUnitCode))),n=A.n.getLastAuctionId();return t.map((e=>e.adUnitCode)).filter(i.uniques).map((e=>t.filter((t=>t.auctionId===n&&t.adUnitCode===e)))).filter((e=>e&&e[0]&&e[0].adUnitCode)).map((e=>({[e[0].adUnitCode]:ie(e)}))).reduce(((e,t)=>Object.assign(e,t)),{})}te("triggerUserSyncs",F),te("getAdserverTargetingForAdUnitCodeStr",(function(e){if(e){const t=ne(e);return(0,i.transformAdServerTargetingObj)(t)}(0,i.logMessage)("Need to call getAdserverTargetingForAdUnitCodeStr with adunitCode")})),te("getHighestUnusedBidResponseForAdUnitCode",(function(e){if(e){const t=A.n.getAllBidsForAdUnitCode(e).filter(w.Yl);return t.length?t.reduce(_.Vk):null}(0,i.logMessage)("Need to call getHighestUnusedBidResponseForAdUnitCode with adunitCode")})),te("getAdserverTargetingForAdUnitCode",ne),te("getAdserverTargeting",re),te("getConsentMetadata",(function(){return D.SL.getConsentMeta()})),te("getNoBids",(function(){return oe("getNoBids")})),te("getNoBidsForAdUnitCode",(function(e){return ie(A.n.getNoBids().filter((t=>t.adUnitCode===e)))})),te("getBidResponses",(function(){return oe("getBidsReceived")})),te("getBidResponsesForAdUnitCode",(function(e){return ie(A.n.getBidsReceived().filter((t=>t.adUnitCode===e)))})),te("setTargetingForGPTAsync",(function(e,t){(0,i.isGptPubadsDefined)()?w.iS.setTargetingForGPT(e,t):(0,i.logError)("window.googletag is not defined on the page")})),te("setTargetingForAst",(function(e){w.iS.isApntagDefined()?(w.iS.setTargetingForAst(e),B.emit(z,w.iS.getAllTargeting())):(0,i.logError)("window.apntag is not defined on the page")})),te("renderAd",(async function(e,t,n){await U(),(0,l.BS)(e,t,n)})),te("removeAdUnit",(function(e){if(!e)return void(M.adUnits=[]);let t;t=(0,o.cy)(e)?e:[e],t.forEach((e=>{for(let t=M.adUnits.length-1;t>=0;t--)M.adUnits[t].code===e&&M.adUnits.splice(t,1)}))}));const se=function(){const e=(0,T.A_)("async",(function(e){let{bidsBackHandler:t,timeout:n,adUnits:r,adUnitCodes:s,labels:a,auctionId:d,ttlBuffer:c,ortb2:l,metrics:u,defer:g}=e??{};B.emit(L);const f=n||E.$W.getConfig("bidderTimeout");null==s||Array.isArray(s)||(s=[s]),s&&s.length?r=r.filter((e=>s.includes(e.code))):s=r&&r.map((e=>e.code)),s=s.filter(i.uniques);let p={global:(0,i.mergeDeep)({},E.$W.getAnyConfig("ortb2")||{},l||{}),bidder:Object.fromEntries(Object.entries(E.$W.getBidderConfig()).map((e=>{let[t,n]=e;return[t,(0,o.Go)(n.ortb2)]})).filter((e=>{let[t,n]=e;return null!=n})))};p=(0,P.mZ)(p),(0,k.w)(R.U9.resolve(p.global)).then((e=>(p.global=e,ae({bidsBackHandler:t,timeout:f,adUnits:r,adUnitCodes:s,labels:a,auctionId:d,ttlBuffer:c,ortb2Fragments:p,metrics:u,defer:g}))))}),"requestBids");return(0,T.Y6)(e,j((()=>!E.$W.getConfig("allowPrerendering")),(function(){const t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.adUnits||M.adUnits;return t.adUnits=Array.isArray(n)?n.slice():[n],t.metrics=(0,O.K7)(),t.metrics.checkpoint("requestBids"),t.defer=(0,R.v6)({promiseFactory:e=>new Promise(e)}),e.call(this,t),t.defer.promise})))}();te("requestBids",se);const ae=(0,T.A_)("async",(function(){let{bidsBackHandler:e,timeout:t,adUnits:n,ttlBuffer:r,adUnitCodes:o,labels:s,auctionId:d,ortb2Fragments:c,metrics:l,defer:u}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const g=(0,S.pX)(E.$W.getConfig("s2sConfig")||[]);!function(e){e.forEach((e=>(0,$.V0)(e)))}(n);const f=(0,O.BO)(l).measureTime("requestBids.validate",(()=>ee(n)));function p(t,n,r){if("function"==typeof e)try{e(t,n,r)}catch(e){(0,i.logError)("Error executing bidsBackHandler",null,e)}u.resolve({bids:t,timedOut:n,auctionId:r})}const m={};if(f.forEach((e=>{const t=Object.keys(e.mediaTypes||{banner:"banner"}),n=e.bids.map((e=>e.bidder)),o=S.Ay.bidderRegistry,s=n.filter((e=>!g.has(e)));e.adUnitId=(0,i.generateUUID)();const a=e.ortb2Imp?.ext?.tid;a&&(m.hasOwnProperty(e.code)?(0,i.logWarn)(`Multiple distinct ortb2Imp.ext.tid were provided for twin ad units '${e.code}'`):m[e.code]=a),null==r||e.hasOwnProperty("ttlBuffer")||(e.ttlBuffer=r),s.forEach((n=>{const r=o[n],s=r&&r.getSpec&&r.getSpec(),a=s&&s.supportedMediaTypes||["banner"];t.some((e=>a.includes(e)))||((0,i.logWarn)((0,i.unsupportedBidderMessage)(e,n)),e.bids=e.bids.filter((e=>e.bidder!==n)))}))})),f&&0!==f.length){f.forEach((e=>{const t=e.ortb2Imp?.ext?.tid||m[e.code]||(0,i.generateUUID)();m.hasOwnProperty(e.code)||(m[e.code]=t),e.transactionId=t,(0,a.J)(e,"ortb2Imp.ext.tid",t)}));const e=A.n.createAuction({adUnits:f,adUnitCodes:o,callback:p,cbTimeout:t,labels:s,auctionId:d,ortb2Fragments:c,metrics:l}),n=f.length;n>15&&(0,i.logInfo)(`Current auction ${e.getAuctionId()} contains ${n} adUnits.`,f),o.forEach((t=>w.iS.setLatestAuctionForAdUnit(t,e.getAuctionId()))),e.callBids()}else(0,i.logMessage)("No adUnits configured. No bids requested."),p()}),"startAuction");se.before((function(e,t){function n(e){let t;for(;t=e.shift();)t()}n(C.s0),n(le),e.call(this,t)}),49),te("addAdUnits",(function(e){M.adUnits.push(...Array.isArray(e)?e:[e]),B.emit(G)}));const de={bidWon(e){if(A.n.getBidsRequested().map((e=>e.bids.map((e=>e.adUnitCode)))).reduce(i.flatten).filter(i.uniques).includes(e))return!0;(0,i.logError)('The "'+e+'" placement is not defined.')}};function ce(e,t){return de.hasOwnProperty(e)&&de[e](t)}te("onEvent",(function(e,t,n){(0,o.fp)(t)?!n||ce(e,n)?B.on(e,t,n):(0,i.logError)('The id provided is not valid for event "'+e+'" and no handler was set.'):(0,i.logError)('The event handler provided is not a function and was not set on event "'+e+'".')})),te("offEvent",(function(e,t,n){n&&!ce(e,n)||B.off(e,t,n)})),te("getEvents",(function(){return B.getEvents()})),te("registerBidAdapter",(function(e,t,n){try{const r=n?(0,N.xb)(n):e();S.Ay.registerBidAdapter(r,t)}catch(e){(0,i.logError)("Error registering bidder adapter : "+e.message)}})),te("registerAnalyticsAdapter",(function(e){try{S.Ay.registerAnalyticsAdapter(e)}catch(e){(0,i.logError)("Error registering analytics adapter : "+e.message)}}));const le=[],ue=(0,T.A_)("async",(function(e){e&&!(0,i.isEmpty)(e)?S.Ay.enableAnalytics(e):(0,i.logError)("pbjs.enableAnalytics should be called with option {}")}),"enableAnalyticsCb");function ge(e){if("function"==typeof e)try{e.call()}catch(e){(0,i.logError)("Error processing command :",e.message,e.stack)}else(0,i.logError)("Commands written into pbjs.cmd.push must be wrapped in a function")}async function fe(e){for(const t of e){if(void 0===t.called)try{t.call(),t.called=!0}catch(e){(0,i.logError)("Error processing command :","prebid.js",e)}await U()}}te("enableAnalytics",(function(e){le.push(ue.bind(this,e))})),te("aliasBidder",(function(e,t,n){e&&t?S.Ay.aliasBidAdapter(e,t,n):(0,i.logError)("bidderCode and alias must be passed as arguments","pbjs.aliasBidder")})),M.aliasRegistry=S.Ay.aliasRegistry,E.$W.getConfig("aliasRegistry",(e=>{"private"===e.aliasRegistry&&delete M.aliasRegistry})),te("getAllWinningBids",(function(){return A.n.getAllWinningBids()})),te("getAllPrebidWinningBids",(function(){return(0,i.logWarn)("getAllPrebidWinningBids may be removed or renamed in a future version. This function returns bids that have won in prebid and have had targeting set but have not (yet?) won in the ad server. It excludes bids that have been rendered."),A.n.getBidsReceived().filter((e=>e.status===c.tl.BID_TARGETING_SET))})),te("getHighestCpmBids",(function(e){return w.iS.getWinningBids(e)})),te("clearAllAuctions",(function(){A.n.clearAllAuctions()})),te("markWinningBidAsUsed",(function(e){let t,{adId:n,adUnitCode:r,analytics:o=!1,events:s=!1}=e;r&&null==n?t=w.iS.getWinningBids(r):n?t=A.n.getBidsReceived().filter((e=>e.adId===n)):(0,i.logWarn)("Improper use of markWinningBidAsUsed. It needs an adUnitCode or an adId to function."),t.length>0&&(o||s?(0,l.n6)(t[0]):A.n.addWinningBid(t[0]),(0,l.qn)(t[0]))})),te("getConfig",E.$W.getAnyConfig),te("readConfig",E.$W.readAnyConfig),te("mergeConfig",E.$W.mergeConfig),te("mergeBidderConfig",E.$W.mergeBidderConfig),te("setConfig",E.$W.setConfig),te("setBidderConfig",E.$W.setBidderConfig),M.que.push((()=>b()));te("processQueue",j((()=>M.delayPrerendering),(async function(){M.que.push=M.cmd.push=ge,(0,l.XO)(),T.A_.ready(),await fe(M.que),await fe(M.cmd)})),!1),te("triggerBilling",(function(e){let{adId:t,adUnitCode:n}=e;A.n.getAllWinningBids().filter((e=>e.adId===t||null==t&&e.adUnitCode===n)).forEach((e=>{S.Ay.triggerBilling(e),(0,l.vB)(e)}))}))},51748:(e,t,n)=>{n.d(t,{E:()=>s,m:()=>o});const r=window,i=r.pbjs=r.pbjs||{};function o(){return i}function s(e){i.installedModules.push(e)}i.cmd=i.cmd||[],i.que=i.que||[],i.installedModules=i.installedModules||[],r===window&&(r._pbjsGlobals=r._pbjsGlobals||[],r._pbjsGlobals.push("pbjs"))},10867:(e,t,n)=>{n.d(t,{EN:()=>d,gR:()=>s});var r=n(91933),i=n(10466);function o(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window;if(!e)return e;if(/\w+:\/\//.exec(e))return e;let n=t.location.protocol;try{n=t.top.location.protocol}catch(e){}return/^\/\//.exec(e)?n+e:`${n}//${e}`}function s(e){let t,{noLeadingWww:n=!1,noPort:r=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};try{t=new URL(o(e))}catch(e){return}return t=r?t.hostname:t.host,n&&t.startsWith("www.")&&(t=t.substring(4)),t}function a(e){try{const t=e.querySelector("link[rel='canonical']");if(null!==t)return t.href}catch(e){}return null}const d=function(e){let t,n,r,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window;return i.top!==i?e:function(){const o=a(i.document),s=i.location.href;return t===o&&s===n||(t=o,n=s,r=e()),r}}((c=window,function(){const e=[],t=function(e){try{if(!e.location.ancestorOrigins)return;return e.location.ancestorOrigins}catch(e){}}(c),n=r.$W.getConfig("maxNestedIframes");let d,l,u,g,f=!1,p=0,m=!1,h=!1,b=!1;do{const n=d,r=h;let o,s=!1,g=null;h=!1,d=d?d.parent:c;try{o=d.location.href||null}catch(e){s=!0}if(s)if(r){const e=n.context;try{g=e.sourceUrl,l=g,b=!0,m=!0,d===c.top&&(f=!0),e.canonicalUrl&&(u=e.canonicalUrl)}catch(e){}}else{(0,i.logWarn)("Trying to access cross domain iframe. Continuing without referrer and location");try{const e=n.document.referrer;e&&(g=e,d===c.top&&(f=!0))}catch(e){}!g&&t&&t[p-1]&&(g=t[p-1],d===c.top&&(b=!0)),g&&!m&&(l=g)}else{if(o&&(g=o,l=g,m=!1,d===c.top)){f=!0;const e=a(d.document);e&&(u=e)}d.context&&d.context.sourceUrl&&(h=!0)}e.push(g),p++}while(d!==c.top&&p<n);e.reverse();try{g=c.top.document.referrer}catch(e){}const y=f||b?l:null,v=r.$W.getConfig("pageUrl")||u||null;let E=r.$W.getConfig("pageUrl")||y||o(v,c);return y&&y.indexOf("?")>-1&&-1===E.indexOf("?")&&(E=`${E}${y.substring(y.indexOf("?"))}`),{reachedTop:f,isAmp:m,numIframes:p-1,stack:e,topmostLocation:l||null,location:y,canonicalUrl:v,page:E,domain:s(E)||null,ref:g||null,legacy:{reachedTop:f,isAmp:m,numIframes:p-1,stack:e,referer:l||null,canonicalUrl:v}}}));var c},61443:(e,t,n)=>{n.d(t,{CK:()=>y,X0:()=>p,le:()=>h,p6:()=>E,qk:()=>f,s0:()=>m,vM:()=>b});var r=n(10466),i=n(77156),o=n(70736),s=n(53202),a=n(25291),d=n(45808),c=n(91933),l=n(32592),u=n(51409),g=n(77610);const f="html5",p="cookie";let m=[];function h(){let{moduleName:e,moduleType:t,advertiseKeys:n=!0}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{isAllowed:i=s.io}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};function l(r,s,l,f){let p=e;const m=c.$W.getCurrentBidder();m&&t===o.tW&&u.Ay.aliasRegistry[m]===e&&(p=m);const h={[a.Zw]:s,[a.OI]:f};n&&null!=l&&(h[a.Ez]=l);return r({valid:i(d.Ue,(0,g.s)(t,p,h))})}function h(e,t,n,r,i){if(!i||"function"!=typeof i)return l(e,t,n,r);m.push((function(){let o=l(e,t,n,r);i(o)}))}function b(e){const t=e.charAt(0).toUpperCase()+e.substring(1),n=()=>window[e],i=function(t){return h((function(t){if(t&&t.valid)try{return!!n()}catch(t){(0,r.logError)(`${e} api disabled`)}return!1}),f,null,!1,t)};return{[`has${t}`]:i,[`${e}IsEnabled`]:e=>h((function(e){if(e&&e.valid)try{return n().setItem("prebid.cookieTest","1"),"1"===n().getItem("prebid.cookieTest")}catch(e){}finally{try{n().removeItem("prebid.cookieTest")}catch(e){}}return!1}),f,null,!1,e),[`setDataIn${t}`]:(e,t,r)=>h((function(r){r&&r.valid&&i()&&n().setItem(e,t)}),f,e,!0,r),[`getDataFrom${t}`]:(e,t)=>h((function(t){return t&&t.valid&&i()?n().getItem(e):null}),f,e,!1,t),[`removeDataFrom${t}`]:(e,t)=>h((function(t){t&&t.valid&&i()&&n().removeItem(e)}),f,e,!0,t)}}return{setCookie:function(e,t,n,r,i,o){return h((function(o){if(o&&o.valid){const o=i&&""!==i?` ;domain=${encodeURIComponent(i)}`:"",s=n&&""!==n?` ;expires=${n}`:"",a=null!=r&&"none"==r.toLowerCase()?"; Secure":"";document.cookie=`${e}=${encodeURIComponent(t)}${s}; path=/${o}${r?`; SameSite=${r}`:""}${a}`}}),p,e,!0,o)},getCookie:function(e,t){return h((function(t){if(t&&t.valid){let t=window.document.cookie.match("(^|;)\\s*"+e+"\\s*=\\s*([^;]*)\\s*(;|$)");return t?decodeURIComponent(t[2]):null}return null}),p,e,!1,t)},cookiesAreEnabled:function(e){return h((function(e){return!(!e||!e.valid)&&(0,r.checkCookieSupport)()}),p,null,!1,e)},...b("localStorage"),...b("sessionStorage"),findSimilarCookies:function(e,t){return h((function(t){if(t&&t.valid){const t=[];if((0,r.hasDeviceAccess)()){const n=document.cookie.split(";");for(;n.length;){const r=n.pop();let i=r.indexOf("=");i=i<0?r.length:i;decodeURIComponent(r.slice(0,i).replace(/^\s+/,"")).indexOf(e)>=0&&t.push(decodeURIComponent(r.slice(i+1)))}}return t}}),p,e,!1,t)}}}function b(){let{moduleType:e,moduleName:t,bidderCode:n}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};function r(){throw new Error("Invalid invocation for getStorageManager: must set either bidderCode, or moduleType + moduleName")}return n?((e&&e!==o.tW||t)&&r(),e=o.tW,t=n):t&&e||r(),h({moduleType:e,moduleName:t})}function y(e){return h({moduleName:e,moduleType:o.tp})}function v(){if(!(0,r.hasDeviceAccess)())return{allow:!1}}(0,s.qB)(d.Ue,"deviceAccess config",v),(0,s.qB)(d.yg,"deviceAccess config",v),(0,s.qB)(d.Ue,"bidderSettings.*.storageAllowed",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i.u;if(e[a.Dk]!==o.tW)return;let n=t.get(e[a.q7],"storageAllowed");if(n&&!0!==n){const t=e[a.Zw];n=Array.isArray(n)?n.some((e=>e===t)):n===t}else n=!!n;return n?void 0:{allow:n}}));const E=(0,l.A_)("sync",((e,t)=>{}))},10552:(e,t,n)=>{n.d(t,{Jp:()=>I,ME:()=>T,Yl:()=>w,iS:()=>S,m2:()=>C,uW:()=>A});var r=n(63006),i=n(15482),o=n(77156),s=n(91933),a=n(11418),d=n(18014),c=n(32592),l=n(59794),u=n(10466),g=n(26665),f=n(58928),p=n(79236),m=[];const h=20,b="targetingControls.allowTargetingKeys",y="targetingControls.addTargetingKeys",v=`Only one of "${b}" or "${y}" can be set`,E=Object.keys(a.xS).map((e=>a.xS[e])),A={isBidNotExpired:e=>e.responseTimestamp+1e3*(0,i.cT)(e)>(0,u.timestamp)(),isUnusedBid:e=>e&&(e.status&&![a.tl.RENDERED].includes(e.status)||!e.status)};function w(e){return!Object.values(A).some((t=>!t(e)))}const T=(0,c.A_)("sync",(function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=arguments.length>3&&void 0!==arguments[3]&&arguments[3],i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:u.sortByHighestCpm;if(!r){const r=[],o=s.$W.getConfig("sendBidsControl.dealPrioritization"),a=(0,u.groupBy)(e,"adUnitCode");return Object.keys(a).forEach((e=>{let s=[];const d=(0,u.groupBy)(a[e],"bidderCode");Object.keys(d).forEach((e=>{s.push(d[e].reduce(t))})),n?(s=o?s.sort(I(!0)):s.sort(((e,t)=>t.cpm-e.cpm)),r.push(...s.slice(0,n))):(s=s.sort(i),r.push(...s))})),r}return e}));function I(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return function(t,n){return void 0!==t.adserverTargeting.hb_deal&&void 0===n.adserverTargeting.hb_deal?-1:void 0===t.adserverTargeting.hb_deal&&void 0!==n.adserverTargeting.hb_deal?1:e?n.cpm-t.cpm:n.adserverTargeting.hb_pb-t.adserverTargeting.hb_pb}}function C(e,t){return(arguments.length>2&&void 0!==arguments[2]?arguments[2]:()=>window.googletag.pubads().getSlots())().reduce(((e,n)=>{const r=(0,g.fp)(t)&&t(n);return Object.keys(e).filter((0,g.fp)(r)?r:(0,u.isAdUnitCodeMatchingSlot)(n)).forEach((t=>e[t].push(n))),e}),Object.fromEntries(e.map((e=>[e,[]]))))}const S=function(e){const t={},n={setLatestAuctionForAdUnit(e,n){t[e]=n},resetPresetTargetingAST(e){r(e).forEach((function(e){const t=window.apntag.getTag(e);if(t&&t.keywords){const n=Object.keys(t.keywords),r={};n.forEach((e=>{m.includes(e.toLowerCase())||(r[e]=t.keywords[e])})),window.apntag.modifyTag(e,{keywords:r})}}))},getAllTargeting(t,n,d){let c=arguments.length>3&&void 0!==arguments[3]?arguments[3]:p.Vk,l=arguments.length>4&&void 0!==arguments[4]?arguments[4]:u.sortByHighestCpm;d||=i(c,l);const f=r(t),w=s.$W.getConfig("enableSendAllBids"),C=s.$W.getConfig("sendBidsControl.bidLimit"),B=w&&(n||C)||0,{customKeysByUnit:O,filteredBids:R}=function(e,t){const n=[],r={},i=s.$W.getConfig("targetingControls.alwaysIncludeDeals");return t.forEach((t=>{const s=e.includes(t.adUnitCode),a=!0===o.u.get(t.bidderCode,"allowZeroCpmBids")?t.cpm>=0:t.cpm>0,d=i&&t.dealId;s&&(d||a)&&(n.push(t),Object.keys(t.adserverTargeting).filter(function(){const e=S();return function(t){return-1===e.indexOf(t)}}()).forEach((e=>{const n=e.substring(0,20),i=r[t.adUnitCode]||{},o=[t.adserverTargeting[e]];i[n]?i[n]=i[n].concat(o).filter(u.uniques):i[n]=o,r[t.adUnitCode]=i})))})),{filteredBids:n,customKeysByUnit:r}}(f,d);let U=function(t,n,r){const i=!0===s.$W.getConfig("targetingControls.allBidsCustomTargeting"),o=A(t,r).concat(function(e){const t=s.$W.getConfig("targetingControls.alwaysIncludeDeals"),n=s.$W.getConfig("enableSendAllBids");return function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const r=E.slice(),i=s.$W.getConfig("targetingControls.allowSendAllBidsTargetingKeys"),o=i?i.map((e=>a.xS[e])):r;return e.reduce(((e,i)=>{if(t||n&&i.dealId){const t=function(e,t){return t.reduce(((t,n)=>(e.adserverTargeting[n]&&t.push({[`${n}_${e.bidderCode}`.substring(0,h)]:[e.adserverTargeting[n]]}),t)),[])}(i,r.filter((e=>void 0!==i.adserverTargeting[e]&&(n||-1!==o.indexOf(e)))));t&&e.push({[i.adUnitCode]:t})}return e}),[])}(e,n,t)}(t)).concat(function(t){function n(e){return e?.[a.iD.ADSERVER_TARGETING]}function r(e){const t=n(e);return Object.keys(t).map((function(e){return(0,g.O8)(t[e])&&(t[e]=t[e].split(",").map((e=>e.trim()))),(0,g.cy)(t[e])||(t[e]=[t[e]]),{[e]:t[e]}}))}return e.getAdUnits().filter((e=>t.includes(e.code)&&n(e))).reduce(((e,t)=>{const n=r(t);return n&&e.push({[t.code]:n}),e}),[])}(r));i&&o.push(...function(e,t){return e.reduce(((e,n)=>{const r=Object.assign({},n),i=t[r.adUnitCode],o=[];return i&&Object.keys(i).forEach((e=>{e&&i[e]&&o.push({[e]:i[e]})})),e.push({[r.adUnitCode]:o}),e}),[])}(t,n));return o.forEach((e=>{!function(e){Object.keys(e).forEach((t=>{e[t].forEach((e=>{const t=Object.keys(e);-1===m.indexOf(t[0])&&(m=t.concat(m))}))}))}(e)})),o}(T(R,c,B,void 0,l),O,f);const k=Object.keys(Object.assign({},a.Zh));let D=s.$W.getConfig(b);const _=s.$W.getConfig(y);if(null!=_&&null!=D)throw new Error(v);D=null!=_?k.concat(_):D||k,Array.isArray(D)&&D.length>0&&(U=function(e,t){const n=Object.assign({},a.xS),r=Object.keys(a.xS),i={};(0,u.logInfo)(`allowTargetingKeys - allowed keys [ ${t.map((e=>n[e])).join(", ")} ]`),e.map((e=>{const o=Object.keys(e)[0],s=e[o].filter((e=>{const o=Object.keys(e)[0],s=0===r.filter((e=>0===o.indexOf(n[e]))).length||t.find((e=>{const t=n[e];return 0===o.indexOf(t)}));return i[o]=!s,s}));e[o]=s}));const o=Object.keys(i).filter((e=>i[e]));(0,u.logInfo)(`allowTargetingKeys - removed keys [ ${o.join(", ")} ]`);const s=e.filter((e=>e[Object.keys(e)[0]].length>0));return s}(U,D));let $=function(e){return e.map((e=>({[Object.keys(e)[0]]:e[Object.keys(e)[0]].map((e=>({[Object.keys(e)[0]]:e[Object.keys(e)[0]].join(",")}))).reduce(((e,t)=>Object.assign(t,e)),{})}))).reduce((function(e,t){var n=Object.keys(t)[0];return e[n]=Object.assign({},e[n],t[n]),e}),{})}(U);const q=s.$W.getConfig("targetingControls.auctionKeyMaxChars");return q&&((0,u.logInfo)(`Detected 'targetingControls.auctionKeyMaxChars' was active for this auction; set with a limit of ${q} characters. Running checks on auction keys...`),$=function(e,t){const n=(0,g.Go)(e),r=Object.keys(n).map((e=>({adUnitCode:e,adserverTargeting:n[e]}))).sort(I());return r.reduce((function(e,r,i,o){let s=(a=r.adserverTargeting,Object.keys(a).reduce((function(e,t){return e+`${t}%3d${encodeURIComponent(a[t])}%26`}),""));var a;i+1===o.length&&(s=s.slice(0,-3));const d=r.adUnitCode,c=s.length;return c<=t?(t-=c,(0,u.logInfo)(`AdUnit '${d}' auction keys comprised of ${c} characters. Deducted from running threshold; new limit is ${t}`,n[d]),e[d]=n[d]):(0,u.logWarn)(`The following keys for adUnitCode '${d}' exceeded the current limit of the 'auctionKeyMaxChars' setting.\nThe key-set size was ${c}, the current allotted amount was ${t}.\n`,n[d]),i+1===o.length&&0===Object.keys(e).length&&(0,u.logError)("No auction targeting keys were permitted due to the setting in setConfig(targetingControls.auctionKeyMaxChars). Please review setup and consider adjusting."),e}),{})}($,q)),f.forEach((e=>{$[e]||($[e]={})})),$},setTargetingForGPT:(0,c.A_)("sync",(function(t,r){const i=n.getAllTargeting(t),o=Object.fromEntries(m.map((e=>[e,null])));Object.entries(C(Object.keys(i),r)).forEach((e=>{let[t,n]=e;n.forEach((e=>{Object.keys(i[t]).forEach((e=>{let n=i[t][e];"string"==typeof n&&-1!==n.indexOf(",")&&(n=n.split(",")),i[t][e]=n})),(0,u.logMessage)(`Attempting to set targeting-map for slot: ${e.getSlotElementId()} with targeting-map:`,i[t]),e.updateTargetingFromMap(Object.assign({},o,i[t]))}))})),Object.keys(i).forEach((t=>{Object.keys(i[t]).forEach((n=>{"hb_adid"===n&&e.setStatusForBids(i[t][n],a.tl.BID_TARGETING_SET)}))})),n.targetingDone(i),d.emit(a.qY.SET_TARGETING,i)}),"setTargetingForGPT"),targetingDone:(0,c.A_)("sync",(function(e){return e}),"targetingDone"),getWinningBids(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:p.Vk,s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:u.sortByHighestCpm;const a=t||i(n,s),d=r(e);return a.filter((e=>d.includes(e.adUnitCode))).filter((e=>!0===o.u.get(e.bidderCode,"allowZeroCpmBids")?e.cpm>=0:e.cpm>0)).map((e=>e.adUnitCode)).filter(u.uniques).map((e=>a.filter((t=>t.adUnitCode===e?t:null)).reduce(p.Vk)))},setTargetingForAst(e){const t=n.getAllTargeting(e);try{n.resetPresetTargetingAST(e)}catch(e){(0,u.logError)("unable to reset targeting for AST"+e)}Object.keys(t).forEach((e=>Object.keys(t[e]).forEach((n=>{if((0,u.logMessage)(`Attempting to set targeting for targetId: ${e} key: ${n} value: ${t[e][n]}`),(0,g.O8)(t[e][n])||(0,g.cy)(t[e][n])){const r={},i=/pt[0-9]/;n.search(i)<0?r[n.toUpperCase()]=t[e][n]:r[n]=t[e][n],window.apntag.setKeywords(e,r,{overrideKeyValue:!0})}}))))},isApntagDefined(){if(window.apntag&&(0,g.fp)(window.apntag.setKeywords))return!0}};function r(t){return"string"==typeof t?[t]:(0,g.cy)(t)?t:e.getAdUnitCodes()||[]}function i(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:p.Bq,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;const i=e.getBidsReceived().reduce(((e,n)=>{const r=s.$W.getConfig("useBidCache"),i=s.$W.getConfig("bidCacheFilterFunction"),o=t[n.adUnitCode]===n.auctionId,a=!(r&&!o&&"function"==typeof i)||!!i(n);return(r||o)&&a&&n?.video?.context!==l.LM&&w(n)&&(n.latestTargetedAuctionId=t[n.adUnitCode],e.push(n)),e}),[]);return T(i,n,void 0,void 0,r)}function A(e,t){const r=n.getWinningBids(t,e),i=S();return r.map((e=>({[e.adUnitCode]:Object.keys(e.adserverTargeting).filter((t=>void 0===e.sendStandardTargeting||e.sendStandardTargeting||-1===i.indexOf(t))).reduce(((t,n)=>{const r=[e.adserverTargeting[n]],i={[n.substring(0,h)]:r};if(n===a.xS.DEAL){const o=`${n}_${e.bidderCode}`.substring(0,h),s={[o]:r};return[...t,i,s]}return[...t,i]}),[])})))}function S(){return e.getStandardBidderAdServerTargeting().map((e=>e.key)).concat(E).filter(u.uniques)}return s.$W.getConfig("targetingControls",(function(e){null!=(0,f.A)(e,b)&&null!=(0,f.A)(e,y)&&(0,u.logError)(v)})),n}(r.n)},73391:(e,t,n)=>{n.d(t,{qh:()=>g,zt:()=>p});var r=n(26665),i=n(10466),o=n(91933),s=n(61443),a=n(53202),d=n(45808),c=n(25291),l=n(70736),u=n(77610);const g={syncEnabled:!0,filterSettings:{image:{bidders:"*",filter:"include"}},syncsPerBidder:5,syncDelay:3e3,auctionDelay:500};o.$W.setDefaults({userSync:(0,r.Go)(g)});const f=(0,s.CK)("usersync");const p=function(e){const t={};let n={image:[],iframe:[]};const s=new Set;let a={};const g={image:!0,iframe:!1};let f=e.config;function p(){if(f.syncEnabled&&e.browserSupportsCookies){try{!function(){if(!g.iframe)return;m(n.iframe,(e=>{const[t,r]=e;(0,i.logMessage)(`Invoking iframe user sync for bidder: ${t}`),(0,i.insertUserSyncIframe)(r),function(e,t){e.image=e.image.filter((e=>e[0]!==t))}(n,t)}))}(),function(){if(!g.image)return;m(n.image,(e=>{const[t,n]=e;(0,i.logMessage)(`Invoking image pixel user sync for bidder: ${t}`),(0,i.triggerPixel)(n)}))}()}catch(e){return(0,i.logError)("Error firing user syncs",e)}n={image:[],iframe:[]}}}function m(e,t){(0,i.shuffle)(e).forEach(t)}function h(e,t){const n=f.filterSettings;if(function(e,t){if(e.all&&e[t])return(0,i.logWarn)(`Detected presence of the "filterSettings.all" and "filterSettings.${t}" in userSync config. You cannot mix "all" with "iframe/image" configs; they are mutually exclusive.`),!1;const n=e.all?e.all:e[t],o=e.all?"all":t;if(!n)return!1;const s=n.filter,a=n.bidders;if(s&&"include"!==s&&"exclude"!==s)return(0,i.logWarn)(`UserSync "filterSettings.${o}.filter" setting '${s}' is not a valid option; use either 'include' or 'exclude'.`),!1;if("*"!==a&&!(Array.isArray(a)&&a.length>0&&a.every((e=>(0,r.O8)(e)&&"*"!==e))))return(0,i.logWarn)(`Detected an invalid setup in userSync "filterSettings.${o}.bidders"; use either '*' (to represent all bidders) or an array of bidders.`),!1;return!0}(n,e)){g[e]=!0;const r=n.all?n.all:n[e],i="*"===r.bidders?[t]:r.bidders,o={include:(e,t)=>!e.includes(t),exclude:(e,t)=>e.includes(t)};return o[r.filter||"include"](i,t)}return!g[e]}return o.$W.getConfig("userSync",(e=>{if(e.userSync){const t=e.userSync.filterSettings;(0,r.Qd)(t)&&(t.image||t.all||(e.userSync.filterSettings.image={bidders:"*",filter:"include"}))}f=Object.assign(f,e.userSync)})),e.regRule(d.Ml,"userSync config",(e=>{if(!f.syncEnabled)return{allow:!1,reason:"syncs are disabled"};if(e[c.Dk]===l.tW){const n=e[c.bt],r=e[c.iK];if(!t.canBidderRegisterSync(n,r))return{allow:!1,reason:`${n} syncs are not enabled for ${r}`}}})),t.registerSync=(t,o,g)=>s.has(o)?(0,i.logMessage)(`already fired syncs for "${o}", ignoring registerSync call`):f.syncEnabled&&(0,r.cy)(n[t])?o?0!==f.syncsPerBidder&&Number(a[o])>=f.syncsPerBidder?(0,i.logWarn)(`Number of user syncs exceeded for "${o}"`):void(e.isAllowed(d.Ml,(0,u.s)(l.tW,o,{[c.bt]:t,[c.e3]:g}))&&(n[t].push([o,g]),a=function(e,t){return e[t]?e[t]+=1:e[t]=1,e}(a,o))):(0,i.logWarn)("Bidder is required for registering sync"):(0,i.logWarn)(`User sync type "${t}" not supported`),t.bidderDone=s.add.bind(s),t.syncUsers=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(e)return setTimeout(p,Number(e));p()},t.triggerUserSyncs=()=>{f.enableOverride&&t.syncUsers()},t.canBidderRegisterSync=(e,t)=>!f.filterSettings||!h(e,t),t}(Object.defineProperties({config:o.$W.getConfig("userSync"),isAllowed:a.io,regRule:a.qB},{browserSupportsCookies:{get:function(){return!(0,i.isSafariBrowser)()&&f.cookiesAreEnabled()}}}))},10466:(e,t,n)=>{n.r(t),n.d(t,{_each:()=>te,_map:()=>re,_setEventEmitter:()=>h,binarySearch:()=>rt,buildUrl:()=>He,canAccessWindowTop:()=>M,checkCookieSupport:()=>De,cleanObj:()=>Me,compareCodeAndSlot:()=>je,compressDataWithGZip:()=>ct,contains:()=>ne,convertObjectToArray:()=>tt,createIframe:()=>K,createInvisibleIframe:()=>Y,createTrackPixelHtml:()=>ce,createTrackPixelIframeHtml:()=>ue,cyrb53Hash:()=>Ke,debugTurnedOn:()=>J,deepAccess:()=>s.A,deepClone:()=>a.Go,deepEqual:()=>Ve,deepSetValue:()=>d.J,delayExecution:()=>_e,encodeMacroURI:()=>le,extractDomainFromHost:()=>st,flatten:()=>fe,formatQS:()=>Le,generateUUID:()=>S,getBidIdParameter:()=>B,getBidRequest:()=>pe,getBidderCodes:()=>he,getDNT:()=>We,getDefinedParams:()=>a.SH,getDocument:()=>P,getDomLoadingDuration:()=>Ue,getParameterByName:()=>X,getPerformanceNow:()=>Re,getPrebidInternal:()=>w,getSafeframeGeometry:()=>Te,getUniqueIdentifierStr:()=>C,getUnixTimestampFromNow:()=>et,getUserConfiguredParams:()=>xe,getValue:()=>me,getWinDimensions:()=>y,getWindowLocation:()=>N,getWindowSelf:()=>j,getWindowTop:()=>W,groupBy:()=>$e,hasConsoleLogger:()=>Q,hasDeviceAccess:()=>ke,hasNonSerializableProperty:()=>it,inIframe:()=>Ae,insertElement:()=>ie,insertHtmlIntoIframe:()=>ae,insertUserSyncIframe:()=>de,internal:()=>E,isA:()=>a.KG,isAdUnitCodeMatchingSlot:()=>Ne,isApnGetTagDefined:()=>ye,isArray:()=>a.cy,isArrayOfNums:()=>a.Uu,isBoolean:()=>a.Lm,isEmpty:()=>Z,isEmptyStr:()=>ee,isFn:()=>a.fp,isGptPubadsDefined:()=>be,isGzipCompressionSupported:()=>dt,isInteger:()=>a.Fq,isNumber:()=>a.Et,isPlainObject:()=>a.Qd,isSafariBrowser:()=>Ie,isSafeFrameWindow:()=>we,isStr:()=>a.O8,isValidMediaTypes:()=>qe,logError:()=>z,logInfo:()=>G,logMessage:()=>F,logWarn:()=>L,memoize:()=>Ze,mergeDeep:()=>Qe,parseGPTSingleSizeArray:()=>_,parseGPTSingleSizeArrayToRtbSize:()=>q,parseQS:()=>Ge,parseQueryStringParameters:()=>O,parseSizesInput:()=>k,parseUrl:()=>ze,pick:()=>Fe,prefixLog:()=>H,replaceAuctionPrice:()=>Se,replaceClickThrough:()=>Be,replaceMacros:()=>Ce,resetWinDimensions:()=>v,safeJSONEncode:()=>Xe,safeJSONParse:()=>Ye,setOnAny:()=>ot,setScriptAttributes:()=>nt,shuffle:()=>Ee,sizeTupleToRtbSize:()=>$,sizeTupleToSizeString:()=>D,sizesToSizeTuples:()=>U,sortByHighestCpm:()=>ve,timestamp:()=>Oe,transformAdServerTargetingObj:()=>R,triggerNurlWithCpm:()=>at,triggerPixel:()=>se,uniques:()=>ge,unsupportedBidderMessage:()=>Pe,waitForElementToLoad:()=>oe});var r=n(91933),i=n(11418),o=n(13064),s=n(58928),a=n(26665),d=n(83435);const c=Boolean(window.console),l=Boolean(c&&window.console.log),u=Boolean(c&&window.console.info),g=Boolean(c&&window.console.warn),f=Boolean(c&&window.console.error);let p,m;function h(e){p=e}function b(){null!=p&&p(...arguments)}const y=function(){let e;return()=>((!m||!e||Date.now()-e>20)&&(E.resetWinDimensions(),e=Date.now()),m)}();function v(){const e=M()?E.getWindowTop():E.getWindowSelf();m={screen:{width:e.screen?.width,height:e.screen?.height,availWidth:e.screen?.availWidth,availHeight:e.screen?.availHeight,colorDepth:e.screen?.colorDepth},innerHeight:e.innerHeight,innerWidth:e.innerWidth,outerWidth:e.outerWidth,outerHeight:e.outerHeight,visualViewport:{height:e.visualViewport?.height,width:e.visualViewport?.width},document:{documentElement:{clientWidth:e.document?.documentElement?.clientWidth,clientHeight:e.document?.documentElement?.clientHeight,scrollTop:e.document?.documentElement?.scrollTop,scrollLeft:e.document?.documentElement?.scrollLeft},body:{scrollTop:document.body?.scrollTop,scrollLeft:document.body?.scrollLeft,clientWidth:document.body?.clientWidth,clientHeight:document.body?.clientHeight}}}}const E={checkCookieSupport:De,createTrackPixelIframeHtml:ue,getWindowSelf:j,getWindowTop:W,canAccessWindowTop:M,getWindowLocation:N,insertUserSyncIframe:de,insertElement:ie,isFn:a.fp,triggerPixel:se,logError:z,logWarn:L,logMessage:F,logInfo:G,parseQS:Ge,formatQS:Le,deepEqual:Ve,resetWinDimensions:v},A={};function w(){return A}var T,I=(T=0,function(){return++T});function C(){return I()+Math.random().toString(16).substr(2)}function S(e){return e?(e^(window&&window.crypto&&window.crypto.getRandomValues?crypto.getRandomValues(new Uint8Array(1))[0]%16:16*Math.random())>>e/4).toString(16):([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,S)}function B(e,t){return t?.[e]||""}function O(e){let t="";for(var n in e)e.hasOwnProperty(n)&&(t+=n+"="+encodeURIComponent(e[n])+"&");return t=t.replace(/&$/,""),t}function R(e){return e&&Object.getOwnPropertyNames(e).length>0?Object.keys(e).map((t=>`${t}=${encodeURIComponent(e[t])}`)).join("&"):""}function U(e){return"string"==typeof e?e.split(/\s*,\s*/).map((e=>e.match(/^(\d+)x(\d+)$/i))).filter((e=>e)).map((e=>{let[t,n,r]=e;return[parseInt(n,10),parseInt(r,10)]})):Array.isArray(e)?x(e)?[e]:e.filter(x):[]}function k(e){return U(e).map(D)}function D(e){return e[0]+"x"+e[1]}function _(e){if(x(e))return D(e)}function $(e){return{w:e[0],h:e[1]}}function q(e){if(x(e))return $(e)}function x(e){return(0,a.cy)(e)&&2===e.length&&!isNaN(e[0])&&!isNaN(e[1])}function W(){return window.top}function j(){return window.self}function N(){return window.location}function P(){return document}function M(){try{if(E.getWindowTop().location.href)return!0}catch(e){return!1}}function F(){J()&&l&&console.log.apply(console,V(arguments,"MESSAGE:"))}function G(){J()&&u&&console.info.apply(console,V(arguments,"INFO:"))}function L(){J()&&g&&console.warn.apply(console,V(arguments,"WARNING:")),b(i.qY.AUCTION_DEBUG,{type:"WARNING",arguments})}function z(){J()&&f&&console.error.apply(console,V(arguments,"ERROR:")),b(i.qY.AUCTION_DEBUG,{type:"ERROR",arguments})}function H(e){function t(t){return function(){for(var n=arguments.length,r=new Array(n),i=0;i<n;i++)r[i]=arguments[i];t(e,...r)}}return{logError:t(z),logWarn:t(L),logMessage:t(F),logInfo:t(G)}}function V(e,t){e=[].slice.call(e);const n=r.$W.getCurrentBidder();return t&&e.unshift(t),n&&e.unshift(i("#aaa")),e.unshift(i("#3b88c3")),e.unshift("%cPrebid"+(n?`%c${n}`:"")),e;function i(e){return`display: inline-block; color: #fff; background: ${e}; padding: 1px 4px; border-radius: 3px;`}}function Q(){return l}function J(){return!!r.$W.getConfig("debug")}const K=(()=>{const e={border:"0px",hspace:"0",vspace:"0",marginWidth:"0",marginHeight:"0",scrolling:"no",frameBorder:"0",allowtransparency:"true"};return function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const i=t.createElement("iframe");return Object.assign(i,Object.assign({},e,n)),Object.assign(i.style,r),i}})();function Y(){return K(document,{id:C(),width:0,height:0,src:"about:blank"},{display:"none",height:"0px",width:"0px",border:"0px"})}function X(e){return Ge(N().search)[e]||""}function Z(e){return!e||((0,a.cy)(e)||(0,a.O8)(e)?!(e.length>0):Object.keys(e).length<=0)}function ee(e){return(0,a.O8)(e)&&(!e||0===e.length)}function te(e,t){if((0,a.fp)(e?.forEach))return e.forEach(t,this);Object.entries(e||{}).forEach((e=>{let[n,r]=e;return t.call(this,r,n)}))}function ne(e,t){return(0,a.fp)(e?.includes)&&e.includes(t)}function re(e,t){return(0,a.fp)(e?.map)?e.map(t):Object.entries(e||{}).map((n=>{let[r,i]=n;return t(i,r,e)}))}function ie(e,t,n,r){let i;t=t||document,i=n?t.getElementsByTagName(n):t.getElementsByTagName("head");try{if(i=i.length?i:t.getElementsByTagName("body"),i.length){i=i[0];const t=r?null:i.firstChild;return i.insertBefore(e,t)}}catch(e){}}function oe(e,t){let n=null;return new o.U9((r=>{const i=function(){e.removeEventListener("load",i),e.removeEventListener("error",i),null!=n&&window.clearTimeout(n),r()};e.addEventListener("load",i),e.addEventListener("error",i),null!=t&&(n=window.setTimeout(i,t))}))}function se(e,t,n){const r=new Image;t&&E.isFn(t)&&oe(r,n).then(t),r.src=e}function ae(e){if(!e)return;const t=Y();var n;E.insertElement(t,document,"body"),(n=t.contentWindow.document).open(),n.write(e),n.close()}function de(e,t,n){const r=E.createTrackPixelIframeHtml(e,!1,"allow-scripts allow-same-origin"),i=document.createElement("div");i.innerHTML=r;const o=i.firstChild;t&&E.isFn(t)&&oe(o,n).then(t),E.insertElement(o,document,"html",!0)}function ce(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:encodeURI;if(!e)return"";let n='<div style="position:absolute;left:0px;top:0px;visibility:hidden;">';return n+='<img src="'+t(e)+'"></div>',n}function le(e){return Array.from(e.matchAll(/\$({[^}]+})/g)).map((e=>e[1])).reduce(((e,t)=>e.replace("$"+encodeURIComponent(t),"$"+t)),encodeURI(e))}function ue(e){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";return e?((!(arguments.length>1&&void 0!==arguments[1])||arguments[1])&&(e=encodeURI(e)),t&&(t=`sandbox="${t}"`),`<iframe ${t} id="${C()}"\n frameborder="0"\n allowtransparency="true"\n marginheight="0" marginwidth="0"\n width="0" hspace="0" vspace="0" height="0"\n style="height:0px;width:0px;display:none;"\n scrolling="no"\n src="${e}">\n </iframe>`):""}function ge(e,t,n){return n.indexOf(e)===t}function fe(e,t){return e.concat(t)}function pe(e,t){if(e)return t.flatMap((e=>e.bids)).find((t=>["bidId","adId","bid_id"].some((n=>t[n]===e))))}function me(e,t){return e[t]}function he(e){return e.map((e=>e.bids.map((e=>e.bidder)).reduce(fe,[]))).reduce(fe,[]).filter((e=>void 0!==e)).filter(ge)}function be(){if(window.googletag&&(0,a.fp)(window.googletag.pubads)&&(0,a.fp)(window.googletag.pubads().getSlots))return!0}function ye(){if(window.apntag&&(0,a.fp)(window.apntag.getTag))return!0}const ve=(e,t)=>t.cpm-e.cpm;function Ee(e){let t=e.length;for(;t>0;){const n=Math.floor(Math.random()*t);t--;const r=e[t];e[t]=e[n],e[n]=r}return e}function Ae(){try{return E.getWindowSelf()!==E.getWindowTop()}catch(e){return!0}}function we(){if(!Ae())return!1;const e=E.getWindowSelf();return!(!e.$sf||!e.$sf.ext)}function Te(){try{const e=j();return"function"==typeof e.$sf.ext.geom?e.$sf.ext.geom():void 0}catch(e){return void z("Error getting SafeFrame geometry",e)}}function Ie(){return/^((?!chrome|android|crios|fxios).)*safari/i.test(navigator.userAgent)}function Ce(e,t){if(e)return Object.entries(t).reduce(((e,t)=>{let[n,r]=t;return e.replace(new RegExp("\\$\\{"+n+"\\}","g"),r||"")}),e)}function Se(e,t){return Ce(e,{AUCTION_PRICE:t})}function Be(e,t){if(e&&t&&"string"==typeof t)return e.replace(/\${CLICKTHROUGH}/g,t)}function Oe(){return(new Date).getTime()}function Re(){return window.performance&&window.performance.now&&window.performance.now()||0}function Ue(e){let t=-1;const n=(e=e||j()).performance;if(e.performance?.timing&&e.performance.timing.navigationStart>0){const e=n.timing.domLoading-n.timing.navigationStart;e>0&&(t=e)}return t}function ke(){return!1!==r.$W.getConfig("deviceAccess")}function De(){if(window.navigator.cookieEnabled||document.cookie.length)return!0}function _e(e,t){if(t<1)throw new Error(`numRequiredCalls must be a positive number. Got ${t}`);let n=0;return function(){n++,n===t&&e.apply(this,arguments)}}function $e(e,t){return e.reduce((function(e,n){return(e[n[t]]=e[n[t]]||[]).push(n),e}),{})}function qe(e){const t=["banner","native","video"],n=["instream","outstream","adpod"];return!!Object.keys(e).every((e=>t.includes(e)))&&(!e.video||!e.video.context||n.includes(e.video.context))}function xe(e,t,n){return e.filter((e=>e.code===t)).flatMap((e=>e.bids)).filter((e=>e.bidder===n)).map((e=>e.params||{}))}function We(){return"1"===navigator.doNotTrack||"1"===window.doNotTrack||"1"===navigator.msDoNotTrack||"yes"===navigator.doNotTrack}const je=(e,t)=>e.getAdUnitPath()===t||e.getSlotElementId()===t;function Ne(e){return t=>je(e,t)}function Pe(e,t){const n=Object.keys(e.mediaTypes||{banner:"banner"}).join(", ");return`\n ${e.code} is a ${n} ad unit\n containing bidders that don't support ${n}: ${t}.\n This bidder won't fetch demand.\n `}function Me(e){return Object.fromEntries(Object.entries(e).filter((e=>{let[t,n]=e;return void 0!==n})))}function Fe(e,t){return"object"!=typeof e?{}:t.reduce(((n,r,i)=>{if("function"==typeof r)return n;let o=r;const s=r.match(/^(.+?)\sas\s(.+?)$/i);s&&(r=s[1],o=s[2]);let a=e[r];return"function"==typeof t[i+1]&&(a=t[i+1](a,n)),void 0!==a&&(n[o]=a),n}),{})}function Ge(e){return e?e.replace(/^\?/,"").split("&").reduce(((e,t)=>{let[n,r]=t.split("=");return/\[\]$/.test(n)?(n=n.replace("[]",""),e[n]=e[n]||[],e[n].push(r)):e[n]=r||"",e}),{}):{}}function Le(e){return Object.keys(e).map((t=>Array.isArray(e[t])?e[t].map((e=>`${t}[]=${e}`)).join("&"):`${t}=${e[t]}`)).join("&")}function ze(e,t){const n=document.createElement("a");t&&"noDecodeWholeURL"in t&&t.noDecodeWholeURL?n.href=e:n.href=decodeURIComponent(e);const r=t&&"decodeSearchAsString"in t&&t.decodeSearchAsString;return{href:n.href,protocol:(n.protocol||"").replace(/:$/,""),hostname:n.hostname,port:+n.port,pathname:n.pathname.replace(/^(?!\/)/,"/"),search:r?n.search:E.parseQS(n.search||""),hash:(n.hash||"").replace(/^#/,""),host:n.host||window.location.host}}function He(e){return(e.protocol||"http")+"://"+(e.host||e.hostname+(e.port?`:${e.port}`:""))+(e.pathname||"")+(e.search?`?${E.formatQS(e.search||"")}`:"")+(e.hash?`#${e.hash}`:"")}function Ve(e,t){let{checkTypes:n=!1}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(e===t)return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;const r=Array.isArray(e),i=Array.isArray(t);if(r&&i){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(!Ve(e[r],t[r],{checkTypes:n}))return!1;return!0}if(r||i)return!1;if(n&&e.constructor!==t.constructor)return!1;const o=Object.keys(e),s=Object.keys(t);if(o.length!==s.length)return!1;for(const r of o){if(!Object.prototype.hasOwnProperty.call(t,r))return!1;if(!Ve(e[r],t[r],{checkTypes:n}))return!1}return!0}function Qe(e){for(let t=0;t<(arguments.length<=1?0:arguments.length-1);t++){const n=t+1<1||arguments.length<=t+1?void 0:arguments[t+1];(0,a.Qd)(n)&&Je(e,n)}return e}function Je(e,t){if(!(0,a.Qd)(e)||!(0,a.Qd)(t))return;const n=Object.keys(t);for(let r=0;r<n.length;r++){const i=n[r];if("__proto__"===i||"constructor"===i)continue;const o=t[i];(0,a.Qd)(o)?(e[i]||(e[i]={}),Je(e[i],o)):Array.isArray(o)?Array.isArray(e[i])?o.forEach((t=>{e[i].some((e=>Ve(e,t)))||e[i].push(t)})):e[i]=[...o]:e[i]=o}}function Ke(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;const n=function(e,t){if((0,a.fp)(Math.imul))return Math.imul(e,t);var n=(4194303&e)*(t|=0);return 4290772992&e&&(n+=(4290772992&e)*t|0),0|n};let r=3735928559^t,i=1103547991^t;for(let t,o=0;o<e.length;o++)t=e.charCodeAt(o),r=n(r^t,2654435761),i=n(i^t,1597334677);return r=n(r^r>>>16,2246822507)^n(i^i>>>13,3266489909),i=n(i^i>>>16,2246822507)^n(r^r>>>13,3266489909),(4294967296*(2097151&i)+(r>>>0)).toString()}function Ye(e){try{return JSON.parse(e)}catch(e){}}function Xe(e){try{return JSON.stringify(e)}catch(e){return""}}function Ze(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(e){return e};const n=new Map,r=function(){const r=t.apply(this,arguments);return n.has(r)||n.set(r,e.apply(this,arguments)),n.get(r)};return r.clear=n.clear.bind(n),r}function et(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"d";if(["m","d"].indexOf(t)<0)return Date.now();const n=e/("m"===t?1440:1);return Date.now()+(e&&e>0?864e5*n:0)}function tt(e){return Object.keys(e).map((t=>({[t]:e[t]})))}function nt(e,t){Object.entries(t).forEach((t=>{let[n,r]=t;return e.setAttribute(n,r)}))}function rt(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e=>e,r=0,i=e.length&&e.length-1;const o=n(t);for(;i-r>1;){const t=r+Math.round((i-r)/2);o>n(e[t])?r=t:i=t}for(;e.length>r&&o>n(e[r]);)r++;return r}function it(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new Set;for(const n in e){const r=e[n],i=typeof r;if(void 0===r||"function"===i||"symbol"===i||r instanceof RegExp||r instanceof Map||r instanceof Set||r instanceof Date||null!==r&&"object"===i&&r.hasOwnProperty("toJSON"))return!0;if(null!==r&&"object"===i&&r.constructor===Object){if(t.has(r))return!0;if(t.add(r),it(r,t))return!0}}return!1}function ot(e,t){for(let n,r=0;r<e.length;r++)if(n=(0,s.A)(e[r],t),n)return n}function st(e){let t=null;try{const n=/[-\w]+\.([-\w]+|[-\w]{3,}|[-\w]{1,3}\.[-\w]{2})$/i.exec(e);if(null!=n&&n.length>0){t=n[0];for(let e=1;e<n.length;e++)n[e].length>t.length&&(t=n[e])}}catch(e){t=null}return t}function at(e,t){(0,a.O8)(e.nurl)&&""!==e.nurl&&(e.nurl=e.nurl.replace(/\${AUCTION_PRICE}/,t),se(e.nurl))}const dt=function(){let e;return function(){if(void 0!==e)return e;try{void 0===window.CompressionStream?e=!1:(new window.CompressionStream("gzip"),e=!0)}catch(t){e=!1}return e}}();async function ct(e){"string"!=typeof e&&(e=JSON.stringify(e));const t=(new TextEncoder).encode(e),n=new Blob([t]).stream().pipeThrough(new window.CompressionStream("gzip")),r=await new Response(n).blob(),i=await r.arrayBuffer();return new Uint8Array(i)}},77459:(e,t,n)=>{n.d(t,{y:()=>s});var r=n(63006),i=n(77156),o=n(10466);function s(e,t,n){let{index:s=r.n.index,bs:a=i.u}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};n=n||s.getBidRequest(t);const d=t?.adapterCode,c=t?.bidderCode||n?.bidder,l=a.get(t?.adapterCode,"adjustAlternateBids"),u=a.getOwn(c,"bidCpmAdjustment")||a.get(l?d:c,"bidCpmAdjustment");if(u&&"function"==typeof u)try{return u(e,Object.assign({},t),n)}catch(e){(0,o.logError)("Error during bid adjustment",e)}return e}},93448:(e,t,n)=>{function r(e){return!e?.gdprApplies||!0===e?.vendorData?.purpose?.consents?.[1]}n.d(t,{C:()=>r})},26665:(e,t,n)=>{n.d(t,{Et:()=>h,Fq:()=>v,Go:()=>i,KG:()=>g,Lm:()=>y,O8:()=>p,Qd:()=>b,SH:()=>o,Uu:()=>E,cy:()=>m,fp:()=>f});var r=n(91490);function i(e){return(0,r.Q)(e)||{}}function o(e,t){return t.filter((t=>e[t])).reduce(((t,n)=>Object.assign(t,{[n]:e[n]})),{})}const s="String",a="Function",d="Number",c="Object",l="Boolean",u=Object.prototype.toString;function g(e,t){return u.call(e)==="[object "+t+"]"}function f(e){return g(e,a)}function p(e){return g(e,s)}const m=Array.isArray.bind(Array);function h(e){return g(e,d)}function b(e){return g(e,c)}function y(e){return g(e,l)}const v=Number.isInteger.bind(Number);function E(e,t){return m(e)&&(!t||e.length===t)&&e.every((e=>v(e)))}},37841:(e,t,n)=>{n.d(t,{Ak:()=>h,BO:()=>f,K7:()=>p,NL:()=>b});var r=n(91933);const i="performanceMetrics",o=window.performance&&window.performance.now?()=>window.performance.now():()=>Date.now(),s=new WeakMap;function a(e,t,n){return function(){t&&t();try{for(var r=arguments.length,i=new Array(r),o=0;o<r;o++)i[o]=arguments[o];return e.apply(this,i)}finally{n&&n()}}}function d(){let{now:e=o,mkNode:t=l,mkTimer:n=c,mkRenamer:r=(e=>e),nodes:i=s}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(){return function o(s){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e=>({forEach(t){t(e)}});a=r(a);const d=(c="timestamps",function(e){return s.dfWalk({visit(t,n){const r=n[c];if(r.hasOwnProperty(e))return r[e]}})});var c;function l(e,t){const n=a(e);s.dfWalk({follow:(e,t)=>t.propagate&&(!e||!e.stopPropagation),visit(e,r){n.forEach((n=>{null==e?r.metrics[n]=t:(r.groups.hasOwnProperty(n)||(r.groups[n]=[]),r.groups[n].push(t))}))}})}function u(t){return n(e,(e=>l(t,e)))}function g(){let e={};return s.dfWalk({visit(t,n){e=Object.assign({},!t||t.includeGroups?n.groups:null,n.metrics,e)}}),e}const f={startTiming:u,measureTime:function(e,t){return u(e).stopAfter(t)()},measureHookTime:function(e,t,n){const r=u(e);return n(function(e){const t=r.stopBefore(e);return t.bail=e.bail&&r.stopBefore(e.bail),t.stopTiming=r,t.untimed=e,t}(t))},checkpoint:function(t){s.timestamps[t]=e()},timeSince:function(t,n){const r=d(t),i=null!=r?e()-r:null;return null!=n&&l(n,i),i},timeBetween:function(e,t,n){const r=d(e),i=d(t),o=null!=r&&null!=i?i-r:null;return null!=n&&l(n,o),o},setMetric:l,getMetrics:g,fork:function(){let{propagate:e=!0,stopPropagation:n=!1,includeGroups:r=!1}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return o(t([[s,{propagate:e,stopPropagation:n,includeGroups:r}]]),a)},join:function(e){let{propagate:t=!0,stopPropagation:n=!1,includeGroups:r=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const o=i.get(e);null!=o&&o.addParent(s,{propagate:t,stopPropagation:n,includeGroups:r})},newMetrics:function(){return o(s.newSibling(),a)},renameWith:function(e){return o(s,e)},toJSON:()=>g()};return i.set(f,s),f}(t([]))}}function c(e,t){const n=e();let r=!1;function i(){r||(t(e()-n),r=!0)}return i.stopBefore=e=>a(e,i),i.stopAfter=e=>a(e,null,i),i}function l(e){return{metrics:{},timestamps:{},groups:{},addParent(t,n){e.push([t,n])},newSibling:()=>l(e.slice()),dfWalk(){let t,{visit:n,follow:r=(()=>!0),visited:i=new Set,inEdge:o}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!i.has(this)){if(i.add(this),t=n(o,this),null!=t)return t;for(const[s,a]of e)if(r(o,a)&&(t=s.dfWalk({visit:n,follow:r,visited:i,inEdge:a}),null!=t))return t}}}}const u=(()=>{const e=function(){},t=()=>({}),n={forEach:e},r=()=>null;r.stopBefore=e=>e,r.stopAfter=e=>e;const i=Object.defineProperties({dfWalk:e,newSibling:()=>i,addParent:e},Object.fromEntries(["metrics","timestamps","groups"].map((e=>[e,{get:t}]))));return d({now:()=>0,mkNode:()=>i,mkRenamer:()=>()=>n,mkTimer:()=>r,nodes:{get:e,set:e}})()})();let g=!0;function f(e){return g&&e||u}r.$W.getConfig(i,(e=>{g=!!e[i]}));const p=(()=>{const e=d();return function(){return g?e():u}})();function m(e,t){return function(n,r){var i=this;return function(o){for(var s=arguments.length,a=new Array(s>1?s-1:0),d=1;d<s;d++)a[d-1]=arguments[d];return f(t.apply(i,a)).measureHookTime(e+n,o,(e=>r.call(i,e,...a)))}}}const h=m("requestBids.",(e=>e.metrics)),b=m("addBidResponse.",((e,t)=>t.metrics))},13064:(e,t,n)=>{n.d(t,{U9:()=>o,cb:()=>s,v6:()=>a});var r=n(51748);const i=(0,r.m)().setTimeout??setTimeout,o=(0,r.m)().Promise??Promise;function s(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return new o((t=>{i(t,e)}))}function a(){let e,t,{promiseFactory:n=(e=>new o(e))}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};function r(e){return t=>e(t)}return{promise:n(((n,r)=>{e=n,t=r})),resolve:r(e),reject:r(t)}}},79236:(e,t,n)=>{function r(e,t){return e===t?0:e<t?-1:1}function i(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:e=>e;return(t,n)=>r(e(t),e(n))}function o(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:r;return(t,n)=>-e(t,n)||0}function s(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(e,n){for(const r of t){const t=r(e,n);if(0!==t)return t}return 0}}function a(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:r;return(t,n)=>e(n,t)<0?n:t}function d(){return a(o(arguments.length>0&&void 0!==arguments[0]?arguments[0]:r))}n.d(t,{Bp:()=>a,Bq:()=>g,NV:()=>i,Ph:()=>d,Vk:()=>u});const c=i((e=>e.cpm)),l=i((e=>e.responseTimestamp)),u=d(s(c,o(i((e=>e.timeToRespond))))),g=d(s(c,o(l)));d(s(c,l))},10939:(e,t,n)=>{n.d(t,{H:()=>l});var r=n(13064),i=n(10466);let o=null,s=0,a=[];function d(){document.hidden?o=Date.now():(s+=Date.now()-(o??0),o=null,a.forEach((e=>{let{callback:t,startTime:n,setTimerId:r}=e;return r(c(t,s-n)())})),a=[])}function c(e,t){const n=s;let r=setTimeout((()=>{s===n&&null==o?e():null!=o?a.push({callback:e,startTime:n,setTimerId(e){r=e}}):r=c(e,s-n)()}),t);return()=>r}function l(){let{startTime:e=i.timestamp,ttl:t=(()=>null),monotonic:n=!1,slack:o=5e3}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const s=new Map,a=[],d=[],l=n?e=>d.push(e):e=>d.splice((0,i.binarySearch)(d,e,(e=>e.expiry)),0,e);let u,g;function f(){if(g&&clearTimeout(g),d.length>0){const e=(0,i.timestamp)();u=Math.max(e,d[0].expiry+o),g=c((()=>{const e=(0,i.timestamp)();let t=0;for(const n of d){if(n.expiry>e)break;a.forEach((e=>{try{e(n.item)}catch(e){(0,i.logError)(e)}})),s.delete(n.item),t++}d.splice(0,t),g=null,f()}),u-e)}else g=null}function p(n){const i={},s=m;let a;const[d,c]=Object.entries({start:e,delta:t}).map((e=>{let t,[d,c]=e;return function(){const e=t={};r.U9.resolve(c(n)).then((n=>{e===t&&(i[d]=n,s===m&&null!=i.start&&null!=i.delta&&(a=i.start+i.delta,l(p),(null==g||u>a+o)&&f()))}))}})),p={item:n,refresh:c,get expiry(){return a}};return d(),c(),p}let m={};return{[Symbol.iterator]:()=>s.keys(),add(e){!s.has(e)&&s.set(e,p(e))},clear(){d.length=0,f(),s.clear(),m={}},toArray:()=>Array.from(s.keys()),refresh(){d.length=0,f();for(const e of s.values())e.refresh()},onExpiry:e=>(a.push(e),()=>{const t=a.indexOf(e);t>=0&&a.splice(t,1)})}}document.addEventListener("visibilitychange",d)},36220:(e,t,n)=>{n.d(t,{E2:()=>m,H6:()=>d,V0:()=>g,Zy:()=>u,aP:()=>f,mn:()=>c,vk:()=>p});var r=n(26665),i=n(10466),o=n(91933),s=n(32592),a=n(63006);const d="outstream",c="instream",l=[["mimes",e=>Array.isArray(e)&&e.length>0&&e.every((e=>"string"==typeof e))],["minduration",r.Fq],["maxduration",r.Fq],["startdelay",r.Fq],["maxseq",r.Fq],["poddur",r.Fq],["protocols",r.Uu],["w",r.Fq],["h",r.Fq],["podid",r.O8],["podseq",r.Fq],["rqddurs",r.Uu],["placement",r.Fq],["plcmt",r.Fq],["linearity",r.Fq],["skip",e=>[1,0].includes(e)],["skipmin",r.Fq],["skipafter",r.Fq],["sequence",r.Fq],["slotinpod",r.Fq],["mincpmpersec",r.Et],["battr",r.Uu],["maxextended",r.Fq],["minbitrate",r.Fq],["maxbitrate",r.Fq],["boxingallowed",r.Fq],["playbackmethod",r.Uu],["playbackend",r.Fq],["delivery",r.Uu],["pos",r.Fq],["api",r.Uu],["companiontype",r.Uu],["poddedupe",r.Uu]],u=new Map(l);function g(e){const t=e?.mediaTypes?.video;if(null!=t){null==t.plcmt&&(t.context===d||[2,3,4].includes(t.placement)?t.plcmt=4:t.playbackmethod?.some?.((e=>[2,6].includes(e)))&&(t.plcmt=2));const n=(0,r.Uu)(t.playerSize,2)?t.playerSize:Array.isArray(t.playerSize)&&(0,r.Uu)(t.playerSize[0])?t.playerSize[0]:null,o=(0,r.Et)(t.w)&&(0,r.Et)(t.h)?[t.w,t.h]:null;let s=!1;null==n?null!=o&&(null!=t.playerSize?s=!0:t.playerSize=[o]):["w","h"].forEach(((e,r)=>{null!=t[e]&&t[e]!==n[r]?s=!0:t[e]=n[r]})),s&&(0,i.logWarn)(`Ad unit "${e.code} has conflicting playerSize and w/h`,e)}}function f(e,t){const n=e?.mediaTypes?.video;(0,r.Qd)(n)?null!=n&&Object.entries(n).forEach((r=>{let[o,s]=r;if(!u.has(o))return;u.get(o)(s)||("function"==typeof t?t(o,s,e):(delete n[o],(0,i.logWarn)(`Invalid prop in adUnit "${e.code}": Invalid value for mediaTypes.video.${o} ORTB property. The property has been removed.`)))})):(0,i.logWarn)("validateOrtbVideoFields: videoParams must be an object.")}function p(e){let{index:t=a.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=t.getMediaTypes(e)?.video,r=n&&n?.context,i=n&&n?.useCacheKey,o=t.getAdUnit(e);return m(e,o,n,r,i)}const m=(0,s.A_)("sync",(function(e,t,n,r,s){if(n&&(s||r!==d)){const{url:t,useLocal:n}=o.$W.getConfig("cache")||{};return t||n||!e.vastXml||e.vastUrl?!(!e.vastUrl&&!e.vastXml):((0,i.logError)('\n This bid contains only vastXml and will not work when a prebid cache url is not specified.\n Try enabling either prebid cache with pbjs.setConfig({ cache: {url: "..."} });\n or local cache with pbjs.setConfig({ cache: { useLocal: true }});\n '),!1)}return!(r===d&&!s)||!!(e.renderer||t&&t.renderer||n.renderer)}),"checkVideoBidSetup")},51640:(e,t,n)=>{n.d(t,{M_:()=>u,Sb:()=>g,X5:()=>v,kh:()=>c});var r=n(62201),i=n(91933),o=n(63006),s=n(10466),a=n(71186);const d=15,c=new Map;function l(e){return e.vastXml?e.vastXml:(t=e.vastUrl,n=e.vastImpUrl,`<VAST version="3.0">\n <Ad>\n <Wrapper>\n <AdSystem>prebid.org wrapper</AdSystem>\n <VASTAdTagURI><![CDATA[${t}]]></VASTAdTagURI>\n ${(n=n&&(Array.isArray(n)?n:[n]))?n.map((e=>`<Impression><![CDATA[${e}]]></Impression>`)).join(""):""}\n <Creatives></Creatives>\n </Wrapper>\n </Ad>\n </VAST>`);var t,n}function u(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:r.g4;const s={puts:e.map((e=>function(e){let{index:t=o.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=l(e),r=t.getAuction(e),s={type:"xml",value:n,ttlseconds:Number(e.ttl)+d};return i.$W.getConfig("cache.vasttrack")&&(s.bidder=e.bidder,s.bidid=e.requestId,s.aid=e.auctionId),null!=r&&(s.timestamp=r.getAuctionStart()),"string"==typeof e.customCacheKey&&""!==e.customCacheKey&&(s.key=e.customCacheKey),s}(e)))};n(i.$W.getConfig("cache.timeout"))(i.$W.getConfig("cache.url"),function(e){return{success:function(t){let n;try{n=JSON.parse(t).responses}catch(t){return void e(t,[])}n?e(null,n):e(new Error("The cache server didn't respond with a responses property."),[])},error:function(t,n){e(new Error(`Error storing video ad in the cache: ${t}: ${JSON.stringify(n)}`),[])}}}(t),JSON.stringify(s),{contentType:"text/plain",withCredentials:!0})}const g=e=>{const t=l(e),n=URL.createObjectURL(new Blob([t],{type:"text/xml"}));f(e,n),c.set(e.videoCacheKey,n)},f=(e,t,n)=>{e.videoCacheKey=n||(0,s.generateUUID)(),e.vastUrl||(e.vastUrl=t)},p={store:u};function m(e){const t=e.map((e=>e.bidResponse));p.store(t,(function(n,r){var o;n?(o=n,(0,s.logError)(`Failed to save to the video cache: ${o}. Video bids will be discarded:`,t)):e.length!==r.length?(0,s.logError)(`expected ${e.length} cache IDs, got ${r.length} instead`):r.forEach(((t,n)=>{const{auctionInstance:r,bidResponse:o,afterBidAdded:d}=e[n];var c;""===t.uuid?(0,s.logWarn)("Supplied video cache key was already in use by Prebid Cache; caching attempt was rejected. Video bid must be discarded."):(f(o,(c=t.uuid,`${i.$W.getConfig("cache.url")}?uuid=${c}`),t.uuid),(0,a.v8)(r,o),d())}))}))}let h,b,y;i.$W.getConfig("cache",(e=>{let{cache:t}=e;h="number"==typeof t.batchSize&&t.batchSize>0?t.batchSize:1,b="number"==typeof t.batchTimeout&&t.batchTimeout>0?t.batchTimeout:0,t.useLocal&&!y&&(y=o.n.onExpiry((e=>{e.getBidsReceived().forEach((e=>{const t=c.get(e.videoCacheKey);t&&t.startsWith("blob")&&URL.revokeObjectURL(t),c.delete(e.videoCacheKey)}))})))}));const v=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:setTimeout,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:m,n=[[]],r=!1;const i=e=>e();return function(o,s,a){const d=b>0?e:i;n[n.length-1].length>=h&&n.push([]),n[n.length-1].push({auctionInstance:o,bidResponse:s,afterBidAdded:a}),r||(r=!0,d((()=>{n.forEach(t),n=[[]],r=!1}),b))}}()}}]);
|