/** Teal */ function loadTlpbjs(account) { /* prebid.js v9.50.0 Updated: 2025-06-19 Modules: consentManagementTcf, consentManagementUsp, prebidServerBidAdapter, userId, pubProvidedIdSystem, criteoIdSystem, sharedIdSystem */ if(window.tlpbjs&&window.tlpbjs.libLoaded)try{window.tlpbjs.getConfig("debug")&&console.warn("Attempted to load a copy of Prebid.js that clashes with the existing 'tlpbjs' instance. Load aborted.")}catch(t){}else (function(){ (()=>{var r,t={433:(r,t,e)=>{function n(r,t,e,n,o){for(t=t.split?t.split("."):t,n=0;nn})},8128:r=>{ u.SYNC=1,u.ASYNC=2,u.QUEUE=4;var t="fun-hooks";var e=Object.freeze({useProxy:!0,ready:0}),n=new WeakMap,o="2,1,0"===[1].reduce((function(r,t,e){return[r,t,e]}),2).toString()?Array.prototype.reduce:function(r,t){var e,n=Object(this),o=n.length>>>0,i=0;if(t)e=t;else{for(;i{function n(r,t,e){t.split&&(t=t.split("."));for(var n,o,i=0,f=t.length,u=r;in})},5751:(r,t,e)=>{function n(r){var t,e,o;if(Array.isArray(r)){for(e=Array(t=r.length);t--;)e[t]=(o=r[t])&&"object"==typeof o?n(o):o;return e}if("[object Object]"===Object.prototype.toString.call(r)){for(t in e={},r)"__proto__"===t?Object.defineProperty(e,t,{value:n(r[t]),configurable:!0,enumerable:!0,writable:!0}):e[t]=(o=r[t])&&"object"==typeof o?n(o):o;return e}return r}e.d(t,{Q:()=>n})}},e={};function n(r){var o=e[r];if(void 0!==o)return o.exports;var i=e[r]={exports:{}};return t[r](i,i.exports,n),i.exports}n.m=t,r=[],n.O=(t,e,o,i)=>{if(!e){var f=1/0;for(l=0;l=i)&&Object.keys(n.O).every((r=>n.O[r](e[a])))?e.splice(a--,1):(u=!1,i0&&r[l-1][2]>i;l--)r[l]=r[l-1];r[l]=[e,o,i]},n.n=r=>{var t=r&&r.__esModule?()=>r.default:()=>r;return n.d(t,{a:t}),t},n.d=(r,t)=>{for(var e in t)n.o(t,e)&&!n.o(r,e)&&Object.defineProperty(r,e,{enumerable:!0,get:t[e]})},n.o=(r,t)=>Object.prototype.hasOwnProperty.call(r,t),(()=>{var r={673:0};n.O.j=t=>0===r[t];var t=(t,e)=>{var o,i,f=e[0],u=e[1],a=e[2],c=0;if(f.some((t=>0!==r[t]))){for(o in u)n.o(u,o)&&(n.m[o]=u[o]);if(a)var l=a(n)}for(t&&t(e);cn(8934)));o=n.O(o)})(); (self.tlpbjsChunk=self.tlpbjsChunk||[]).push([[802],{5789:(e,t,n)=>{n.d(t,{A4:()=>c,J7:()=>l,Pg:()=>u});var i=n(1580),r=n(1069),o=n(7873),s=n(5569);const a=(0,o.m)(),d="outstream";function c(e){const{url:t,config:n,id:o,callback:c,loaded:l,adUnitCode:u,renderNow:f}=e;this.url=t,this.config=n,this.handlers={},this.id=o,this.renderNow=f,this.adUnitCode=u,this.loaded=l,this.cmd=[],this.push=e=>{"function"==typeof e?this.loaded?e.call():this.cmd.push(e):(0,r.vV)("Commands given to Renderer.push must be wrapped in a function")},this.callback=c||(()=>{this.loaded=!0,this.process()}),this.render=function(){const e=arguments,n=()=>{this._render?this._render.apply(this,e):(0,r.JE)("No render function was provided, please use .setRender on the renderer")};!function(e){const t=a.adUnits.find((t=>t.code===e));if(!t)return!1;const n=t?.renderer,i=!!(n&&n.url&&n.render),r=t?.mediaTypes?.video?.renderer,o=!!(r&&r.url&&r.render);return!!(i&&!0!==n.backupOnly||o&&!0!==r.backupOnly)}(u)?f?n():(this.cmd.unshift(n),(0,i.R)(t,s.tp,d,this.callback,this.documentContext)):((0,r.JE)(`External Js not loaded by Renderer since renderer url and callback is already defined on adUnit ${u}`),n())}.bind(this)}function l(e){return!(!e||!e.url&&!e.renderNow)}function u(e,t,n){let i=null;e.config&&e.config.documentResolver&&(i=e.config.documentResolver(t,document,n)),i||(i=document),e.documentContext=i,e.render(t,e.documentContext)}c.install=function(e){let{url:t,config:n,id:i,callback:r,loaded:o,adUnitCode:s,renderNow:a}=e;return new c({url:t,config:n,id:i,callback:r,loaded:o,adUnitCode:s,renderNow:a})},c.prototype.getConfig=function(){return this.config},c.prototype.setRender=function(e){this._render=e},c.prototype.setEventHandlers=function(e){this.handlers=e},c.prototype.handleVideoEvent=function(e){let{id:t,eventName:n}=e;"function"==typeof this.handlers[n]&&this.handlers[n](),(0,r.OG)(`Prebid Renderer event for id ${t} type ${n}`)},c.prototype.process=function(){for(;this.cmd.length>0;)try{this.cmd.shift().call()}catch(e){(0,r.vV)(`Error processing Renderer command on ad unit '${this.adUnitCode}':`,e)}}},6811:(e,t,n)=>{n.d(t,{DL:()=>c,Ml:()=>r,Ue:()=>i,VJ:()=>u,hE:()=>l,hq:()=>d,mo:()=>a,pY:()=>f,uc:()=>s,yl:()=>o});const i="accessDevice",r="syncUser",o="enrichEids",s="fetchBids",a="reportAnalytics",d="transmitEids",c="transmitUfpd",l="transmitPreciseGeo",u="transmitTid",f="loadExternalScript"},3441:(e,t,n)=>{n.d(t,{s:()=>r});var i=n(1445);const r=(0,n(2604).ZI)((e=>i.Ay.resolveAlias(e)))},5569:(e,t,n)=>{n.d(t,{Tn:()=>s,fW:()=>o,tW:()=>r,tp:()=>i});const i="prebid",r="bidder",o="userId",s="analytics"},2604:(e,t,n)=>{n.d(t,{Dk:()=>s,Ii:()=>o,TQ:()=>g,U3:()=>h,XG:()=>l,ZI:()=>p,Zw:()=>c,bt:()=>u,e3:()=>f,iK:()=>a,q7:()=>d});var i=n(5569),r=n(9214);const o="component",s=o+"Type",a=o+"Name",d="adapterCode",c="storageType",l="configName",u="syncType",f="syncUrl",g="_config";function p(e){return function(t,n,r){const c={[s]:t,[a]:n,[o]:`${t}.${n}`};return t===i.tW&&(c[d]=e(n)),h(Object.assign(c,r))}}const h=(0,r.A_)("sync",(e=>e))},6953:(e,t,n)=>{n.d(t,{Vx:()=>d,$p:()=>m});var i=n(433),r=n(3272),o=n(5139),s=n(6811);const a=["data","ext.data","yob","gender","keywords","kwarray","id","buyeruid","customdata"].map((e=>`user.${e}`)).concat("device.ext.cdep"),d=["user.eids","user.ext.eids"],c=["user.geo.lat","user.geo.lon","device.geo.lat","device.geo.lon"],l=["device.ip"],u=["device.ipv6"];function f(e){return Object.assign({get(){},run(e,t,n,i,r){const o=n&&n[i];if(function(e){return null!=e&&("object"!=typeof e||Object.keys(e).length>0)}(o)&&r()){const e=this.get(o);void 0===e?delete n[i]:n[i]=e}}},e)}function g(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 o=arguments.length,s=new Array(o>2?o-2:0),a=2;a1?t-1:0),i=1;i{if(!1!==t[e.name])for(const[o,s]of e.paths){const a=null==o?n:(0,i.A)(n,o);if(r.push(e.run(n,o,a,s,d.bind(null,e))),!1===t[e.name])return}})),r.filter((e=>null!=e))}}function p(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o.io;return function(n){return!t(e,n)}}function h(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;return[{name:s.DL,paths:a,applies:p(s.DL,e)},{name:s.hq,paths:d,applies:p(s.hq,e)},{name:s.hE,paths:c,applies:p(s.hE,e),get:e=>Math.round(100*(e+Number.EPSILON))/100},{name:s.hE,paths:l,applies:p(s.hE,e),get:e=>function(e){if(!e)return null;let t=e.split(".").map(Number);if(4!=t.length)return null;let n=[];for(let e=0;e<4;e++){let t=Math.max(0,Math.min(8,24-8*e));n.push(255<<8-t&255)}return t.map(((e,t)=>e&n[t])).join(".")}(e)},{name:s.hE,paths:u,applies:p(s.hE,e),get:e=>function(e){if(!e)return null;let t=e.split(":").map((e=>parseInt(e,16)));for(t=t.map((e=>isNaN(e)?0:e));t.length<8;)t.push(0);if(8!=t.length)return null;let n=[];for(let e=0;e<8;e++){let t=Math.max(0,Math.min(16,64-16*e));n.push(65535<<16-t&65535)}return t.map(((e,t)=>e&n[t])).map((e=>e.toString(16))).join(":")}(e)},{name:s.VJ,paths:["source.tid"],applies:p(s.VJ,e)}].map(f)}const m=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;const t=g(h(e)),n=g(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;return[{name:s.hq,paths:["userId","userIdAsEids"],applies:p(s.hq,e)},{name:s.VJ,paths:["ortb2Imp.ext.tid"],applies:p(s.VJ,e)}].map(f)}(e));return function(e){const i={};return{ortb2:n=>(t(i,n,e),n),bidRequest:t=>(n(i,t,e),t)}}}();(0,o.qB)(s.VJ,"enableTIDs config",(()=>{if(!r.$W.getConfig("enableTIDs"))return{allow:!1,reason:"TIDs are disabled"}}))},5139:(e,t,n)=>{n.d(t,{io:()=>s,qB:()=>o});var i=n(1069),r=n(2604);const[o,s]=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(0,i.h0)("Activity control:");const t={};function n(e){return t[e]=t[e]||[]}function o(t,n,i,o){let s;try{s=i(o)}catch(i){e.logError(`Exception in rule ${n} for '${t}'`,i),s={allow:!1,reason:i}}return s&&Object.assign({activity:t,name:n,component:o[r.Ii]},s)}const s={};function a(t){let{activity:n,name:i,allow:r,reason:o,component:a}=t;const d=`${i} ${r?"allowed":"denied"} '${n}' for '${a}'${o?":":""}`,c=s.hasOwnProperty(d);if(c&&clearTimeout(s[d]),s[d]=setTimeout((()=>delete s[d]),1e3),!c){const t=[d];o&&t.push(o),(r?e.logInfo:e.logWarn).apply(e,t)}}return[function(e,t,i){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:10;const o=n(e),s=o.findIndex((e=>{let[t]=e;return r=0&&o.splice(e,1)}},function(e,t){let i,r;for(const[s,d,c]of n(e)){if(i!==s&&r)break;i=s;const n=o(e,d,c,t);if(n){if(!n.allow)return a(n),!1;r=n}}return r&&a(r),!0}]}()},9075:(e,t,n)=>{n.d(t,{$A:()=>T,BS:()=>P,Hh:()=>q,Pk:()=>N,Uc:()=>R,XO:()=>V,bw:()=>_,n6:()=>C,qn:()=>$,vB:()=>W,vW:()=>S,vd:()=>U});var i=n(1069),r=n(5023),o=n(8969),s=n(3272),a=n(5789),d=n(1371),c=n(6881),l=n(6031),u=n(9214),f=n(2449),g=n(5555),p=n(1445),h=n(6894),m=n(7779),b=n(3005);const{AD_RENDER_FAILED:y,AD_RENDER_SUCCEEDED:v,STALE_RENDER:E,BID_WON:A,EXPIRED_RENDER:w}=o.qY,{EXCEPTION:I}=o.as,T=(0,u.A_)("sync",(function(e){return(arguments.length>2&&void 0!==arguments[2]?arguments[2]:g.U9.resolve()).then((t=>t??c.n.findBidByAdId(e))).catch((()=>{}))})),C=(0,u.A_)("sync",(function(e){((0,b.$T)(e.eventtrackers)[b.RO]?.[b.Ni]||[]).forEach((e=>(0,i.z$)(e))),r.Ic(A,e),c.n.addWinningBid(e)}));function B(e){let{reason:t,message:n,bid:o,id:s}=e;const a={reason:t,message:n};o&&(a.bid=o,a.adId=o.adId),s&&(a.adId=s),(0,i.vV)(`Error rendering ad (id: ${s}): ${n}`),r.Ic(y,a)}function O(e){let{doc:t,bid:n,id:i}=e;const o={doc:t};n&&(o.bid=n),i&&(o.adId=i),p.Ay.callAdRenderSucceededBidder(n.adapterCode||n.bidder,n),r.Ic(v,o)}function R(e,t){switch(e.event){case o.qY.AD_RENDER_FAILED:B({bid:t,id:t.adId,reason:e.info.reason,message:e.info.message});break;case o.qY.AD_RENDER_SUCCEEDED:O({doc:null,bid:t,id:t.adId});break;default:(0,i.vV)(`Received event request for unsupported event: '${e.event}' (adId: '${t.adId}')`)}}function S(e,t,n){let{resizeFn:i,fireTrackers:r=f.vO}=n;if("resizeNativeHeight"===e.action)i(e.width,e.height);else r(e,t)}const k={[o.nl.EVENT]:R};k[o.nl.NATIVE]=S;const U=(0,u.A_)("sync",(function(e,t){const{ad:n,adUrl:r,cpm:o,originalCpm:s,width:a,height:d,instl:c}=e,l={AUCTION_PRICE:s||o,CLICKTHROUGH:t?.clickUrl||""};return{ad:(0,i.gM)(n,l),adUrl:(0,i.gM)(r,l),width:a,height:d,instl:c}})),D=(0,u.A_)("sync",(function(e){let{renderFn:t,resizeFn:n,bidResponse:r,options:s,doc:a,isMainDocument:c=a===document&&!(0,i.al)()}=e;const l=r.mediaType===d.G_;if(c||l)return void B({reason:o.as.PREVENT_WRITING_ON_MAIN_DOCUMENT,message:l?"Cannot render video ad without a renderer":"renderAd was prevented from writing to the main document.",bid:r,id:r.adId});const u=U(r,s);t(Object.assign({adId:r.adId},u));const{width:f,height:g}=u;null!=(f??g)&&n(f,g)}));function _(e){let{renderFn:t,resizeFn:n,adId:a,options:d,bidResponse:c,doc:l}=e;q(c,(()=>{if(null!=c){if((c.status!==o.tl.RENDERED||((0,i.JE)(`Ad id ${a} has been rendered before`),r.Ic(E,c),!s.$W.getConfig("auctionOptions")?.suppressStaleRender))&&(m.uW.isBidNotExpired(c)||((0,i.JE)(`Ad id ${a} has been expired`),r.Ic(w,c),!s.$W.getConfig("auctionOptions")?.suppressExpiredRender)))try{D({renderFn:t,resizeFn:n,bidResponse:c,options:d,doc:l})}catch(e){B({reason:o.as.EXCEPTION,message:e.message,id:a,bid:c})}}else B({reason:o.as.CANNOT_FIND_AD,message:`Cannot find ad '${a}'`,id:a})}))}function $(e){const t=(0,h.BO)(e.metrics);t.checkpoint("bidRender"),t.timeBetween("bidWon","bidRender","render.deferred"),t.timeBetween("auctionEnd","bidRender","render.pending"),t.timeBetween("requestBids","bidRender","render.e2e"),e.status=o.tl.RENDERED}D.before((function(e,t){const{bidResponse:n,doc:i}=t;(0,a.J7)(n.renderer)?((0,a.Pg)(n.renderer,n,i),O({doc:i,bid:n,id:n.adId}),e.bail()):e(t)}),100);const j=new WeakMap,x=new WeakSet;function q(e,t){null!=e?(j.set(e,t),e.deferRendering||W(e),N(e)):t()}function N(e){x.has(e)||(x.add(e),C(e))}function W(e){const t=j.get(e);t&&(t(),$(e),j.delete(e))}function P(e,t,n){let r;function s(e,n){B(Object.assign({id:t,bid:r},{reason:e,message:n}))}function a(t,n){const i=e.defaultView?.frameElement;i&&(t&&(i.width=t,i.style.width&&(i.style.width=`${t}px`)),n&&(i.height=n,i.style.height&&(i.style.height=`${n}px`)))}const d=(c={resizeFn:a},function(e,t,n){k.hasOwnProperty(e)&&k[e](t,n,c)});var c;function u(t){t.ad?(e.write(t.ad),e.close(),O({doc:e,bid:r,id:r.adId})):(0,l.HH)(r).then((n=>n(t,{sendMessage:(e,t)=>d(e,t,r),mkFrame:i.hw},e.defaultView))).then((()=>O({doc:e,bid:r,id:r.adId})),(e=>{s(e?.reason||o.as.EXCEPTION,e?.message),e?.stack&&(0,i.vV)(e)}));const n=document.createComment(`Creative ${r.creativeId} served by ${r.bidder} Prebid.js Header Bidding`);(0,i._s)(n,e,"html")}try{t&&e?T(t).then((i=>{r=i,_({renderFn:u,resizeFn:a,adId:t,options:{clickUrl:n?.clickThrough},bidResponse:i,doc:e})})):s(o.as.MISSING_DOC_OR_ADID,"missing "+(t?"doc":"adId"))}catch(e){s(I,e.message)}}function V(){if(!window.frames[o.IY])if(document.body){const e=(0,i.CA)();e.name=o.IY,document.body.appendChild(e)}else window.requestAnimationFrame(V)}},9759:(e,t,n)=>{function i(e){var t=e;return{callBids:function(){},setBidderCode:function(e){t=e},getBidderCode:function(){return t}}}n.d(t,{A:()=>i})},1445:(e,t,n)=>{n.d(t,{Ay:()=>z,pX:()=>M,K5:()=>N});var i=n(1069),r=n(2449),o=n(7377),s=n(8044),a=n(3272),d=n(9214);let c={};function l(e,t,n){let i=function(e,t){let n=c[e]=c[e]||{bidders:{}};return t?n.bidders[t]=n.bidders[t]||{}:n}(e,n);return i[t]=(i[t]||0)+1,i[t]}function u(e){return l(e,"auctionsCounter")}function f(e){return c?.[e]?.requestsCounter||0}function g(e,t){return c?.[e]?.bidders?.[t]?.requestsCounter||0}function p(e,t){return c?.[e]?.bidders?.[t]?.winsCounter||0}function h(e){return c?.[e]?.auctionsCounter||0}var m=n(7934),b=n(6916),y=n(5023),v=n(8969),E=n(6894),A=n(6881),w=n(5569),I=n(5139),T=n(6811),C=n(2604),B=n(6953),O=n(3005);const R="pbsBidAdapter",S={CLIENT:"client",SERVER:"server"},k={isAllowed:I.io,redact:B.$p};let U={},D=U.bidderRegistry={},_=U.aliasRegistry={},$=[];a.$W.getConfig("s2sConfig",(e=>{e&&e.s2sConfig&&($=(0,i.cy)(e.s2sConfig)?e.s2sConfig:[e.s2sConfig])}));var j={};const x=(0,C.ZI)((e=>U.resolveAlias(e)));function q(e){return e.configName??e.name}function N(e){return x(w.tp,R,{[C.XG]:q(e)})}const W=(0,d.A_)("sync",(function(e){let{bidderCode:t,auctionId:n,bidderRequestId:r,adUnits:o,src:s,metrics:a}=e;return o.reduce(((e,o)=>{const d=o.bids.filter((e=>e.bidder===t));return null==t&&0===d.length&&null!=o.s2sBid&&d.push({bidder:null}),e.push(d.reduce(((e,d)=>{const c=null==(d=Object.assign({},d,{ortb2Imp:(0,i.D9)({},o.ortb2Imp,d.ortb2Imp)},(0,i.SH)(o,["nativeParams","nativeOrtbRequest","mediaType","renderer"]))).mediaTypes?o.mediaTypes:d.mediaTypes;return(0,i.wD)(c)?d=Object.assign({},d,{mediaTypes:c}):(0,i.vV)(`mediaTypes is not correctly configured for adunit ${o.code}`),"client"===s&&function(e,t){l(e,"requestsCounter",t)}(o.code,t),e.push(Object.assign({},d,{adUnitCode:o.code,transactionId:o.transactionId,adUnitId:o.adUnitId,sizes:c?.banner?.sizes||c?.video?.playerSize||[],bidId:d.bid_id||(0,i.s0)(),bidderRequestId:r,auctionId:n,src:s,metrics:a,auctionsCount:h(o.code),bidRequestsCount:f(o.code),bidderRequestsCount:g(o.code,d.bidder),bidderWinsCount:p(o.code,d.bidder),deferBilling:!!o.deferBilling})),e}),[])),e}),[]).reduce(i.Bq,[]).filter((e=>""!==e))}),"getBids");const P=(0,d.A_)("sync",(function(e,t){let{getS2SBidders:n=M}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null==t)return e;{const i=n(t);return e.filter((e=>{if(!i.has(e.bidder))return!1;if(null==e.s2sConfigName)return!0;const n=q(t);return(Array.isArray(e.s2sConfigName)?e.s2sConfigName:[e.s2sConfigName]).includes(n)}))}}),"filterBidsForAdUnit");const V=(0,d.A_)("sync",((e,t)=>e),"setupAdUnitMediaTypes");function M(e){(0,i.cy)(e)||(e=[e]);const t=new Set([null]);return e.filter((e=>e&&e.enabled)).flatMap((e=>e.bidders)).forEach((e=>t.add(e))),t}const G=(0,d.A_)("sync",(function(e,t){let{getS2SBidders:n=M}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=n(t);return(0,i.ZA)(e).reduce(((e,t)=>(e[r.has(t)?S.SERVER:S.CLIENT].push(t),e)),{[S.CLIENT]:[],[S.SERVER]:[]})}),"partitionBidders");function F(e,t){const n=D[e],i=n?.getSpec&&n.getSpec();if(i&&i[t]&&"function"==typeof i[t])return[i,i[t]]}function H(e,t,n,r){try{(0,i.fH)(`Invoking ${e}.${t}`);for(var o=arguments.length,s=new Array(o>4?o-4:0),d=4;d5&&void 0!==arguments[5]?arguments[5]:{},c=arguments.length>6?arguments[6]:void 0;c=(0,E.BO)(c),y.Ic(v.qY.BEFORE_REQUEST_BIDS,e),(0,r.nk)(e),e.map((e=>e.code)).filter(i.hj).forEach(u),e.forEach((e=>{(0,i.Qd)(e.mediaTypes)||(e.mediaTypes={}),e.bids=e.bids.filter((e=>!e.bidder||k.isAllowed(T.uc,x(w.tW,e.bidder)))),l(e.code,"requestsCounter")})),e=V(e,s);let{[S.CLIENT]:f,[S.SERVER]:g}=G(e,$);a.$W.getConfig("bidderSequence")===a.Ov&&(f=(0,i.k4)(f));const p=(0,m.EN)();let h=[];const A=d.global||{},I=d.bidder||{};function C(e,t){const r=k.redact(null!=t?t:x(w.tW,e.bidderCode)),o=(0,i.D9)({source:{tid:n}},A,I[e.bidderCode]);!function(e){const t=e.user?.eids;Array.isArray(t)&&t.length&&(e.user.ext=e.user.ext||{},e.user.ext.eids=[...e.user.ext.eids||[],...t],delete e.user.eids)}(o);const s=Object.freeze(r.ortb2(o));return e.ortb2=s,e.bids=e.bids.map((e=>(e.ortb2=s,r.bidRequest(e)))),e}$.forEach((r=>{const o=N(r);if(r&&r.enabled&&k.isAllowed(T.uc,o)){let{adUnits:s,hasModuleBids:a}=function(e,t){let n=(0,i.Go)(e),r=!1;return n.forEach((e=>{const n=e.bids.filter((e=>e.module===R&&e.params?.configName===q(t)));1===n.length?(e.s2sBid=n[0],r=!0,e.ortb2Imp=(0,i.D9)({},e.s2sBid.ortb2Imp,e.ortb2Imp)):n.length>1&&(0,i.JE)('Multiple "module" bids for the same s2s configuration; all will be ignored',n),e.bids=P(e.bids,t).map((e=>(e.bid_id=(0,i.s0)(),e)))})),n=n.filter((e=>0!==e.bids.length||null!=e.s2sBid)),{adUnits:n,hasModuleBids:r}}(e,r),d=(0,i.lk)();(0===g.length&&a?[null]:g).forEach((e=>{const a=(0,i.s0)(),l=c.fork(),u=C({bidderCode:e,auctionId:n,bidderRequestId:a,uniquePbsTid:d,bids:W({bidderCode:e,auctionId:n,bidderRequestId:a,adUnits:(0,i.Go)(s),src:v.RW.SRC,metrics:l}),auctionStart:t,timeout:r.timeout,src:v.RW.SRC,refererInfo:p,metrics:l},o);0!==u.bids.length&&h.push(u)})),s.forEach((e=>{let t=e.bids.filter((e=>h.find((t=>t.bids.find((t=>t.bidId===e.bid_id))))));e.bids=t})),h.forEach((e=>{void 0===e.adUnitsS2SCopy&&(e.adUnitsS2SCopy=s.filter((e=>e.bids.length>0||null!=e.s2sBid)))}))}}));let B=function(e){let t=(0,i.Go)(e);return t.forEach((e=>{e.bids=P(e.bids,null)})),t=t.filter((e=>0!==e.bids.length)),t}(e);return f.forEach((e=>{const r=(0,i.s0)(),a=c.fork(),d=C({bidderCode:e,auctionId:n,bidderRequestId:r,bids:W({bidderCode:e,auctionId:n,bidderRequestId:r,adUnits:(0,i.Go)(B),labels:s,src:"client",metrics:a}),auctionStart:t,timeout:o,refererInfo:p,metrics:a}),l=D[e];l||(0,i.vV)(`Trying to make a request for bidder that does not exist: ${e}`),l&&d.bids&&0!==d.bids.length&&h.push(d)})),h.forEach((e=>{b.mW.getConsentData()&&(e.gdprConsent=b.mW.getConsentData()),b.t6.getConsentData()&&(e.uspConsent=b.t6.getConsentData()),b.ad.getConsentData()&&(e.gppConsent=b.ad.getConsentData())})),h}),"makeBidRequests"),U.callBids=function(e,t,n,r,o,d,c){let l=arguments.length>7&&void 0!==arguments[7]?arguments[7]:{};if(!t.length)return void(0,i.JE)("callBids executed with no bidRequests. Were they filtered by labels or sizing?");let[u,f]=t.reduce(((e,t)=>(e[Number(void 0!==t.src&&t.src===v.RW.SRC)].push(t),e)),[[],[]]);var g=[];f.forEach((e=>{for(var t=-1,n=0;n{if(e&&g[p]&&M(e).has(g[p].bidderCode)){const t=(0,s.g4)(d,o?{request:o.request.bind(null,"s2s"),done:o.done}:void 0);let a=e.bidders;const u=D[e.adapter];let h=g[p].uniquePbsTid,m=g[p].adUnitsS2SCopy,b=f.filter((e=>e.uniquePbsTid===h));if(u){let o={ad_units:m,s2sConfig:e,ortb2Fragments:l,requestBidsTimeout:d};if(o.ad_units.length){let e=b.map((e=>(e.start=(0,i.vE)(),function(t){t||c(e.bidderRequestId),r.apply(e,arguments)})));const s=(0,i.ZA)(o.ad_units).filter((e=>a.includes(e)));(0,i.OG)(`CALLING S2S HEADER BIDDERS ==== ${s.length>0?s.join(", "):'No bidder specified, using "ortb2Imp" definition(s) only'}`),b.forEach((e=>{y.Ic(v.qY.BID_REQUESTED,{...e,tid:e.auctionId})})),u.callBids(o,f,n,(t=>e.forEach((e=>e(t)))),t)}}else(0,i.vV)("missing "+e.adapter);p++}})),u.forEach((e=>{e.start=(0,i.vE)();const t=D[e.bidderCode];a.$W.runWithBidder(e.bidderCode,(()=>{(0,i.OG)("CALLING BIDDER"),y.Ic(v.qY.BID_REQUESTED,e)}));let l=(0,s.g4)(d,o?{request:o.request.bind(null,e.bidderCode),done:o.done}:void 0);const u=r.bind(e);try{a.$W.runWithBidder(e.bidderCode,t.callBids.bind(t,e,n,u,l,(()=>c(e.bidderRequestId)),a.$W.callbackWithBidder(e.bidderCode)))}catch(t){(0,i.vV)(`${e.bidderCode} Bid Adapter emitted an uncaught error when parsing their bidRequest`,{e:t,bidRequest:e}),u()}}))},U.videoAdapters=[],U.registerBidAdapter=function(e,t){let{supportedMediaTypes:n=[]}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};e&&t?"function"==typeof e.callBids?(D[t]=e,b.o2.register(w.tW,t,e.getSpec?.().gvlid),n.includes("video")&&U.videoAdapters.push(t),n.includes("native")&&r.mT.push(t)):(0,i.vV)("Bidder adaptor error for bidder code: "+t+"bidder must implement a callBids() function"):(0,i.vV)("bidAdapter or bidderCode not specified")},U.aliasBidAdapter=function(e,t,n){if(void 0===D[t]){let s=D[e];if(void 0===s){const n=[];$.forEach((i=>{if(i.bidders&&i.bidders.length){const r=i&&i.bidders;i&&r.includes(t)?_[t]=e:n.push(e)}})),n.forEach((e=>{(0,i.vV)('bidderCode "'+e+'" is not an existing bidder.',"adapterManager.aliasBidAdapter")}))}else try{let a,d=function(e){let t=[];return U.videoAdapters.includes(e)&&t.push("video"),r.mT.includes(e)&&t.push("native"),t}(e);if(s.constructor.prototype!=Object.prototype)a=new s.constructor,a.setBidderCode(t);else{const{useBaseGvlid:r=!1}=n||{};let d=s.getSpec();const c=r?d.gvlid:n?.gvlid;null==c&&null!=d.gvlid&&(0,i.JE)(`Alias '${t}' will NOT re-use the GVL ID of the original adapter ('${d.code}', gvlid: ${d.gvlid}). Functionality that requires TCF consent may not work as expected.`);let l=n&&n.skipPbsAliasing;a=(0,o.xb)(Object.assign({},d,{code:t,gvlid:c,skipPbsAliasing:l})),_[t]=e}U.registerBidAdapter(a,t,{supportedMediaTypes:d})}catch(t){(0,i.vV)(e+" bidder does not currently support aliasing.","adapterManager.aliasBidAdapter")}}else(0,i.OG)('alias name "'+t+'" has been already specified.')},U.resolveAlias=function(e){let t,n=e;for(;_[n]&&(!t||!t.has(n));)n=_[n],(t=t||new Set).add(n);return n},U.registerAnalyticsAdapter=function(e){let{adapter:t,code:n,gvlid:r}=e;t&&n?"function"==typeof t.enableAnalytics?(t.code=n,j[n]={adapter:t,gvlid:r},b.o2.register(w.Tn,n,r)):(0,i.vV)(`Prebid Error: Analytics adaptor error for analytics "${n}"\n analytics adapter must implement an enableAnalytics() function`):(0,i.vV)("Prebid Error: analyticsAdapter or analyticsCode not specified")},U.enableAnalytics=function(e){(0,i.cy)(e)||(e=[e]),e.forEach((e=>{const t=j[e.provider];t&&t.adapter?k.isAllowed(T.mo,x(w.Tn,e.provider,{[C.TQ]:e}))&&t.adapter.enableAnalytics(e):(0,i.vV)(`Prebid Error: no analytics adapter found in registry for '${e.provider}'.`)}))},U.getBidAdapter=function(e){return D[e]},U.getAnalyticsAdapter=function(e){return j[e]},U.callTimedOutBidders=function(e,t,n){t=t.map((t=>(t.params=(0,i.SB)(e,t.adUnitCode,t.bidder),t.timeout=n,t))),t=(0,i.$z)(t,"bidder"),Object.keys(t).forEach((e=>{L(e,"onTimeout",t[e])}))},U.callBidWonBidder=function(e,t,n){var r,o;t.params=(0,i.SB)(n,t.adUnitCode,t.bidder),r=t.adUnitCode,o=t.bidder,l(r,"winsCounter",o),L(e,"onBidWon",t)},U.triggerBilling=(()=>{const e=new WeakSet;return t=>{e.has(t)||(e.add(t),((0,O.$T)(t.eventtrackers)[O.OA]?.[O.Ni]||[]).forEach((e=>i.mM.triggerPixel(e))),L(t.bidder,"onBidBillable",t))}})(),U.callSetTargetingBidder=function(e,t){L(e,"onSetTargeting",t)},U.callBidViewableBidder=function(e,t){L(e,"onBidViewable",t)},U.callBidderError=function(e,t,n){L(e,"onBidderError",{error:t,bidderRequest:n})},U.callAdRenderSucceededBidder=function(e,t){L(e,"onAdRenderSucceeded",t)},U.callDataDeletionRequest=(0,d.A_)("sync",(function(){for(var e=arguments.length,t=new Array(e),n=0;n!_.hasOwnProperty(e))).forEach((e=>{const n=F(e,r);if(null!=n){const i=A.n.getBidsRequested().filter((t=>function(e){const t=new Set;for(;_.hasOwnProperty(e)&&!t.has(e);)t.add(e),e=_[e];return e}(t.bidderCode)===e));H(e,r,...n,i,...t)}})),Object.entries(j).forEach((e=>{let[n,o]=e;const s=o?.adapter?.[r];if("function"==typeof s)try{s.apply(o.adapter,t)}catch(e){(0,i.vV)(`error calling ${r} of ${n}`,e)}}))}));const z=U},7377:(e,t,n)=>{n.d(t,{JN:()=>R,fn:()=>S,xb:()=>T});var i=n(9759),r=n(1445),o=n(3272),s=n(3597),a=n(8230),d=n(2449),c=n(3895),l=n(8969),u=n(5023),f=n(1069),g=n(9214),p=n(6881),h=n(2693),m=n(6894),b=n(5139),y=n(3441),v=n(5569),E=n(6811);const A=["cpm","ttl","creativeId","netRevenue","currency"],w=["auctionId","transactionId"];const I=(0,f.Bj)((e=>{let{bidderCode:t}=e;if((0,b.io)(E.VJ,(0,y.s)(v.tW,t)))return{bidRequest:e=>e,bidderRequest:e=>e};function n(e,t,n){return w.includes(t)?null:Reflect.get(e,t,n)}function i(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[i,r]=t;return n[i]=r.bind(e)})),n}const r=(0,f.Bj)((e=>i(e,{get:n})),(e=>e.bidId));return{bidRequest:r,bidderRequest:e=>i(e,{get:(t,i,o)=>"bids"===i?e.bids.map(r):n(t,i,o)})}}));function T(e){return Object.assign(new i.A(e.code),{getSpec:function(){return Object.freeze(Object.assign({},e))},registerSyncs:t,callBids:function(n,i,a,d,c,g){if(!Array.isArray(n.bids))return;const p=I(n),b={};const y=[];function v(){a(),o.$W.runWithBidder(e.code,(()=>{u.Ic(l.qY.BIDDER_DONE,n),t(y,n.gdprConsent,n.uspConsent,n.gppConsent)}))}const E=k(n).measureTime("validate",(()=>n.bids.filter((t=>function(t){if(!e.isBidRequestValid(t))return(0,f.JE)(`Invalid bid sent to bidder ${e.code}: ${JSON.stringify(t)}`),!1;return!0}(p.bidRequest(t))))));if(0===E.length)return void v();const A={};E.forEach((e=>{A[e.bidId]=e,e.adUnitCode||(e.adUnitCode=e.placementCode)})),B(e,E,n,d,g,{onRequest:e=>u.Ic(l.qY.BEFORE_BIDDER_HTTP,n,e),onResponse:t=>{c(e.code),y.push(t)},onPaapi:e=>{const t=A[e.bidId];t?R(t,e):(0,f.JE)("Received fledge auction configuration for an unknown bidId",e)},onError:(t,i)=>{i.timedOut||c(e.code),r.Ay.callBidderError(e.code,i,n),u.Ic(l.qY.BIDDER_ERROR,{error:i,bidderRequest:n}),(0,f.vV)(`Server call for ${e.code} failed: ${t} ${i.status}. Continuing without bids.`,{bidRequests:E})},onBid:t=>{const n=A[t.requestId];if(n){if(t.adapterCode=n.bidder,function(e,t){let n=h.u.get(t,"allowAlternateBidderCodes")||!1,i=h.u.get(t,"allowedAlternateBidderCodes");if(e&&t&&t!==e&&(i=(0,f.cy)(i)?i.map((e=>e.trim().toLowerCase())).filter((e=>!!e)).filter(f.hj):i,!n||(0,f.cy)(i)&&"*"!==i[0]&&!i.includes(e)))return!0;return!1}(t.bidderCode,n.bidder))return(0,f.JE)(`${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 i.reject(n.adUnitCode,t,l.Tf.BIDDER_DISALLOWED);t.originalCpm=t.cpm,t.originalCurrency=t.currency,t.meta=t.meta||Object.assign({},t[n.bidder]),t.deferBilling=n.deferBilling,t.deferRendering=t.deferBilling&&(t.deferRendering??"function"!=typeof e.onBidBillable);const r=Object.assign((0,s.O)(l.XQ.GOOD,n),t,(0,f.Up)(n,w));!function(e,t){const n=(0,m.BO)(t.metrics);n.checkpoint("addBidResponse"),b[e]=!0,n.measureTime("addBidResponse.validate",(()=>S(e,t)))?i(e,t):i.reject(e,t,l.Tf.INVALID)}(n.adUnitCode,r)}else(0,f.JE)(`Bidder ${e.code} made bid for unknown request ID: ${t.requestId}. Ignoring.`),i.reject(null,t,l.Tf.INVALID_REQUEST_ID)},onCompletion:v})}});function t(t,n,i,r){O(e,t,n,i,r)}}const C=["bids","paapi"],B=(0,g.A_)("async",(function(e,t,n,i,r,o){let{onRequest:s,onResponse:a,onPaapi:d,onError:c,onBid:u,onCompletion:g}=o;const p=k(n);g=p.startTiming("total").stopBefore(g);const m=I(n);let A=p.measureTime("buildRequests",(()=>e.buildRequests(t.map(m.bidRequest),m.bidderRequest(n))));if(!A||0===A.length)return void g();Array.isArray(A)||(A=[A]);const w=(0,f.U6)(g,A.length);A.forEach((t=>{const n=p.fork();function o(e){null!=e&&(e.metrics=n.fork().renameWith()),u(e)}const g=r((function(i,r){A();try{i=JSON.parse(i)}catch(e){}i={body:i,headers:{get:r.getResponseHeader.bind(r)}},a(i);try{i=n.measureTime("interpretResponse",(()=>e.interpretResponse(i,t)))}catch(t){return(0,f.vV)(`Bidder ${e.code} failed to interpret the server's response. Continuing without bids`,null,t),void w()}let s,c;i&&!Object.keys(i).some((e=>!C.includes(e)))?(s=i.bids,c=i.paapi):s=i,(0,f.cy)(c)&&c.forEach(d),s&&((0,f.cy)(s)?s.forEach(o):o(s)),w()})),m=r((function(e,t){A(),c(e,t),w()}));s(t);const A=n.startTiming("net");function I(n){const i=t.options;return Object.assign(n,i,{browsingTopics:!(i?.hasOwnProperty("browsingTopics")&&!i.browsingTopics)&&((h.u.get(e.code,"topicsHeader")??!0)&&(0,b.io)(E.DL,(0,y.s)(v.tW,e.code)))})}switch(t.method){case"GET":i(`${t.url}${function(e){if(e)return`?${"object"==typeof e?(0,f.bL)(e):e}`;return""}(t.data)}`,{success:g,error:m},void 0,I({method:"GET",withCredentials:!0}));break;case"POST":const n=t.options?.endpointCompression,r="TRUE"===(0,f.Ez)(l.M).toUpperCase()||(0,f.dp)(),o=e=>{let{url:t,payload:n}=e;i(t,{success:g,error:m},n,I({method:"POST",contentType:"text/plain",withCredentials:!0}))};n&&r&&(0,f.JE)(`Skipping GZIP compression for ${e.code} as debug mode is enabled`),n&&!r&&(0,f.nT)()?(0,f.ZK)(t.data).then((e=>{const n=new URL(t.url,window.location.origin);n.searchParams.has("gzip")||n.searchParams.set("gzip","1"),o({url:n.href,payload:e})})):o({url:t.url,payload:"string"==typeof t.data?t.data:JSON.stringify(t.data)});break;default:(0,f.JE)(`Skipping invalid request from ${e.code}. Request type ${t.type} must be GET or POST`),w()}}))}),"processBidderRequests"),O=(0,g.A_)("async",(function(e,t,n,i,s){const d=o.$W.getConfig("userSync.aliasSyncEnabled");if(e.getUserSyncs&&(d||!r.Ay.aliasRegistry[e.code])){let r=e.getUserSyncs({iframeEnabled:a.zt.canBidderRegisterSync("iframe",e.code),pixelEnabled:a.zt.canBidderRegisterSync("image",e.code)},t,n,i,s);r&&(Array.isArray(r)||(r=[r]),r.forEach((t=>{a.zt.registerSync(t.type,e.code,t.url)})),a.zt.bidderDone(e.code))}}),"registerSyncs"),R=(0,g.A_)("sync",((e,t)=>{}),"addPaapiConfig");function S(e,t){let{index:n=p.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};function i(e){return`Invalid bid from ${t.bidderCode}. Ignoring bid: ${e}`}return e?t?function(){let e=Object.keys(t);return A.every((n=>e.includes(n)&&![void 0,null].includes(t[n])))}()?"native"!==t.mediaType||(0,d.Bm)(t,{index:n})?"video"!==t.mediaType||(0,c.vk)(t,{index:n})?!("banner"===t.mediaType&&!function(e,t){let{index:n=p.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if((t.width||0===parseInt(t.width,10))&&(t.height||0===parseInt(t.height,10)))return t.width=parseInt(t.width,10),t.height=parseInt(t.height,10),!0;if(null!=t.wratio&&null!=t.hratio)return t.wratio=parseInt(t.wratio,10),t.hratio=parseInt(t.hratio,10),!0;const i=n.getBidRequest(t),r=n.getMediaTypes(t),o=i&&i.sizes||r&&r.banner&&r.banner.sizes,s=(0,f.kK)(o);if(1===s.length){const[e,n]=s[0].split("x");return t.width=parseInt(e,10),t.height=parseInt(n,10),!0}return!1}(e,t,{index:n}))||((0,f.vV)(i("Banner bids require a width and height")),!1):((0,f.vV)(i("Video bid does not have required vastUrl or renderer property")),!1):((0,f.vV)(i("Native bid missing some required properties.")),!1):((0,f.vV)(i(`Bidder ${t.bidderCode} is missing required params. Check http://prebid.org/dev-docs/bidder-adapter-1.html for list of params.`)),!1):((0,f.JE)(`Some adapter tried to add an undefined bid for ${e}.`),!1):((0,f.JE)("No adUnitCode was supplied to addBidResponse."),!1)}function k(e){return(0,m.BO)(e.metrics).renameWith((t=>[`adapter.client.${t}`,`adapters.client.${e.bidderCode}.${t}`]))}},1580:(e,t,n)=>{n.d(t,{R:()=>c});var i=n(6811),r=n(3441),o=n(5139),s=n(1069);const a=new WeakMap,d=["debugging","outstream","aaxBlockmeter","adagio","adloox","akamaidap","arcspan","airgrid","browsi","brandmetrics","clean.io","humansecurity","confiant","contxtful","hadron","mediafilter","medianet","azerionedge","a1Media","geoedge","qortex","dynamicAdBoost","51Degrees","symitridap","wurfl","nodalsAi","anonymised","optable","justtag","tncId","ftrackId","id5"];function c(e,t,n,c,l,u){if(!(0,o.io)(i.pY,(0,r.s)(t,n)))return;if(!n||!e)return void(0,s.vV)("cannot load external script without url and moduleCode");if(!d.includes(n))return void(0,s.vV)(`${n} not whitelisted for loading external JavaScript`);l||(l=document);const f=h(l,e);if(f)return c&&"function"==typeof c&&(f.loaded?c():f.callbacks.push(c)),f.tag;const g=a.get(l)||{},p={loaded:!1,tag:null,callbacks:[]};return g[e]=p,a.set(l,g),c&&"function"==typeof c&&p.callbacks.push(c),(0,s.JE)(`module ${n} is loading external JavaScript`),function(t,n,i,r){i||(i=document);var o=i.createElement("script");o.type="text/javascript",o.async=!0;const a=h(i,e);a&&(a.tag=o);o.readyState?o.onreadystatechange=function(){"loaded"!==o.readyState&&"complete"!==o.readyState||(o.onreadystatechange=null,n())}:o.onload=function(){n()};o.src=t,r&&(0,s.Bg)(o,r);return(0,s._s)(o,i),o}(e,(function(){p.loaded=!0;try{for(let e=0;e{n.d(t,{Q:()=>i});const i=(0,n(9214).A_)("sync",(()=>{}))},8044:(e,t,n)=>{n.d(t,{RD:()=>f,g4:()=>u});var i=n(3272),r=n(1069);const o={fetch:window.fetch.bind(window),makeRequest:(e,t)=>new Request(e,t),timeout(e,t){const n=new AbortController;let i=setTimeout((()=>{n.abort(),(0,r.vV)(`Request timeout after ${e}ms`,t),i=null}),e);return{signal:n.signal,done(){i&&clearTimeout(i)}}}},s="GET",a="POST",d="Content-Type";function c(){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||i.$W.getConfig("disableAjaxTimeout")||(r=o.timeout(e,t),n=Object.assign({signal:r.signal},n));let s=o.fetch(t,n);return null!=r?.done&&(s=s.finally(r.done)),s};return null==t&&null==n||(r=(e=>function(i,r){const o=new URL(null==i?.url?i:i.url,document.location).origin;let s=e(i,r);return t&&t(o),n&&(s=s.finally((()=>n(o)))),s})(r)),r}function l(e,t){let{status:n,statusText:i="",headers:o,url:s}=e,a=0;function c(e){if(0===a)try{a=(new DOMParser).parseFromString(t,o?.get(d)?.split(";")?.[0])}catch(t){a=null,e&&e(t)}return a}return{readyState:XMLHttpRequest.DONE,status:n,statusText:i,responseText:t,response:t,responseType:"",responseURL:s,get responseXML(){return c(r.vV)},getResponseHeader:e=>o?.has(e)?o.get(e):null,toJSON(){return Object.assign({responseXML:c()},this)},timedOut:!1}}function u(){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 i=c(e,{request:t,done:n});return function(e,t,n){!function(e,t){const{success:n,error:i}="object"==typeof t&&null!=t?t:{success:"function"==typeof t?t:()=>null,error:(e,t)=>(0,r.vV)("Network error",e,t)};e.then((e=>e.text().then((t=>[e,t])))).then((e=>{let[t,r]=e;const o=l(t,r);t.ok||304===t.status?n(r,o):i(t.statusText,o)}),(e=>i("",Object.assign(l({status:0},""),{reason:e,timedOut:"AbortError"===e?.name}))))}(i(function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const i=n.method||(t?a:s);if(i===s&&t){const i=(0,r.Dl)(e,n);Object.assign(i.search,t),e=(0,r.c$)(i)}const c=new Headers(n.customHeaders);c.set(d,n.contentType||"text/plain");const l={method:i,headers:c};return i!==s&&t&&(l.body=t),n.withCredentials&&(l.credentials="include"),isSecureContext&&["browsingTopics","adAuctionHeaders"].forEach((e=>{n[e]&&(l[e]=!0)})),n.keepalive&&(l.keepalive=!0),o.makeRequest(e,l)}(e,n,arguments.length>3&&void 0!==arguments[3]?arguments[3]:{})),t)}}const f=u();c()},6881:(e,t,n)=>{n.d(t,{n:()=>ae});var i=n(1069),r=n(6833),o=n(2449),s=n(8044),a=n(3272);const d=15,c=new Map;function l(e){let{index:t=ae.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=u(e),i=t.getAuction(e);let r={type:"xml",value:n,ttlseconds:Number(e.ttl)+d};return a.$W.getConfig("cache.vasttrack")&&(r.bidder=e.bidder,r.bidid=e.requestId,r.aid=e.auctionId),null!=i&&(r.timestamp=i.getAuctionStart()),"string"==typeof e.customCacheKey&&""!==e.customCacheKey&&(r.key=e.customCacheKey),r}function u(e){return e.vastXml?e.vastXml:(t=e.vastUrl,n=e.vastImpUrl,`\n \n \n prebid.org wrapper\n \n ${(n=n&&(Array.isArray(n)?n:[n]))?n.map((e=>``)).join(""):""}\n \n \n \n `);var t,n}const f=e=>{const t=u(e),n=URL.createObjectURL(new Blob([t],{type:"text/xml"}));g(e,n),c.set(e.videoCacheKey,n)},g=(e,t,n)=>{e.videoCacheKey=n||(0,i.lk)(),e.vastUrl||(e.vastUrl=t)},p={store:function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:s.g4;const i={puts:e.map(l)};n(a.$W.getConfig("cache.timeout"))(a.$W.getConfig("cache.url"),function(e){return{success:function(t){let n;try{n=JSON.parse(t).responses}catch(t){return void e(t,[])}n?e(null,n):e(new Error("The cache server didn't respond with a responses property."),[])},error:function(t,n){e(new Error(`Error storing video ad in the cache: ${t}: ${JSON.stringify(n)}`),[])}}}(t),JSON.stringify(i),{contentType:"text/plain",withCredentials:!0})}};function h(e){const t=e.map((e=>e.bidResponse));p.store(t,(function(n,r){var o;n?(o=n,(0,i.vV)(`Failed to save to the video cache: ${o}. Video bids will be discarded:`,t)):e.length!==r.length?(0,i.vV)(`expected ${e.length} cache IDs, got ${r.length} instead`):r.forEach(((t,n)=>{const{auctionInstance:r,bidResponse:o,afterBidAdded:s}=e[n];var d;""===t.uuid?(0,i.JE)("Supplied video cache key was already in use by Prebid Cache; caching attempt was rejected. Video bid must be discarded."):(g(o,(d=t.uuid,`${a.$W.getConfig("cache.url")}?uuid=${d}`),t.uuid),J(r,o),s())}))}))}let m,b,y;a.$W.getConfig("cache",(e=>{let{cache:t}=e;m="number"==typeof t.batchSize&&t.batchSize>0?t.batchSize:1,b="number"==typeof t.batchTimeout&&t.batchTimeout>0?t.batchTimeout:0,t.useLocal&&!y&&(y=ae.onExpiry((e=>{e.getBidsReceived().forEach((e=>{const t=c.get(e.videoCacheKey);t&&t.startsWith("blob")&&URL.revokeObjectURL(t),c.delete(e.videoCacheKey)}))})))}));const v=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:setTimeout,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:h,n=[[]],i=!1;const r=e=>e();return function(o,s,a){const d=b>0?e:r;n[n.length-1].length>=m&&n.push([]),n[n.length-1].push({auctionInstance:o,bidResponse:s,afterBidAdded:a}),i||(i=!0,d((()=>{n.forEach(t),n=[[]],i=!1}),b))}}();var E=n(5789),A=n(8230),w=n(9214),I=n(3895),T=n(1371),C=n(2693),B=n(5023),O=n(1445),R=n(8969),S=n(5555),k=n(6894);var U=n(7873),D=n(6853),_=n(7863);const{syncUsers:$}=A.zt,j="started",x="inProgress",q="completed";B.on(R.qY.BID_ADJUSTMENT,(function(e){!function(e){let t=function(e,t,n){let{index:r=ae.index,bs:o=C.u}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};n=n||r.getBidRequest(t);const s=t?.adapterCode,a=t?.bidderCode||n?.bidder,d=o.get(t?.adapterCode,"adjustAlternateBids"),c=o.getOwn(a,"bidCpmAdjustment")||o.get(d?s:a,"bidCpmAdjustment");if(c&&"function"==typeof c)try{return c(e,Object.assign({},t),n)}catch(e){(0,i.vV)("Error during bid adjustment",e)}return e}(e.cpm,e);t>=0&&(e.cpm=t)}(e)}));const N=4,W={},P={},V=[],M=(0,U.m)();function G(e){let{adUnits:t,adUnitCodes:n,callback:s,cbTimeout:d,labels:c,auctionId:l,ortb2Fragments:u,metrics:g}=e;g=(0,k.BO)(g);const p=t,h=c,m=n,b=l||(0,i.lk)(),y=d,v=new Set,A=(0,S.v6)(),w=(0,S.v6)();let C,U,G,Y,X=[],Z=s,ee=[],te=(0,D.H)({startTime:e=>e.responseTimestamp,ttl:e=>null==(0,_.S9)()?null:1e3*Math.max((0,_.S9)(),e.ttl)}),ne=[],ie=[],re=[];function se(){return{auctionId:b,timestamp:C,auctionEnd:U,auctionStatus:Y,adUnits:p,adUnitCodes:m,labels:h,bidderRequests:ee,noBids:ne,bidsReceived:te.toArray(),bidsRejected:X,winningBids:ie,timeout:y,metrics:g,seatNonBids:re}}function de(e){if(e?B.Ic(R.qY.AUCTION_TIMEOUT,se()):clearTimeout(G),void 0===U){let n=[];e&&((0,i.OG)(`Auction ${b} timedOut`),n=ee.filter((e=>!v.has(e.bidderRequestId))).flatMap((e=>e.bids)),n.length&&B.Ic(R.qY.BID_TIMEOUT,n)),Y=q,U=Date.now(),g.checkpoint("auctionEnd"),g.timeBetween("requestBids","auctionEnd","requestBids.total"),g.timeBetween("callBids","auctionEnd","requestBids.callBids"),A.resolve(),B.Ic(R.qY.AUCTION_END,se()),z(p,(function(){try{if(null!=Z){const t=te.toArray().filter((e=>m.includes(e.adUnitCode))).reduce(oe,{});Z.apply(M,[t,e,b]),Z=null}}catch(e){(0,i.vV)("Error executing bidsBackHandler",null,e)}finally{n.length&&O.Ay.callTimedOutBidders(t,n,y);let e=a.$W.getConfig("userSync")||{};e.enableOverride||$(e.syncDelay)}}))}}function ce(){a.$W.resetBidder(),(0,i.fH)(`Bids Received for Auction with id: ${b}`,te.toArray()),Y=q,de(!1)}function le(e){v.add(e)}function ue(e){e.forEach((e=>{var t;t=e,ee=ee.concat(t)}));let t={},n={bidRequests:e,run:()=>{G=setTimeout((()=>de(!0)),y),Y=x,B.Ic(R.qY.AUCTION_INIT,se());let n=function(e,t){let{index:n=ae.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=0,d=!1,c=new Set,l={};function u(){s--,d&&0===s&&e()}function g(e,t,n){return l[t.requestId]=!0,function(e,t){let{index:n=ae.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=n.getBidderRequest(e),o=n.getAdUnit(e),s=r&&r.start||e.requestTimestamp;Object.assign(e,{responseTimestamp:e.responseTimestamp||(0,i.vE)(),requestTimestamp:e.requestTimestamp||s,cpm:parseFloat(e.cpm)||0,bidder:e.bidder||e.bidderCode,adUnitCode:t}),null!=o?.ttlBuffer&&(e.ttlBuffer=o.ttlBuffer);e.timeToRespond=e.responseTimestamp-e.requestTimestamp}(t,e),s++,n(u)}function p(e,s){g(e,s,(e=>{let d=function(e){let{index:t=ae.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};B.Ic(R.qY.BID_ADJUSTMENT,e);const n=t.getAdUnit(e);e.instl=1===n?.ortb2Imp?.instl;const i=t.getBidRequest(e)?.renderer||n.renderer,o=e.mediaType,s=t.getMediaTypes(e),d=s&&s[o];var c=d&&d.renderer,l=null;!c||!c.render||!0===c.backupOnly&&e.renderer?!i||!i.render||!0===i.backupOnly&&e.renderer||(l=i):l=c;l&&(e.renderer=E.A4.install({url:l.url,config:l.options,renderNow:null==l.url}),e.renderer.setRender(l.render));const u=K(e.mediaType,s,a.$W.getConfig("mediaTypePriceGranularity")),f=(0,r.j)(e.cpm,"object"==typeof u?u:a.$W.getConfig("customPriceBucket"),a.$W.getConfig("currency.granularityMultiplier"));return e.pbLg=f.low,e.pbMg=f.med,e.pbHg=f.high,e.pbAg=f.auto,e.pbDg=f.dense,e.pbCg=f.custom,e}(s);B.Ic(R.qY.BID_ACCEPTED,d),d.mediaType===T.G_?function(e,t,n){let{index:r=ae.index}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=!0;const s=r.getMediaTypes({requestId:t.originalRequestId||t.requestId,adUnitId:t.adUnitId})?.video,d=s&&s?.context,c=s&&s?.useCacheKey,{useLocal:l,url:u,ignoreBidderCacheKey:g}=a.$W.getConfig("cache")||{};l?f(t):u&&(c||d!==I.H6)&&(!t.videoCacheKey||g?(o=!1,Q(e,t,n,s)):t.vastUrl||((0,i.vV)("videoCacheKey specified but not required vastUrl for video bid"),o=!1));o&&(J(e,t),n())}(t,d,e):((0,o.l6)(d)&&(0,o.gs)(d,n.getAdUnit(d)),J(t,d),e())}))}function h(e,n,r){return g(e,n,(e=>{n.rejectionReason=r,(0,i.JE)(`Bid from ${n.bidder||"unknown bidder"} was rejected: ${r}`,n),B.Ic(R.qY.BID_REJECTED,n),t.addBidRejected(n),e()}))}function m(){let n=this,r=t.getBidRequests();const o=a.$W.getConfig("auctionOptions");if(c.add(n),o&&!(0,i.Im)(o)){const e=o.secondaryBidders;e&&!r.every((t=>e.includes(t.bidderCode)))&&(r=r.filter((t=>!e.includes(t.bidderCode))))}d=r.every((e=>c.has(e))),n.bids.forEach((e=>{l[e.bidId]||(t.addNoBid(e),B.Ic(R.qY.NO_BID,e))})),d&&0===s&&e()}return{addBidResponse:function(){function e(e,t){F.call({dispatch:p},e,t,(()=>{let n=!1;return i=>{n||(h(e,t,i),n=!0)}})())}return e.reject=h,e}(),adapterDone:function(){H(S.U9.resolve()).finally((()=>m.call(this)))}}}(ce,this);O.Ay.callBids(p,e,n.addBidResponse,n.adapterDone,{request(e,n){d(W,n),d(t,e),P[e]||(P[e]={SRA:!0,origin:n}),t[e]>1&&(P[e].SRA=!1)},done(e){W[e]--,V[0]&&s(V[0])&&V.shift()}},y,le,u),w.resolve()}};function s(e){let t=!0,n=a.$W.getConfig("maxRequestsPerOrigin")||N;return e.bidRequests.some((e=>{let i=1,r=void 0!==e.src&&e.src===R.RW.SRC?"s2s":e.bidderCode;return P[r]&&(!1===P[r].SRA&&(i=Math.min(e.bids.length,n)),W[P[r].origin]+i>n&&(t=!1)),!t})),t&&e.run(),t}function d(e,t){void 0===e[t]?e[t]=1:e[t]++}s(n)||((0,i.JE)("queueing auction due to limited endpoint capacity"),V.push(n))}return(0,_.lc)((()=>te.refresh())),B.on(R.qY.SEAT_NON_BID,(e=>{var t;e.auctionId===b&&(t=e.seatnonbid,re=re.concat(t))})),{addBidReceived:function(e){te.add(e)},addBidRejected:function(e){X=X.concat(e)},addNoBid:function(e){ne=ne.concat(e)},callBids:function(){Y=j,C=Date.now();let e=g.measureTime("requestBids.makeRequests",(()=>O.Ay.makeBidRequests(p,C,b,y,h,u,g)));(0,i.fH)(`Bids Requested for Auction with id: ${b}`,e),g.checkpoint("callBids"),e.length<1?((0,i.JE)("No valid bid requests returned for auction"),ce()):L.call({dispatch:ue,context:this},e)},addWinningBid:function(e){ie=ie.concat(e),O.Ay.callBidWonBidder(e.adapterCode||e.bidder,e,t),e.deferBilling||O.Ay.triggerBilling(e)},setBidTargeting:function(e){O.Ay.callSetTargetingBidder(e.adapterCode||e.bidder,e)},getWinningBids:()=>ie,getAuctionStart:()=>C,getAuctionEnd:()=>U,getTimeout:()=>y,getAuctionId:()=>b,getAuctionStatus:()=>Y,getAdUnits:()=>p,getAdUnitCodes:()=>m,getBidRequests:()=>ee,getBidsReceived:()=>te.toArray(),getNoBids:()=>ne,getNonBids:()=>re,getFPD:()=>u,getMetrics:()=>g,end:A.promise,requestsDone:w.promise,getProperties:se}}const F=(0,w.u2)((0,w.A_)("async",(function(e,t,n){!function(e){const t=a.$W.getConfig("maxBid");return!t||!e.cpm||t>=Number(e.cpm)}(t)?n(R.Tf.PRICE_TOO_HIGH):this.dispatch.call(null,e,t)}),"addBidResponse")),H=(0,w.A_)("sync",(e=>e),"responsesReady"),L=(0,w.A_)("sync",(function(e){this.dispatch.call(this.context,e)}),"addBidderRequests"),z=(0,w.A_)("async",(function(e,t){t&&t()}),"bidsBackCallback");function J(e,t){!function(e){let t;const n=!0===C.u.get(e.bidderCode,"allowZeroCpmBids")?e.cpm>=0:e.cpm>0;e.bidderCode&&(n||e.dealId)&&(t=function(e,t){let{index:n=ae.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!t)return{};const i=n.getBidRequest(t);var r={};const s=ie(t.mediaType,e);re(r,s,t,i),e&&C.u.getOwn(e,R.iD.ADSERVER_TARGETING)&&(re(r,C.u.ownSettingsFor(e),t,i),t.sendStandardTargeting=C.u.get(e,"sendStandardTargeting"));t.native&&(r=Object.assign({},r,(0,o.Zj)(t)));return r}(e.bidderCode,e));e.adserverTargeting=Object.assign(e.adserverTargeting||{},t)}(t),(0,k.BO)(t.metrics).timeSince("addBidResponse","addBidResponse.total"),e.addBidReceived(t),B.Ic(R.qY.BID_RESPONSE,t)}const Q=(0,w.A_)("async",(function(e,t,n,i){v(e,t,n)}),"callPrebidCache");function K(e,t,n){if(e&&n){if(e===T.G_){const e=t?.[T.G_]?.context??"instream";if(n[`${T.G_}-${e}`])return n[`${T.G_}-${e}`]}return n[e]}}const Y=e=>t=>{const n=e||function(e){let{index:t=ae.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=K(e.mediaType,t.getMediaTypes(e),a.$W.getConfig("mediaTypePriceGranularity"));return"string"==typeof e.mediaType&&n?"string"==typeof n?n:"custom":a.$W.getConfig("priceGranularity")}(t);return n===R.UE.AUTO?t.pbAg:n===R.UE.DENSE?t.pbDg:n===R.UE.LOW?t.pbLg:n===R.UE.MEDIUM?t.pbMg:n===R.UE.HIGH?t.pbHg:n===R.UE.CUSTOM?t.pbCg:void 0},X=()=>e=>e.creativeId?e.creativeId:"",Z=()=>e=>e.meta&&e.meta.advertiserDomains&&e.meta.advertiserDomains.length>0?[e.meta.advertiserDomains].flat()[0]:"",ee=()=>e=>e.meta&&(e.meta.networkId||e.meta.networkName)?e?.meta?.networkName||e?.meta?.networkId:"",te=()=>e=>{const t=e?.meta?.primaryCatId;return Array.isArray(t)?t[0]||"":t||""};function ne(e,t){return{key:e,val:"function"==typeof t?function(e,n){return t(e,n)}:function(e){return e[t]}}}function ie(e,t){const n=Object.assign({},C.u.settingsFor(null));if(n[R.iD.ADSERVER_TARGETING]||(n[R.iD.ADSERVER_TARGETING]=[ne(R.xS.BIDDER,"bidderCode"),ne(R.xS.AD_ID,"adId"),ne(R.xS.PRICE_BUCKET,Y()),ne(R.xS.SIZE,"size"),ne(R.xS.DEAL,"dealId"),ne(R.xS.SOURCE,"source"),ne(R.xS.FORMAT,"mediaType"),ne(R.xS.ADOMAIN,Z()),ne(R.xS.ACAT,te()),ne(R.xS.DSP,ee()),ne(R.xS.CRID,X())]),"video"===e){const e=n[R.iD.ADSERVER_TARGETING].slice();if(n[R.iD.ADSERVER_TARGETING]=e,[R.xS.UUID,R.xS.CACHE_ID].forEach((t=>{void 0===e.find((e=>e.key===t))&&e.push(ne(t,"videoCacheKey"))})),a.$W.getConfig("cache.url")&&(!t||!1!==C.u.get(t,"sendStandardTargeting"))){const t=(0,i.Dl)(a.$W.getConfig("cache.url"));void 0===e.find((e=>e.key===R.xS.CACHE_HOST))&&e.push(ne(R.xS.CACHE_HOST,(function(e){return e?.adserverTargeting?.[R.xS.CACHE_HOST]||t.hostname})))}}return n}function re(e,t,n,r){var o=t[R.iD.ADSERVER_TARGETING];return n.size=n.getSize(),(o||[]).forEach((function(o){var s=o.key,a=o.val;if(e[s]&&(0,i.JE)("The key: "+s+" is being overwritten"),(0,i.fp)(a))try{a=a(n,r)}catch(e){(0,i.vV)("bidmanager","ERROR",e)}(void 0===t.suppressEmptyKeys||!0!==t.suppressEmptyKeys)&&s!==R.xS.DEAL&&s!==R.xS.ACAT&&s!==R.xS.DSP&&s!==R.xS.CRID||!(0,i.xQ)(a)&&null!=a?e[s]=a:(0,i.fH)("suppressing empty key '"+s+"' from adserver targeting")})),e}function oe(e,t){return e[t.adUnitCode]||(e[t.adUnitCode]={bids:[]}),e[t.adUnitCode].bids.push(t),e}function se(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:i}=t;if(null!=n||null!=i){let t=e().flatMap((e=>e.getBidRequests()));return null!=i&&(t=t.filter((e=>e.bidderRequestId===i))),null==n?t[0]:t.find((e=>e.bids&&null!=e.bids.find((e=>e.bidId===n))))}},getBidRequest(t){let{requestId:n}=t;if(null!=n)return e().flatMap((e=>e.getBidRequests())).flatMap((e=>e.bids)).find((e=>e&&e.bidId===n))},getOrtb2(e){return this.getBidderRequest(e)?.ortb2||this.getAuction(e)?.getFPD()?.global?.ortb2}})}const ae=function(){const e=(0,D.H)({startTime:e=>e.end.then((()=>e.getAuctionEnd())),ttl:e=>null==(0,_.S9)()?null:e.end.then((()=>1e3*Math.max((0,_.S9)(),...e.getBidsReceived().map((e=>e.ttl)))))});(0,_.lc)((()=>e.refresh()));const t={onExpiry:e.onExpiry};function n(t){for(const n of e)if(n.getAuctionId()===t)return n}function r(){return e.toArray().flatMap((e=>e.getBidsReceived()))}return t.addWinningBid=function(e){const t=(0,k.BO)(e.metrics);t.checkpoint("bidWon"),t.timeBetween("auctionEnd","bidWon","adserver.pending"),t.timeBetween("requestBids","bidWon","adserver.e2e");const r=n(e.auctionId);r?r.addWinningBid(e):(0,i.JE)("Auction not found when adding winning bid")},Object.entries({getAllWinningBids:{name:"getWinningBids"},getBidsRequested:{name:"getBidRequests"},getNoBids:{},getAdUnits:{},getBidsReceived:{pre:e=>e.getAuctionStatus()===q},getAdUnitCodes:{post:i.hj}}).forEach((n=>{let[i,{name:r=i,pre:o,post:s}]=n;const a=null==o?e=>e[r]():e=>o(e)?e[r]():[],d=null==s?e=>e:e=>e.filter(s);t[i]=()=>d(e.toArray().flatMap(a))})),t.getAllBidsForAdUnitCode=function(e){return r().filter((t=>t&&t.adUnitCode===e))},t.createAuction=function(t){const n=G(t);return function(t){e.add(t)}(n),n},t.findBidByAdId=function(e){return r().find((t=>t.adId===e))},t.getStandardBidderAdServerTargeting=function(){return ie()[R.iD.ADSERVER_TARGETING]},t.setStatusForBids=function(e,i){let r=t.findBidByAdId(e);if(r&&(r.status=i),r&&i===R.tl.BID_TARGETING_SET){const e=n(r.auctionId);e&&e.setBidTargeting(r)}},t.getLastAuctionId=function(){const t=e.toArray();return t.length&&t[t.length-1].getAuctionId()},t.clearAllAuctions=function(){e.clear()},t.index=new se((()=>e.toArray())),t}()},7863:(e,t,n)=>{n.d(t,{S9:()=>l,cT:()=>c,lc:()=>u});var i=n(3272),r=n(1069);const o="minBidCacheTTL";let s=1,a=null;const d=[];function c(e){return e.ttl-(e.hasOwnProperty("ttlBuffer")?e.ttlBuffer:s)}function l(){return a}function u(e){d.push(e)}i.$W.getConfig("ttlBuffer",(e=>{"number"==typeof e.ttlBuffer?s=e.ttlBuffer:(0,r.vV)("Invalid value for ttlBuffer",e.ttlBuffer)})),i.$W.getConfig(o,(e=>{const t=a;a=e?.[o],a="number"==typeof a?a:null,t!==a&&d.forEach((e=>e(a)))}))},2693:(e,t,n)=>{n.d(t,{u:()=>a});var i=n(433),r=n(1069),o=n(7873),s=n(8969);const a=new class{constructor(e,t){this.getSettings=e,this.defaultScope=t}get(e,t){let n=this.getOwn(e,t);return void 0===n&&(n=this.getOwn(null,t)),n}getOwn(e,t){return e=this.#e(e),(0,i.A)(this.getSettings(),`${e}.${t}`)}getScopes(){return Object.keys(this.getSettings()).filter((e=>e!==this.defaultScope))}settingsFor(e){return(0,r.D9)({},this.ownSettingsFor(null),this.ownSettingsFor(e))}ownSettingsFor(e){return e=this.#e(e),this.getSettings()[e]||{}}#e(e){return null==e?this.defaultScope:e}}((()=>(0,o.m)().bidderSettings||{}),s.iD.BD_SETTING_STANDARD)},3597:(e,t,n)=>{n.d(t,{O:()=>o});var i=n(1069);function r(e){let{src:t="client",bidder:n="",bidId:r,transactionId:o,adUnitId:s,auctionId:a}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};var d=t,c=e||0;Object.assign(this,{bidderCode:n,width:0,height:0,statusMessage:function(){switch(c){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:(0,i.s0)(),requestId:r,transactionId:o,adUnitId:s,auctionId:a,mediaType:"banner",source:d}),this.getStatusCode=function(){return c},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 o(e,t){return new r(e,t)}},3272:(e,t,n)=>{n.d(t,{$W:()=>p,Ov:()=>c});var i=n(6833),r=n(1069),o=n(433),s=n(8969);const a="TRUE"===(0,r.Ez)(s.M).toUpperCase(),d={},c="random",l={};l[c]=!0,l.fixed=!0;const u=c,f={LOW:"low",MEDIUM:"medium",HIGH:"high",AUTO:"auto",DENSE:"dense",CUSTOM:"custom"};function g(e){const t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1]?{priceGranularity:f.MEDIUM,customPriceBucket:{},mediaTypePriceGranularity:{},bidderSequence:u,auctionOptions:{}}:{};function n(e){return t[e]}function o(n,i){t.hasOwnProperty(n)||Object.defineProperty(e,n,{enumerable:!0}),t[n]=i}const s={publisherDomain:{set(e){null!=e&&(0,r.JE)("publisherDomain is deprecated and has no effect since v7 - use pageUrl instead"),o("publisherDomain",e)}},priceGranularity:{set(e){d(e)&&("string"==typeof e?o("priceGranularity",a(e)?e:f.MEDIUM):(0,r.Qd)(e)&&(o("customPriceBucket",e),o("priceGranularity",f.CUSTOM),(0,r.OG)("Using custom price granularity")))}},customPriceBucket:{},mediaTypePriceGranularity:{set(e){null!=e&&o("mediaTypePriceGranularity",Object.keys(e).reduce(((t,i)=>(d(e[i])?"string"==typeof e?t[i]=a(e[i])?e[i]:n("priceGranularity"):(0,r.Qd)(e)&&(t[i]=e[i],(0,r.OG)(`Using custom price granularity for ${i}`)):(0,r.JE)(`Invalid price granularity for media type: ${i}`),t)),{}))}},bidderSequence:{set(e){l[e]?o("bidderSequence",e):(0,r.JE)(`Invalid order: ${e}. Bidder Sequence was not set.`)}},auctionOptions:{set(e){(function(e){if(!(0,r.Qd)(e))return(0,r.JE)("Auction Options must be an object"),!1;for(let t of Object.keys(e)){if("secondaryBidders"!==t&&"suppressStaleRender"!==t&&"suppressExpiredRender"!==t)return(0,r.JE)(`Auction Options given an incorrect param: ${t}`),!1;if("secondaryBidders"===t){if(!(0,r.cy)(e[t]))return(0,r.JE)(`Auction Options ${t} must be of type Array`),!1;if(!e[t].every(r.O8))return(0,r.JE)(`Auction Options ${t} must be only string`),!1}else if(("suppressStaleRender"===t||"suppressExpiredRender"===t)&&!(0,r.Lm)(e[t]))return(0,r.JE)(`Auction Options ${t} must be of type boolean`),!1}return!0})(e)&&o("auctionOptions",e)}}};return Object.defineProperties(e,Object.fromEntries(Object.entries(s).map((e=>{let[i,r]=e;return[i,Object.assign({get:n.bind(null,i),set:o.bind(null,i),enumerable:t.hasOwnProperty(i),configurable:!t.hasOwnProperty(i)},r)]})))),e;function a(e){return Object.keys(f).find((t=>e===f[t]))}function d(e){if(!e)return(0,r.vV)("Prebid Error: no value passed to `setPriceGranularity()`"),!1;if("string"==typeof e)a(e)||(0,r.JE)("Prebid Warning: setPriceGranularity was called with invalid setting, using `medium` as default.");else if((0,r.Qd)(e)&&!(0,i.q)(e))return(0,r.vV)("Invalid custom price value passed to `setPriceGranularity()`"),!1;return!0}}const p=function(){let e,t,n,i=[],s=null;function c(){e={};let i=g({debug:a,bidderTimeout:3e3,enableSendAllBids:true,useBidCache:false,deviceAccess:true,disableAjaxTimeout:false,maxNestedIframes:10,maxBid:5e3,userSync:{topics:d}});t&&y(Object.keys(t).reduce(((e,n)=>(t[n]!==i[n]&&(e[n]=i[n]||{}),e)),{})),t=i,n={}}function l(){if(s&&n&&(0,r.Qd)(n[s])){const e=n[s],i=new Set([...Object.keys(t),...Object.keys(e)]),o={};for(const n of i){const i=t[n],s=e[n];o[n]=void 0===s?i:void 0===i?s:(0,r.Qd)(s)?(0,r.D9)({},i,s):s}return o}return{...t}}const[u,f]=[l,function(){const e=l();return Object.defineProperty(e,"ortb2",{get:function(){throw new Error("invalid access to 'orbt2' config - use request parameters instead")}}),e}].map((e=>function(){if(arguments.length<=1&&"function"!=typeof(arguments.length<=0?void 0:arguments[0])){const t=arguments.length<=0?void 0:arguments[0];return t?(0,o.A)(e(),t):l()}return b(...arguments)})),[p,h]=[f,u].map((e=>function(){let t=e(...arguments);return t&&"object"==typeof t&&(t=(0,r.Go)(t)),t}));function m(n){if(!(0,r.Qd)(n))return void(0,r.vV)("setConfig options must be an object");let i=Object.keys(n),o={};i.forEach((i=>{let s=n[i];(0,r.Qd)(e[i])&&(0,r.Qd)(s)&&(s=Object.assign({},e[i],s));try{o[i]=t[i]=s}catch(e){(0,r.JE)(`Cannot set config for property ${i} : `,e)}})),y(o)}function b(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=t;if("string"!=typeof e&&(o=e,e="*",n=t||{}),"function"!=typeof o)return void(0,r.vV)("listener must be a function");const s={topic:e,callback:o};return i.push(s),n.init&&o("*"===e?f():{[e]:f(e)}),function(){i.splice(i.indexOf(s),1)}}function y(e){const t=Object.keys(e);i.filter((e=>t.includes(e.topic))).forEach((t=>{t.callback({[t.topic]:e[t.topic]})})),i.filter((e=>"*"===e.topic)).forEach((t=>t.callback(e)))}function v(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];try{!function(e){if(!(0,r.Qd)(e))throw"setBidderConfig bidder options must be an object";if(!Array.isArray(e.bidders)||!e.bidders.length)throw"setBidderConfig bidder options must contain a bidders list with at least 1 bidder";if(!(0,r.Qd)(e.config))throw"setBidderConfig bidder options must contain a config object"}(e),e.bidders.forEach((i=>{n[i]||(n[i]=g({},!1)),Object.keys(e.config).forEach((o=>{let s=e.config[o];const a=n[i][o];if((0,r.Qd)(s)&&(null==a||(0,r.Qd)(a))){const e=t?r.D9:Object.assign;n[i][o]=e({},a||{},s)}else n[i][o]=s}))}))}catch(e){(0,r.vV)(e)}}function E(e,t){s=e;try{return t()}finally{A()}}function A(){s=null}return c(),{getCurrentBidder:function(){return s},resetBidder:A,getConfig:f,getAnyConfig:u,readConfig:p,readAnyConfig:h,setConfig:m,mergeConfig:function(e){if(!(0,r.Qd)(e))return void(0,r.vV)("mergeConfig input must be an object");const t=(0,r.D9)(l(),e);return m({...t}),t},setDefaults:function(n){(0,r.Qd)(e)?(Object.assign(e,n),Object.assign(t,n)):(0,r.vV)("defaults must be an object")},resetConfig:c,runWithBidder:E,callbackWithBidder:function(e){return function(t){return function(){if("function"==typeof t){for(var n=arguments.length,i=new Array(n),o=0;o{n.d(t,{B1:()=>s,SL:()=>p,ad:()=>l,mW:()=>d,o2:()=>f,t6:()=>c});var i=n(1069),r=n(5555),o=n(3272);const s=Object.freeze({});class a{#t;#n;#i;#r;#o=!0;#s;generatedTime;hashFields;constructor(){this.reset()}#a(e){this.#r=!0,this.#n=e,this.#i.resolve(e)}reset(){this.#i=(0,r.v6)(),this.#t=!1,this.#n=null,this.#r=!1,this.generatedTime=null}enable(){this.#t=!0}get enabled(){return this.#t}get ready(){return this.#r}get promise(){return this.#r?r.U9.resolve(this.#n):(this.#t||this.#a(null),this.#i.promise)}setConsentData(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(0,i.vE)();this.generatedTime=t,this.#o=!0,this.#a(e)}getConsentData(){return this.#n}get hash(){return this.#o&&(this.#s=(0,i.PB)(JSON.stringify(this.#n&&this.hashFields?this.hashFields.map((e=>this.#n[e])):this.#n)),this.#o=!1),this.#s}}const d=new class extends a{hashFields=["gdprApplies","consentString"];getConsentMeta(){const e=this.getConsentData();if(e&&e.vendorData&&this.generatedTime)return{gdprApplies:e.gdprApplies,consentStringSize:(0,i.O8)(e.vendorData.tcString)?e.vendorData.tcString.length:0,generatedAt:this.generatedTime,apiVersion:e.apiVersion}}},c=new class extends a{getConsentMeta(){if(this.getConsentData()&&this.generatedTime)return{generatedAt:this.generatedTime}}},l=new class extends a{hashFields=["applicableSections","gppString"];getConsentMeta(){if(this.getConsentData()&&this.generatedTime)return{generatedAt:this.generatedTime}}},u=(()=>{function e(){return!!o.$W.getConfig("coppa")}return{getCoppa:e,getConsentData:e,getConsentMeta:e,reset(){},get promise(){return r.U9.resolve(e())},get hash(){return e()?"1":"0"}}})(),f=function(){const e={},t={},n={};return{register(i,r,o){o&&((e[r]=e[r]||{})[i]=o,t.hasOwnProperty(r)?t[r]!==o&&(t[r]=n):t[r]=o)},get(i){const r={modules:e[i]||{}};return t.hasOwnProperty(i)&&t[i]!==n&&(r.gvlid=t[i]),r}}}(),g={gdpr:d,usp:c,gpp:l,coppa:u};const p=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:g;return e=Object.entries(e),Object.assign({get promise(){return r.U9.all(e.map((e=>{let[t,n]=e;return n.promise.then((e=>[t,e]))}))).then((e=>Object.fromEntries(e)))},get hash(){return(0,i.PB)(e.map((e=>{let[t,n]=e;return n.hash})).join(":"))}},Object.fromEntries(["getConsentData","getConsentMeta","reset"].map((t=>{return[t,(n=t,function(){return Object.fromEntries(e.map((e=>{let[t,i]=e;return[t,i[n]()]})))})];var n}))))}()},8969:(e,t,n)=>{n.d(t,{IY:()=>A,M:()=>r,RW:()=>g,Tf:()=>h,UE:()=>c,XQ:()=>o,Zh:()=>u,_B:()=>v,as:()=>a,cA:()=>d,h0:()=>m,iD:()=>i,jO:()=>b,nl:()=>E,oA:()=>y,qY:()=>s,tl:()=>p,x5:()=>f,xS:()=>l});const i={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"},r="pbjs_debug",o={GOOD:1},s={AUCTION_INIT:"auctionInit",AUCTION_TIMEOUT:"auctionTimeout",AUCTION_END:"auctionEnd",BID_ADJUSTMENT:"bidAdjustment",BID_TIMEOUT:"bidTimeout",BID_REQUESTED:"bidRequested",BID_RESPONSE:"bidResponse",BID_REJECTED:"bidRejected",NO_BID:"noBid",SEAT_NON_BID:"seatNonBid",BID_WON:"bidWon",BIDDER_DONE:"bidderDone",BIDDER_ERROR:"bidderError",SET_TARGETING:"setTargeting",BEFORE_REQUEST_BIDS:"beforeRequestBids",BEFORE_BIDDER_HTTP:"beforeBidderHttp",REQUEST_BIDS:"requestBids",ADD_AD_UNITS:"addAdUnits",AD_RENDER_FAILED:"adRenderFailed",AD_RENDER_SUCCEEDED:"adRenderSucceeded",TCF2_ENFORCEMENT:"tcf2Enforcement",AUCTION_DEBUG:"auctionDebug",BID_VIEWABLE:"bidViewable",STALE_RENDER:"staleRender",EXPIRED_RENDER:"expiredRender",BILLABLE_EVENT:"billableEvent",BID_ACCEPTED:"bidAccepted",RUN_PAAPI_AUCTION:"paapiRunAuction",PBS_ANALYTICS:"pbsAnalytics",PAAPI_BID:"paapiBid",PAAPI_NO_BID:"paapiNoBid",PAAPI_ERROR:"paapiError",BEFORE_PBS_HTTP:"beforePBSHttp",BROWSI_INIT:"browsiInit",BROWSI_DATA:"browsiData"},a={PREVENT_WRITING_ON_MAIN_DOCUMENT:"preventWritingOnMainDocument",NO_AD:"noAd",EXCEPTION:"exception",CANNOT_FIND_AD:"cannotFindAd",MISSING_DOC_OR_ADID:"missingDocOrAdid"},d={bidWon:"adUnitCode"},c={LOW:"low",MEDIUM:"medium",HIGH:"high",AUTO:"auto",DENSE:"dense",CUSTOM:"custom"},l={BIDDER:"hb_bidder",AD_ID:"hb_adid",PRICE_BUCKET:"hb_pb",SIZE:"hb_size",DEAL:"hb_deal",SOURCE:"hb_source",FORMAT:"hb_format",UUID:"hb_uuid",CACHE_ID:"hb_cache_id",CACHE_HOST:"hb_cache_host",ADOMAIN:"hb_adomain",ACAT:"hb_acat",CRID:"hb_crid",DSP:"hb_dsp"},u={BIDDER:"hb_bidder",AD_ID:"hb_adid",PRICE_BUCKET:"hb_pb",SIZE:"hb_size",DEAL:"hb_deal",FORMAT:"hb_format",UUID:"hb_uuid",CACHE_HOST:"hb_cache_host"},f={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"},g={SRC:"s2s",DEFAULT_ENDPOINT:"https://prebid.adnxs.com/pbs/v1/openrtb2/auction",SYNCED_BIDDERS_KEY:"pbjsSyncs"},p={BID_TARGETING_SET:"targetingSet",RENDERED:"rendered",BID_REJECTED:"bidRejected"},h={INVALID:"Bid has missing or invalid properties",INVALID_REQUEST_ID:"Invalid request ID",BIDDER_DISALLOWED:"Bidder code is not allowed by allowedAlternateBidderCodes / allowUnknownBidderCodes",FLOOR_NOT_MET:"Bid does not meet price floor",CANNOT_CONVERT_CURRENCY:"Unable to convert currency",DSA_REQUIRED:"Bid does not provide required DSA transparency info",DSA_MISMATCH:"Bid indicates inappropriate DSA rendering method",PRICE_TOO_HIGH:"Bid price exceeds maximum value"},m={body:"desc",body2:"desc2",sponsoredBy:"sponsored",cta:"ctatext",rating:"rating",address:"address",downloads:"downloads",likes:"likes",phone:"phone",price:"price",salePrice:"saleprice",displayUrl:"displayurl"},b={sponsored:1,desc:2,rating:3,likes:4,downloads:5,price:6,saleprice:7,phone:8,address:9,desc2:10,displayurl:11,ctatext:12},y={ICON:1,MAIN:3},v=["privacyIcon","clickUrl","sendTargetingKeys","adTemplate","rendererUrl","type"],E={REQUEST:"Prebid Request",RESPONSE:"Prebid Response",NATIVE:"Prebid Native",EVENT:"Prebid Event"},A="__pb_locator__"},6833:(e,t,n)=>{n.d(t,{j:()=>u,q:()=>g});var i=n(1069),r=n(3272);const o=2,s={buckets:[{max:5,increment:.5}]},a={buckets:[{max:20,increment:.1}]},d={buckets:[{max:20,increment:.01}]},c={buckets:[{max:3,increment:.01},{max:8,increment:.05},{max:20,increment:.5}]},l={buckets:[{max:5,increment:.05},{max:10,increment:.1},{max:20,increment:.5}]};function u(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,i=parseFloat(e);return isNaN(i)&&(i=""),{low:""===i?"":f(e,s,n),med:""===i?"":f(e,a,n),high:""===i?"":f(e,d,n),auto:""===i?"":f(e,l,n),dense:""===i?"":f(e,c,n),custom:""===i?"":f(e,t,n)}}function f(e,t,n){let s="";if(!g(t))return s;const a=t.buckets.reduce(((e,t)=>e.max>t.max?e:t),{max:0});let d=0,c=t.buckets.find((t=>{if(e>a.max*n){let e=t.precision;void 0===e&&(e=o),s=(t.max*n).toFixed(e)}else{if(e<=t.max*n&&e>=d*n)return t.min=d,t;d=t.max}}));return c&&(s=function(e,t,n){const s=void 0!==t.precision?t.precision:o,a=t.increment*n,d=t.min*n;let c=Math.floor,l=r.$W.getConfig("cpmRoundingFunction");"function"==typeof l&&(c=l);let u,f,g=Math.pow(10,s+2),p=(e*g-d*g)/(a*g);try{u=c(p)*a+d}catch(e){f=!0}(f||"number"!=typeof u)&&((0,i.JE)("Invalid rounding function passed in config"),u=Math.floor(p)*a+d);return u=Number(u.toFixed(10)),u.toFixed(s)}(e,c,n)),s}function g(e){if((0,i.Im)(e)||!e.buckets||!Array.isArray(e.buckets))return!1;let t=!0;return e.buckets.forEach((e=>{e.max&&e.increment||(t=!1)})),t}},6031:(e,t,n)=>{n.d(t,{HH:()=>c,kj:()=>d,xh:()=>a});var i=n(5555),r=n(1069),o=n(4595),s=n(9214);const a=3,d=(0,s.A_)("sync",(function(e){return o.G})),c=function(){const e={};return function(t){const n=d(t);return e.hasOwnProperty(n)||(e[n]=new i.U9((e=>{const t=(0,r.CA)();t.srcdoc=` Skip to Content

Ukraine says it hit Russian ‘shadow fleet’ tankers with underwater drones in Black Sea

By Tim Lister, Victoria Butenko and Darya Tarasova

(CNN) — Ukrainian underwater drones have struck two tankers belonging to Russia’s so-called shadow fleet in the Black Sea, according to an official in Ukraine’s security services (SBU).

Ukraine claimed the attacks after explosions hit the two vessels on Friday and Saturday.

A Ukrainian security source told CNN that Sea Baby maritime drones had been used in a joint operation by the SBU and the navy. There was no immediate comment from Russia.

Both tankers sustained critical damage, the source said, and were effectively taken out of service. “This will deal a significant blow to the transportation of Russian oil.”

Russia uses hundreds of tankers – many sailing under different flags of convenience – to ship its oil to customers in defiance of sanctions.

The Gambian-flagged tanker Virat was attacked again on Saturday, after first sustaining damage on Friday, according to Turkey’s Transport Ministry.

Minor damage was sustained above the waterline, according to Turkish maritime authorities, and there was no fire. The vessel is some 30 miles (50 kilometers) off the Turkish coast. Ship tracking data showed it slowing and turning towards the coast late on Friday.

“There is no request from the personnel to abandon the ship,” the Turkish transport ministry said, but a firefighting tugboat had been sent to the scene.

The Turkish foreign ministry expressed concern over the attacks, which “posed serious risks to the safety of navigation, life, property, and the environment in the region.”

The Virat’s destination was unclear. Shipping data showed it awaiting orders in the Black Sea. It was sanctioned by the United States in January when it sailed under a different name, and by the United Kingdom and European Union later this year.

There was also an explosion on another ship that carries Russian crude oil in a nearby part of the Black Sea on Friday. All 25 crew members on board that tanker, the Gambian- flagged Kairos, were evacuated. Neither vessel was in Turkish waters when they were hit.

Video showed Turkish tugs tackling an extensive fire on board the ship about 30 miles off the Turkish coast. On Saturday the Turkish Transport ministry said that a fire on the open deck of the Kairos had been extinguished.

The Kairos is 275 meters long and weighs nearly 80,000 tons. It was sanctioned by the EU earlier this year and left an Indian port earlier this month to return to the Russian Black Sea port of Novorossiysk.

Earlier this year, several unexplained explosions occurred on ships that have carried oil for Russia from the Black Sea.

Both the Virat and the Kairos had transited the Bosphorus Strait into the Black Sea. Other ships also sanctioned for carrying Russian crude oil were traveling the same route, according to shipping data on Saturday.

There was also an attack by a marine drone early Saturday on a mooring point in Novorossiysk, according to the Caspian Pipeline Consortium.

The pipeline carries oil from Kazakhstan – through Russia – to customers overseas. Kazakhstan’s energy ministry said it had “activated a plan to redirect export oil volumes to alternative routes” after the strike.

Kazakhstan’s foreign affairs ministry issued a statement protesting “yet another deliberate attack” on the pipeline, saying it harmed relations between the central Asian nation and Ukraine.

“This incident marks the third act of aggression against an exclusively civilian facility whose operation is safeguarded by norms of international law,” said spokesperson Aibek Smadiyarov.

Novorossiysk has been attacked by Ukrainian drones multiple times. CNN has reached out to Ukraine’s security services for comment.

The-CNN-Wire
™ & © 2025 Cable News Network, Inc., a Warner Bros. Discovery Company. All rights reserved.

Article Topic Follows: CNN - World

CNN Newsource

BE PART OF THE CONVERSATION

KION 46 is committed to providing a forum for civil and constructive conversation.

Please keep your comments respectful and relevant. You can review our Community Guidelines by clicking here

If you would like to share a story idea, please submit it here.