/*HTLv3*/(()=>{var e={128:e=>{a.SYNC=1,a.ASYNC=2,a.QUEUE=4;var t="fun-hooks",n=Object.freeze({useProxy:!0,ready:0}),r=new WeakMap,i="2,1,0"===[1].reduce(((e,t,n)=>[e,t,n]),2).toString()?Array.prototype.reduce:function(e,t){var n,r=Object(this),i=r.length>>>0,o=0;if(t)n=t;else{for(;o<i&&!(o in r);)o++;n=r[o++]}for(;o<i;)o in r&&(n=e(n,r[o],o,r)),o++;return n};function o(e,t){return Array.prototype.slice.call(e,t)}var s=Object.assign||function(e){return i.call(o(arguments,1),((e,t)=>(t&&Object.keys(t).forEach((n=>{e[n]=t[n]})),e)),e)};function a(e){var d,c={},l=[];function u(e,t){return"function"==typeof e?m.call(null,"sync",e,t):"string"==typeof e&&"function"==typeof t?m.apply(null,arguments):"object"==typeof e?p.apply(null,arguments):void 0}function p(e,t,n){var r=!0;void 0===t&&(t=Object.getOwnPropertyNames(e),r=!1);var i={},o=["constructor"];do{(t=t.filter((t=>!("function"!=typeof e[t]||-1!==o.indexOf(t)||t.match(/^_/))))).forEach((t=>{var r=t.split(":"),o=r[0],s=r[1]||"sync";if(!i[o]){var a=e[o];i[o]=e[o]=m(s,a,n?[n,o]:void 0)}})),e=Object.getPrototypeOf(e)}while(r&&e);return i}function g(e){var n=Array.isArray(e)?e:e.split(".");return i.call(n,((r,i,o)=>{var s=r[i],a=!1;return s||(o===n.length-1?(d||l.push((()=>{a||console.warn(t+": referenced '"+e+"' but it was never created")})),r[i]=f((e=>{r[i]=e,a=!0}))):r[i]={})}),c)}function f(e){var t=[],n=[],i=()=>{},o={before:function(e,n){return d.call(this,t,"before",e,n)},after:function(e,t){return d.call(this,n,"after",e,t)},getHooks:function(e){var r=t.concat(n);"object"==typeof e&&(r=r.filter((t=>Object.keys(e).every((n=>t[n]===e[n])))));try{s(r,{remove:function(){return r.forEach((e=>{e.remove()})),this}})}catch(e){console.error("error adding `remove` to array, did you modify Array.prototype?")}return r},removeAll:function(){return this.getHooks().remove()}},a={install:function(r,o,s){this.type=r,i=s,s(t,n),e&&e(o)}};return r.set(o.after,a),o;function d(e,r,o,s){var a={hook:o,type:r,priority:s||10,remove:()=>{var r=e.indexOf(a);-1!==r&&(e.splice(r,1),i(t,n))}};return e.push(a),e.sort(((e,t)=>t.priority-e.priority)),i(t,n),this}}function m(n,i,c){var u=i.after&&r.get(i.after);if(u){if(u.type!==n)throw t+": recreated hookable with different type";return i}var p,m,h=c?g(c):f(),b={get:function(e,t){return h[t]||Reflect.get.apply(Reflect,arguments)}};return d||l.push(y),e.useProxy&&"function"==typeof Proxy&&Proxy.revocable?m=new Proxy(i,b):(m=function(){return b.apply?b.apply(i,this,o(arguments)):i.apply(this,arguments)},s(m,h)),r.get(m.after).install(n,m,((e,t)=>{var r,i=[];function s(e){i.push(e.hook)}e.length||t.length?(e.forEach(s),r=i.push(void 0)-1,t.forEach(s),p=(e,t,s)=>{var a,d=0,c="async"===n&&"function"==typeof s[s.length-1]&&s.pop();function l(e){"sync"===n?a=e:c&&c.apply(null,arguments)}function u(e){if(i[d]){var r=o(arguments);return u.bail=l,r.unshift(u),i[d++].apply(t,r)}"sync"===n?a=e:c&&c.apply(null,arguments)}return i[r]=function(){var r=o(arguments,1);"async"===n&&c&&(delete u.bail,r.push(u));var i=e.apply(t,r);"sync"===n&&u(i)},u.apply(null,s),a}):p=void 0,y()})),m;function y(){!d&&("sync"!==n||e.ready&a.SYNC)&&("async"!==n||e.ready&a.ASYNC)?"sync"!==n&&e.ready&a.QUEUE?b.apply=function(){var e=arguments;l.push((()=>{m.apply(e[1],e[2])}))}:b.apply=()=>{throw t+": hooked function not ready"}:b.apply=p}}return(e=s({},n,e)).ready?u.ready=()=>{d=!0,(e=>{for(var t;t=e.shift();)t()})(l)}:d=!0,u.get=g,u}e.exports=a},855:e=>{e.exports=function e(t){var n=Array.isArray(t)?[]:{};for(var r in t){var i=t[r];n[r]=i&&"object"==typeof i?e(i):i}return n}},142:(e,t,n)=>{n.d(t,{register:()=>Te});var r=n(194),i=n(416),o=n(412),s=n(82);const a=/["'=!+#*~;^()<>[\],&]/;function d(e){return e&&a.test(e)}async function c(e,t,n){(!t||a.test(t)||/(^\d)|\s/.test(t))&&r.Rm.warn("API setTargeting: invalid key",t),n=(0,s.vD)(n),(Array.isArray(n)?n.some(d):d(n))&&r.Rm.warn("API setTargeting: key",t,"has invalid values:",n),(await e.gpt.ready).pubads().setTargeting(t,n)}async function l(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];(await e.gpt.ready).pubads().clearTargeting(...n)}function u(e){return new Proxy({},{get:(t,n)=>async function(){return(await e.gpt.ready).pubads()[n](...arguments)}})}function p(e){let{state:t}=e;if(t.gpt)return;const{wnd:n}=t;n.googletag?.apiReady||((0,s.k0)(n,t.config.modules.gpt.url||"https://securepubads.g.doubleclick.net/tag/js/gpt.js"),n.googletag||={}),n.googletag.cmd||=[],t.gpt={},t.gpt.ready=new Promise((e=>{n.googletag.cmd.push((()=>{r.Rm.info("GPT ready");const i=t.gpt.googletag=n.googletag;e(i)}))})),(0,s.BU)(t.gpt,t.gpt.ready)}async function g(e){let{state:t}=e;(await t.gpt.ready).pubads().setTargeting(`${t.config.htlPrefix}bidid`,String(t.config.buildId))}function f(e,t,n){if("requested"!==t.ad?.gpt.state)return;!n.empty&&t.elem&&(t.ad.elem=t.elem.querySelector("iframe[data-google-container-id]"));const i=t.gpt.slot;for(const e of Object.keys(t.ad.targeting))i.clearTargeting(e);t.ad.gpt.state="rendered",n.safeData={empty:n.empty},(0,r.L5)(e,t.id,n)}function m(e){let{data:t}=e;const{slot:n}=t;n.config.gpt={targeting:{},...n.config.gpt},n.safeData.gpt={config:{get adUnit(){return n.config.gpt.adUnit},set adUnit(e){n.config.gpt.adUnit=e},get targeting(){return n.config.gpt.targeting}},get slot(){return n.gpt?.slot},get adUnitPath(){return n.gpt?.adUnitPath}}}function h(e){let{state:t,data:n}=e;const{slot:r}=n;"default"===r.gpt?.mode&&r.gpt.slot&&t.gpt.googletag.destroySlots([r.gpt.slot])}function b(e){let{state:t,data:n}=e;const{networkCode:i}=t.config.modules.gpt;for(const e of n.slots){if(!e.ad||e.gptDefault)continue;if(e.gptDefault={},e.gpt)continue;let t=e.tile.config.gpt?.adUnit||e.config.gpt.adUnit;if(!t)continue;if(!t.startsWith("/")){if(!i){r.Rm.warn("GPT slot",e.id,"missing network code");continue}t=`/${i}/${t}`}const n=e.config.gpt.outOfPage||e.config.interstitial&&"INTERSTITIAL";(n||e.sizes)&&(e.gpt={mode:"default",adUnitPath:t,outOfPage:n})}}function y(e){if(!e.elemId){if(!e.elem)throw new Error(`GPT requires a DOM element ID to define slot ${e.id}`);e.elemId=e.id}return e.elemId}function v(e,t){for(const n of e.core.slots.values())if("default"===n.gpt?.mode&&n.gpt.slot===t)return n;return null}function A(e){let{state:t}=e;t.adBatch={slotIds:[],resume:(0,s.nF)((()=>(e=>{const{slotIds:t}=e.adBatch;e.adBatch.slotIds=[],(0,r.hj)(e,"ad.init",i.eo+1,t)})(t)),50)}}function I(e){const{data:t}=e;if(t.noBatch)return;const{adBatch:n}=e.state,{slotIds:r}=n;r.push(...t.slots.map((e=>{let{id:t}=e;return t}))),e.stop(),n.resume()}function w(e,t){const n=e.iab||={};let r=n[t];if(r)return r;const i=`__${t}`,o=`${i}Locator`;let s;for(let{wnd:t}=e;;t=t.parent){try{if("function"==typeof t[i]){r=t[i];break}}catch{}try{if(t.frames[o]){s=t;break}}catch{}if(t===t.top)break}return s&&(r=((e,t,n)=>{const r=`${e}Call`,i=`${e}Return`,o={};return t.addEventListener("message",(e=>{let{data:t}=e;if(!t)return;if("string"==typeof t){if(!t.includes(i))return;try{t=JSON.parse(t)}catch{return}}const n=t[i];if(n?.callId){const e=o[n.callId];delete o[n.callId],e&&e(n.returnValue,n.success)}})),(t,i,s,a)=>{const d=`htl-iab-${e}-${Math.random()}`;o[d]=s,n.postMessage({[r]:{command:t,parameter:a,version:i,callId:d}},"*")}})(i,e.wnd,s)),r&&(n[t]=r),r}const x=[[120,240],[120,600],[160,600],[250,250],[300,50],[300,75],[300,100],[300,250],[300,300],[300,600],[300,1050],[320,50],[320,100],[336,280],[400,300],[468,60],[728,90],[970,90],[970,250]];function C(e){return e.filter((e=>(0,s.Fs)(e)&&x.some((t=>{let[n,r]=t;return n===e[0]&&r===e[1]}))))}function E(e){let{state:t}=e;t.config.modules.amazon.pubId&&(0,s.k0)(t.wnd,"https://c.amazon-adsystem.com/aax2/apstag.js");const[n,r]=(0,s.v6)();t.amazon={ready:n,initDone:r}}function T(e){let{state:t,data:n}=e;if(!t.amazon)return;const{htlbid:r}=n,{modules:o}=t.config,{amazon:a}=o;if(a.pubId){((e,t,n,r,i,o,s)=>{function a(n,r){t[e]._Q.push([n,r])}t[e]||(t[e]={init:function(){a("i",arguments)},fetchBids:function(){a("f",arguments)},setDisplayBids:()=>{},targetingKeys:()=>[],dpa:function(){a("di",arguments)},rpa:function(){a("ri",arguments)},upa:function(){a("ui",arguments)},_Q:[]})})("apstag",t.wnd);const e={pubID:a.pubId,bidTimeout:o.hb.timeout,gdpr:{cmpTimeout:8e3}};null!=a.schain&&(e.schain=(0,s.T)(o.schain,a.schain)),a.deals&&(e.deals=!0),r.iab?.ready?(t.amazon.initConfig=e,t.amazon.privacyReady=r.iab.ready):k(t,e)}else t.amazon.initDone();r.aps=t.wnd.apstag,t.events.on("ad.init",S,i.PF).on("ad.init",_,i.n8).on("user.data",R)}function S(e){let{state:t,data:n}=e;if(t.hb.disabledBidders.amazon)return;const{floor:r}=t.config.modules.amazon,i=r&&{value:r,currency:"USD"};for(const e of n.slots){const{ad:t}=e;if(!(t&&e.tile.config.amazon&&e.gpt&&e.sizes))continue;const n=C(e.sizes);if(!n.length)continue;const r={slotID:e.elemId||e.elem&&(e.elemId=e.id)||e.id,slotName:e.gpt.adUnitPath,sizes:n};i&&(r.floor=i);const o=e.config.amazon?.params;o&&(r.slotParams=o),t.amazon=r,t.hb={}}}async function _(e){let{state:t,data:n}=e;const r=[],i={};for(const e of n.slots){const{ad:t}=e;t?.amazon&&(r.push(t.amazon),i[t.amazon.slotID]=e)}if(!r.length)return;const{initConfig:o}=t.amazon;o?(delete t.amazon.initConfig,await t.amazon.privacyReady,await k(t,o)):await t.amazon.ready;const s=await new Promise((e=>{t.wnd.apstag.fetchBids({slots:r},e)}));for(const e of s){const{ad:t}=i[e.slotID];if(!t)continue;const{targeting:n}=e;if(n)(n.amzniid||n.amzniid_sp)&&Object.assign(t.targeting,n);else if(e.amzniid)for(const[n,r]of Object.entries(e))n.startsWith("amzn")&&(t.targeting[n]=r)}}async function k(e,t){let n;const i=w(e,"uspapi");if(i){try{n=(await(0,s.Z3)((e=>(t,n,r)=>new Promise(((i,o)=>{e(t,n,((e,t)=>(t?i:o)(e)),r)})))(i)("getUSPData",1),500)).uspString}catch{r.Rm.error("Failed to get U.S. privacy data"),n="1-Y-"}t.params={us_privacy:n}}e.wnd.apstag.init(t),r.Rm.info("APS initialized"),e.amazon.initDone()}const O="amazon";async function R(e){let{state:t,data:n}=e;const{apstag:r}=t.wnd,{hem256:i}=n.data;if(!r.rpa||!n.targets.has(O)||!i)return;await t.amazon.ready;const o={optOut:!1,hashedRecords:[{type:"email",record:i}]},{ready:a,done:d}=(0,s.v6)();return t.amazon.hasUserId?r.upa(o,d):(r.rpa(o,d),t.amazon.hasUserId=!0),a}function D(e){let{state:t,data:n}=e;t.hb={disabledBidders:{}},(0,o.a)(t,n.htlbid,{enableHeaderBidding(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];if(n.length)for(const t of n)delete e.hb.disabledBidders[t||""];else e.hb.disabled=!1},disableHeaderBidding(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];if(n.length)for(const t of n)t&&(e.hb.disabledBidders[t]||=!0);else e.hb.disabled=!0}})}function B(e){e.state.hb.disabled&&(e.stop(),e.next((()=>{(0,r.hj)(e.state,"ad.init",i.n8+1,e.data.slots.map((e=>e.id)))})))}function U(e){const t=[],n=[];for(const{ad:r,id:i}of e.data.slots)r&&(r.hb?n:t).push(i);e.stop(),e.next((()=>{(0,r.hj)(e.state,"ad.init",i.n8,n),(0,r.hj)(e.state,"ad.init",i.n8+1,t)}))}function j(e,t){var n;t.browserType||=(n=e.wnd.navigator.userAgent).includes("Firefox")?"firefox":n.includes("Edg")?"edge":n.includes("Chrome")?"chrome":n.includes("Safari")?"safari":"other"}function P(e){let{state:t,data:n}=e;const{trafficShaping:r}=t.config.modules.hb,{conds:i}=r,{htlbid:o}=n;i.browser&&j(t,o),i.os&&((e,t)=>{var n;t.os||=(n=e.wnd.navigator.userAgent).includes("Android")?"android":/iPhone|iPad|iPod|like Mac/.test(n)?"ios":/Mac OS X|MacPPC|MacIntel|Mac_PowerPC|Macintosh/.test(n)?"mac":n.includes("Windows")?"windows":"other"})(t,o);const s={os:N(i.os,o.os),browser:N(i.browser,o.browserType),device:N(i.device,o.deviceType),country:N(i.country,o.countryCode)},a=new Set;for(const[e,t,n]of r.bidders)Object.entries(t).every((e=>{let[t,n]=e;return s[t][n]}))===!!n&&a.add(e);if(a.delete("amazon")&&delete t.amazon,a.size&&t.prebid){const[e,n]=(d=r.reportingKeyPrefix)?[(e,t)=>((e,t,n)=>{const r=t.ad.prebid.opps||={};if(r[e])return;const i=r[e]={};for(const{bidder:r}of n)t.ad.targeting[`${e}_${r}`]=i[r]=(i[r]||0)+1})(d,e,t),(e,t)=>((e,t,n)=>{const r=t.ad.prebid.opps[e];if(!r)return;const i=new Set(n.map((e=>e.bidder)));for(const[n,o]of Object.entries(r))i.has(n)||(t.ad.targeting[`${e}_${n}`]=-o,delete r[n])})(d,e,t)]:[()=>{},()=>{}];t.events.on("prebid.adunits",(t=>{let{data:r}=t;r.slots=((e,t,n,r)=>{const i=[];for(const o of e){const{adUnit:e}=o.ad.prebid;!e.bids||(n(o,e.bids),e.bids=e.bids.filter((e=>{let{bidder:n}=e;return!t.has(n)})),r(o,e.bids),e.bids.length)?i.push(o):delete o.ad.prebid}return i})(r.slots,a,e,n)}))}var d}function N(e,t){return e?.map((e=>e.includes(t)))}function $(e){let{state:t}=e;if(t.config.hiddenSlots?.destroy)return void(t.hiddenSlots={add(e){(0,r.Tz)(t,e.id)}});const n=new Map,i=new t.wnd.ResizeObserver((e=>{const i=[];for(const{target:t,contentBoxSize:o}of e)if(o.length>1||o.some((e=>e.blockSize||e.inlineSize))){const e=n.get(t);e&&(e.hiddenSlots.unobserve(),r.Rm.info("Slot",e.id,"is resumed"),i.push(e.id))}(0,r.s3)(t,i)}));t.hiddenSlots={add(e){const{elem:t}=e;i.observe(t),n.set(t,e),e.hiddenSlots={unobserve(){i.unobserve(t),n.delete(t),delete e.hiddenSlots}},r.Rm.info("Slot",e.id,"is paused")}},t.events.on("slot.destroy",(e=>{let{data:t}=e;t.slot.hiddenSlots?.unobserve()}))}function q(e){const{state:t,data:n}=e;if(n.noHiddenSlots)return;const i=[];for(const e of n.slots){if(e.hiddenSlots||e.destroyed)continue;const{elem:n}=e;n?n.isConnected?(0,s.dW)(n)?i.push(e):(t.hiddenSlots.add(e),delete e.core.state):(0,r.Tz)(t,e.id):i.push(e)}n.slots=i,i.length||e.stop()}const M=-1,z=1,F=0;function L(e,t){const n=e.scrollY;return{top:n,bottom:n+t[1]}}function V(e,t,n){let[r,i]=n;return{w:r,h:i,visible:"visible"===e.document.visibilityState,scroll:t.scroll}}function W(e){let{state:t}=e;(function(e){const{wnd:t}=e;e.view={...L(t,(0,s.Hr)(t)),subs:[],scroll:F};const n=(0,s.nF)((()=>(e=>{let{wnd:t,view:n}=e;const r=(0,s.Hr)(t),{top:i,bottom:o}=L(t,r);(i<n.top||o>n.bottom)&&(i<=n.top&&o<=n.bottom?n.scroll=M:i>=n.top&&o>=n.bottom?n.scroll=z:n.scroll=F),n.top=i,n.bottom=o;const a=V(t,n,r);for(const e of n.subs)e(a)})(e)),150);t.addEventListener("resize",n),t.addEventListener("scroll",n,{capture:!0}),t.document.addEventListener("visibilitychange",n)})(t),t.lazyLoad={slotIds:new Set},((e,t)=>{e.view.subs.push(t)})(t,(e=>((e,t)=>{if(t.visible){const{slotIds:t}=e.lazyLoad;(0,r.s3)(e,t),t.clear()}})(t,e)))}function G(e){const{state:t}=e,n=[],r=(e=>{let{wnd:t,view:n}=e;return V(t,n,(0,s.Hr)(t))})(t);for(const i of e.data.slots){const{elem:e}=i;if(!e)continue;const{enabled:o,pixels:s}={...t.config.modules.lazyLoad,...i.config.lazyLoad,...i.tile.config.lazyLoad};!o||null==s||H(e,r,s)?n.push(i):(t.lazyLoad.slotIds.add(i.id),delete i.core.state)}e.data.slots=n,n.length||e.stop()}function H(e,t,n){if(!t.visible)return!1;const{top:r,bottom:i}=e.getBoundingClientRect();return i>=0&&r<=t.h||!(i<0&&t.scroll>0||r>t.h&&t.scroll<0)&&(i<0?-i:r-t.h)<=n}function J(e){let{state:t}=e;t.prebid={ready:Promise.resolve().then(n.bind(n,793)).then((e=>(t.prebid.pbjs=e.default,e.default)))},(0,s.BU)(t.prebid,t.prebid.ready)}function X(e){let{state:t,data:n}=e;for(const e of n.slots)e.ad&&!e.prebid&&(e.tile.config.prebid||e.config.tiles.some((e=>{let[,t]=e;return t?.prebid})))&&(e.prebid={gpid:t.prebid.gpid(e)},ee(t,e))}function Q(e){let{state:t,data:n}=e;const{disabledBidders:r}=t.hb;if(r.prebid)return;const{bids:i,groups:o,native:a}=t.config.modules.prebid,d=[];for(const e of n.slots){const{prebid:t}=e.tile.config;if(!t||!e.ad)continue;let n;const c={},l=e.sizes?.filter(s.Fs);if(l?.length&&(c.banner={sizes:l,name:e.name},n=!0),a&&null!=t.native&&(c.native={sendTargetingKeys:!1,...a[t.native]},n=!0),!n)continue;const{gpid:u}=e.prebid,p={ext:{gpid:u,data:{pbadslot:u}}};e.config.interstitial&&(p.instl=1);const[g,f]=Z(i,o,t.groups,r);!g.length&&f||(e.ad.prebid={adUnit:{code:e.prebid.code,mediaTypes:c,ortb2Imp:p}},e.ad.hb={},g.length&&(e.ad.prebid.adUnit.bids=g),d.push(e))}d.length&&t.events.emit("prebid.adunits",{slots:d},{sync:!0})}async function K(e){let{state:t,data:n}=e;if(!n.slots.some((e=>e.ad?.prebid)))return;await t.prebid.allReady,(e=>{const t=e.prebid.consentManagement||={};if(t.done)return;const n={};w(e,"tcfapi")&&(n.gdpr={timeout:8e3,defaultGdprScope:!0}),w(e,"uspapi")&&(n.usp={timeout:500}),Object.keys(n).length?(e.prebid.pbjs.setConfig({consentManagement:n}),r.Rm.trace("Consent management is configured for Prebid.js"),t.done=!0):Date.now()-e.ts>5e3&&(t.done=!0,r.Rm.trace("Consent management is not configured for Prebid.js"))})(t);const i=n.slots.filter((e=>e.ad?.prebid));if(!i.length)return;const{pbjs:o}=t.prebid,s=await new Promise((e=>{o.requestBids({adUnits:i.map((e=>e.ad.prebid.adUnit)),bidsBackHandler:e})}));t.events.emit("prebid.bids",{slots:i,bidsBack:s},{sync:!0});const a=o.getAdserverTargeting();for(const{ad:e}of i)e&&Object.assign(e.targeting,a[e.prebid.adUnit.code])}function Y(e){let{data:t}=e;const n=t.slot.ad?.prebid?.bidSize;n&&(t.size=n,r.Rm.trace("Prebid.js saves for slot",t.slot.id,"the rendered size",n))}function Z(e,t,n,r){let i;const o=[];for(const s of n.map((e=>t[e])))for(let t=1;t<s.length;t+=2){const[n,...a]=e[s[t-1]];r[n]?i=!0:o.push({bidder:n,params:{...a[s[t]]}})}return[o,i]}function ee(e,t){const{elemId:n}=t;if(n)t.prebid.code=n;else if(t.elem){const{prebid:n}=e,r=t.name||"htl-ad";let i=r;for(;e.wnd.document.getElementById(i);)i=`${r}-${++n.slotSeq}`;t.prebid.code=t.elemId=i}else t.prebid.code=t.id}function te(e,t){let{adUnitCode:n,width:r,height:i}=t;if(n&&r&&i)for(const t of e.core.slots.values()){const e=t.ad?.prebid;if(e?.adUnit.code===n)return void(e.bidSize||=[r,i])}}function ne(e){let{state:t,data:n}=e;const{htlbid:r}=n;j(t,r),t.config.modules.prebid.config.floors.additionalSchemaFields={bidder(e){let{bidder:t}=e;return t},browser:()=>r.browserType,country:()=>r.countryCode,device:()=>r.deviceType,slot(e){let{adUnitCode:n}=e;for(const e of t.core.slots.values())if(e.ad?.prebid?.adUnit.code===n)return e.name;return null}}}function re(e,t,n,r){let{state:i,data:o}=t;if(!o.targets.has(e))return;const a={};let d;for(let e of n){let t;[e,t]=Array.isArray(e)?[e[0],e]:[e,[e]];for(const n of t){const t=o.data[n];if(t){a[e]=t,d=!0;break}}}if(!d)return;const{userSync:c}=i.config.modules.prebid;if(c){const t=c.userIds||[];let n=t.findIndex((t=>t.name===e));if(r)n<0&&(n=t.length,c.userIds=t);else{if(n<0)return;r=t[n]}return r.params={...r.params,...a},void(t[n]=r)}return(async(e,t,n)=>{const i=await e.prebid.ready;if(!((e,t,n)=>{const r=n(e.getConfig(t));return!!r&&(e.setConfig({[t]:r}),!0)})(i,"userSync",(e=>{const n=(e||={}).userIds||[];let i=n.findIndex((e=>e.name===t));i<0&&(i=n.length);const o=(s=n[i],(s=r||s)&&(s.params={...s.params,...a}),s);var s;return o?(n[i]=o,e.userIds=n,e):null})))return;const[o,d]=(0,s.v6)();return i.refreshUserIds({submoduleNames:[t]},d),o})(i,e)}function ie(e){let{data:t}=e;for(const e of t.slots)if(e.name)for(const t of e.ad.prebid.adUnit.bids||[])"onetag"===t.bidder&&((t.params.ext||={}).placement_name||=e.name)}function oe(e){let{state:t,data:n}=e;const{slot:i}=n;i.refresh={count:0,switchEnabled(e){this.disabled=!e,e&&this.stopped&&(this.stopped=!1,(0,r.s3)(t,[i.id]))}}}function se(e){let{data:t}=e;for(const e of t.slots)e.refresh.stopped=!1}function ae(e){let{state:t,data:n}=e;const{slot:i}=n;if(!i.ad)return;i.ad.refresh&&(i.ad.refresh.stop(),delete i.ad.refresh);const{max:o,interval:a}={...t.config.modules.refresh,...i.config.refresh,...i.tile.config.refresh};if(!o||!a||i.refresh.count>=o)return;++i.refresh.count===o&&r.Rm.trace("Slot",i.id,"reaches max refreshes");let d=1e3*a;null!=n.ts&&(d=Math.max(0,d-(Date.now()-n.ts)));const[c,l]=(0,s.Sf)(d);i.ad.refresh={ready:c,stop(){l(!0)}},c.then((e=>{e||r.Rm.trace("Refresh interval of slot",i.id,"passed")}))}async function de(e){const{slot:t}=e.data;t.ad?.refresh&&!await t.ad.refresh.ready&&t.ad?.refresh&&(delete t.ad.refresh,t.refresh.disabled?t.refresh.stopped=!0:e.next((()=>(0,r.s3)(e.state,[t.id]))))}function ce(e){let{state:t}=e;const n=new t.wnd.IntersectionObserver((e=>((e,t)=>{for(const n of t){const t=e.refreshView.elemData.get(n.target);if(!t)continue;const{boundingClientRect:r,intersectionRatio:i}=n,o=i>=(r.width*r.height>=242e3?.3:.5);t.inView!==o&&(o?pe(t):ge(t))}})(t,e)),{threshold:[.3,.5]});t.refreshView={observer:n,elemData:new Map};const{document:i}=t.wnd;i.addEventListener("visibilitychange",(()=>{((e,t)=>{if(t){for(const t of e.core.slots.values())t.ad?.refreshView?.observe();r.Rm.trace("Viewability refresh resumed")}else{const{elemData:t,observer:n}=e.refreshView;for(const e of t.values())ge(e);n.disconnect(),t.clear(),r.Rm.trace("Viewability refresh paused")}})(t,"visible"===i.visibilityState)}))}function le(e){let{state:t,data:n}=e;if(n.empty)return;const{ad:r}=n.slot;if(!r?.refresh)return;const{elem:i}=r;if(!i)return;r.refreshView?.done();const[o,a]=(0,s.v6)(),{refreshView:d}=t;r.refreshView={slotId:n.slot.id,ready:o,observe(){d.elemData.has(i)||(d.observer.observe(i),d.elemData.set(i,this))},done(){this.stopContTimer(),this.stopAccTimer(),d.observer.unobserve(i),d.elemData.delete(i),this.observe=()=>{},a()},accTime:0,stopContTimer(){},stopAccTimer(){}},"visible"===t.wnd.document.visibilityState&&r.refreshView.observe()}const ue=6e3;function pe(e){e.inView=!0,e.contViewed||(e.stopContTimer=(0,s.uN)((()=>{e.contViewed=!0,r.Rm.trace("Continous viewable time of slot",e.slotId,"reached"),e.accViewed&&e.done()}),1e3)),e.accViewed||(e.vStart=Date.now(),e.stopAccTimer=(0,s.uN)((()=>{fe(e)}),ue-e.accTime))}function ge(e){e.inView=!1,e.contViewed||e.stopContTimer(),e.accViewed||(e.stopAccTimer(),null!=e.vStart&&(e.accTime+=Date.now()-e.vStart,delete e.vStart,e.accTime>=ue&&fe(e)))}function fe(e){e.accViewed=!0,r.Rm.trace("Accumulative viewable time of slot",e.slotId,"reached"),e.contViewed&&e.done()}function me(e){let{state:t,data:n}=e;const{key:r,initialValue:i=0}=t.config.modules.refreshCounter;for(const e of n.slots){if(null==e.refreshCounter){e.refreshCounter=i;let t=e.ad.targeting[r];Array.isArray(t)&&([t]=t),"string"==typeof t&&(t=t.trim(),""!==t&&(t=Number(t))),Number.isInteger(t)&&(e.refreshCounter=t)}e.ad.targeting[r]=e.refreshCounter}}function he(e){(0,r.s3)(e,e.core.slots.keys(),{noBatch:!0})}function be(e,t){const n=(0,o.C)(e,t);n&&(0,r.s3)(e,[n.id])}function ye(e,t){return e.core.slots.get(t)?.safeData}function ve(e){for(const{id:t,apiDivs:n}of e.core.slots.values())n&&!n.elem.isConnected&&(0,r.Tz)(e,t);const t=`${e.config.htlPrefix}ad-`,n=e.wnd.document.querySelectorAll(`div[class*="${t}"]:not([data-ad-processed])`),i=[];for(const o of n){if(!(0,s.dW)(o))continue;const{dataset:n}=o;let a;n.adProcessed="";for(const n of o.classList)if(n.startsWith(t)){const r=n.slice(t.length);if(e.config.slots[r]){a=r;break}}a?i.push((0,r.YW)(e,{name:a,elem:o,apiDivs:{elem:o}})):r.Rm.warn("Unknown slot name for element",o)}(0,r.s3)(e,i,{noBatch:!0})}function Ae(e){let{data:t}=e;for(const e of t.slots){if(!e.apiDivs)continue;const{targeting:t}=e.apiDivs.elem.dataset;if(t)try{Object.assign(e.ad.targeting,JSON.parse(t))}catch{Ie("targeting",e)}}}function Ie(e,t){r.Rm.warn(`Ignored invalid data-${e} for slot`,t.id)}function we(e){let{data:t}=e;const{slot:n}=t;n.apiDivs&&(delete n.apiDivs.elem.dataset.adProcessed,delete n.apiDivs)}async function xe(e,t){t=!1!==t;const{apiLayout:n}=e;if(t!==n.started)if(n.started=t,t){const{wnd:t}=e;if(!t.document.body){const[e,i]=(e=>{r.Rm.trace("API layout waiting for body");const[t,n]=(0,s.v6)(),i=new e.MutationObserver((()=>{e.document.body&&(r.Rm.trace("API layout finds body"),i.disconnect(),n(!0))}));return i.observe(e.document.documentElement,{childList:!0}),[t,()=>{i.disconnect(),n(!1)}]})(t);if(n.stop=i,!await e)return}const i=(0,s.nF)((()=>ve(e)),100),o=new t.MutationObserver(i);ve(e),o.observe(t.document.body,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["class","data-ad-processed"]}),n.stop=()=>{o.disconnect(),i.cancel()}}else n.stop();else t&&ve(e)}function Ce(e){let{data:t}=e;const{slot:n}=t,r=n.apiDivs?.elem.dataset;if(!r)return;const i=n.config.lazyLoad={...n.config.lazyLoad};if(null!=r.eager&&(i.enabled=!1),r.lazyPixels){const e=Number(r.lazyPixels);e>0&&Number.isFinite(e)?i.pixels=e:Ie("lazy-pixels",n)}}function Ee(e){let{data:t}=e;const{slot:n}=t,r=n.apiDivs?.elem.dataset;if(!r)return;const i=n.config.refresh={...n.config.refresh};switch(r.refresh){case"viewable":i.max||=1/0;break;case"disabled":i.max=0;break;default:r.refresh&&Ie("refresh",n)}if(r.refreshSecs){const e=Number(r.refreshSecs);e>0&&Number.isFinite(e)?i.interval=e:Ie("refresh-secs",n)}if(r.refreshMax){const e=Number(r.refreshMax);e>=0?i.max=e:Ie("refresh-max",n)}}function Te(e){(function(e){e.on("init",p,i.Cm).on("init",(e=>{(async e=>{let{state:t}=e;const n=await t.gpt.ready,i=n.pubads();i.disableInitialLoad(),i.enableSingleRequest(),i.setCentering(!0),i.addEventListener("slotRenderEnded",(e=>{((e,t,n)=>{if(!t)return;if(r.Rm.trace("GPT slot",t.id,"render ended with",n),"requested"!==t.ad?.gpt.state)return;t.elem||=e.wnd.document.getElementById(n.slot.getSlotElementId());const i={empty:n.isEmpty,size:n.size,ts:Date.now()};if(i.empty||t.ad.gpt.onload)return void f(e,t,i);t.ad.gpt.notifyRendered?.(!0);const o=(0,s.uN)((()=>f(e,t,i)),3e3);t.ad.gpt.notifyRendered=n=>{o()&&!n&&f(e,t,i)}})(t,v(t,e.slot),e)})),i.addEventListener("slotOnload",(e=>{var n;(n=v(t,e.slot))&&(r.Rm.trace("GPT slot",n.id,"loaded"),"requested"===n.ad?.gpt.state&&(n.ad.gpt.onload=!0,n.ad.gpt.notifyRendered?.()))})),n.enableServices()})(e),(0,o.a)(e.state,e.data.htlbid,{clearTargeting:l,setTargeting:c,pubads:u})})).on("pageview",g).on("slot.define",m).on("slot.destroy",h).on("ad.init",b,i.lD).on("ad.init",(e=>{(async e=>{let{state:t,data:n}=e;for(const e of n.slots)e.ad&&"default"===e.gpt?.mode&&(Object.assign(e.ad.targeting,e.config.gpt.targeting),e.gpt.slot&&(e.ad.gpt={}));const i=await t.gpt.ready;for(const e of n.slots){if(!e.ad||e.gptDefault?.slotDefined)continue;const{gpt:n}=e;if("default"!==n?.mode||n.slot)continue;e.gptDefault.slotDefined=!0;const{outOfPage:o,adUnitPath:s}=n;try{if(!0===o)n.slot=i.defineOutOfPageSlot(s,y(e),{htl:{slotName:""}});else if(o){if(n.slot=i.defineOutOfPageSlot(s,i.enums.OutOfPageFormat[o],{htl:{slotName:""}}),!n.slot){r.Rm.warn("GPT slot",e.id,"cannot be defined as",o),delete e.gpt;continue}}else n.slot=i.defineSlot(s,e.sizes,y(e),{htl:{slotName:""}})}catch(t){r.Rm.error(t.message),delete e.gpt;continue}n.slot.addService(i.pubads()),t.events.emit("gpt.slot.define",{slot:e},{sync:!0}),e.ad.gpt={}}})(e)})).on("ad.fetch",(e=>{let{state:t,data:n}=e;return(async(e,t,n,r)=>{if(!(r=r.filter((e=>"default"===e.gpt?.mode))).length)return;await e.gpt.allReady;const i=[];for(const e of r){if(!e.ad)continue;const t=e.gpt.slot;if(t){for(const[n,r]of Object.entries(e.ad.targeting))t.setTargeting(n,(0,s.vD)(r));i.push(t),e.ad.gpt.state="requested"}}if(!i.length)return;const o={gptSlots:i};o.safeData={get gptSlots(){return[...o.gptSlots]}},e.events.emit("gpt.refresh",o,{sync:!0}),n(i)})(t,0,(function(){t.gpt.googletag.pubads().refresh(...arguments)}),n.slots)}))})(e),(e=>{e.on("init",A).on("ad.init",I,i.eo)})(e),(e=>{e.on("init",E,i.Cm).on("init",T)})(e),(e=>{e.on("init",(e=>{let{state:t}=e;(0,s.k0)(t.wnd,`https://btloader.com/tag?o=${t.config.modules.blockthrough.orgId}&upapi=true`)}))})(e),(e=>{e.on("init",(e=>{let{state:t}=e;t.cookieDeprecationMeasurement={label:t.wnd.navigator.cookieDeprecationLabel?.getValue()||"none"}})).on("pageview",(async e=>{let{state:t}=e;const[n,r]=await Promise.all([t.gpt.ready,t.cookieDeprecationMeasurement.label]);n.pubads().setTargeting(t.config.modules.cookieDeprecationMeasurement.targetingKey,r)}))})(e),(e=>{e.on("init",D).on("ad.init",B,i.yO).on("ad.init",U,i.rN)})(e),(e=>{e.on("init",P,i.sW)})(e),(e=>{e.on("init",$).on("ad.init",q,i.Ry)})(e),(e=>{e.on("init",W).on("slot.destroy",(e=>{let{state:t,data:n}=e;t.lazyLoad.slotIds.delete(n.slot.id)})).on("ad.init",G,i.Rl)})(e),function(e){e.on("init",(e=>{(async e=>{let{state:t}=e;const{modules:n}=t.config,r=100*Math.random()>=n.liveIntentAbTesting.percent;if(t.wnd.liModuleEnabled=!r,r){const{userSync:e}=n.prebid;e.userIds=e.userIds.filter((e=>"liveIntentId"!==e.name))}const{targetingKey:i}=n.liveIntentAbTesting;if(!i)return;const o=r?"t0":"t1";t.gpt.ready.then((e=>e.pubads().setTargeting(i,o))),(await t.prebid.ready).onEvent("auctionInit",(e=>{let{adUnits:n}=e,r=o;null!=n&&(r+=n.some((e=>e.bids?.some((e=>e.userIdAsEids?.some((e=>"liveintent.com"===e.source||e.uids?.some((e=>"liveintent.com"===e.ext?.provider))))))))?"-e1":"-e0"),t.gpt.ready.then((e=>e.pubads().setTargeting(i,r)))}))})(e)}))}(e),function(e){e.on("init",J,i.Cm).on("init",(e=>{(async e=>{let{state:t,data:n}=e;const{htlbid:i}=n;t.prebid.waitFor(i.iab?.ready),i.pbjs||={cmd:[]};const o=await t.prebid.ready,{modules:s}=t.config,{prebid:a}=s;o.setConfig({bidderTimeout:s.hb.timeout}),a.config&&o.setConfig(a.config),o.bidderSettings=Object.fromEntries(Object.entries(a.bidderSettings||{}).map((e=>{let[t,{bidCpmMultiplier:n,...r}]=e;return n&&(r.bidCpmAdjustment=e=>e*n),[t,r]})));for(const[e,...t]of a.aliases||[])for(const n of t)o.aliasBidder(e,n);if(a.analytics){const e=a.analytics.filter((e=>{e.options||={};const{percent:t}=e;return delete e.percent,!t||100*Math.random()<t}));e.length&&o.enableAnalytics(e)}o.onEvent("bidWon",(e=>{te(t,e)})),o.onEvent("adRenderSucceeded",(e=>{let{bid:n}=e;te(t,n)}));const{cmd:d}=i.pbjs;i.pbjs=o;for(const e of d||[])try{e(o)}catch(e){r.Rm.error("Error processing Prebid.js command",e)}((e,t)=>{t.generateGpid?e.gpid=e=>{const n=t.generateGpid(e.safeData)||"";return n||r.Rm.error("generateGpid returns empty value for GPID"),n}:e.gpid=t=>{const n=t.config.prebid?.gpid;if(n)return n;const r=`${t.gpt?.adUnitPath||t.name||"slot"}#`;return e.gpidSeqs[r]||=0,`${r}${++e.gpidSeqs[r]}`}})(t.prebid,i)})(e)})).on("init",(e=>{(async e=>{let{state:t}=e;const{prebid:n}=t.config.modules,{userSync:r}=n;r&&(delete n.userSync,n.config.userSync=r,(await t.prebid.ready).setConfig({userSync:r}))})(e)}),i.bk).on("pageview",(e=>{let{state:t}=e;t.prebid.gpidSeqs={},t.prebid.slotSeq=0})).on("ad.init",X,i.iO).on("ad.init",Q,i.PF).on("ad.init",K,i.n8).on("ad.rendered",Y,i.Ry)}(e),(e=>{e.on("prebid.adunits",(e=>{let{data:t}=e;for(const e of t.slots){const t=e.gpt?.adUnitPath;t&&(e.ad.prebid.adUnit.ortb2Imp.ext.data.adserver={name:"gam",adslot:t})}}))})(e),(e=>{e.on("init",ne,i.sW)})(e),function(e){e.on("init",(e=>{(async e=>{let{state:t}=e;const{prebid:n,schain:r}=t.config.modules,i=n.schain||{},o=await t.prebid.ready;o.setConfig({schain:{config:(0,s.T)(r,i.global)}});for(const[e,...t]of i.bidders||[])o.setBidderConfig({bidders:t,config:{schain:{config:(0,s.T)(r,e)}}})})(e)}))}(e),(e=>{e.on("user.data",(e=>re("liveIntentId",e,[["emailHash","hem256","hemmd5"]])))})(e),(e=>{e.on("prebid.adunits",ie)})(e),(e=>{e.on("slot.define",oe).on("ad.init",se,i.Ry).on("ad.destroy",(e=>{let{data:t}=e;t.ad.refresh?.stop()})).on("ad.rendered",ae).on("ad.rendered",de,i.bk)})(e),(e=>{e.on("init",ce).on("ad.destroy",(e=>{let{data:t}=e;t.ad.refreshView?.done()})).on("ad.rendered",le,i.HZ).on("ad.rendered",(e=>{let{data:t}=e;return t.slot.ad?.refreshView?.ready}),i.iD)})(e),(e=>{e.on("ad.init",me,i.HZ).on("ad.rendered",(e=>{let{data:t}=e;++t.slot.refreshCounter}))})(e),(e=>{e.on("pageview",(e=>{let{state:t}=e;t.wnd.fetch(`//ams-pageview-public.s3.amazonaws.com/1x1-pixel.png?id=${t.config.pixelId}`,{mode:"no-cors",credentials:"omit",cache:"no-store"})}))})(e),(e=>{e.on("init",(e=>{let{state:t,data:n}=e;(0,o.a)(t,n.htlbid,{refresh:he,refreshSlot:be,getSlot:ye})}))})(e),(e=>{e.on("init",(e=>{let{state:t,data:n}=e;t.apiLayout={started:!1},(0,o.a)(t,n.htlbid,{layout:xe})})),function(e){e.state.apiDivs||(e.state.apiDivs={},e.on("slot.destroy",we).on("ad.init",Ae,i.HZ))}(e)})(e),(e=>{e.on("slot.define",(e=>{let{data:t}=e;const{slot:n}=t,r=n.apiDivs?.elem.dataset.unit;r&&(n.config.gpt={...n.config.gpt,adUnit:r})}))})(e),(e=>{e.on("slot.define",(e=>{let{data:t}=e;const{slot:n}=t,r=n.apiDivs?.elem.dataset.gpid;r&&(n.config.prebid={...n.config.prebid,gpid:r})}))})(e),(e=>{e.on("slot.define",Ce)})(e),(e=>{e.on("slot.define",Ee)})(e)}},793:(e,t,n)=>{n.d(t,{default:()=>Dh});const r=window,i=r.pbjs=r.pbjs||{};function o(){return i}function s(e){i.installedModules.push(e)}function a(e,t,n){return e&&e.includes(t,n)||!1}function d(e,t,n){return e&&e.find(t,n)}i.cmd=i.cmd||[],i.que=i.que||[],r===window&&(r._pbjsGlobals=r._pbjsGlobals||[],r._pbjsGlobals.push("pbjs"));const c=2,l={buckets:[{max:5,increment:.5}]},u={buckets:[{max:20,increment:.1}]},p={buckets:[{max:20,increment:.01}]},g={buckets:[{max:3,increment:.01},{max:8,increment:.05},{max:20,increment:.5}]},f={buckets:[{max:5,increment:.05},{max:10,increment:.1},{max:20,increment:.5}]};function m(e,t,n){let r="";if(!h(t))return r;const i=t.buckets.reduce(((e,t)=>e.max>t.max?e:t),{max:0});let o=0,s=d(t.buckets,(t=>{if(e>i.max*n){let e=t.precision;void 0===e&&(e=c),r=(t.max*n).toFixed(e)}else{if(e<=t.max*n&&e>=o*n)return t.min=o,t;o=t.max}}));return s&&(r=b(e,s,n)),r}function h(e){if(Ne(e)||!e.buckets||!Array.isArray(e.buckets))return!1;let t=!0;return e.buckets.forEach((e=>{e.max&&e.increment||(t=!1)})),t}function b(e,t,n){const r=void 0!==t.precision?t.precision:c,i=t.increment*n,o=t.min*n;let s=Math.floor,a=q.getConfig("cpmRoundingFunction");"function"==typeof a&&(s=a);let d,l,u=Math.pow(10,r+2),p=(e*u-o*u)/(i*u);try{d=s(p)*i+o}catch(e){l=!0}return(l||"number"!=typeof d)&&(we("Invalid rounding function passed in config"),d=Math.floor(p)*i+o),d=Number(d.toFixed(10)),d.toFixed(r)}function y(e,t,n,r,i){for(t=t.split?t.split("."):t,r=0;r<t.length;r++)e=e?e[t[r]]:i;return e===i?n:e}const v={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"},A={GOOD:1},I={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",BILLABLE_EVENT:"billableEvent",BID_ACCEPTED:"bidAccepted"},w={PREVENT_WRITING_ON_MAIN_DOCUMENT:"preventWritingOnMainDocument",NO_AD:"noAd",EXCEPTION:"exception",CANNOT_FIND_AD:"cannotFindAd",MISSING_DOC_OR_ADID:"missingDocOrAdid"},x={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"},C={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"},E={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"},T="s2s",S={BID_TARGETING_SET:"targetingSet",RENDERED:"rendered",BID_REJECTED:"bidRejected"},_={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"},k={body:"desc",body2:"desc2",sponsoredBy:"sponsored",cta:"ctatext",rating:"rating",address:"address",downloads:"downloads",likes:"likes",phone:"phone",price:"price",salePrice:"saleprice",displayUrl:"displayurl"},O={sponsored:1,desc:2,rating:3,likes:4,downloads:5,price:6,saleprice:7,phone:8,address:9,desc2:10,displayurl:11,ctatext:12},R={ICON:1,MAIN:3},D=["privacyIcon","clickUrl","sendTargetingKeys","adTemplate","rendererUrl","type"],B={REQUEST:"Prebid Request",RESPONSE:"Prebid Response",NATIVE:"Prebid Native",EVENT:"Prebid Event"},U="TRUE"===ke("pbjs_debug").toUpperCase(),j="random",P={};P[j]=!0,P.fixed=!0;const N=j,$={LOW:"low",MEDIUM:"medium",HIGH:"high",AUTO:"auto",DENSE:"dense",CUSTOM:"custom"},q=function(){let e,t,n,r=[],i=null;function o(){function r(e){return o[e].val}function i(e,t){o[e].val=t}e={};const o={publisherDomain:{set(e){null!=e&&we("publisherDomain is deprecated and has no effect since v7 - use pageUrl instead"),i("publisherDomain",e)}},priceGranularity:{val:$.MEDIUM,set(e){c(e)&&("string"==typeof e?i("priceGranularity",a(e)?e:$.MEDIUM):je(e)&&(i("customPriceBucket",e),i("priceGranularity",$.CUSTOM),Ae("Using custom price granularity")))}},customPriceBucket:{val:{},set(){}},mediaTypePriceGranularity:{val:{},set(e){null!=e&&i("mediaTypePriceGranularity",Object.keys(e).reduce(((t,n)=>(c(e[n])?"string"==typeof e?t[n]=a(e[n])?e[n]:r("priceGranularity"):je(e)&&(t[n]=e[n],Ae(`Using custom price granularity for ${n}`)):we(`Invalid price granularity for media type: ${n}`),t)),{}))}},bidderSequence:{val:N,set(e){P[e]?i("bidderSequence",e):we(`Invalid order: ${e}. Bidder Sequence was not set.`)}},auctionOptions:{val:{},set(e){(e=>{if(!je(e))return we("Auction Options must be an object"),!1;for(let t of Object.keys(e)){if("secondaryBidders"!==t&&"suppressStaleRender"!==t)return we(`Auction Options given an incorrect param: ${t}`),!1;if("secondaryBidders"===t){if(!Be(e[t]))return we(`Auction Options ${t} must be of type Array`),!1;if(!e[t].every(De))return we(`Auction Options ${t} must be only string`),!1}else if("suppressStaleRender"===t&&!Pe(e[t]))return we(`Auction Options ${t} must be of type boolean`),!1}return!0})(e)&&i("auctionOptions",e)}}};let s={debug:U,bidderTimeout:3e3,enableSendAllBids:!0,useBidCache:!1,deviceAccess:!0,timeoutBuffer:400,disableAjaxTimeout:!1,maxNestedIframes:10};function a(e){return d(Object.keys($),(t=>e===$[t]))}function c(e){if(!e)return xe("Prebid Error: no value passed to `setPriceGranularity()`"),!1;if("string"==typeof e)a(e)||we("Prebid Warning: setPriceGranularity was called with invalid setting, using `medium` as default.");else if(je(e)&&!h(e))return xe("Invalid custom price value passed to `setPriceGranularity()`"),!1;return!0}Object.defineProperties(s,Object.fromEntries(Object.entries(o).map((e=>{let[t,n]=e;return[t,Object.assign({get:r.bind(null,t),set:i.bind(null,t),enumerable:!0},n)]})))),t&&f(Object.keys(t).reduce(((e,n)=>(t[n]!==s[n]&&(e[n]=s[n]||{}),e)),{})),t=s,n={}}function s(){if(i&&n&&je(n[i])){let e=n[i];return function(){return Array.from.apply(Array,arguments)}(new Set(Object.keys(t).concat(Object.keys(e)))).reduce(((n,r)=>(void 0===e[r]?n[r]=t[r]:void 0===t[r]?n[r]=e[r]:je(e[r])?n[r]=At({},t[r],e[r]):n[r]=e[r],n)),{})}return Object.assign({},t)}const[c,l]=[s,()=>{const e=s();return Object.defineProperty(e,"ortb2",{get:()=>{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?y(e(),t):s()}return function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=t;if("string"!=typeof e&&(i=e,e="*",n=t||{}),"function"!=typeof i)return void xe("listener must be a function");const o={topic:e,callback:i};return r.push(o),n.init&&i("*"===e?l():{[e]:l(e)}),()=>{r.splice(r.indexOf(o),1)}}(...arguments)})),[u,p]=[l,c].map((e=>function(){let t=e(...arguments);return t&&"object"==typeof t&&(t=tt(t)),t}));function g(n){if(!je(n))return void xe("setConfig options must be an object");let r=Object.keys(n),i={};r.forEach((r=>{let o=n[r];je(e[r])&&je(o)&&(o=Object.assign({},e[r],o));try{i[r]=t[r]=o}catch(e){we(`Cannot set config for property ${r} : `,e)}})),f(i)}function f(e){const t=Object.keys(e);r.filter((e=>a(t,e.topic))).forEach((t=>{t.callback({[t.topic]:e[t.topic]})})),r.filter((e=>"*"===e.topic)).forEach((t=>t.callback(e)))}function m(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];try{(e=>{if(!je(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(!je(e.config))throw"setBidderConfig bidder options must contain a config object"})(e),e.bidders.forEach((r=>{n[r]||(n[r]={}),Object.keys(e.config).forEach((i=>{let o=e.config[i];if(je(o)){const e=t?At:Object.assign;n[r][i]=e({},n[r][i]||{},o)}else n[r][i]=o}))}))}catch(e){xe(e)}}function b(e,t){i=e;try{return t()}finally{v()}}function v(){i=null}return o(),{getCurrentBidder:()=>i,resetBidder:v,getConfig:l,getAnyConfig:c,readConfig:u,readAnyConfig:p,setConfig:g,mergeConfig:e=>{if(!je(e))return void xe("mergeConfig input must be an object");const t=At(s(),e);return g({...t}),t},setDefaults:n=>{je(e)?(Object.assign(e,n),Object.assign(t,n)):xe("defaults must be an object")},resetConfig:o,runWithBidder:b,callbackWithBidder:function(e){return function(t){return function(){if("function"==typeof t){for(var n=arguments.length,r=new Array(n),i=0;i<n;i++)r[i]=arguments[i];return b(e,t.bind(this,...r))}we("config.callbackWithBidder callback is not a function")}}},setBidderConfig:m,getBidderConfig:()=>n,mergeBidderConfig:e=>m(e,!0)}}();var M=n(855),z=n.n(M);const F=0,L=1;class V{#e;#t;static timeout(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return new V((t=>{0===e?t():setTimeout(t,e)}))}constructor(e){if("function"!=typeof e)throw new Error("resolver not a function");const t=[],n=[];let[r,i]=[F,L].map((e=>o=>{if(e===F&&"function"==typeof o?.then)o.then(r,i);else if(!t.length)for(t.push(e,o);n.length;)n.shift()()}));try{e(r,i)}catch(e){i(e)}this.#e=t,this.#t=n}then(e,t){const n=this.#e;return new this.constructor(((r,i)=>{const o=()=>{let o=n[1],[s,a]=n[0]===F?[e,r]:[t,i];if("function"==typeof s){try{o=s(o)}catch(e){return void i(e)}a=r}a(o)};n.length?o():this.#t.push(o)}))}catch(e){return this.then(null,e)}finally(e){let t;return this.then((n=>(t=n,e())),(n=>(t=this.constructor.reject(n),e()))).then((()=>t))}static#n(e,t,n){let r=e.length;function i(){t.apply(this,arguments),--r<=0&&n&&n()}0===e.length&&n?n():e.forEach(((e,t)=>this.resolve(e).then((e=>i(!0,e,t)),(e=>i(!1,e,t)))))}static race(e){return new this(((t,n)=>{this.#n(e,((e,r)=>e?t(r):n(r)))}))}static all(e){return new this(((t,n)=>{let r=[];this.#n(e,((e,t,i)=>e?r[i]=t:n(t)),(()=>t(r)))}))}static allSettled(e){return new this((t=>{let n=[];this.#n(e,((e,t,r)=>n[r]=e?{status:"fulfilled",value:t}:{status:"rejected",reason:t}),(()=>t(n)))}))}static resolve(e){return new this((t=>t(e)))}static reject(e){return new this(((t,n)=>n(e)))}}function W(){let e,t,{promiseFactory:n=(e=>new V(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)}}var G="String",H="Function",J="Number",X="Object",Q="Boolean",K=Object.prototype.toString;let Y,Z=Boolean(window.console),ee=Boolean(Z&&window.console.log),te=Boolean(Z&&window.console.info),ne=Boolean(Z&&window.console.warn),re=Boolean(Z&&window.console.error);const ie=o();function oe(){null!=Y&&Y(...arguments)}const se={checkCookieSupport:st,createTrackPixelIframeHtml:function(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="${le()}"\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>`):""},getWindowSelf:ye,getWindowTop:be,getWindowLocation:ve,insertUserSyncIframe:We,insertElement:ze,isFn:Re,triggerPixel:Le,logError:xe,logWarn:we,logMessage:Ae,logInfo:Ie,parseQS:mt,formatQS:ht,deepEqual:vt};let ae={};var de,ce=(de=0,()=>++de);function le(){return ce()+Math.random().toString(16).substr(2)}function ue(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,ue)}function pe(e,t){return t?.[e]||""}function ge(e){return"string"==typeof e?e.split(",").filter((e=>e.match(/^(\d)+x(\d)+$/i))):"object"==typeof e?2===e.length&&"number"==typeof e[0]&&"number"==typeof e[1]?[fe(e)]:e.map(fe):[]}function fe(e){if(he(e))return e[0]+"x"+e[1]}function me(e){if(he(e))return{w:e[0],h:e[1]}}function he(e){return Be(e)&&2===e.length&&!isNaN(e[0])&&!isNaN(e[1])}function be(){return window.top}function ye(){return window.self}function ve(){return window.location}function Ae(){Te()&&ee&&console.log.apply(console,Ee(arguments,"MESSAGE:"))}function Ie(){Te()&&te&&console.info.apply(console,Ee(arguments,"INFO:"))}function we(){Te()&&ne&&console.warn.apply(console,Ee(arguments,"WARNING:")),oe(I.AUCTION_DEBUG,{type:"WARNING",arguments})}function xe(){Te()&&re&&console.error.apply(console,Ee(arguments,"ERROR:")),oe(I.AUCTION_DEBUG,{type:"ERROR",arguments})}function Ce(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(xe),logWarn:t(we),logMessage:t(Ae),logInfo:t(Ie)}}function Ee(e,t){e=[].slice.call(e);let n=q.getCurrentBidder();return t&&e.unshift(t),n&&e.unshift(r("#aaa")),e.unshift(r("#3b88c3")),e.unshift("%cPrebid"+(n?`%c${n}`:"")),e;function r(e){return`display: inline-block; color: #fff; background: ${e}; padding: 1px 4px; border-radius: 3px;`}}function Te(){return!!q.getConfig("debug")}const Se=(()=>{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 _e(){return Se(document,{id:le(),width:0,height:0,src:"about:blank"},{display:"none",height:"0px",width:"0px",border:"0px"})}function ke(e){return mt(ve().search)[e]||""}function Oe(e,t){return K.call(e)==="[object "+t+"]"}function Re(e){return Oe(e,H)}function De(e){return Oe(e,G)}const Be=Array.isArray.bind(Array);function Ue(e){return Oe(e,J)}function je(e){return Oe(e,X)}function Pe(e){return Oe(e,Q)}function Ne(e){return!e||(Be(e)||De(e)?!(e.length>0):Object.keys(e).length<=0)}function $e(e){return De(e)&&(!e||0===e.length)}function qe(e,t){if(Re(e?.forEach))return e.forEach(t,this);Object.entries(e||{}).forEach((e=>{let[n,r]=e;return t.call(this,r,n)}))}function Me(e,t){return Re(e?.includes)&&e.includes(t)}function ze(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];let t=r?null:i.firstChild;return i.insertBefore(e,t)}}catch(e){}}function Fe(e,t){let n=null;return new V((r=>{const i=()=>{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 Le(e,t,n){const r=new Image;t&&se.isFn(t)&&Fe(r,n).then(t),r.src=e}function Ve(e){if(!e)return;const t=_e();var n;se.insertElement(t,document,"body"),(n=t.contentWindow.document).open(),n.write(e),n.close()}function We(e,t,n){let r=se.createTrackPixelIframeHtml(e,!1,"allow-scripts allow-same-origin"),i=document.createElement("div");i.innerHTML=r;let o=i.firstChild;t&&se.isFn(t)&&Fe(o,n).then(t),se.insertElement(o,document,"html",!0)}function Ge(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 He(e){return Array.from(e.matchAll(/\$({[^}]+})/g)).map((e=>e[1])).reduce(((e,t)=>e.replace("$"+encodeURIComponent(t),"$"+t)),encodeURI(e))}function Je(e,t,n){return n.indexOf(e)===t}function Xe(e,t){return e.concat(t)}function Qe(e,t){if(e)return t.flatMap((e=>e.bids)).find((t=>["bidId","adId","bid_id"].some((n=>t[n]===e))))}function Ke(e,t){return e[t]}function Ye(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:ie.adUnits).map((e=>e.bids.map((e=>e.bidder)).reduce(Xe,[]))).reduce(Xe,[]).filter((e=>void 0!==e)).filter(Je)}function Ze(){if(window.googletag&&Re(window.googletag.pubads)&&Re(window.googletag.pubads().getSlots))return!0}function et(e){let t=e.length;for(;t>0;){let n=Math.floor(Math.random()*t);t--;let r=e[t];e[t]=e[n],e[n]=r}return e}function tt(e){return z()(e)}function nt(){try{return se.getWindowSelf()!==se.getWindowTop()}catch(e){return!0}}function rt(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 it(){return(new Date).getTime()}function ot(){return!1!==q.getConfig("deviceAccess")}function st(){if(window.navigator.cookieEnabled||document.cookie.length)return!0}function at(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 dt(e,t){return e.reduce(((e,n)=>((e[n[t]]=e[n[t]]||[]).push(n),e)),{})}function ct(e,t){return t.filter((t=>e[t])).reduce(((t,n)=>Object.assign(t,{[n]:e[n]})),{})}function lt(e,t,n){return e.filter((e=>e.code===t)).flatMap((e=>e.bids)).filter((e=>e.bidder===n)).map((e=>e.params||{}))}const ut=(e,t)=>e.getAdUnitPath()===t||e.getSlotElementId()===t,pt=Number.isInteger.bind(Number);function gt(e,t){return"object"!=typeof e?{}:t.reduce(((n,r,i)=>{if("function"==typeof r)return n;let o=r,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 ft(e,t){return Be(e)&&(!t||e.length===t)&&e.every((e=>pt(e)))}function mt(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 ht(e){return Object.keys(e).map((t=>Array.isArray(e[t])?e[t].map((e=>`${t}[]=${e}`)).join("&"):`${t}=${e[t]}`)).join("&")}function bt(e,t){let n=document.createElement("a");t&&"noDecodeWholeURL"in t&&t.noDecodeWholeURL?n.href=e:n.href=decodeURIComponent(e);let 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:se.parseQS(n.search||""),hash:(n.hash||"").replace(/^#/,""),host:n.host||window.location.host}}function yt(e){return(e.protocol||"http")+"://"+(e.host||e.hostname+(e.port?`:${e.port}`:""))+(e.pathname||"")+(e.search?`?${se.formatQS(e.search||"")}`:"")+(e.hash?`#${e.hash}`:"")}function vt(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||n&&e.constructor!==t.constructor)return!1;{const r=Object.keys(e);if(r.length!==Object.keys(t).length)return!1;for(let i of r){if(!t.hasOwnProperty(i))return!1;if(!vt(e[i],t[i],{checkTypes:n}))return!1}return!0}}function At(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];if(!n.length)return e;const i=n.shift();if(je(e)&&je(i))for(const t in i)je(i[t])?(e[t]||Object.assign(e,{[t]:{}}),At(e[t],i[t])):Be(i[t])?e[t]?Be(e[t])&&i[t].forEach((n=>{let r=1;for(let i=0;i<e[t].length;i++)if(vt(e[t][i],n)){r=0;break}r&&e[t].push(n)})):Object.assign(e,{[t]:[...i[t]]}):Object.assign(e,{[t]:i[t]});return At(e,...n)}function It(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=(e,t)=>{if(Re(Math.imul))return Math.imul(e,t);var n=(4194303&e)*(t|=0);return 4290772992&e&&(n+=(4290772992&e)*t|0),0|n},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 wt(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e=>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 xt(e,t,n){t.split&&(t=t.split("."));for(var r,i,o=0,s=t.length,a=e;o<s&&"__proto__"!==(i=t[o++])&&"constructor"!==i&&"prototype"!==i;)a=a[i]=o===s?n:typeof(r=a[i])==typeof t?r:0*t[o]!=0||~(""+t[o]).indexOf(".")?{}:[]}function Ct(){let{startTime:e=it,ttl:t=(()=>null),monotonic:n=!1,slack:r=5e3}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const i=new Map,o=[],s=[],a=n?e=>s.push(e):e=>s.splice(function(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}(s,e,(e=>e.expiry)),0,e);let d,c;function l(){if(c&&clearTimeout(c),s.length>0){const e=it();d=Math.max(e,s[0].expiry+r),c=setTimeout((()=>{const e=it();let t=0;for(const n of s){if(n.expiry>e)break;o.forEach((e=>{try{e(n.item)}catch(e){xe(e)}})),i.delete(n.item),t++}s.splice(0,t),c=null,l()}),d-e)}else c=null}let u={};return{[Symbol.iterator]:()=>i.keys(),add(n){!i.has(n)&&i.set(n,function(n){const i={},o=u;let s;const[p,g]=Object.entries({start:e,delta:t}).map((e=>{let t,[p,g]=e;return()=>{const e=t={};V.resolve(g(n)).then((n=>{e===t&&(i[p]=n,o===u&&null!=i.start&&null!=i.delta&&(s=i.start+i.delta,a(f),(null==c||d>s+r)&&l()))}))}})),f={item:n,refresh:g,get expiry(){return s}};return p(),g(),f}(n))},clear(){s.length=0,l(),i.clear(),u={}},toArray:()=>Array.from(i.keys()),refresh(){s.length=0,l();for(const e of i.values())e.refresh()},onExpiry:e=>(o.push(e),()=>{const t=o.indexOf(e);t>=0&&o.splice(t,1)})}}const Et="eventHistoryTTL";let Tt=null;const St=Ct({monotonic:!0,ttl:()=>Tt});q.getConfig(Et,(e=>{const t=Tt;e=e?.[Et],Tt="number"==typeof e?1e3*e:null,t!==Tt&&St.refresh()}));let _t=Array.prototype.slice,kt=Array.prototype.push,Ot=Object.values(I);const Rt={bidWon:"adUnitCode"},Dt=(()=>{let e={},t={};function n(e){return Ot.includes(e)}return t.has=n,t.on=(t,r,i)=>{if(n(t)){let n=e[t]||{que:[]};i?(n[i]=n[i]||{que:[]},n[i].que.push(r)):n.que.push(r),e[t]=n}else xe("Wrong event name : "+t+" Valid event names :"+Ot)},t.emit=function(t){((t,n)=>{Ae("Emitting event for: "+t);let r=n[0]||{},i=r[Rt[t]],o=e[t]||{que:[]};var s=Object.keys(o);let a=[];St.add({eventType:t,args:r,id:i,elapsedTime:window.performance&&window.performance.now&&window.performance.now()||0}),i&&s.includes(i)&&kt.apply(a,o[i].que),kt.apply(a,o.que),(a||[]).forEach((e=>{if(e)try{e.apply(null,n)}catch(e){xe("Error executing handler:","events.js",e,t)}}))})(t,_t.call(arguments,1))},t.off=(t,n,r)=>{let i=e[t];Ne(i)||Ne(i.que)&&Ne(i[r])||r&&(Ne(i[r])||Ne(i[r].que))||(r?(i[r].que||[]).forEach((e=>{let t=i[r].que;e===n&&t.splice(t.indexOf(e),1)})):(i.que||[]).forEach((e=>{let t=i.que;e===n&&t.splice(t.indexOf(e),1)})),e[t]=i)},t.get=()=>e,t.addEvents=e=>{Ot=Ot.concat(e)},t.getEvents=()=>St.toArray().map((e=>Object.assign({},e))),t})();var Bt;Bt=Dt.emit.bind(Dt),Y=Bt;const{on:Ut,off:jt,get:Pt,getEvents:Nt,emit:$t,addEvents:qt,has:Mt}=Dt,zt={fetch:window.fetch.bind(window),makeRequest:(e,t)=>new Request(e,t),timeout(e,t){const n=new AbortController;let r=setTimeout((()=>{n.abort(),xe(`Request timeout after ${e}ms`,t),r=null}),e);return{signal:n.signal,done(){r&&clearTimeout(r)}}}},Ft="GET",Lt="POST",Vt="Content-Type";function Wt(){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=(t,n)=>{let r;null==e||null!=n?.signal||q.getConfig("disableAjaxTimeout")||(r=zt.timeout(e,t),n=Object.assign({signal:r.signal},n));let i=zt.fetch(t,n);return null!=r?.done&&(i=i.finally(r.done)),i};return null==t&&null==n||(i=r,r=(e,r)=>{const o=new URL(null==e?.url?e:e.url,document.location).origin;let s=i(e,r);return t&&t(o),n&&(s=s.finally((()=>n(o)))),s}),r;var i}function Gt(e,t){let{status:n,statusText:r="",headers:i,url:o}=e,s=0;function a(e){if(0===s)try{s=(new DOMParser).parseFromString(t,i?.get(Vt)?.split(";")?.[0])}catch(t){s=null,e&&e(t)}return s}return{readyState:XMLHttpRequest.DONE,status:n,statusText:r,responseText:t,response:t,responseType:"",responseURL:o,get responseXML(){return a(xe)},getResponseHeader:e=>i?.has(e)?i.get(e):null,toJSON(){return Object.assign({responseXML:a()},this)},timedOut:!1}}function Ht(){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=Wt(e,{request:t,done:n});return function(e,t,n){((e,t)=>{const{success:n,error:r}="object"==typeof t&&null!=t?t:{success:"function"==typeof t?t:()=>null,error:(e,t)=>xe("Network error",e,t)};e.then((e=>e.text().then((t=>[e,t])))).then((e=>{let[t,i]=e;const o=Gt(t,i);t.ok||304===t.status?n(i,o):r(t.statusText,o)}),(e=>r("",Object.assign(Gt({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?Lt:Ft);if(r===Ft&&t){const r=bt(e,n);Object.assign(r.search,t),e=yt(r)}const i=new Headers(n.customHeaders);i.set(Vt,n.contentType||"text/plain");const o={method:r,headers:i};return r!==Ft&&t&&(o.body=t),n.withCredentials&&(o.credentials="include"),n.browsingTopics&&isSecureContext&&(o.browsingTopics=!0),zt.makeRequest(e,o)}(e,n,arguments.length>3&&void 0!==arguments[3]?arguments[3]:{})),t)}}const Jt=Ht(),Xt=(Wt(),15);function Qt(e){let{index:t=no.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=e.vastXml?e.vastXml:`<VAST version="3.0">\n    <Ad>\n      <Wrapper>\n        <AdSystem>prebid.org wrapper</AdSystem>\n        <VASTAdTagURI><![CDATA[${e.vastUrl}]]></VASTAdTagURI>\n        ${(r=(r=e.vastImpUrl)&&(Array.isArray(r)?r:[r]))?r.map((e=>`<Impression><![CDATA[${e}]]></Impression>`)).join(""):""}\n        <Creatives></Creatives>\n      </Wrapper>\n    </Ad>\n  </VAST>`;var r;const i=t.getAuction(e);let o={type:"xml",value:n,ttlseconds:Number(e.ttl)+Xt};return q.getConfig("cache.vasttrack")&&(o.bidder=e.bidder,o.bidid=e.requestId,o.aid=e.auctionId),null!=i&&(o.timestamp=i.getAuctionStart()),"string"==typeof e.customCacheKey&&""!==e.customCacheKey&&(o.key=e.customCacheKey),o}const Kt=new WeakMap,Yt=["debugging","adloox","criteo","outstream","adagio","spotx","browsi","brandmetrics","justtag","tncId","akamaidap","ftrackId","inskin","hadron","medianet","improvedigital","azerionedge","aaxBlockmeter","confiant","arcspan","airgrid","clean.io","a1Media","geoedge","mediafilter","qortex","dynamicAdBoost","contxtful","id5","lucead"];function Zt(e,t,n,r,i){if(!t||!e)return void xe("cannot load external script without url and moduleCode");if(!a(Yt,t))return void xe(`${t} not whitelisted for loading external JavaScript`);r||(r=document);const o=c(r,e);if(o)return n&&"function"==typeof n&&(o.loaded?n():o.callbacks.push(n)),o.tag;const s=Kt.get(r)||{},d={loaded:!1,tag:null,callbacks:[]};return s[e]=d,Kt.set(r,s),n&&"function"==typeof n&&d.callbacks.push(n),we(`module ${t} is loading external JavaScript`),((t,n,r,i)=>{r||(r=document);var o=r.createElement("script");o.type="text/javascript",o.async=!0;const s=c(r,e);return s&&(s.tag=o),o.readyState?o.onreadystatechange=()=>{"loaded"!==o.readyState&&"complete"!==o.readyState||(o.onreadystatechange=null,n())}:o.onload=()=>{n()},o.src=t,i&&((e,t)=>{Object.entries(t).forEach((t=>{let[n,r]=t;return e.setAttribute(n,r)}))})(o,i),ze(o,r),o})(e,(()=>{d.loaded=!0;try{for(let e=0;e<d.callbacks.length;e++)d.callbacks[e]()}catch(e){xe("Error executing callback","adloader.js:loadExternalScript",e)}}),r,i);function c(e,t){const n=Kt.get(e);return n&&n[t]?n[t]:null}}const en=o(),tn="outstream";function nn(e){const{url:t,config:n,id:r,callback:i,loaded:o,adUnitCode:s,renderNow:a}=e;this.url=t,this.config=n,this.handlers={},this.id=r,this.renderNow=a,this.loaded=o,this.cmd=[],this.push=e=>{"function"==typeof e?this.loaded?e.call():this.cmd.push(e):xe("Commands given to Renderer.push must be wrapped in a function")},this.callback=i||(()=>{this.loaded=!0,this.process()}),this.render=function(){const e=arguments,n=()=>{this._render?this._render.apply(this,e):we("No render function was provided, please use .setRender on the renderer")};(e=>{const t=d(en.adUnits,(t=>t.code===e));if(!t)return!1;const n=y(t,"renderer"),r=!!(n&&n.url&&n.render),i=y(t,"mediaTypes.video.renderer"),o=!!(i&&i.url&&i.render);return!!(r&&!0!==n.backupOnly||o&&!0!==i.backupOnly)})(s)?(we(`External Js not loaded by Renderer since renderer url and callback is already defined on adUnit ${s}`),n()):a?n():(this.cmd.unshift(n),Zt(t,tn,this.callback,this.documentContext))}.bind(this)}nn.install=e=>{let{url:t,config:n,id:r,callback:i,loaded:o,adUnitCode:s,renderNow:a}=e;return new nn({url:t,config:n,id:r,callback:i,loaded:o,adUnitCode:s,renderNow:a})},nn.prototype.getConfig=function(){return this.config},nn.prototype.setRender=function(e){this._render=e},nn.prototype.setEventHandlers=function(e){this.handlers=e},nn.prototype.handleVideoEvent=function(e){let{id:t,eventName:n}=e;"function"==typeof this.handlers[n]&&this.handlers[n](),Ae(`Prebid Renderer event for id ${t} type ${n}`)},nn.prototype.process=function(){for(;this.cmd.length>0;)try{this.cmd.shift().call()}catch(e){xe("Error processing Renderer command: ",e)}};const rn=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.#r(e),y(this.getSettings(),`${e}.${t}`)}getScopes(){return Object.keys(this.getSettings()).filter((e=>e!==this.defaultScope))}settingsFor(e){return At({},this.ownSettingsFor(null),this.ownSettingsFor(e))}ownSettingsFor(e){return e=this.#r(e),this.getSettings()[e]||{}}#r(e){return e??this.defaultScope}}((()=>o().bidderSettings||{}),v.BD_SETTING_STANDARD),on="prebid",sn="bidder",an="userId",dn="rtd",cn="analytics";var ln=n(128),un=n.n(ln);let pn=un()({ready:un().SYNC|un().ASYNC|un().QUEUE});const gn=W();pn.ready=(()=>{const e=pn.ready;return function(){try{return e.apply(pn,arguments)}finally{gn.resolve()}}})();const fn=gn.promise,mn=pn.get,hn={};function bn(e,t){let{postInstallAllowed:n=!1}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};pn("async",(r=>{r.forEach((e=>t(...e))),n&&(hn[e]=t)}),e)([])}function yn(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=hn[e];if(i)return i(...n);mn(e).before(((e,t)=>{t.push(n),e(t)}))}const vn="component",An=vn+"Type",In=vn+"Name",wn="adapterCode",xn="storageType",Cn="configName",En="syncType",Tn="syncUrl",Sn="_config";function _n(e){return(t,n,r)=>{const i={[An]:t,[In]:n,[vn]:`${t}.${n}`};return t===sn&&(i[wn]=e(n)),kn(Object.assign(i,r))}}const kn=pn("sync",(e=>e)),[On,Rn]=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Ce("Activity control:");const t={};function n(e){return t[e]=t[e]||[]}function r(t,n,r,i){let o;try{o=r(i)}catch(r){e.logError(`Exception in rule ${n} for '${t}'`,r),o={allow:!1,reason:r}}return o&&Object.assign({activity:t,name:n,component:i[vn]},o)}const i={};function o(t){let{activity:n,name:r,allow:o,reason:s,component:a}=t;const d=`${r} ${o?"allowed":"denied"} '${n}' for '${a}'${s?":":""}`,c=i.hasOwnProperty(d);if(c&&clearTimeout(i[d]),i[d]=setTimeout((()=>delete i[d]),1e3),!c){const t=[d];s&&t.push(s),(o?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),()=>{const e=o.indexOf(a);e>=0&&o.splice(e,1)}},(e,t)=>{let i,s;for(const[a,d,c]of n(e)){if(i!==a&&s)break;i=a;const n=r(e,d,c,t);if(n){if(!n.allow)return o(n),!1;s=n}}return s&&o(s),!0}]}(),Dn="accessDevice",Bn="syncUser",Un="enrichUfpd",jn="enrichEids",Pn="fetchBids",Nn="transmitEids",$n="transmitUfpd",qn="transmitPreciseGeo",Mn="transmitTid";function zn(e){var t=e;return{callBids:()=>{},setBidderCode:e=>{t=e},getBidderCode:()=>t}}function Fn(e){let{src:t="client",bidder:n="",bidId:r,transactionId:i,adUnitId:o,auctionId:s}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};var a=t,d=e||0;Object.assign(this,{bidderCode:n,width:0,height:0,statusMessage:(()=>{switch(d){case 0:return"Pending";case 1:return"Bid available";case 2:return"Bid returned empty or error response";case 3:return"Bid timed out"}})(),adId:le(),requestId:r,transactionId:i,adUnitId:o,auctionId:s,mediaType:"banner",source:a}),this.getStatusCode=()=>d,this.getSize=function(){return this.width+"x"+this.height},this.getIdentifiers=function(){return{src:this.source,bidder:this.bidderCode,bidId:this.requestId,transactionId:this.transactionId,adUnitId:this.adUnitId,auctionId:this.auctionId}}}function Ln(e,t){return new Fn(e,t)}const Vn="outstream",Wn="instream",Gn=pn("sync",((e,t,n,r,i)=>n&&(i||r!==Vn)?q.getConfig("cache.url")||!e.vastXml||e.vastUrl?!(!e.vastUrl&&!e.vastXml):(xe('\n        This bid contains only vastXml and will not work when a prebid cache url is not specified.\n        Try enabling prebid cache with pbjs.setConfig({ cache: {url: "..."} });\n      '),!1):!(r===Vn&&!i&&!(e.renderer||t&&t.renderer||n.renderer))),"checkVideoBidSetup"),Hn="performanceMetrics",Jn=window.performance&&window.performance.now?()=>window.performance.now():()=>Date.now(),Xn=new WeakMap;function Qn(){let{now:e=Jn,mkNode:t=Zn,mkTimer:n=Yn,mkRenamer:r=(e=>e),nodes:i=Xn}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};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=e=>s.dfWalk({visit(t,n){const r=n.timestamps;if(r.hasOwnProperty(e))return r[e]}});function c(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 l(t){return n(e,(e=>c(t,e)))}function u(){let e={};return s.dfWalk({visit(t,n){e=Object.assign({},!t||t.includeGroups?n.groups:null,n.metrics,e)}}),e}const p={startTiming:l,measureTime:(e,t)=>l(e).stopAfter(t)(),measureHookTime:(e,t,n)=>{const r=l(e);return n((e=>{const t=r.stopBefore(e);return t.bail=e.bail&&r.stopBefore(e.bail),t.stopTiming=r,t.untimed=e,t})(t))},checkpoint:t=>{s.timestamps[t]=e()},timeSince:(t,n)=>{const r=d(t),i=null!=r?e()-r:null;return null!=n&&c(n,i),i},timeBetween:(e,t,n)=>{const r=d(e),i=d(t),o=null!=r&&null!=i?i-r:null;return null!=n&&c(n,o),o},setMetric:c,getMetrics:u,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:()=>o(s.newSibling(),a),renameWith:e=>o(s,e),toJSON:()=>u()};return i.set(p,s),p}(t([]))}function Kn(e,t,n){return function(){t&&t();try{return e.apply(this,arguments)}finally{n&&n()}}}function Yn(e,t){const n=e();let r=!1;function i(){r||(t(e()-n),r=!0)}return i.stopBefore=e=>Kn(e,i),i.stopAfter=e=>Kn(e,null,i),i}function Zn(e){return{metrics:{},timestamps:{},groups:{},addParent(t,n){e.push([t,n])},newSibling:()=>Zn(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 er=(()=>{const e=()=>{},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 Qn({now:()=>0,mkNode:()=>i,mkRenamer:()=>()=>n,mkTimer:()=>r,nodes:{get:e,set:e}})()})();let tr=!0;function nr(e){return tr&&e||er}q.getConfig(Hn,(e=>{tr=!!e[Hn]}));const rr=(()=>{const e=Qn();return()=>tr?e():er})();function ir(e,t){return function(n,r){return function(i){for(var o=arguments.length,s=new Array(o>1?o-1:0),a=1;a<o;a++)s[a-1]=arguments[a];const d=this;return nr(t.apply(d,s)).measureHookTime(e+n,i,(e=>r.call(d,e,...s)))}}}const or=ir("requestBids.",(e=>e.metrics)),sr=ir("addBidResponse.",((e,t)=>t.metrics)),ar=_n((e=>li.resolveAlias(e))),dr=["cpm","ttl","creativeId","netRevenue","currency"],cr=["auctionId","transactionId"];function lr(e){const t=Array.isArray(e.supportedMediaTypes)?{supportedMediaTypes:e.supportedMediaTypes}:void 0;function n(e){const n=ur(e);li.registerBidAdapter(n,e.code,t)}n(e),Array.isArray(e.aliases)&&e.aliases.forEach((t=>{let r,i,o=t;je(t)&&(o=t.code,r=t.gvlid,i=t.skipPbsAliasing),li.aliasRegistry[o]=e.code,n(Object.assign({},e,{code:o,gvlid:r,skipPbsAliasing:i}))}))}function ur(e){return Object.assign(new zn(e.code),{getSpec:()=>Object.freeze(Object.assign({},e)),registerSyncs:t,callBids:(n,r,i,o,s,d)=>{if(!Array.isArray(n.bids))return;const c=(e=>{if(Rn(Mn,ar(sn,e)))return{bidRequest:e=>e,bidderRequest:e=>e};function t(e,t,n){return cr.includes(t)?null:Reflect.get(e,t,n)}function n(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 r=wt((e=>n(e,{get:t})),(e=>e.bidId));return{bidRequest:r,bidderRequest:e=>n(e,{get:(n,i,o)=>"bids"===i?e.bids.map(r):t(n,i,o)})}})(n.bidderCode),l={};const u=[];function p(){i(),q.runWithBidder(e.code,(()=>{$t(I.BIDDER_DONE,n),t(u,n.gdprConsent,n.uspConsent,n.gppConsent)}))}const g=br(n).measureTime("validate",(()=>n.bids.filter((t=>{return n=c.bidRequest(t),!!e.isBidRequestValid(n)||(we(`Invalid bid sent to bidder ${e.code}: ${JSON.stringify(n)}`),!1);var n}))));if(0===g.length)return void p();const f={};g.forEach((e=>{f[e.bidId]=e,e.adUnitCode||(e.adUnitCode=e.placementCode)})),fr(e,g.map(c.bidRequest),c.bidderRequest(n),o,d,{onRequest:e=>$t(I.BEFORE_BIDDER_HTTP,n,e),onResponse:t=>{s(e.code),u.push(t)},onPaapi:e=>{const t=f[e.bidId];t?hr(t,e.config):we("Received fledge auction configuration for an unknown bidId",e)},onError:(t,r)=>{r.timedOut||s(e.code),li.callBidderError(e.code,r,n),$t(I.BIDDER_ERROR,{error:r,bidderRequest:n}),xe(`Server call for ${e.code} failed: ${t} ${r.status}. Continuing without bids.`)},onBid:t=>{const n=f[t.requestId];if(n){if(t.adapterCode=n.bidder,((e,t)=>{let n=rn.get(t,"allowAlternateBidderCodes")||!1,r=rn.get(t,"allowedAlternateBidderCodes");return!!(e&&t&&t!==e&&(r=Be(r)?r.map((e=>e.trim().toLowerCase())).filter((e=>!!e)).filter(Je):r,!n||Be(r)&&"*"!==r[0]&&!r.includes(e)))})(t.bidderCode,n.bidder))return we(`${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,_.BIDDER_DISALLOWED);t.originalCpm=t.cpm,t.originalCurrency=t.currency,t.meta=t.meta||Object.assign({},t[n.bidder]);const e=Object.assign(Ln(A.GOOD,n),t,gt(n,cr));!function(e,t){const n=nr(t.metrics);n.checkpoint("addBidResponse"),l[e]=!0,n.measureTime("addBidResponse.validate",(()=>function(e,t){let{index:n=no.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?(()=>{let e=Object.keys(t);return dr.every((n=>a(e,n)&&!a([void 0,null],t[n])))})()?"native"!==t.mediaType||function(e){let{index:t=no.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=t.getAdUnit(e);if(!n)return!1;let r=n.nativeOrtbRequest;return((e,t)=>{if(!y(e,"link.url"))return xe("native response doesn't have 'link' property. Ortb response: ",e),!1;let n=t.assets.filter((e=>1===e.required)).map((e=>e.id)),r=e.assets.map((e=>e.id));const i=n.every((e=>a(r,e)));return i||xe(`didn't receive a bid with all required assets. Required ids: ${n}, but received ids in response: ${r}`),i})(e.native?.ortb||wo(e.native,r),r)}(t,{index:n})?"video"!==t.mediaType||function(e){let{index:t=no.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=y(t.getMediaTypes(e),"video"),r=n&&y(n,"context"),i=n&&y(n,"useCacheKey"),o=t.getAdUnit(e);return Gn(e,o,n,r,i)}(t,{index:n})?!("banner"===t.mediaType&&!function(e,t){let{index:n=no.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;const r=n.getBidRequest(t),i=n.getMediaTypes(t),o=ge(r&&r.sizes||i&&i.banner&&i.banner.sizes);if(1===o.length){const[e,n]=o[0].split("x");return t.width=parseInt(e,10),t.height=parseInt(n,10),!0}return!1}(e,t,{index:n})&&(xe(r("Banner bids require a width and height")),1)):(xe(r("Video bid does not have required vastUrl or renderer property")),!1):(xe(r("Native bid missing some required properties.")),!1):(xe(r(`Bidder ${t.bidderCode} is missing required params. Check http://prebid.org/dev-docs/bidder-adapter-1.html for list of params.`)),!1):(we(`Some adapter tried to add an undefined bid for ${e}.`),!1):(we("No adUnitCode was supplied to addBidResponse."),!1)}(e,t)))?r(e,t):r.reject(e,t,_.INVALID)}(n.adUnitCode,e)}else we(`Bidder ${e.code} made bid for unknown request ID: ${t.requestId}. Ignoring.`),r.reject(null,t,_.INVALID_REQUEST_ID)},onCompletion:p})}});function t(t,n,r,i){mr(e,t,n,r,i)}}const pr=["paapiAuctionConfigs","fledgeAuctionConfigs"],gr=["bids"].concat(pr),fr=pn("sync",((e,t,n,r,i,o)=>{let{onRequest:s,onResponse:a,onPaapi:d,onError:c,onBid:l,onCompletion:u}=o;const p=br(n);u=p.startTiming("total").stopBefore(u);let g=p.measureTime("buildRequests",(()=>e.buildRequests(t,n)));if(!g||0===g.length)return void u();Array.isArray(g)||(g=[g]);const f=at(u,g.length);g.forEach((t=>{const n=p.fork();function o(e){null!=e&&(e.metrics=n.fork().renameWith()),l(e)}const u=i(((r,i)=>{m();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 xe(`Bidder ${e.code} failed to interpret the server's response. Continuing without bids`,null,t),void f()}let s,c;r&&!Object.keys(r).some((e=>!gr.includes(e)))?(s=r.bids,c=(e=>{const[t,n]=pr.map((t=>e[t]));if(null!=t&&null!=n)throw new Error(`Adapter response should use ${pr[0]} over ${pr[1]}, not both`);return t??n})(r)):s=r,Be(c)&&c.forEach(d),s&&(Be(s)?s.forEach(o):o(s)),f()})),g=i(((e,t)=>{m(),c(e,t),f()}));s(t);const m=n.startTiming("net");function h(n){const r=t.options;return Object.assign(n,r,{browsingTopics:!(r?.hasOwnProperty("browsingTopics")&&!r.browsingTopics)&&(rn.get(e.code,"topicsHeader")??!0)&&Rn($n,ar(sn,e.code))})}switch(t.method){case"GET":r(`${t.url}${b=t.data,b?`?${"object"==typeof b?(e=>{let t="";for(var n in e)e.hasOwnProperty(n)&&(t+=n+"="+encodeURIComponent(e[n])+"&");return t=t.replace(/&$/,""),t})(b):b}`:""}`,{success:u,error:g},void 0,h({method:"GET",withCredentials:!0}));break;case"POST":r(t.url,{success:u,error:g},"string"==typeof t.data?t.data:JSON.stringify(t.data),h({method:"POST",contentType:"text/plain",withCredentials:!0}));break;default:we(`Skipping invalid request from ${e.code}. Request type ${t.type} must be GET or POST`),f()}var b}))}),"processBidderRequests"),mr=pn("async",((e,t,n,r,i)=>{const o=q.getConfig("userSync.aliasSyncEnabled");if(e.getUserSyncs&&(o||!li.aliasRegistry[e.code])){let o=q.getConfig("userSync.filterSettings"),s=e.getUserSyncs({iframeEnabled:!(!o||!o.iframe&&!o.all),pixelEnabled:!(!o||!o.image&&!o.all)},t,n,r,i);s&&(Array.isArray(s)||(s=[s]),s.forEach((t=>{yi.registerSync(t.type,e.code,t.url)})),yi.bidderDone(e.code))}}),"registerSyncs"),hr=pn("sync",((e,t)=>{}),"addComponentAuction");function br(e){return nr(e.metrics).renameWith((t=>[`adapter.client.${t}`,`adapters.client.${e.bidderCode}.${t}`]))}let yr={};function vr(e,t,n){let r=((e,t)=>{let n=yr[e]=yr[e]||{bidders:{}};return t?n.bidders[t]=n.bidders[t]||{}:n})(e,n);return r[t]=(r[t]||0)+1,r[t]}function Ar(e){return y(yr,`${e}.requestsCounter`)||0}function Ir(e,t){return y(yr,`${e}.bidders.${t}.requestsCounter`)||0}function wr(e,t){return y(yr,`${e}.bidders.${t}.winsCounter`)||0}function xr(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 Cr(e){let{noLeadingWww:t=!1,noPort:n=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};try{e=new URL(xr(e))}catch(e){return}return e=n?e.hostname:e.host,t&&e.startsWith("www.")&&(e=e.substring(4)),e}function Er(e){try{const t=e.querySelector("link[rel='canonical']");if(null!==t)return t.href}catch(e){}return null}const Tr=function(e){let t,n,r,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window;return i.top!==i?e:()=>{const o=Er(i.document),s=i.location.href;return t===o&&s===n||(t=o,n=s,r=e()),r}}((Sr=window,()=>{const e=[],t=(e=>{try{if(!e.location.ancestorOrigins)return;return e.location.ancestorOrigins}catch(e){}})(Sr),n=q.getConfig("maxNestedIframes");let r,i,o,s,a=!1,d=0,c=!1,l=!1,u=!1;do{const n=r,s=l;let p,g=!1,f=null;l=!1,r=r?r.parent:Sr;try{p=r.location.href||null}catch(e){g=!0}if(g)if(s){const e=n.context;try{f=e.sourceUrl,i=f,u=!0,c=!0,r===Sr.top&&(a=!0),e.canonicalUrl&&(o=e.canonicalUrl)}catch(e){}}else{we("Trying to access cross domain iframe. Continuing without referrer and location");try{const e=n.document.referrer;e&&(f=e,r===Sr.top&&(a=!0))}catch(e){}!f&&t&&t[d-1]&&(f=t[d-1],r===Sr.top&&(u=!0)),f&&!c&&(i=f)}else{if(p&&(f=p,i=f,c=!1,r===Sr.top)){a=!0;const e=Er(r.document);e&&(o=e)}r.context&&r.context.sourceUrl&&(l=!0)}e.push(f),d++}while(r!==Sr.top&&d<n);e.reverse();try{s=Sr.top.document.referrer}catch(e){}const p=a||u?i:null,g=q.getConfig("pageUrl")||o||null;let f=q.getConfig("pageUrl")||p||xr(g,Sr);return p&&p.indexOf("?")>-1&&-1===f.indexOf("?")&&(f=`${f}${p.substring(p.indexOf("?"))}`),{reachedTop:a,isAmp:c,numIframes:d-1,stack:e,topmostLocation:i||null,location:p,canonicalUrl:g,page:f,domain:Cr(f)||null,ref:s||null,legacy:{reachedTop:a,isAmp:c,numIframes:d-1,stack:e,referer:i||null,canonicalUrl:g}}}));var Sr;const _r=Object.freeze({});Object.freeze({});class kr{#i;#o;#s;#a;#d=!0;#c;generatedTime;hashFields;constructor(){this.reset()}#l(e){this.#a=!0,this.#o=e,this.#s.resolve(e)}reset(){this.#s=W(),this.#i=!1,this.#o=null,this.#a=!1,this.generatedTime=null}enable(){this.#i=!0}get enabled(){return this.#i}get ready(){return this.#a}get promise(){return this.#a?V.resolve(this.#o):(this.#i||this.#l(null),this.#s.promise)}setConsentData(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:it();this.generatedTime=t,this.#d=!0,this.#l(e)}getConsentData(){return this.#o}get hash(){return this.#d&&(this.#c=It(JSON.stringify(this.#o&&this.hashFields?this.hashFields.map((e=>this.#o[e])):this.#o)),this.#d=!1),this.#c}}const Or=new class extends kr{hashFields=["gdprApplies","consentString"];getConsentMeta(){const e=this.getConsentData();if(e&&e.vendorData&&this.generatedTime)return{gdprApplies:e.gdprApplies,consentStringSize:De(e.vendorData.tcString)?e.vendorData.tcString.length:0,generatedAt:this.generatedTime,apiVersion:e.apiVersion}}},Rr=new class extends kr{getConsentMeta(){const e=this.getConsentData();if(e&&this.generatedTime)return{usp:e,generatedAt:this.generatedTime}}},Dr=new class extends kr{hashFields=["applicableSections","gppString"];getConsentMeta(){if(this.getConsentData()&&this.generatedTime)return{generatedAt:this.generatedTime}}},Br=(()=>{function e(){return!!q.getConfig("coppa")}return{getCoppa:e,getConsentData:e,getConsentMeta:e,reset(){},get promise(){return V.resolve(e())},get hash(){return e()?"1":"0"}}})(),Ur=(()=>{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}}})(),jr={gdpr:Or,usp:Rr,gpp:Dr,coppa:Br},Pr=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:jr;return e=Object.entries(e),Object.assign({get promise(){return V.all(e.map((e=>{let[t,n]=e;return n.promise.then((e=>[t,e]))}))).then((e=>Object.fromEntries(e)))},get hash(){return It(e.map((e=>{let[t,n]=e;return n.hash})).join(":"))}},Object.fromEntries(["getConsentData","getConsentMeta","reset"].map((t=>{return[t,(n=t,()=>Object.fromEntries(e.map((e=>{let[t,r]=e;return[t,r[n]()]}))))];var n}))))}(),Nr=["data","ext.data","yob","gender","keywords","kwarray","id","buyeruid","customdata"].map((e=>`user.${e}`)).concat("device.ext.cdep"),$r=["user.eids","user.ext.eids"],qr=["user.geo.lat","user.geo.lon","device.geo.lat","device.geo.lon"];function Mr(e){return Object.assign({get(){},run(e,t,n,r,i){const o=n&&n[r];if(Lr(o)&&i()){const e=this.get(o);void 0===e?delete n[r]:n[r]=e}}},e)}function zr(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 r=[];for(var i=arguments.length,o=new Array(i>2?i-2:0),s=2;s<i;s++)o[s-2]=arguments[s];const a=Fr(t,...o);return e.forEach((e=>{if(!1!==t[e.name])for(const[i,o]of e.paths){const s=null==i?n:y(n,i);if(r.push(e.run(n,i,s,o,a.bind(null,e))),!1===t[e.name])return}})),r.filter((e=>null!=e))}}function Fr(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 t=>(e.hasOwnProperty(t.name)||(e[t.name]=!!t.applies(...n)),e[t.name])}function Lr(e){return null!=e&&("object"!=typeof e||Object.keys(e).length>0)}function Vr(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Rn;return n=>!t(e,n)}function Wr(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Rn;return[{name:$n,paths:Nr,applies:Vr($n,e)},{name:Nn,paths:$r,applies:Vr(Nn,e)},{name:qn,paths:qr,applies:Vr(qn,e),get:e=>Math.round(100*(e+Number.EPSILON))/100},{name:Mn,paths:["source.tid"],applies:Vr(Mn,e)}].map(Mr)}const Gr=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Rn;const t=zr(Wr(e)),n=zr(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Rn;return[{name:Nn,paths:["userId","userIdAsEids"],applies:Vr(Nn,e)},{name:Mn,paths:["ortb2Imp.ext.tid"],applies:Vr(Mn,e)}].map(Mr)}(e));return e=>{const r={};return{ortb2:n=>(t(r,n,e),n),bidRequest:t=>(n(r,t,e),t)}}}();On(Mn,"enableTIDs config",(()=>{if(!q.getConfig("enableTIDs"))return{allow:!1,reason:"TIDs are disabled"}}));const Hr="pbsBidAdapter",Jr={CLIENT:"client",SERVER:"server"},Xr={isAllowed:Rn,redact:Gr};let Qr={},Kr=Qr.bidderRegistry={},Yr=Qr.aliasRegistry={},Zr=[];q.getConfig("s2sConfig",(e=>{e&&e.s2sConfig&&(Zr=Be(e.s2sConfig)?e.s2sConfig:[e.s2sConfig])}));var ei={};const ti=_n((e=>Qr.resolveAlias(e))),ni=pn("sync",(e=>{let{bidderCode:t,auctionId:n,bidderRequestId:r,adUnits:i,src:o,metrics:s}=e;return i.reduce(((e,i)=>{const d=i.bids.filter((e=>e.bidder===t));return null==t&&0===d.length&&null!=i.s2sBid&&d.push({bidder:null}),e.push(d.reduce(((e,d)=>{const c=null==(d=Object.assign({},d,{ortb2Imp:At({},i.ortb2Imp,d.ortb2Imp)},ct(i,["nativeParams","nativeOrtbRequest","mediaType","renderer"]))).mediaTypes?i.mediaTypes:d.mediaTypes;return(e=>{const t=["banner","native","video"];return!!Object.keys(e).every((e=>a(t,e)))&&(!e.video||!e.video.context||a(["instream","outstream","adpod"],e.video.context))})(c)?d=Object.assign({},d,{mediaTypes:c}):xe(`mediaTypes is not correctly configured for adunit ${i.code}`),"client"===o&&((e,t)=>{vr(e,"requestsCounter",t)})(i.code,t),e.push(Object.assign({},d,{adUnitCode:i.code,transactionId:i.transactionId,adUnitId:i.adUnitId,sizes:y(c,"banner.sizes")||y(c,"video.playerSize")||[],bidId:d.bid_id||le(),bidderRequestId:r,auctionId:n,src:o,metrics:s,bidRequestsCount:Ar(i.code),bidderRequestsCount:Ir(i.code,d.bidder),bidderWinsCount:wr(i.code,d.bidder)})),e}),[])),e}),[]).reduce(Xe,[]).filter((e=>""!==e))}),"getBids"),ri=pn("sync",(function(e,t){let{getS2SBidders:n=oi}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null==t)return e;{const r=n(t);return e.filter((e=>r.has(e.bidder)))}}),"filterBidsForAdUnit"),ii=pn("sync",((e,t)=>e),"setupAdUnitMediaTypes");function oi(e){Be(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 si=pn("sync",(function(e,t){let{getS2SBidders:n=oi}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=n(t);return Ye(e).reduce(((e,t)=>(e[r.has(t)?Jr.SERVER:Jr.CLIENT].push(t),e)),{[Jr.CLIENT]:[],[Jr.SERVER]:[]})}),"partitionBidders");function ai(e,t){const n=Kr[e],r=n?.getSpec&&n.getSpec();if(r&&r[t]&&"function"==typeof r[t])return[r,r[t]]}function di(e,t,n,r){try{Ie(`Invoking ${e}.${t}`);for(var i=arguments.length,o=new Array(i>4?i-4:0),s=4;s<i;s++)o[s-4]=arguments[s];q.runWithBidder(e,r.bind(n,...o))}catch(n){we(`Error calling ${t} of ${e}`)}}function ci(e,t,n){if(n?.src!==T){const r=ai(e,t);null!=r&&di(e,t,...r,n)}}Qr.makeBidRequests=pn("sync",(function(e,t,n,r,i){let o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},s=arguments.length>6?arguments[6]:void 0;s=nr(s),$t(I.BEFORE_REQUEST_BIDS,e),(e=>{e.forEach((e=>{const t=e.nativeParams||y(e,"mediaTypes.native");t&&(e.nativeParams=uo(t)),e.nativeParams&&(e.nativeOrtbRequest=e.nativeParams.ortb||(e=>{if(!e&&!je(e))return void xe("Native assets object is empty or not an object: ",e);const t={ver:"1.2",assets:[]};for(let n in e){if(D.includes(n))continue;if(!E.hasOwnProperty(n)){xe(`Unrecognized native asset code: ${n}. Asset will be ignored.`);continue}if("privacyLink"===n){t.privacy=1;continue}const r=e[n];let i=0;r.required&&Pe(r.required)&&(i=Number(r.required));const o={id:t.assets.length,required:i};if(n in k)o.data={type:O[k[n]]},r.len&&(o.data.len=r.len);else if("icon"===n||"image"===n){if(o.img={type:"icon"===n?R.ICON:R.MAIN},r.aspect_ratios)if(Be(r.aspect_ratios))if(r.aspect_ratios.length){const{min_width:e,min_height:t}=r.aspect_ratios[0];pt(e)&&pt(t)?(o.img.wmin=e,o.img.hmin=t):xe("image.aspect_ratios min_width or min_height are invalid: ",e,t);const n=r.aspect_ratios.filter((e=>e.ratio_width&&e.ratio_height)).map((e=>`${e.ratio_width}:${e.ratio_height}`));n.length>0&&(o.img.ext={aspectratios:n})}else xe("image.aspect_ratios was passed, but it's empty:",r.aspect_ratios);else xe("image.aspect_ratios was passed, but it's not a an array:",r.aspect_ratios);r.sizes&&(2===r.sizes.length&&pt(r.sizes[0])&&pt(r.sizes[1])?(o.img.w=r.sizes[0],o.img.h=r.sizes[1],delete o.img.hmin,delete o.img.wmin):xe("image.sizes was passed, but its value is not an array of integers:",r.sizes))}else"title"===n?o.title={len:r.len||140}:"ext"===n&&(o.ext=r,delete o.required);t.assets.push(o)}return t})(e.nativeParams))}))})(e),e.forEach((e=>{je(e.mediaTypes)||(e.mediaTypes={}),e.bids=e.bids.filter((e=>!e.bidder||Xr.isAllowed(Pn,ti(sn,e.bidder)))),vr(e.code,"requestsCounter")})),e=ii(e,i);let{[Jr.CLIENT]:a,[Jr.SERVER]:c}=si(e,Zr);q.getConfig("bidderSequence")===j&&(a=et(a));const l=Tr();let u=[];const p=o.global||{},g=o.bidder||{};function f(e,t){const r=Xr.redact(null!=t?t:ti(sn,e.bidderCode)),i=Object.freeze(r.ortb2(At({source:{tid:n}},p,g[e.bidderCode])));return e.ortb2=i,e.bids=e.bids.map((e=>(e.ortb2=i,r.bidRequest(e)))),e}Zr.forEach((r=>{const i=(e=>ti(on,Hr,{[Cn]:e.configName}))(r);if(r&&r.enabled&&Xr.isAllowed(Pn,i)){let{adUnits:o,hasModuleBids:a}=((e,t)=>{let n=tt(e),r=!1;return n.forEach((e=>{const n=e.bids.filter((e=>e.module===Hr&&e.params?.configName===t.configName));1===n.length?(e.s2sBid=n[0],r=!0,e.ortb2Imp=At({},e.s2sBid.ortb2Imp,e.ortb2Imp)):n.length>1&&we('Multiple "module" bids for the same s2s configuration; all will be ignored',n),e.bids=ri(e.bids,t).map((e=>(e.bid_id=le(),e)))})),n=n.filter((e=>0!==e.bids.length||null!=e.s2sBid)),{adUnits:n,hasModuleBids:r}})(e,r),p=ue();(0===c.length&&a?[null]:c).forEach((e=>{const a=le(),d=s.fork(),c=f({bidderCode:e,auctionId:n,bidderRequestId:a,uniquePbsTid:p,bids:ni({bidderCode:e,auctionId:n,bidderRequestId:a,adUnits:tt(o),src:T,metrics:d}),auctionStart:t,timeout:r.timeout,src:T,refererInfo:l,metrics:d},i);0!==c.bids.length&&u.push(c)})),o.forEach((e=>{let t=e.bids.filter((e=>d(u,(t=>d(t.bids,(t=>t.bidId===e.bid_id))))));e.bids=t})),u.forEach((e=>{void 0===e.adUnitsS2SCopy&&(e.adUnitsS2SCopy=o.filter((e=>e.bids.length>0||null!=e.s2sBid)))}))}}));let m=(e=>{let t=tt(e);return t.forEach((e=>{e.bids=ri(e.bids,null)})),t=t.filter((e=>0!==e.bids.length)),t})(e);return a.forEach((e=>{const o=le(),a=s.fork(),d=f({bidderCode:e,auctionId:n,bidderRequestId:o,bids:ni({bidderCode:e,auctionId:n,bidderRequestId:o,adUnits:tt(m),labels:i,src:"client",metrics:a}),auctionStart:t,timeout:r,refererInfo:l,metrics:a}),c=Kr[e];c||xe(`Trying to make a request for bidder that does not exist: ${e}`),c&&d.bids&&0!==d.bids.length&&u.push(d)})),u.forEach((e=>{Or.getConsentData()&&(e.gdprConsent=Or.getConsentData()),Rr.getConsentData()&&(e.uspConsent=Rr.getConsentData()),Dr.getConsentData()&&(e.gppConsent=Dr.getConsentData())})),u}),"makeBidRequests"),Qr.callBids=function(e,t,n,r,i,o,s){let a=arguments.length>7&&void 0!==arguments[7]?arguments[7]:{};if(!t.length)return void we("callBids executed with no bidRequests.  Were they filtered by labels or sizing?");let[d,c]=t.reduce(((e,t)=>(e[Number(void 0!==t.src&&t.src===T)].push(t),e)),[[],[]]);var l=[];c.forEach((e=>{for(var t=-1,n=0;n<l.length;++n)if(e.uniquePbsTid===l[n].uniquePbsTid){t=n;break}t<=-1&&l.push(e)}));let u=0;Zr.forEach((e=>{if(e&&l[u]&&oi(e).has(l[u].bidderCode)){const t=Ht(o,i?{request:i.request.bind(null,"s2s"),done:i.done}:void 0);let d=e.bidders;const p=Kr[e.adapter];let g=l[u].uniquePbsTid,f=l[u].adUnitsS2SCopy,m=c.filter((e=>e.uniquePbsTid===g));if(p){let i={ad_units:f,s2sConfig:e,ortb2Fragments:a};if(i.ad_units.length){let e=m.map((e=>(e.start=it(),function(t){t||s(e.bidderRequestId),r.apply(e,arguments)})));const o=Ye(i.ad_units).filter((e=>d.includes(e)));Ae(`CALLING S2S HEADER BIDDERS ==== ${o.length>0?o.join(", "):'No bidder specified, using "ortb2Imp" definition(s) only'}`),m.forEach((e=>{$t(I.BID_REQUESTED,{...e,tid:e.auctionId})})),p.callBids(i,c,n,(t=>e.forEach((e=>e(t)))),t)}}else xe("missing "+e.adapter);u++}})),d.forEach((e=>{e.start=it();const t=Kr[e.bidderCode];q.runWithBidder(e.bidderCode,(()=>{Ae("CALLING BIDDER"),$t(I.BID_REQUESTED,e)}));let a=Ht(o,i?{request:i.request.bind(null,e.bidderCode),done:i.done}:void 0);const d=r.bind(e);try{q.runWithBidder(e.bidderCode,t.callBids.bind(t,e,n,d,a,(()=>s(e.bidderRequestId)),q.callbackWithBidder(e.bidderCode)))}catch(t){xe(`${e.bidderCode} Bid Adapter emitted an uncaught error when parsing their bidRequest`,{e:t,bidRequest:e}),d()}}))},Qr.videoAdapters=[],Qr.registerBidAdapter=function(e,t){let{supportedMediaTypes:n=[]}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};e&&t?"function"==typeof e.callBids?(Kr[t]=e,Ur.register(sn,t,e.getSpec?.().gvlid),a(n,"video")&&Qr.videoAdapters.push(t),a(n,"native")&&ro.push(t)):xe("Bidder adaptor error for bidder code: "+t+"bidder must implement a callBids() function"):xe("bidAdapter or bidderCode not specified")},Qr.aliasBidAdapter=(e,t,n)=>{if(void 0===Kr[t]){let r=Kr[e];if(void 0===r){const n=[];Zr.forEach((r=>{if(r.bidders&&r.bidders.length){const i=r&&r.bidders;r&&a(i,t)?Yr[t]=e:n.push(e)}})),n.forEach((e=>{xe('bidderCode "'+e+'" is not an existing bidder.',"adapterManager.aliasBidAdapter")}))}else try{let i,o=(e=>{let t=[];return a(Qr.videoAdapters,e)&&t.push("video"),a(ro,e)&&t.push("native"),t})(e);if(r.constructor.prototype!=Object.prototype)i=new r.constructor,i.setBidderCode(t);else{let o=r.getSpec(),s=n&&n.gvlid;null!=o.gvlid&&null==s&&we(`Alias '${t}' will NOT re-use the GVL ID of the original adapter ('${o.code}', gvlid: ${o.gvlid}). Functionality that requires TCF consent may not work as expected.`);let a=n&&n.skipPbsAliasing;i=ur(Object.assign({},o,{code:t,gvlid:s,skipPbsAliasing:a})),Yr[t]=e}Qr.registerBidAdapter(i,t,{supportedMediaTypes:o})}catch(t){xe(e+" bidder does not currently support aliasing.","adapterManager.aliasBidAdapter")}}else Ae('alias name "'+t+'" has been already specified.')},Qr.resolveAlias=e=>{let t,n=e;for(;Yr[n]&&(!t||!t.has(n));)n=Yr[n],(t=t||new Set).add(n);return n},Qr.registerAnalyticsAdapter=e=>{let{adapter:t,code:n,gvlid:r}=e;t&&n?"function"==typeof t.enableAnalytics?(t.code=n,ei[n]={adapter:t,gvlid:r},Ur.register(cn,n,r)):xe(`Prebid Error: Analytics adaptor error for analytics "${n}"\n        analytics adapter must implement an enableAnalytics() function`):xe("Prebid Error: analyticsAdapter or analyticsCode not specified")},Qr.enableAnalytics=e=>{Be(e)||(e=[e]),e.forEach((e=>{const t=ei[e.provider];t&&t.adapter?Xr.isAllowed("reportAnalytics",ti(cn,e.provider,{[Sn]:e}))&&t.adapter.enableAnalytics(e):xe(`Prebid Error: no analytics adapter found in registry for '${e.provider}'.`)}))},Qr.getBidAdapter=e=>Kr[e],Qr.getAnalyticsAdapter=e=>ei[e],Qr.callTimedOutBidders=(e,t,n)=>{t=dt(t=t.map((t=>(t.params=lt(e,t.adUnitCode,t.bidder),t.timeout=n,t))),"bidder"),Object.keys(t).forEach((e=>{ci(e,"onTimeout",t[e])}))},Qr.callBidWonBidder=(e,t,n)=>{t.params=lt(n,t.adUnitCode,t.bidder),vr(t.adUnitCode,"winsCounter",t.bidder),ci(e,"onBidWon",t)},Qr.callBidBillableBidder=e=>{ci(e.bidder,"onBidBillable",e)},Qr.callSetTargetingBidder=(e,t)=>{ci(e,"onSetTargeting",t)},Qr.callBidViewableBidder=(e,t)=>{ci(e,"onBidViewable",t)},Qr.callBidderError=(e,t,n)=>{ci(e,"onBidderError",{error:t,bidderRequest:n})},Qr.callDataDeletionRequest=pn("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(Kr).filter((e=>!Yr.hasOwnProperty(e))).forEach((e=>{const n=ai(e,r);if(null!=n){const i=no.getBidsRequested().filter((t=>(e=>{const t=new Set;for(;Yr.hasOwnProperty(e)&&!t.has(e);)t.add(e),e=Yr[e];return e})(t.bidderCode)===e));di(e,r,...n,i,...t)}})),Object.entries(ei).forEach((e=>{let[n,i]=e;const o=i?.adapter?.[r];if("function"==typeof o)try{o.apply(i.adapter,t)}catch(e){xe(`error calling ${r} of ${n}`,e)}}))}));const li=Qr,ui="html5",pi="cookie";let gi=[];function fi(){let{moduleName:e,moduleType:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{isAllowed:n=Rn}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};function r(r,i){let o=e;const s=q.getCurrentBidder();return s&&t===sn&&li.aliasRegistry[s]===e&&(o=s),r({valid:n(Dn,ar(t,o,{[xn]:i}))})}function i(e,t,n){if(!n||"function"!=typeof n)return r(e,t);gi.push((()=>{let i=r(e,t);n(i)}))}const o=e=>i((e=>{if(e&&e.valid)try{return!!window.localStorage}catch(e){xe("Local storage api disabled")}return!1}),ui,e);return{setCookie:(e,t,n,r,o,s)=>i((i=>{if(i&&i.valid){const i=o&&""!==o?` ;domain=${encodeURIComponent(o)}`:"",s=n&&""!==n?` ;expires=${n}`:"",a=null!=r&&"none"==r.toLowerCase()?"; Secure":"";document.cookie=`${e}=${encodeURIComponent(t)}${s}; path=/${i}${r?`; SameSite=${r}`:""}${a}`}}),pi,s),getCookie:(e,t)=>i((t=>{if(t&&t.valid){let t=window.document.cookie.match("(^|;)\\s*"+e+"\\s*=\\s*([^;]*)\\s*(;|$)");return t?decodeURIComponent(t[2]):null}return null}),pi,t),localStorageIsEnabled:e=>i((e=>{if(e&&e.valid)try{return localStorage.setItem("prebid.cookieTest","1"),"1"===localStorage.getItem("prebid.cookieTest")}catch(e){}finally{try{localStorage.removeItem("prebid.cookieTest")}catch(e){}}return!1}),ui,e),cookiesAreEnabled:e=>i((e=>!(!e||!e.valid)&&st()),pi,e),setDataInLocalStorage:(e,t,n)=>i((n=>{n&&n.valid&&o()&&window.localStorage.setItem(e,t)}),ui,n),getDataFromLocalStorage:(e,t)=>i((t=>t&&t.valid&&o()?window.localStorage.getItem(e):null),ui,t),removeDataFromLocalStorage:(e,t)=>i((t=>{t&&t.valid&&o()&&window.localStorage.removeItem(e)}),ui,t),hasLocalStorage:o,findSimilarCookies:(e,t)=>i((t=>{if(t&&t.valid){const t=[];if(ot()){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}}),pi,t)}}function mi(){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!==sn||t)&&r(),e=sn,t=n):t&&e||r(),fi({moduleType:e,moduleName:t})}function hi(e){return fi({moduleName:e,moduleType:on})}On(Dn,"deviceAccess config",(()=>{if(!ot())return{allow:!1}})),On(Dn,"bidderSettings.*.storageAllowed",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:rn;if(e[An]!==sn)return;let n=t.get(e[wn],"storageAllowed");if(n&&!0!==n){const t=e[xn];n=Array.isArray(n)?n.some((e=>e===t)):n===t}else n=!!n;return n?void 0:{allow:n}})),q.setDefaults({userSync:tt({syncEnabled:!0,filterSettings:{image:{bidders:"*",filter:"include"}},syncsPerBidder:5,syncDelay:3e3,auctionDelay:0})});const bi=hi("usersync"),yi=(e=>{let t={},n={image:[],iframe:[]},r=new Set,i={},o={image:!0,iframe:!1},s=e.config;function d(){if(s.syncEnabled&&e.browserSupportsCookies){try{o.iframe&&c(n.iframe,(e=>{let[t,r]=e;Ae(`Invoking iframe user sync for bidder: ${t}`),We(r),((e,t)=>{e.image=e.image.filter((e=>e[0]!==t))})(n,t)})),o.image&&c(n.image,(e=>{let[t,n]=e;Ae(`Invoking image pixel user sync for bidder: ${t}`),Le(n)}))}catch(e){return xe("Error firing user syncs",e)}n={image:[],iframe:[]}}}function c(e,t){et(e).forEach(t)}return q.getConfig("userSync",(e=>{if(e.userSync){let t=e.userSync.filterSettings;je(t)&&(t.image||t.all||(e.userSync.filterSettings.image={bidders:"*",filter:"include"}))}s=Object.assign(s,e.userSync)})),e.regRule(Bn,"userSync config",(e=>{if(!s.syncEnabled)return{allow:!1,reason:"syncs are disabled"};if(e[An]===sn){const n=e[En],r=e[In];if(!t.canBidderRegisterSync(n,r))return{allow:!1,reason:`${n} syncs are not enabled for ${r}`}}})),t.registerSync=(t,o,a)=>r.has(o)?Ae(`already fired syncs for "${o}", ignoring registerSync call`):s.syncEnabled&&Be(n[t])?o?0!==s.syncsPerBidder&&Number(i[o])>=s.syncsPerBidder?we(`Number of user syncs exceeded for "${o}"`):void(e.isAllowed(Bn,ar(sn,o,{[En]:t,[Tn]:a}))&&(n[t].push([o,a]),i=((e,t)=>(e[t]?e[t]+=1:e[t]=1,e))(i,o))):we("Bidder is required for registering sync"):we(`User sync type "${t}" not supported`),t.bidderDone=r.add.bind(r),t.syncUsers=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(e)return setTimeout(d,Number(e));d()},t.triggerUserSyncs=()=>{s.enableOverride&&t.syncUsers()},t.canBidderRegisterSync=(e,t)=>!s.filterSettings||!function(e,t){let n=s.filterSettings;if(((e,t)=>{if(e.all&&e[t])return we(`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;let n=e.all?e.all:e[t],r=e.all?"all":t;if(!n)return!1;let i=n.filter,o=n.bidders;return i&&"include"!==i&&"exclude"!==i?(we(`UserSync "filterSettings.${r}.filter" setting '${i}' is not a valid option; use either 'include' or 'exclude'.`),!1):!!("*"===o||Array.isArray(o)&&o.length>0&&o.every((e=>De(e)&&"*"!==e)))||(we(`Detected an invalid setup in userSync "filterSettings.${r}.bidders"; use either '*' (to represent all bidders) or an array of bidders.`),!1)})(n,e)){o[e]=!0;let r=n.all?n.all:n[e],i="*"===r.bidders?[t]:r.bidders;const s={include:(e,t)=>!a(e,t),exclude:(e,t)=>a(e,t)};return s[r.filter||"include"](i,t)}return!o[e]}(e,t),t})(Object.defineProperties({config:q.getConfig("userSync"),isAllowed:Rn,regRule:On},{browserSupportsCookies:{get:()=>!/^((?!chrome|android|crios|fxios).)*safari/i.test(navigator.userAgent)&&bi.cookiesAreEnabled()}})),vi="native",Ai="video",Ii="banner",wi="adpod";function xi(e,t,n){let{index:r=no.index,bs:i=rn}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};n=n||r.getBidRequest(t);const o=t?.adapterCode,s=t?.bidderCode||n?.bidder,a=i.get(t?.adapterCode,"adjustAlternateBids"),d=i.getOwn(s,"bidCpmAdjustment")||i.get(a?o:s,"bidCpmAdjustment");if(d&&"function"==typeof d)try{return d(e,Object.assign({},t),n)}catch(e){xe("Error during bid adjustment",e)}return e}const{syncUsers:Ci}=yi,Ei="completed";Ut(I.BID_ADJUSTMENT,(e=>{(e=>{let t=xi(e.cpm,e);t>=0&&(e.cpm=t)})(e)}));const Ti={},Si={},_i=[],ki=o();function Oi(e){let{adUnits:t,adUnitCodes:n,callback:r,cbTimeout:i,labels:o,auctionId:s,ortb2Fragments:d,metrics:c}=e;c=nr(c);const h=t,b=o,v=n,A=s||ue(),w=i,x=new Set,C=W();let E,S,_,k,O=[],D=r,B=[],U=[],j=[],P=[],N=[];function $(){return{auctionId:A,timestamp:E,auctionEnd:S,auctionStatus:k,adUnits:h,adUnitCodes:v,labels:b,bidderRequests:B,noBids:j,bidsReceived:U,bidsRejected:O,winningBids:P,timeout:w,metrics:c,seatNonBids:N}}function M(e){if(e?$t(I.AUCTION_TIMEOUT,$()):clearTimeout(_),void 0===S){let n=[];e&&(Ae(`Auction ${A} timedOut`),n=B.filter((e=>!x.has(e.bidderRequestId))).flatMap((e=>e.bids)),n.length&&$t(I.BID_TIMEOUT,n)),k=Ei,S=Date.now(),c.checkpoint("auctionEnd"),c.timeBetween("requestBids","auctionEnd","requestBids.total"),c.timeBetween("callBids","auctionEnd","requestBids.callBids"),C.resolve(),$t(I.AUCTION_END,$()),Ui(h,(()=>{try{if(null!=D){const t=U.filter((e=>v.includes(e.adUnitCode))).reduce(Qi,{});D.apply(ki,[t,e,A]),D=null}}catch(e){xe("Error executing bidsBackHandler",null,e)}finally{n.length&&li.callTimedOutBidders(t,n,w);let e=q.getConfig("userSync")||{};e.enableOverride||Ci(e.syncDelay)}}))}}function z(){q.resetBidder(),Ie(`Bids Received for Auction with id: ${A}`,U),k=Ei,M(!1)}function F(e){x.add(e)}function L(e){e.forEach((e=>{var t;t=e,B=B.concat(t)}));let t={},n={bidRequests:e,run:()=>{_=setTimeout((()=>M(!0)),w),k="inProgress",$t(I.AUCTION_INIT,$());let n=function(e,t){let{index:n=no.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=0,i=!1,o=new Set,s={};function d(){r--,i&&0===r&&e()}function c(e,t,n){return s[t.requestId]=!0,function(e,t){let{index:n=no.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=n.getBidderRequest(e),i=n.getAdUnit(e),o=r&&r.start||e.requestTimestamp;Object.assign(e,{responseTimestamp:e.responseTimestamp||it(),requestTimestamp:e.requestTimestamp||o,cpm:parseFloat(e.cpm)||0,bidder:e.bidder||e.bidderCode,adUnitCode:t}),null!=i?.ttlBuffer&&(e.ttlBuffer=i.ttlBuffer),e.timeToRespond=e.responseTimestamp-e.requestTimestamp}(t,e),r++,n(d)}function h(e,r){c(e,r,(e=>{let i=function(e){let{index:t=no.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};$t(I.BID_ADJUSTMENT,e);const n=t.getBidRequest(e)?.renderer||t.getAdUnit(e).renderer,r=e.mediaType,i=t.getMediaTypes(e),o=i&&i[r];var s=o&&o.renderer,a=null;s&&s.url&&s.render&&(!0!==s.backupOnly||!e.renderer)?a=s:n&&n.url&&n.render&&(!0!==n.backupOnly||!e.renderer)&&(a=n),a&&(e.renderer=nn.install({url:a.url,config:a.options}),e.renderer.setRender(a.render));const d=zi(e.mediaType,i,q.getConfig("mediaTypePriceGranularity")),c=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,r=parseFloat(e);return isNaN(r)&&(r=""),{low:""===r?"":m(e,l,n),med:""===r?"":m(e,u,n),high:""===r?"":m(e,p,n),auto:""===r?"":m(e,f,n),dense:""===r?"":m(e,g,n),custom:""===r?"":m(e,t,n)}}(e.cpm,"object"==typeof d?d:q.getConfig("customPriceBucket"),q.getConfig("currency.granularityMultiplier"));return e.pbLg=c.low,e.pbMg=c.med,e.pbHg=c.high,e.pbAg=c.auto,e.pbDg=c.dense,e.pbCg=c.custom,e}(r);$t(I.BID_ACCEPTED,i),i.mediaType===Ai?function(e,t,n){let{index:r=no.index}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},i=!0;const o=y(r.getMediaTypes({requestId:t.originalRequestId||t.requestId,adUnitId:t.adUnitId}),"video"),s=o&&y(o,"context"),a=o&&y(o,"useCacheKey");q.getConfig("cache.url")&&(a||s!==Vn)&&(!t.videoCacheKey||q.getConfig("cache.ignoreBidderCacheKey")?(i=!1,Mi(e,t,n,o)):t.vastUrl||(xe("videoCacheKey specified but not required vastUrl for video bid"),i=!1)),i&&(ji(e,t),n())}(t,i,e):((e=>e.native&&"object"==typeof e.native)(i)&&((e,t)=>{const n=t?.nativeOrtbRequest,r=e.native?.ortb;if(n&&r){const t=((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===R.MAIN?"image":"icon"]={url:t.img.url,width:t.img.w,height:t.img.h}:t.data&&(n[so[ao[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===lo.impression&&t.method===co.img&&n.impressionTrackers.push(t.url),t.event===lo.impression&&t.method===co.js&&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})(r,n);Object.assign(e.native,t)}["rendererUrl","adTemplate"].forEach((n=>{const r=t?.nativeParams?.[n];r&&(e.native[n]=yo(r))}))})(i,n.getAdUnit(i)),ji(t,i),e())}))}function b(e,n,r){return c(e,n,(e=>{n.rejectionReason=r,we(`Bid from ${n.bidder||"unknown bidder"} was rejected: ${r}`,n),$t(I.BID_REJECTED,n),t.addBidRejected(n),e()}))}function v(){let n=t.getBidRequests();const d=q.getConfig("auctionOptions");if(o.add(this),d&&!Ne(d)){const e=d.secondaryBidders;e&&!n.every((t=>a(e,t.bidderCode)))&&(n=n.filter((t=>!a(e,t.bidderCode))))}i=n.every((e=>o.has(e))),this.bids.forEach((e=>{s[e.bidId]||(t.addNoBid(e),$t(I.NO_BID,e))})),i&&0===r&&e()}return{addBidResponse:(()=>{function e(e,t){Ri.call({dispatch:h},e,t,(()=>{let n=!1;return r=>{n||(b(e,t,r),n=!0)}})())}return e.reject=b,e})(),adapterDone:function(){Di(V.resolve()).finally((()=>v.call(this)))}}}(z,this);li.callBids(h,e,n.addBidResponse,n.adapterDone,{request(e,n){i(Ti,n),i(t,e),Si[e]||(Si[e]={SRA:!0,origin:n}),t[e]>1&&(Si[e].SRA=!1)},done(e){Ti[e]--,_i[0]&&r(_i[0])&&_i.shift()}},w,F,d)}};function r(e){let t=!0,n=q.getConfig("maxRequestsPerOrigin")||4;return e.bidRequests.some((e=>{let r=1,i=void 0!==e.src&&e.src===T?"s2s":e.bidderCode;return Si[i]&&(!1===Si[i].SRA&&(r=Math.min(e.bids.length,n)),Ti[Si[i].origin]+r>n&&(t=!1)),!t})),t&&e.run(),t}function i(e,t){void 0===e[t]?e[t]=1:e[t]++}r(n)||(we("queueing auction due to limited endpoint capacity"),_i.push(n))}return Ut(I.SEAT_NON_BID,(e=>{var t;e.auctionId===A&&(t=e.seatnonbid,N=N.concat(t))})),{addBidReceived:e=>{U=U.concat(e)},addBidRejected:e=>{O=O.concat(e)},addNoBid:e=>{j=j.concat(e)},callBids:function(){k="started",E=Date.now();let e=c.measureTime("requestBids.makeRequests",(()=>li.makeBidRequests(h,E,A,w,b,d,c)));Ie(`Bids Requested for Auction with id: ${A}`,e),c.checkpoint("callBids"),e.length<1?(we("No valid bid requests returned for auction"),z()):Bi.call({dispatch:L,context:this},e)},addWinningBid:e=>{const n=t.find((t=>t.adUnitId===e.adUnitId));P=P.concat(e),(e=>{let{source:t,burl:n}=e;t===T&&n&&se.triggerPixel(n)})(e),li.callBidWonBidder(e.adapterCode||e.bidder,e,t),n&&!n.deferBilling&&li.callBidBillableBidder(e)},setBidTargeting:e=>{li.callSetTargetingBidder(e.adapterCode||e.bidder,e)},getWinningBids:()=>P,getAuctionStart:()=>E,getAuctionEnd:()=>S,getTimeout:()=>w,getAuctionId:()=>A,getAuctionStatus:()=>k,getAdUnits:()=>h,getAdUnitCodes:()=>v,getBidRequests:()=>B,getBidsReceived:()=>U,getNoBids:()=>j,getNonBids:()=>N,getFPD:()=>d,getMetrics:()=>c,end:C.promise}}const Ri=pn("sync",(function(e,t,n){this.dispatch.call(null,e,t)}),"addBidResponse"),Di=pn("sync",(e=>e),"responsesReady"),Bi=pn("sync",(function(e){this.dispatch.call(this.context,e)}),"addBidderRequests"),Ui=pn("async",((e,t)=>{t&&t()}),"bidsBackCallback");function ji(e,t){(e=>{let t;const n=!0===rn.get(e.bidderCode,"allowZeroCpmBids")?e.cpm>=0:e.cpm>0;e.bidderCode&&(n||e.dealId)&&(t=function(e,t){let{index:n=no.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!t)return{};const r=n.getBidRequest(t);var i={};return Xi(i,Ji(t.mediaType,e),t,r),e&&rn.getOwn(e,v.ADSERVER_TARGETING)&&(Xi(i,rn.ownSettingsFor(e),t,r),t.sendStandardTargeting=rn.get(e,"sendStandardTargeting")),t.native&&(i=Object.assign({},i,function(e){let{index:t=no.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n={};const r=t.getAdUnit(e),i=!1!==y(r,"nativeParams.sendTargetingKeys"),o=(e=>{const t={};return y(e,"nativeParams.ext")&&Object.keys(e.nativeParams.ext).forEach((e=>{t[e]=`hb_native_${e}`})),{...E,...t}})(r),s={...e.native,...e.native.ext};return delete s.ext,Object.keys(s).forEach((t=>{const s=o[t];let a=yo(e.native[t])||yo(y(e,`native.ext.${t}`));if("adTemplate"===t||!s||!a)return;let d=y(r,`nativeParams.${t}.sendId`);"boolean"!=typeof d&&(d=y(r,`nativeParams.ext.${t}.sendId`)),d&&(a=`${s}:${e.adId}`);let c=y(r,`nativeParams.${t}.sendTargetingKeys`);"boolean"!=typeof c&&(c=y(r,`nativeParams.ext.${t}.sendTargetingKeys`)),("boolean"==typeof c?c:i)&&(n[s]=a)})),n}(t))),i}(e.bidderCode,e)),e.adserverTargeting=Object.assign(e.adserverTargeting||{},t)})(t),nr(t.metrics).timeSince("addBidResponse","addBidResponse.total"),e.addBidReceived(t),$t(I.BID_RESPONSE,t)}const Pi=e=>{!function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Ht;const r={puts:e.map(Qt)};n(q.getConfig("cache.timeout"))(q.getConfig("cache.url"),(e=>({success: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:(t,n)=>{e(new Error(`Error storing video ad in the cache: ${t}: ${JSON.stringify(n)}`),[])}}))(t),JSON.stringify(r),{contentType:"text/plain",withCredentials:!0})}(e.map((e=>e.bidResponse)),((t,n)=>{n.forEach(((n,r)=>{const{auctionInstance:i,bidResponse:o,afterBidAdded:s}=e[r];var a;t?we(`Failed to save to the video cache: ${t}. Video bid must be discarded.`):""===n.uuid?we("Supplied video cache key was already in use by Prebid Cache; caching attempt was rejected. Video bid must be discarded."):(o.videoCacheKey=n.uuid,o.vastUrl||(o.vastUrl=(a=o.videoCacheKey,`${q.getConfig("cache.url")}?uuid=${a}`)),ji(i,o),s())}))}))};let Ni,$i;q.getConfig("cache",(e=>{Ni="number"==typeof e.cache.batchSize&&e.cache.batchSize>0?e.cache.batchSize:1,$i="number"==typeof e.cache.batchTimeout&&e.cache.batchTimeout>0?e.cache.batchTimeout:0}));const qi=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:setTimeout,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Pi,n=[[]],r=!1;const i=e=>e();return(o,s,a)=>{const d=$i>0?e:i;n[n.length-1].length>=Ni&&n.push([]),n[n.length-1].push({auctionInstance:o,bidResponse:s,afterBidAdded:a}),r||(r=!0,d((()=>{n.forEach(t),n=[[]],r=!1}),$i))}}(),Mi=pn("async",((e,t,n,r)=>{qi(e,t,n)}),"callPrebidCache");function zi(e,t,n){if(e&&n){if(e===Ai){const e=y(t,`${Ai}.context`,"instream");if(n[`${Ai}-${e}`])return n[`${Ai}-${e}`]}return n[e]}}const Fi=e=>t=>{const n=e||function(e){let{index:t=no.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=zi(e.mediaType,t.getMediaTypes(e),q.getConfig("mediaTypePriceGranularity"));return"string"==typeof e.mediaType&&n?"string"==typeof n?n:"custom":q.getConfig("priceGranularity")}(t);return"auto"===n?t.pbAg:"dense"===n?t.pbDg:"low"===n?t.pbLg:"medium"===n?t.pbMg:"high"===n?t.pbHg:"custom"===n?t.pbCg:void 0},Li=()=>e=>e.creativeId?e.creativeId:"",Vi=()=>e=>e.meta&&e.meta.advertiserDomains&&e.meta.advertiserDomains.length>0?[e.meta.advertiserDomains].flat()[0]:"",Wi=()=>e=>e.meta&&(e.meta.networkId||e.meta.networkName)?y(e,"meta.networkName")||y(e,"meta.networkId"):"",Gi=()=>e=>e.meta&&e.meta.primaryCatId?e.meta.primaryCatId:"";function Hi(e,t){return{key:e,val:"function"==typeof t?(e,n)=>t(e,n):e=>Ke(e,t)}}function Ji(e,t){const n=Object.assign({},rn.settingsFor(null));if(n[v.ADSERVER_TARGETING]||(n[v.ADSERVER_TARGETING]=[Hi(x.BIDDER,"bidderCode"),Hi(x.AD_ID,"adId"),Hi(x.PRICE_BUCKET,Fi()),Hi(x.SIZE,"size"),Hi(x.DEAL,"dealId"),Hi(x.SOURCE,"source"),Hi(x.FORMAT,"mediaType"),Hi(x.ADOMAIN,Vi()),Hi(x.ACAT,Gi()),Hi(x.DSP,Wi()),Hi(x.CRID,Li())]),"video"===e){const e=n[v.ADSERVER_TARGETING].slice();if(n[v.ADSERVER_TARGETING]=e,[x.UUID,x.CACHE_ID].forEach((t=>{void 0===d(e,(e=>e.key===t))&&e.push(Hi(t,"videoCacheKey"))})),q.getConfig("cache.url")&&(!t||!1!==rn.get(t,"sendStandardTargeting"))){const t=bt(q.getConfig("cache.url"));void 0===d(e,(e=>e.key===x.CACHE_HOST))&&e.push(Hi(x.CACHE_HOST,(e=>y(e,`adserverTargeting.${x.CACHE_HOST}`)?e.adserverTargeting[x.CACHE_HOST]:t.hostname)))}}return n}function Xi(e,t,n,r){var i=t[v.ADSERVER_TARGETING];return n.size=n.getSize(),(i||[]).forEach((i=>{var o=i.key,s=i.val;if(e[o]&&we("The key: "+o+" is being overwritten"),Re(s))try{s=s(n,r)}catch(e){xe("bidmanager","ERROR",e)}(void 0===t.suppressEmptyKeys||!0!==t.suppressEmptyKeys)&&o!==x.DEAL&&o!==x.ACAT&&o!==x.DSP&&o!==x.CRID||!$e(s)&&null!=s?e[o]=s:Ie("suppressing empty key '"+o+"' from adserver targeting")})),e}function Qi(e,t){return e[t.adUnitCode]||(e[t.adUnitCode]={bids:[]}),e[t.adUnitCode].bids.push(t),e}function Ki(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))}})}let Yi=1;const Zi=[];function eo(e){return e.ttl-(e.hasOwnProperty("ttlBuffer")?e.ttlBuffer:Yi)}q.getConfig("ttlBuffer",(e=>{if("number"==typeof e.ttlBuffer){const t=Yi;Yi=e.ttlBuffer,t!==Yi&&Zi.forEach((e=>e(Yi)))}else xe("Invalid value for ttlBuffer",e.ttlBuffer)}));const to="minBidCacheTTL",no=(()=>{let e=null;const t=Ct({startTime:e=>e.end.then((()=>e.getAuctionEnd())),ttl:t=>null==e?null:t.end.then((()=>1e3*Math.max(e,...t.getBidsReceived().map(eo))))});var n;n=()=>{null!=e&&t.refresh()},Zi.push(n),q.getConfig(to,(n=>{const r=e;e=n?.[to],e="number"==typeof e?e:null,r!==e&&t.refresh()}));const r={onExpiry:t.onExpiry};function i(e){for(const n of t)if(n.getAuctionId()===e)return n}function o(){return t.toArray().flatMap((e=>e.getBidsReceived()))}return r.addWinningBid=e=>{const t=nr(e.metrics);t.checkpoint("bidWon"),t.timeBetween("auctionEnd","bidWon","render.pending"),t.timeBetween("requestBids","bidWon","render.e2e");const n=i(e.auctionId);n?(e.status=S.RENDERED,n.addWinningBid(e)):we("Auction not found when adding winning bid")},Object.entries({getAllWinningBids:{name:"getWinningBids"},getBidsRequested:{name:"getBidRequests"},getNoBids:{},getAdUnits:{},getBidsReceived:{pre:e=>e.getAuctionStatus()===Ei},getAdUnitCodes:{post:Je}}).forEach((e=>{let[n,{name:i=n,pre:o,post:s}]=e;const a=null==o?e=>e[i]():e=>o(e)?e[i]():[],d=null==s?e=>e:e=>e.filter(s);r[n]=()=>d(t.toArray().flatMap(a))})),r.getAllBidsForAdUnitCode=e=>o().filter((t=>t&&t.adUnitCode===e)),r.createAuction=e=>{const n=Oi(e);return(e=>{t.add(e)})(n),n},r.findBidByAdId=e=>o().find((t=>t.adId===e)),r.getStandardBidderAdServerTargeting=()=>Ji()[v.ADSERVER_TARGETING],r.setStatusForBids=(e,t)=>{let n=r.findBidByAdId(e);if(n&&(n.status=t),n&&t===S.BID_TARGETING_SET){const e=i(n.auctionId);e&&e.setBidTargeting(n)}},r.getLastAuctionId=()=>{const e=t.toArray();return e.length&&e[e.length-1].getAuctionId()},r.clearAllAuctions=()=>{t.clear()},r.index=new Ki((()=>t.toArray())),r})(),ro=[],io=Object.keys(E).map((e=>E[e])),oo={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}}},so=xo(k),ao=xo(O),co={img:1,js:2,1:"img",2:"js"},lo={impression:1,"viewable-mrc50":2,"viewable-mrc100":3,"viewable-video50":4};function uo(e){if(e&&e.type&&(!(!(t=e.type)||!a(Object.keys(oo),t))||(xe(`${t} nativeParam is not supported`),!1))&&(e=oo[e.type]),!e||!e.ortb||po(e.ortb))return e;var t}function po(e){const t=e.assets;if(!Array.isArray(t)||0===t.length)return xe("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)))?(xe("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)?(xe("ortb.eventtrackers is not an array. Eventtrackers: ",e.eventtrackers),!1):t.every((e=>(e=>{if(!je(e))return xe("asset must be an object. Provided asset: ",e),!1;if(e.img){if(!Ue(e.img.w)&&!Ue(e.img.wmin))return xe("for img asset there must be 'w' or 'wmin' property"),!1;if(!Ue(e.img.h)&&!Ue(e.img.hmin))return xe("for img asset there must be 'h' or 'hmin' property"),!1}else if(e.title){if(!Ue(e.title.len))return xe("for title asset there must be 'len' property defined"),!1}else if(e.data){if(!Ue(e.data.type))return xe("for data asset 'type' property must be a number"),!1}else if(e.video&&!(Array.isArray(e.video.mimes)&&Array.isArray(e.video.protocols)&&Ue(e.video.minduration)&&Ue(e.video.maxduration)))return xe("video asset is not properly configured"),!1;return!0})(e)))}function go(e,t){const n=t.native.ortb||Io(t.native);return"click"===e.action?function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,{fetchURL:n=Le}=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||[];let o=r[t],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=>Ve(e)),fetchURL:n=Le}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const r=(e.eventtrackers||[]).filter((e=>e.event===lo.impression));let{img:i,js:o}=r.reduce(((e,t)=>(co.hasOwnProperty(t.method)&&e[co[t.method]].push(t.url),e)),{img:[],js:[]});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 fo(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],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(...fo(o,t,!0)):(n||E.hasOwnProperty(i))&&r.push({key:i,value:yo(o)})})),r}function mo(e,t,n){const r={...ct(e.native,["rendererUrl","adTemplate"]),assets:fo(e.native,n),nativeKeys:E};return e.native.ortb?r.ortb=e.native.ortb:t.mediaTypes?.native?.ortb&&(r.ortb=wo(e.native,t.nativeOrtbRequest)),r}function ho(e,t,n){let{index:r=no.index}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return{message:"assetResponse",adId:e.adId,...mo(t,r.getAdUnit(t),n)}}const bo=Object.fromEntries(Object.entries(E).map((e=>{let[t,n]=e;return[n,t]})));function yo(e){return e?.url||e}function vo(e,t){for(;e&&t&&e!==t;)e>t?e-=t:t-=e;return e||t}function Ao(e){if(!po(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=vo(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===R.MAIN?t.image=e:t.icon=e}else if(n.data){let e=Object.keys(O).find((e=>O[e]===n.data.type)),r=Object.keys(k).find((t=>k[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 Io(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:lo.impression,method:co.img,url:e})}));break;case"javascriptTrackers":t.jstracker=Array.isArray(r)?r.join(""):r;break;case"privacyLink":t.privacy=r}})),t}function wo(e,t){const n={...Io(e),assets:[]};function r(e,r){let i=t.assets.find(e);null!=i&&(i=tt(i),r(i),n.assets.push(i))}return Object.keys(e).filter((t=>!!e[t])).forEach((t=>{const n=yo(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?R.MAIN:R.ICON;r((t=>null!=t.img&&t.img.type===e),(e=>{e.img={url:n}}));break;default:t in k&&r((e=>null!=e.data&&e.data.type===O[k[t]]),(e=>{e.data={value:n}}))}})),n}function xo(e){var t={};for(var n in e)t[e[n]]=n;return t}const Co=pn("sync",(e=>'!function(){"use strict";window.render=function({ad:d,adUrl:i,width:n,height:e},{mkFrame:o},r){if(!d&&!i)throw{reason:"noAd",message:"Missing ad markup or URL"};{const t=r.document,s={width:n,height:e};i&&!d?s.src=i:s.srcdoc=d,t.body.appendChild(o(t,s))}}}();')),Eo=(()=>{const e={};return t=>{const n=Co(t);return e.hasOwnProperty(n)||(e[n]=new V((e=>{const t=_e();t.srcdoc=`<script>${n}<\/script>`,t.onload=()=>e(t.contentWindow.render),document.body.appendChild(t)}))),e[n]}})(),{AD_RENDER_FAILED:To,AD_RENDER_SUCCEEDED:So,STALE_RENDER:_o,BID_WON:ko}=I,{EXCEPTION:Oo}=w;function Ro(e){let{reason:t,message:n,bid:r,id:i}=e;const o={reason:t,message:n};r&&(o.bid=r,o.adId=r.adId),i&&(o.adId=i),xe(`Error rendering ad (id: ${i}): ${n}`),$t(To,o)}function Do(e){let{doc:t,bid:n,id:r}=e;const i={doc:t};n&&(i.bid=n),r&&(i.adId=r),$t(So,i)}function Bo(e,t){switch(e.event){case I.AD_RENDER_FAILED:Ro({bid:t,id:t.adId,reason:e.info.reason,message:e.info.message});break;case I.AD_RENDER_SUCCEEDED:Do({doc:null,bid:t,id:t.adId});break;default:xe(`Received event request for unsupported event: '${e.event}' (adId: '${t.adId}')`)}}function Uo(e,t,n){let{resizeFn:r,fireTrackers:i=go}=n;"resizeNativeHeight"===e.action?r(e.width,e.height):i(e,t)}const jo={[B.EVENT]:Bo};jo[B.NATIVE]=Uo;const Po=pn("sync",((e,t)=>{const{ad:n,adUrl:r,cpm:i,originalCpm:o,width:s,height:a}=e,d={AUCTION_PRICE:o||i,CLICKTHROUGH:t?.clickUrl||""};return{ad:rt(n,d),adUrl:rt(r,d),width:s,height:a}})),No=pn("sync",(e=>{let{renderFn:t,resizeFn:n,bidResponse:r,options:i}=e;if(r.mediaType===Ai)return void Ro({reason:w.PREVENT_WRITING_ON_MAIN_DOCUMENT,message:"Cannot render video ad",bid:r,id:r.adId});const o=Po(r,i);t(Object.assign({adId:r.adId},o));const{width:s,height:a}=o;null!=(s??a)&&n(s,a)}));function $o(e){let{renderFn:t,resizeFn:n,adId:r,options:i,bidResponse:o,doc:s}=e;if(null!=o){if(o.status!==S.RENDERED||(we(`Ad id ${r} has been rendered before`),$t(_o,o),!y(q.getConfig("auctionOptions"),"suppressStaleRender"))){try{No({renderFn:t,resizeFn:n,bidResponse:o,options:i,doc:s})}catch(e){Ro({reason:w.EXCEPTION,message:e.message,id:r,bid:o})}no.addWinningBid(o),$t(ko,o)}}else Ro({reason:w.CANNOT_FIND_AD,message:`Cannot find ad '${r}'`,id:r})}No.before(((e,t)=>{const{bidResponse:n,doc:r}=t;var i;(i=n.renderer)&&(i.url||i.renderNow)?(((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)})(n.renderer,n,r),Do({doc:r,bid:n,id:n.adId}),e.bail()):e(t)}),100);const{REQUEST:qo,RESPONSE:Mo,NATIVE:zo,EVENT:Fo}=B,Lo=I.BID_WON,Vo={[qo]:(e,t,n)=>{$o({renderFn(t){e(Object.assign({message:Mo,renderer:Co(n)},t))},resizeFn:Go(n),options:t.options,adId:t.adId,bidResponse:n})},[Fo]:(e,t,n)=>{if(null!=n){if(n.status===S.RENDERED)return Bo(t,n);we(`Received x-origin event request without corresponding render request for ad '${n.adId}'`)}else xe(`Cannot find ad '${t.adId}' for x-origin event request`)}};function Wo(e){var t=e.message?"message":"data",n={};try{n=JSON.parse(e[t])}catch(e){return}if(n&&n.adId&&n.message){const t=d(no.getBidsReceived(),(e=>e.adId===n.adId));Vo.hasOwnProperty(n.message)&&Vo[n.message]((e=>null==e.origin&&0===e.ports.length?()=>{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 xe(e),new Error(e)}:e.ports.length>0?t=>{e.ports[0].postMessage(JSON.stringify(t))}:t=>{e.source.postMessage(JSON.stringify(t),e.origin)})(e),n,t)}}function Go(e){return(t,n)=>{(e=>{let{adId:t,adUnitCode:n,width:r,height:i}=e;function o(e){return e?e+"px":"100%"}function s(e){let r=function(e,t){return Ze()?function(e){const t=d(window.googletag.pubads().getSlots(),(t=>d(t.getTargetingKeys(),(n=>a(t.getTargeting(n),e)))));return t?t.getSlotElementId():null}(e):(()=>{if(window.apntag&&Re(window.apntag.getTag))return!0})()?function(e){let t=window.apntag.getTag(e);return t&&t.targetId}(t):t}(t,n),i=document.getElementById(r);return i&&i.querySelector(e)}["div","iframe"].forEach((e=>{let t=s(e+':not([style*="display: none"])');if(t){let e=t.style;e.width=o(r),e.height=o(i)}else we(`Unable to locate matching page element for adUnitCode ${n}.  Can't resize it to ad's dimensions.  Please review setup.`)}))})({...e,width:t,height:n})}}function Ho(e,t){return e===t?0:e<t?-1:1}function Jo(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:e=>e;return(t,n)=>Ho(e(t),e(n))}function Xo(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Ho;return(t,n)=>-e(t,n)||0}function Qo(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(e,n)=>{for(const r of t){const t=r(e,n);if(0!==t)return t}return 0}}function Ko(){return function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Ho;return(t,n)=>e(n,t)<0?n:t}(Xo(arguments.length>0&&void 0!==arguments[0]?arguments[0]:Ho))}Object.assign(Vo,{[zo]:(e,t,n)=>{if(null!=n)switch(n.status!==S.RENDERED&&(no.addWinningBid(n),$t(Lo,n)),t.action){case"assetRequest":e(((e,t)=>{const n=e.assets.map((e=>bo[e]));return ho(e,t,n)})(t,n));break;case"allAssetRequest":e(((e,t)=>ho(e,t,null))(t,n));break;default:Uo(t,n,{resizeFn:Go(n)})}else xe(`Cannot find ad for x-origin event request: '${t.adId}'`)}});const Yo=Jo((e=>e.cpm)),Zo=Jo((e=>e.responseTimestamp)),es=Ko(Qo(Yo,Xo(Jo((e=>e.timeToRespond))))),ts=Ko(Qo(Yo,Xo(Zo)));Ko(Qo(Yo,Zo));var ns=[];const rs="targetingControls.allowTargetingKeys",is="targetingControls.addTargetingKeys",os=`Only one of "${rs}" or "${is}" can be set`,ss=Object.keys(x).map((e=>x[e]));let as={isActualBid:e=>e.getStatusCode()===A.GOOD,isBidNotExpired:e=>e.responseTimestamp+1e3*eo(e)>it(),isUnusedBid:e=>e&&(e.status&&!a([S.RENDERED],e.status)||!e.status)};function ds(e){return!Object.values(as).some((t=>!t(e)))}const cs=pn("sync",(function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(!(arguments.length>3&&void 0!==arguments[3]&&arguments[3])){const r=[],i=q.getConfig("sendBidsControl.dealPrioritization");let o=dt(e,"adUnitCode");return Object.keys(o).forEach((e=>{let s=[],a=dt(o[e],"bidderCode");Object.keys(a).forEach((e=>s.push(a[e].reduce(t)))),n>0?(s=i?s.sort(ls(!0)):s.sort(((e,t)=>t.cpm-e.cpm)),r.push(...s.slice(0,n))):r.push(...s)})),r}return e}));function ls(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(t,n)=>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}const us=(e=>{let t={},n={};function r(e,t){return e.adserverTargeting&&t&&(Be(t)&&a(t,e.adUnitCode)||"string"==typeof t&&e.adUnitCode===t)}function i(t){return"string"==typeof t?[t]:Be(t)?t:e.getAdUnitCodes()||[]}function o(){let t=e.getBidsReceived();if(q.getConfig("useBidCache")){const e=q.getConfig("bidCacheFilterFunction");"function"==typeof e&&(t=t.filter((t=>n[t.adUnitCode]===t.auctionId||!!e(t))))}else t=t.filter((e=>n[e.adUnitCode]===e.auctionId));return t=t.filter((e=>y(e,"video.context")!==wi)).filter(ds),t.forEach((e=>(e.latestTargetedAuctionId=n[e.adUnitCode],e))),cs(t,ts)}function s(e,n){let r=t.getWinningBids(e,n),i=c();return r=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,20)]:r};if(n===x.DEAL){const o=`${n}_${e.bidderCode}`.substring(0,20),s={[o]:r};return[...t,i,s]}return[...t,i]}),[])}))),r}function c(){return e.getStandardBidderAdServerTargeting().map((e=>e.key)).concat(ss).filter(Je)}function l(e,t,n,r){return Object.keys(t.adserverTargeting).filter(u()).forEach((n=>{e.length&&e.filter((e=>n=>n.adUnitCode===t.adUnitCode&&n.adserverTargeting[e])(n)).forEach((e=>n=>{Be(n.adserverTargeting[e])||(n.adserverTargeting[e]=[n.adserverTargeting[e]]),n.adserverTargeting[e]=n.adserverTargeting[e].concat(t.adserverTargeting[e]).filter(Je),delete t.adserverTargeting[e]})(n))})),e.push(t),e}function u(){let e=c();return e=e.concat(io),t=>-1===e.indexOf(t)}function p(e){return{[e.adUnitCode]:Object.keys(e.adserverTargeting).filter(u()).map((t=>({[t.substring(0,20)]:[e.adserverTargeting[t]]})))}}function g(e,t){return t.map((t=>({[`${t}_${e.bidderCode}`.substring(0,20)]:[e.adserverTargeting[t]]})))}return t.setLatestAuctionForAdUnit=(e,t)=>{n[e]=t},t.resetPresetTargeting=(t,n)=>{if(Ze()){const r=i(t),o=e.getAdUnits().filter((e=>a(r,e.code)));let s=ns.reduce(((e,t)=>(e[t]=null,e)),{});window.googletag.pubads().getSlots().forEach((e=>{let t=Re(n)&&n(e);o.forEach((n=>{(n.code===e.getAdUnitPath()||n.code===e.getSlotElementId()||Re(t)&&t(n.code))&&e.updateTargetingFromMap(s)}))}))}},t.resetPresetTargetingAST=e=>{i(e).forEach((e=>{const t=window.apntag.getTag(e);if(t&&t.keywords){const n=Object.keys(t.keywords),r={};n.forEach((e=>{a(ns,e.toLowerCase())||(r[e]=t.keywords[e])})),window.apntag.modifyTag(e,{keywords:r})}}))},t.getAllTargeting=function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o();const c=i(t);var u=s(c,n).concat(((e,t)=>t.filter((t=>a(e,t.adUnitCode))).map((e=>Object.assign({},e))).reduce(l,[]).map(p).filter((e=>e)))(c,n)).concat(q.getConfig("enableSendAllBids")?((e,t)=>{const n=ss.concat(io),i=q.getConfig("sendBidsControl.bidLimit"),o=cs(t,es,i),s=q.getConfig("targetingControls.allowSendAllBidsTargetingKeys"),a=s?s.map((e=>x[e])):n;return o.map((t=>{if(r(t,e))return{[t.adUnitCode]:g(t,n.filter((e=>void 0!==t.adserverTargeting[e]&&-1!==a.indexOf(e))))}})).filter((e=>e))})(c,n):((e,t)=>{if(!0===q.getConfig("targetingControls.alwaysIncludeDeals")){const n=ss.concat(io);return cs(t,es).map((t=>{if(t.dealId&&r(t,e))return{[t.adUnitCode]:g(t,n.filter((e=>void 0!==t.adserverTargeting[e])))}})).filter((e=>e))}return[]})(c,n)).concat((t=>{function n(e){return y(e,v.ADSERVER_TARGETING)}function r(e){const t=n(e);return Object.keys(t).map((e=>(De(t[e])&&(t[e]=t[e].split(",").map((e=>e.trim()))),Be(t[e])||(t[e]=[t[e]]),{[e]:t[e]})))}return e.getAdUnits().filter((e=>a(t,e.code)&&n(e))).map((e=>({[e.code]:r(e)})))})(c));u.map((e=>{Object.keys(e).map((t=>{e[t].map((e=>{-1===ns.indexOf(Object.keys(e)[0])&&(ns=Object.keys(e).concat(ns))}))}))}));const f=Object.keys(Object.assign({},C,E));let m=q.getConfig(rs);const h=q.getConfig(is);if(null!=h&&null!=m)throw new Error(os);m=null!=h?f.concat(h):m||f,Array.isArray(m)&&m.length>0&&(u=((e,t)=>{const n=Object.assign({},x,E),r=Object.keys(n),i={};return Ie(`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||d(t,(e=>{const t=n[e];return 0===o.indexOf(t)}));return i[o]=!s,s}));e[o]=s})),Ie(`allowTargetingKeys - removed keys [ ${Object.keys(i).filter((e=>i[e])).join(", ")} ]`),e.filter((e=>e[Object.keys(e)[0]].length>0))})(u,m)),u=(e=>{let t=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(((e,t)=>{var n=Object.keys(t)[0];return e[n]=Object.assign({},e[n],t[n]),e}),{});return t})(u);const b=q.getConfig("targetingControls.auctionKeyMaxChars");return b&&(Ie(`Detected 'targetingControls.auctionKeyMaxChars' was active for this auction; set with a limit of ${b} characters.  Running checks on auction keys...`),u=((e,t)=>{let n=tt(e),r=Object.keys(n).map((e=>({adUnitCode:e,adserverTargeting:n[e]}))).sort(ls());return r.reduce(((e,r,i,o)=>{let s=(a=r.adserverTargeting,Object.keys(a).reduce(((e,t)=>e+`${t}%3d${encodeURIComponent(a[t])}%26`),""));var a;i+1===o.length&&(s=s.slice(0,-3));let d=r.adUnitCode,c=s.length;return c<=t?(Ie(`AdUnit '${d}' auction keys comprised of ${c} characters.  Deducted from running threshold; new limit is ${t-=c}`,n[d]),e[d]=n[d]):we(`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&&xe("No auction targeting keys were permitted due to the setting in setConfig(targetingControls.auctionKeyMaxChars).  Please review setup and consider adjusting."),e}),{})})(u,b)),c.forEach((e=>{u[e]||(u[e]={})})),u},q.getConfig("targetingControls",(e=>{null!=y(e,rs)&&null!=y(e,is)&&xe(os)})),t.setTargetingForGPT=(e,t)=>{window.googletag.pubads().getSlots().forEach((n=>{Object.keys(e).filter(t?t(n):(e=>t=>ut(e,t))(n)).forEach((t=>{Object.keys(e[t]).forEach((n=>{let r=e[t][n];"string"==typeof r&&-1!==r.indexOf(",")&&(r=r.split(",")),e[t][n]=r})),Ae(`Attempting to set targeting-map for slot: ${n.getSlotElementId()} with targeting-map:`,e[t]),n.updateTargetingFromMap(e[t])}))}))},t.getWinningBids=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o();const n=i(e);return t.filter((e=>a(n,e.adUnitCode))).filter((e=>!0===rn.get(e.bidderCode,"allowZeroCpmBids")?e.cpm>=0:e.cpm>0)).map((e=>e.adUnitCode)).filter(Je).map((e=>t.filter((t=>t.adUnitCode===e?t:null)).reduce(es)))},t.setTargetingForAst=e=>{let n=t.getAllTargeting(e);try{t.resetPresetTargetingAST(e)}catch(e){xe("unable to reset targeting for AST"+e)}Object.keys(n).forEach((e=>Object.keys(n[e]).forEach((t=>{if(Ae(`Attempting to set targeting for targetId: ${e} key: ${t} value: ${n[e][t]}`),De(n[e][t])||Be(n[e][t])){let r={},i=/pt[0-9]/;t.search(i)<0?r[t.toUpperCase()]=n[e][t]:r[t]=n[e][t],window.apntag.setKeywords(e,r,{overrideKeyValue:!0})}}))))},t.isApntagDefined=()=>{if(window.apntag&&Re(window.apntag.setKeywords))return!0},t})(no),ps="__pbjs_debugging__";function gs(){return o().installedModules.includes("debugging")}function fs(e){return new V((t=>{Zt(e,"debugging",t)}))}function ms(){let{alreadyInstalled:e=gs,script:t=fs}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=null;return()=>(null==n&&(n=new V(((n,r)=>{setTimeout((()=>{if(e())n();else{const e="https://cdn.jsdelivr.net/npm/prebid.js@8.47.0/dist/debugging-standalone.js";Ae(`Debugging module not installed, loading it from "${e}"...`),o()._installDebugging=!0,t(e).then((()=>{o()._installDebugging({DEBUG_KEY:ps,hook:pn,config:q,createBid:Ln,logger:Ce("DEBUG:")})})).then(n,r)}}))}))),n)}const hs=function(){let{load:e=ms(),hook:t=mn("requestBids")}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=null,r=!1;function i(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||V.resolve()).then((()=>e.apply(this,r)))}function o(){t.getHooks({hook:i}).remove(),r=!1}return{enable:()=>{r||(n=e(),t.before(i,99),r=!0)},disable:o,reset:()=>{n=null,o()}}}();hs.reset,q.getConfig("debugging",(e=>{let{debugging:t}=e;t?.enabled?hs.enable():hs.disable()}));const bs=hi("fpdEnrichment"),ys=wt((function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.location.host;if(!bs.cookiesAreEnabled())return e;const t=e.split(".");if(2===t.length)return e;let n,r,i=-2;const o=`_rdc${Date.now()}`,s="writeable";do{n=t.slice(i).join(".");let e=new Date(it()+1e4).toUTCString();bs.setCookie(o,s,e,"Lax",n,void 0),bs.getCookie(o,void 0)===s?(r=!1,bs.setCookie(o,"","Thu, 01 Jan 1970 00:00:01 GMT",void 0,n,void 0)):(i+=-1,r=Math.abs(i)<=t.length)}while(r);return n})),vs=["architecture","bitness","model","platformVersion","fullVersionList"],As=["brands","mobile","platform"],Is=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.navigator?.userAgentData;const t=e&&As.some((t=>void 0!==e[t]))?Object.freeze(xs(1,e)):null;return()=>t}(),ws=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.navigator?.userAgentData;const t={},n=new WeakMap;return function(){let r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:vs;if(!n.has(r)){const e=Array.from(r);e.sort(),n.set(r,e.join("|"))}const i=n.get(r);if(!t.hasOwnProperty(i))try{t[i]=e.getHighEntropyValues(r).then((e=>Ne(e)?null:Object.freeze(xs(2,e)))).catch((()=>null))}catch(e){t[i]=V.resolve(null)}return t[i]}}();function xs(e,t){function n(e,t){const n={brand:e};return De(t)&&!$e(t)&&(n.version=t.split(".")),n}const r={source:e};return t.platform&&(r.platform=n(t.platform,t.platformVersion)),(t.fullVersionList||t.brands)&&(r.browsers=(t.fullVersionList||t.brands).map((e=>{let{brand:t,version:r}=e;return n(t,r)}))),void 0!==t.mobile&&(r.mobile=t.mobile?1:0),["model","bitness","architecture"].forEach((e=>{const n=t[e];De(n)&&(r[e]=n)})),r}const Cs=["dooh","app","site"];function Es(e){return t=>(Cs.reduce(((n,r)=>(Ts(t,r)&&(null!=n?(we(`${e} specifies both '${n}' and '${r}'; dropping the latter.`),delete t[r]):n=r),n)),null),t)}function Ts(e,t){return null!=e[t]&&Object.keys(e[t]).length>0}const Ss={getRefererInfo:Tr,findRootDomain:ys,getWindowTop:be,getWindowSelf:ye,getHighEntropySUA:ws,getLowEntropySUA:Is},_s=Es("FPD"),ks=pn("sync",(e=>{const t=[e,Rs().catch((()=>null)),V.resolve("cookieDeprecationLabel"in navigator&&Rn(Dn,ar(on,"cdep"))&&navigator.cookieDeprecationLabel.getValue()).catch((()=>null))];return V.all(t).then((e=>{let[t,n,r]=e;const i=Ss.getRefererInfo();if((e=>{["app","site","device"].forEach((t=>{const n=q.getConfig(t);null!=n&&(e[t]=At({},n,e[t]))}))})(t),Object.entries(Bs).forEach((e=>{let[n,r]=e;const o=r(t,i);o&&Object.keys(o).length>0&&(t[n]=At({},o,t[n]))})),n&&xt(t,"device.sua",Object.assign({},n,t.device.sua)),r){const e={cdep:r};xt(t,"device.ext",Object.assign({},e,t.device.ext))}t=_s(t);for(let e of Cs)if(Ts(t,e)){t[e]=At({},Us(0,i),t[e]);break}return t}))}));function Os(e){try{return e(Ss.getWindowTop())}catch(t){return e(Ss.getWindowSelf())}}function Rs(){const e=q.getConfig("firstPartyData.uaHints");return Array.isArray(e)&&0!==e.length?Ss.getHighEntropySUA(e):V.resolve(Ss.getLowEntropySUA())}function Ds(e){return ct(e,Object.keys(e))}const Bs={site(e,t){if(!Cs.filter((e=>"site"!==e)).some(Ts.bind(null,e)))return Ds({page:t.page,ref:t.ref})},device:()=>Os((e=>{const t={w:e.innerWidth||e.document.documentElement.clientWidth||e.document.body.clientWidth,h:e.innerHeight||e.document.documentElement.clientHeight||e.document.body.clientHeight,dnt:"1"===navigator.doNotTrack||"1"===window.doNotTrack||"1"===navigator.msDoNotTrack||"yes"===navigator.doNotTrack?1:0,ua:e.navigator.userAgent,language:e.navigator.language.split("-").shift()};return e.navigator?.webdriver&&xt(t,"ext.webdriver",!0),t})),regs(){const e={};Os((e=>e.navigator.globalPrivacyControl))&&xt(e,"ext.gpc",1);const t=q.getConfig("coppa");return"boolean"==typeof t&&(e.coppa=t?1:0),e}};function Us(e,t){const n=Cr(t.page,{noLeadingWww:!0}),r=Os((e=>e.document.querySelector("meta[name='keywords']")))?.content?.replace?.(/\s/g,"");return Ds({domain:n,keywords:r,publisher:Ds({domain:Ss.findRootDomain(n)})})}const js=o(),{triggerUserSyncs:Ps}=yi,{ADD_AD_UNITS:Ns,REQUEST_BIDS:$s,SET_TARGETING:qs}=I,Ms={bidWon:e=>{if(no.getBidsRequested().map((e=>e.bids.map((e=>e.adUnitCode)))).reduce(Xe).filter(Je).includes(e))return!0;xe('The "'+e+'" placement is not defined.')}};function zs(e,t){let n=[];return Be(e)&&(t?e.length===t:e.length>0)&&(e.every((e=>ft(e,2)))?n=e:ft(e,2)&&n.push(e)),n}function Fs(e){const t=tt(e),n=t.mediaTypes.banner,r=zs(n.sizes);return r.length>0?(n.sizes=r,t.sizes=r):(xe("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),t}function Ls(e){const t=tt(e),n=t.mediaTypes.video;if(n.playerSize){let e="number"==typeof n.playerSize[0]?2:1;const r=zs(n.playerSize,e);r.length>0?(2===e&&Ie("Transforming video.playerSize from [640,480] to [[640,480]] so it's in the proper format."),n.playerSize=r,t.sizes=r):(xe("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 t}function Vs(e){const t=tt(e),n=t.mediaTypes.native;if(n.ortb){const e=Object.keys(E).filter((e=>E[e].includes("hb_native_"))),r=Object.keys(n).filter((t=>e.includes(t)));r.length>0&&(xe(`when using native OpenRTB format, you cannot use legacy native properties. Deleting ${r} keys from request.`),r.forEach((e=>delete t.mediaTypes.native[e])))}return n.image&&n.image.sizes&&!Array.isArray(n.image.sizes)&&(xe("Please use an array of sizes for native.image.sizes field.  Removing invalid mediaTypes.native.image.sizes property from request."),delete t.mediaTypes.native.image.sizes),n.image&&n.image.aspect_ratios&&!Array.isArray(n.image.aspect_ratios)&&(xe("Please use an array of sizes for native.image.aspect_ratios field.  Removing invalid mediaTypes.native.image.aspect_ratios property from request."),delete t.mediaTypes.native.image.aspect_ratios),n.icon&&n.icon.sizes&&!Array.isArray(n.icon.sizes)&&(xe("Please use an array of sizes for native.icon.sizes field.  Removing invalid mediaTypes.native.icon.sizes property from request."),delete t.mediaTypes.native.icon.sizes),t}function Ws(e,t){let n=y(e,`mediaTypes.${t}.pos`);if(!Ue(n)||isNaN(n)||!isFinite(n)){let n=`Value of property 'pos' on ad unit ${e.code} should be of type: Number`;we(n),$t(I.AUCTION_DEBUG,{type:"WARNING",arguments:n}),delete e.mediaTypes[t].pos}return e}function Gs(e){const t=t=>`adUnit.code '${e.code}' ${t}`,n=e.mediaTypes,r=e.bids;return null==r||Be(r)?null==r&&null==e.ortb2Imp?(xe(t("has no 'adUnit.bids' and no 'adUnit.ortb2Imp'. Removing adUnit from auction")),null):n&&0!==Object.keys(n).length?(null==e.ortb2Imp||null!=r&&0!==r.length||(e.bids=[{bidder:null}],Ae(t("defines 'adUnit.ortb2Imp' with no 'adUnit.bids'; it will be seen only by S2S adapters"))),e):(xe(t("does not define a 'mediaTypes' object.  This is a required field for the auction, so this adUnit has been removed.")),null):(xe(t("defines 'adUnit.bids' that is not an array. Removing adUnit from auction")),null)}(()=>{let e=null;try{e=window.sessionStorage}catch(e){}if(null!==e){let t=hs,n=null;try{n=e.getItem(ps)}catch(e){}null!==n&&t.enable()}})(),js.bidderSettings=js.bidderSettings||{},js.libLoaded=!0,js.version="v8.47.0",Ie("Prebid.js v8.47.0 loaded"),js.installedModules=js.installedModules||[],js.adUnits=js.adUnits||[],js.triggerUserSyncs=Ps;const Hs={validateAdUnit:Gs,validateBannerMediaType:Fs,validateSizes:zs};Object.assign(Hs,{validateNativeMediaType:Vs}),Object.assign(Hs,{validateVideoMediaType:Ls});const Js=pn("sync",(e=>{const t=[];return e.forEach((e=>{if(null==(e=Gs(e)))return;const n=e.mediaTypes;let r,i,o;n.banner&&(r=Fs(e),n.banner.hasOwnProperty("pos")&&(r=Ws(r,"banner"))),n.video&&(i=Ls(r||e),n.video.hasOwnProperty("pos")&&(i=Ws(i,"video"))),n.native&&(o=Vs(i||r||e));const s=Object.assign({},r,i,o);t.push(s)})),t}),"checkAdUnitSetup");function Xs(e){const t=no[e]().filter((e=>no.getAdUnitCodes().includes(e.adUnitCode))),n=no.getLastAuctionId();return t.map((e=>e.adUnitCode)).filter(Je).map((e=>t.filter((t=>t.auctionId===n&&t.adUnitCode===e)))).filter((e=>e&&e[0]&&e[0].adUnitCode)).map((e=>({[e[0].adUnitCode]:{bids:e}}))).reduce(((e,t)=>Object.assign(e,t)),{})}js.getAdserverTargetingForAdUnitCodeStr=function(e){if(Ie("Invoking pbjs.getAdserverTargetingForAdUnitCodeStr",arguments),e)return(e=>e&&Object.getOwnPropertyNames(e).length>0?Object.keys(e).map((t=>`${t}=${encodeURIComponent(e[t])}`)).join("&"):"")(js.getAdserverTargetingForAdUnitCode(e));Ae("Need to call getAdserverTargetingForAdUnitCodeStr with adunitCode")},js.getHighestUnusedBidResponseForAdUnitCode=e=>{if(e){const t=no.getAllBidsForAdUnitCode(e).filter(ds);return t.length?t.reduce(es):{}}Ae("Need to call getHighestUnusedBidResponseForAdUnitCode with adunitCode")},js.getAdserverTargetingForAdUnitCode=e=>js.getAdserverTargeting(e)[e],js.getAdserverTargeting=function(e){return Ie("Invoking pbjs.getAdserverTargeting",arguments),us.getAllTargeting(e)},js.getConsentMetadata=()=>(Ie("Invoking pbjs.getConsentMetadata"),Pr.getConsentMeta()),js.getNoBids=function(){return Ie("Invoking pbjs.getNoBids",arguments),Xs("getNoBids")},js.getNoBidsForAdUnitCode=e=>({bids:no.getNoBids().filter((t=>t.adUnitCode===e))}),js.getBidResponses=function(){return Ie("Invoking pbjs.getBidResponses",arguments),Xs("getBidsReceived")},js.getBidResponsesForAdUnitCode=e=>({bids:no.getBidsReceived().filter((t=>t.adUnitCode===e))}),js.setTargetingForGPTAsync=function(e,t){if(Ie("Invoking pbjs.setTargetingForGPTAsync",arguments),!Ze())return void xe("window.googletag is not defined on the page");let n=us.getAllTargeting(e);us.resetPresetTargeting(e,t),us.setTargetingForGPT(n,t),Object.keys(n).forEach((e=>{Object.keys(n[e]).forEach((t=>{"hb_adid"===t&&no.setStatusForBids(n[e][t],S.BID_TARGETING_SET)}))})),$t(qs,n)},js.setTargetingForAst=function(e){Ie("Invoking pbjs.setTargetingForAn",arguments),us.isApntagDefined()?(us.setTargetingForAst(e),$t(qs,us.getAllTargeting())):xe("window.apntag is not defined on the page")},js.renderAd=pn("async",(function(e,t,n){Ie("Invoking pbjs.renderAd",arguments),Ae("Calling renderAd with adId :"+t),function(e,t,n){let r;function i(e,n){Ro(Object.assign({id:t,bid:r},{reason:e,message:n}))}function o(t,n){e.defaultView&&e.defaultView.frameElement&&(t&&(e.defaultView.frameElement.width=t),n&&(e.defaultView.frameElement.height=n))}const s=(a={resizeFn:o},(e,t,n)=>{jo.hasOwnProperty(e)&&jo[e](t,n,a)});var a;try{t&&e?(r=no.findBidByAdId(t),e!==document||nt()?$o({renderFn:t=>{t.ad?(e.write(t.ad),e.close(),Do({doc:e,bid:r,adId:r.adId})):Eo(r).then((n=>n(t,{sendMessage:(e,t)=>s(e,t,r),mkFrame:Se},e.defaultView))).then((()=>Do({doc:e,bid:r,adId:r.adId})),(e=>{i(e?.reason||w.EXCEPTION,e?.message),e?.stack&&xe(e)})),ze(document.createComment(`Creative ${r.creativeId} served by ${r.bidder} Prebid.js Header Bidding`),e,"html")},resizeFn:o,adId:t,options:{clickUrl:n?.clickThrough},bidResponse:r,doc:e}):i(w.PREVENT_WRITING_ON_MAIN_DOCUMENT,"renderAd was prevented from writing to the main document.")):i(w.MISSING_DOC_OR_ADID,"missing "+(t?"doc":"adId"))}catch(e){i(Oo,e.message)}}(e,t,n)})),js.removeAdUnit=function(e){if(Ie("Invoking pbjs.removeAdUnit",arguments),!e)return void(js.adUnits=[]);let t;t=Be(e)?e:[e],t.forEach((e=>{for(let t=js.adUnits.length-1;t>=0;t--)js.adUnits[t].code===e&&js.adUnits.splice(t,1)}))},js.requestBids=function(){const e=pn("async",(function(){let{bidsBackHandler:e,timeout:t,adUnits:n,adUnitCodes:r,labels:i,auctionId:o,ttlBuffer:s,ortb2:d,metrics:c,defer:l}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$t($s);const u=t||q.getConfig("bidderTimeout");Ie("Invoking pbjs.requestBids",arguments),r&&r.length?n=n.filter((e=>a(r,e.code))):r=n&&n.map((e=>e.code));const p={global:At({},q.getAnyConfig("ortb2")||{},d||{}),bidder:Object.fromEntries(Object.entries(q.getBidderConfig()).map((e=>{let[t,n]=e;return[t,n.ortb2]})).filter((e=>{let[t,n]=e;return null!=n})))};return ks(V.resolve(p.global)).then((t=>(p.global=t,Qs({bidsBackHandler:e,timeout:u,adUnits:n,adUnitCodes:r,labels:i,auctionId:o,ttlBuffer:s,ortb2Fragments:p,metrics:c,defer:l}))))}),"requestBids");return((e,t)=>(Object.defineProperties(t,Object.fromEntries(["before","after","getHooks","removeAll"].map((t=>[t,{get:()=>e[t]}])))),t))(e,(function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.adUnits||js.adUnits;return t.adUnits=Be(n)?n.slice():[n],t.metrics=rr(),t.metrics.checkpoint("requestBids"),t.defer=W({promiseFactory:e=>new Promise(e)}),e.call(this,t),t.defer.promise}))}();const Qs=pn("async",(function(){let{bidsBackHandler:e,timeout:t,adUnits:n,ttlBuffer:r,adUnitCodes:i,labels:o,auctionId:s,ortb2Fragments:d,metrics:c,defer:l}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const u=oi(q.getConfig("s2sConfig")||[]);function p(t,n,r){if("function"==typeof e)try{e(t,n,r)}catch(e){xe("Error executing bidsBackHandler",null,e)}l.resolve({bids:t,timedOut:n,auctionId:r})}(function(e){e.forEach((e=>(e=>{const t=e?.mediaTypes?.video;null!=t&&null==t.plcmt&&(t.context===Vn||[2,3,4].includes(t.placement)?t.plcmt=4:t.context!==Vn&&[2,6].includes(t.playbackmethod)&&(t.plcmt=2))})(e)))})(n),n=nr(c).measureTime("requestBids.validate",(()=>Js(n)));const g={};if(n.forEach((e=>{const t=Object.keys(e.mediaTypes||{banner:"banner"}),n=e.bids.map((e=>e.bidder)),i=li.bidderRegistry,o=n.filter((e=>!u.has(e)));e.adUnitId=ue();const s=e.ortb2Imp?.ext?.tid;s&&(g.hasOwnProperty(e.code)?we(`Multiple distinct ortb2Imp.ext.tid were provided for twin ad units '${e.code}'`):g[e.code]=s),null==r||e.hasOwnProperty("ttlBuffer")||(e.ttlBuffer=r),o.forEach((n=>{const r=i[n],o=r&&r.getSpec&&r.getSpec(),s=o&&o.supportedMediaTypes||["banner"];t.some((e=>a(s,e)))||(we(((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  `})(e,n)),e.bids=e.bids.filter((e=>e.bidder!==n)))}))})),n&&0!==n.length){n.forEach((e=>{const t=e.ortb2Imp?.ext?.tid||g[e.code]||ue();g.hasOwnProperty(e.code)||(g[e.code]=t),e.transactionId=t,xt(e,"ortb2Imp.ext.tid",t)}));const e=no.createAuction({adUnits:n,adUnitCodes:i,callback:p,cbTimeout:t,labels:o,auctionId:s,ortb2Fragments:d,metrics:c});let r=n.length;r>15&&Ie(`Current auction ${e.getAuctionId()} contains ${r} adUnits.`,n),i.forEach((t=>us.setLatestAuctionForAdUnit(t,e.getAuctionId()))),e.callBids()}else Ae("No adUnits configured. No bids requested."),p()}),"startAuction");js.requestBids.before((function(e,t){function n(e){for(var t;t=e.shift();)t()}n(gi),n(Ks),e.call(this,t)}),49),js.addAdUnits=function(e){Ie("Invoking pbjs.addAdUnits",arguments),js.adUnits.push.apply(js.adUnits,Be(e)?e:[e]),$t(Ns)},js.onEvent=function(e,t,n){Ie("Invoking pbjs.onEvent",arguments),Re(t)?!n||Ms[e].call(null,n)?Ut(e,t,n):xe('The id provided is not valid for event "'+e+'" and no handler was set.'):xe('The event handler provided is not a function and was not set on event "'+e+'".')},js.offEvent=function(e,t,n){Ie("Invoking pbjs.offEvent",arguments),n&&!Ms[e].call(null,n)||jt(e,t,n)},js.getEvents=()=>(Ie("Invoking pbjs.getEvents"),Nt()),js.registerBidAdapter=function(e,t){Ie("Invoking pbjs.registerBidAdapter",arguments);try{li.registerBidAdapter(e(),t)}catch(e){xe("Error registering bidder adapter : "+e.message)}},js.registerAnalyticsAdapter=function(e){Ie("Invoking pbjs.registerAnalyticsAdapter",arguments);try{li.registerAnalyticsAdapter(e)}catch(e){xe("Error registering analytics adapter : "+e.message)}},js.createBid=function(e){return Ie("Invoking pbjs.createBid",arguments),Ln(e)};const Ks=[],Ys=pn("async",(e=>{e&&!Ne(e)?(Ie("Invoking pbjs.enableAnalytics for: ",e),li.enableAnalytics(e)):xe("pbjs.enableAnalytics should be called with option {}")}),"enableAnalyticsCb");js.enableAnalytics=function(e){Ks.push(Ys.bind(this,e))},js.aliasBidder=function(e,t,n){Ie("Invoking pbjs.aliasBidder",arguments),e&&t?li.aliasBidAdapter(e,t,n):xe("bidderCode and alias must be passed as arguments","pbjs.aliasBidder")},js.aliasRegistry=li.aliasRegistry,q.getConfig("aliasRegistry",(e=>{"private"===e.aliasRegistry&&delete js.aliasRegistry})),js.getAllWinningBids=()=>no.getAllWinningBids(),js.getAllPrebidWinningBids=()=>no.getBidsReceived().filter((e=>e.status===S.BID_TARGETING_SET)),js.getHighestCpmBids=e=>us.getWinningBids(e),js.markWinningBidAsUsed=e=>{const t=Zs(e,"Improper use of markWinningBidAsUsed. It needs an adUnitCode or an adId to function.");t.length>0&&no.addWinningBid(t[0])};const Zs=(e,t)=>{let n=[];return e.adUnitCode&&e.adId?n=no.getBidsReceived().filter((t=>t.adId===e.adId&&t.adUnitCode===e.adUnitCode)):e.adUnitCode?n=us.getWinningBids(e.adUnitCode):e.adId?n=no.getBidsReceived().filter((t=>t.adId===e.adId)):we(t),n};function ea(e){e.forEach((e=>{if(void 0===e.called)try{e.call(),e.called=!0}catch(e){xe("Error processing command :","prebid.js",e)}}))}js.getConfig=q.getAnyConfig,js.readConfig=q.readAnyConfig,js.mergeConfig=q.mergeConfig,js.mergeBidderConfig=q.mergeBidderConfig,js.setConfig=q.setConfig,js.setBidderConfig=q.setBidderConfig,js.que.push((()=>{window.addEventListener("message",Wo,!1)})),js.cmd.push=e=>{if("function"==typeof e)try{e.call()}catch(e){xe("Error processing command :",e.message,e.stack)}else xe("Commands written into pbjs.cmd.push must be wrapped in a function")},js.que.push=js.cmd.push,js.processQueue=()=>{pn.ready(),ea(js.que),ea(js.cmd)},js.triggerBilling=e=>{const t=Zs(e,"Improper use of triggerBilling. It requires a bid with at least an adUnitCode or an adId to function."),n=t.find((t=>t.requestId===e.requestId))||t[0];if(t.length>0&&n)try{li.callBidBillableBidder(n)}catch(e){xe("Error when triggering billing :",e)}else we("The bid provided to triggerBilling did not match any bids received.")};const ta=js,na=new WeakMap;function ra(e){return(e=ge(e)).map((e=>{const[t,n]=e.split("x");return{w:parseInt(t,10),h:parseInt(n,10)}}))}const ia=new Set(["pos","placement","plcmt","api","mimes","protocols","playbackmethod","minduration","maxduration","w","h","startdelay","placement","linearity","skip","skipmin","skipafter","minbitrate","maxbitrate","delivery","playbackend"]),oa={instream:1},sa={1:Ii,2:Ai,4:vi},aa=["request","imp","bidResponse","response"],[da,ca,la,ua]=aa,[pa,ga]=["default","pbs"],fa=new Set(aa),{registerOrtbProcessor:ma,getProcessors:ha}=(()=>{const e={};return{registerOrtbProcessor(t){let{type:n,name:r,fn:i,priority:o=0,dialects:s=[pa]}=t;if(!fa.has(n))throw new Error(`ORTB processor type must be one of: ${aa.join(", ")}`);s.forEach((t=>{e.hasOwnProperty(t)||(e[t]={}),e[t].hasOwnProperty(n)||(e[t][n]={}),e[t][n][r]={priority:o,fn:i}}))},getProcessors:t=>e[t]||{}}})(),ba={[da]:{fpd:{priority:99,fn(e,t){At(e,t.ortb2)}},onlyOneClient:{priority:-99,fn:Es("ORTB request")},props:{fn(e,t){Object.assign(e,{id:e.id||ue(),test:e.test||0});const n=parseInt(t.timeout,10);isNaN(n)||(e.tmax=n)}}},[ca]:{fpd:{priority:99,fn(e,t){At(e,t.ortb2Imp)}},id:{fn(e,t){e.id=t.bidId}},banner:{fn:(e,t,n)=>{if(n.mediaType&&n.mediaType!==Ii)return;const r=y(t,"mediaTypes.banner");if(r){const t={topframe:!0===nt()?0:1};r.sizes&&(t.format=ra(r.sizes)),r.hasOwnProperty("pos")&&(t.pos=r.pos),e.banner=At(t,e.banner)}}},pbadslot:{fn(e){const t=e.ext?.data?.pbadslot;t&&"string"==typeof t||delete e.ext?.data?.pbadslot}}},[la]:{mediaType:{priority:99,fn:(e,t,n)=>{if(e.mediaType)return;const r=n.mediaType;if(!r&&!sa.hasOwnProperty(t.mtype))throw new Error("Cannot determine mediaType for response");e.mediaType=r||sa[t.mtype]}},banner:{fn:function(){let{createPixel:e=(e=>Ge(decodeURIComponent(e),He))}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(t,n)=>{t.mediaType===Ii&&(n.adm&&n.nurl?(t.ad=n.adm,t.ad+=e(n.nurl)):n.adm?t.ad=n.adm:n.nurl&&(t.adUrl=n.nurl))}}()},props:{fn(e,t,n){Object.entries({requestId:n.bidRequest?.bidId,seatBidId:t.id,cpm:t.price,currency:n.ortbResponse.cur||n.currency,width:t.w,height:t.h,dealId:t.dealid,creative_id:t.crid,creativeId:t.crid,burl:t.burl,ttl:t.exp||n.ttl,netRevenue:n.netRevenue}).filter((e=>{let[t,n]=e;return void 0!==n})).forEach((t=>{let[n,r]=t;return e[n]=r})),e.meta||(e.meta={}),t.adomain&&(e.meta.advertiserDomains=t.adomain),t.ext?.dsa&&(e.meta.dsa=t.ext.dsa)}}}};function ya(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];const r=t.shift(),i=t.length>1?ya(...t):t[0];return Object.fromEntries(aa.map((e=>[e,Object.assign({},r[e],i[e])])))}function va(){let{context:e={},processors:t=Aa,overrides:n={},imp:r,request:i,bidResponse:o,response:s}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const a=new WeakMap;function d(e,r,i,o){let s;return function(){return null==s&&(s=function(){let s=i.bind(this,function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!na.has(e)){const t=Object.entries(e);t.sort(((e,t)=>(e=e[1].priority||0)===(t=t[1].priority||0)?0:e>t?-1:1)),na.set(e,t.map((e=>{let[t,n]=e;return[t,n.fn]})))}const n=na.get(e).filter((e=>{let[n]=e;return!t.hasOwnProperty(n)||t[n]})).map((function(e){let[n,r]=e;return t.hasOwnProperty(n)?t[n].bind(this,r):r}));return function(){const e=Array.from(arguments);n.forEach((t=>{t.apply(this,e)}))}}(t()[e]||{},n[e]||{}));return r&&(s=r.bind(this,s)),function(){try{return s.apply(this,arguments)}catch(e){o.call(this,e,...arguments)}}}()),s.apply(this,arguments)}}const c=d(ca,r,((e,t,n)=>{const r={};return e(r,t,n),r}),((e,t,n)=>{xe("Error while converting bidRequest to ORTB imp; request skipped.",{error:e,bidRequest:t,context:n})})),l=d(da,i,((e,t,n,r)=>{const i={imp:t};return e(i,n,r),i}),((e,t,n,r)=>{throw xe("Error while converting to ORTB request",{error:e,imps:t,bidderRequest:n,context:r}),e})),u=d(la,o,((e,t,n)=>{const r={};return e(r,t,n),r}),((e,t,n)=>{xe("Error while converting ORTB seatbid.bid to bidResponse; bid skipped.",{error:e,bid:t,context:n})})),p=d(ua,s,((e,t,n,r)=>{const i={bids:t};return e(i,n,r),i}),((e,t,n,r)=>{throw xe("Error while converting from ORTB response",{error:e,bidResponses:t,ortbResponse:n,context:r}),e}));return{toORTB(t){let{bidderRequest:n,bidRequests:r,context:i={}}=t;r=r||n.bids;const o={req:Object.assign({bidRequests:r},e,i),imp:{}};o.req.impContext=o.imp;const s=r.map((t=>{const r=Object.assign({bidderRequest:n,reqContext:o.req},e,i),s=c(t,r);if(null!=s){if(s.hasOwnProperty("id"))return Object.assign(r,{bidRequest:t,imp:s}),o.imp[s.id]=r,s;xe("Converted ORTB imp does not specify an id, ignoring bid request",t,s)}})).filter(Boolean),d=l(s,n,o.req);return o.req.bidderRequest=n,null!=d&&a.set(d,o),d},fromORTB(e){let{request:t,response:n}=e;const r=a.get(t);if(null==r)throw new Error("ortbRequest passed to `fromORTB` must be the same object returned by `toORTB`");function i(e){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Object.assign(e,{ortbRequest:t},n,e)}const o=Object.fromEntries((t.imp||[]).map((e=>[e.id,e]))),s=(n.seatbid||[]).flatMap((e=>(e.bid||[]).map((t=>{if(o.hasOwnProperty(t.impid)&&r.imp.hasOwnProperty(t.impid))return u(t,i(r.imp[t.impid],{imp:o[t.impid],seatbid:e,ortbResponse:n}));xe("ORTB response seatbid[].bid[].impid does not match any imp in request; ignoring bid",t)})))).filter(Boolean);return p(s,n,i(r.req))}}}ba[ca].native={fn:(e,t,n)=>{if(n.mediaType&&n.mediaType!==vi)return;let r=t.nativeOrtbRequest;r&&(r=Object.assign({},n.nativeRequest,r),r.assets?.length?e.native=At({},{request:JSON.stringify(r),ver:r.ver},e.native):we("mediaTypes.native is set, but no assets were specified. Native request skipped.",t))}},ba[la].native={fn:(e,t)=>{if(e.mediaType===vi){let n;if(n="string"==typeof t.adm?JSON.parse(t.adm):t.adm,!je(n)||!Array.isArray(n.assets))throw new Error("ORTB native response contained no assets");e.native={ortb:n}}}},ba[ca].video={fn:(e,t,n)=>{if(n.mediaType&&n.mediaType!==Ai)return;const r=y(t,"mediaTypes.video");if(!Ne(r)){const t=Object.fromEntries(Object.entries(r).filter((e=>{let[t]=e;return ia.has(t)})));if(r.playerSize){const e=ra(r.playerSize);e.length>1&&we("video request specifies more than one playerSize; all but the first will be ignored"),Object.assign(t,e[0])}const n=oa[r.context];null!=n&&(t.placement=n),e.video=At(t,e.video)}}},ba[la].video={fn:(e,t,n)=>{e.mediaType===Ai&&(y(n.imp,"video.w")&&y(n.imp,"video.h")&&([e.playerWidth,e.playerHeight]=[n.imp.video.w,n.imp.video.h]),t.adm&&(e.vastXml=t.adm),t.nurl&&(e.vastUrl=t.nurl))}};const Aa=wt((()=>ya(ba,ha(pa)))),Ia={[Ii]:"banner",[vi]:"native",[Ai]:"video"},wa={[da]:{extPrebid:{fn:(e,t)=>{xt(e,"ext.prebid",At({auctiontimestamp:t.auctionStart,targeting:{includewinners:!0,includebidderkeys:!1}},e.ext?.prebid)),q.getConfig("debug")&&(e.ext.prebid.debug=!0)}},extPrebidChannel:{fn:e=>{xt(e,"ext.prebid.channel",Object.assign({name:"pbjs",version:o().version},e.ext?.prebid?.channel))}},extPrebidAliases:{fn:function(e,t,n){let{am:r=li}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};if(r.aliasRegistry[t.bidderCode]){const n=r.bidderRegistry[t.bidderCode];n&&n.getSpec().skipPbsAliasing||xt(e,`ext.prebid.aliases.${t.bidderCode}`,r.aliasRegistry[t.bidderCode])}}}},[ca]:{params:{fn:function(e,t,n){let{adUnit:r,bidderRequests:i,index:o=no.index,bidderRegistry:s=li.bidderRegistry}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},a=t.params;const d=s[t.bidder];d&&d.getSpec().transformBidParams&&(r=r||o.getAdUnit(t),i=i||[n.bidderRequest],a=d.getSpec().transformBidParams(a,!0,r,i)),a&&xt(e,`ext.prebid.bidder.${t.bidder}`,a)}},adUnitCode:{fn:(e,t)=>{const n=t.adUnitCode;n&&xt(e,"ext.prebid.adunitcode",n)}}},[la]:{mediaType:{fn:(e,t,n)=>{let r=n.mediaType;r||(r=sa.hasOwnProperty(t.mtype)?sa[t.mtype]:t.ext?.prebid?.type,Ia.hasOwnProperty(r)||(r=Ii)),e.mediaType=r},priority:99},videoCache:{fn:(e,t)=>{if(e.mediaType===Ai){let{cacheId:n,url:r}=y(t,"ext.prebid.cache.vastXml")||{};if(!n||!r){const{hb_uuid:e,hb_cache_host:i,hb_cache_path:o}=y(t,"ext.prebid.targeting")||{};e&&i&&o&&(n=e,r=`https://${i}${o}?uuid=${e}`)}n&&r&&Object.assign(e,{videoCacheKey:n,vastUrl:r})}},priority:-10},bidderCode:{fn(e,t,n){e.bidderCode=n.seatbid.seat,e.adapterCode=y(t,"ext.prebid.meta.adaptercode")||n.bidRequest?.bidder||e.bidderCode}},pbsBidId:{fn(e,t){const n=y(t,"ext.prebid.bidid");De(n)&&(e.pbsBidId=n)}},adserverTargeting:{fn(e,t){const n=y(t,"ext.prebid.targeting");je(n)&&(e.adserverTargeting=n)}},extPrebidMeta:{fn(e,t){e.meta=At({},y(t,"ext.prebid.meta"),e.meta)}},pbsWurl:{fn(e,t){const n=y(t,"ext.prebid.events.win");De(n)&&(e.pbsWurl=n)}}},[ua]:{serverSideStats:{fn(e,t,n){Object.entries({errors:"serverErrors",responsetimemillis:"serverResponseTimeMs"}).forEach((e=>{let[r,i]=e;const o=y(t,`ext.${r}.${n.bidderRequest.bidderCode}`);o&&(n.bidderRequest[i]=o,n.bidRequests.forEach((e=>e[i]=o)))}))}}}},xa=wt((()=>ya(Aa(),wa,ha(ga)))),Ca=["user.keywords"].concat(Cs.flatMap((e=>["keywords","content.keywords"].map((t=>`${e}.${t}`)))));function Ea(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(){const e=new Set;for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return n.filter((e=>e)).flatMap((e=>Array.isArray(e)?e:e.split(","))).map((e=>e.replace(/^\s*/,"").replace(/\s*$/,""))).filter((e=>e)).forEach((t=>e.add(t))),Array.from(e.keys())}(...Ca.map((t=>y(e,t))),...n)}let Ta=q.getConfig("rubicon")||{};q.getConfig("rubicon",(e=>{At(Ta,e.rubicon)}));var Sa={1:"468x60",2:"728x90",5:"120x90",7:"125x125",8:"120x600",9:"160x600",10:"300x600",13:"200x200",14:"250x250",15:"300x250",16:"336x280",17:"240x400",19:"300x100",31:"980x120",32:"250x360",33:"180x500",35:"980x150",37:"468x400",38:"930x180",39:"750x100",40:"750x200",41:"750x300",42:"2x4",43:"320x50",44:"300x50",48:"300x300",53:"1024x768",54:"300x1050",55:"970x90",57:"970x250",58:"1000x90",59:"320x80",60:"320x150",61:"1000x1000",64:"580x500",65:"640x480",66:"930x600",67:"320x480",68:"1800x1000",72:"320x320",73:"320x160",78:"980x240",79:"980x300",80:"980x400",83:"480x300",85:"300x120",90:"548x150",94:"970x310",95:"970x100",96:"970x210",101:"480x320",102:"768x1024",103:"480x280",105:"250x800",108:"320x240",113:"1000x300",117:"320x100",125:"800x250",126:"200x600",144:"980x600",145:"980x150",152:"1000x250",156:"640x320",159:"320x250",179:"250x600",195:"600x300",198:"640x360",199:"640x200",213:"1030x590",214:"980x360",221:"1x1",229:"320x180",230:"2000x1400",232:"580x400",234:"6x6",251:"2x2",256:"480x820",257:"400x600",258:"500x200",259:"998x200",261:"480x480",264:"970x1000",265:"1920x1080",274:"1800x200",278:"320x500",282:"320x400",288:"640x380",484:"720x1280",524:"1x2",548:"500x1000",550:"980x480",552:"300x200",558:"640x640",562:"300x431",564:"320x431",566:"320x300",568:"300x150",570:"300x125",572:"250x350",574:"620x891",576:"610x877",578:"980x552",580:"505x656",622:"192x160",632:"1200x450",634:"340x450"};qe(Sa,((e,t)=>Sa[e]=t));const _a=va({request(e,t,n,r){const{bidRequests:i}=r,s=e(t,n,r);s.cur=["USD"],s.test=q.getConfig("debug")?1:0,xt(s,"ext.prebid.cache",{vastxml:{returnCreative:!0===Ta.returnVast}}),xt(s,"ext.prebid.bidders",{rubicon:{integration:Ta.int_type||"pbjs"}}),xt(s,"ext.prebid.targeting.pricegranularity",(e=>({ranges:{low:[{max:5,increment:.5}],medium:[{max:20,increment:.1}],high:[{max:20,increment:.01}],auto:[{max:5,increment:.05},{min:5,max:10,increment:.1},{min:10,max:20,increment:.5}],dense:[{max:3,increment:.01},{min:3,max:8,increment:.05},{min:8,max:20,increment:.5}],custom:e.getConfig("customPriceBucket")&&e.getConfig("customPriceBucket").buckets}[e.getConfig("priceGranularity")]}))(q));let a=o().installedModules;return!a||a.length&&-1===a.indexOf("rubiconAnalyticsAdapter")||xt(s,"ext.prebid.analytics",{rubicon:{"client-analytics":!0}}),((e,t,n)=>{let r={};const i=Ea(n,...t.map((e=>e.params.keywords)));t.forEach((t=>{const n={user:{ext:{data:{...t.params.visitor}}},site:{ext:{data:{...t.params.inventory}}}},i=e.imp.find((e=>e.ext?.prebid?.bidder?.rubicon?.video?.language));i&&(n.site.content={language:i.ext?.prebid?.bidder?.rubicon?.video?.language}),r=At(r,t.ortb2||{},n);const o=q.getConfig("user.id");r.user.id=r.user.id||o})),At(e,r),i&&i.length&&xt(e,"site.keywords",i.join(",")),delete e?.ext?.prebid?.storedrequest})(s,i,n.ortb2),delete s?.ext?.prebid?.storedrequest,!0===Ta.disableFloors&&delete s.ext.prebid.floors,i.filter((e=>"object"==typeof e.floorData)).length>0&&(s.ext.prebid.floors={enabled:!1}),s},imp(e,t,n){const r=ja(t);if(r.includes(Ii)&&1==r.length)return;const i=e(t,n);return i.id=t.adUnitCode,delete i.banner,"atf"===t.params.position&&i.video&&(i.video.pos=1),"btf"===t.params.position&&i.video&&(i.video.pos=3),delete i.ext?.prebid?.storedrequest,!0===t.params.bidonmultiformat&&r.length>1&&xt(i,"ext.prebid.bidder.rubicon.formats",r),((e,t)=>{if("USD"!=t.bidfloorcur&&(delete t.bidfloor,delete t.bidfloorcur),!t.bidfloor){let n=parseFloat(y(e,"params.floor"));isNaN(n)||(t.bidfloor=n,t.bidfloorcur="USD")}})(t,i),i},bidResponse(e,t,n){const r=e(t,n);r.meta.mediaType=y(t,"ext.prebid.type");const{bidRequest:i}=n;let[o,s]="outstream"===i.mediaTypes.video?.context?Da(i,Ai):[void 0,void 0];return r.width=t.w||o||r.playerWidth,r.height=t.h||s||r.playerHeight,r.mediaType===Ai&&"outstream"===i.mediaTypes.video.context&&(r.renderer=(e=>{const t=nn.install({id:e.adId,url:Ta.rendererUrl||"https://video-outstream.rubiconproject.com/apex-2.2.1.js",config:Ta.rendererConfig||{},loaded:!1,adUnitCode:e.adUnitCode});try{t.setRender(Ra)}catch(e){we("Prebid Error calling setRender on renderer",e)}return t})(r)),y(t,"ext.bidder.rp.advid")&&xt(r,"meta.advertiserId",t.ext.bidder.rp.advid),r},context:{netRevenue:!1!==Ta.netRevenue,ttl:360},processors:xa}),ka={code:"rubicon",gvlid:52,supportedMediaTypes:[Ii,Ai,vi],isBidRequestValid:e=>{let t=!0;if("object"!=typeof e.params)return!1;for(let t=0,n=["accountId","siteId","zoneId"];t<n.length;t++)if(e.params[n[t]]=parseInt(e.params[n[t]]),isNaN(e.params[n[t]]))return xe("Rubicon: wrong format of accountId or siteId or zoneId."),!1;let n=ja(e,!0);if(!n.length)return!1;n.includes(Ai)&&(t=(e=>{let t=!0,n=Object.prototype.toString.call([]);var r={mimes:n,protocols:n,linearity:Object.prototype.toString.call(0)};return Object.keys(r).forEach((n=>{Object.prototype.toString.call(y(e,"mediaTypes.video."+n))!==r[n]&&(t=!1,xe("Rubicon: mediaTypes.video."+n+" is required and must be of type: "+r[n]))})),t})(e));const r=[Ii,vi].filter((e=>n.includes(e))).length>0;return r?t&&r:t},buildRequests:(e,t)=>{let n,r=[],i=[];if(n=e.filter((e=>{const t=ja(e)||[],{length:n}=t,{bidonmultiformat:r,video:i}=e.params||{};return 1===n&&(t.includes(Ai)||t.includes(vi))||2===n&&!t.includes(Ii)||i&&t.includes(Ai)||r&&(t.includes(Ai)||t.includes(vi))})),n&&n.length){const e=_a.toORTB({bidRequests:n,bidderRequest:t});i.push({method:"POST",url:`https://${Ta.videoHost||"prebid-server"}.rubiconproject.com/openrtb2/auction`,data:e,bidRequest:n})}const o=e.filter((e=>{const t=ja(e)||[],{bidonmultiformat:n,video:r}=e.params||{};return t.includes(Ii)&&(1===t.length||n||!n&&!r||!n&&r&&!t.includes(Ai))}));if(!0!==Ta.singleRequest)r=i.concat(o.map((e=>{const n=ka.createSlotParams(e,t);return{method:"GET",url:`https://${Ta.bannerHost||"fastlane"}.rubiconproject.com/a/api/fastlane.json`,data:ka.getOrderedParams(n).reduce(((e,t)=>{const r=n[t];return De(r)&&""!==r||Ue(r)?`${e}${Na(t,r)}&`:e}),"")+`slots=1&rand=${Math.random()}`,bidRequest:e}})));else{const e=o.reduce(((e,t)=>((e[t.params.siteId]=e[t.params.siteId]||[]).push(t),e)),{}),n=10;r=i.concat(Object.keys(e).reduce(((r,i)=>{var o,s;return(o=e[i],s=n,o.map(((e,t)=>t%s==0?o.slice(t,t+s):null)).filter((e=>e))).forEach((e=>{const n=ka.combineSlotUrlParams(e.map((e=>ka.createSlotParams(e,t))));r.push({method:"GET",url:`https://${Ta.bannerHost||"fastlane"}.rubiconproject.com/a/api/fastlane.json`,data:ka.getOrderedParams(n).reduce(((e,t)=>{const r=n[t];return De(r)&&""!==r||Ue(r)?`${e}${Na(t,r)}&`:e}),"")+`slots=${e.length}&rand=${Math.random()}`,bidRequest:e})})),r}),[]))}return r},getOrderedParams:e=>{const t=/^tg_v/,n=/^tg_i/,r=/^eid_|^tpid_/,i=["account_id","site_id","zone_id","size_id","alt_size_ids","p_pos","gdpr","gdpr_consent","us_privacy","gpp","gpp_sid","rp_schain"].concat(Object.keys(e).filter((e=>r.test(e)))).concat(["x_liverampidl","ppuid","rf","p_geo.latitude","p_geo.longitude","kw"]).concat(Object.keys(e).filter((e=>t.test(e)))).concat(Object.keys(e).filter((e=>n.test(e)))).concat(["tk_flint","x_source.tid","l_pb_bid_id","p_screen_res","o_ae","o_cdep","rp_floor","rp_secure","tk_user_key"]);return i.concat(Object.keys(e).filter((e=>-1===i.indexOf(e))))},combineSlotUrlParams:e=>{if(1===e.length)return e[0];const t=e.reduce(((t,n,r)=>(Object.keys(n).forEach((i=>{t.hasOwnProperty(i)||(t[i]=new Array(e.length)),t[i].splice(r,1,n[i])})),t)),{}),n=new RegExp("^([^;]*)(;\\1)+$");return Object.keys(t).forEach((e=>{const r=t[e].join(";"),i=r.match(n);t[e]=i?i[1]:r})),t},createSlotParams:(e,t)=>{e.startTime=(new Date).getTime();const n=e.params,r=Da(e,"banner"),[i,o]=n.latLong||[],s={account_id:n.accountId,site_id:n.siteId,zone_id:n.zoneId,size_id:r[0],alt_size_ids:r.slice(1).join(",")||void 0,rp_floor:(n.floor=parseFloat(n.floor))>=.01?n.floor:void 0,rp_secure:"1",tk_flint:`${Ta.int_type||"pbjs_lite"}_v8.47.0`,"x_source.tid":t.ortb2?.source?.tid,"x_imp.ext.tid":e.ortb2Imp?.ext?.tid,l_pb_bid_id:e.bidId,o_cdep:e.ortb2?.device?.ext?.cdep,p_screen_res:[window.screen.width,window.screen.height].join("x"),tk_user_key:n.userId,"p_geo.latitude":isNaN(parseFloat(i))?void 0:parseFloat(i).toFixed(4),"p_geo.longitude":isNaN(parseFloat(o))?void 0:parseFloat(o).toFixed(4),"tg_fl.eid":e.code,rf:Oa(e,t)};if("function"==typeof e.getFloor&&!Ta.disableFloors){let t;try{t=e.getFloor({currency:"USD",mediaType:"banner",size:"*"})}catch(e){xe("Rubicon: getFloor threw an error: ",e)}s.rp_hard_floor="object"!=typeof t||"USD"!==t.currency||isNaN(parseInt(t.floor))?void 0:t.floor}!0===n.bidonmultiformat&&y(e,"mediaTypes")&&Object.keys(e.mediaTypes).length>1&&(s.p_formats=Object.keys(e.mediaTypes).join(","));let a={1:"atf",3:"btf"}[y(e,"mediaTypes.banner.pos")]||"";s.p_pos="atf"===n.position||"btf"===n.position?n.position:a;const c=q.getConfig("user.id");return c&&(s.ppuid=c),e?.ortb2Imp?.ext?.ae&&(s.o_ae=1),((e,t)=>{if(!1===Ta.readTopics)return;let n=[1,2,5,6,7,507].concat(Ta.sendSiteSegtax?.map((e=>Number(e)))||[]),r=[4,508].concat(Ta.sendUserSegtax?.map((e=>Number(e)))||[]),i=e.ortb2?.user?.data||[],o=e.ortb2?.site?.content?.data||[];i.forEach(Ba(t,"v",r)),o.forEach(Ba(t,"i",n))})(t,s),e.userIdAsEids&&e.userIdAsEids.forEach((e=>{try{if("adserver.org"===e.source)s.tpid_tdid=e.uids[0].id,s["eid_adserver.org"]=e.uids[0].id;else if("liveintent.com"===e.source)s["tpid_liveintent.com"]=e.uids[0].id,s["eid_liveintent.com"]=e.uids[0].id,e.ext&&Array.isArray(e.ext.segments)&&e.ext.segments.length&&(s["tg_v.LIseg"]=e.ext.segments.join(","));else if("liveramp.com"===e.source)s.x_liverampidl=e.uids[0].id;else if("id5-sync.com"===e.source)s["eid_id5-sync.com"]=`${e.uids[0].id}^${e.uids[0].atype}^${e.uids[0].ext&&e.uids[0].ext.linkType||""}`;else{const t="rubiconproject.com"===e.source?e.uids[0].id:`${e.uids[0].id}^${e.uids[0].atype||""}`;s[`eid_${e.source}`]=t}if(!s.ppuid){const t=d(e.uids,(e=>e.ext&&"ppuid"===e.ext.stype));t&&t.id&&(s.ppuid=t.id)}}catch(t){we("Rubicon: error reading eid:",e,t)}})),t.gdprConsent&&("boolean"==typeof t.gdprConsent.gdprApplies&&(s.gdpr=Number(t.gdprConsent.gdprApplies)),s.gdpr_consent=t.gdprConsent.consentString),t.uspConsent&&(s.us_privacy=encodeURIComponent(t.uspConsent)),t.gppConsent?.gppString&&(s.gpp=t.gppConsent.gppString,s.gpp_sid=t.gppConsent?.applicableSections?.toString()),s.rp_maxbids=t.bidLimit||1,((e,t,n)=>{const r={user:{ext:{data:{...e.params.visitor}}},site:{ext:{data:{...e.params.inventory}}}};e.params.keywords&&(r.site.keywords=Be(e.params.keywords)?e.params.keywords.join(","):e.params.keywords);let i=At({},e.ortb2||{},r),o=y(e.ortb2Imp,"ext")||{},s=y(e.ortb2Imp,"ext.data")||{};const a=y(e,"ortb2Imp.ext.gpid"),d=y(i,"regs.ext.dsa"),c={user:[4],site:[1,2,5,6]},l={user:"tg_v.",site:"tg_i.",adserver:"tg_i.dfp_ad_unit_code",pbadslot:"tg_i.pbadslot",keywords:"kw"},u=function(e,t,r){let i=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],o=((e,t,n)=>"data"===t&&Array.isArray(e)?e.filter((e=>e.segment&&y(e,"ext.segtax")&&c[n]&&-1!==c[n].indexOf(y(e,"ext.segtax")))).map((e=>{let t=e.segment.filter((e=>e.id)).reduce(((e,t)=>(e.push(t.id),e)),[]);if(t.length>0)return t.toString()})).toString():"object"==typeof e&&!Array.isArray(e)||void 0===e?void 0:Array.isArray(e)?e.filter((e=>{if("object"!=typeof e&&void 0!==e)return e.toString();we("Rubicon: Filtered value: ",e,"for key",t,": Expected value to be string, integer, or an array of strings/ints")})).toString():e.toString())(e,r,t),s=l[r]&&i?`${l[r]}`:"data"===r?`${l[t]}iab`:`${l[t]}${r}`;n[s]=n[s]?n[s].concat(",",o):o};if(t===Ii){["site","user"].forEach((e=>{Object.keys(i[e]).forEach((t=>{"site"===e&&"content"===t&&i[e][t].data?u(i[e][t].data,e,"data"):"ext"!==t?u(i[e][t],e,t):i[e][t].data&&Object.keys(i[e].ext.data).forEach((t=>{u(i[e].ext.data[t],e,t,!1)}))}))})),Object.keys(s).forEach((e=>{"adserver"!==e?u(s[e],"site",e):"gam"===s[e].name&&u(s[e].adslot,name,e)})),a&&(n.p_gpid=a),d&&Object.keys(d).length&&gt(d,["dsainfo",e=>n.dsainfo=e,"dsarequired",e=>n.dsarequired=e,"pubrender",e=>n.dsapubrender=e,"datatopub",e=>n.dsadatatopubs=e,"transparency",e=>{Array.isArray(e)&&e.length&&(n.dsatransparency=e.reduce(((e,t)=>(e&&(e+="~~"),e+`${t.domain}~${t.dsaparams.join("_")}`)),""))}]),n["tg_i.pbadslot"]&&delete n["tg_i.dfp_ad_unit_code"];const e=y(i,"device.sua");e&&!1!==Ta.chEnabled&&gt(e,["architecture",e=>n.m_ch_arch=e,"bitness",e=>n.m_ch_bitness=e,"browsers",e=>{if(!Array.isArray(e))return;const[t,r]=e.reduce(((e,t)=>(e[0].push(`"${t?.brand}"|v="${t?.version?.[0]}"`),e[1].push(`"${t?.brand}"|v="${t?.version?.join?.(".")}"`),e)),[[],[]]);n.m_ch_ua=t?.join?.(","),n.m_ch_full_ver=r?.join?.(",")},"mobile",e=>n.m_ch_mobile=`?${e}`,"model",e=>n.m_ch_model=e,"platform",e=>{n.m_ch_platform=e?.brand,n.m_ch_platform_ver=e?.version?.join?.(".")}])}else Object.keys(o).length&&At(n.imp[0].ext,o),a&&(n.imp[0].ext.gpid=a),At(n,i)})(e,Ii,s),!0===q.getConfig("coppa")&&(s.coppa=1),e.schain&&Pa(e.schain)&&(s.rp_schain=ka.serializeSupplyChain(e.schain)),s},serializeSupplyChain:e=>{if(!Pa(e))return"";const{ver:t,complete:n,nodes:r}=e;return`${t},${n}!${ka.serializeSupplyChainNodes(r)}`},serializeSupplyChainNodes:e=>{const t=["asi","sid","hp","rid","name","domain"];return e.map((e=>t.map((t=>encodeURIComponent(e[t]||""))).join(","))).join("!")},interpretResponse:(e,t)=>{e=e.body;const{data:n}=t;if(!e||"object"!=typeof e)return[];if(e.seatbid){const t=y(e,"ext.errors.rubicon");return Array.isArray(t)&&t.length>0&&we("Rubicon: Error in video response"),_a.fromORTB({request:n,response:e}).bids}let r,i=e.ads,o=0;const{bidRequest:s}=t;if("object"==typeof s&&!Array.isArray(s)&&ja(s).includes(Ai)&&"object"==typeof i&&(i=i[s.adUnitCode]),!Array.isArray(i)||i.length<1)return[];let a=i.reduce(((t,n,i)=>{if(n.impression_id&&r===n.impression_id?o++:r=n.impression_id,"ok"!==n.status)return t;const a=Array.isArray(s)?s[i-o]:s;if(a&&"object"==typeof a){let e={requestId:a.bidId,currency:"USD",creativeId:n.creative_id||`${n.network||""}-${n.advertiser||""}`,cpm:n.cpm||0,dealId:n.deal,ttl:360,netRevenue:!1!==Ta.netRevenue,rubicon:{advertiserId:n.advertiser,networkId:n.network},meta:{advertiserId:n.advertiser,networkId:n.network,mediaType:Ii}};n.creative_type&&(e.mediaType=n.creative_type),n.dsa&&Object.keys(n.dsa).length&&(e.meta.dsa=n.dsa),n.adomain&&(e.meta.advertiserDomains=Array.isArray(n.adomain)?n.adomain:[n.adomain]),n.creative_type===Ai?(e.width=a.params.video.playerWidth,e.height=a.params.video.playerHeight,e.vastUrl=n.creative_depot_url,e.impression_id=n.impression_id,e.videoCacheKey=n.impression_id):(e.ad=(d=n.script,`<html>\n<head><script type='text/javascript'>inDapIF=true;<\/script></head>\n<body style='margin : 0; padding: 0;'>\n\x3c!-- Rubicon Project Ad Tag --\x3e\n<div data-rp-impression-id='${n.impression_id}'>\n<script type='text/javascript'>${d}<\/script>\n</div>\n</body>\n</html>`),[e.width,e.height]=Sa[n.size_id].split("x").map((e=>Number(e)))),e.rubiconTargeting=(Array.isArray(n.targeting)?n.targeting:[]).reduce(((e,t)=>(e[t.key]=t.values[0],e)),{rpfl_elemid:a.adUnitCode}),t.push(e)}else xe(`Rubicon: bidRequest undefined at index position:${i}`,s,e);var d;return t}),[]).sort(((e,t)=>(t.cpm||0)-(e.cpm||0))),d=e.component_auction_config?.map((e=>({config:e,bidId:e.bidId})));return d?{bids:a,fledgeAuctionConfigs:d}:a},getUserSyncs:(e,t,n,r,i)=>{if(!$a&&e.iframeEnabled){let e={};return n&&("boolean"==typeof n.gdprApplies&&(e.gdpr=Number(n.gdprApplies)),"string"==typeof n.consentString&&(e.gdpr_consent=n.consentString)),r&&(e.us_privacy=encodeURIComponent(r)),i?.gppString&&(e.gpp=i.gppString,e.gpp_sid=i.applicableSections?.toString()),e=Object.keys(e).length?`?${ht(e)}`:"",$a=!0,{type:"iframe",url:`https://${Ta.syncHost||"eus"}.rubiconproject.com/usync.html`+e}}}};function Oa(e,t){let n;return n=e.params.referrer?e.params.referrer:t.refererInfo.page,e.params.secure?n.replace(/^http:/i,"https:"):n}function Ra(e){const t=document.getElementById(e.adUnitCode);(e=>{const t=e.querySelector("div[id^='google_ads']");t&&t.style.setProperty("display","none")})(t),(e=>{const t=e.querySelector("script[id^='sas_script']"),n=t&&t.nextSibling;n&&"iframe"===n.localName&&n.style.setProperty("display","none")})(t);const n={align:"center",position:"append",closeButton:!1,label:void 0,collapse:!0,...e.renderer.getConfig()};e.renderer.push((()=>{window.MagniteApex.renderAd({width:e.width,height:e.height,vastUrl:e.vastUrl,placement:{attachTo:t,align:n.align,position:n.position},closeButton:n.closeButton,label:n.label,collapse:n.collapse})}))}function Da(e,t){let n=e.params;if(t===Ai){let t=[];return n.video&&n.video.playerWidth&&n.video.playerHeight?t=[n.video.playerWidth,n.video.playerHeight]:Array.isArray(y(e,"mediaTypes.video.playerSize"))&&1===e.mediaTypes.video.playerSize.length?t=e.mediaTypes.video.playerSize[0]:Array.isArray(e.sizes)&&e.sizes.length>0&&Array.isArray(e.sizes[0])&&e.sizes[0].length>1&&(t=e.sizes[0]),t}let r=[];return Array.isArray(n.sizes)?r=n.sizes:void 0!==y(e,"mediaTypes.banner.sizes")?r=Ua(e.mediaTypes.banner.sizes):Array.isArray(e.sizes)&&e.sizes.length>0?r=Ua(e.sizes):we("Rubicon: no sizes are setup or found"),(e=>{const t=[15,2,9];return e.sort(((e,n)=>{const r=t.indexOf(e),i=t.indexOf(n);return r>-1||i>-1?-1===r?1:-1===i?-1:r-i:e-n}))})(r)}function Ba(e,t,n){return r=>{const i=Number(r.ext?.segtax);n.includes(i)&&(e[`tg_${t}.tax${i}`]=r.segment?.map((e=>e.id)).join(","))}}function Ua(e){return ge(e).reduce(((e,t)=>{let n=parseInt(Sa[t],10);return n&&e.push(n),e}),[])}function ja(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=[];if((e=>{let t=void 0!==y(e,`mediaTypes.${Ai}`),n=void 0!==y(e,`mediaTypes.${Ii}`),r=void 0!==y(e,"params.bidonmultiformat"),i="object"!=typeof y(e,"params.video");return!(!t||!r)||(n&&i&&(t=!1),t&&i&&xt(e,"params.video",{}),t)})(e)){if(-1===["outstream","instream"].indexOf(y(e,`mediaTypes.${Ai}.context`)))return t&&xe("Rubicon: mediaTypes.video.context must be outstream or instream"),n;if(Da(e,Ai).length<2)return t&&xe("Rubicon: could not determine the playerSize of the video"),n;t&&Ae("Rubicon: making video request for adUnit",e.adUnitCode),n.push(Ai)}if(void 0!==y(e,`mediaTypes.${vi}`)&&n.push(vi),void 0!==y(e,`mediaTypes.${Ii}`)){if(0===Da(e,Ii).length)return t&&xe("Rubicon: could not determine the sizes for banner request"),n;t&&Ae("Rubicon: making banner request for adUnit",e.adUnitCode),n.push(Ii)}return n}function Pa(e){let t=!1;const n=["asi","sid","hp"];return e.nodes?(t=e.nodes.reduce(((e,t)=>e?n.every((e=>t.hasOwnProperty(e))):e),!0),t||xe("Rubicon: required schain params missing"),t):t}function Na(e,t){return"rp_schain"===e?`rp_schain=${t}`:`${e}=${encodeURIComponent(t)}`}var $a=!1;function qa(e){return!e?.gdprApplies||!0===y(e,"vendorData.purpose.consents.1")}lr(ka),s("rubiconBidAdapter");const Ma={1:"IAB20-3",2:"IAB18-5",3:"IAB10-1",4:"IAB2-3",5:"IAB19-8",6:"IAB22-1",7:"IAB18-1",8:"IAB12-3",9:"IAB5-1",10:"IAB4-5",11:"IAB13-4",12:"IAB8-7",13:"IAB9-7",14:"IAB7-1",15:"IAB20-18",16:"IAB10-7",17:"IAB19-18",18:"IAB13-6",19:"IAB18-4",20:"IAB1-5",21:"IAB1-6",22:"IAB3-4",23:"IAB19-13",24:"IAB22-2",25:"IAB3-9",26:"IAB17-18",27:"IAB19-6",28:"IAB1-7",29:"IAB9-30",30:"IAB20-7",31:"IAB20-17",32:"IAB7-32",33:"IAB16-5",34:"IAB19-34",35:"IAB11-5",36:"IAB12-3",37:"IAB11-4",38:"IAB12-3",39:"IAB9-30",41:"IAB7-44",42:"IAB7-1",43:"IAB7-30",50:"IAB19-30",51:"IAB17-12",52:"IAB19-30",53:"IAB3-1",55:"IAB13-2",56:"IAB19-30",57:"IAB19-30",58:"IAB7-39",59:"IAB22-1",60:"IAB7-39",61:"IAB21-3",62:"IAB5-1",63:"IAB12-3",64:"IAB20-18",65:"IAB11-2",66:"IAB17-18",67:"IAB9-9",68:"IAB9-5",69:"IAB7-44",71:"IAB22-3",73:"IAB19-30",74:"IAB8-5",78:"IAB22-1",85:"IAB12-2",86:"IAB22-3",87:"IAB11-3",112:"IAB7-32",113:"IAB7-32",114:"IAB7-32",115:"IAB7-32",118:"IAB9-5",119:"IAB9-5",120:"IAB9-5",121:"IAB9-5",122:"IAB9-5",123:"IAB9-5",124:"IAB9-5",125:"IAB9-5",126:"IAB9-5",127:"IAB22-1",132:"IAB1-2",133:"IAB19-30",137:"IAB3-9",138:"IAB19-3",140:"IAB2-3",141:"IAB2-1",142:"IAB2-3",143:"IAB17-13",166:"IAB11-4",175:"IAB3-1",176:"IAB13-4",182:"IAB8-9",183:"IAB3-5"},za={526:"1plusX",527:"1plusX",541:"captify_segments",540:"perid"},Fa=["user.data"].concat(Cs.map((e=>`${e}.content.data`)));function La(e,t,n){return null==t?n:De(t)?t:Ue(t)?t.toString():void we("Unsuported type for param: "+e+" required type: String")}function Va(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"keywords";const n=[];return qe(e,((e,r)=>{if(Be(e)){let n=[];qe(e,(e=>{((e=La(t+"."+r,e))||""===e)&&n.push(e)})),e=n}else{if(!De(e=La(t+"."+r,e)))return;e=[e]}e=e.filter((e=>""!==e));const i={key:r};e.length>0&&(i.value=e),n.push(i)})),n}function Wa(e){const t={};return e.forEach((e=>{if(-1!==e.indexOf("=")){let n=e.split("="),r=n[0],i=n[1];t.hasOwnProperty(r)?t[r].push(i):t[r]=[i]}else t.hasOwnProperty(e)||(t[e]=[])})),t}function Ga(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return Va(At(...t.map((e=>Object.fromEntries(Object.entries(e||{}).map((e=>{let[t,n]=e;return[t,Ue(n)||De(n)?[n]:n]})))))))}function Ha(e){return e.replace(/(?:^|\.?)([A-Z])/g,((e,t)=>"_"+t.toLowerCase())).replace(/^_/,"")}function Ja(e,t){return Object.keys(e).forEach((n=>{var r,i;t[n]&&(Re(e[n])?t[n]=e[n](t[n]):t[n]=(r=e[n],i=t[n],"string"===r?i&&i.toString():"number"===r?Number(i):i),isNaN(t[n])&&delete t.key)})),t}function Xa(e,t){let n=[];for(let r=0;r<Math.ceil(e.length/t);r++){let i=r*t,o=i+t;n.push(e.slice(i,o))}return n}const Qa="appnexus",Ka=["id","minduration","maxduration","skippable","playback_method","frameworks","context","skipoffset"],Ya=["minduration","maxduration","skip","skipafter","playbackmethod","api","startdelay","placement","plcmt"],Za=["age","externalUid","external_uid","segments","gender","dnt","language"],ed=["geo","device_id"],td=["enabled","dongle","member_id","debug_timeout"],nd={apn_debug_dongle:"dongle",apn_debug_member_id:"member_id",apn_debug_timeout:"debug_timeout"},rd={playback_method:{unknown:0,auto_play_sound_on:1,auto_play_sound_off:2,click_to_play:3,mouse_over:4,auto_play_sound_unknown:5},context:{unknown:0,pre_roll:1,mid_roll:2,post_roll:3,outstream:4,"in-banner":5,"in-feed":6,interstitial:7,accompanying_content_pre_roll:8,accompanying_content_mid_roll:9,accompanying_content_post_roll:10}},id={body:"description",body2:"desc2",cta:"ctatext",image:{serverName:"main_image",requiredParams:{required:!0}},icon:{serverName:"icon",requiredParams:{required:!0}},sponsoredBy:"sponsored_by",privacyLink:"privacy_link",salePrice:"saleprice",displayUrl:"displayurl"},od=/\/\/cdn\.adnxs\.com\/v|\/\/cdn\.adnxs\-simple\.com\/v/,sd=mi({bidderCode:Qa}),ad={code:Qa,gvlid:32,aliases:[{code:"appnexusAst",gvlid:32},{code:"emxdigital",gvlid:183},{code:"emetriq",gvlid:213},{code:"pagescience",gvlid:32},{code:"gourmetads",gvlid:32},{code:"matomy",gvlid:32},{code:"featureforward",gvlid:32},{code:"oftmedia",gvlid:32},{code:"adasta",gvlid:32},{code:"beintoo",gvlid:618},{code:"projectagora",gvlid:1032},{code:"uol",gvlid:32},{code:"adzymic",gvlid:32}],supportedMediaTypes:[Ii,Ai,vi],isBidRequestValid:e=>!!(e.params.placementId||e.params.placement_id||e.params.member&&(e.params.invCode||e.params.inv_code)),buildRequests:(e,t)=>{const n=(e=(e=>{{if(!e||!Be(e))return e;if(!e.some((e=>(e?.mediaTypes||{})[vi]?.ortb)))return e;let t=tt(e);for(const e of t)e.mediaTypes&&e.mediaTypes[vi]&&e.mediaTypes[vi].ortb&&(e.mediaTypes[vi]=Object.assign(gt(e.mediaTypes[vi],D),Ao(e.mediaTypes[vi].ortb)),e.nativeParams=uo(e.mediaTypes[vi]));return t}})(e)).map(dd),r=d(e,ld);let i={};!0===q.getConfig("coppa")&&(i={coppa:!0}),r&&Object.keys(r.params.user).filter((e=>a(Za,e))).forEach((e=>{let t=Ha(e);if("segments"===e&&Be(r.params.user[e])){let n=[];r.params.user[e].forEach((e=>{Ue(e)?n.push({id:e}):je(e)&&n.push(e)})),i[t]=n}else"segments"!==e&&(i[t]=r.params.user[e])}));const o=d(e,pd);let s;o&&o.params&&o.params.app&&(s={},Object.keys(o.params.app).filter((e=>a(ed,e))).forEach((e=>s[e]=o.params.app[e])));const c=d(e,gd);let l;c&&c.params&&o.params.app&&o.params.app.id&&(l={appid:c.params.app.id});let u={},p={};const g=sd.getCookie("apn_prebid_debug")||null;if(g)try{u=JSON.parse(g)}catch(e){xe("AppNexus Debug Auction Cookie Error:\n\n"+e)}else{Object.keys(nd).forEach((e=>{let t=ke(e);De(t)&&""!==t&&(u[nd[e]]=t,u.enabled=!0)})),u=Ja({member_id:"number",debug_timeout:"number"},u);const t=d(e,fd);t&&t.debug&&(u=t.debug)}u&&u.enabled&&Object.keys(u).filter((e=>a(td,e))).forEach((e=>{p[e]=u[e]}));const f=d(e,ud),m=f?parseInt(f.params.member,10):0,h=e[0].schain,b=d(e,hd),v={tags:[...n],user:i,sdk:{source:"pbjs",version:"8.47.0"},schain:h};b&&(v.iab_support={omidpn:"Appnexus",omidpv:"8.47.0"}),m>0&&(v.member_id=m),o&&(v.device=s),c&&(v.app=l);let A=function(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 Ga((e=>Wa(Ea(e)))(e),(e=>{let t={};return Fa.forEach((n=>{(y(e,n)||[]).forEach((e=>{const n=za[y(e,"ext.segtax")];n&&e.segment.forEach((e=>{t[n]?t[n].push(e.id):t[n]=[e.id]}))}))})),t})(e),...n)}(tt(t&&t.ortb2),tt(q.getConfig("appnexusAuctionKeywords"))||{});if(A.length>0&&(v.keywords=A),q.getConfig("adpod.brandCategoryExclusion")&&(v.brand_category_uniqueness=!0),p.enabled&&(v.debug=p,Ie("AppNexus Debug Auction Settings:\n\n"+JSON.stringify(p,null,4))),t&&t.gdprConsent&&(v.gdpr_consent={consent_string:t.gdprConsent.consentString,consent_required:t.gdprConsent.gdprApplies},t.gdprConsent.addtlConsent&&-1!==t.gdprConsent.addtlConsent.indexOf("~"))){let e=t.gdprConsent.addtlConsent,n=e.substring(e.indexOf("~")+1);v.gdpr_consent.addtl_consent=n.split(".").map((e=>parseInt(e,10)))}if(t&&t.uspConsent&&(v.us_privacy=t.uspConsent),t?.gppConsent?v.privacy={gpp:t.gppConsent.gppString,gpp_sid:t.gppConsent.applicableSections}:t?.ortb2?.regs?.gpp&&(v.privacy={gpp:t.ortb2.regs.gpp,gpp_sid:t.ortb2.regs.gpp_sid}),t&&t.refererInfo){let e={rd_ref:encodeURIComponent(t.refererInfo.topmostLocation),rd_top:t.refererInfo.reachedTop,rd_ifs:t.refererInfo.numIframes,rd_stk:t.refererInfo.stack.map((e=>encodeURIComponent(e))).join(",")},n=t.refererInfo.canonicalUrl;De(n)&&""!==n&&(e.rd_can=n),v.referrer_detection=e}if(d(e,md)&&e.filter(md).forEach((e=>{const t=((e,t)=>{const{durationRangeSec:n,requireExactDuration:r}=t.mediaTypes.video,i=(e=>{const{adPodDurationSec:t,durationRangeSec:n,requireExactDuration:r}=e,i=Math.min(...n),o=Math.floor(t/i);return r?Math.max(o,n.length):o})(t.mediaTypes.video),o=Math.max(...n);let s=((e,t)=>{let n=[];for(let r=0;r<t;r++){let t=je(e)?tt(e):e;n.push(t)}return n})(...e.filter((e=>e.uuid===t.bidId)),i);if(r){const e=Xa(s,Math.ceil(i/n.length));n.forEach(((t,n)=>{e[n].map((e=>{bd(e,"minduration",t),bd(e,"maxduration",t)}))}))}else s.map((e=>bd(e,"maxduration",o)));return s})(n,e),r=v.tags.filter((t=>t.uuid!==e.bidId));v.tags=[...r,...t]})),e[0].userId){let t=[];e[0].userIdAsEids.forEach((e=>{!e||!e.uids||e.uids.length<1||e.uids.forEach((n=>{let r={source:e.source,id:n.id};"adserver.org"==e.source?r.rti_partner="TDID":"uidapi.com"==e.source&&(r.rti_partner="UID2"),t.push(r)}))})),t.length&&(v.eids=t)}if(t?.ortb2?.regs?.ext?.dsa){const e=t.ortb2.regs.ext.dsa,n={};if(["dsarequired","pubrender","datatopub"].forEach((t=>{Ue(e[t])&&(n[t]=e[t])})),Be(e.transparency)&&e.transparency.every((e=>je(e)))){const t=[];e.transparency.forEach((e=>{De(e.domain)&&""!=e.domain&&Be(e.dsaparams)&&e.dsaparams.every((e=>Ue(e)))&&t.push(e)})),t.length>0&&(n.transparency=t)}Ne(n)||(v.dsa=n)}n[0].publisher_id&&(v.publisher_id=n[0].publisher_id);const I=((e,t)=>{let n=[],r={withCredentials:!0},i="https://ib.adnxs.com/ut/v3/prebid";if(qa(t?.gdprConsent)||(i="https://ib.adnxs-simple.com/ut/v3/prebid"),"TRUE"!==ke("apn_test").toUpperCase()&&!0!==q.getConfig("apn_test")||(r.customHeaders={"X-Is-Test":1}),e.tags.length>15){const o=tt(e);Xa(e.tags,15).forEach((e=>{o.tags=e;const s=JSON.stringify(o);n.push({method:"POST",url:i,data:s,bidderRequest:t,options:r})}))}else{const o=JSON.stringify(e);n={method:"POST",url:i,data:o,bidderRequest:t,options:r}}return n})(v,t);return I},interpretResponse:function(e,t){let{bidderRequest:n}=t;e=e.body;const r=[];if(!e||e.error){let t=`in response for ${n.bidderCode} adapter`;return e&&e.error&&(t+=`: ${e.error}`),xe(t),r}if(e.tags&&e.tags.forEach((e=>{const t=(i=e)&&i.ads&&i.ads.length&&d(i.ads,(e=>e.rtb));var i;if(t&&(!0===rn.get(n.bidderCode,"allowZeroCpmBids")?t.cpm>=0:t.cpm>0)&&a(this.supportedMediaTypes,t.ad_type)){const i=((e,t,n)=>{const r=Qe(e.uuid,[n]),i=le(),o={adId:i,requestId:e.uuid,cpm:t.cpm,creativeId:t.creative_id,dealId:t.deal_id,currency:"USD",netRevenue:!0,ttl:300,adUnitCode:r.adUnitCode,appnexus:{buyerMemberId:t.buyer_member_id,dealPriority:t.deal_priority,dealCode:t.deal_code}};if(t.adomain&&(o.meta=Object.assign({},o.meta,{advertiserDomains:[t.adomain]})),t.advertiser_id&&(o.meta=Object.assign({},o.meta,{advertiserId:t.advertiser_id})),t.dsa&&(o.meta=Object.assign({},o.meta,{dsa:t.dsa})),t.buyer_member_id&&(o.meta=Object.assign({},o.meta,{dchain:function(e){return{ver:"1.0",complete:0,nodes:[{bsid:e.buyer_member_id.toString()}]}}(t)})),t.brand_id&&(o.meta=Object.assign({},o.meta,{brandId:t.brand_id})),t.rtb.video)switch(Object.assign(o,{width:t.rtb.video.player_width,height:t.rtb.video.player_height,vastImpUrl:t.notify_url,ttl:3600}),y(r,"mediaTypes.video.context")){case wi:const r=Ma[t.brand_category_id]?Ma[t.brand_category_id]:null;o.meta=Object.assign({},o.meta,{primaryCatId:r});const i=t.deal_priority;o.video={context:wi,durationSeconds:Math.floor(t.rtb.video.duration_ms/1e3),dealTier:i},o.vastUrl=t.rtb.video.asset_url;break;case Vn:if(o.adResponse=e,o.adResponse.ad=o.adResponse.ads[0],o.adResponse.ad.video=o.adResponse.ad.rtb.video,o.vastXml=t.rtb.video.content,t.renderer_url){const r=d(n.bids,(t=>t.bidId===e.uuid));let i=y(r,"mediaTypes.video.renderer.options");i||(i=y(r,"renderer.options")),o.renderer=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=nn.install({id:t.renderer_id,url:t.renderer_url,config:n,loaded:!1,adUnitCode:e});try{r.setRender(yd)}catch(e){we("Prebid Error calling setRender on renderer",e)}return r.setEventHandlers({impression:()=>Ae("AppNexus outstream video impression event"),loaded:()=>Ae("AppNexus outstream video loaded event"),ended:()=>{Ae("AppNexus outstream renderer video event"),document.querySelector(`#${e}`).style.display="none"}}),r}(o.adUnitCode,t,i)}break;case Wn:o.vastUrl=t.notify_url+"&redir="+encodeURIComponent(t.rtb.video.asset_url)}else if(t.rtb[vi]){const e=t.rtb[vi];let n;if((e=>{if(!e||""===e)return!1;let t=e.match(od),n=null!=t&&t.length>=1,r=e.match("trk.js"),i=null!=r&&r.length>=1;return e.startsWith("<script")&&i&&n})(t.viewability.config)){let e="pbjs_adid="+i+";pbjs_auc="+r.adUnitCode;n=t.viewability.config.replace("dom_id=%native_dom_id%",e)}let s=e.javascript_trackers;null==s?s=n:De(s)?s=[s,n]:s.push(n),o[vi]={title:e.title,body:e.desc,body2:e.desc2,cta:e.ctatext,rating:e.rating,sponsoredBy:e.sponsored,privacyLink:e.privacy_link,address:e.address,downloads:e.downloads,likes:e.likes,phone:e.phone,price:e.price,salePrice:e.saleprice,clickUrl:e.link.url,displayUrl:e.displayurl,clickTrackers:e.link.click_trackers,impressionTrackers:e.impression_trackers,video:e.video,javascriptTrackers:s},e.main_img&&(o.native.image={url:e.main_img.url,height:e.main_img.height,width:e.main_img.width}),e.icon&&(o.native.icon={url:e.icon.url,height:e.icon.height,width:e.icon.width})}else{Object.assign(o,{width:t.rtb.banner.width,height:t.rtb.banner.height,ad:t.rtb.banner.content});try{if(t.rtb.trackers)for(let e=0;e<t.rtb.trackers[0].impression_urls.length;e++){const n=Ge(t.rtb.trackers[0].impression_urls[e]);o.ad+=n}}catch(e){xe("Error appending tracking pixel",e)}}return o})(e,t,n);i.mediaType=(e=>{const t=e.ad_type;return t===Ai?Ai:t===vi?vi:Ii})(t),r.push(i)}})),e.debug&&e.debug.debug_info){let t="AppNexus Debug Auction for Prebid\n\n"+e.debug.debug_info;t=t.replace(/(<td>|<th>)/gm,"\t").replace(/(<\/td>|<\/th>)/gm,"\n").replace(/^<br>/gm,"").replace(/(<br>\n|<br>)/gm,"\n").replace(/<h1>(.*)<\/h1>/gm,"\n\n===== $1 =====\n\n").replace(/<h[2-6]>(.*)<\/h[2-6]>/gm,"\n\n*** $1 ***\n\n").replace(/(<([^>]+)>)/gim,""),Ae("https://console.appnexus.com/docs/understanding-the-debug-auction"),Ae(t)}return r},getUserSyncs:(e,t,n,r,i)=>{if(e.iframeEnabled&&qa(n))return[{type:"iframe",url:"https://acdn.adnxs.com/dmp/async_usersync.html"}]},transformBidParams:(e,t,n,r)=>{let i=Va;if(!0===t){let e=null,t=q.getConfig("s2sConfig");je(t)?e=y(t,"endpoint.p1Consent"):Be(t)&&t.forEach((t=>{a(t.bidders,n.bids[0].bidder)&&(e=y(t,"endpoint.p1Consent"))})),e&&e.match("/openrtb2/prebid")&&(i=Ad)}return e=Ja({member:"string",invCode:"string",placementId:"number",keywords:i,publisherId:"number"},e),t&&(Object.keys(e).forEach((t=>{let n=Ha(t);n!==t&&(e[n]=e[t],delete e[t])})),e.use_pmt_rule="boolean"==typeof e.use_payment_rule&&e.use_payment_rule,e.use_payment_rule&&delete e.use_payment_rule),e}};function dd(e){const t={};Object.keys(e.params).forEach((t=>{let n=Ha(t);n!==t&&(e.params[n]=e.params[t],delete e.params[t])})),t.sizes=cd(e.sizes),t.primary_size=t.sizes[0],t.ad_types=[],t.uuid=e.bidId,e.params.placement_id?t.id=parseInt(e.params.placement_id,10):t.code=e.params.inv_code;const n=ke("ast_override_div");if(De(n)&&""!==n){const r=n.split(",").find((t=>t.startsWith(`${e.adUnitCode}:`)));if(r){const e=r.split(":")[1];e&&(t.force_creative_id=parseInt(e,10))}}t.allow_smaller_sizes=e.params.allow_smaller_sizes||!1,t.use_pmt_rule="boolean"==typeof e.params.use_payment_rule?e.params.use_payment_rule:"boolean"==typeof e.params.use_pmt_rule&&e.params.use_pmt_rule,t.prebid=!0,t.disable_psa=!0;let r=(e=>{if(!Re(e.getFloor))return e.params.reserve?e.params.reserve:null;let t=e.getFloor({currency:"USD",mediaType:"*",size:"*"});return je(t)&&!isNaN(t.floor)&&"USD"===t.currency?t.floor:null})(e);if(r&&(t.reserve=r),e.params.position)t.position={above:1,below:2}[e.params.position]||0;else{let n=y(e,"mediaTypes.banner.pos")||y(e,"mediaTypes.video.pos");0!==n&&1!==n&&3!==n||(t.position=3===n?2:n)}e.params.traffic_source_code&&(t.traffic_source_code=e.params.traffic_source_code),e.params.private_sizes&&(t.private_sizes=cd(e.params.private_sizes)),e.params.supply_type&&(t.supply_type=e.params.supply_type),e.params.pub_click&&(t.pubclick=e.params.pub_click),e.params.ext_inv_code&&(t.ext_inv_code=e.params.ext_inv_code),e.params.publisher_id&&(t.publisher_id=parseInt(e.params.publisher_id,10)),e.params.external_imp_id&&(t.external_imp_id=e.params.external_imp_id);const i=Ga(De(o=y(e,"ortb2Imp.ext.data.keywords"))&&""!==o?Wa(o.split(/\s*(?:,)\s*/)):{},e.params?.keywords);var o;i.length>0&&(t.keywords=i);let s=y(e,"ortb2Imp.ext.gpid")||y(e,"ortb2Imp.ext.data.pbadslot");if(s&&(t.gpid=s),(e.mediaType===vi||y(e,`mediaTypes.${vi}`))&&(t.ad_types.push(vi),0===t.sizes.length&&(t.sizes=cd([1,1])),e.nativeParams)){const n=(e=>{const t={};return Object.keys(e).forEach((n=>{const r=id[n]&&id[n].serverName||id[n]||n,i=id[n]&&id[n].requiredParams;if(t[r]=Object.assign({},i,e[n]),(r===id.image.serverName||r===id.icon.serverName)&&t[r].sizes){let e=t[r].sizes;(ft(e)||Be(e)&&e.length>0&&e.every((e=>ft(e))))&&(t[r].sizes=cd(t[r].sizes))}r===id.privacyLink&&(t.privacy_supported=!0)})),t})(e.nativeParams);t[vi]={layouts:[n]}}{const n=y(e,`mediaTypes.${Ai}`),r=y(e,"mediaTypes.video.context");t.hb_source=n&&"adpod"===r?7:1,(e.mediaType===Ai||n)&&t.ad_types.push(Ai),(e.mediaType===Ai||n&&"outstream"!==r)&&(t.require_asset_url=!0),e.params.video&&(t.video={},Object.keys(e.params.video).filter((e=>a(Ka,e))).forEach((n=>{switch(n){case"context":case"playback_method":let r=e.params.video[n];r=Be(r)?r[0]:r,t.video[n]=rd[n][r];break;case"frameworks":break;default:t.video[n]=e.params.video[n]}})),e.params.video.frameworks&&Be(e.params.video.frameworks)&&(t.video_frameworks=e.params.video.frameworks)),n&&(t.video=t.video||{},Object.keys(n).filter((e=>a(Ya,e))).forEach((e=>{switch(e){case"minduration":case"maxduration":"number"!=typeof t.video[e]&&(t.video[e]=n[e]);break;case"skip":"boolean"!=typeof t.video.skippable&&(t.video.skippable=1===n[e]);break;case"skipafter":"number"!=typeof t.video.skipoffset&&(t.video.skippoffset=n[e]);break;case"playbackmethod":if("number"!=typeof t.video.playback_method){let r=n[e];r=Be(r)?r[0]:r,r>=1&&r<=4&&(t.video.playback_method=r)}break;case"api":if(!t.video_frameworks&&Be(n[e])){let r=n[e].map((e=>{let t=4===e?5:5===e?4:e;if(t>=1&&t<=5)return t})).filter((e=>e));t.video_frameworks=r}break;case"startdelay":case"plcmt":case"placement":if("number"!=typeof t.video.context){const e=n.plcmt,r=n.placement,i=n.startdelay,o=((e,t)=>{if(e)if(2===e){if(void 0===t)return;if(0===t)return"accompanying_content_pre_roll";if(-1===t)return"accompanying_content_mid_roll";if(-2===t)return"accompanying_content_post_roll"}else{if(3===e)return"interstitial";if(4===e)return"outstream"}})(e,i)||(e=>{if(e)return 2===e?"in-banner":3===e?"outstream":4===e?"in-feed":5===e?"intersitial":void 0})(r)||(e=>{if(e)return 0===e?"pre_roll":-1===e?"mid_roll":-2===e?"post_roll":void 0})(i);t.video.context=rd.context[o]}}}))),e.renderer&&(t.video=Object.assign({},t.video,{custom_renderer_present:!0}))}return e.params.frameworks&&Be(e.params.frameworks)&&(t.banner_frameworks=e.params.frameworks),y(e,`mediaTypes.${Ii}`)&&t.ad_types.push(Ii),0===t.ad_types.length&&delete t.ad_types,t}function cd(e){let t=[],n={};if(Be(e)&&2===e.length&&!Be(e[0]))n.width=parseInt(e[0],10),n.height=parseInt(e[1],10),t.push(n);else if("object"==typeof e)for(let r=0;r<e.length;r++){let i=e[r];n={},n.width=parseInt(i[0],10),n.height=parseInt(i[1],10),t.push(n)}return t}function ld(e){return!!e.params.user}function ud(e){return!!parseInt(e.params.member,10)}function pd(e){if(e.params)return!!e.params.app}function gd(e){return e.params&&e.params.app?!!e.params.app.id:!!e.params.app}function fd(e){return!!e.debug}function md(e){return e.mediaTypes&&e.mediaTypes.video&&e.mediaTypes.video.context===wi}function hd(e){let t=!1;const n=e.params,r=e.params.video;return n.frameworks&&Be(n.frameworks)&&(t=a(e.params.frameworks,6)),!t&&r&&r.frameworks&&Be(r.frameworks)&&(t=a(e.params.video.frameworks,6)),t}function bd(e,t,n){Ne(e.video)&&(e.video={}),e.video[t]=n}function yd(e,t){(e=>{try{const t=document.getElementById(e).querySelectorAll("div[id^='google_ads']");t[0]&&t[0].style.setProperty("display","none")}catch(e){}})(e.adUnitCode),(e=>{try{const t=document.getElementById(e).querySelectorAll("script[id^='sas_script']");t[0].nextSibling&&"iframe"===t[0].nextSibling.localName&&t[0].nextSibling.style.setProperty("display","none")}catch(e){}})(e.adUnitCode),e.renderer.push((()=>{(t?.defaultView||window).ANOutstreamVideo.renderAd({tagId:e.adResponse.tag_id,sizes:[e.getSize().split("x")],targetId:e.adUnitCode,uuid:e.adResponse.uuid,adResponse:e.adResponse,rendererOptions:e.renderer.getConfig()},vd.bind(null,e))}))}function vd(e,t,n){e.renderer.handleVideoEvent({id:t,eventName:n})}function Ad(e){let t="";return Object.keys(e).forEach((n=>{De(e[n])?""!==e[n]?t+=`${n}=${e[n]},`:t+=`${n},`:Be(e[n])&&(""===e[n][0]?t+=`${n},`:e[n].forEach((e=>{t+=`${n}=${e},`})))})),t=t.substring(0,t.length-1),t}lr(ad),s("appnexusBidAdapter");const Id="pubmatic",wd="PubMatic: ",xd="USD",Cd=void 0,Ed="https://pubmatic.bbvms.com/r/".concat("$RENDERER",".js"),Td="Video.Placement param missing",Sd={kadpageurl:"",gender:"",yob:"",lat:"",lon:"",wiid:"",profId:"",verId:""},_d={NUMBER:"number",STRING:"string",BOOLEAN:"boolean",ARRAY:"array",OBJECT:"object"},kd={mimes:_d.ARRAY,minduration:_d.NUMBER,maxduration:_d.NUMBER,startdelay:_d.NUMBER,playbackmethod:_d.ARRAY,api:_d.ARRAY,protocols:_d.ARRAY,w:_d.NUMBER,h:_d.NUMBER,battr:_d.ARRAY,linearity:_d.NUMBER,placement:_d.NUMBER,plcmt:_d.NUMBER,minbitrate:_d.NUMBER,maxbitrate:_d.NUMBER,skip:_d.NUMBER},Od={ICON:1,IMAGE:3},Rd={1:"PMP",5:"PREF",6:"PMPG"},Dd={bootstrapPlayer:e=>{const t={code:e.adUnitCode};if(e.vastXml?t.vastXml=e.vastXml:e.vastUrl&&(t.vastUrl=e.vastUrl),!e.vastXml&&!e.vastUrl)return void we(`${wd}: No vastXml or vastUrl on bid, bailing...`);const n=Dd.getRendererId("pubmatic",e.rendererCode),r=document.getElementById(e.adUnitCode);let i;for(let e=0;e<window.bluebillywig.renderers.length;e++)if(window.bluebillywig.renderers[e]._id===n){i=window.bluebillywig.renderers[e];break}i?i.bootstrap(t,r):we(`${wd}: Couldn't find a renderer with ${n}`)},newRenderer:(e,t)=>{var n=Ed.replace("$RENDERER",e);const r=nn.install({url:n,loaded:!1,adUnitCode:t});try{r.setRender(Dd.outstreamRender)}catch(e){we(`${wd}: Error tying to setRender on renderer`,e)}return r},outstreamRender:e=>{e.renderer.push((()=>{Dd.bootstrapPlayer(e)}))},getRendererId:(e,t)=>`${e}-${t}`},Bd=[Ii,Ai,vi];let Ud=0,jd=!1,Pd=["pubmatic"];const Nd=["all"];function $d(e,t){if(!De(t))return t&&we(wd+"Ignoring param key: "+e+", expects string-value, found "+typeof t),Cd;switch(e){case"pmzoneid":return t.split(",").slice(0,50).map((e=>e.trim())).join();case"kadfloor":case"lat":case"lon":return parseFloat(t)||Cd;case"yob":return parseInt(t)||Cd;default:return t}}function qd(){let e=window.navigator&&(window.navigator.connection||window.navigator.mozConnection||window.navigator.webkitConnection);switch(e?.effectiveType){case"ethernet":return 1;case"wifi":return 2;case"slow-2g":case"2g":return 4;case"3g":return 5;case"4g":return 6;default:return 0}}function Md(e,t,n){var r,i="Ignoring param key: "+e+", expects "+n+", found "+typeof t;switch(n){case _d.BOOLEAN:r=Pe;break;case _d.NUMBER:r=Ue;break;case _d.STRING:r=De;break;case _d.ARRAY:r=Be}return r(t)?t:(we(wd+i),Cd)}const zd={desc:"desc",desc2:"desc2",body:"desc",body2:"desc2",sponsoredBy:"sponsored",cta:"ctatext",rating:"rating",address:"address",downloads:"downloads",likes:"likes",phone:"phone",price:"price",salePrice:"saleprice",displayUrl:"displayurl",saleprice:"saleprice",displayurl:"displayurl"},Fd=Object.values(zd);function Ld(e){var t;if(e.ortb){e=e.ortb,t={ver:"1.2",...e,assets:[]};const{assets:n}=e,r=e=>e.title||e.img||e.data||e.video;if(n.length<1||!n.some((e=>r(e))))return we(`${wd}: Native assets object is empty or contains some invalid object`),jd=!0,t;n.forEach((e=>{var n=e;n.img&&(n.img.type==Od.IMAGE?(n.w=n.w||n.width||(n.sizes?n.sizes[0]:Cd),n.h=n.h||n.height||(n.sizes?n.sizes[1]:Cd),n.wmin=n.wmin||n.minimumWidth||(n.minsizes?n.minsizes[0]:Cd),n.hmin=n.hmin||n.minimumHeight||(n.minsizes?n.minsizes[1]:Cd)):n.img.type==Od.ICON&&(n.w=n.w||n.width||(n.sizes?n.sizes[0]:Cd),n.h=n.h||n.height||(n.sizes?n.sizes[1]:Cd))),n&&void 0!==n.id&&r(n)&&t.assets.push(n)}))}else t=(e=>{if(!e&&!je(e))return we(`${wd}: Native assets object is empty or not an object: ${e}`),void(jd=!0);const t={ver:"1.2",assets:[]};for(let n in e){if(D.includes(n))continue;if(!E.hasOwnProperty(n)&&!Fd.includes(n)){we(`${wd}: Unrecognized native asset code: ${n}. Asset will be ignored.`);continue}const r=e[n];let i=0;r.required&&Pe(r.required)&&(i=Number(r.required));const o={id:t.assets.length,required:i};if(n in zd)o.data={type:O[zd[n]]},(r.len||r.length)&&(o.data.len=r.len||r.length),r.ext&&(o.data.ext=r.ext);else if("icon"===n||"image"===n){if(o.img={type:"icon"===n?R.ICON:R.MAIN},r.aspect_ratios)if(Be(r.aspect_ratios))if(r.aspect_ratios.length){const{min_width:e,min_height:t}=r.aspect_ratios[0];pt(e)&&pt(t)?(o.img.wmin=e,o.img.hmin=t):we(`${wd}: image.aspect_ratios min_width or min_height are invalid: ${e}, ${t}`);const n=r.aspect_ratios.filter((e=>e.ratio_width&&e.ratio_height)).map((e=>`${e.ratio_width}:${e.ratio_height}`));n.length>0&&(o.img.ext={aspectratios:n})}else we(`${wd}: image.aspect_ratios was passed, but it's empty: ${r.aspect_ratios}`);else we(`${wd}: image.aspect_ratios was passed, but it's not a an array: ${r.aspect_ratios}`);o.img.w=r.w||r.width,o.img.h=r.h||r.height,o.img.wmin=r.wmin||r.minimumWidth||(r.minsizes?r.minsizes[0]:Cd),o.img.hmin=r.hmin||r.minimumHeight||(r.minsizes?r.minsizes[1]:Cd),r.sizes&&(2===r.sizes.length&&pt(r.sizes[0])&&pt(r.sizes[1])?(Ie(`${wd}: if asset.sizes exist, by OpenRTB spec we should remove wmin and hmin`),o.img.w=r.sizes[0],o.img.h=r.sizes[1],delete o.img.hmin,delete o.img.wmin):we(`${wd}: image.sizes was passed, but its value is not an array of integers: ${r.sizes}`)),r.ext&&(o.img.ext=r.ext),r.mimes&&(o.img.mimes=r.mimes)}else"title"===n?(o.title={len:r.len||r.length||140},r.ext&&(o.title.ext=r.ext)):"ext"===n&&(o.ext=r,delete o.required);t.assets.push(o)}return t.assets.length<1?(we(`${wd}: Could not find any valid asset`),void(jd=!0)):t})(e);return t}function Vd(e){var t,n=e.mediaTypes.banner.sizes,r=[];if(n!==Cd&&Be(n)){if(t={},e.params.width||e.params.height)t.w=e.params.width,t.h=e.params.height;else{if(0===n.length)return t=Cd,we(wd+"Error: mediaTypes.banner.size missing for adunit: "+e.params.adUnit+". Ignoring the banner impression in the adunit."),t;t.w=parseInt(n[0][0],10),t.h=parseInt(n[0][1],10),n=n.splice(1,n.length-1)}n.length>0&&(r=[],n.forEach((e=>{e.length>1&&r.push({w:e[0],h:e[1]})})),r.length>0&&(t.format=r)),t.pos=0,t.topframe=nt()?0:1}else we(wd+"Error: mediaTypes.banner.size missing for adunit: "+e.params.adUnit+". Ignoring the banner impression in the adunit."),t=Cd;return t}function Wd(e){var t,n=At(y(e.mediaTypes,"video"),e.params.video);if(n!==Cd){for(var r in t={},((e,t)=>{y(e,"placement")||we(Td+" for "+t)})(n,e.adUnitCode),kd)n.hasOwnProperty(r)&&(t[r]=Md(r,n[r],kd[r]));Be(e.mediaTypes.video.playerSize[0])?(t.w=parseInt(e.mediaTypes.video.playerSize[0][0],10),t.h=parseInt(e.mediaTypes.video.playerSize[0][1],10)):Ue(e.mediaTypes.video.playerSize[0])&&(t.w=parseInt(e.mediaTypes.video.playerSize[0],10),t.h=parseInt(e.mediaTypes.video.playerSize[1],10))}else t=Cd,we(wd+"Error: Video config params missing for adunit: "+e.params.adUnit+" with mediaType set as video. Ignoring video impression in the adunit.");return t}function Gd(e,t){(t=t.filter((e=>"string"==typeof e||(we(wd+"acat: Each category should be a string, ignoring category: "+e),!1))).map((e=>e.trim())).filter(((e,t,n)=>n.indexOf(e)===t))).length>0&&(we(wd+"acat: Selected: ",t),e.ext.acat=t)}function Hd(e){return!0===Be(e)&&e.length>0}const Jd={code:Id,gvlid:76,supportedMediaTypes:[Ii,Ai,vi],isBidRequestValid:e=>{if(e&&e.params){if(!De(e.params.publisherId))return we(wd+"Error: publisherId is mandatory and cannot be numeric (wrap it in quotes in your config). Call to OpenBid will not be sent for ad unit: "+JSON.stringify(e)),!1;if(e.hasOwnProperty("mediaTypes")&&e.mediaTypes.hasOwnProperty(Ai)){let t=y(e.mediaTypes,"video.mimes"),n=y(e,"params.video.mimes");if(!1===Hd(t)&&!1===Hd(n))return we(wd+"Error: For video ads, bid.mediaTypes.video.mimes OR bid.params.video.mimes should be present and must be a non-empty array. Call to OpenBid will not be sent for ad unit:"+JSON.stringify(e)),!1;if(!e.mediaTypes[Ai].hasOwnProperty("context"))return xe(`${wd}: no context specified in bid. Rejecting bid: `,e),!1;if("outstream"===e.mediaTypes[Ai].context&&!De(e.params.outstreamAU)&&!e.hasOwnProperty("renderer")&&!e.mediaTypes[Ai].hasOwnProperty("renderer"))return e.mediaTypes.hasOwnProperty(Ii)||e.mediaTypes.hasOwnProperty(vi)?(delete e.mediaTypes[Ai],we(`${wd}: for "outstream" bids either outstreamAU parameter must be provided or ad unit supplied renderer is required. Rejecting mediatype Video of bid: `,e),!0):(xe(`${wd}: for "outstream" bids either outstreamAU parameter must be provided or ad unit supplied renderer is required. Rejecting bid: `,e),!1)}return!0}return!1},buildRequests:(e,t)=>{var n;t&&t.refererInfo&&(n=t.refererInfo);var r,i=(e=>({pageURL:e?.page||window.location.href,refURL:e?.ref||window.document.referrer}))(n),o=(e=>({id:""+(new Date).getTime(),at:1,cur:[xd],imp:[],site:{page:e.pageURL,ref:e.refURL,publisher:{}},device:{ua:navigator.userAgent,js:1,dnt:"yes"==navigator.doNotTrack||"1"==navigator.doNotTrack||"1"==navigator.msDoNotTrack?1:0,h:screen.height,w:screen.width,language:navigator.language,connectiontype:qd()},user:{},ext:{}}))(i),s="",a=[],d=[],c=[],l=ue();if(e.forEach((e=>{if(e.params.wiid=e.params.wiid||t.auctionId||l,(r=tt(e)).params.adSlot=r.params.adSlot||"",function(e){var t;e.params.adUnit="",e.params.adUnitIndex="0",e.params.width=0,e.params.height=0,e.params.adSlot=De(t=e.params.adSlot)?t.replace(/^\s+/g,"").replace(/\s+$/g,""):(t&&we(Id+": adSlot must be a string. Ignoring adSlot"),"");var n=e.params.adSlot,r=n.split(":");if(n=r[0],2==r.length&&(e.params.adUnitIndex=r[1]),r=n.split("@"),e.params.adUnit=r[0],r.length>1){if(2!=(r=r[1].split("x")).length)return void we(wd+"AdSlot Error: adSlot not in required format");e.params.width=parseInt(r[0],10),e.params.height=parseInt(r[1],10)}else if(e.hasOwnProperty("mediaTypes")&&e.mediaTypes.hasOwnProperty(Ii)&&e.mediaTypes.banner.hasOwnProperty("sizes")){for(var i=0,o=[];i<e.mediaTypes.banner.sizes.length;i++)2===e.mediaTypes.banner.sizes[i].length&&o.push(e.mediaTypes.banner.sizes[i]);e.mediaTypes.banner.sizes=o,e.mediaTypes.banner.sizes.length>=1&&(e.params.width=e.mediaTypes.banner.sizes[0][0],e.params.height=e.mediaTypes.banner.sizes[0][1],e.mediaTypes.banner.sizes=e.mediaTypes.banner.sizes.splice(1,e.mediaTypes.banner.sizes.length-1))}}(r),r.mediaTypes&&r.mediaTypes.hasOwnProperty("video")||r.params.hasOwnProperty("video"));else if(!(r.hasOwnProperty("mediaTypes")&&r.mediaTypes.hasOwnProperty(vi)||0!==r.params.width||0!==r.params.height))return void we(wd+"Skipping the non-standard adslot: ",r.params.adSlot,JSON.stringify(r));i.pubId=i.pubId||r.params.publisherId,(i=((e,t)=>{var n,r,i;for(n in t.kadpageurl||(t.kadpageurl=t.pageURL),Sd)Sd.hasOwnProperty(n)&&(r=e[n])&&("object"==typeof(i=Sd[n])&&(r=i.f(r,t)),De(r)?t[n]=r:we(wd+"Ignoring param : "+n+" with value : "+Sd[n]+", expects string-value, found "+typeof r));return t})(r.params,i)).transactionId=r.ortb2Imp?.ext?.tid,""===s?s=r.params.currency||Cd:r.params.hasOwnProperty("currency")&&s!==r.params.currency&&we(wd+"Currency specifier ignored. Only one currency permitted."),r.params.currency=s,r.params.hasOwnProperty("dctr")&&De(r.params.dctr)&&a.push(r.params.dctr),r.params.hasOwnProperty("bcat")&&Be(r.params.bcat)&&(d=d.concat(r.params.bcat)),r.params.hasOwnProperty("acat")&&Be(r.params.acat)&&(c=c.concat(r.params.acat));var n=function(e,t){var n,r,i={},o={},s=e.hasOwnProperty("sizes")?e.sizes:[],a="",d=[],c=t?.fledgeEnabled;if(((e,t)=>{t.params.deals&&(Be(t.params.deals)?t.params.deals.forEach((t=>{De(t)&&t.length>3?(e.pmp||(e.pmp={private_auction:0,deals:[]}),e.pmp.deals.push({id:t})):we(wd+"Error: deal-id present in array bid.params.deals should be a strings with more than 3 charaters length, deal-id ignored: "+t)})):we(wd+"Error: bid.params.deals should be an array of strings."))})(i={id:e.bidId,tagid:e.params.adUnit||void 0,bidfloor:$d("kadfloor",e.params.kadfloor),secure:1,ext:{pmZoneId:$d("pmzoneid",e.params.pmzoneid)},bidfloorcur:e.params.currency?$d("currency",e.params.currency):xd},e),((e,t)=>{var n,r="";if(t.params.dctr)if(De(r=t.params.dctr)&&r.length>0){var i=r.split("|");r="",i.forEach((e=>{r+=e.length>0?e.trim()+"|":""})),n=r.length,"|"===r.substring(n,n-1)&&(r=r.substring(0,n-1)),e.ext.key_val=r.trim()}else we(wd+"Ignoring param : dctr with value : "+r+", expects string-value, found empty or non-string value")})(i,e),((e,t)=>{var n=t.rtd&&t.rtd.jwplayer&&t.rtd.jwplayer.targeting||void 0,r="";if(void 0!==n&&""!==n&&n.hasOwnProperty("segments")){var i,o=n.segments.length;r+="jw-id="+n.content.id;for(var s=0;s<o;s++)r+="|jw-"+n.segments[s]+"=1";(i=e.ext)&&void 0===i.key_val?i.key_val=r:i.key_val+="|"+r}})(i,e),e.hasOwnProperty("mediaTypes"))for(a in e.mediaTypes)switch(a){case Ii:(n=Vd(e))!==Cd&&(i.banner=n);break;case vi:o.request=JSON.stringify(Ld(e.nativeParams)),jd?(we(wd+"Error: Error in Native adunit "+e.params.adUnit+". Ignoring the adunit. Refer to http://prebid.org/dev-docs/show-native-ads.html for more details."),jd=!1):i.native=o;break;case Ai:(r=Wd(e))!==Cd&&(i.video=r)}else n={pos:0,w:e.params.width,h:e.params.height,topframe:nt()?0:1},Be(s)&&s.length>1&&((s=s.splice(1,s.length-1)).forEach((e=>{d.push({w:e[0],h:e[1]})})),n.format=d),i.banner=n;return((e,t)=>{const n={...y(t,"ortb2Imp.ext.data")};Object.keys(n).forEach((t=>{"pbadslot"===t?"string"==typeof n[t]&&n[t]&&xt(e,"ext.data.pbadslot",n[t]):"adserver"===t?["name","adslot"].forEach((t=>{const r=y(n,`adserver.${t}`);"string"==typeof r&&r&&(xt(e,`ext.data.adserver.${t.toLowerCase()}`,r),"adslot"===t&&xt(e,"ext.dfp_ad_unit_code",r))})):xt(e,`ext.data.${t}`,n[t])}));const r=y(t,"ortb2Imp.ext.gpid");r&&xt(e,"ext.gpid",r)})(i,e),((e,t)=>{let n=-1;"function"!=typeof t.getFloor||q.getConfig("pubmatic.disableFloors")||[Ii,Ai,vi].forEach((r=>{if(e.hasOwnProperty(r)){let i=[];"banner"===r&&(e[r].w&&e[r].h&&i.push([e[r].w,e[r].h]),Be(e[r].format)&&e[r].format.forEach((e=>i.push([e.w,e.h])))),0===i.length&&i.push("*"),i.forEach((i=>{let o=t.getFloor({currency:e.bidfloorcur,mediaType:r,size:i});if(Ie(wd,"floor from floor module returned for mediatype:",r," and size:",i," is: currency",o.currency,"floor",o.floor),"object"==typeof o&&o.currency===e.bidfloorcur&&!isNaN(parseInt(o.floor))){let e=parseFloat(o.floor);Ie(wd,"floor from floor module:",e,"previous floor value",n,"Min:",Math.min(e,n)),n=-1===n?e:Math.min(e,n),Ie(wd,"new floor value:",n)}}))}})),e.bidfloor&&(Ie(wd,"floor from floor module:",n,"impObj.bidfloor",e.bidfloor,"Max:",Math.max(n,e.bidfloor)),n=Math.max(n,e.bidfloor)),e.bidfloor=!isNaN(n)&&n>0?n:Cd,Ie(wd,"new impObj.bidfloor value:",e.bidfloor)})(i,e),((e,t,n)=>{n?(e.ext=e.ext||{},void 0!==t?.ortb2Imp?.ext?.ae&&(e.ext.ae=t.ortb2Imp.ext.ae)):e.ext?.ae&&delete e.ext.ae})(i,e,c),i.hasOwnProperty(Ii)||i.hasOwnProperty(vi)||i.hasOwnProperty(Ai)?i:Cd}(r,t);n&&o.imp.push(n)})),0==o.imp.length)return;o.site.publisher.id=i.pubId.trim(),Ud=i.pubId.trim(),o.ext.wrapper={},o.ext.wrapper.profile=parseInt(i.profId)||Cd,o.ext.wrapper.version=parseInt(i.verId)||Cd,o.ext.wrapper.wiid=i.wiid||t.auctionId,o.ext.wrapper.wv="prebid_prebid_8.47.0",o.ext.wrapper.transactionId=i.transactionId,o.ext.wrapper.wp="pbjs";const u=t?rn.get(t.bidderCode,"allowAlternateBidderCodes"):void 0;if(void 0!==u){if(o.ext.marketplace={},t&&1==u){let e=rn.get(t.bidderCode,"allowedAlternateBidderCodes");Be(e)?(e=e.map((e=>e.trim().toLowerCase())).filter((e=>!!e)).filter(Je),Pd=e.includes("*")?Nd:[...Pd,...e]):Pd=Nd}o.ext.marketplace.allowedbidders=Pd.filter(Je)}o.user.gender=i.gender?i.gender.trim():Cd,o.user.geo={},o.user.yob=$d("yob",i.yob),o.site.page=i.kadpageurl.trim()||o.site.page.trim(),o.site.domain=(e=>{let t=document.createElement("a");return t.href=e,t.hostname})(o.site.page),"object"==typeof q.getConfig("content")&&(o.site.content=q.getConfig("content")),"object"==typeof q.getConfig("device")&&(o.device=Object.assign(o.device,q.getConfig("device"))),o.device.language=o.device.language&&o.device.language.split("-")[0],xt(o,"source.tid",t?.ortb2?.source?.tid),-1!==window.location.href.indexOf("pubmaticTest=true")&&(o.test=1),e[0].schain&&xt(o,"source.ext.schain",e[0].schain),t&&t.gdprConsent&&(xt(o,"user.ext.consent",t.gdprConsent.consentString),xt(o,"regs.ext.gdpr",t.gdprConsent.gdprApplies?1:0)),t&&t.uspConsent&&xt(o,"regs.ext.us_privacy",t.uspConsent),t?.gppConsent?.gppString?(xt(o,"regs.gpp",t.gppConsent.gppString),xt(o,"regs.gpp_sid",t.gppConsent.applicableSections)):t?.ortb2?.regs?.gpp&&(xt(o,"regs.gpp",t.ortb2.regs.gpp),xt(o,"regs.gpp_sid",t.ortb2.regs.gpp_sid)),!0===q.getConfig("coppa")&&xt(o,"regs.coppa",1),t?.ortb2?.regs?.ext?.dsa&&xt(o,"regs.ext.dsa",t.ortb2.regs.ext.dsa),((e,t)=>{let n=y(t,"0.userIdAsEids");Be(n)&&n.length>0&&xt(e,"user.eids",n)})(o,e);const p=t&&t.ortb2||{},{user:g,device:f,site:m,bcat:h,badv:b}=p;if(m){const{page:e,domain:t,ref:n}=o.site;At(o,{site:m}),o.site.page=e,o.site.domain=t,o.site.ref=n}if(g&&At(o,{user:g}),b&&At(o,{badv:b}),h&&(d=d.concat(h)),f?.sua&&(o.device.sua=f?.sua),f?.ext?.cdep&&xt(o,"device.ext.cdep",f.ext.cdep),g?.geo&&f?.geo?(o.device.geo={...o.device.geo,...f.geo},o.user.geo={...o.user.geo,...g.geo}):(g?.geo||f?.geo)&&(o.user.geo=o.device.geo=g?.geo?{...o.user.geo,...g.geo}:{...o.user.geo,...f.geo}),p.ext?.prebid?.bidderparams?.[t.bidderCode]?.acat){const e=p.ext.prebid.bidderparams[t.bidderCode].acat;Gd(o,e)}else c.length&&Gd(o,c);return((e,t)=>{(t=t.filter((e=>"string"==typeof e||(we(wd+"bcat: Each category should be a string, ignoring category: "+e),!1))).map((e=>e.trim())).filter(((e,t,n)=>{if(e.length>3)return n.indexOf(e)===t;we(wd+"bcat: Each category should have a value of a length of more than 3 characters, ignoring category: "+e)}))).length>0&&(we(wd+"bcat: Selected: ",t),e.bcat=t)})(o,d),o.tmax=t?.timeout?t.timeout:window?.PWT?.versionDetails?.timeout,o.ext.epoch=(new Date).getTime(),"object"==typeof q.getConfig("app")&&(o.app=q.getConfig("app"),o.app.publisher=o.site.publisher,o.app.ext=o.site.ext||Cd,"object"!=typeof o.app.content&&(o.app.content=o.site.content||Cd),delete o.site),{method:"POST",url:"https://hbopenbid.pubmatic.com/translator?source=prebid-client",data:JSON.stringify(o),bidderRequest:t}},interpretResponse:(e,t)=>{const n=[];var r=xd;let i=JSON.parse(t.data),o=i.site&&i.site.ref?i.site.ref:"";try{e.body&&e.body.seatbid&&Be(e.body.seatbid)&&(r=e.body.cur||r,e.body.seatbid.forEach((e=>{e.bid&&Be(e.bid)&&e.bid.forEach((s=>{let a={requestId:s.impid,cpm:parseFloat((s.price||0).toFixed(2)),width:s.w,height:s.h,creativeId:s.crid||s.id,dealId:s.dealid,currency:r,netRevenue:!0,ttl:300,referrer:o,ad:s.adm,pm_seat:e.seat||null,pm_dspid:s.ext&&s.ext.dspid?s.ext.dspid:null,partnerImpId:s.id||""};i.imp&&i.imp.length>0&&i.imp.forEach((e=>{if(s.impid===e.id)switch(((e,t)=>{if(e.ext&&null!=e.ext.bidtype)t.mediaType=Bd[e.ext.bidtype];else{Ie(wd+"bid.ext.bidtype does not exist, checking alternatively for mediaType");var n=e.adm,r="",i=new RegExp(/VAST\s+version/);if(n.indexOf('span class="PubAPIAd"')>=0)t.mediaType=Ii;else if(i.test(n))t.mediaType=Ai;else try{(r=JSON.parse(n.replace(/\\/g,"")))&&r.native&&(t.mediaType=vi)}catch(e){we(wd+"Error: Cannot parse native reponse for ad response: "+n)}}})(s,a),a.mediaType){case Ii:break;case Ai:a.width=s.hasOwnProperty("w")?s.w:e.video.w,a.height=s.hasOwnProperty("h")?s.h:e.video.h,a.vastXml=s.adm,((e,t)=>{let n,r,i;if(t.bidderRequest&&t.bidderRequest.bids){for(let o=0;o<t.bidderRequest.bids.length;o++)t.bidderRequest.bids[o].bidId===e.requestId&&(n=t.bidderRequest.bids[o].params,r=t.bidderRequest.bids[o].mediaTypes[Ai].context,i=t.bidderRequest.bids[o].adUnitCode);r&&"outstream"===r&&n&&n.outstreamAU&&i&&(e.rendererCode=n.outstreamAU,e.renderer=Dd.newRenderer(e.rendererCode,i))}})(a,t),((e,t,n)=>{if(!t?.ext?.prebiddealpriority)return;const r=y(Qe(e.requestId,[n.bidderRequest]),"mediaTypes.video");if(r?.context!=wi)return;const i=t?.ext?.video?.duration||r?.maxduration;e.video={context:wi,durationSeconds:i,dealTier:t.ext.prebiddealpriority}})(a,s,t);break;case vi:((e,t)=>{if(e.hasOwnProperty("adm")){var n="";try{n=JSON.parse(e.adm.replace(/\\/g,""))}catch(e){return void we(wd+"Error: Cannot parse native reponse for ad response: "+t.adm)}t.native={ortb:{...n.native}},t.mediaType=vi,t.width||(t.width=0),t.height||(t.height=0)}})(s,a)}})),s.ext&&s.ext.deal_channel&&(a.dealChannel=Rd[s.ext.deal_channel]||null),((e,t,n)=>{e.meta={},t.ext&&t.ext.dspid&&(e.meta.networkId=t.ext.dspid,e.meta.demandSource=t.ext.dspid),t.ext&&t.ext.dchain&&(e.meta.dchain=t.ext.dchain);const r=n||t.ext&&t.ext.advid;r&&(e.meta.advertiserId=r,e.meta.agencyId=r,e.meta.buyerId=r),t.adomain&&Hd(t.adomain)&&(e.meta.advertiserDomains=t.adomain,e.meta.clickUrl=t.adomain[0],e.meta.brandId=t.adomain[0]),t.cat&&Hd(t.cat)&&(e.meta.secondaryCatIds=t.cat,e.meta.primaryCatId=t.cat[0]),t.ext&&t.ext.dsa&&Object.keys(t.ext.dsa).length&&(e.meta.dsa=t.ext.dsa)})(a,s,e.seat),e.ext&&e.ext.buyid&&(a.adserverTargeting={hb_buyid_pubmatic:e.ext.buyid}),s.ext&&s.ext.marketplace&&(a.bidderCode=s.ext.marketplace),n.push(a)}))})));let s=y(e.body,"ext.fledge_auction_configs");if(s)return s=Object.entries(s).map((e=>{let[t,n]=e;return{bidId:t,config:Object.assign({auctionSignals:{}},n)}})),{bids:n,fledgeAuctionConfigs:s}}catch(e){xe(e)}return n},getUserSyncs:(e,t,n,r,i)=>{let o=""+Ud;return n&&(o+="&gdpr="+(n.gdprApplies?1:0),o+="&gdpr_consent="+encodeURIComponent(n.consentString||"")),r&&(o+="&us_privacy="+encodeURIComponent(r)),i?.gppString&&i?.applicableSections?.length&&(o+="&gpp="+encodeURIComponent(i.gppString),o+="&gpp_sid="+encodeURIComponent(i?.applicableSections?.join(","))),!0===q.getConfig("coppa")&&(o+="&coppa=1"),e.iframeEnabled?[{type:"iframe",url:"https://ads.pubmatic.com/AdServer/js/user_sync.html?kdntuid=1&p="+o}]:[{type:"image",url:"https://image8.pubmatic.com/AdServer/ImgSync?p="+o}]}};lr(Jd),s("pubmaticBidAdapter");const Xd={mimes:e=>Array.isArray(e)&&e.length>0&&e.every((e=>"string"==typeof e)),minduration:e=>pt(e),maxduration:e=>pt(e),protocols:e=>Array.isArray(e)&&e.every((e=>e>=1&&e<=10)),w:e=>pt(e),h:e=>pt(e),startdelay:e=>pt(e),placement:e=>pt(e)&&e>=1&&e<=5,linearity:e=>-1!==[1,2].indexOf(e),skip:e=>-1!==[0,1].indexOf(e),skipmin:e=>pt(e),skipafter:e=>pt(e),sequence:e=>pt(e),battr:e=>Array.isArray(e)&&e.every((e=>e>=1&&e<=17)),maxextended:e=>pt(e),minbitrate:e=>pt(e),maxbitrate:e=>pt(e),boxingallowed:e=>-1!==[0,1].indexOf(e),playbackmethod:e=>Array.isArray(e)&&e.every((e=>e>=1&&e<=6)),playbackend:e=>-1!==[1,2,3].indexOf(e),delivery:e=>Array.isArray(e)&&e.every((e=>e>=1&&e<=3)),pos:e=>pt(e)&&e>=1&&e<=7,api:e=>Array.isArray(e)&&e.every((e=>e>=1&&e<=6))},Qd={context:e=>e!==wi,mimes:Xd.mimes,maxduration:Xd.maxduration,protocols:Xd.protocols},Kd={code:"sovrn",supportedMediaTypes:[Ii,Ai],gvlid:13,isBidRequestValid:e=>{const t=e?.mediaTypes?.video;return!(!e.params.tagid||isNaN(parseFloat(e.params.tagid))||!isFinite(e.params.tagid)||t&&!Object.keys(Qd).every((e=>Qd[e](t[e]))))},buildRequests:(e,t)=>{try{let n,r,i,o,s=[];qe(e,(e=>{!i&&e.userIdAsEids&&(i=e.userIdAsEids,i.forEach((e=>{e.uids&&e.uids[0]&&"criteo.com"===e.source&&(o=e.uids[0].id)}))),e.schain&&(r=r||e.schain),n=n||pe("iv",e.params);const a={adunitcode:e.adUnitCode,id:e.bidId,tagid:String(pe("tagid",e.params)),bidfloor:Yd(e)};if(y(e,"mediaTypes.banner")){let t=y(e,"mediaTypes.banner.sizes")||e.sizes;t=Be(t)&&Be(t[0])?t:[t],t=t.filter((e=>Be(e)));const n=t.map((e=>({w:parseInt(e[0],10),h:parseInt(e[1],10)})));a.banner={format:n,w:1,h:1}}y(e,"mediaTypes.video")&&(a.video=(e=>{const t={},n=y(e,"sizes"),r=y(e,"mediaTypes.video",{}),i=y(e,"params.video",{}),o={};if(n){const e=Array.isArray(n[0])?n[0]:n;o.w=e[0],o.h=e[1]}else if(Array.isArray(r.playerSize)){const e=Array.isArray(r.playerSize[0])?r.playerSize[0]:r.playerSize;o.w=e[0],o.h=e[1]}const s={...o,...r,...i};return Object.keys(Xd).forEach((e=>{s.hasOwnProperty(e)&&(Xd[e](s[e])?t[e]=s[e]:we(`The OpenRTB video param ${e} has been skipped due to misformating. Please refer to OpenRTB 2.5 spec.`))})),t})(e)),a.ext=pe("ext",e.ortb2Imp)||void 0;const d=pe("segments",e.params);d&&(a.ext=a.ext||{},a.ext.deals=d.split(",").map((e=>e.trim())));const c=e?.ortb2Imp?.ext?.ae;t.fledgeEnabled&&pt(c)?(a.ext=a.ext||{},a.ext.ae=c):a.ext?.ae&&delete a.ext.ae,s.push(a)}));const a=t.ortb2||{},d=a.site||{};d.page=t.refererInfo.page,d.domain=t.refererInfo.domain;const c=y(t,"timeout"),l={id:le(),imp:s,site:d,user:a.user||{},tmax:c};r&&(l.source={ext:{schain:r}});const u=y(t,"ortb2.source.tid");u&&xt(l,"source.tid",u),y(t,"ortb2.regs.coppa")&&xt(l,"regs.coppa",1),t.gdprConsent&&(xt(l,"regs.ext.gdpr",+t.gdprConsent.gdprApplies),xt(l,"user.ext.consent",t.gdprConsent.consentString)),t.uspConsent&&xt(l,"regs.ext.us_privacy",t.uspConsent),t.gppConsent&&(xt(l,"regs.gpp",t.gppConsent.gppString),xt(l,"regs.gpp_sid",t.gppConsent.applicableSections)),i&&(xt(l,"user.ext.eids",i),o&&xt(l,"user.ext.prebid_criteoid",o));let p="https://ap.lijit.com/rtb/bid?src=prebid_prebid_8.47.0";return n&&(p+=`&iv=${n}`),{method:"POST",url:p,data:JSON.stringify(l),options:{contentType:"text/plain"}}}catch(e){xe("Could not build bidrequest, error deatils:",e)}},interpretResponse:e=>{let{body:{id:t,seatbid:n,ext:r}}=e;if(!t||!n||!Array.isArray(n))return[];try{let e=n.filter((e=>e)).map((e=>e.bid.map((e=>{const t={requestId:e.impid,cpm:parseFloat(e.price),width:parseInt(e.w),height:parseInt(e.h),creativeId:e.crid||e.id,dealId:e.dealid||null,currency:"USD",netRevenue:!0,mediaType:e.nurl?Ii:Ai,ttl:e.ext?.ttl||90,meta:{advertiserDomains:e&&e.adomain?e.adomain:[]}};return e.nurl?t.ad=decodeURIComponent(`${e.adm}<img src="${e.nurl}">`):t.vastXml=decodeURIComponent(e.adm),t})))).flat(),t=y(r,"fledge_auction_configs");return t?(t=Object.entries(t).map((e=>{let[t,n]=e;return{bidId:t,config:Object.assign({auctionSignals:{}},n)}})),{bids:e,fledgeAuctionConfigs:t}):e}catch(e){return xe("Could not interpret bidresponse, error details:",e),e}},getUserSyncs:(e,t,n,r,i)=>{try{const o=[];if(t&&0!==t.length){if(e.iframeEnabled){const e=t.filter((e=>y(e,"body.ext.iid"))).map((e=>e.body.ext.iid)),s=[];n&&n.gdprApplies&&"string"==typeof n.consentString&&s.push(["gdpr_consent",n.consentString]),r&&s.push(["us_privacy",r]),i&&(s.push(["gpp",i.gppString]),s.push(["gpp_sid",i.applicableSections])),e[0]&&(s.push(["informer",e[0]]),o.push({type:"iframe",url:"https://ce.lijit.com/beacon?"+s.map((e=>e.join("="))).join("&")}))}e.pixelEnabled&&t.filter((e=>y(e,"body.ext.sync.pixels"))).reduce(((e,t)=>e.concat(t.body.ext.sync.pixels)),[]).map((e=>e.url)).forEach((e=>o.push({type:"image",url:e})))}return o}catch(e){return[]}}};function Yd(e){const t=e.getFloor&&"function"==typeof e.getFloor?e.getFloor({currency:"USD",mediaType:e.mediaTypes&&e.mediaTypes.banner?"banner":"video",size:"*"}):{},n=parseFloat(t.floor);if(!isNaN(n))return n;const r=parseFloat(pe("bidfloor",e.params));return isNaN(r)?void 0:r}lr(Kd),s("sovrnBidAdapter");const Zd="conversant",ec=mi({gvlid:24,bidderCode:Zd});const tc=va({context:{netRevenue:!0,ttl:300},request:(e,t,n,r)=>{const i=e(t,n,r);if(i.at=1,r.bidRequests){const e=r.bidRequests[0];((e,t)=>{e.params.site_id&&(t.site&&(t.site.id=e.params.site_id),t.app&&(t.app.id=e.params.site_id))})(e,i),function(e,t){const n=(e=>{let t=null;return e.userId&&e.userId.pubcid?t=e.userId.pubcid:e.crumbs&&e.crumbs.pubcid&&(t=e.crumbs.pubcid),t||(t=(e=>{let t;try{if(t=ec.getCookie(e),!t){const n=ec.getDataFromLocalStorage(`${e}_exp`);(""===n||n&&new Date(n).getTime()-Date.now()>0)&&(t=ec.getDataFromLocalStorage(e),t=t?decodeURIComponent(t):t)}De(t)&&"{"===t.charAt(0)&&(t=JSON.parse(t))}catch(e){xe(e)}return t})(pe("pubcid_name",e.params)||"_pubcid")),t})(e);n&&xt(t,"user.ext.fpc",n)}(e,i)}return i},imp(e,t,n){const r=e(t,n),i={secure:1,bidfloor:ic(t)||0,displaymanager:"Prebid.js",displaymanagerver:"8.47.0"};return rc(t.params.tag_id,i,"tagid"),At(r,i,r),r},bidResponse:(e,t,n)=>{if(t.price){if(!n.mediaType&&n.bidRequest.mediaTypes){const[e]=Object.keys(n.bidRequest.mediaTypes);Object.values(sa).includes(e)&&(n.mediaType=e)}return e(t,n)}},response:(e,t,n,r)=>e(t,n,r).bids,overrides:{imp:{banner(e,t,n,r){n.mediaTypes&&!n.mediaTypes.banner||(n.params.position&&At(n,{mediaTypes:{banner:{pos:n.params.position}}}),e(t,n,r))},video(e,t,n,r){if(n.mediaTypes&&!n.mediaTypes.video)return;const i={};rc(n.params?.position,i,"pos"),rc(n.params?.mimes,i,"mimes"),rc(n.params?.maxduration,i,"maxduration"),rc(n.params?.protocols,i,"protocols"),rc(n.params?.api,i,"api"),t.video=At(i,t.video),e(t,n,r)}}}}),nc={code:Zd,gvlid:24,aliases:["cnvr","epsilon"],supportedMediaTypes:[Ii,Ai],isBidRequestValid:e=>{if(!e||!e.params)return we(Zd+": Missing bid parameters"),!1;if(!De(e.params.site_id))return we(Zd+": site_id must be specified as a string"),!1;if((e=>"video"===e.mediaType||!!y(e,"mediaTypes.video"))(e)){const t=e.params.mimes||y(e,"mediaTypes.video.mimes");if(t){if(!Be(t)||!t.every((e=>De(e))))return we(Zd+": mimes must be an array of strings"),!1}else we(Zd+": mimes should be specified for videos")}return!0},buildRequests:(e,t)=>{const n=tc.toORTB({bidderRequest:t,bidRequests:e});return{method:"POST",url:oc(e[0]),data:n}},interpretResponse:(e,t)=>tc.fromORTB({request:t.data,response:e.body}),transformBidParams:(e,t)=>Ja({site_id:"string",secure:"number",mobile:"number"},e),getUserSyncs:(e,t,n,r)=>{let i={};const o=[];if(n&&(i.gdpr=n.gdprApplies?1:0,i.gdpr_consent=encodeURIComponent(n.consentString||"")),r&&(i.us_privacy=encodeURIComponent(r)),t&&t.ext){const n=[{urls:t.ext.fsyncs,type:"iframe"},{urls:t.ext.psyncs,type:"image"}].filter((t=>t.urls&&("iframe"===t.type&&e.iframeEnabled||"image"===t.type&&e.pixelEnabled))).map((e=>e.urls.map((t=>{let n=bt(t);return At(n.search,i),0===Object.keys(n.search).length&&delete n.search,{type:e.type,url:yt(n)}})).reduce(((e,t)=>e.concat(t)),[]))).reduce(((e,t)=>e.concat(t)),[]);o.push(...n)}return o}};function rc(e,t,n){e&&(t[n]=e)}function ic(e){let t=pe("bidfloor",e.params);if(!t&&Re(e.getFloor)){const n=e.getFloor({currency:"USD",mediaType:"*",size:"*"});je(n)&&!isNaN(n.floor)&&"USD"===n.currency&&(t=n.floor)}return t}function oc(e){let t="https://web.hb.ad.cpe.dotomi.com/cvx/client/hb/ortb/25";return e.params.white_label_url&&(t=e.params.white_label_url),t}lr(nc),s("conversantBidAdapter");const sc="https://onetag-sys.com/usync/",ac="onetag",dc=mi({bidderCode:ac});function cc(e){return void 0!==e.mediaTypes&&void 0!==e.mediaTypes.video}function lc(e,t){if(e===Ii)return bc(t).length>0;if(e===Ai&&cc(t)){const e=t.mediaTypes.video.context;if("outstream"===e||"instream"===e)return hc(t).length>0}return!1}function uc(e){try{return void 0!==e.document.hidden?e.document.hidden:void 0!==e.document.msHidden?e.document.msHidden:void 0!==e.document.webkitHidden?e.document.webkitHidden:null}catch(e){return null}}function pc(e){const t=(()=>{let e=window,t=window.parent;try{for(;e!==e.parent;)t=e.parent,t.location.href,e=e.parent}catch(e){}return e})();return{location:y(e,"refererInfo.page",null),referrer:y(e,"refererInfo.ref",null),stack:y(e,"refererInfo.stack",[]),numIframes:y(e,"refererInfo.numIframes",0),wWidth:t.innerWidth,wHeight:t.innerHeight,oWidth:t.outerWidth,oHeight:t.outerHeight,sWidth:t.screen.width,sHeight:t.screen.height,aWidth:t.screen.availWidth,aHeight:t.screen.availHeight,sLeft:"screenLeft"in t?t.screenLeft:t.screenX,sTop:"screenTop"in t?t.screenTop:t.screenY,xOffset:t.pageXOffset,yOffset:t.pageYOffset,docHidden:uc(t),docHeight:t.document.body?t.document.body.scrollHeight:null,hLength:history.length,timing:mc(),version:{prebid:"8.47.0",adapter:"1.1.1"}}}function gc(e){const t=e.filter((e=>cc(e))).map((e=>{const t={};return fc.call(t,e),t.context=e.mediaTypes.video.context,t.playerSize=hc(e),t.mediaTypeInfo=tt(e.mediaTypes.video),t.type=Ai,t.priceFloors=vc(e,Ai,t.playerSize),t})),n=e.filter((e=>lc(Ii,e))).map((e=>{const t={};return fc.call(t,e),t.sizes=bc(e),t.type=Ii,t.mediaTypeInfo=tt(e.mediaTypes.banner),t.priceFloors=vc(e,Ii,t.sizes),t}));return t.concat(n)}function fc(e){const t=e.params;this.adUnitCode=e.adUnitCode,this.bidId=e.bidId,this.bidderRequestId=e.bidderRequestId,this.auctionId=y(e,"ortb2.source.tid"),this.transactionId=y(e,"ortb2Imp.ext.tid"),this.gpid=y(e,"ortb2Imp.ext.gpid")||y(e,"ortb2Imp.ext.data.pbadslot"),this.pubId=t.pubId,this.ext=t.ext,t.pubClick&&(this.click=t.pubClick),t.dealId&&(this.dealId=t.dealId);const n=(e=>{const t=document.getElementById(e);try{const{top:e,left:n,width:r,height:i}=t.getBoundingClientRect();let o=t.ownerDocument.defaultView;const s={top:e+o.pageYOffset,left:n+o.pageXOffset,width:r,height:i};let a=o.frameElement;for(;null!=a;){const{top:e,left:t}=a.getBoundingClientRect();s.top+=e+o.pageYOffset,s.left+=t+o.pageXOffset,o=o.parent,a=o.frameElement}return s}catch(e){return null}})(e.adUnitCode);n&&(this.coords=n)}function mc(){try{if(null!=window.performance&&null!=window.performance.timing){const e={},t=window.performance.timing;return e.pageLoadTime=t.loadEventEnd-t.navigationStart,e.connectTime=t.responseEnd-t.requestStart,e.renderTime=t.domComplete-t.domLoading,e}}catch(e){return null}return null}function hc(e){const t=e.mediaTypes.video.playerSize;return void 0!==t&&Array.isArray(t)&&t.length>0?yc(t):[]}function bc(e){return void 0!==e.mediaTypes&&void 0!==e.mediaTypes.banner&&void 0!==e.mediaTypes.banner.sizes&&Array.isArray(e.mediaTypes.banner.sizes)&&e.mediaTypes.banner.sizes.length>0?yc(e.mediaTypes.banner.sizes):!cc(e)&&e.sizes&&Array.isArray(e.sizes)?yc(e.sizes):[]}function yc(e){const t=[];for(let n=0;n<e.length;n++){const r=e[n];t.push({width:r[0],height:r[1]})}return t}function vc(e,t,n){const r=[];return"function"==typeof e.getFloor&&n.forEach((n=>{const i=e.getFloor({currency:"EUR",mediaType:t||"*",size:[n.width,n.height]});i.size=tt(n),i.floor||(i.floor=null),r.push(i)})),r}const Ac={code:ac,gvlid:241,supportedMediaTypes:[Ii,Ai],isBidRequestValid:e=>void 0!==e&&void 0!==e.params&&"string"==typeof e.params.pubId&&(lc(Ii,e)||lc(Ai,e)),buildRequests:(e,t)=>{const n={bids:gc(e),...pc(t)};t&&t.gdprConsent&&(n.gdprConsent={consentString:t.gdprConsent.consentString,consentRequired:t.gdprConsent.gdprApplies,addtlConsent:t.gdprConsent.addtlConsent}),t&&t.gppConsent&&(n.gppConsent={consentString:t.gppConsent.gppString,applicableSections:t.gppConsent.applicableSections}),t&&t.uspConsent&&(n.usPrivacy=t.uspConsent),t&&t.ortb2&&(n.ortb2=t.ortb2),e&&0!==e.length&&e[0].userIdAsEids&&(n.userId=e[0].userIdAsEids),e&&0!==e.length&&e[0].schain&&(e=>{let t=!1;const n=["asi","sid","hp"];return e&&e.nodes?(t=e.nodes.reduce(((e,t)=>e?n.every((e=>t.hasOwnProperty(e))):e),!0),t||xe("OneTag: required schain params missing"),t):t})(e[0].schain)&&(n.schain=e[0].schain);try{dc.hasLocalStorage()&&(n.onetagSid=dc.getDataFromLocalStorage("onetag_sid"))}catch(e){}const r=navigator.connection||navigator.webkitConnection;return n.networkConnectionType=r&&r.type?r.type:null,n.networkEffectiveConnectionType=r&&r.effectiveType?r.effectiveType:null,n.fledgeEnabled=Boolean(t&&t.fledgeEnabled),{method:"POST",url:"https://onetag-sys.com/prebid-request",data:JSON.stringify(n)}},interpretResponse:(e,t)=>{const n=e.body,r=[],i=JSON.parse(t.data);if(!n||n.nobid&&!0===n.nobid)return r;if(!(n.fledgeAuctionConfigs||n.bids&&Array.isArray(n.bids)&&0!==n.bids.length))return r;if(Array.isArray(n.bids)&&n.bids.forEach((e=>{const t={requestId:e.requestId,cpm:e.cpm,width:e.width,height:e.height,creativeId:e.creativeId,dealId:null==e.dealId?e.dealId:"",currency:e.currency,netRevenue:e.netRevenue||!1,mediaType:e.mediaType,meta:{mediaType:e.mediaType,advertiserDomains:e.adomain},ttl:e.ttl||300};if(e.dsa&&(t.meta.dsa=e.dsa),e.mediaType===Ii)t.ad=e.ad;else if(e.mediaType===Ai){const{context:n,adUnitCode:r}=d(i.bids,(t=>t.bidId===e.requestId&&t.type===Ai));n===Wn?(t.vastUrl=e.vastUrl,t.videoCacheKey=e.videoCacheKey):n===Vn&&(t.vastXml=e.ad,t.vastUrl=e.vastUrl,e.rendererUrl&&(t.renderer=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=nn.install({id:e.requestId,url:e.rendererUrl,config:t,adUnitCode:e.adUnitCode,loaded:!1});try{n.setRender((t=>{let{renderer:n,width:r,height:i,vastXml:o,adUnitCode:s}=t;n.push((()=>{window.onetag.Player.init({...e,width:r,height:i,vastXml:o,nodeId:s,config:n.getConfig()})}))}))}catch(e){}return n}({...e,adUnitCode:r})))}r.push(t)})),n.fledgeAuctionConfigs&&Array.isArray(n.fledgeAuctionConfigs)){const e=n.fledgeAuctionConfigs;return{bids:r,fledgeAuctionConfigs:e}}return r},getUserSyncs:(e,t,n,r,i)=>{let o=[],s="";return n&&("boolean"==typeof n.gdprApplies&&(s+="&gdpr="+(n.gdprApplies?1:0)),"string"==typeof n.consentString&&(s+="&gdpr_consent="+n.consentString)),i&&"string"==typeof i.gppString&&(s+="&gpp_consent="+i.gppString),r&&"string"==typeof r&&(s+="&us_privacy="+r),e.iframeEnabled&&o.push({type:"iframe",url:sc+"?cb="+(new Date).getTime()+s}),e.pixelEnabled&&o.push({type:"image",url:sc+"?tag=img"+s}),o}};function Ic(e){const t=function(e){let t;return Ze()&&(t=d(window.googletag.pubads().getSlots(),(e=>t=>ut(t,e))(e))),t}(e);return t?{gptSlot:t.getAdUnitPath(),divId:t.getSlotElementId()}:{}}lr(Ac),s("onetagBidAdapter");const wc="ix",xc="roundel",Cc=[Ii,Ai,vi],Ec=[144,144],Tc={JPY:1},Sc={PBJS:"p",IX:"x"},_c={BID_SIZE_INVALID_FORMAT:1,BID_SIZE_NOT_INCLUDED:2,PROPERTY_NOT_INCLUDED:3,SITE_ID_INVALID_VALUE:4,BID_FLOOR_INVALID_FORMAT:5,IX_FPD_EXCEEDS_MAX_SIZE:6,EXCEEDS_MAX_SIZE:7,PB_FPD_EXCEEDS_MAX_SIZE:8,VIDEO_DURATION_INVALID:9},kc={SITE:["id","name","domain","cat","sectioncat","pagecat","page","ref","search","mobile","privacypolicy","publisher","content","keywords","ext"],USER:["id","buyeruid","yob","gender","keywords","customdata","geo","data","ext"]},Oc={"liveramp.com":"idl","netid.de":"NETID","neustar.biz":"fabrickId","zeotap.com":"zeotapIdPlus","uidapi.com":"UID2","adserver.org":"TDID","id5-sync.com":"","crwdcntrl.net":"","epsilon.com":"","audigent.com":"","pubcid.org":"","utiq.com":"","criteo.com":"","euid.eu":"","intimatemerger.com":"","33across.com":"","liveintent.indexexchange.com":"","google.com":""},Rc=["britepoolid","lipbid","criteoId","merkleId","parrableId","connectid","tapadId","quantcastId","pubProvidedId","pairId"],Dc=["mimes","minduration","maxduration"],Bc=["mimes","minduration","maxduration","protocols","protocol","startdelay","placement","linearity","skip","skipmin","skipafter","sequence","battr","maxextended","minbitrate","maxbitrate","boxingallowed","playbackmethod","playbackend","delivery","pos","companionad","api","companiontype","ext","playerSize","w","h","plcmt"],Uc="ixdiag",jc=`${wc}_features`;let Pc=!1;const Nc=mi({bidderCode:wc}),$c={REQUESTED_FEATURE_TOGGLES:["pbjs_enable_multiformat","pbjs_allow_all_eids"],featureToggles:{},isFeatureEnabled:function(e){return y(this.featureToggles,`features.${e}.activated`,!1)},getFeatureToggles:function(){if(Nc.localStorageIsEnabled()){const e=(e=>{try{return JSON.parse(e)}catch(e){}})(Nc.getDataFromLocalStorage(jc));y(e,"expiry")&&e.expiry>=(new Date).getTime()?this.featureToggles=e:this.clearFeatureToggles()}},setFeatureToggles:function(e){const t=e.body,n=new Date,r=y(t,"ext.features");r&&(this.featureToggles={expiry:n.setHours(n.getHours()+1),features:r},Nc.localStorageIsEnabled()&&Nc.setDataInLocalStorage(jc,JSON.stringify(this.featureToggles)))},clearFeatureToggles:function(){this.featureToggles={},Nc.localStorageIsEnabled()&&Nc.removeDataFromLocalStorage(jc)}};let qc=0,Mc="",zc="",Fc=!1;function Lc(e){const t=Vc(e,Ai),n=y(e,"mediaTypes.video"),r=y(e,"params.video");if(Xc(n,r).length)return{};t.video=r?tt(e.params.video):{};let i=y(e,"ortb2Imp.ext.tid");i&&xt(t,"ext.tid",i),((e,t)=>{if(y(t,"mediaTypes.video.context")===Vn){let n=y(t,"mediaTypes.video.renderer");if(n||(n=y(t,"renderer")),y(t,"schain",!1))e.displaymanager="pbjs_wrapper";else if(n&&"object"==typeof n){if(void 0!==n.url){let t="";try{t=new URL(n.url).hostname}catch{return}t.includes("js-sec.indexww")?e.displaymanager="ix":e.displaymanager=n.url}}else e.displaymanager="ix"}})(t,e),nl(t,e);for(const e in n)-1===Bc.indexOf(e)||t.video.hasOwnProperty(e)||(t.video[e]=n[e]);if(t.video.minduration>t.video.maxduration)return xe(`IX Bid Adapter: video minduration [${t.video.minduration}] cannot be greater than video maxduration [${t.video.maxduration}]`,{bidder:wc,code:_c.VIDEO_DURATION_INVALID}),{};const o=r&&r.context||n&&n.context;if((e=>{e.video.hasOwnProperty("plcmt")&&(!pt(e.video.plcmt)||e.video.plcmt<1||e.video.plcmt>4)&&(we(`IX Bid Adapter: video.plcmt [${e.video.plcmt}] must be an integer between 1-4 inclusive`),delete e.video.plcmt)})(t),o&&!t.video.hasOwnProperty("placement")&&(o===Wn?t.video.placement=1:o===Vn?y(r,"playerConfig.floatOnScroll")?t.video.placement=5:(t.video.placement=3,Fc=!0):we(`IX Bid Adapter: Video context '${o}' is not supported`)),!t.video.w||!t.video.h){const n=Qc(y(t,"video.playerSize"))||Qc(y(e,"params.size"));if(!n)return we("IX Bid Adapter: Video size is missing in [mediaTypes.video]"),{};t.video.w=n[0],t.video.h=n[1]}return Wc(e,t,Ai),t}function Vc(e,t){const n={};if(n.id=e.bidId,fl()&&y(e,"params.externalId")&&xt(n,"ext.externalID",e.params.externalId),y(e,`params.${t}.siteId`)&&!isNaN(Number(e.params[t].siteId)))switch(t){case Ii:xt(n,"ext.siteID",e.params.banner.siteId.toString());break;case Ai:xt(n,"ext.siteID",e.params.video.siteId.toString());break;case vi:xt(n,"ext.siteID",e.params.native.siteId.toString())}else e.params.siteId&&xt(n,"ext.siteID",e.params.siteId.toString());return!e.params.hasOwnProperty("id")||"string"!=typeof e.params.id&&"number"!=typeof e.params.id||xt(n,"ext.sid",String(e.params.id)),n}function Wc(e,t,n){let r=null,i=null;if(e.params.bidFloor&&e.params.bidFloorCur&&(r={floor:e.params.bidFloor,currency:e.params.bidFloorCur}),Re(e.getFloor)){let r="*",o="*";if(n&&Me(Cc,n)){const{w:e,h:i}=t[n];r=n,o=[e,i]}try{i=e.getFloor({mediaType:r,size:o})}catch(e){we("priceFloors module call getFloor failed, error : ",e)}}let o=!1;i?(t.bidfloor=i.floor,t.bidfloorcur=i.currency,xt(t,"ext.fl",Sc.PBJS),o=!0):r&&(t.bidfloor=r.floor,t.bidfloorcur=r.currency,xt(t,"ext.fl",Sc.IX),o=!0),o&&(n==Ii?(xt(t,"banner.ext.bidfloor",t.bidfloor),xt(t,"banner.ext.fl",t.ext.fl)):n==Ai?(xt(t,"video.ext.bidfloor",t.bidfloor),xt(t,"video.ext.fl",t.ext.fl)):(xt(t,"native.ext.bidfloor",t.bidfloor),xt(t,"native.ext.fl",t.ext.fl)))}function Gc(e,t,n){const r={},i=!(!y(e,"exp")||!pt(e.exp)),o=y(e,"dealid")||y(e,"ext.dealid");Tc.hasOwnProperty(t)?r.cpm=e.price/Tc[t]:r.cpm=e.price/100,r.requestId=e.impid,o&&(r.dealId=o),r.netRevenue=!0,r.currency=t,r.creativeId=e.hasOwnProperty("crid")?e.crid:"-",2!=e.mtype||(!e.ext||e.ext.vasturl)&&e.ext?e.ext&&e.ext.vasturl&&(r.vastUrl=e.ext.vasturl):r.vastXml=e.adm;let s=null;if("string"==typeof e.adm&&"{"===e.adm[0]&&"}"===e.adm[e.adm.length-1])try{s=JSON.parse(e.adm)}catch(e){we("adm looks like JSON but failed to parse: ",e)}return e.ext&&e.ext.vasturl||2==e.mtype?(r.width=n.video.w,r.height=n.video.h,r.mediaType=Ai,r.mediaTypes=n.mediaTypes,r.ttl=i?e.exp:3600):s&&s.native?(r.native={ortb:s.native},r.width=e.w?e.w:1,r.height=e.h?e.h:1,r.mediaType=vi,r.ttl=i?e.exp:3600):(r.ad=e.adm,r.width=e.w,r.height=e.h,r.mediaType=Ii,r.ttl=i?e.exp:300),r.meta={},r.meta.networkId=y(e,"ext.dspid"),r.meta.brandId=y(e,"ext.advbrandid"),r.meta.brandName=y(e,"ext.advbrand"),e.adomain&&e.adomain.length>0&&(r.meta.advertiserDomains=e.adomain),e.ext?.dsa&&(r.meta.dsa=e.ext.dsa),r}function Hc(e){return Array.isArray(e)&&2===e.length&&pt(e[0])&&pt(e[1])}function Jc(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];if(Hc(e))return e[0]===t[0]&&e[1]===t[1];for(let n=0;n<e.length;n++)if(e[n][0]===t[0]&&e[n][1]===t[1])return!0;return!1}function Xc(e,t){const n=[];e||we("IX Bid Adapter: mediaTypes.video is the preferred location for video params in ad unit");for(let r of Dc){const i=e&&e.hasOwnProperty(r),o=t&&t.hasOwnProperty(r);i||o||n.push(`IX Bid Adapter: ${r} is not included in either the adunit or params level`)}const r=e&&e.hasOwnProperty("protocol"),i=e&&e.hasOwnProperty("protocols"),o=t&&t.hasOwnProperty("protocol"),s=t&&t.hasOwnProperty("protocols");return r||i||o||s||n.push("IX Bid Adapter: protocol/protcols is not included in either the adunit or params level"),n}function Qc(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return Hc(e)?e:!!Hc(e[0])&&e[0]}function Kc(e,t,n){if(e)return{...d(n,(t=>t.bidId===e)),...d(t,(t=>t.id===e))}}function Yc(e,t,n,r){let i="https://htlb.casalemedia.com/openrtb/pbjs",o=(e=>{let t=[],n={};if(Be(e))for(const r of e){const e=Oc.hasOwnProperty(r.source),i=$c.isFeatureEnabled("pbjs_allow_all_eids"),o=y(r,"uids.0");if((e||i)&&o&&(n[r.source]=!0,e&&""!==Oc[r.source]&&(r.uids[0].ext={rtiPartner:Oc[r.source]}),delete r.uids[0].atype,t.push(r),t.length>=50))break}return{toSend:t,seenSources:n}})(y(e,"0.userIdAsEids")),s=o.toSend;if(window.headertag&&"function"==typeof window.headertag.getIdentityInfo&&((e,t)=>{let n=window.headertag.getIdentityInfo();if(n&&"object"==typeof n)for(const r in n){if(e.length>=50)return;if(n.hasOwnProperty(r)){let i=n[r];!i.responsePending&&i.data&&"object"==typeof i.data&&Object.keys(i.data).length&&!t.seenSources[i.data.source]&&e.push(i.data)}}})(s,o),t&&t.bidderCode===xc&&!o.seenSources["liveramp.com"])return[];const a=[];let d=(e=>{const t={};return t.id=e[0].bidderRequestId.toString(),t.site={},t.ext={},t.ext.source="prebid",t.ext.ixdiag={},t.ext.ixdiag.ls=Nc.localStorageIsEnabled(),t.imp=[],t.at=1,t})(e);d=((e,t)=>(t.length>0&&(e.ext.features={},t.forEach((t=>{e.ext.features[t]={activated:$c.isFeatureEnabled(t)}}))),e))(d,$c.REQUESTED_FEATURE_TOGGLES);let c=((e,t)=>{var n=e.map((e=>e.adUnitCode)).filter(((e,t,n)=>n.indexOf(e)===t));let r=y(e,"0.userIdAsEids",[]),i={mfu:0,bu:0,iu:0,nu:0,ou:0,allu:0,ren:!1,version:"8.47.0",userIds:il(e[0]),url:window.location.href.split("?")[0],vpd:Fc,ae:t,eidLength:r.length};for(let t of n){let n=e.filter((e=>e.adUnitCode===t))[0];y(n,"mediaTypes")&&(Object.keys(n.mediaTypes).length>1&&i.mfu++,y(n,"mediaTypes.native")&&i.nu++,y(n,"mediaTypes.banner")&&i.bu++,"outstream"===y(n,"mediaTypes.video.context")&&(i.ou++,gl(n)&&(i.ren=!0)),"instream"===y(n,"mediaTypes.video.context")&&i.iu++,i.allu++)}return i})(e,y(t,"fledgeEnabled"));for(let e in c)d.ext.ixdiag[e]=c[e];d=((e,t,n,r,i)=>{const o=y(t,"timeout");o&&(e.ext.ixdiag.tmax=o),q.getConfig("userSync")&&(e.ext.ixdiag.syncsPerBidder=q.getConfig("userSync").syncsPerBidder);const s=(()=>{if(!Nc.localStorageIsEnabled())return;const e={};let t;try{t=JSON.parse(Nc.getDataFromLocalStorage(Uc)||"{}")}catch(e){return xe("ix can not read ixdiag from localStorage."),null}return Object.keys(t).forEach((n=>{Object.keys(t[n]).forEach((r=>{"number"==typeof t[n][r]&&(e[r]=e[r]?e[r]+t[n][r]:t[n][r])}))})),e})();return Ne(s)||(e.ext.ixdiag.err=s),e.ext.ixdiag.imps=Object.keys(n).length,e.source={tid:t?.ortb2?.source?.tid},r[0].schain&&(e.source.ext={},e.source.ext.schain=r[0].schain),i.length>0&&(e.user={},e.user.eids=i),document.referrer&&""!==document.referrer&&(e.site.ref=document.referrer),e})(d,t,n,e,s),d=((e,t)=>{if(t){t.gdprConsent&&(Mc=t.gdprConsent,Mc.hasOwnProperty("gdprApplies")&&(e.regs={ext:{gdpr:Mc.gdprApplies?1:0}}),Mc.hasOwnProperty("consentString")&&(e.user=e.user||{},e.user.ext={consent:Mc.consentString||""},Mc.hasOwnProperty("addtlConsent")&&Mc.addtlConsent&&(e.user.ext.consented_providers_settings={addtl_consent:Mc.addtlConsent}))),t.uspConsent&&(xt(e,"regs.ext.us_privacy",t.uspConsent),zc=t.uspConsent);const n=y(t,"refererInfo.page");n&&(e.site.page=n),t.gppConsent&&(xt(e,"regs.gpp",t.gppConsent.gppString),xt(e,"regs.gpp_sid",t.gppConsent.applicableSections))}return q.getConfig("coppa")&&xt(e,"regs.coppa",1),e})(d,t);let l={};e[0].params.siteId&&(qc=e[0].params.siteId,l.s=qc);const u=Object.keys(n);let p=!1;for(let r=0;r<u.length&&!(a.length>=4);r++){d=Zc(n,u,d,r);const o=y(t,"ortb2")||{},s={...o.site||o.context};s.page=el(t);const c={...o.user};Ne(o)||p||(d=tl(t,d,o,s,c),d.site=At({},d.site,s),d.user=At({},d.user,c),p=!0),d=rl(n,d,u,r);const l=r===u.length-1;if(d=Al(d),d=bl(d),d=yl(d),l){let t=`${i}?`;0!==qc&&(t+=`s=${qc}`),fl()&&(t+=0!==qc?"&":"",t+=`p=${q.getConfig("exchangeId")}`),a.push({method:"POST",url:t,data:tt(d),option:{contentType:"text/plain"},validBidRequests:e}),d.imp=[],p=!1}}return a}function Zc(e,t,n,r){const i=e[t[r]],{missingImps:o=[],ixImps:s=[]}=i,a={ixImps:s,missingBannerImpressions:o},d=Object.keys(a).map((e=>a[e])).filter((e=>Array.isArray(e))).reduce(((e,t)=>e.concat(...t)),[]),c=e[t[r]].gpid,l=e[t[r]].dfp_ad_unit_code,u=e[t[r]].tid,p=e[t[r]].sid,g=e[t[r]].ae,f=d.filter((e=>Ii in e)),m=d.filter((e=>!(Ii in e)));if(f.length>0){const i=f.reduce(((e,t)=>(e[t.adunitCode]||(e[t.adunitCode]=[]),e[t.adunitCode].push(t),e)),{});for(const o in i){const s=i[o],{id:a,banner:{topframe:d}}=s[0];let f=y(s[0],"ext.externalID");const m={id:a,banner:{topframe:d,format:s.map((e=>{let{banner:{w:t,h:n},ext:r}=e;return{w:t,h:n,ext:r}}))}};for(let e=0;e<m.banner.format.length;e++)null!=m.banner.format[e].ext&&(null!=m.banner.format[e].ext.sid&&delete m.banner.format[e].ext.sid,null!=m.banner.format[e].ext.externalID&&delete m.banner.format[e].ext.externalID),"bidfloor"in s[e]&&(m.banner.format[e].ext.bidfloor=s[e].bidfloor),"{}"===JSON.stringify(m.banner.format[e].ext)&&delete m.banner.format[e].ext;const h=e[t[r]].pos;pt(h)&&(m.banner.pos=h),(l||c||u||p||g||f)&&(m.ext={},m.ext.dfp_ad_unit_code=l,m.ext.gpid=c,m.ext.tid=u,m.ext.sid=p,m.ext.externalID=f,1==g&&(m.ext.ae=1)),"bidfloor"in s[0]&&(m.bidfloor=s[0].bidfloor),"bidfloorcur"in s[0]&&(m.bidfloorcur=s[0].bidfloorcur);const b=e[t[r]].adUnitFPD;b&&xt(m,"ext.data",b),n.imp.push(m)}}return m.length>0&&m.forEach((e=>{if(c&&xt(e,"ext.gpid",c),n.imp.length>0){let t=!1;n.imp.forEach(((r,i)=>{e.id===r.id&&Ai in e?(r.video=e.video,r.video.ext=Object.assign({},e.video.ext,e.ext),y(r,"video.ext.bidfloor",!1)&&y(r,"bidfloor",!1)&&r.video.ext.bidfloor<r.bidfloor&&(r.bidfloor=r.video.ext.bidfloor),!y(r,"ext.siteID",!1)&&y(e,"video.ext.siteID")&&(xt(r,"ext.siteID",e.video.ext.siteID),xt(n,"ext.ixdiag.usid",!0)),t=!0):e.id===r.id&&vi in e&&(r.native=e.native,r.native.ext=Object.assign({},e.native.ext,e.ext),y(r,"native.ext.bidfloor",!1)&&y(r,"bidfloor",!1)&&r.native.ext.bidfloor<r.bidfloor&&(r.bidfloor=r.native.ext.bidfloor),!y(r,"ext.siteID",!1)&&y(e,"native.ext.siteID",!1)&&(xt(r,"ext.siteID",e.native.ext.siteID),xt(n,"ext.ixdiag.usid",!0)),t=!0)})),t||n.imp.push(e)}else n.imp.push(e)})),n}function el(e){const t=e&&e.bidderCode||"ix",n=q.getConfig(t);let r="";return r=y(e,"ortb2.site.page")?e.ortb2.site.page:y(e,"refererInfo.page"),n&&"object"==typeof n.firstPartyData?((e,t,n)=>{let r;try{r=new URL(t)}catch(n){we(`IX Bid Adapter: Invalid URL set in ortb2.site.page: ${t}. Using referer URL instead.`),r=new URL(y(e,"refererInfo.page"))}const i=new URLSearchParams(r.search);for(const[e,t]of Object.entries(n))i.has(e)||i.append(e,t);return r.search=i.toString(),r.toString()})(e,r,n.firstPartyData):r}function tl(e,t,n,r,i){if(t.ext.ixdiag.fpd=!0,Object.keys(r).forEach((e=>{-1===kc.SITE.indexOf(e)&&delete r[e]})),Object.keys(i).forEach((e=>{-1===kc.USER.indexOf(e)&&delete i[e]})),n.device){const e={...n.device.sua};Ne(e)||xt(t,"device.sua",e)}if(n.hasOwnProperty("regs")&&!e.gppConsent&&(n.regs.hasOwnProperty("gpp")&&"string"==typeof n.regs.gpp&&xt(t,"regs.gpp",n.regs.gpp),n.regs.hasOwnProperty("gpp_sid")&&Array.isArray(n.regs.gpp_sid)&&xt(t,"regs.gpp_sid",n.regs.gpp_sid),n.regs.ext?.dsa)){const e=n.regs.ext.dsa,r={};if(["dsarequired","pubrender","datatopub"].forEach((t=>{Ue(e[t])&&(r[t]=e[t])})),Be(e.transparency)){const t=[];e.transparency.forEach((e=>{je(e)&&De(e.domain)&&""!=e.domain&&Be(e.dsaparams)&&e.dsaparams.every((e=>Ue(e)))&&t.push(e)})),t.length>0&&(r.transparency=t)}Ne(r)||xt(t,"regs.ext.dsa",r)}return t}function nl(e,t){const n=y(t,"ortb2Imp.ext.data");n&&xt(e,"ext.data",n)}function rl(e,t,n,r,i,o){const s=e[n[r]].pbadslot,a=e[n[r]].tagId,d=e[n[r]].adUnitCode,c=e[n[r]].divId;return(s||a||d||c)&&(t.ext.ixdiag.pbadslot=s,t.ext.ixdiag.tagid=a,t.ext.ixdiag.adunitcode=d,t.ext.ixdiag.divId=c),t}function il(e){const t=e.userId||{};return Rc.filter((e=>t[e]))}function ol(e,t){if(t)for(let n=0;n<e.length;n++){const r=e[n];if(t[0]===r[0]&&t[1]===r[1]){e.splice(n,1);break}}}function sl(e,t){const n=(e=>{const t=Vc(e,vi),n=e.nativeOrtbRequest;n.eventtrackers=[{event:1,methods:[1,2]}],n.privacy=1,t.native={request:JSON.stringify(n),ver:"1.2"};let r=y(e,"ortb2Imp.ext.tid");return r&&xt(t,"ext.tid",r),nl(t,e),Wc(e,t,vi),t})(e);if(0!=Object.keys(n).length){t[e.adUnitCode]={},t[e.adUnitCode].ixImps=[],t[e.adUnitCode].ixImps.push(n),t[e.adUnitCode].gpid=y(e,"ortb2Imp.ext.gpid"),t[e.adUnitCode].dfp_ad_unit_code=y(e,"ortb2Imp.ext.data.adserver.adslot"),t[e.adUnitCode].pbadslot=y(e,"ortb2Imp.ext.data.pbadslot"),t[e.adUnitCode].tagId=y(e,"params.tagId");const r=e.adUnitCode,i=document.getElementById(r)?r:Ic(r).divId;t[e.adUnitCode].adUnitCode=r,t[e.adUnitCode].divId=i}}function al(e,t){const n=Lc(e);if(0!=Object.keys(n).length){t[e.adUnitCode]={},t[e.adUnitCode].ixImps=[],t[e.adUnitCode].ixImps.push(n),t[e.adUnitCode].gpid=y(e,"ortb2Imp.ext.gpid"),t[e.adUnitCode].dfp_ad_unit_code=y(e,"ortb2Imp.ext.data.adserver.adslot"),t[e.adUnitCode].pbadslot=y(e,"ortb2Imp.ext.data.pbadslot"),t[e.adUnitCode].tagId=y(e,"params.tagId");const r=e.adUnitCode,i=document.getElementById(r)?r:Ic(r).divId;t[e.adUnitCode].adUnitCode=r,t[e.adUnitCode].divId=i}}function dl(e,t,n,r){let i=(e=>{const t=Vc(e,Ii);t.banner={},t.adunitCode=e.adUnitCode;const n=y(e,"params.size");return n&&(t.banner.w=n[0],t.banner.h=n[1]),t.banner.topframe=nt()?0:1,Wc(e,t,Ii),t})(e);const o=Jc(y(e,"mediaTypes.banner.sizes"),y(e,"params.size"));if(n.hasOwnProperty(e.adUnitCode)||(n[e.adUnitCode]={}),n[e.adUnitCode].gpid=y(e,"ortb2Imp.ext.gpid"),n[e.adUnitCode].dfp_ad_unit_code=y(e,"ortb2Imp.ext.data.adserver.adslot"),n[e.adUnitCode].tid=y(e,"ortb2Imp.ext.tid"),n[e.adUnitCode].pbadslot=y(e,"ortb2Imp.ext.data.pbadslot"),n[e.adUnitCode].tagId=y(e,"params.tagId"),n[e.adUnitCode].pos=y(e,"mediaTypes.banner.pos"),y(r,"fledgeEnabled")){const t=y(e,"ortb2Imp.ext.ae");t?pt(t)?n[e.adUnitCode].ae=t:we("error setting auction environment flag - must be an integer"):1==y(r,"defaultForSlots")&&(n[e.adUnitCode].ae=1)}const s=y(e,"ortb2Imp.ext.data");s&&(n[e.adUnitCode].adUnitFPD=s);const a=y(e,"params.id");!a||"string"!=typeof a&&"number"!=typeof a||(n[e.adUnitCode].sid=String(a));const d=e.adUnitCode,c=document.getElementById(d)?d:Ic(d).divId;n[e.adUnitCode].adUnitCode=d,n[e.adUnitCode].divId=c,o&&(n[e.adUnitCode].hasOwnProperty("ixImps")||(n[e.adUnitCode].ixImps=[]),n[e.adUnitCode].ixImps.push(i)),((e,t,n)=>{if(t.hasOwnProperty(e.adUnitCode)){let n=[];t[e.adUnitCode].hasOwnProperty("missingSizes")&&(n=t[e.adUnitCode].missingSizes),ol(n,e.params.size),t[e.adUnitCode].missingSizes=n}else if(y(e,"mediaTypes.banner.sizes")){let r=tt(e.mediaTypes.banner.sizes);ol(r,e.params.size);let i={missingSizes:r,impression:n};t[e.adUnitCode]=i}})(e,t,i)}function cl(e,t,n){const r=tt(t);return r.banner.w=n[0],r.banner.h=n[1],Wc(e,r,Ii),r}function ll(e){"ERROR"===e.type&&e.arguments&&e.arguments[1]&&e.arguments[1].bidder===wc&&(e=>{if(!Nc.localStorageIsEnabled())return;let t;try{t=JSON.parse(Nc.getDataFromLocalStorage(Uc)||"{}")}catch(e){we("ix can not read ixdiag from localStorage.")}const n=new Date;if(Object.keys(t).map((e=>{const r=new Date(e);r.setDate(r.getDate()+7)-n<0&&delete t[e]})),"ERROR"===e.type&&e.arguments&&e.arguments[1]&&e.arguments[1].bidder===wc){const r=n.toISOString().slice(0,10),i=e.arguments[1].code;i&&(t[r]=t[r]||{},Number(t[r][i])||(t[r][i]=0),t[r][i]++)}Nc.setDataInLocalStorage(Uc,JSON.stringify(t))})(e)}function ul(e){e.renderer.push((()=>{const t=e.adUnitCode,n=document.getElementById(t)?t:Ic(t).divId;n?window.createIXPlayer(n,e):we(`IX Bid Adapter: adUnitCode: ${n} not found on page.`)}))}function pl(e,t){const n=nn.install({id:e,url:t,loaded:!1});try{n.setRender(ul)}catch(e){return we("Prebid Error calling setRender on renderer",e),null}return t?n:(we("Outstream renderer URL not found"),null)}function gl(e){if("outstream"!==y(e,"mediaTypes.video.context"))return!1;let t=y(e,"mediaTypes.video.renderer");return t||(t=y(e,"renderer")),!("object"==typeof t&&t.url&&t.render)||t.backupOnly}function fl(){let e=q.getConfig("exchangeId");return!("number"!=typeof e||!isFinite(e))||!("string"!=typeof e||""===e.trim()||!isFinite(Number(e)))}const ml={code:wc,gvlid:10,aliases:[{code:xc,gvlid:10,skipPbsAliasing:!1}],supportedMediaTypes:Cc,isBidRequestValid:e=>{Pc||(Ut(I.AUCTION_DEBUG,ll),Ut(I.AD_RENDER_FAILED,ll),Pc=!0);const t=y(e,"params.video"),n=y(e,"params.size"),r=y(e,"mediaTypes.banner.sizes"),i=y(e,"mediaTypes.video"),o=y(e,"mediaTypes.video.playerSize"),s=e.params.hasOwnProperty("bidFloor"),a=e.params.hasOwnProperty("bidFloorCur");if(e.hasOwnProperty("mediaType")&&!Me(Cc,e.mediaType))return we("IX Bid Adapter: media type is not supported."),!1;if(y(e,"mediaTypes.banner")&&!r)return!1;if(n){const t=Qc(n);if(!t)return xe("IX Bid Adapter: size has invalid format.",{bidder:wc,code:_c.BID_SIZE_INVALID_FORMAT}),!1;if(!Jc(e.sizes,t)&&!Jc(o,t)&&!Jc(r,t))return xe("IX Bid Adapter: bid size is not included in ad unit sizes or player size.",{bidder:wc,code:_c.BID_SIZE_NOT_INCLUDED}),!1}if(!fl()&&null==e.params.siteId)return xe("IX Bid Adapter: Invalid configuration - either siteId or exchangeId must be configured."),!1;if(void 0!==e.params.siteId){if("string"!=typeof e.params.siteId&&"number"!=typeof e.params.siteId)return xe("IX Bid Adapter: siteId must be string or number type.",{bidder:wc,code:_c.SITE_ID_INVALID_VALUE}),!1;if("string"!=typeof e.params.siteId&&isNaN(Number(e.params.siteId)))return xe("IX Bid Adapter: siteId must valid value",{bidder:wc,code:_c.SITE_ID_INVALID_VALUE}),!1}if((s||a)&&!(s&&a&&(d=e.params.bidFloor,c=e.params.bidFloorCur,Boolean("number"==typeof d&&"string"==typeof c&&c.match(/^[A-Z]{3}$/)))))return xe("IX Bid Adapter: bidFloor / bidFloorCur parameter has invalid format.",{bidder:wc,code:_c.BID_FLOOR_INVALID_FORMAT}),!1;var d,c;if(i&&t){const n=Lc(e).video,r=Xc(i,t);if(y(e,"mediaTypes.video.context")===Vn&&gl(e)&&n){const e=[y(n,"w"),y(n,"h")];if(!(e[0]>=Ec[0]&&e[1]>=Ec[1]))return xe(`IX Bid Adapter: ${e} is an invalid size for IX outstream renderer`),!1}if(r.length)return r.forEach((e=>{xe(e,{bidder:wc,code:_c.PROPERTY_NOT_INCLUDED})})),!1}return(e=>void 0===y(e,"mediaTypes.native")||e.nativeOrtbRequest&&Array.isArray(e.nativeOrtbRequest.assets)&&e.nativeOrtbRequest.assets.length>0)(e)},resetSiteID:()=>{qc=0},buildRequests:(e,t)=>{const n=[],r={},i={},o={},s={};$c.getFeatureToggles(),e.forEach((e=>{const n=Object.keys(y(e,"mediaTypes",{}));for(const a in n)switch(n[a]){case Ii:dl(e,s,r,t);break;case Ai:al(e,i);break;case vi:sl(e,o);break;default:we(`IX Bid Adapter: ad unit mediaTypes ${a} is not supported`)}}));for(let t in s)if(s.hasOwnProperty(t)){let n=s[t].missingSizes;r.hasOwnProperty(t)||(r[t]={}),r[t].hasOwnProperty("missingImps")||(r[t].missingImps=[],r[t].missingCount=0);let i=s[t].impression;for(let o=0;o<n.length;o++){let s=cl(e[0],i,n[o]);r[t].missingImps.push(s),r[t].missingCount++}}let a=[];return Object.keys(r).length>0&&a.push(r),Object.keys(i).length>0&&a.push(i),Object.keys(o).length>0&&a.push(o),$c.isFeatureEnabled("pbjs_enable_multiformat")?n.push(...Yc(e,t,(e=>{const t={};return e.forEach((e=>{Object.keys(e).forEach((n=>{Object.keys(t).includes(n)?t[n].hasOwnProperty("ixImps")&&e[n].hasOwnProperty("ixImps")?t[n].ixImps=[...t[n].ixImps,...e[n].ixImps]:t[n].hasOwnProperty("missingImps")&&e[n].hasOwnProperty("missingImps")?t[n].missingImps=[...t[n].missingImps,...e[n].missingImps]:e[n].hasOwnProperty("ixImps")?t[n].ixImps=e[n].ixImps:e[n].hasOwnProperty("missingImps")&&(t[n].missingImps=e[n].missingImps):t[n]=e[n]}))})),t})(a))):(Object.keys(r).length>0&&n.push(...Yc(e,t,r)),Object.keys(i).length>0&&n.push(...Yc(e,t,i)),Object.keys(o).length>0&&n.push(...Yc(e,t,o))),n},interpretResponse:(e,t)=>{const n=[];let r=null,i=y(e,"body.ext.protectedAudienceAuctionConfigs")||[];if($c.setFeatureToggles(e),!e.hasOwnProperty("body"))return n;const o=e.body,s=o.seatbid||[];for(let e=0;e<s.length;e++){if(!s[e].hasOwnProperty("bid"))continue;const i=s[e].bid,a=t.data;for(let e=0;e<i.length;e++){const s=Kc(i[e].impid,a.imp,t.validBidRequests);if(r=Gc(i[e],o.cur,s),r.mediaType===Ai&&gl(s)){const t=y(o,"ext.videoplayerurl");if(r.renderer=pl(i[e].bidId,t),!r.renderer)continue}n.push(r)}if(y(a,"ext.ixdiag.err")&&Nc.localStorageIsEnabled())try{Nc.removeDataFromLocalStorage(Uc)}catch(e){xe("ix can not clear ixdiag from localStorage.")}}if(!(Array.isArray(i)&&i.length>0))return n;i=i.filter((e=>!!(e=>"object"==typeof e&&null!==e)(e)||(we("Malformed auction config detected:",e),!1)));try{return{bids:n,fledgeAuctionConfigs:i}}catch(e){return we("Error attaching AuctionConfigs",e),n}},transformBidParams:(e,t)=>Ja({siteID:"number"},e),getUserSyncs:(e,t)=>{const n=[];let r=null;if(t.length>0&&(r=y(t[0],"body.ext.publishersyncsperbidderoverride")),void 0!==r&&0==r)return[];if(e.iframeEnabled)n.push({type:"iframe",url:"https://js-sec.indexww.com/um/ixmatch.html"});else{let e=null;q.getConfig("userSync")&&(e=q.getConfig("userSync").syncsPerBidder),0===e&&(e=r),e=r&&(0===e||e)?r>e?e:r:1;for(let t=0;t<e;t++)n.push({type:"image",url:hl(e,t)})}return n}};function hl(e,t){let n="",r="0";return Mc&&Mc.hasOwnProperty("gdprApplies")&&(r=Mc.gdprApplies?"1":"0"),Mc&&Mc.hasOwnProperty("consentString")&&(n=Mc.consentString||""),"https://dsum.casalemedia.com/pbusermatch?origin=prebid"+(0!==qc?"&site_id="+qc.toString():"")+"&p="+e.toString()+"&i="+t.toString()+"&gdpr="+r+"&gdpr_consent="+n+"&us_privacy="+(zc||"")}function bl(e){return e.imp.forEach(((t,n)=>{const r=t.ext;if(null==r)return e;vl(t)<2||Object.keys(r).forEach((i=>{if(Ii in t){const o=t.banner.ext;if(void 0!==o&&void 0!==o[i]&&o[i]==r[i]&&delete e.imp[n].banner.ext[i],void 0!==t.banner.format)for(let o=0;o<t.banner.format.length;o++)null!=t.banner.format[o].ext&&null!=t.banner.format[o].ext[i]&&t.banner.format[o].ext[i]==r[i]&&delete e.imp[n].banner.format[o].ext[i]}if(Ai in t){const o=t.video.ext;void 0!==o&&void 0!==o[i]&&o[i]==r[i]&&delete e.imp[n].video.ext[i]}if(vi in t){const o=t.native.ext;void 0!==o&&void 0!==o[i]&&o[i]==r[i]&&delete e.imp[n].native.ext[i]}}))})),e}function yl(e){return e.imp.forEach(((t,n)=>{if(null==t.ext)return e;if(!(vl(t)<2)){if(Ii in t){const r=t.banner.ext;if(void 0!==r&&void 0!==r.siteID&&delete e.imp[n].banner.ext.siteID,void 0!==t.banner.format)for(let r=0;r<t.banner.format.length;r++)void 0!==t.banner.format[r].ext&&void 0!==t.banner.format[r].ext.siteID&&(xt(e.imp[n],"ext.siteID",t.banner.format[r].ext.siteID),xt(e,"ext.ixdiag.usid",!0),delete e.imp[n].banner.format[r].ext.siteID)}if(Ai in t){const r=t.video.ext;void 0!==r&&void 0!==r.siteID&&delete e.imp[n].video.ext.siteID}if(vi in t){const r=t.native.ext;void 0!==r&&void 0!==r.siteID&&delete e.imp[n].native.ext.siteID}}})),e}function vl(e){let t=0;return void 0!==e.banner&&(t+=1),void 0!==e.video&&(t+=1),void 0!==e.native&&(t+=1),t}function Al(e){return null==e.device&&(e.device={}),e.device.h=window.screen.height,e.device.w=window.screen.width,e}lr(ml),s("ixBidAdapter");const Il="grid",wl="https://grid.bidswitch.net/hbjson",xl="tmguid",Cl=mi({bidderCode:Il}),El={trustx:{endpoint:"https://grid.bidswitch.net/hbjson?sp=trustx",syncurl:"https://x.bidswitch.net/sync?ssp=themediagrid",bidResponseExternal:{netRevenue:!1}},gridNM:{defaultParams:{multiRequest:!0}}};let Tl=!1;const Sl={code:Il,gvlid:686,aliases:["playwire","adlivetech","gridNM",{code:"trustx",skipPbsAliasing:!0}],supportedMediaTypes:[Ii,Ai],isBidRequestValid:e=>e&&Boolean(e.params.uid||e.params.secid),buildRequests:function(e,t){if(!e.length)return null;let n=null,r=null,i=null,o=null,s=null,a=null,d=null,c=!1,{bidderRequestId:l,gdprConsent:u,uspConsent:p,timeout:g,refererInfo:f,gppConsent:m}=t||{};const h=f?encodeURIComponent(f.page):"",b=parseInt(g)||null,v=[],A={},I=[],w=[],x=[];e.forEach((e=>{const s={bid:e,savedPrebidBid:null};if(!e.params.uid&&!e.params.secid)return;l||(l=e.bidderRequestId),i||(i=e.schain),o||(o=e.userIdAsEids),d||(d=El[e.bidder]&&El[e.bidder].endpoint);const{params:a,mediaTypes:u,bidId:p,adUnitCode:g,rtd:f,ortb2Imp:m}=e,{defaultParams:y}=El[e.bidder]||{},{secid:C,pubid:E,source:T,uid:S,keywords:_,forceBidder:k,multiRequest:O,content:R,video:D}={...y,...a},B=((e,t)=>{const n=e.video?"video":"banner";let r=parseFloat(t.params.bidFloor||t.params.floorcpm||0)||null;if("function"==typeof t.getFloor){const e=t.getFloor({currency:"USD",mediaType:n,size:t.sizes.map((e=>{let[t,n]=e;return{w:t,h:n}}))});"object"!=typeof e||"USD"!==e.currency||isNaN(parseFloat(e.floor))||(r=Math.max(r,parseFloat(e.floor)))}return r})(u||{},e),U=f&&f.jwplayer&&f.jwplayer.targeting;U&&!r&&U.content&&(r=U.content);let j={id:p.toString(),tagid:(C||S).toString(),ext:{divid:g.toString()}};if(m&&(m.instl&&(j.instl=parseInt(m.instl)||null),m.ext&&(j.ext.gpid=m.ext.gpid?.toString()||m.ext.data?.pbadslot?.toString()||m.ext.data?.adserver?.adslot?.toString(),m.ext.data&&(j.ext.data=m.ext.data))),Ne(_)||(n||(n=_),j.ext.bidder={keywords:_}),B&&(j.bidfloor=B),!u||u[Ii]){const t=((e,t)=>{const n=t.sizes||e.sizes;if(!n||!n.length)return;let r=n.map((e=>me(e))),i=me(n[0]);return r.length&&(i.format=r),i})(e,u?u[Ii]:{});t&&(j.banner=t)}if(u&&u[Ai]){const t=((e,t,n)=>{const{mind:r,maxd:i,size:o,playerSize:s,protocols:a,durationRangeSec:d=[],...c}={...t,...e};if(o&&De(o)){const e=o.split("x");2===e.length&&parseInt(e[0])&&parseInt(e[1])&&(c.w=parseInt(e[0]),c.h=parseInt(e[1]))}if(!c.w||!c.h){const e=((s||n||[]).toString().match(/^\d+,\d+/)||[])[0],t=e&&e.split(",").map((e=>parseInt(e)));t&&2===t.length&&Object.assign(c,me(t))}if(!c.w||!c.h)return;const l=r||d[0]||parseInt(c.minduration)||null,u=i||d[1]||parseInt(c.maxduration)||null;return l&&(c.minduration=l),u&&(c.maxduration=u),a&&a.length&&(c.protocols=a),c})(D,u[Ai],e.sizes);t&&(j.video=t)}if(j.banner||j.video)if(O){const n={tid:t?.ortb2?.source?.tid?.toString?.(),ext:{wrapper:"Prebid_js",wrapper_version:"8.47.0"}};e.schain&&(n.ext.schain=e.schain);const r={id:e.bidderRequestId&&e.bidderRequestId.toString(),site:{page:h},tmax:b,source:n,imp:[j]};E&&(r.site.publisher={id:E});const i=R||U&&U.content;i&&(r.site.content=i),I.push(r),w.push(T),x.push(s)}else A[p]=s,v.push(j);!c&&k&&El[k]&&(c=k)})),c=q.getConfig("forceBidderName")||c,c&&El[c]&&(d=El[c].endpoint,this.forceBidderName=c);const C={tid:t?.ortb2?.source?.tid?.toString?.(),ext:{wrapper:"Prebid_js",wrapper_version:"8.47.0"}};i&&(C.ext.schain=i);const E=v.length||!I.length?{id:l&&l.toString(),site:{page:h},tmax:b,source:C,imp:v}:null;return r&&(E.site.content=r),[...I,E].forEach((e=>{if(!e)return;s=null;const r=y(t,"ortb2.user.data");r&&r.length&&(s={data:[...r]}),u&&u.consentString&&(a={consent:u.consentString});const i=y(t,"ortb2.user.ext.device");i&&(a=a||{},a.device={...i}),o&&o.length&&(a=a||{},a.eids=[...o]),a&&Object.keys(a).length&&(s=s||{},s.ext=a);const d=Cl.getDataFromLocalStorage(xl)||(()=>{if(q.getConfig("localStorageWriteAllowed")){const e=ue().replace(/-/g,"");return Cl.setDataInLocalStorage(xl,e),e}return null})();d&&(s=s||{},s.id=d.toString()),s&&(e.user=s);const c=y(t,"ortb2.user.keywords")||null,l=y(t,"ortb2.site.keywords")||null;c&&(n=n||{},n.user=n.user||{},n.user.ortb2=[{name:"keywords",keywords:c.split(",")}]),l&&(n=n||{},n.site=n.site||{},n.site.ortb2=[{name:"keywords",keywords:l.split(",")}]),n&&(n=(e=>{const t={};return Object.keys(e).forEach((n=>{const r=e[n];if(r)if("site"===n||"user"===n){const e={};Object.keys(r).forEach((t=>{if(Array.isArray(r[t])){const n=[];r[t].forEach((e=>{if("object"==typeof e&&e.name){const t={name:e.name,segments:[]};Object.keys(e).forEach((n=>{Array.isArray(e[n])&&e[n].forEach((e=>{e&&("string"==typeof e?t.segments.push({name:n,value:e}):"segments"===n&&"string"==typeof e.name&&"string"==typeof e.value&&t.segments.push(e))}))})),t.segments.length&&n.push(t)}})),n.length&&(e[t]=n)}})),t[n]=e}else t[n]=r})),Object.keys(t).length&&t})(n),n&&(e.ext={keywords:n})),u&&u.gdprApplies&&(e.regs={ext:{gdpr:u.gdprApplies?1:0}});const g=y(t,"ortb2.regs")||{};if(m||g?.gpp){const t={gpp:m?.gppString??g?.gpp,gpp_sid:m?.applicableSections??g?.gpp_sid};e.regs=At(e?.regs??{},t)}p&&(e.regs||(e.regs={ext:{}}),e.regs.ext||(e.regs.ext={}),e.regs.ext.us_privacy=p),!0===q.getConfig("coppa")&&(e.regs||(e.regs={}),e.regs.coppa=1),g?.ext?.dsa&&(e.regs||(e.regs={ext:{}}),e.regs.ext||(e.regs.ext={}),e.regs.ext.dsa=g.ext.dsa);const f=y(t,"ortb2.site");if(f){const t=[...f.cat||[],...f.pagecat||[]].filter((e=>e&&"string"==typeof e));t.length&&(e.site.cat=t);const n=y(f,"content.genre");n&&"string"==typeof n&&(e.site.content={...e.site.content,genre:n});const r=y(f,"content.data");if(r&&r.length){const t=e.site.content||{};e.site.content=At(t,{data:r})}const i=y(f,"content.id");i&&(e.site.content={...e.site.content,id:i})}})),[...I.map(((e,t)=>{let n;const r=(d||wl).replace(/[?&]sp=([^?&=]+)/,((e,t)=>(t&&(n=t),"")));let i=w[t]||n;return{method:"POST",url:r+(r.indexOf("?")>-1?"&":"?")+"no_mapping=1"+(i?`&sp=${i}`:""),data:JSON.stringify(e),bidObject:x[t]}})),...E?[{method:"POST",url:d||wl,data:JSON.stringify(E),bidsMap:A}]:[]]},interpretResponse:function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:nn;e=e&&e.body;const r=[];let i;e?e.seatbid&&!e.seatbid.length&&(i="Response has empty seatbid array"):i="Response is empty";const o=this.forceBidderName||this.code;return!i&&e.seatbid&&e.seatbid.forEach((e=>{((e,t,n,r,i)=>{if(!e)return;let o;if(e.adid||(o="Bid from response has no adid parameter - "+JSON.stringify(e)),o||e.adm||e.nurl){const o=t.bidsMap?t.bidsMap[e.impid]:t.bidObject,{bid:d,savedPrebidBid:c}=o||{};if(d&&(s=e.price,!Ue(a=c&&c.cpm)||s>a||s===a&&Math.random()>.5)){const t={requestId:d.bidId,cpm:e.price,width:e.w,height:e.h,creativeId:e.adid,currency:"USD",netRevenue:!0,ttl:360,meta:{advertiserDomains:e.adomain?e.adomain:[]},dealId:e.dealid};o.savedPrebidBid=t,e.ext&&e.ext.bidder&&e.ext.bidder.grid&&e.ext.bidder.grid.demandSource&&(t.adserverTargeting={hb_ds:e.ext.bidder.grid.demandSource},t.meta.demandSource=e.ext.bidder.grid.demandSource),e.ext&&e.ext.dsa&&(t.meta.dsa=e.ext.dsa),"video"===e.content_type?(e.adm?(t.vastXml=e.adm,t.adResponse={content:t.vastXml}):e.nurl&&(t.vastUrl=e.nurl),t.mediaType=Ai,d.renderer||d.mediaTypes&&d.mediaTypes.video&&"outstream"!==d.mediaTypes.video.context||(t.renderer=((e,t,n)=>{const r=n.install({id:t.id,url:t.url,loaded:!1});try{r.setRender(_l)}catch(e){we("Prebid Error calling setRender on renderer",e)}return r})(0,{id:d.bidId,url:"https://acdn.adnxs.com/video/outstream/ANOutstreamVideo.js"},r))):(t.ad=e.adm,t.mediaType=Ii);const s=El[i]&&El[i].bidResponseExternal||{};n.push(At(t,s))}}else o="Bid from response has no adm parameter - "+JSON.stringify(e);var s,a;o&&xe(o)})((e=>(e?e.bid?e.bid[0]||xe("Array of bid objects is empty"):xe("Seatbid from response has no array of bid objects - "+JSON.stringify(e)):xe("Seatbid array from response has empty item"),e&&e.bid&&e.bid[0]))(e),t,r,n,o)})),i&&xe(i),r},getUserSyncs:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];const[r,,i,o]=t;if(!Tl&&r.pixelEnabled){let e="";i&&("boolean"==typeof i.gdprApplies&&(e+=`&gdpr=${Number(i.gdprApplies)}`),"string"==typeof i.consentString&&(e+=`&gdpr_consent=${i.consentString}`)),o&&(e+=`&us_privacy=${o}`);const t=this.forceBidderName||this.code,n=El[t]&&El[t].syncurl||"https://x.bidswitch.net/sync?ssp=themediagrid";return Tl=!0,{type:"image",url:n+e}}},ajaxCall:(e,t,n,r)=>(r.browsingTopics=!1,Jt(e,t,n,r)),onDataDeletionRequest:e=>{Sl.ajaxCall("https://media.grid.bidswitch.net/uspapi_delete_c2s",null,null,{method:"GET"})}};function _l(e){e.renderer.push((()=>{window.ANOutstreamVideo.renderAd({targetId:e.adUnitCode,adResponse:e.adResponse})}))}lr(Sl),s("gridBidAdapter");const kl={code:"pbrtb",gvlid:185,supportedMediaTypes:[Ii,Ai,vi],isBidRequestValid:e=>{let{params:t,mediaTypes:n,nativeOrtbRequest:r}=e;return!(!(t&&t.publisherId&&t.publisherName&&t.siteId&&t.tagId&&(null==t.size||/^[1-9]\d*x[1-9]\d*$/.test(t.size))&&(!n.native||r&&r.assets?.length&&(r.plcmttype||t.placementTypeId)))||n.video&&!n.video.placement&&!t.video?.placement)},buildRequests:(e,t)=>{const n=(e=>{const t=[];for(const n of e){const{mediaTypes:e,params:r}=n,i={id:n.bidId,tagid:r.tagId},o=Pl(r.size);if(e.banner&&o&&(i.banner=o),n.nativeOrtbRequest&&(i.native=Ul(n.nativeOrtbRequest,r)),e.video&&(i.video=jl(e.video,r,o)),!i.banner&&!i.native&&!i.video)continue;const s=y(n,"ortb2Imp.ext.gpid");if(s&&(i.ext={gpid:s}),t.push(i),t.length>=10)break}return t})(e);if(!n.length)return[];const{ortb2:r}=t;return{method:"POST",url:`${Ol}?x-security-token=13fb4b59-c626-4abf-a7af-d6901ec65309`,data:{id:t.bidderRequestId,device:Bl(r.device),imp:n,regs:Nl(t),Site:$l(r.site,e[0].params),user:{...r.user,ext:{eids:e[0].userIdAsEids}},test:0},bidderRequest:t}},interpretResponse:(e,t)=>{let{data:n,bidderRequest:r}=t;const i=e.body;if(!i?.seatbid)return[];const o=i.cur||"USD",s=[];for(const{bid:e}of i.seatbid)for(const t of e){const e={requestId:t.impid,cpm:t.price,currency:o,creativeId:t.crid,netRevenue:!0,ttl:300,mediaType:ql(t),meta:{advertiserDomains:t.adomain||[]}};switch(t.w&&(e.width=t.w),t.h&&(e.height=t.h),t.dealid&&(e.dealId=t.dealid),e.mediaType){case"native":{const i=n.imp.find((e=>{let{id:n}=e;return t.impid===n})).ext?.gpid||Qe(t.impid,[r]).adUnitCode,o=(a=t.adm,d=t.price,rt(a,{AUCTION_PRICE:d})).replace(/\$\{AD_PATH\}/g,`%23${i}`),{native:s}=JSON.parse(o);e.native={ortb:s};break}case"video":{const{video:r}=n.imp.find((e=>{let{id:n}=e;return t.impid===n}));e.width||=r.w,e.height||=r.h,t.adm&&(e.vastXml=t.adm),t.nurl&&(e.vastUrl=t.nurl),t.iurl&&(e.vastImpUrl=t.iurl);break}default:{e.ad=t.adm;const{banner:r}=n.imp.find((e=>{let{id:n}=e;return t.impid===n}));e.width||=r.w,e.height||=r.h;break}}s.push(e)}var a,d;return s}},Ol="https://api.bttrack.com/prebid",Rl=["api","linearity","minduration","maxduration","mimes","placement","playbackmethod","protocols","startdelay","w","h"];function Dl(e){return/(ios|ipod|ipad|iphone|android)/i.test(e)?1:2}function Bl(e){const{userAgent:t}=window.navigator,n=(e=>[{s:"Android",r:/Android/},{s:"iOS",r:/(iPhone|iPad|iPod)/},{s:"Mac OS X",r:/Mac OS X/},{s:"Mac OS",r:/(MacPPC|MacIntel|Mac_PowerPC|Macintosh)/},{s:"Linux",r:/(Linux|X11)/},{s:"Windows 10",r:/(Windows 10.0|Windows NT 10.0)/},{s:"Windows 8.1",r:/(Windows 8.1|Windows NT 6.3)/},{s:"Windows 8",r:/(Windows 8|Windows NT 6.2)/},{s:"Windows 7",r:/(Windows 7|Windows NT 6.1)/},{s:"Windows Vista",r:/Windows NT 6.0/},{s:"Windows Server 2003",r:/Windows NT 5.2/},{s:"Windows XP",r:/(Windows NT 5.1|Windows XP)/},{s:"UNIX",r:/UNIX/},{s:"Search Bot",r:/(nuhk|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask Jeeves\/Teoma|ia_archiver)/}].find((t=>t.r.test(e)))?.s||"unknown")(t);return{...e,devicetype:Dl(t),osv:n,os:n.split(" ",1)[0]}}function Ul(e,t){const n={ver:"1.2",eventtrackers:[{event:1,methods:[1,2]}],...e};return t.placementTypeId&&(n.plcmttype=t.placementTypeId),{request:JSON.stringify(n)}}function jl(e,t,n){return{api:[1,2,3,4,5],linearity:1,minduration:0,maxduration:300,mimes:["video/x-flv","video/mp4","video/webm; codecs=vp8, vorbis","application/javascript"],playbackmethod:[1],protocols:[1,2,3,4,5,6],startdelay:0,sequence:1,...n,...gt(e,Rl),...gt(t.video,[...Rl,"sequence"])}}function Pl(e){if(e){const t=e.split("x").map(Number);return{w:t[0],h:t[1]}}return null}function Nl(e){let{gdprConsent:t,uspConsent:n,ortb2:r}=e;return{coppa:r.regs?.coppa||0,ext:{gdpr:t?.gdprApplies&&t.consentString||0,us_privacy:n||"1---"}}}function $l(e,t){let{publisherId:n,publisherName:r,siteId:i}=t;return{...e,id:i,publisher:{...e.publisher,id:n,name:r}}}function ql(e){let{adm:t}=e;return t=t.trim(),"{"===t[0]?"native":t.endsWith("</VAST>")?"video":"banner"}lr(kl);let Ml=null;const zl=()=>!1!==Ml;(()=>{const e=document.createElement("video");e.src="data:video/mp4;base64,AAAAIGZ0eXBpc29tAAACAGlzb21pc28yYXZjMW1wNDEAAAAIZnJlZQAAADxtZGF0AAAAMGWIhAAV//73ye/Apuvb3rW/k89I/Cy3PsIqP39atohOSV14BYa1heKCYgALQC5K4QAAAwZtb292AAAAbG12aGQAAAAAAAAAAAAAAAAAAAPoAAAD6AABAAABAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAACMHRyYWsAAABcdGtoZAAAAAMAAAAAAAAAAAAAAAEAAAAAAAAD6AAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAEAAAAAAoAAAAFoAAAAAACRlZHRzAAAAHGVsc3QAAAAAAAAAAQAAA+gAAAAAAAEAAAAAAahtZGlhAAAAIG1kaGQAAAAAAAAAAAAAAAAAAEAAAABAAFXEAAAAAAAtaGRscgAAAAAAAAAAdmlkZQAAAAAAAAAAAAAAAFZpZGVvSGFuZGxlcgAAAAFTbWluZgAAABR2bWhkAAAAAQAAAAAAAAAAAAAAJGRpbmYAAAAcZHJlZgAAAAAAAAABAAAADHVybCAAAAABAAABE3N0YmwAAACvc3RzZAAAAAAAAAABAAAAn2F2YzEAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAoABaAEgAAABIAAAAAAAAAAEVTGF2YzYwLjMxLjEwMiBsaWJ4MjY0AAAAAAAAAAAAAAAY//8AAAA1YXZjQwFkAAr/4QAYZ2QACqzZQo35IQAAAwABAAADAAIPEiWWAQAGaOvjyyLA/fj4AAAAABRidHJ0AAAAAAAAAaAAAAGgAAAAGHN0dHMAAAAAAAAAAQAAAAEAAEAAAAAAHHN0c2MAAAAAAAAAAQAAAAEAAAABAAAAAQAAABRzdHN6AAAAAAAAADQAAAABAAAAFHN0Y28AAAAAAAAAAQAAADAAAABidWR0YQAAAFptZXRhAAAAAAAAACFoZGxyAAAAAAAAAABtZGlyYXBwbAAAAAAAAAAAAAAAAC1pbHN0AAAAJal0b28AAAAdZGF0YQAAAAEAAAAATGF2ZjYwLjE2LjEwMA==",e.setAttribute("playsinline","true"),e.muted=!0,e.play().then((()=>{Ml=!0,e.pause()})).catch((()=>{Ml=!1}))})();const Fl="teads",Ll=mi({bidderCode:Fl}),Vl={code:Fl,gvlid:132,supportedMediaTypes:["video","banner"],isBidRequestValid:e=>{let t=!1;if(void 0!==e.params){let n=Kl(Ke(e.params,"placementId")),r=Kl(Ke(e.params,"pageId"));t=n&&r}return t||xe("Teads placementId and pageId parameters are required. Bid aborted."),t},buildRequests:(e,t)=>{const n=e.map(Ql),r=window.top,i={referrer:Gl(t),pageReferrer:document.referrer,pageTitle:Hl().slice(0,300),pageDescription:Jl().slice(0,300),networkBandwidth:(o=window.navigator,o&&o.connection&&o.connection.downlink>=0?o.connection.downlink.toString():""),timeToFirstByte:Xl(window),data:n,deviceWidth:screen.width,deviceHeight:screen.height,devicePixelRatio:r.devicePixelRatio,screenOrientation:screen.orientation?.type,historyLength:r.history?.length,viewportHeight:r.visualViewport?.height,viewportWidth:r.visualViewport?.width,hardwareConcurrency:r.navigator?.hardwareConcurrency,deviceMemory:r.navigator?.deviceMemory,hb_version:"8.47.0",...Wl(e),...Yl(e)};var o;const s=e[0];s.schain&&(i.schain=s.schain);let a=t.gdprConsent;if(t&&a){let e="boolean"==typeof a.gdprApplies,t="string"==typeof a.consentString,n=e?((e,t)=>{let n=12;return e?t&&!t.isServiceSpecific&&(n=11):n=0,n})(a.gdprApplies,a.vendorData):22;i.gdpr_iab={consent:t?a.consentString:"",status:n,apiVersion:a.apiVersion}}t&&t.uspConsent&&(i.us_privacy=t.uspConsent);const d=y(s,"ortb2.device.sua");d&&(i.userAgentClientHints=d);const c=y(t,"ortb2.regs.ext.dsa");return c&&(i.dsa=c),{method:"POST",url:"https://a.teads.tv/hb/bid-request",data:JSON.stringify(i)}},interpretResponse:(e,t)=>{if(!(e=e.body).responses)return[];const n=zl();return e.responses.filter((e=>!e.needAutoplay||n)).map((e=>{const t={cpm:e.cpm,width:e.width,height:e.height,currency:e.currency,netRevenue:!0,ttl:e.ttl,meta:{advertiserDomains:e&&e.adomain?e.adomain:[]},ad:e.ad,requestId:e.bidId,creativeId:e.creativeId,placementId:e.placementId};return e.dealId&&(t.dealId=e.dealId),e?.ext?.dsa&&(t.meta.dsa=e.ext.dsa),t}))}};function Wl(e){const t={unifiedId2:"uid2.id",liveRampId:"idl_env",lotamePanoramaId:"lotamePanoramaId",id5Id:"id5id.uid",criteoId:"criteoId",yahooConnectId:"connectId",quantcastId:"quantcastId",epsilonPublisherLinkId:"publinkId",publisherFirstPartyViewerId:"pubcid",merkleId:"merkleId.id",kinessoId:"kpuid"};let n={};for(const r in t){const i=y(e,`0.userId.${t[r]}`);i&&(n[r]=i)}return n}function Gl(e){let t="";return e&&e.refererInfo&&e.refererInfo.page&&(t=e.refererInfo.page),t}function Hl(){try{const e=window.top.document.querySelector('meta[property="og:title"]');return window.top.document.title||e&&e.content||""}catch(e){const t=document.querySelector('meta[property="og:title"]');return document.title||t&&t.content||""}}function Jl(){let e;try{e=window.top.document.querySelector('meta[name="description"]')||window.top.document.querySelector('meta[property="og:description"]')}catch(t){e=document.querySelector('meta[name="description"]')||document.querySelector('meta[property="og:description"]')}return e&&e.content||""}function Xl(e){const t=e.performance||e.webkitPerformance||e.msPerformance||e.mozPerformance,n=t&&"function"==typeof t.getEntriesByType&&"[object Function]"===Object.prototype.toString.call(t.getEntriesByType)&&t.getEntriesByType("navigation")[0]&&t.getEntriesByType("navigation")[0].responseStart&&t.getEntriesByType("navigation")[0].requestStart&&t.getEntriesByType("navigation")[0].responseStart>0&&t.getEntriesByType("navigation")[0].requestStart>0&&Math.round(t.getEntriesByType("navigation")[0].responseStart-t.getEntriesByType("navigation")[0].requestStart);if(n)return n.toString();const r=t&&t.timing.responseStart&&t.timing.requestStart&&t.timing.responseStart>0&&t.timing.requestStart>0&&t.timing.responseStart-t.timing.requestStart;return r?r.toString():""}function Ql(e){const t={};let n=Ke(e.params,"placementId"),r=Ke(e.params,"pageId");const i=y(e,"ortb2Imp.ext.gpid"),o=y(e,"mediaTypes.video.plcmt");return t.sizes=(e=>ge((e=>{let t=y(e,"mediaTypes.video.playerSize"),n=y(e,"mediaTypes.video.sizes"),r=y(e,"mediaTypes.banner.sizes");return Be(r)||Be(t)||Be(n)?[r,n,t].reduce(((e,t)=>(Be(t)&&(Be(t[0])?t.forEach((t=>{e.push(t)})):e.push(t)),e)),[]):e.sizes})(e)))(e),t.bidId=pe("bidId",e),t.bidderRequestId=pe("bidderRequestId",e),t.placementId=parseInt(n,10),t.pageId=parseInt(r,10),t.adUnitCode=pe("adUnitCode",e),t.transactionId=e.ortb2Imp?.ext?.tid||"",i&&(t.gpid=i),o&&(t.videoPlcmt=o),t}function Kl(e){return parseInt(e)>0}function Yl(e){const t=y(e,"0.userId.teadsId");if(t)return{firstPartyCookieTeadsId:t};if(Ll.cookiesAreEnabled(null)){const e=Ll.getCookie("_tfpvi",null);if(e)return{firstPartyCookieTeadsId:e}}return{}}lr(Vl),s("teadsBidAdapter");const Zl="browsi",eu=mi({moduleType:dn,moduleName:Zl});let tu={},nu=null;const ru="browsiViewability";let iu=null,ou={};function su(e){nu=e,Re(iu)&&(iu(),iu=null)}function au(e){Ie(`Browsi RTD provider is fetching data for ${e}`);try{const t=nu&&nu.p||{};return e.reduce(((e,n)=>{ou[n]=ou[n]||0;const r=ou[n];if(!n)return e;const i=(e=>{const t=Ze()&&window.googletag.pubads().getSlots();return t&&t.length&&d(t,(t=>t.getSlotElementId()===e||t.getAdUnitPath()===e))||null})(n),o=i?((e,t)=>{if(e)try{const n=((e,t,n,r)=>{let i=e.p.replace(/['"]+/g,"").replace(/<DIV_ID>/g,t);return n&&(i=i.replace(/<AD_UNIT>/g,n)),r&&(i=i.replace(/<KEY_(\w+)>/g,r)),e.s&&(i=i.substring(e.s.s,e.s.e)),i})(e,t.getSlotElementId(),t.getAdUnitPath(),((e,n)=>n&&t.getTargeting(n).join("_")||"NA"));return n}catch(t){xe(`failed to evaluate: ${e}`)}return t.getSlotElementId()})(nu.pmd,i):n,s=t[o];if(!s)return e;if(s.ps){if(!((e,t)=>{if(!t||!t.length||!e)return!0;const n=e.getAdUnitPath();return-1!==t.indexOf(n)})(i,s.w))return e;e[n]=(e=>{const t=e<0?"NA":(Math.floor(10*e)/10).toFixed(2);let n={};return n[du()]=t.toString(),n})(((e,t)=>{if(!e||!Ue(t))return-1;if(Ue(e[t]))return e[t];if(Object.keys(e).length>1)for(;t>0;)if(Ue(e[--t]))return e[t];return-1})(s.ps,r))}return e}),{})}catch(e){return{}}}function du(){return(tu.keyName||nu&&nu.kn||ru).toString()}const cu={name:Zl,getTargetingData:(e,t,n,r)=>{const i=au(e),o=r.auctionId,s=nu&&"AD_REQUEST"===nu.bet;return e.forEach((e=>{if(Ue(ou[e])&&(ou[e]=ou[e]+1),s){const t=r.adUnits.find((t=>t.code===e)).transactionId;$t(I.BILLABLE_EVENT,{vendor:"browsi",type:"adRequest",billingId:ue(),transactionId:t,auctionId:o})}})),Ie("Browsi RTD provider returned targeting data",i,"for",e),i},init:e=>(tu=e.params,tu&&tu.siteKey&&tu.pubKey&&tu.url?function(){const e=window.top,t=e.document;let n=null;try{n=eu.getDataFromLocalStorage("__brtd")}catch(e){xe("unable to parse __brtd")}let r={sk:tu.siteKey,pk:tu.pubKey,sw:e.screen&&e.screen.width||-1,sh:e.screen&&e.screen.height||-1,url:`${t.location.protocol}//${t.location.host}${t.location.pathname}`,...n?{us:n}:{us:"{}"},...document.referrer?{r:document.referrer}:{},...document.title?{at:document.title}:{}};var i,o;o=`//${tu.url}/prebid?${i=r,Object.keys(i).map((e=>e+"="+encodeURIComponent(i[e]))).join("&")}`,Ht()(o,{success:(e,t)=>{if(200===t.status)try{const t=JSON.parse(e);su(t?{p:t.p,kn:t.kn,pmd:t.pmd,bet:t.bet}:{}),"PAGEVIEW"===t.bet&&window.addEventListener("browsi_pageview",(()=>{$t(I.BILLABLE_EVENT,{vendor:"browsi",type:"pageview",billingId:ue()})})),(e=>{let t=Zt(e.u,"browsi");t.async=!0,t.setAttribute("data-sitekey",tu.siteKey),t.setAttribute("data-pubkey",tu.pubKey),t.setAttribute("prebidbpt","true"),t.setAttribute("id","browsi-tag"),t.setAttribute("src",e.u),t.prebidData=tt(e),tu.keyName&&(t.prebidData.kn=tu.keyName)})(t)}catch(e){xe("unable to parse data"),su({})}else 204===t.status&&su({})},error:()=>{su({}),xe("unable to get prediction data")}})}():xe("missing params for Browsi provider"),!0),getBidRequestData:(e,t)=>{let n=e.adUnitCodes,r=e.adUnits||o().adUnits||[];n?r=r.filter((e=>a(n,e.code))):n=r.map((e=>e.code)),(e=>{nu?(iu=null,e()):iu=e})((()=>{const e=au(n);e&&r.forEach((t=>{const n=t.code;e[n]&&xt(t,"ortb2Imp.ext.data.browsi",{[du()]:e[n][du()]})})),t()}))}};yn("realTimeData",cu),s("browsiRtdProvider");const lu={ajax:Jt},uu=Object.values(I).filter((e=>e!==I.AUCTION_DEBUG));const pu=mi({moduleType:cn,moduleName:"asteriobid"}),gu="https://endpt.asteriobid.com/endpoint",fu="AsterioBid Analytics",mu=["utm_source","utm_medium","utm_campaign","utm_term","utm_content"];let hu,bu,yu,vu,Au=Ht(2e4),Iu={},wu={},xu=[],Cu=!1,Eu=Object.assign(function(e){let{url:t,analyticsType:n,global:r,handler:i}=e;const o=[];let s,a,d=!1,c=!0;const l=(()=>{let e,t=!1;const n=()=>{if(!t){t=!0;try{let e=0,t=0;for(;o.length>0;){e++;const n=o.length;if(o.shift()(),o.length>=n?t++:t=0,t>=10)return xe("Detected probable infinite loop, discarding events",o),void(o.length=0)}Ae(`${a} analytics: processed ${e} events`)}finally{t=!1}}};return()=>{null!=e&&(clearTimeout(e),e=null),e=setTimeout(n,100)}})();return Object.defineProperties({track:function(e){let{eventType:n,args:o}=e;"bundle"===this.getAdapterType()&&window[r](i,n,o),"endpoint"===this.getAdapterType()&&(e=>{let{eventType:n,args:r,callback:i}=e;lu.ajax(t,i,JSON.stringify({eventType:n,args:r}))})(...arguments)},enqueue:u,enableAnalytics:p,disableAnalytics:function(){Object.entries(s||{}).forEach((e=>{let[t,n]=e;jt(t,n)})),this.enableAnalytics=this._oldEnable?this._oldEnable:p,d=!1},getAdapterType:()=>n,getGlobal:()=>r,getHandler:()=>i,getUrl:()=>t},{enabled:{get:()=>d}});function u(e){let{eventType:t,args:n}=e;o.push((()=>{this.track({eventType:t,args:n})})),l()}function p(e){a=e?.provider;var t=this;if(c="object"!=typeof e||"object"!=typeof e.options||void 0===e.options.sampling||Math.random()<parseFloat(e.options.sampling),c){const n=(()=>{const{includeEvents:t=uu,excludeEvents:n=[]}=e||{};return new Set(Object.values(I).filter((e=>t.includes(e))).filter((e=>!n.includes(e))))})();Nt().forEach((e=>{if(!e||!n.has(e.eventType))return;const{eventType:r,args:i}=e;u.call(t,{eventType:r,args:i})})),s=Object.fromEntries(Array.from(n).map((e=>{const t=t=>this.enqueue({eventType:e,args:t});return Ut(e,t),[e,t]})))}else Ae(`Analytics adapter for "${r}" disabled by sampling`);this._oldEnable=this.enableAnalytics,this.enableAnalytics=()=>Ae(`Analytics adapter for "${r}" already enabled, unnecessary call to \`enableAnalytics\`.`),d=!0}}({url:gu,analyticsType:"endpoint"}),{track(e){let{eventType:t,args:n}=e;((e,t)=>{if(!Cu)return;try{t=t?JSON.parse(JSON.stringify(t)):{}}catch(e){}const n={};switch(n.timestamp=t.timestamp||Date.now(),n.eventType=e,e){case I.AUCTION_INIT:n.auctionId=t.auctionId,n.timeout=t.timeout,n.adUnits=t.adUnits&&t.adUnits.map(ku),n.bidderRequests=t.bidderRequests&&t.bidderRequests.map(Ru),Iu[n.auctionId]=n.timestamp,wu[n.auctionId]=n.timeout;break;case I.AUCTION_END:n.auctionId=t.auctionId,n.end=t.end,n.start=t.start,n.adUnitCodes=t.adUnitCodes,n.bidsReceived=t.bidsReceived&&t.bidsReceived.map(Ou),n.start=Iu[n.auctionId],n.end=Date.now();break;case I.BID_ADJUSTMENT:break;case I.BID_TIMEOUT:n.bidders=t&&t.map?t.map(Ou):t,n.duration=wu[n.auctionId];break;case I.BID_REQUESTED:n.auctionId=t.auctionId,n.bidderCode=t.bidderCode,n.doneCbCallCount=t.doneCbCallCount,n.start=t.start,n.bidderRequestId=t.bidderRequestId,n.bids=t.bids&&t.bids.map(Ou),n.auctionStart=t.auctionStart,n.timeout=t.timeout;break;case I.BID_RESPONSE:n.bidderCode=t.bidderCode,n.width=t.width,n.height=t.height,n.adId=t.adId,n.mediaType=t.mediaType,n.cpm=t.cpm,n.currency=t.currency,n.requestId=t.requestId,n.adUnitCode=t.adUnitCode,n.auctionId=t.auctionId,n.timeToRespond=t.timeToRespond,n.requestTimestamp=t.requestTimestamp,n.responseTimestamp=t.responseTimestamp,n.netRevenue=t.netRevenue,n.size=t.size,n.adserverTargeting=t.adserverTargeting;break;case I.BID_WON:n.auctionId=t.auctionId,n.adId=t.adId,n.adserverTargeting=t.adserverTargeting,n.adUnitCode=t.adUnitCode,n.bidderCode=t.bidderCode,n.height=t.height,n.mediaType=t.mediaType,n.netRevenue=t.netRevenue,n.cpm=t.cpm,n.requestTimestamp=t.requestTimestamp,n.responseTimestamp=t.responseTimestamp,n.size=t.size,n.width=t.width,n.currency=t.currency,n.bidder=t.bidder;break;case I.BIDDER_DONE:n.auctionId=t.auctionId,n.auctionStart=t.auctionStart,n.bidderCode=t.bidderCode,n.bidderRequestId=t.bidderRequestId,n.bids=t.bids&&t.bids.map(Ou),n.doneCbCallCount=t.doneCbCallCount,n.start=t.start,n.timeout=t.timeout,n.tid=t.tid,n.src=t.src;break;case I.SET_TARGETING:case I.REQUEST_BIDS:case I.ADD_AD_UNITS:break;case I.AD_RENDER_FAILED:n.bid=t.bid,n.message=t.message,n.reason=t.reason;break;default:return}var r;r=n,xu.push(r),Ie(`${fu} Event ${r.eventType}:`,r),r.eventType===I.AUCTION_END&&_u()})(t,n)}});function Tu(){let e=!1,t={};try{mu.forEach((n=>{let r=ke(n);""!==r&&(e=!0),t[n]=r})),!1===e?mu.forEach((e=>{let n=pu.getDataFromLocalStorage(`pm_${e}`);n&&0!==n.length&&(t[e]=n)})):mu.forEach((e=>{pu.setDataInLocalStorage(`pm_${e}`,t[e])}))}catch(e){xe(`${fu} Error`,e),t.error_utm=1}return t}function Su(){const e={domain:window.location.hostname};document.referrer&&(e.referrerDomain=bt(document.referrer).hostname);const t=Tr();return e.page=t.page,e.ref=t.ref,e}function _u(){if(Cu&&xu.length>0){const e={pageViewId:yu,ver:1,bundleId:hu.bundleId,events:xu,utmTags:Tu(),pageInfo:Su(),sampling:bu};xu=[],"version"in hu&&(e.version=hu.version),"tcf_compliant"in hu&&(e.tcf_compliant=hu.tcf_compliant),"adUnitDict"in hu&&(e.adUnitDict=hu.adUnitDict),"customParam"in hu&&(e.customParam=hu.customParam);const t=hu.url?hu.url:gu;Au(t,(()=>Ie(`${fu} sent events batch`)),"1:"+JSON.stringify(e),{contentType:"text/plain",method:"POST",withCredentials:!0})}}function ku(e){if(!e)return e;const t={};return t.code=e.code,t.sizes=e.sizes,t}function Ou(e){if(!e)return e;const t={};return t.auctionId=e.auctionId,t.bidder=e.bidder,t.bidderRequestId=e.bidderRequestId,t.bidId=e.bidId,t.crumbs=e.crumbs,t.cpm=e.cpm,t.currency=e.currency,t.mediaTypes=e.mediaTypes,t.sizes=e.sizes,t.transactionId=e.transactionId,t.adUnitCode=e.adUnitCode,t.bidRequestsCount=e.bidRequestsCount,t.serverResponseTimeMs=e.serverResponseTimeMs,t}function Ru(e){if(!e)return e;const t={};return t.auctionId=e.auctionId,t.auctionStart=e.auctionStart,t.bidderRequestId=e.bidderRequestId,t.bidderCode=e.bidderCode,t.bids=e.bids&&e.bids.map(Ou),t}Eu.originEnableAnalytics=Eu.enableAnalytics,Eu.enableAnalytics=e=>{hu=e.options||{},yu=hu.pageViewId||ue(),bu=hu.sampling||1,0===Math.floor(Math.random()*bu)?(Cu=!0,vu=setInterval(_u,1e3)):Ie(`${fu} isn't enabled because of sampling`),Eu.originEnableAnalytics(e)},Eu.originDisableAnalytics=Eu.disableAnalytics,Eu.disableAnalytics=()=>{Cu&&(_u(),clearInterval(vu),Eu.originDisableAnalytics())},li.registerAnalyticsAdapter({adapter:Eu,code:"asteriobid"}),Eu.getOptions=()=>hu,Eu.flush=_u,s("asteriobidAnalyticsAdapter");const Du="Invalid schain object found: ",Bu=" should be a string",Uu=" should be an Integer",ju=" should be an object",Pu=" should be an Array",Nu={STRICT:"strict",RELAXED:"relaxed",OFF:"off"},$u=[];qe(Nu,(e=>$u.push(e))),li.makeBidRequests.after((function(e,t){const n=q.getConfig("schain"),r=q.getBidderConfig();t.forEach((e=>{let t=e.bidderCode,i=(e=>r[e]&&r[e].schain||n)(t);e.bids.forEach((e=>{let n=function(e,t){let n=Nu.STRICT;if((e=>!(void 0===e||!je(e)&&(xe(Du+"the following schain config will not be used as schain is not an object.",e),1)))(e)){if(De(e.validation)&&-1!=$u.indexOf(e.validation)&&(n=e.validation),n===Nu.OFF)return e.config;if(((e,t)=>{let n="Detected something wrong within an schain config:",r="";function i(e){r+="\n"+e}function o(){!0===t?xe(n,e,r):we(n,e,r)}if(!je(e)&&(i("schain.config"+ju),o(),t))return!1;if(Ue(e.complete)&&pt(e.complete)||i("schain.config.complete"+Uu),De(e.ver)||i("schain.config.ver"+Bu),e.hasOwnProperty("ext")&&(je(e.ext)||i("schain.config.ext"+ju)),Be(e.nodes))e.nodes.forEach(((e,t)=>{De(e.asi)||i(`schain.config.nodes[${t}].asi`+Bu),De(e.sid)||i(`schain.config.nodes[${t}].sid`+Bu),Ue(e.hp)&&pt(e.hp)||i(`schain.config.nodes[${t}].hp`+Uu),e.hasOwnProperty("rid")&&(De(e.rid)||i(`schain.config.nodes[${t}].rid`+Bu)),e.hasOwnProperty("name")&&(De(e.name)||i(`schain.config.nodes[${t}].name`+Bu)),e.hasOwnProperty("domain")&&(De(e.domain)||i(`schain.config.nodes[${t}].domain`+Bu)),e.hasOwnProperty("ext")&&(je(e.ext)||i(`schain.config.nodes[${t}].ext`+ju))}));else if(i("schain.config.nodes"+Pu),o(),t)return!1;return!(r.length>0&&(o(),t))})(e.config,!(n!==Nu.STRICT)))return e.config;xe(Du+`due to the 'strict' validation setting, this schain config will not be passed to bidder '${t}'.  See above error for details.`)}return null}(i,t);n&&(e.schain=tt(n))}))})),e(t)})),ma({type:da,name:"sourceExtSchain",fn:(e,t,n)=>{if(!y(e,"source.ext.schain")){const t=y(n,"bidRequests.0.schain");t&&xt(e,"source.ext.schain",t)}}}),s("schain");const qu=new RegExp("^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$","i"),Mu=!!String.prototype.trim;function zu(e,t){return null!=e?t(e):e}function Fu(e){return"object"==typeof e?JSON.stringify(e):""+e}function Lu(e){return null!=e}function Vu(e){return!!e&&qu.test(Gu(e))}function Wu(e){return"[object Array]"===Object.prototype.toString.call(e)}function Gu(e){return Mu?(""+e).trim():(""+e).replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}function Hu(e){return"string"==typeof e}function Ju(e,t){return Hu(e)&&Hu(t)&&Gu(e.toLowerCase())===Gu(t.toLowerCase())}function Xu(e){return!!e&&"object"==typeof e&&!Wu(e)}function Qu(e){return!!e&&"function"==typeof e}function Ku(e){return function(e,t){return new Date((new Date).getTime()+e*t)}(e,864e5)}function Yu(e,t,n){if(Xu(t)){let r;return r="message"in t&&"string"==typeof t.message?new Error(n||t.message):new Error(n),r.name=e,"stack"in t&&"string"==typeof t.stack&&(r.stack=t.stack),"lineNumber"in t&&"number"==typeof t.lineNumber&&(r.lineNumber=t.lineNumber),"columnNumber"in t&&"number"==typeof t.columnNumber&&(r.columnNumber=t.columnNumber),r}{const t=Error(n);return t.name=e,t}}const Zu="li_errors";class ep{data;constructor(e){const t=parseInt(e.toString())||5;this.data={h:{},q:{},size:t}}on(e,t,n){const r={callback:t.bind(n),unbound:t};return this.data={...this.data,h:{...this.data.h,[e]:[...this.data.h[e]||[],r]}},(this.data.q[e]||[]).forEach((e=>t.call(n,e))),this}once(e,t,n){const r=this.data.q[e]||[];if(r.length>0)return t.call(n,r[0]),this;{const r=i=>{this.off(e,r),t.call(n,i)};return r._=t,this.on(e,r,n)}}emit(e,t){(this.data.h[e]||[]).forEach((e=>e.callback(t)));const n=this.data.q[e]||[];return this.data={...this.data,q:{...this.data.q,[e]:[...n.length<this.data.size?n:n.slice(1),t]}},this}off(e,t){const n=this.data.h[e],r=n&&t&&n.filter((e=>e.unbound!==t))||[];if(r.length)this.data={...this.data,h:{...this.data.h,[e]:r}};else{const{[e]:t,...n}=this.data.h;this.data={...this.data,h:n}}return this}emitErrorWithMessage(e,t,n){const r=Yu(e,n,t);return this.emit(Zu,r)}emitError(e,t){const n=Yu(e,t);return this.emit(Zu,n)}}for(var tp=[],np=0;np<64;)tp[np]=0|4294967296*Math.sin(++np%Math.PI);function rp(e){var t,n,r,i=[t=1732584193,n=4023233417,~t,~n],o=[],s=unescape(encodeURI(e))+"",a=s.length;for(e=--a/4+2|15,o[--e]=8*a;~a;)o[a>>2]|=s.charCodeAt(a)<<8*a--;for(np=s=0;np<e;np+=16){for(a=i;s<64;a=[r=a[3],t+((r=a[0]+[t&n|~t&r,r&t|~r&n,t^n^r,n^(t|~r)][a=s>>4]+tp[s]+~~o[np|15&[s,5*s+1,3*s+5,7*s][a]])<<(a=[7,12,17,22,5,9,14,20,4,11,16,23,6,10,15,21][4*a+s++%4])|r>>>-a),t,n])t=0|a[1],n=a[2];for(s=4;s;)i[--s]+=a[s]}for(e="";s<32;)e+=(i[s>>3]>>4*(1^s++)&15).toString(16);return e}function ip(e){var t,n,r,i,o,s=[],a=[n=1732584193,r=4023233417,~n,~r,3285377520],d=[],c=unescape(encodeURI(e))+"",l=c.length;for(d[e=--l/4+2|15]=8*l;~l;)d[l>>2]|=c.charCodeAt(l)<<8*~l--;for(t=l=0;t<e;t+=16){for(n=a;l<80;n=[n[4]+(s[l]=l<16?~~d[t+l]:2*c|c<0)+1518500249+[r&i|~r&o,c=341275144+(r^i^o),882459459+(r&i|r&o|i&o),c+1535694389][l++/5>>2]+((c=n[0])<<5|c>>>27),c,r<<30|r>>>2,i,o])c=s[l-3]^s[l-8]^s[l-14]^s[l-16],r=n[1],i=n[2],o=n[3];for(l=5;l;)a[--l]+=n[l]}for(c="";l<40;)c+=(a[l>>3]>>4*(7-l++)&15).toString(16);return c}for(var op,sp=18,ap=[],dp=[];sp>1;sp--)for(op=sp;op<320;)ap[op+=sp]=1;function cp(e,t){return 4294967296*Math.pow(e,1/t)|0}for(op=0;op<64;)ap[++sp]||(dp[op]=cp(sp,2),ap[op++]=cp(sp,3));function lp(e,t){return e>>>t|e<<-t}function up(e){var t=dp.slice(sp=op=0,8),n=[],r=unescape(encodeURI(e))+"",i=r.length;for(n[e=--i/4+2|15]=8*i;~i;)n[i>>2]|=r.charCodeAt(i)<<8*~i--;for(i=[];sp<e;sp+=16){for(cp=t.slice();op<64;cp.unshift(r+(lp(r=cp[0],2)^lp(r,13)^lp(r,22))+(r&cp[1]^cp[1]&cp[2]^cp[2]&r)))cp[3]+=r=0|(i[op]=op<16?~~n[op+sp]:(lp(r=i[op-2],17)^lp(r,19)^r>>>10)+i[op-7]+(lp(r=i[op-15],7)^lp(r,18)^r>>>3)+i[op-16])+cp.pop()+(lp(r=cp[4],6)^lp(r,11)^lp(r,25))+(r&cp[5]^~r&cp[6])+ap[op++];for(op=8;op;)t[--op]+=cp[op]}for(r="";op<64;)r+=(t[op>>3]>>4*(7-op++)&15).toString(16);return r}class pp{url;timeout;calls;eventBus;retries;constructor(e){this.url=e.collectorUrl??"https://rp.liadm.com",this.timeout=e.ajaxTimeout??0,this.calls=e.callHandler,this.eventBus=e.eventBus,this.retries=e.ajaxRetries??3}callBakers(e){try{const t=JSON.parse(e).bakers;if(Wu(t))for(let e=0;e<t.length;e++)this.calls.pixelGet(`${t[e]}?dtstmp=${Date.now()}`)}catch(t){this.eventBus.emitErrorWithMessage("CallBakers",`Error while calling bakers with ${e}`,t)}}sendState(e,t,n,r){if(e.sendsPixel()){r&&Qu(r)&&r();const i=e.asQuery().add("dtstmp",Date.now(),{prepend:!0}).toQueryString();n(`${this.url}/${t}${i}`)}}sendAjax(e,t={}){this.sendState(e,"j",(n=>{const r=i=>{this.calls.ajaxGet(n,(e=>{t.onLoad&&Qu(t.onLoad)&&t.onLoad(),this.callBakers(e)}),(n=>{i<=0?(this.sendPixel(e,t),this.eventBus.emitError("AjaxFailed",n)):r(i-1)}),this.timeout)};r(this.retries)}),t.onPreSend)}sendPixel(e,t={}){this.sendState(e,"p",(e=>this.calls.pixelGet(e,t.onLoad)),t.onPreSend)}}const gp="__li__evt_bus",fp="lips",mp="pre_lips",hp="_li_duid",bp=[],yp="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function vp(e){const t=(e=>{e=`${e}`;for(let t=0;t<e.length;t++)if(e.charCodeAt(t)>255)return null;let t="";for(let r=0;r<e.length;r+=3){const i=[void 0,void 0,void 0,void 0];i[0]=e.charCodeAt(r)>>2,i[1]=(3&e.charCodeAt(r))<<4,e.length>r+2?(i[1]|=e.charCodeAt(r+1)>>4,i[2]=(15&e.charCodeAt(r+1))<<2,i[2]|=e.charCodeAt(r+2)>>6,i[3]=63&e.charCodeAt(r+2)):e.length>r+1&&(i[1]|=e.charCodeAt(r+1)>>4,i[2]=(15&e.charCodeAt(r+1))<<2);for(let e=0;e<i.length;e++){const r=i[e];t+=void 0===r?"=":(n=r)>=0&&n<64?yp[n]:void 0}}var n;return t})(e);return t||""}const Ap=/[+/]|=+$/g,Ip={"+":"-","/":"_"};function wp(e){return Ip[e]||""}function xp(e){let t=null;const n=encodeURIComponent(e).replace(/%([0-9A-F]{2})/g,((e,t)=>String.fromCharCode(parseInt("0x"+t,16))));try{t=window&&Qu(window.btoa)?window.btoa:vp}catch(e){t=vp}return t(n).replace(Ap,wp)}const Cp=()=>/(\s+)?[a-f0-9]{32,64}(\s+)?/gi,Ep=new Map([[32,"md5"],[40,"sha1"],[64,"sha256"]]);function Tp(e){const t=Sp(e);return!!t&&Ep.has(t.length)}function Sp(e){const t=e.match(Cp());return t&&t.map(Gu)[0]}function _p(e){const t=e.toLowerCase();return{md5:rp(t),sha1:ip(t),sha256:up(t)}}const kp=()=>/\S+(@|%40)\S+\.\S+/;function Op(e){return kp().test(e)}function Rp(e){const t=e.match(kp());return t&&t.map(Gu)[0]}function Dp(e){const t=(e=>{const t=[],n=new RegExp("([\\w\\d.+-]+(@|%40)[\\w\\d-]+.[\\w\\d.-]+)","g");let r=n.exec(e);for(;r;)t.push(Gu(r[1])),r=n.exec(e);return t})(e),n=[];let r=e;for(let e=0;e<t.length;e++){const i=t[e],o=_p(i);r=r.replace(i,o.md5),n.push(o)}return{stringWithoutRawEmails:r,hashesFromOriginalString:n}}function Bp(e,t){return"string"==typeof t&&Op(Gu(t))?"*********":t}function Up(e){return(e=>"false"!==e&&("true"===e||e))((e=>"null"===e||"undefined"===e?null:e)((e=>isNaN(+e)?e:+e)(e)))}function jp(e,t){if(t in e){const n=e[t];return Wu(n)?n.map((e=>Up(Np(e)))):Up(Np(n))}}function Pp(e){let t,n,r;const i={};return e&&-1!==(t=e.indexOf("?"))&&(n=e.slice(t+1))&&(-1===(r=n.indexOf("#"))||(n=n.slice(0,r)))?(n.split("&").forEach((e=>{if(e){let t;const n=e.split("=");t=n[0];const r=2===n.length?n[1]:"true";if("[]"===t.slice(-2)&&(t=t.slice(0,-2)),t in i){const e=i[t];Wu(e)?e.push(r):i[t]=[e,r]}else i[t]=r}})),i):i}function Np(e){return e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)}class $p{hash;host;hostname;pathname;port;protocol;search;constructor(e){const t=e.match(/^(https?\:\/\/)?(([^:\/?#]*)(?:\:([0-9]+))?)([\/]{0,1}[^?#]*)(\?[^#]*|)(#.*|)$/);if(null===t)throw new TypeError(`Failed to parse URL: ${e}`);this.protocol=t[1]||"",this.host=t[2]||"",this.hostname=t[3]||"",this.port=t[4]||"",this.pathname=t[5]||"",this.search=t[6]||"",this.hash=t[7]||""}toString(){return`${this.protocol}${this.host}${this.pathname}${this.search}${this.hash}`}}const qp=["items","itemids"],Mp=["email","emailhash","hash","hashedemail"],zp=[e=>{const t=e.eventSource||{},n=Object.keys(t);for(const r of n){const n=r.toLowerCase();if(Mp.indexOf(n)>-1){const n=Gu(Fu(t[r])),i=Rp(n),o=Sp(n);if(i){const t=_p(Np(i));return Fp({hashedEmail:[t.md5,t.sha1,t.sha256]},e)}if(o&&Tp(o))return Fp({hashedEmail:[o.toLowerCase()]},e)}}return e},e=>{const t=e.eventSource||{};return Object.keys(t).forEach((e=>{const n=e.toLowerCase(),r=t[e];qp.indexOf(n)>-1&&Wu(r)&&r.length>10&&(r.length=10)})),{}}];function Fp(e,t){const n={};function r(e){return Xu(e)?e:{}}function i(e){return Object.keys(e)}const o=r(e),s=r(t);return i(o).forEach((e=>{n[e]=o[e]})),i(s).forEach((e=>{n[e]=s[e]})),n}class Lp{tuples;constructor(e=[]){this.tuples=e}add(e,t,n={}){const{stripEmpty:r=!0,prepend:i=!1}=n;return""===e||r&&""===t?this:i?(this.tuples.unshift([e,t]),this):(this.tuples.push([e,t]),this)}addOptional(e,t,n={}){return Lu(t)?this.add(e,t,n):this}addParamsMap(e){return Object.keys(e).forEach((t=>{const n=e[t];Lu(n)&&(Wu(n)?n.forEach((e=>this.add(t,e))):this.add(t,n))})),this}copy(){return new Lp(this.tuples.slice())}filteredCopy(e){return new Lp(this.tuples.filter((([t,n])=>e(t,n))))}toQueryString(){let e="";return this.tuples.forEach((([t,n])=>{const r=0===e.length?"?":"&";e=`${e}${r}${encodeURIComponent(t)}=${encodeURIComponent(n)}`})),e}}function Vp(e){return null===e?"":e}const Wp="full",Gp="no_path";function Hp(e){if(0!==e.length){const t=new $p(e);return t.pathname="",t.search="",t.toString()}}const Jp=["setemail","setemailhash","sethashedemail"];class Xp{data;eventBus;constructor(e,t){this.data=Xp.safeFiddle(e,t),this.eventBus=t}static safeFiddle(e,t){try{return Xu((n=JSON.parse(JSON.stringify(e))).eventSource)?zp.reduce(((e,t)=>Fp(e,t(e))),n):n}catch(e){return console.error(e),t.emitErrorWithMessage("StateCombineWith","Error while extracting event data",e),{}}var n}combineWith(e){return new Xp(Fp(this.data,e),this.eventBus)}sendsPixel(){const e=Xu(this.data.eventSource)?this.data.eventSource:{},t=Object.keys(e).filter((e=>"eventname"===e.toLowerCase()||"event"===e.toLowerCase())),n=t&&t.length>=1&&t[0],r=n&&Gu(e[n]);return!r||-1===Jp.indexOf(r.toLowerCase())}asQuery(){const e=this.data,t=(new Lp).addOptional("aid",e.appId).addOptional("did",e.distributorId).addOptional("se",zu(e.eventSource,(e=>xp(JSON.stringify(e,Bp))))).addOptional("duid",e.liveConnectId).addOptional("tv",e.trackerVersion);if(Lu(e.pageUrl)){const[n,r,i]=function(e){if(void 0===e.pageUrl||0===e.pageUrl.length)return["",!1,[]];if((e=>!(void 0!==e.urlCollectionMode&&e.urlCollectionMode!==Wp||void 0!==e.queryParametersFilter&&""!==e.queryParametersFilter))(e))return[e.pageUrl,!1,[]];const t=new $p(e.pageUrl),n=(e=>{const t=Pp(e),n=[];return Object.keys(t).forEach((e=>{n.push([e,jp(t,e)])})),n})(t.search),r=((e,t)=>t.urlCollectionMode===Gp&&e.pathname.length>1)(t,e),i=((e,t)=>{if(void 0===t.queryParametersFilter||""===t.queryParametersFilter)return[];const n=new RegExp(t.queryParametersFilter);return e.map((e=>e[0])).filter((e=>n.test(e)))})(n,e);return r&&(t.pathname="/"),i.length>0&&(t.search=((e,t)=>{const n=e.filter((e=>-1===t.indexOf(e[0]))).map((e=>`${e[0]}=${e[1]}`));return n.length>0?`?${n.join("&")}`:""})(n,i)),[t.toString(),r,i]}(e);t.add("pu",n).addOptional("pu_rp",r?"1":void 0).add("pu_rqp",i.join(","))}return t.addOptional("ae",zu(e.errorDetails,(e=>xp(JSON.stringify(e))))),Wu(e.retrievedIdentifiers)&&e.retrievedIdentifiers.forEach((e=>t.add(`ext_${e.name}`,e.value))),Wu(e.hashesFromIdentifiers)&&e.hashesFromIdentifiers.forEach((e=>t.add("scre",`${e.md5},${e.sha1},${e.sha256}`))),t.addOptional("li_did",e.decisionIds?.join(",")).addOptional("e",e.hashedEmail?.join(",")).addOptional("us_privacy",e.usPrivacyString).addOptional("wpn",e.wrapperName).addOptional("gdpr",zu(e.gdprApplies,(e=>e?"1":"0"))).addOptional("gdpr_consent",e.gdprConsent).addOptional("refr",e.referrer).addOptional("gpp_s",e.gppString).addOptional("gpp_as",e.gppApplicableSections?.join(",")).addOptional("cd",e.cookieDomain).addOptional("ic",Vp(e.resolvedIdCookie),{stripEmpty:!1}).addOptional("c",e.contextElements),t}}function Qp(e=window){return Zp((()=>e.top.document.referrer))}function Kp(e=window){const t=Zp((()=>e.location.ancestorOrigins))||[],n=[];let r,i=e;for(;i!==top;)n.push(i),i=i.parent;n.push(i);for(let e=n.length-1;e>=0&&!r;e--)r=Zp((()=>n[e].location.href)),0!==e&&(r||(r=Zp((()=>n[e-1].document.referrer))),r||(r=t[e-1]));return r}function Yp(e,t,n){if(!e&&t&&""!==t&&n){const e=((e,t)=>{const n=window.document.querySelectorAll(e);let r="";for(let e=0;e<n.length;e++){const o=r+Dp(n[e].outerHTML).stringWithoutRawEmails;if(i=o,!(Math.ceil(4*new Blob([i]).size/3)<=t))return r;r=o}var i;return r})(t,n);return xp(e)}return""}function Zp(e){try{return e()}catch(e){return}}const eg=e=>({...e,pageUrl:Kp(),referrer:Qp(),contextElements:Yp(e.privacyMode,e.contextSelectors,e.contextElementsLength)});function tg(e){let t=[];e&&(Wu(e)?t=e:Hu(e)&&(t=e.split(",")));for(let e=0;e<t.length;e++)t[e]=t[e].trim();return t}function ng(e,t){const n=[];let r=[];for(let i=0;i<e.length;i++){const o=e[i],s=t.getCookie(o)||t.getDataFromLocalStorage(o);if(s){const e=Dp(Fu(s));n.push({name:o,value:e.stringWithoutRawEmails}),r=r.concat(e.hashesFromOriginalString)}}return{retrievedIdentifiers:n,hashesFromIdentifiers:rg(r)}}function rg(e){const t=new Set,n=[];for(let r=0;r<e.length;r++)t.has(e[r].md5)||(n.push(e[r]),t.add(e[r].md5));return n}const ig=e=>({...e,privacyMode:!!e.gdprApplies||(e.gppApplicableSections??[]).indexOf(2)>-1});function og(e,t){if(e&&e.appId&&e.distributorId){const n=e.distributorId;delete e.distributorId,t.emitError("AppIdAndDistributorIdPresent",new Error(`Event contains both appId: ${e.appId} and distributorId: ${n}. Ignoring distributorId`))}return e}const sg="idCookie";class ag{eventBus;calls;idexConfig;externalIds;source;publisherId;url;timeout;requestedAttributes;query;privacyMode;resolvedIdCookie;generateIdCookie;peopleVerifiedId;pageUrl;constructor(e,t,n){const r=e||{identityResolutionConfig:{}};this.eventBus=n,this.calls=t,this.idexConfig=r.identityResolutionConfig||{},this.externalIds=r.retrievedIdentifiers||[],this.source=this.idexConfig.source||"unknown",this.publisherId=this.idexConfig.publisherId||"any",this.url=this.idexConfig.url||"https://idx.liadm.com/idex",this.timeout=this.idexConfig.ajaxTimeout||r.ajaxTimeout||5e3,this.requestedAttributes=this.idexConfig.requestedAttributes||bp,this.privacyMode=r.privacyMode??!1,this.resolvedIdCookie=r.resolvedIdCookie,this.generateIdCookie="generated"===this.idexConfig.idCookieMode,this.peopleVerifiedId=r.peopleVerifiedId,this.pageUrl=r.pageUrl,this.query=(new Lp).addOptional("duid",r.peopleVerifiedId).addOptional("us_privacy",r.usPrivacyString).addOptional("gdpr",zu(r.gdprApplies,(e=>e?1:0))).addOptional("gdpr_consent",r.gdprConsent).addOptional("did",r.distributorId).addOptional("gpp_s",r.gppString).addOptional("gpp_as",r.gppApplicableSections?.join(",")).addOptional("cd",r.cookieDomain).addOptional("ic",Vp(r.resolvedIdCookie),{stripEmpty:!1}).addOptional("pu",zu(r.pageUrl,Hp)),this.externalIds.forEach((e=>{this.query.add(e.name,e.value)})),this.requestedAttributes.forEach((e=>{this.query.add("resolve",e)}))}attributeResolutionAllowed(e){return"uid2"===e?!this.privacyMode:e!==sg}filterParams(e){return e.filteredCopy(((e,t)=>"resolve"!==e||!!Hu(t)&&this.attributeResolutionAllowed(t)))}enrichExtraIdentifiers(e,t){const n=t.tuples.filter((([e])=>"resolve"===e)).map((([,e])=>e)),r={...e};var i;return i=sg,n.indexOf(i)>-1&&(this.generateIdCookie&&this.peopleVerifiedId?r[sg]=this.peopleVerifiedId:this.resolvedIdCookie&&(r[sg]=this.resolvedIdCookie)),r}responseReceived(e,t){return(n,r)=>{let i={};if(n)try{const e=JSON.parse(n);Xu(e)&&(i=e)}catch(e){console.error("Error parsing response",e),this.eventBus.emitError("IdentityResolverParser",e)}const o=(e=>{if(Xu(e)&&"getResponseHeader"in e&&Qu(e.getResponseHeader)){const t=e.getResponseHeader("expires");if(t)return new Date(t)}})(r);e(this.enrichExtraIdentifiers(i,t),{expiresAt:o})}}buildUrl(e){return`${this.url}/${this.source}/${this.publisherId}${this.filterParams(e).toQueryString()}`}getUrl(e){const t=this.query.copy().addParamsMap(e??{});return this.buildUrl(t)}resolve(e,t,n){try{const r=this.query.copy().addParamsMap(n??{});this.calls.ajaxGet(this.buildUrl(r),this.responseReceived(e,r),t,this.timeout)}catch(e){console.error("IdentityResolve",e),t&&Qu(t)&&t(e),this.eventBus&&this.eventBus.emitError("IdentityResolve",e)}}}function dg(e=5){return function(e){return new ep("number"==typeof e&&e>=0?e:5)}(e)}function cg(e){const t=window[e].eventBus||window[gp];return Qu((n=t).emitErrorWithMessage)&&Qu(n.emitError)||(n.emitErrorWithMessage=(e,t,r={})=>{const i=Yu(e,t,r);return n.emit(Zu,i)},n.emitError=(e,t)=>n.emitErrorWithMessage(e,t.message,t)),t;var n}const lg="_li_dcdm_c";function ug(e){const t=e.getCookie(lg);if(t)return t;const n=document.domain||document.location&&document.location.host||window&&window.location&&window.location.host||"localhost",r=n.split(".");for(let t=r.length;t>0;t--){const n=`.${r.slice(t-1,r.length).join(".")}`;if(e.setCookie(lg,n,void 0,"Lax",n),e.getCookie(lg))return n}return`.${n}`}const pg={cookie:"cookie",localStorage:"ls",none:"none",disabled:"disabled"},gg=e=>{const t=e.privacyMode?pg.disabled:e.storageStrategy||pg.cookie;return{...e,storageStrategy:t}},fg=Ku(30),mg="li_did",hg="lidids.",bg=(e,t,n)=>n.indexOf(e)===t,yg=e=>e&&Gu(e).length>0;const vg="0123456789ABCDEFGHJKMNPQRSTVWXYZ",Ag=vg.length,Ig=Math.pow(2,48)-1,wg=10,xg=16,Cg=(()=>{const e="undefined"!=typeof window?window:null,t=e&&(e.crypto||e.msCrypto);return t?()=>{const e=new Uint8Array(1);return t.getRandomValues(e),e[0]/255}:()=>Math.random()})();function Eg(){let e=Math.floor(Cg()*Ag);return e===Ag&&(e=Ag-1),vg.charAt(e)}function Tg(){return function(e,t){if(e>Ig)throw(e=>{const t=new Error(e);return t.source="Ulid",t})("cannot encode time greater than "+Ig);let n,r="";for(;t>0;t--)n=e%Ag,r=vg.charAt(n)+r,e=(e-n)/Ag;return r}(Date.now(),wg)+(e=>{let t="";for(;e>0;e--)t=Eg()+t;return t})(xg)}const Sg="_lc2_fpi";const _g=120,kg={errorDetails:{message:"Unknown message",name:"Unknown name"}};function Og(e){try{const t=1*e;return isNaN(t)?void 0:t}catch{}}function Rg(e){try{return Hu(e)&&e.length&&e.length>_g?`${e.substr(0,_g)}...`:`${e}`}catch{}}function Dg(e){return Xu(e)?{errorDetails:{message:Rg(e.message)||"",name:Rg(e.name)||"",stackTrace:Rg(e.stack),lineNumber:Og(e.lineNumber),columnNumber:Og(e.columnNumber),fileName:Rg(e.fileName)}}:kg}const Bg=()=>{};class Ug{obj;name;errors;eventBus;constructor(e,t,n){this.obj=e,this.name=t,this.errors=[],this.eventBus=n}wrap(e){if(Xu(this.obj)){const t=this.obj[e];if(Qu(t))return(...n)=>{try{return t.call(this.obj,...n)}catch(t){this.eventBus.emitErrorWithMessage(this.name,`Failed calling ${e}`,t)}}}return this.errors.push(e),Bg}reportErrors(){this.errors.length>0&&this.eventBus.emitErrorWithMessage(this.name,`The functions '${JSON.stringify(this.errors)}' were not provided`)}}const jg=()=>{};function Pg(e,t,n){return Ju(t,pg.disabled)?jg:e.wrap(n)}function Ng(e,t,n){return Ju(t,pg.none)?jg:Pg(e,t,n)}class $g{minimalFunctions;constructor(e,t){this.minimalFunctions={getCookie:Pg(t,e,"getCookie"),getDataFromLocalStorage:Pg(t,e,"getDataFromLocalStorage"),localStorageIsEnabled:Ng(t,e,"localStorageIsEnabled")}}static make(e,t,n){const r=new Ug(t,"ReadOnlyStorageHandler",n),i=new $g(e,r);return r.reportErrors(),i}localStorageIsEnabled(){return!!this.minimalFunctions.localStorageIsEnabled()}getCookie(e){return this.minimalFunctions.getCookie(e)||null}getDataFromLocalStorage(e){return this.minimalFunctions.getDataFromLocalStorage(e)||null}}class qg extends $g{storageStrategy;functions;constructor(e,t){super(e,t),this.storageStrategy=e,this.functions={setCookie:Ng(t,e,"setCookie"),removeDataFromLocalStorage:Ng(t,e,"removeDataFromLocalStorage"),setDataInLocalStorage:Ng(t,e,"setDataInLocalStorage"),findSimilarCookies:Pg(t,e,"findSimilarCookies")}}static make(e,t,n){const r=new Ug(t,"StorageHandler",n),i=new qg(e,r);return r.reportErrors(),i}setCookie(e,t,n,r,i){this.functions.setCookie(e,t,n,r,i)}setDataInLocalStorage(e,t){this.functions.setDataInLocalStorage(e,t)}removeDataFromLocalStorage(e){this.functions.removeDataFromLocalStorage(e)}findSimilarCookies(e){return this.functions.findSimilarCookies(e)||[]}}class Mg extends Error{constructor(e){super(e),this.name="ParseError"}}class zg{handler;cookieDomain;eventBus;constructor(e){this.handler=e.storageHandler,this.cookieDomain=e.cookieDomain,this.eventBus=e.eventBus}deleteCookie(e){this.handler.setCookie(e,"",new Date(0),"Lax",this.cookieDomain)}parseMetaRecord(e){const t=JSON.parse(e);if(!Xu(t))throw new Mg("Meta record is not an object");let n;if("e"in t&&(n=new Date(t.e),isNaN(n.getTime())))throw new Mg("Invalid expiresAt");if(!("w"in t))throw new Mg("Missing writtenAt");const r=new Date(t.w);if(isNaN(r.getTime()))throw new Mg("Invalid writtenAt");return{expiresAt:n,writtenAt:r}}serializeMetaRecord(e){let t;return e.expiresAt&&(t=e.expiresAt.getTime()),JSON.stringify({w:e.writtenAt.getTime(),e:t})}getCookieRecord(e,t){const n=this.handler.getCookie(t);if(!n||0===n.length)return null;let r;try{r=this.parseMetaRecord(n)}catch(n){return this.eventBus.emitErrorWithMessage("Cache","Failed reading meta from cookies",n),this.deleteCookie(e),this.deleteCookie(t),null}const i=r.expiresAt;if(i&&i.getTime()<=Date.now())return null;const o=this.handler.getCookie(e);return o?{data:o,meta:r}:null}getLSRecord(e,t){const n=this.handler.getDataFromLocalStorage(t);if(!n||0===n.length)return null;let r;try{r=this.parseMetaRecord(n)}catch(n){return this.eventBus.emitErrorWithMessage("Cache","Failed reading meta from ls",n),this.handler.removeDataFromLocalStorage(e),this.handler.removeDataFromLocalStorage(t),null}const i=r.expiresAt;if(i&&i.getTime()<=Date.now())return this.handler.removeDataFromLocalStorage(e),this.handler.removeDataFromLocalStorage(t),null;const o=this.handler.getDataFromLocalStorage(e);return o?{data:o,meta:r}:null}get(e){const t=Fg(e),n=this.getCookieRecord(e,t),r=this.getLSRecord(e,t);return n&&r?n.meta.writtenAt.getTime()===r.meta.writtenAt.getTime()?n:n.meta.writtenAt>r.meta.writtenAt?(this.handler.setDataInLocalStorage(e,n.data),this.handler.setDataInLocalStorage(t,this.serializeMetaRecord(n.meta)),n):(this.handler.setCookie(e,r.data,r.meta.expiresAt,"Lax",this.cookieDomain),this.handler.setCookie(t,this.serializeMetaRecord(r.meta),r.meta.expiresAt,"Lax",this.cookieDomain),r):n?(this.handler.setDataInLocalStorage(e,n.data),this.handler.setDataInLocalStorage(t,this.serializeMetaRecord(n.meta)),n):r?(this.handler.setCookie(e,r.data,r.meta.expiresAt,"Lax",this.cookieDomain),this.handler.setCookie(t,this.serializeMetaRecord(r.meta),r.meta.expiresAt,"Lax",this.cookieDomain),r):null}set(e,t,n){const r=Fg(e),i=this.serializeMetaRecord({writtenAt:new Date,expiresAt:n});this.handler.setDataInLocalStorage(e,t),this.handler.setDataInLocalStorage(r,i);const o=n||Ku(730);this.handler.setCookie(e,t,o,"Lax",this.cookieDomain),this.handler.setCookie(r,i,o,"Lax",this.cookieDomain)}}function Fg(e){return`${e}_meta`}const Lg=()=>{};function Vg(e,t,n){return t?Lg:e.wrap(n)}class Wg{functions;constructor(e,t,n){const r=new Ug(e,"CallHandler",t);this.functions={ajaxGet:Vg(r,n,"ajaxGet"),pixelGet:Vg(r,n,"pixelGet")},r.reportErrors()}ajaxGet(e,t,n,r){this.functions.ajaxGet(e,t,n,r)}pixelGet(e,t){this.functions.pixelGet(e,t)}}function Gg(e){return t=>"cookie"===t.idCookie?.strategy&&"string"==typeof t.idCookie?.name?{...t,resolvedIdCookie:e.getCookie(t.idCookie.name)}:"localStorage"===t.idCookie?.strategy&&"string"==typeof t.idCookie?.name?{...t,resolvedIdCookie:e.getDataFromLocalStorage(t.idCookie.name)}:t}const Hg={};function Jg(e,t,n,r){if(e&&Xu(e))if("config"in e)r.emitErrorWithMessage("StrayConfig","Received a config after LC has already been initialised",new Error(JSON.stringify(e)));else{const i=new Xp(n,r),o=i.combineWith({eventSource:e});Hg.hashedEmail=Hg.hashedEmail||o.data.hashedEmail;const s=Fp({eventSource:e},Hg),a=()=>r.emit(mp,"0"),d=()=>r.emit(fp,n);t.sendAjax(i.combineWith(s),{onPreSend:a,onLoad:d})}else r.emitErrorWithMessage("EventNotAnObject","Received event was not an object",new Error(e))}function Xg(e,t,n,r){try{const i={...og(e,r),identifiersToResolve:e.identifiersToResolve||[],contextSelectors:e.contextSelectors||"",contextElementsLength:e.contextElementsLength||0},o=eg(gg(ig(i))),s=new Wg(n,r,o.privacyMode),a=qg.make(o.storageStrategy,t,r),d=(e=>t=>({...t,cookieDomain:ug(e)}))(a)(o),c=new zg({storageHandler:a,eventBus:r,cookieDomain:d.cookieDomain}),l=Gg(a)(function(e,t){return n=>{let r;const i=e.get(Sg);if(i)r=i.data;else{const i=t.getCookie(Sg);if(i)e.set(Sg,i),r=i;else{const t=`${((e,t=12)=>ip(e.replace(/^\./,"")).substring(0,t))(n.cookieDomain)}--${Tg()}`.toLocaleLowerCase();e.set(Sg,t),r=e.get(Sg)?.data}}return r&&t.setDataInLocalStorage(hp,r),{...n,liveConnectId:r,peopleVerifiedId:r}}}(c,a)(function(e,t){return n=>{function r(e,n){try{return n()}catch(n){return t.emitErrorWithMessage("DecisionsResolve",e,n),[]}}const i=r("Error while extracting new decision ids",(()=>[].concat(n.pageUrl&&((e,t)=>jp(Pp(e),t))(n.pageUrl,mg)||[]).map(Gu).filter(yg).filter(Vu).filter(bg))),o=r("Error while retrieving stored decision ids",(()=>e.findSimilarCookies(hg).map(Gu).filter(yg).filter(Vu)));return i.forEach((r=>{try{(i=r)&&e.setCookie(`${hg}${i}`,i,fg,"Lax",n.cookieDomain)}catch(e){t.emitErrorWithMessage("DecisionsResolve","Error while storing new decision id",e)}var i})),{...n,decisionIds:i.concat(o).filter(bg)}}}(a,r)(((e,t)=>n=>{try{return{...n,...ng(tg(n.identifiersToResolve),e)}}catch(e){return t.emitError("IdentifiersEnricher",e),{...n,retrievedIdentifiers:[],hashesFromIdentifiers:[]}}})(a,r)(d)))),u=new pp({collectorUrl:i.collectorUrl,ajaxTimeout:i.ajaxTimeout,eventBus:r,callHandler:s});((e,t,n)=>{try{n.on(Zu,(r=>{t.sendPixel(new Xp({...e,...Dg(r)},n))}))}catch(e){console.error("handlers.error.register",e)}})(l,u,r);const p=new ag(l,s,r),g=(...e)=>((e,t,n,r)=>{try{e.forEach((e=>{const i=e;Wu(i)?i.forEach((e=>Jg(e,t,n,r))):Jg(i,t,n,r)}))}catch(e){console.error("Error sending events",e),r.emitErrorWithMessage("LCPush","Failed sending an event",e)}})(e,u,l,r);return{push:g,fire:()=>g({}),peopleVerifiedId:l.peopleVerifiedId,ready:!0,resolve:p.resolve.bind(p),resolutionCallUrl:p.getUrl.bind(p),config:i,eventBus:r,storageHandler:a,cache:c}}catch(e){console.error(e),r.emitErrorWithMessage("LCConstruction","Failed to build LC",e)}}function Qg(e,t,n,r){const i=Xu(e)&&e||{},o=r||dg();let s;try{s=i.globalVarName?function(e,t,n,r){const i=window[e.globalVarName]||[],o=(e=>{try{if(window&&window[e.globalVarName]&&window[e.globalVarName].ready){const t=window[e.globalVarName].config&&((e,t)=>{if(e.appId!==t.appId||e.wrapperName!==t.wrapperName||e.collectorUrl!==t.collectorUrl)return{appId:[e.appId,t.appId],wrapperName:[e.wrapperName,t.wrapperName],collectorUrl:[e.collectorUrl,t.collectorUrl]}})(window[e.globalVarName].config,e);if(t){const n=new Error;n.name="ConfigSent",n.message="Additional configuration received";const r=cg(e.globalVarName);window[e.globalVarName].eventBus=r,r.emitErrorWithMessage("LCDuplication",JSON.stringify(t),n)}return window[e.globalVarName]}}catch(e){console.error("Could not initialize error bus")}})(e)||Xg(e,t,n,r)||i;if(Wu(i))for(let e=0;e<i.length;e++)o.push(i[e]);return window[o.config.globalVarName]=o,window.liQ_instances=window.liQ_instances||[],0===window.liQ_instances.filter((e=>e.config.globalVarName===o.config.globalVarName)).length&&window.liQ_instances.push(o),o}(i,t,n,o):((e,t,n,r)=>{const i=Xg(e,t,n,r);return window.liQ_instances=window.liQ_instances||[],window.liQ_instances.push(i),i})(i,t,n,o)}catch(e){console.error(e),o.emitErrorWithMessage("LCConstruction","Failed to build LC",e)}return s}function Kg(e,t){const n=Wu(e)?e:Fu(e).split(","),r=[];for(let e=0;e<n.length;e++){const o=Gu(n[e]),s=t.getCookie(o)||t.getDataFromLocalStorage(o);!s||(i=Fu(s),kp().test(i))||Op(Fu(s))||r.push({name:o,value:Fu(s)})}var i;return r}function Yg(e,t,n,r,i){try{const o={...og(e,r),identifiersToResolve:e.identifiersToResolve||[]},s=gg(ig(o)),a=$g.make(s.storageStrategy,t,r),d=new Wg(n,r,s.privacyMode),c=((e,t)=>n=>{try{return{...n,retrievedIdentifiers:Kg(n.identifiersToResolve,e)}}catch(e){return t.emitError("IdentifiersEnrich",e),{...n,retrievedIdentifiers:[]}}})(a,r)(Gg(a)(((e,t)=>n=>{try{return{...n,peopleVerifiedId:n.peopleVerifiedId||e.getDataFromLocalStorage(hp)||void 0}}catch(e){return t.emitError("PeopleVerifiedEnrich",e),n}})(a,r)(s))),l=new ag(c,d,r);return{push:e=>i(e),fire:()=>i({}),peopleVerifiedId:c.peopleVerifiedId,ready:!0,resolve:l.resolve.bind(l),resolutionCallUrl:l.getUrl.bind(l),config:o,eventBus:r,storageHandler:a}}catch(e){console.error(e)}}function Zg(e,t,n,r){const i=Xu(e)&&e||{},o=r||dg();try{return i.globalVarName?((e,t,n,r)=>{const i=window[e.globalVarName]=window[e.globalVarName]||[],o=Yg(e,t,n,r,i.push.bind(i));return window.liQ_instances=window.liQ_instances||[],0===window.liQ_instances.filter((e=>e.config.globalVarName===o.config.globalVarName)).length&&window.liQ_instances.push(o),o})(i,t,n,o):((e,t,n,r)=>{const i=Yg(e,t,n,r,(()=>{}));return window.liQ_instances=window.liQ_instances||[],window.liQ_instances.push(i),i})(i,t,n,o)}catch(e){console.error(e)}return{}}const ef="liveIntentId",tf="liveintent.com",nf=mi({moduleType:an,moduleName:ef}),rf={nonId:!0},of={ajaxGet:(e,t,n,r)=>{Ht(r)(e,{success:t,error:n},void 0,{method:"GET",withCredentials:!0})},pixelGet:(e,t)=>Le(e,t)};let sf=!1,af=null;function df(){sf=!0}function cf(e){if(af)return af;const t={publisherId:(e=e||{}).publisherId||"any",requestedAttributes:(n=e.requestedAttributesOverrides,(e=>Object.entries(e).flatMap((e=>{let[t,n]=e;return"boolean"==typeof n&&n?[t]:[]})))("object"==typeof n?{...rf,...n}:rf))};var n;e.url&&(t.url=e.url),t.ajaxTimeout=e.ajaxTimeout||5e3;const r=(e=>{const t={};return(e=e||{}).appId&&(t.appId=e.appId),e.fpiStorageStrategy&&(t.storageStrategy=e.fpiStorageStrategy),e.fpiExpirationDays&&(t.expirationDays=e.fpiExpirationDays),e.collectorUrl&&(t.collectorUrl=e.collectorUrl),t.ajaxTimeout=e.ajaxTimeout||5e3,t})(e.liCollectConfig);!r.appId&&e.distributorId?(r.distributorId=e.distributorId,t.source=e.distributorId):t.source=e.partner||"prebid",r.wrapperName="prebid",r.trackerVersion="8.47.0",r.identityResolutionConfig=t,r.identifiersToResolve=e.identifiersToResolve||[],r.fireEventDelay=e.fireEventDelay;const i=Rr.getConsentData();i&&(r.usPrivacyString=i);const o=Or.getConsentData();o&&(r.gdprApplies=o.gdprApplies,r.gdprConsent=o.consentString);const s=Dr.getConsentData();return s&&(r.gppString=s.gppString,r.gppApplicableSections=s.applicableSections),af=uf.getInitializer()(r,nf,of),e.emailHash&&af.push({hash:e.emailHash}),af}function lf(){if(!sf&&af){const e=af.config.fireEventDelay||500;setTimeout((()=>{window.liQ_instances.forEach((e=>e.eventBus.once("pre_lips",df))),!sf&&af&&af.fire()}),e)}}const uf={moduleMode:"standard",name:ef,setModuleMode(e){this.moduleMode=e},getInitializer(){return(e,t,n)=>((e,t,n,r,i)=>{const o="minimal"===r,s=i||dg();return(o?Zg:Qg)(Xu(e)&&e||{},t,n,s)})(e,t,n,this.moduleMode)},decode(e,t){const n=t&&t.params||{};return af||cf(n),lf(),(e=>{const t={},n=e.nonId||e.unifiedId;return n&&(e.lipbid=n,delete e.unifiedId,t.lipb=e),e.uid2&&(t.uid2={id:e.uid2,ext:{provider:tf}}),e.bidswitch&&(t.bidswitch={id:e.bidswitch,ext:{provider:tf}}),e.medianet&&(t.medianet={id:e.medianet,ext:{provider:tf}}),e.magnite&&(t.magnite={id:e.magnite,ext:{provider:tf}}),e.index&&(t.index={id:e.index,ext:{provider:tf}}),e.openx&&(t.openx={id:e.openx,ext:{provider:tf}}),e.pubmatic&&(t.pubmatic={id:e.pubmatic,ext:{provider:tf}}),e.sovrn&&(t.sovrn={id:e.sovrn,ext:{provider:tf}}),e.thetradedesk&&(t.lipb={...t.lipb,tdid:e.thetradedesk},t.tdid={id:e.thetradedesk,ext:{rtiPartner:"TDID",provider:Tr().domain||tf}},delete t.lipb.thetradedesk),t})(e)},getId(e){const t=cf(e&&e.params||{});if(t)return lf(),{callback:e=>{t.resolve((t=>{e(t)}),(t=>{xe(`${ef}: ID fetch encountered an error: `,t),e()}))}}},eids:{tdid:{source:"adserver.org",atype:1,getValue:e=>e.id?e.id:e,getUidExt:e=>({rtiPartner:"TDID",...e.ext})},uid2:{source:"uidapi.com",atype:3,getValue:e=>e.id,getUidExt:e=>{if(e.ext)return e.ext}},lipb:{getValue:e=>e.lipbid,source:"liveintent.com",atype:3,getEidExt:e=>{if(Array.isArray(e.segments)&&e.segments.length)return{segments:e.segments}}},bidswitch:{source:"bidswitch.net",atype:3,getValue:e=>e.id,getUidExt:e=>{if(e.ext)return e.ext}},medianet:{source:"media.net",atype:3,getValue:e=>e.id,getUidExt:e=>{if(e.ext)return e.ext}},magnite:{source:"rubiconproject.com",atype:3,getValue:e=>e.id,getUidExt:e=>{if(e.ext)return e.ext}},index:{source:"liveintent.indexexchange.com",atype:3,getValue:e=>e.id,getUidExt:e=>{if(e.ext)return e.ext}},openx:{source:"openx.net",atype:3,getValue:e=>e.id,getUidExt:e=>{if(e.ext)return e.ext}},pubmatic:{source:"pubmatic.com",atype:3,getValue:e=>e.id,getUidExt:e=>{if(e.ext)return e.ext}},sovrn:{source:"liveintent.sovrn.com",atype:3,getValue:e=>e.id,getUidExt:e=>{if(e.ext)return e.ext}}}};yn("userId",uf),s("liveIntentIdSystem");const pf=mi({moduleType:an,moduleName:"sharedId"}),gf="cookie",ff="html5",mf="_pubcid_optout",hf="PublisherCommonId";function bf(e,t){if(t===gf)return pf.getCookie(e);if(t===ff&&pf.hasLocalStorage()){const t=pf.getDataFromLocalStorage(`${e}_exp`);if(!t)return pf.getDataFromLocalStorage(e);if(new Date(t).getTime()-Date.now()>0)return pf.getDataFromLocalStorage(e)}}function yf(e,t){return(n,r)=>{t?vf(t,e,(()=>{n(r()||e)}))():n(e)}}function vf(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2?arguments[2]:void 0;if(!e)return;const r=bt(e);r.search.id=encodeURIComponent("pubcid:"+t);const i=yt(r);return()=>{Le(i,n)}}function Af(){return!!(pf.cookiesAreEnabled()&&bf(mf,gf)||pf.hasLocalStorage()&&bf(mf,ff))}const If={name:"sharedId",aliasName:"pubCommonId",gvlid:_r,decode(e,t){if(!Af())return Ie(" Decoded value PubCommonId "+e),{pubcid:e};Ie("PubCommonId decode: Has opted-out")},getId:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>2?arguments[2]:void 0;if(Af())return void Ie("PubCommonId: Has opted-out");if(Br.getCoppa())return void Ie("PubCommonId: IDs not provided for coppa requests, exiting PubCommonId");const{params:{create:n=!0,pixelUrl:r}={}}=e;let i=t;if(!i){try{"object"==typeof window[hf]&&(i=window[hf].getId())}catch(e){}i||(i=n&&ot()?ue():void 0)}return{id:i,callback:yf(i,r)}},extendId:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>2?arguments[2]:void 0;if(Af())return Ie("PubCommonId: Has opted-out"),{id:void 0};if(Br.getCoppa())return void Ie("PubCommonId: IDs not provided for coppa requests, exiting PubCommonId");const{params:{extend:n=!1,pixelUrl:r}={}}=e;return n?r?{callback:vf(r,t)}:{id:t}:void 0},domainOverride:((e,t)=>()=>{const t=document.domain.split("."),n=`_gd${Date.now()}_sharedId`;for(let r,i,o=0;o<t.length;o++){const s=t.slice(o).join(".");if(e.setCookie(n,"1",void 0,void 0,s),i=e.getCookie(n),e.setCookie(n,"","Thu, 01 Jan 1970 00:00:01 GMT",void 0,s),"1"!==i)return r;r=s}})(pf),eids:{pubcid:{source:"pubcid.org",atype:1}}};function wf(e,t,n){let r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];if(t===n)return e;let i=e;try{i=o().convertCurrency(e,t,n)}catch(e){if(!r)throw e}return i}yn("userId",If),s("sharedIdSystem");const xf={NOT_FOUND:"not_found",RANDOM:"random"},Cf="Price Floors",Ef=Ht(1e4),Tf=Symbol();let Sf=[Tf,"gptSlot","adUnitCode","size","domain","mediaType"],_f=!1,kf=!1,Of={},Rf=[],Df={};const Bf=(()=>{let e;return()=>(null==e&&(e=bt(Tr().topmostLocation,{noDecodeWholeURL:!0}).hostname),e)})();function Uf(e,t){let{index:n=no.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e?.adUnitCode||n.getAdUnit(t).code}let jf={[Tf]:()=>"*",size:(e,t)=>fe(t.size)||"*",mediaType:(e,t)=>t.mediaType||"banner",gptSlot:(e,t)=>function(e){let{index:t=no.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=t.getAdUnit({adUnitId:e});return"gam"===y(n,"ortb2Imp.ext.data.adserver.name")&&n.ortb2Imp.ext.data.adserver.adslot}((e||t).adUnitId)||Ic(Uf(e,t)).gptSlot,domain:Bf,adUnitCode:(e,t)=>Uf(e,t)};function Pf(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=((e,t,n)=>e.length?e.reduce(((e,r)=>{let i=jf[r](t,n)||"*";return e.push("*"===i?["*"]:[i.toLowerCase(),"*"]),e}),[]):[])(y(e,"schema.fields")||[],t,n);if(!r.length)return{matchingFloor:void 0};let i=r.map((e=>e[0])).join("-"),o=y(e,`matchingInputs.${i}`);if(o)return{...o};let s=(a=r,c=y(e,"schema.delimiter")||"|",a.reduce(((e,t)=>{let n=[];return e.map((e=>{t.map((t=>{n.push(e+c+t)}))})),n})).sort(((e,t)=>e.split("*").length-t.split("*").length)));var a,c;let l=d(s,(t=>e.values.hasOwnProperty(t))),u={floorMin:e.floorMin||0,floorRuleValue:e.values[l],matchingData:s[0],matchingRule:l===e.meta?.defaultRule?void 0:l};const p=y(t,"ortb2Imp.ext.prebid.floors.floorMin");return"number"==typeof p&&(u.floorMin=p),u.matchingFloor=Math.max(u.floorMin,u.floorRuleValue),xt(e,`matchingInputs.${i}`,{...u}),u}function Nf(e,t,n){return parseFloat(xi(e,{...t,cpm:e},n))}const $f={banner:e=>y(e,"mediaTypes.banner.sizes")||[],video:e=>y(e,"mediaTypes.video.playerSize")||[],native:e=>y(e,"mediaTypes.native.image.sizes")?[y(e,"mediaTypes.native.image.sizes")]:[]};function qf(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{currency:"USD",mediaType:"*",size:"*"},t=this,n=Df[t.auctionId];if(!n||n.skipped)return{};e=((e,t)=>{let n=Object.keys(e.mediaTypes||{});return"*"===t.mediaType&&1===n.length&&(t.mediaType=n[0]),"*"===t.size&&-1!==n.indexOf(t.mediaType)&&$f[t.mediaType]&&1===$f[t.mediaType](e).length&&(t.size=$f[t.mediaType](e)[0]),t})(t,e);let r=Pf(n.data,{...t},{mediaType:e.mediaType,size:e.size}),i=e.currency||n.data.currency;if(r.matchingFloor&&i!==n.data.currency)try{r.matchingFloor=o().convertCurrency(r.matchingFloor,n.data.currency,i)}catch(e){we(`${Cf}: Unable to get currency conversion for getFloor for bidder ${t.bidder}. You must have currency module enabled with defaultRates in your currency config`),i=n.data.currency}if(n.enforcement.bidAdjustment&&r.matchingFloor){const e=rn.get(t.bidder,"inverseBidAdjustment");if(e)r.matchingFloor=e(r.matchingFloor,t);else{let e=Nf(r.matchingFloor,null,t);r.matchingFloor=e?((e,t)=>{const n=Math.pow(10,10);return e*n/(t*n)*(e*n)/n})(r.matchingFloor,e):r.matchingFloor}}return r.matchingFloor?{floor:(s=r.matchingFloor,Math.ceil((parseFloat(s)*Math.pow(10,4)).toFixed(1))/Math.pow(10,4)),currency:i}:{};var s}function Mf(e,t){let n=tt(e);return n.schema.delimiter=e.schema.delimiter||"|",n.values=((e,t)=>{let n=e.schema.fields,r=e.schema.delimiter,i=t&&-1===n.indexOf("adUnitCode")&&n.unshift("adUnitCode");return Object.keys(e.values).reduce(((n,o)=>(n[(i?`${t}${r}${o}`:o).toLowerCase()]=e.values[o],n)),{})})(n,t),n.currency=n.currency||"USD",n}function zf(e){e.hasExited||(Rf=Rf.filter((t=>t.timer!==e.timer)),e.reqBidsConfigObj.auctionId=e.reqBidsConfigObj.auctionId||ue(),Df[e.reqBidsConfigObj.auctionId]=function(e,t){let n=tt(Of);if(2===y(n,"data.floorsSchemaVersion")){let{modelGroups:e,...t}=n.data;n.data=Object.assign(t,((e,t)=>{let n=Math.floor(Math.random()*t+1);for(let t=0;t<e.length;t++)if(n-=e[t].modelWeight,n<=0)return e[t]})(e,t.modelWeightSum))}let r=0===Object.keys(y(n,"data.values")||{}).length;if(n.data=r?(e=>{const t=e.find((e=>null!=e.floors?.schema));return e.reduce(((e,n)=>{if(null!=n.floors?.schema&&!vt(n.floors.schema,t?.floors?.schema))return xe(`${Cf}: adUnit '${n.code}' declares a different schema from one previously declared by adUnit '${t.code}'. Floor config for '${n.code}' will be ignored.`),e;const r=Object.assign({},t?.floors,{values:void 0},n.floors);if(Vf(r))if(e.values){let t=Mf(r,n.code).values;Object.assign(e.values,t)}else(e=Mf(r,n.code)).location="adUnit";else null!=n.floors&&we(`adUnit '${n.code}' provides an invalid \`floor\` definition, it will be ignored for floor calculations`,n);return e}),{})})(e):Mf(n.data),0===Object.keys(y(n,"data.values")||{}).length)n.skipped=!0,n.skippedReason=xf.NOT_FOUND;else{const e=ke("pbjs_skipRate")||(y(n,"data.skipRate")??n.skipRate),t=100*Math.random()<parseFloat(e);n.skipped=t,t&&(n.skippedReason=xf.RANDOM)}return n.hasOwnProperty("floorMin")&&(n.data.floorMin=n.floorMin),((e,t,n)=>{const r=(e=>{const{data:t,enforcement:n}=e;return t?.noFloorSignalBidders?.length>0?t.noFloorSignalBidders:n?.noFloorSignalBidders?.length>0?n.noFloorSignalBidders:[]})(t);e.forEach((e=>{e.bids.forEach((e=>{const i=r.some((t=>t===e.bidder));t.skipped||i?(i&&Ie(`noFloorSignal to ${e.bidder}`),delete e.getFloor):e.getFloor=qf,e.auctionId=n,e.floorData={noFloorSignaled:i,skipped:t.skipped,skipRate:y(t,"data.skipRate")??t.skipRate,skippedReason:t.skippedReason,floorMin:t.floorMin,modelVersion:y(t,"data.modelVersion"),modelWeight:y(t,"data.modelWeight"),modelTimestamp:y(t,"data.modelTimestamp"),location:y(t,"data.location","noData"),floorProvider:t.floorProvider,fetchStatus:Of.fetchStatus}}))}))})(e,n,t),n}(e.reqBidsConfigObj.adUnits||o().adUnits,e.reqBidsConfigObj.auctionId),e.nextFn.apply(e.context,[e.reqBidsConfigObj]),e.hasExited=!0)}function Ff(e){return e=(e=>{if(Ue(e.default)){let t="*";const n=(e.schema?.fields||[]).length;n?t=Array(n).fill("*").join(e.schema?.delimiter||"|"):xt(e,"schema.fields",[Tf]),e.values=e.values||{},null==e.values[t]&&(e.values[t]=e.default,e.meta={defaultRule:t})}return e})(e),!!(e=>{if(Array.isArray(e)&&e.length>0){if(e.every((e=>Sf.includes(e))))return!0;xe(`${Cf}: Fields received do not match allowed fields`)}return!1})(y(e,"schema.fields"))&&(t=e,n=e.schema.fields.length,r=e.schema.delimiter||"|","object"==typeof t.values&&(t.values=Object.keys(t.values).reduce(((e,i)=>(((e,t,n,r)=>"string"==typeof e&&e.split(r).length===n&&"number"==typeof t)(i,t.values[i],n,r)&&(e[i]=t.values[i]),e)),{}),Object.keys(t.values).length>0));var t,n,r}const Lf={1:e=>Ff(e),2:e=>!(!Array.isArray(e.modelGroups)||0===e.modelGroups.length)&&(e.modelWeightSum=0,e.modelGroups.every((t=>!("number"!=typeof t.modelWeight||!Ff(t)||(e.modelWeightSum+=t.modelWeight,0)))))};function Vf(e){return"object"==typeof e&&(e.floorsSchemaVersion=e.floorsSchemaVersion||1,"function"!=typeof Lf[e.floorsSchemaVersion]?(xe(`${Cf}: Unknown floorsSchemaVersion: `,e.floorsSchemaVersion),!1):Lf[e.floorsSchemaVersion](e))}function Wf(e,t){if(e&&"object"==typeof e&&Vf(e))return Ie(`${Cf}: A ${t} set the auction floor data set to `,e),{...e,location:t};xe(`${Cf}: The floors data did not contain correct values`,e)}const Gf=or("priceFloors",(function(e,t){const n={reqBidsConfigObj:t,context:this,nextFn:e,haveExited:!1,timer:null};Of.auctionDelay>0&&_f?(n.timer=setTimeout((()=>{we(`${Cf}: Fetch attempt did not return in time for auction`),Of.fetchStatus="timeout",zf(n)}),Of.auctionDelay),Rf.push(n)):zf(n)}));function Hf(){Rf.forEach((e=>{clearTimeout(e.timer),zf(e)})),Rf=[]}function Jf(e){let t;_f=!1,Of.fetchStatus="success";try{t=JSON.parse(e)}catch(n){t=e}const n=Wf(t,"fetch");n&&(Of.data=n,Of.skipRate=Ue(n.skipRate)?n.skipRate:Of.skipRate,Of.floorProvider=n.floorProvider||Of.floorProvider),Hf()}function Xf(e){_f=!1,Of.fetchStatus="error",xe(`${Cf}: Fetch errored with: `,e),Hf()}const Qf=sr("priceFloors",(function(e,t,n,r){let i=Df[n.auctionId];if(!i||!n||i.skipped)return e.call(this,t,n,r);const s=no.index.getBidRequest(n);let a,d=Pf(i.data,s,{...n,size:[n.width,n.height]});if(!d.matchingFloor)return 0!==d.matchingFloor&&we(`${Cf}: unable to determine a matching price floor for bidResponse`,n),e.call(this,t,n,r);let c=i.data.currency.toUpperCase(),l=n.currency||"USD";if(c===l.toUpperCase())a=n.cpm;else if(n.originalCurrency&&c===n.originalCurrency.toUpperCase())a=n.originalCpm;else try{a=o().convertCurrency(n.cpm,l.toUpperCase(),c)}catch(i){return xe(`${Cf}: Unable do get currency conversion for bidResponse to Floor Currency. Do you have Currency module enabled? ${n}`),e.call(this,t,n,r)}return a=Nf(a,n,s),((e,t,n,r)=>{n.floorData={floorValue:t.matchingFloor,floorRule:t.matchingRule,floorRuleValue:t.floorRuleValue,floorCurrency:e.data.currency,cpmAfterAdjustments:r,enforcements:{...e.enforcement},matchedFields:{}},e.data.schema.fields.forEach(((r,i)=>{let o=t.matchingData.split(e.data.schema.delimiter)[i];n.floorData.matchedFields[r]=o}))})(i,d,n,a),((e,t,n)=>{let r=!1!==y(e,"enforcement.enforceJS"),i=!0===y(e,"enforcement.floorDeals")||!n.dealId,o=n.floorData.cpmAfterAdjustments<t.matchingFloor;return r&&o&&i})(i,d,n)?(r(_.FLOOR_NOT_MET),void we(`${Cf}: ${n.bidderCode}'s Bid Response for ${t} was rejected due to floor not met (adjusted cpm: ${n?.floorData?.cpmAfterAdjustments}, floor: ${d?.matchingFloor})`,n)):e.call(this,t,n,r)}));function Kf(e){return Object.assign({wp:!0,run(e,t,n,r,i){const o=n&&n.hasOwnProperty(r),s=o?n[r]:void 0,a=o&&null!=s&&"object"==typeof s?tt(s):s;return()=>{const n=null==t?e:y(e,t),d=n&&Lr(n[r]),c=d?n[r]:void 0;!o&&d&&i()?delete n[r]:o===d&&c===s&&vt(c,a)||!i()||xt(e,(null==t?[]:[t]).concat(r).join("."),a)}}},e)}q.getConfig("floors",(e=>function(e){var t;Of=gt(e,["floorMin","enabled",e=>!1!==e,"auctionDelay",e=>e||0,"floorProvider",t=>y(e,"data.floorProvider",t),"endpoint",e=>e||{},"skipRate",()=>isNaN(y(e,"data.skipRate"))?e.skipRate||0:e.data.skipRate,"enforcement",e=>gt(e||{},["enforceJS",e=>!1!==e,"enforcePBS",e=>!0===e,"floorDeals",e=>!0===e,"bidAdjustment",e=>!1!==e,"noFloorSignalBidders",e=>e||[]]),"additionalSchemaFields",e=>{return"object"==typeof e&&Object.keys(e).length>0?(t=e,void Object.keys(t).forEach((e=>{-1===Sf.indexOf(e)&&"function"==typeof t[e]&&(Sf.push(e),jf[e]=t[e])}))):void 0;var t},"data",e=>e&&Wf(e,"setConfig")||void 0]),Of.enabled?((t=Of.endpoint).url&&!_f?"GET"!==(t.method||"GET")?xe(`${Cf}: 'GET' is the only request method supported at this time!`):(Ef(t.url,{success:Jf,error:Xf},null,{method:"GET"}),_f=!0):_f&&we(`${Cf}: A fetch is already occuring. Skipping.`),kf||(Ut(I.AUCTION_END,(e=>{setTimeout((()=>delete Df[e.auctionId]),3e3)})),o().requestBids.before(Gf,50),mn("addBidResponse").before(Qf,Te()?4:50),kf=!0)):(Ie(`${Cf}: Turning off module`),Of={},Df={},mn("addBidResponse").getHooks({hook:Qf}).remove(),o().requestBids.getHooks({hook:Gf}).remove(),kf=!1)}(e.floors))),ma({type:ca,name:"bidfloor",fn:(e,t,n)=>{if("function"==typeof t.getFloor){let r,i;try{({currency:r,floor:i}=t.getFloor({currency:n.currency||q.getConfig("currency.adServerCurrency")||"USD",mediaType:n.mediaType||"*",size:"*"}))}catch(e){return void we("Cannot compute floor for bid",t)}i=parseFloat(i),null==r||null==i||isNaN(i)||Object.assign(e,{bidfloor:i,bidfloorcur:r})}}}),ma({type:ca,name:"extPrebidFloors",fn:(e,t,n)=>{if(null!=e.bidfloor){let{floorMinCur:t,floorMin:r}=n.reqContext.floorMin||{};null==t&&(t=e.bidfloorcur);const i=e.ext?.prebid?.floors?.floorMinCur||e.ext?.prebid?.floorMinCur||t,o=e.ext?.prebid?.floors?.floorMin||e.ext?.prebid?.floorMin,s=wf(e.bidfloor,e.bidfloorcur,t),a=!(!o||!i)&&wf(o,i,t),d=a&&a<s?a:s;xt(e,"ext.prebid.floors.floorMin",d),(null==r||r>d)&&(r=d),n.reqContext.floorMin={floorMin:r,floorMinCur:t}}},dialects:[ga],priority:-1}),ma({type:da,name:"extPrebidFloors",fn:(e,t,n)=>{kf&&xt(e,"ext.prebid.floors.enabled",e.ext?.prebid?.floors?.enabled||!1),n?.floorMin&&At(e,{ext:{prebid:{floors:n.floorMin}}})},dialects:[ga]}),s("priceFloors");const Yf=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Rn;return(e=>{const t={},n=[];e.forEach((e=>{e.wp&&n.push(e),e.get&&e.paths.forEach((n=>{let r=t;n.split(".").forEach((e=>{r.children=r.children||{},r.children[e]=r.children[e]||{},r=r.children[e]})),r.rule=e}))}));const r=zr(n);function i(e,t,n){return new Proxy(e,{get(e,r,o){const s=Reflect.get(e,r,o);if(t.hasOwnProperty(r)){const{children:e,rule:o}=t[r];if(e&&null!=s&&"object"==typeof s)return i(s,e,n);if(o&&Lr(s)&&n(o))return o.get(s)}return s}})}return function(e){const n={};for(var o=arguments.length,s=new Array(o>1?o-1:0),a=1;a<o;a++)s[a-1]=arguments[a];return{obj:i(e,t.children||{},Fr(n,...s)),verify:(d=r(n,e,...s),()=>{d.forEach((e=>e()))})};var d}})(Wr(e).concat(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Rn;return[{name:jn,paths:$r,applies:Vr(jn,e)},{name:Un,paths:Nr,applies:Vr(Un,e)}].map(Kf)}(e)))}(),Zf=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Yf;return(t,n)=>{t.global=t.global||{},t.bidder=t.bidder||{};const r=new Set(Object.keys(t.bidder)),i=[];function o(t){const r=e(t,n);return i.push(r.verify),r.obj}const s={global:o(t.global),bidder:Object.fromEntries(Object.entries(t.bidder).map((e=>{let[t,n]=e;return[t,o(n)]})))};return{obj:s,verify(){Object.entries(s.bidder).filter((e=>{let[t]=e;return!r.has(t)})).forEach((r=>{let[i,o]=r;const s={},a=e(s,n);At(a.obj,o),a.verify(),t.bidder[i]=s})),i.forEach((e=>e()))}}}}(),em=_n((e=>li.resolveAlias(e)));let tm,nm,rm=[],im=[],om=[];const sm=(()=>{let e=!1;return()=>{e||(Object.entries({[I.AUCTION_INIT]:["onAuctionInitEvent"],[I.AUCTION_END]:["onAuctionEndEvent",lm],[I.BID_RESPONSE]:["onBidResponseEvent"],[I.BID_REQUESTED]:["onBidRequestEvent"],[I.BID_ACCEPTED]:["onBidAcceptedEvent"]}).forEach((e=>{let[t,[n,r]]=e;Ut(t,(e=>{r&&r(e),im.forEach((t=>{try{t[n]&&t[n](e,t.config,nm)}catch(e){xe(`RTD provider '${t.name}': error in '${n}':`,e)}}))}))})),e=!0)}})();function am(){return{gdpr:Or.getConsentData(),usp:Rr.getConsentData(),gpp:Dr.getConsentData(),coppa:!!q.getConfig("coppa")}}function dm(){nm=am();let e=[];om.forEach((t=>{const n=d(rm,(e=>e.name===t.name));n&&n.init&&n.init(t,nm)&&e.push(Object.assign(n,{config:t}))})),im=e,Ie(`Real time data module enabled, using submodules: ${im.map((e=>e.name)).join(", ")}`)}const cm=or("rtd",(function(e,t){nm=am();const n=[],r=[];im.forEach((e=>{if("function"!=typeof e.getBidRequestData)return;n.push(e);const t=e.config;t&&t.waitForIt&&r.push(e)}));const i=r.length&&tm.auctionDelay&&tm.auctionDelay>0;let o,s=r.length,a=!1;const d=[];if(!n.length)return l();function c(){a||(this.config&&this.config.waitForIt&&s--,0===s&&setTimeout(l,0))}function l(){a||(a=!0,clearTimeout(o),d.forEach((e=>e())),e.call(this,t))}o=setTimeout(l,i?tm.auctionDelay:0),n.forEach((e=>{const n=Zf(t.ortb2Fragments||{},em(dn,e.name));d.push(n.verify),e.getBidRequestData({...t,ortb2Fragments:n.obj},c.bind(e),e.config,nm)}))}));function lm(e){const t=im.filter((e=>"function"==typeof e.getTargetingData));if(!t.length)return;const n=e.adUnitCodes;if(!n)return;let r=[];for(let i=t.length-1;i>=0;i--){const o=t[i].getTargetingData(n,t[i].config,nm,e);o&&"object"==typeof o?r.push(o):we("invalid getTargetingData response for sub module",t[i].name)}const i=(o=r,Array.isArray(o)&&o.length?o.reduce(((e,t)=>{for(let n in t)if(t.hasOwnProperty(n))if(e.hasOwnProperty(n)){const r=t[n];for(let t in r)r.hasOwnProperty(t)&&(e[n][t]=r[t])}else e[n]=t[n];return e}),{}):{});var o;return e.adUnits.forEach((e=>{const t=e.code&&i[e.code];t&&(Ie("RTD set ad unit targeting of",t,"for",e),e[v.ADSERVER_TARGETING]=Object.assign(e[v.ADSERVER_TARGETING]||{},t))})),e.adUnits}function um(e){im.forEach((e=>{if("function"==typeof e.onDataDeletionRequest)try{e.onDataDeletionRequest(e.config)}catch(t){xe(`Error executing ${e.name}.onDataDeletionRequest`,t)}}));for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];e.apply(this,n)}bn("realTimeData",(e=>(rm.push(e),Ur.register(dn,e.name,e.gvlid),()=>{const t=rm.indexOf(e);t>=0&&(rm.splice(t,1),dm())}))),(e=>{const t=e.getConfig("realTimeData",(e=>{let{realTimeData:n}=e;n.dataProviders?(t(),tm=n,om=n.dataProviders,sm(),mn("startAuction").before(cm,20),li.callDataDeletionRequest.before(um),dm()):xe("missing parameters for real time module")}))})(q),s("rtdModule");const pm=new Map;function gm(e){const t={};function n(e){const n=JSON.stringify([e.source?.toLowerCase(),e.ext]);t.hasOwnProperty(n)?t[n].uids.push(...e.uids):t[n]=e}return Object.entries(e).forEach((e=>{let[t,r]=e;r=Array.isArray(r)?r:[r],("pubProvidedId"===t?tt(r):r.map((e=>((e,t)=>{const n=pm.get(t);if(n&&e){let t={};t.source=Re(n.getSource)?n.getSource(e):n.source;const r=Re(n.getValue)?n.getValue(e):e;if(De(r)){const i={id:r,atype:n.atype};if(Re(n.getUidExt)){const t=n.getUidExt(e);t&&(i.ext=t)}if(t.uids=[i],Re(n.getEidExt)){const r=n.getEidExt(e);r&&(t.ext=r)}return t}}return null})(e,t)))).filter((e=>null!=e)).forEach(n)})),Object.values(t)}const fm=pn("sync",(()=>{})),mm="User ID",hm=pi,bm=ui,ym="_pbjs_id_optout",vm=hi("userId"),Am={isAllowed:Rn};let Im,wm,xm,Cm,Em,Tm=!1,Sm=[],_m=[],km={},Om=[];const Rm=(()=>{let e;return()=>(null==e&&(e=rr()),e)})();function Dm(e){return Rm().fork().renameWith((t=>[`userId.mod.${t}`,`userId.mods.${e}.${t}`]))}function Bm(e,t){t=t||e.storageMgr;const n="function"==typeof e.submodule.domainOverride?e.submodule.domainOverride():null,r=e.config.storage.name;return(e,i,o)=>{t.setCookie(r+(e||""),i,o,"Lax",n)}}function Um(e,t){const n=e.config.storage,r=e.storageMgr;try{const i=new Date(Date.now()+864e5*n.expires).toUTCString(),o=je(t)?JSON.stringify(t):t;if(n.type===hm){const t=Bm(e);t(null,o,i),t("_cst",Ym(),i),"number"==typeof n.refreshInSeconds&&t("_last",(new Date).toUTCString(),i)}else n.type===bm&&(r.setDataInLocalStorage(`${n.name}_exp`,i),r.setDataInLocalStorage(`${n.name}_cst`,Ym()),r.setDataInLocalStorage(n.name,encodeURIComponent(o)),"number"==typeof n.refreshInSeconds&&r.setDataInLocalStorage(`${n.name}_last`,(new Date).toUTCString()))}catch(e){xe(e)}}function jm(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;const n=e.storageMgr,r=e.config.storage,i=t?`${r.name}_${t}`:r.name;let o;try{if(r.type===hm)o=n.getCookie(i);else if(r.type===bm){const e=n.getDataFromLocalStorage(`${r.name}_exp`);""===e?o=n.getDataFromLocalStorage(i):e&&new Date(e).getTime()-Date.now()>0&&(o=decodeURIComponent(n.getDataFromLocalStorage(i)))}"string"==typeof o&&"{"===o.trim().charAt(0)&&(o=JSON.parse(o))}catch(e){xe(e)}return o}function Pm(e,t,n){t=Rm().fork().startTiming("userId.callbacks.total").stopBefore(t);const r=at((()=>{clearTimeout(undefined),t()}),e.length);e.forEach((e=>{const t=Dm(e.submodule.name).startTiming("callback").stopBefore(r);try{e.callback((r=>{r?(e.config.storage&&Um(e,r),e.idObj=e.submodule.decode(r,e.config),Zm(Nm(n))):Ie(`${mm}: ${e.submodule.name} - request id responded with an empty value`),t()}),jm.bind(null,e))}catch(n){xe(`Error in userID module '${e.submodule.name}':`,n),t()}e.callback=void 0}))}function Nm(e){return Array.isArray(e)&&e.length?qm(e):{}}function $m(e,t,n){return Object.fromEntries(Object.entries(e.reduce(((e,r)=>{const i=t(r);return i&&Object.keys(i).forEach((t=>{const o=km[t]?.indexOf(n(r)),s={priority:Ue(o)?o:-1,value:i[t]};if(e[t]){const n=s.priority>e[t].priority?s:e[t];e[t]=n}else e[t]=s})),e}),{})).map((e=>{let[t,n]=e;return[t,n.value]})))}function qm(e){return $m(e.filter((e=>je(e.idObj)&&Object.keys(e.idObj).length)),(e=>e.idObj),(e=>e.submodule.name))}const Mm={};let zm;function Fm(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Wm()||[];const t=Cm&&e.find((e=>e.source===Cm));if(t&&"string"==typeof y(t,"uids.0.id")){const e=t.uids[0].id.replace(/[\W_]/g,"");if(e.length>=32&&e.length<=150)return e;we(`User ID - Googletag Publisher Provided ID for ${Cm} is not between 32 and 150 characters - ${e}`)}}const Lm=or("userId",(function(e,t){let{delay:n=V.timeout,getIds:r=Km}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};V.race([r().catch((()=>null)),n(xm)]).then((()=>{(function(e,t){[e].some((e=>!Array.isArray(e)||!e.length))||e.forEach((e=>{e.bids&&Be(e.bids)&&e.bids.forEach((e=>{const n=((e,t)=>{if(!Array.isArray(e)||!e.length||!t)return{};const n=e.filter((e=>!e.config.bidders||!Be(e.config.bidders)||a(e.config.bidders,t)));return qm(n)})(t,e.bidder);Object.keys(n).length&&(e.userId=n,e.userIdAsEids=gm(n))}))}))})(t.adUnits||o().adUnits,Im),Rm().join(nr(t.metrics),{propagate:!1,includeGroups:!0}),e.call(this,t)}))}));function Vm(){return Nm(Im)}function Wm(){return gm(Vm())}function Gm(e){return gm(((e,t)=>{if(!Array.isArray(e)||!e.length)return{};const n=qm(e),r=Object.keys(n).find((e=>{const n=pm.get(e);return n?.source===t||Re(n?.getSource)&&n.getSource()===t}));return r?{[r]:n[r]}:[]})(Im,e))[0]}function Hm(e,t,n){return zm().then((()=>{let r={};if(Re(n)){Ie(`${mm} - Getting encrypted signal from custom function : ${n.name} & source : ${e} `);const t=n(e);r[e]=t?Jm(t):null}else{const n=Gm(e);Ie(`${mm} - Getting encrypted signal for eids :${JSON.stringify(n)}`),Ne(n)||(r[n.source]=!0===t?Jm(n):n.uids[0].id)}return Ie(`${mm} - Fetching encrypted eids: ${r[e]}`),r[e]}))}function Jm(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,n="";return 1===t&&(n="object"==typeof e?window.btoa(JSON.stringify(e)):window.btoa(e)),`${t}||${n}`}function Xm(){if(!Ze())return;window.googletag.secureSignalProviders=window.googletag.secureSignalProviders||[];const e=q.getConfig("userSync.encryptedSignalSources");if(e){const t=e.registerDelay||0;setTimeout((()=>{e.sources&&e.sources.forEach((e=>{let{source:t,encrypt:n,customFunc:r}=e;t.forEach((e=>{window.googletag.secureSignalProviders.push({id:e,collectorFunction:()=>Hm(e,n,r)})}))}))}),t)}else we(`${mm} - ESP : encryptedSignalSources config not defined under userSync Object`)}function Qm(){let{submoduleNames:e}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;return zm({refresh:!0,submoduleNames:e}).then((()=>(t&&Re(t)&&t(),Vm())))}function Km(){return zm().then((()=>Vm()),(e=>e===Mm?Promise.resolve().then(Km):(xe("Error initializing userId",e),V.reject(e))))}function Ym(){let e=Number(Pr.hash);const t=[];for(;e>0;)t.push(String.fromCharCode(255&e)),e>>>=8;return btoa(t.join())}function Zm(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Vm();if(e&&Cm){const t=Fm(gm(e));t&&(Ze()?window.googletag.pubads().setPublisherProvidedId(t):(window.googletag=window.googletag||{},window.googletag.cmd=window.googletag.cmd||[],window.googletag.cmd.push((()=>{window.googletag.pubads().setPublisherProvidedId(t)}))))}}function eh(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return Rm().fork().measureTime("userId.init.modules",(()=>{if(!t.length)return[];if(t=t.filter((e=>(!e.config.storage||(e=>{switch(e.config?.storage?.type){case bm:if(e.storageMgr.localStorageIsEnabled())return!vm.getDataFromLocalStorage(ym)||(Ie(`${mm} - opt-out localStorage found, storage disabled`),!1);break;case hm:if(e.storageMgr.cookiesAreEnabled())return!vm.getCookie(ym)||(Ie(`${mm} - opt-out cookie found, storage disabled`),!1)}return!1})(e))&&Am.isAllowed(jn,ar(an,e.config.name)))),!t.length)return we(`${mm} - no ID module configured`),[];const r=t.reduce(((e,r)=>Dm(r.submodule.name).measureTime("init",(()=>{try{(function(e,t,n){const r=Or.getConsentData();if(e.config.storage){let n,i=jm(e),o=!1;if("number"==typeof e.config.storage.refreshInSeconds){const t=new Date(jm(e,"last"));o=t&&Date.now()-t.getTime()>1e3*e.config.storage.refreshInSeconds}!i||o||t||(e=>{const t=jm(e,"cst");return!t||t!==Ym()})(e)?n=e.submodule.getId(e.config,r,i):"function"==typeof e.submodule.extendId&&(n=e.submodule.extendId(e.config,r,i)),je(n)&&(n.id&&(Um(e,n.id),i=n.id),"function"==typeof n.callback&&(e.callback=n.callback)),i&&(e.idObj=e.submodule.decode(i,e.config))}else if(e.config.value)e.idObj=e.config.value;else{const t=e.submodule.getId(e.config,r,void 0);je(t)&&("function"==typeof t.callback&&(e.callback=t.callback),t.id&&(e.idObj=e.submodule.decode(t.id,e.config)))}Zm(Nm(n))})(r,n,t),e.push(r)}catch(e){xe(`Error in userID module '${r.submodule.name}':`,e)}return e}))),[]);return r.length&&function(e){let t=ae.setEidPermissions;"function"==typeof t&&Be(e)&&t((e=>{let t=[];return e.filter((e=>je(e.idObj)&&Object.keys(e.idObj).length)).forEach((e=>{Object.keys(e.idObj).forEach((n=>{const r=pm.get(n)||{};y(e,"config.bidders")&&Array.isArray(e.config.bidders)&&r.source&&t.push({source:r.source,bidders:e.config.bidders})}))})),t})(e))}(r),r.forEach(th.bind(null,e)),r}))}function th(e,t){let n=!1;for(let r=0;r<e.length;r++)if(t.config.name.toLowerCase()===e[r].config.name.toLowerCase()){n=!0,e[r]=t;break}n||e.push(t)}const nh=new Set([bm,hm]);function rh(){!function(e){pm.clear(),Object.entries($m(e,(e=>e.eids),(e=>e.name))).forEach((e=>{let[t,n]=e;return pm.set(t,n)}))}(Om);const e=(e=>Array.isArray(e)?e.reduce(((e,t)=>(!t||$e(t.name)||(t.storage&&!$e(t.storage.type)&&!$e(t.storage.name)&&nh.has(t.storage.type)||je(t.value)?e.push(t):t.storage||t.value||e.push(t)),e)),[]):[])(_m);if(!e.length)return;const t=Om.filter((e=>!d(Sm,(t=>t.name===e.name))));Sm.splice(0,Sm.length),t.map((t=>{const n=d(e,(e=>e.name&&(e.name.toLowerCase()===t.name.toLowerCase()||t.aliasName&&e.name.toLowerCase()===t.aliasName.toLowerCase())));return n&&t.name!==n.name&&(n.name=t.name),t.findRootDomain=ys,n?{submodule:t,config:n,callback:void 0,idObj:void 0,storageMgr:mi({moduleType:an,moduleName:n.name})}:null})).filter((e=>null!==e)).forEach((e=>Sm.push(e))),!Tm&&Sm.length&&(o().requestBids.before(Lm,40),li.callDataDeletionRequest.before(ih),fm.after((e=>e(Fm()))),Ie(`${mm} - usersync config updated for ${Sm.length} submodules: `,Sm.map((e=>e.submodule.name))),Tm=!0)}function ih(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];Ie("UserID: received data deletion request; deleting all stored IDs..."),Sm.forEach((e=>{if("function"==typeof e.submodule.onDataDeletionRequest)try{e.submodule.onDataDeletionRequest(e.config,e.idObj,...n)}catch(t){xe(`Error calling onDataDeletionRequest for ID submodule ${e.submodule.name}`,t)}(e=>{let t,n;switch(e.config?.storage?.type){case hm:const r=Bm(e,vm),i=new Date(Date.now()-864e5).toUTCString();t=e=>r(e,"",i),n=["","_last","_cst"];break;case bm:t=t=>vm.removeDataFromLocalStorage(e.config.storage.name+t),n=["","_last","_exp","_cst"]}t&&n.forEach((e=>{try{t(e)}catch(e){xe(e)}}))})(e)})),e.apply(this,n)}function oh(e){return function(){return Promise.resolve(e.apply(this,arguments))}}!function(e){let{delay:t=V.timeout}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Cm=void 0,Sm=[],_m=[],Tm=!1,Im=[],zm=function(){let{delay:e=V.timeout}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const t=W(),n=W();let r,i,o=!1;function s(e){return i=Rm().fork(),null!=r&&r.reject(Mm),r=W(),V.race([e,r.promise]).finally(i.startTiming("userId.total"))}let a=Im,d=Sm;function c(e){return function(){if(a===Im&&d===Sm)return e(...arguments)}}function l(){return Pr.promise.finally(i.startTiming("userId.init.consent"))}let u=s(V.all([fn,t.promise]).then(l).then(c((()=>{eh(a,d)}))).then((()=>n.promise.finally(i.startTiming("userId.callbacks.pending")))).then(c((()=>{const e=a.filter((e=>Re(e.callback)));if(e.length)return new V((t=>Pm(e,t,a)))}))));return function(){let{refresh:r=!1,submoduleNames:i=null,ready:p=!1}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return p&&!o&&(o=!0,t.resolve(),xm>0?n.resolve():Ut(I.AUCTION_END,(function t(){jt(I.AUCTION_END,t),e(wm).then(n.resolve)}))),r&&o&&(u=s(u.catch((()=>null)).then(l).then(c((()=>{const e=eh(a,d.filter((e=>null==i||i.includes(e.submodule.name))),!0).filter((e=>null!=e.callback));if(e.length)return new V((t=>Pm(e,t,a)))}))))),u}}({delay:t}),null!=Em&&Em(),Om=[],Em=e.getConfig("userSync",(e=>{const t=e.userSync;t&&(Cm=t.ppid,t.userIds&&(_m=t.userIds,wm=Ue(t.syncDelay)?t.syncDelay:500,xm=Ue(t.auctionDelay)?t.auctionDelay:0,rh(),((e,t)=>{if(e){const n={},r=new Map(t.map((e=>e.submodule.aliasName?[e.submodule.aliasName,e.submodule.name]:[])));Object.keys(e).forEach((t=>{const i=Be(e[t])?[...e[t]].reverse():[];n[t]=i.map((e=>r.has(e)?r.get(e):e))})),km=n}else km={}})(t.idPriority,Sm),zm({ready:!0})))})),o().getUserIds=Vm,o().getUserIdsAsEids=Wm,o().getEncryptedEidsForSource=oh(Hm),o().registerSignalSources=Xm,o().refreshUserIds=oh(Qm),o().getUserIdsAsync=oh(Km),o().getUserIdsAsEidBySource=Gm}(q),bn("userId",(e=>{d(Om,(t=>t.name===e.name))||(Om.push(e),Ur.register(an,e.name,e.gvlid),rh(),zm({refresh:!0,submoduleNames:[e.name]}))}),{postInstallAllowed:!0}),ma({type:da,name:"userExtEids",fn:(e,t,n)=>{const r=y(n,"bidRequests.0.userIdAsEids");r&&Object.keys(r).length>0&&xt(e,"user.ext.eids",r)}}),s("userId");const sh=0;function ah(e){let{apiName:t,apiVersion:n,apiArgs:r=["command","callback","parameter","version"],callbackArgs:i=["returnValue","success"],mode:o=sh}=e,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window;const a={},d=`${t}Call`,c=`${t}Return`;function l(e){const t="string"==typeof e.data&&e.data.includes(c)?JSON.parse(e.data):e.data;if(t?.[c]?.callId){const e=t[c];a.hasOwnProperty(e.callId)&&a[e.callId](...i.map((t=>e[t])))}}const[u,p]=(()=>{let e,n=s,r=!1;for(;null!=n;){try{if("function"==typeof n[t]){e=n,r=!0;break}}catch(e){}try{if(n.frames[`${t}Locator`]){e=n;break}}catch(e){}if(n===s.top)break;n=n.parent}return[e,r]})();if(!u)return;function g(e){return e=Object.assign({version:n},e),r.map((t=>[t,e[t]]))}function f(e,t,n,r){const i="function"==typeof e;return function(s,a){r&&r(),1!==o&&(null==a||a?t:n)(i?void 0:s),i&&e.apply(this,arguments)}}let m;return p?m=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new V(((n,r)=>{const i=u[t](...g({...e,callback:e.callback||2===o?f(e.callback,n,r):void 0}).map((e=>{let[t,n]=e;return n})));(1===o||null==e.callback&&o===sh)&&n(i)}))}:(s.addEventListener("message",l,!1),m=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return new V(((n,r)=>{const i=Math.random().toString(),s={[d]:{...Object.fromEntries(g(e).filter((e=>{let[t]=e;return"callback"!==t}))),callId:i}};a[i]=f(e?.callback,n,r,(t||null==e?.callback)&&(()=>{delete a[i]})),u.postMessage(s,"*"),1===o&&n()}))}),Object.assign(m,{isDirect:p,close(){!p&&s.removeEventListener("message",l)}})}const dh=2;let ch,lh,uh,ph,gh,fh,mh=!1;const hh={iab:e=>{let{onSuccess:t,onError:n,onEvent:r}=e;const i=ah({apiName:"__tcfapi",apiVersion:dh,apiArgs:["command","version","callback","parameter"]});if(!i)return n("TCF2 CMP not found.");i.isDirect?Ie("Detected CMP API is directly accessible, calling it now..."):Ie("Detected CMP is outside the current iframe where Prebid.js is located, calling it now..."),i({command:"addEventListener",callback:(e,i)=>{Ie("Received a response from CMP",e),i?(r(e),!1!==e.gdprApplies&&"tcloaded"!==e.eventStatus&&"useractioncomplete"!==e.eventStatus||vh(e,{onSuccess:t,onError:n})):n("CMP unable to register callback function.  Please check CMP setup.")}})},static:e=>{let{onSuccess:t,onError:n}=e;vh(ph,{onSuccess:t,onError:n})}};function bh(e){let t,n,r=!1,i=null,o=!1;function s(e){null!=i&&clearTimeout(i),r||null==e||(0===e?t():i=setTimeout(t,e))}function d(t,n,i){if(s(null),r=!0,Or.setConsentData(t),"function"==typeof e){for(var o=arguments.length,a=new Array(o>3?o-3:0),d=3;d<o;d++)a[d-3]=arguments[d];e(n,i,...a)}}if(!a(Object.keys(hh),ch))return void d(null,!1,`CMP framework (${ch}) is not a supported framework.  Aborting consentManagement module and resuming auction.`);const c={onSuccess:e=>d(e,!1),onError:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];d(null,!0,e,...n)},onEvent:e=>{n=e,o||(o=!0,null!=gh&&s(gh))}};t=()=>{const e=e=>{d(e,!1,(o?"Timeout waiting for user action on CMP":"CMP did not load")+", continuing auction...")};vh(n,{onSuccess:e,onError:()=>e(Ah(void 0))})},hh[ch](c),null!=gh&&o||s(lh)}const yh=or("gdpr",(function(e,t){var n;n=function(n,r){if(r){let e=we;n&&(e=xe,r=`${r} Canceling auction as per consentManagement config.`);for(var i=arguments.length,o=new Array(i>2?i-2:0),s=2;s<i;s++)o[s-2]=arguments[s];e(r,...o)}n?(e.stopTiming(),"function"==typeof t.bidsBackHandler?t.bidsBackHandler():xe("Error executing bidsBackHandler")):e.call(this,t)},fh?(Ie("User consent information already known.  Pulling internally stored information..."),n(!1)):bh(n)}));function vh(e,t){let{onSuccess:n,onError:r}=t;(()=>{const t=e&&"boolean"==typeof e.gdprApplies?e.gdprApplies:uh,n=e&&e.tcString;return!("boolean"==typeof t&&(!0!==t||n&&De(n)))})()?r("CMP returned unexpected value during lookup process.",e):n(Ah(e))}function Ah(e){return fh={consentString:e?e.tcString:void 0,vendorData:e||void 0,gdprApplies:e&&"boolean"==typeof e.gdprApplies?e.gdprApplies:uh},e&&e.addtlConsent&&De(e.addtlConsent)&&(fh.addtlConsent=e.addtlConsent),fh.apiVersion=dh,fh}q.getConfig("consentManagement",(e=>(e=>{(e=e&&(e.gdpr||e.usp||e.gpp?e.gdpr:e))&&"object"==typeof e?(De(e.cmpApi)?ch=e.cmpApi:(ch="iab",Ie("consentManagement config did not specify cmp.  Using system default setting (iab).")),Ue(e.timeout)?lh=e.timeout:(lh=1e4,Ie("consentManagement config did not specify timeout.  Using system default setting (10000).")),gh=Ue(e.actionTimeout)?e.actionTimeout:null,uh=!0===e.defaultGdprScope,Ie("consentManagement module has been activated..."),"static"===ch&&(je(e.consentData)?(ph=e.consentData,null!=ph?.getTCData&&(ph=ph.getTCData),lh=0):xe("consentManagement config with cmpApi: 'static' did not specify consentData. No consents will be available to adapters.")),mh||o().requestBids.before(yh,50),mh=!0,Or.enable(),bh()):we("consentManagement (gdpr) config not defined, exiting consent manager")})(e.consentManagement))),ks.before(((e,t)=>e(t.then((e=>{const t=Or.getConsentData();return t&&("boolean"==typeof t.gdprApplies&&xt(e,"regs.ext.gdpr",t.gdprApplies?1:0),xt(e,"user.ext.consent",t.consentString)),e}))))),ma({type:da,name:"gdprAddtlConsent",fn:(e,t)=>{const n=t.gdprConsent?.addtlConsent;n&&"string"==typeof n&&xt(e,"user.ext.ConsentedProvidersSettings.consented_providers",n)}}),s("consentManagement");const Ih="iab";let wh,xh,Ch=Ih,Eh=50,Th=!1;const Sh={iab:e=>{let{onSuccess:t,onError:n}=e,r=(()=>{const e={};return{consentDataCallback:(r,i)=>{i&&r.uspString&&(e.usPrivacy=r.uspString),e.usPrivacy?Oh(e,{onSuccess:t,onError:n}):n("Unable to get USP consent string.")}}})();const i=ah({apiName:"__uspapi",apiVersion:1,apiArgs:["command","version","callback"]});if(!i)return n("USP CMP not found.");i.isDirect?Ie("Detected USP CMP is directly accessible, calling it now..."):Ie("Detected USP CMP is outside the current iframe where Prebid.js is located, calling it now..."),i({command:"getUSPData",callback:r.consentDataCallback}),i({command:"registerDeletion",callback:(e,t)=>(null==t||t)&&li.callDataDeletionRequest(e)}).catch((e=>{xe("Error invoking CMP `registerDeletion`:",e)}))},static:e=>{let{onSuccess:t,onError:n}=e;Oh(wh,{onSuccess:t,onError:n})}};function _h(e){let t=null,n=!1;function r(r,i){if(null!=t&&clearTimeout(t),n=!0,Rr.setConsentData(r),null!=e){for(var o=arguments.length,s=new Array(o>2?o-2:0),a=2;a<o;a++)s[a-2]=arguments[a];e(i,...s)}}if(!Sh[Ch])return void r(null,`USP framework (${Ch}) is not a supported framework. Aborting consentManagement module and resuming auction.`);const i={onSuccess:r,onError: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];r(null,`${e} Resuming auction without consent data as per consentManagement config.`,...n)}};Sh[Ch](i),n||(0===Eh?Oh(void 0,i):t=setTimeout(i.onError.bind(null,"USPAPI workflow exceeded timeout threshold."),Eh))}const kh=or("usp",(function(e,t){var n=this;Th||Rh(),_h((function(r){if(null!=r){for(var i=arguments.length,o=new Array(i>1?i-1:0),s=1;s<i;s++)o[s-1]=arguments[s];we(r,...o)}e.call(n,t)}))}));function Oh(e,t){let{onSuccess:n,onError:r}=t;e&&e.usPrivacy?((e=>{e&&e.usPrivacy&&(xh=e.usPrivacy)})(e),n(xh)):r("USPAPI returned unexpected value during lookup process.",e)}function Rh(){Th||(Ie("USPAPI consentManagement module has been activated"+(arguments.length>0&&void 0!==arguments[0]&&arguments[0]?"":` using default values (api: '${Ch}', timeout: ${Eh}ms)`)),Th=!0,Rr.enable()),_h()}q.getConfig("consentManagement",(e=>(e=>{(e=e&&e.usp)&&"object"==typeof e||we("consentManagement.usp config not defined, using defaults"),e&&De(e.cmpApi)?Ch=e.cmpApi:(Ch=Ih,Ie(`consentManagement.usp config did not specify cmpApi. Using system default setting (${Ih}).`)),e&&Ue(e.timeout)?Eh=e.timeout:(Eh=50,Ie("consentManagement.usp config did not specify timeout. Using system default setting (50).")),"static"===Ch&&(je(e.consentData)&&je(e.consentData.getUSPData)?(e.consentData.getUSPData.uspString&&(wh={usPrivacy:e.consentData.getUSPData.uspString}),Eh=0):xe("consentManagement config with cmpApi: 'static' did not specify consentData. No consents will be available to adapters.")),Rh(!0)})(e.consentManagement))),mn("requestBids").before(kh,50),ks.before(((e,t)=>e(t.then((e=>{const t=Rr.getConsentData();return t&&xt(e,"regs.ext.us_privacy",t),e}))))),s("consentManagementUsp"),ta.cmd.push((()=>{(e=>{e.setConfig({rubicon:{singleRequest:!0}})})(ta)})),ta.processQueue();const Dh=ta},412:(e,t,n)=>{n.d(t,{C:()=>o,a:()=>i});var r=n(194);function i(e,t,n){for(const[i,o]of Object.entries(n))t[i]=function(){for(var t=arguments.length,n=new Array(t),s=0;s<t;s++)n[s]=arguments[s];return r.Rm.info("API",i,"is called",n.length?"with":"",...n),o(e,...n)}}function o(e,t){const n=e.core.slots.get(t)||t&&[...e.core.slots.values()].find((e=>{let{elemId:n,elem:r}=e;return n===t||r?.dataset.refId===t}));return n||r.Rm.warn("Cannot find slot by ID",t),n}},194:(e,t,n)=>{n.d(t,{sV:()=>i,L5:()=>f,YW:()=>c,L1:()=>u,Tz:()=>l,Ts:()=>d,s3:()=>p,Rm:()=>r.Rm,hj:()=>g});var r=n(633);class i{state={};handlers={};on(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10;const r=this.handlers[e]||=[];let i=0;for(;i<r.length;++i){const[e,o]=r[i];if(e===n)return o.push(t),this;if(e>n)break}return r.splice(i,0,[n,[t]]),this}emit(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const{state:r}=this,i=this.handlers[e]||[],{firstStage:d=0}=n;let c=a(r,e,t,-1);if(n.sync){for(const[n,o]of i)if(n>=d&&(c=a(r,e,t,n),s(o,c),c.stopped))break;return c}const l=i.findIndex((e=>{let[t]=e;return t>=d}));return l<0?Promise.resolve(c):o(r,e,t,i,l)}}function o(e,t,n,r,i){const[d,c]=r[i],l=a(e,t,n,d);let u;const p=new Promise((e=>{u=e}));return l.next=e=>p.then(e),Promise.all(s(c,l)).then((()=>(u(),l.stopped||++i>=r.length?l:p.then((()=>o(e,t,n,r,i))))))}function s(e,t){const{type:n,stage:i}=t;function o(e){r.Rm.error("Events handler of",n,"stage",i,"throws",e)}r.Rm.trace("Events handling",n,"stage",i,"with data",t.data);const s=[];for(const n of e)try{const e=n(t);e?.then&&s.push(Promise.resolve(e).catch(o))}catch(e){o(e)}return s}function a(e,t,n,r){let i=!1;return{get type(){return t},get state(){return e},get data(){return n},stop(){i=!0},get stopped(){return i},get stage(){return r}}}function d(e,t){const{state:n}=e;n.events=e,n.core={slots:new Map},e.on("ad.init",(t=>{t.stopped||e.emit("ad.fetch",t.data)}),100),e.emit("init",t)}function c(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return t.name||="",t.id||=`${t.name||"slot"}-${Math.random().toString(36).slice(2,6)}`,e.core.slots.set(t.id,t),e.events.emit("slot.define",{slot:t},{sync:!0}),t.core={},t.id}function l(e,t){const n=e.core.slots.get(t);n&&(e.core.slots.delete(t),m(e,n))}function u(e){const t=[...e.core.slots.values()];e.core.slots.clear(),t.forEach((t=>{m(e,t)}))}function p(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const i=[];for(const n of t){const t=e.core.slots.get(n);t&&("loading"===t.core.state?r.Rm.warn("Slot",n,"is already loading ads"):(t.core.state="loading",i.push(t)))}i.length&&(n.slots=i,e.events.emit("ad.init",n))}function g(e,t,n,r){let i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};const o=r.map((t=>e.core.slots.get(t))).filter((e=>e));o.length&&(i.slots=o,e.events.emit(t,i,{firstStage:n}))}function f(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=e.core.slots.get(t);r&&"loading"===r.core.state&&(r.core.state="rendered",n.slot=r,e.events.emit("ad.rendered",n))}function m(e,t){t.destroyed=!0,delete t.core.state,e.events.emit("slot.destroy",{slot:t},{sync:!0})}},633:(e,t,n)=>{n.d(t,{Rm:()=>r,zs:()=>i});const r=new class{trace(){}info(){}warn=i("warn");error=i("error")};function i(e){return console[e].bind(console,"%cHTL","display:inline-block;color:#fff;background:#333;padding:1px 4px;border-radius:3px")}},648:(e,t,n)=>{n.d(t,{setup:()=>c});var r=n(194),i=n(633);const o=/(\s|^)slot$/i;function s(e,t){const n=(0,i.zs)(t);return function(){for(var t=arguments.length,r=new Array(t),i=0;i<t;i++)r[i]=arguments[i];for(let e=1;e<r.length;++e){const t=r[e-1];"string"==typeof t&&o.test(t)&&(r[e]=String(r[e]))}n((e=>{e=e/1e3%3600;const t=Math.floor(e/60),n=(e-60*t+100).toFixed(3).slice(1);return`[${String(t+100).slice(1)}:${n}]`})(Date.now()-e),...r)}}var a=n(416);const d=110;function c(e,t,n){const{state:o}=t;((e,t)=>{let{ts:n}=e;i.Rm.info=s(n,"log"),i.Rm.warn=s(n,"warn"),i.Rm.error=s(n,"error"),t&&(i.Rm.trace=s(n,"debug"))})(o,"verbose"===n),e.state=o,o.wnd.htlbid||=e,o.debug={};try{o.wnd.sessionStorage.setItem("htlbid_debug",n)}catch{}(function(e){e.on("init",(e=>{(async e=>{let{state:t}=e;const{prebid:n}=t;if(!n)return;const i=await n.ready;i.onEvent("adRenderSucceeded",(e=>{let{bid:n}=e;for(const e of t.core.slots.values())if(e.ad?.prebid?.adUnit.code===n.adUnitCode)return void r.Rm.info("Slot",e.id,"rendered by prebid bidder",n.bidder)})),i.onEvent("adRenderFailed",(e=>{r.Rm.error("Prebid.js fails to render:",e)}))})(e)}),a.bk)})(t),t.on("init",l,d).on("slot.define",(e=>{let{data:t}=e;r.Rm.info("Slot",t.slot.id,"is defined with",t.slot)}),d).on("slot.destroy",(e=>{let{data:t}=e;r.Rm.info("Slot",t.slot.id,"is destroyed")}),d).on("ad.fetch",u,d).on("ad.rendered",p,0)}function l(e){let{state:t}=e;const{timing:n}=t;null!=n.load&&r.Rm.info("Timing load",n.load.toFixed()),r.Rm.info("Timing init",n.init.toFixed())}function u(e){let{state:t,data:n}=e;t.debug.loggedAdFetchTiming||(t.debug.loggedAdFetchTiming=!0,r.Rm.info("Timing 1st ad fetch",t.timing.adFetch.toFixed()));for(const e of n.slots)r.Rm.info("Slot",e.id,"fetching ads with targeting",e.ad.targeting)}function p(e){let{data:t}=e;const{slot:n,...i}=t;r.Rm.info("Slot",n.id,"is rendered with",i)}},416:(e,t,n)=>{n.d(t,{Cm:()=>c,HZ:()=>o,PF:()=>h,Rl:()=>g,Ry:()=>r,_5:()=>l,bk:()=>a,eo:()=>f,iD:()=>s,iO:()=>p,lD:()=>u,n8:()=>y,ny:()=>d,rN:()=>b,sW:()=>i,yO:()=>m});const r=0,i=9,o=11,s=49,a=50,d=90,c=r+1,l=r+1,u=l+1,p=u+1,g=p+1,f=g+1,m=o,h=o+1,b=h+1,y=b+1},82:(e,t,n)=>{function r(e,t,n){const{document:r}=e,i=r.createElement("script");return i.src=t,i.async=!0,Object.assign(i,n),r.head.appendChild(i)}function i(e){const{documentElement:t}=e.document;return[t.clientWidth,t.clientHeight]}function o(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)}function s(e,t){let n=setTimeout((()=>{n=null,e()}),t);return()=>null!=n&&(clearTimeout(n),n=null,!0)}function a(e,t){let n;function r(){n=null,e()}function i(){n??=setTimeout(r,t)}return i.cancel=()=>{null!=n&&(clearTimeout(n),n=null)},i}function d(e,t){let n,r;function i(){n=null==n?0:n+t-Date.now(),n>0?(setTimeout(i,n),n=null):(r=!1,e())}return()=>{r?n=Date.now():(r=!0,n=null,setTimeout(i,t))}}function c(){let e,t;return[new Promise(((n,r)=>{e=n,t=r})),e,t]}function l(e){const[t,n,r]=c(),i=s(n,e);return[t,function(){i(),n(...arguments)},function(){i(),r(...arguments)}]}n.d(t,{BU:()=>b,Fs:()=>y,Hr:()=>i,Sf:()=>l,T:()=>g,Z3:()=>p,dW:()=>o,k0:()=>r,nF:()=>a,uN:()=>s,v6:()=>c,vA:()=>d,vD:()=>m,z$:()=>h});class u extends Error{name="TimeoutError"}function p(e,t){let n;const r=new Promise(((e,r)=>{const i=s((()=>r(new u)),t);n=()=>{i(),e()}}));return Promise.all([e.finally(n),r])}function g(e,t){const n=[];return null!=t&&t>=0&&n.push({...e[t],hp:1}),{ver:"1.0",complete:1,nodes:n}}function f(e){return null==e?e:String(e)}function m(e){return Array.isArray(e)?e.map(f):f(e)}function h(e){return"loading"===e.document.readyState?((e,t)=>{let{document:n}=e;return new Promise((e=>{n.addEventListener(t,(function r(i){e(i),n.removeEventListener(t,r)}))}))})(e,"DOMContentLoaded"):Promise.resolve()}function b(e,t){let n,r=[];e.waitFor=e=>{e&&(r.push(e),n=null)},Object.defineProperty(e,"allReady",{get:()=>(n||(r.length?(r.length>1&&(r=[Promise.allSettled(r)]),n=Promise.allSettled([t,r[0]])):n=t),n)})}function y(e){return Array.isArray(e)&&2===e.length&&e.every((e=>Number.isInteger(e)&&e>0))}}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var o=t[r]={exports:{}};return e[r](o,o.exports,n),o.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e=n(194),t=n(82),r=n(416),i=n(412);function o(t){e.Rm.warn("API",t,"should only be called for development")}function s(t){(0,e.L1)(t),t.events.emit("pageview",{},{sync:!0})}function a(e,t,n){e.events.on(t,(e=>{let{type:t,data:r}=e;return n({type:t,data:c(r)})}))}async function d(e,t,n){if(!t)return;let r;r=Array.isArray(n?.userIds)?new Set(n.userIds):{has:()=>!0},await e.events.emit("user.data",{data:t,targets:r})}function c(e){const t=e.safeData||={};return e.slot&&!t.slot?t.slot=e.slot.safeData:e.slots&&!t.slots&&Object.defineProperty(t,"slots",{enumerable:!0,get:()=>e.slots.map((e=>e.safeData))}),t}const l="htl-load",u="htl-init",p="htl-adFetch";function g(e){let{state:t}=e;const{performance:n}=t.wnd,r=n.mark(u),i=t.timing={};i.init=n.measure(u,{start:l,end:r.startTime}).duration,n.clearMeasures(u);const[o]=n.getEntriesByType("navigation");o&&(i.load=n.measure(l,{start:o.domInteractive,end:l}).duration,n.clearMeasures(l)),n.clearMarks(l)}function f(e){let{state:t}=e;if(!t.timing.adFetch){const{performance:e}=t.wnd;t.timing.adFetch=e.measure(p,u).duration,e.clearMarks(u),e.clearMeasures(p)}}function m(e){let{state:t,data:n}=e;t.events.emit("pageview",{initial:!0,safeData:{initial:!0}},{sync:!0});const{htlbid:r}=n,{cmd:i}=r;r.cmd={push:h},(i||[]).forEach(h)}function h(t){try{t()}catch(t){e.Rm.error("Error processing command",t)}}function b(t){let{state:n,data:r}=t;const{slot:i}=r;i.config={...n.config.slots[i.name]},i.config.tiles||=[],i.elemId||Object.defineProperty(i,"elemId",{get(){return this.elem?.id},set(e){this.elem.id=e}}),i.safeData={id:i.id,name:i.name,get elem(){return i.elem},get filled(){return i.filled},get tile(){return i.tile?.viewport&&{viewport:[...i.tile.viewport]}},get destroyed(){return i.destroyed},destroy(){(0,e.Tz)(n,i.id)}}}function y(e){let{state:t,data:n}=e;A(t,n.slot)}function v(e){const{data:n}=e,[r,i]=(0,t.Hr)(e.state.wnd),o=[];for(const e of n.slots)if(!e.destroyed){if(!e.tile){const[t,n]=I(e,r,i);e.tile={viewport:t,config:n},e.sizes=n.sizes}e.tile.config?(e.ad={targeting:{}},o.push(e)):delete e.core.state}n.slots=o,o.length||e.stop()}function A(e,t){const{ad:n}=t;n&&(delete t.ad,e.events.emit("ad.destroy",{ad:n},{sync:!0}))}function I(e,t,n){return e.config.tiles.find((e=>{let[r]=e;return t>r[0]||t===r[0]&&n>=r[1]}))||[]}const w=window.htlbid||={};if(w.cmd||=[],!w.loaded){Object.assign(w,{siteId:82,revision:228,codeRevision:"0780bd",clientVersion:"3.0.0-pre",countryCode:"HK",regionCode:"UNKNOWN",deviceType:"desktop",ready:new Promise((e=>{w.cmd.push(e)}))}),w.loaded=!0,window.performance.mark("htl-load");const c={buildId:39389,pixelId:"e287b791b49f",htlPrefix:"htl",modules:{amazon:{pubId:"30787d05-7895-471e-9cdf-d931d7b5ea5d",schain:0},blockthrough:{orgId:"5175628516556800"},cookieDeprecationMeasurement:{targetingKey:"cexp_group"},gpt:{networkCode:"1272586"},hb:{timeout:2e3,trafficShaping:{conds:{os:[["ios"]]},bidders:[["appnexus",{os:0},!0]],reportingKeyPrefix:"ts"}},liveIntentAbTesting:{percent:95,targetingKey:"li-module-enabled"},prebid:{config:{minBidCacheTTL:60,eventHistoryTTL:300,realTimeData:{auctionDelay:50,dataProviders:[{name:"browsi",params:{url:"yield-manager.browsiprod.com",siteKey:"artofmanliness",pubKey:"hashtaglabs"}}]},pageUrl:"https://artofmanliness.com",enableTIDs:!0,useBidCache:!0,priceGranularity:{buckets:[{max:3,increment:.01},{max:8,increment:.05},{max:10,increment:.5},{max:50,increment:1}]},floors:{data:{schema:{fields:["device","bidder"]},values:{"mobile|pbrtb_banner":.01,"mobile|conversant":.02,"mobile|mediafusenxs":.02,"desktop|onetag":.02,"desktop|mediafusenxs":.02,"desktop|pbrtb_banner":.03,"desktop|gourmetads":.03,"mobile|onetag":.05,"desktop|conversant":.05,"desktop|grid":.05,"desktop|pubmatic":.05,"desktop|appnexus":.05,"desktop|rubicon":.05,"mobile|gourmetads":.06,"mobile|pubmatic":.07,"mobile|appnexus":.08,"mobile|grid":.08,"mobile|rubicon":.08,"desktop|teads":.08,"desktop|sovrn":.08,"mobile|ix":.1,"desktop|ix":.1,"mobile|sovrn":.12,"mobile|teads":.12}}}},pbjsGlobal:"pbjs",bidderSettings:{standard:{storageAllowed:!0}},aliases:[["rubicon","shemedia"],["appnexus","htlads","mediafusenxs","bighappy"]],analytics:[{provider:"asteriobid",options:{bundleId:"cbb32a3e-5582-4352-967b-c50bdedee033",sampling:.05}}],bids:[["shemedia",{accountId:"10278",siteId:"210096",zoneId:"3487854"},{accountId:"10278",siteId:"210096",zoneId:"3487854"},{accountId:"10278",siteId:"210096",zoneId:"3487854"},{accountId:"10278",siteId:"210096",zoneId:"3487854"},{accountId:"10278",siteId:"210096",zoneId:"3487854"},{accountId:"10278",siteId:"210096",zoneId:"3487854"},{accountId:"10278",siteId:"210096",zoneId:"3487854"},{accountId:"10278",siteId:"210096",zoneId:"3487854"},{accountId:"10278",siteId:"210096",zoneId:"3487854"},{accountId:"10278",siteId:"210096",zoneId:"3487854"},{accountId:"10278",siteId:"210096",zoneId:"3487854"}],["appnexus",{placementId:"31087615"},{placementId:"17476084"},{placementId:"17476085"},{placementId:"31087620"},{placementId:"17476090"},{placementId:"17476072"},{placementId:"17476082"},{placementId:"17476086"},{placementId:"17476086"},{placementId:"17476089"}],["pubmatic",{publisherId:"159885",adSlot:"5441176"},{publisherId:"159885",adSlot:"3233555"},{publisherId:"159885",adSlot:"3233554"},{publisherId:"159885",adSlot:"3233551"},{publisherId:"159885",adSlot:"5441178"},{publisherId:"159885",adSlot:"3233551"},{publisherId:"159885",adSlot:"3233554"},{publisherId:"159885",adSlot:"3233555"},{publisherId:"159885",adSlot:"3233552"},{publisherId:"159885",adSlot:"3233553"},{publisherId:"159885",adSlot:"3233553"},{publisherId:"159885",adSlot:"3233551"}],["rubicon",{accountId:"13322",siteId:"292788",zoneId:"3077390"},{accountId:"13322",siteId:"292788",zoneId:"1469734"},{accountId:"13322",siteId:"292788",zoneId:"1469740"},{accountId:"13322",siteId:"292788",zoneId:"3077392"},{accountId:"13322",siteId:"292788",zoneId:"1469824"},{accountId:"13322",siteId:"292788",zoneId:"1469730"},{accountId:"13322",siteId:"292788",zoneId:"1469738"},{accountId:"13322",siteId:"292788",zoneId:"1469744"},{accountId:"13322",siteId:"292788",zoneId:"1469744"},{accountId:"13322",siteId:"292788",zoneId:"1469820"}],["sovrn",{tagid:"1171327"},{tagid:"654437"},{tagid:"654441"},{tagid:"1171328"},{tagid:"654444"},{tagid:"654445"},{tagid:"654429"},{tagid:"654435"},{tagid:"654436"},{tagid:"654439"},{tagid:"654440"},{tagid:"654442"},{tagid:"654442"},{tagid:"654443"}],["conversant",{site_id:"126733",secure:"1"},{site_id:"126733",secure:"1"},{site_id:"126733",secure:"1"},{site_id:"126733",secure:"1"},{site_id:"126733",secure:"1"},{site_id:"126733",secure:"1"},{site_id:"126733",secure:"1"}],["onetag",{pubId:"6da66bc9398bdea"},{pubId:"6da66bc9398bdea"},{pubId:"6da66bc9398bdea"},{pubId:"6da66bc9398bdea"},{pubId:"6da66bc9398bdea"},{pubId:"6da66bc9398bdea"},{pubId:"6da66bc9398bdea"},{pubId:"6da66bc9398bdea"},{pubId:"6da66bc9398bdea"},{pubId:"6da66bc9398bdea"}],["ix",{siteId:"1043733"},{siteId:"430070"},{siteId:"430067"},{siteId:"1043734"},{siteId:"430067"},{siteId:"430069"},{siteId:"430071"},{siteId:"430072"},{siteId:"430070"},{siteId:"430068"},{siteId:"430067"},{siteId:"430069"},{siteId:"430069"},{siteId:"430067"}],["gourmetads",{placementId:"31102971",usePaymentRule:!0},{placementId:"21369892",usePaymentRule:!0},{placementId:"31103026",usePaymentRule:!0},{placementId:"21369894",usePaymentRule:!0},{placementId:"21369898",usePaymentRule:!0},{placementId:"21369899",usePaymentRule:!0},{placementId:"21369893",usePaymentRule:!0},{placementId:"21369895",usePaymentRule:!0},{placementId:"21369896",usePaymentRule:!0},{placementId:"21369897",usePaymentRule:!0}],["htlads",{placementId:"19105111"},{placementId:"19105112"},{placementId:"19105122"},{placementId:"19105123"},{placementId:"19105110"},{placementId:"19105093"},{placementId:"19105111"},{placementId:"19105113"},{placementId:"19105112"},{placementId:"19105123"},{placementId:"19105124"},{placementId:"19105122"}],["mediafusenxs",{placementId:"21331837"},{placementId:"21331838"},{placementId:"21332497"},{placementId:"21332499"},{placementId:"21331836"},{placementId:"21331907"},{placementId:"21332130"},{placementId:"21332397"}],["grid",{uid:"58268"},{uid:"58270"},{uid:"58271"},{uid:"58273"},{uid:"58267"},{uid:"58269"},{uid:"58263"},{uid:"58266"}],["pbrtb",{tagId:"82-4",siteId:"artofmanliness.com",publisherId:"54",publisherName:"art-of-manliness",size:"728x90"},{tagId:"82-6",siteId:"artofmanliness.com",publisherId:"54",publisherName:"art-of-manliness",size:"300x250"},{tagId:"82-16",siteId:"artofmanliness.com",publisherId:"54",publisherName:"art-of-manliness",placementTypeId:2},{tagId:"82-7",siteId:"artofmanliness.com",publisherId:"54",publisherName:"art-of-manliness",size:"300x250"},{tagId:"82-8",siteId:"artofmanliness.com",publisherId:"54",publisherName:"art-of-manliness",size:"300x250"},{tagId:"82-8",siteId:"artofmanliness.com",publisherId:"54",publisherName:"art-of-manliness",size:"320x50"},{tagId:"82-1",siteId:"artofmanliness.com",publisherId:"54",publisherName:"art-of-manliness",size:"970x250"},{tagId:"82-1",siteId:"artofmanliness.com",publisherId:"54",publisherName:"art-of-manliness",size:"970x90"},{tagId:"82-1",siteId:"artofmanliness.com",publisherId:"54",publisherName:"art-of-manliness",size:"728x90"},{tagId:"82-5",siteId:"artofmanliness.com",publisherId:"54",publisherName:"art-of-manliness",size:"320x50"},{tagId:"82-6",siteId:"artofmanliness.com",publisherId:"54",publisherName:"art-of-manliness",size:"300x250"}],["bighappy",{placementId:"20843809"},{placementId:"20843810"}],["teads",{pageId:"109307",placementId:"118832"}]],groups:[[0,0],[1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0],[0,1],[0,2],[1,1,4,1,3,1,7,1,9,0,2,1,2,2,10,0,6,1,8,1,11,0,12,0],[0,3],[1,2,4,2,3,2,7,2,9,1,2,3],[1,3,2,4,3,3,4,3,5,1,6,2,7,3,8,2],[0,4],[10,1,6,3,8,3,11,1,12,1,12,2],[0,5],[0,6],[0,7],[10,2,6,4,8,4,11,2],[10,3,6,5,8,5,11,3,12,3],[1,4,4,4,4,5,3,4,7,4,7,5,9,2,9,3,2,5,10,4,6,6,8,6,11,4,12,4,12,5],[0,8],[5,2,1,5,4,6,4,7,4,8,3,5,7,6,7,7,7,8,9,4,9,5,9,6,2,6,2,7,10,5,6,7,8,7,11,5,12,6,12,7,12,8],[5,3,1,6,4,9,4,10,3,6,7,9,7,10,9,7,9,8,2,8,10,6,6,8,8,8,11,6],[5,4,1,7,4,11,3,7,7,11,9,9,2,9,10,7,6,9,8,9,11,7,12,9],[5,5,1,8,4,12,3,8,7,12,9,10,2,10,13,0],[5,6,14,0,1,9,4,13,3,9,7,13,9,11,2,11,13,1,12,10],[0,9],[0,10]],userSync:{userIds:[{name:"liveIntentId",params:{identifiersToResolve:["_pubcid","_li_duid","_sharedID"],publisherId:"67035",requestedAttributesOverrides:{bidswitch:!0,index:!0,magnite:!0,medianet:!0,openx:!0,pubmatic:!0,uid2:!0,thetradedesk:!0,sovrn:!0}},storage:{type:"html5",name:"__tamLIResolveResult",expires:1}},{name:"sharedId",storage:{type:"cookie",name:"_sharedID",expires:365}}]},schain:{global:0}},refreshCounter:{key:"htl_refresh"},schain:[{asi:"hashtag-labs.com",sid:"54"}],lazyLoad:{},refresh:{}},slots:{Desktop_Billboard_Flex:{tiles:[[[900,0],{sizes:[[728,90],[970,90],[970,250]],amazon:{},prebid:{groups:[4,17,0]}}],[[0,0],{}]],gpt:{targeting:{htl_slot_gpid:["Desktop_Billboard_Flex"]},adUnit:"Desktop_Billboard_Flex"},refresh:{interval:30,max:1e3}},Desktop_Bottom_Flex:{tiles:[[[900,0],{sizes:[[300,250]],amazon:{},prebid:{groups:[1,2]}}],[[0,0],{}]],gpt:{targeting:{htl_slot_gpid:["Desktop_Bottom_Flex"]},adUnit:"Desktop_Bottom_Flex"},lazyLoad:{enabled:!0,pixels:350},refresh:{interval:30,max:1e3}},Desktop_HalfPage_Flex:{tiles:[[[900,0],{sizes:[[300,250],[300,600]],amazon:{},prebid:{groups:[6,18,3]}}],[[0,0],{}]],gpt:{targeting:{htl_slot_gpid:["Desktop_HalfPage_Flex"]},adUnit:"Desktop_HalfPage_Flex"},refresh:{interval:30,max:1e3}},Desktop_Leaderboard:{tiles:[[[900,0],{sizes:[[728,90]],amazon:{},prebid:{groups:[4,5]}}],[[0,0],{}]],gpt:{targeting:{htl_slot_gpid:["Desktop_Leaderboard"]},adUnit:"Desktop_Leaderboard"},lazyLoad:{enabled:!0,pixels:350},refresh:{interval:30,max:1e3}},Mobile_Bottom_Flex:{tiles:[[[900,0],{}],[[0,0],{sizes:[[300,250],[300,50],[320,50]],amazon:{},prebid:{groups:[7,8]}}]],gpt:{targeting:{htl_slot_gpid:["Mobile_Bottom_Flex"]},adUnit:"Mobile_Bottom_Flex"},lazyLoad:{enabled:!0,pixels:350},refresh:{interval:30,max:1e3}},Mobile_Inline_MedRec:{tiles:[[[900,0],{}],[[0,0],{sizes:[[300,250]],amazon:{},prebid:{groups:[13,21,10]}}]],gpt:{targeting:{htl_slot_gpid:["Mobile_Inline_MedRec"]},adUnit:"Mobile_Inline_MedRec"},lazyLoad:{enabled:!0,pixels:500},refresh:{interval:30,max:1e3}},Mobile_Leaderboard:{tiles:[[[900,0],{}],[[0,0],{sizes:[[320,50]],amazon:{},prebid:{groups:[19,11]}}]],gpt:{targeting:{htl_slot_gpid:["Mobile_Leaderboard"]},adUnit:"Mobile_Leaderboard"},refresh:{interval:30,max:1e3}},Mobile_MedRec:{tiles:[[[900,0],{}],[[0,0],{sizes:[[300,250]],amazon:{},prebid:{groups:[13,21,12]}}]],gpt:{targeting:{htl_slot_gpid:["Mobile_MedRec"]},adUnit:"Mobile_MedRec"},lazyLoad:{enabled:!0,pixels:500},refresh:{interval:30,max:1e3}},Mobile_Medrec_Flex:{tiles:[[[900,0],{}],[[0,0],{sizes:[[300,250],[320,50]],amazon:{},prebid:{groups:[15,21,16]}}]],gpt:{targeting:{htl_slot_gpid:["Mobile_Medrec_Flex"]},adUnit:"Mobile_Medrec_Flex"},lazyLoad:{enabled:!0,pixels:350},refresh:{interval:30,max:1e3}},Responsive_Content_Flex:{tiles:[[[900,0],{sizes:[[300,250]],amazon:{},prebid:{groups:[6,18,23]}}],[[0,0],{sizes:[[300,250]],amazon:{},prebid:{groups:[9,13,15,21,22]}}]],gpt:{targeting:{htl_slot_gpid:["Responsive_Content_Flex"]},adUnit:"Responsive_Content_Flex"},lazyLoad:{enabled:!0,pixels:1e3},refresh:{interval:30,max:1e3}}},modes:{default:!0}};w.config?.(c);const l=new e.sV;l.state.wnd=window,(e=>{const[n,r]=[t.z$,t.k0].map((t=>function(){for(var n=arguments.length,r=new Array(n),i=0;i<n;i++)r[i]=arguments[i];return t(e,...r)}));try{n().then((()=>{r("https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5284223420088782",{crossOrigin:"anonymous"})}))}catch(e){console.error("Custom JS error:",e)}})(window),(async(c,l,u)=>{const{state:p}=l;p.config=u,p.ts=Date.now();const h=u.debug||(e=>{try{return/(?:^\?|&)htlbid_debug=(true|verbose)(?:&|$)/.exec(e.location.search)?.[1]||e.sessionStorage.getItem("htlbid_debug")}catch{}return!1})(p.wnd);h&&(await Promise.resolve().then(n.bind(n,648))).setup(c,l,h),(await Promise.resolve().then(n.bind(n,142))).register(l),(e=>{e.on("init",g,r.ny).on("ad.fetch",f,r.ny)})(l),(e=>{e.on("init",(e=>{let{state:t,data:n}=e;const{htlbid:r}=n;(0,i.a)(t,r,{newPage:s,on:a,setUserData:d}),Object.assign(r,{enableDebug(){o("enableDebug"),r.state!==t&&((t.debug||={}).enabledByApi=!0,r.state=t)},disableDebug(){o("disableDebug"),t.debug?.enabledByApi&&(delete r.state,delete t.debug.enabledByApi)}})}))})(l),l.on("init",m,r.iD).on("slot.define",b,r._5).on("slot.destroy",y,r._5).on("ad.init",(e=>{let{state:t,data:n}=e;for(const e of n.slots)A(t,e)}),r.Ry).on("ad.init",v,r._5).on("ad.rendered",(e=>{let{data:t}=e;t.slot.filled||=!t.empty}),r._5),p.wnd.addEventListener("resize",(0,t.vA)((()=>(e=>{const[n,r]=(0,t.Hr)(e.wnd),i=[];for(const t of e.core.slots.values()){if(!t.tile)continue;const{viewport:e}=t.tile;if(e){const[o,s]=e;if(o>n||o===n&&s>r){i.push(t);continue}}const[o]=I(t,n,r);o!==e&&i.push(t)}i.length&&e.events.emit("viewport.break",{slots:i})})(p)),500)),(0,e.Ts)(l,{htlbid:c})})(w,l,c)}})()})();