if(window.pbjs&&window.pbjs.libLoaded)try{window.pbjs.getConfig("debug")&&console.warn("Attempted to load a copy of Prebid.js that clashes with the existing 'pbjs' instance. Load aborted.")}catch(e){}else (function(){(()=>{var t,r={70433:(t,r,e)=>{function n(t,r,e,n,o){for(r=r.split?r.split("."):r,n=0;nn})},68128:t=>{i.SYNC=1,i.ASYNC=2,i.QUEUE=4;var r="fun-hooks",e=Object.freeze({ready:0}),n=new WeakMap;function o(t,r){return Array.prototype.slice.call(t,r)}function i(t){var f,a={},c=[];function u(t,r){return"function"==typeof t?s.call(null,"sync",t,r):"string"==typeof t&&"function"==typeof r?s.apply(null,arguments):"object"==typeof t?l.apply(null,arguments):void 0}function l(t,r,e){var n=!0;void 0===r&&(r=Object.getOwnPropertyNames(t).filter((t=>!t.match(/^_/))),n=!1);var o={},i=["constructor"];do{r.forEach((function(r){var n=r.match(/(?:(sync|async):)?(.+)/),f=n[1]||"sync",a=n[2];if(!o[a]&&"function"==typeof t[a]&&-1===i.indexOf(a)){var c=t[a];o[a]=t[a]=s(f,c,e?[e,a]:void 0)}})),t=Object.getPrototypeOf(t)}while(n&&t);return o}function p(t){var e=Array.isArray(t)?t:t.split(".");return e.reduce((function(n,o,i){var a=n[o],u=!1;return a||(i===e.length-1?(f||c.push((function(){u||console.warn(r+": referenced '"+t+"' but it was never created")})),n[o]=y((function(t){n[o]=t,u=!0}))):n[o]={})}),a)}function y(t){var r=[],e=[],o=function(){},i={before:function(t,e){return a.call(this,r,"before",t,e)},after:function(t,r){return a.call(this,e,"after",t,r)},getHooks:function(t){var n=r.concat(e);"object"==typeof t&&(n=n.filter((function(r){return Object.keys(t).every((function(e){return r[e]===t[e]}))})));try{Object.assign(n,{remove:function(){return n.forEach((function(t){t.remove()})),this}})}catch(t){console.error("error adding `remove` to array, did you modify Array.prototype?")}return n},removeAll:function(){return this.getHooks().remove()}},f={install:function(n,i,f){this.type=n,o=f,f(r,e),t&&t(i)}};return n.set(i.after,f),i;function a(t,n,i,f){var a={hook:i,type:n,priority:f||10,remove:function(){var n=t.indexOf(a);-1!==n&&(t.splice(n,1),o(r,e))}};return t.push(a),t.sort((function(t,r){return r.priority-t.priority})),o(r,e),this}}function s(e,a,u){var l=a.after&&n.get(a.after);if(l){if(l.type!==e)throw r+": recreated hookable with different type";return a}var s,v=u?p(u):y(),h={get:function(t,r){return v[r]||Reflect.get.apply(Reflect,arguments)}};f||c.push(b);var d=new Proxy(a,h);return n.get(d.after).install(e,d,(function(t,r){var n,i=[];t.length||r.length?(t.forEach(f),n=i.push(void 0)-1,r.forEach(f),s=function(t,r,f){var a,c=i.slice(),u=0,l="async"===e&&"function"==typeof f[f.length-1]&&f.pop();function p(t){"sync"===e?a=t:l&&l.apply(null,arguments)}function y(t){if(c[u]){var n=o(arguments);return y.bail=p,n.unshift(y),c[u++].apply(r,n)}"sync"===e?a=t:l&&l.apply(null,arguments)}return c[n]=function(){var n=o(arguments,1);"async"===e&&l&&(delete y.bail,n.push(y));var i=t.apply(r,n);"sync"===e&&y(i)},y.apply(null,f),a}):s=void 0;function f(t){i.push(t.hook)}b()})),d;function b(){!f&&("sync"!==e||t.ready&i.SYNC)&&("async"!==e||t.ready&i.ASYNC)?"sync"!==e&&t.ready&i.QUEUE?h.apply=function(){var t=arguments;c.push((function(){d.apply(t[1],t[2])}))}:h.apply=function(){throw r+": hooked function not ready"}:h.apply=s}}return(t=Object.assign({},e,t)).ready?u.ready=function(){f=!0,function(t){for(var r;r=t.shift();)r()}(c)}:f=!0,u.get=p,u}t.exports=i},63172:(t,r,e)=>{function n(t,r,e){r.split&&(r=r.split("."));for(var n,o,i=0,f=r.length,a=t;in})},45751:(t,r,e)=>{function n(t){var r,e,o;if(Array.isArray(t)){for(e=Array(r=t.length);r--;)e[r]=(o=t[r])&&"object"==typeof o?n(o):o;return e}if("[object Object]"===Object.prototype.toString.call(t)){for(r in e={},t)"__proto__"===r?Object.defineProperty(e,r,{value:n(t[r]),configurable:!0,enumerable:!0,writable:!0}):e[r]=(o=t[r])&&"object"==typeof o?n(o):o;return e}return t}e.d(r,{Q:()=>n})}},e={};function n(t){var o=e[t];if(void 0!==o)return o.exports;var i=e[t]={exports:{}};return r[t].call(i.exports,i,i.exports,n),i.exports}n.m=r,t=[],n.O=(r,e,o,i)=>{if(!e){var f=1/0;for(l=0;l=i)&&Object.keys(n.O).every((t=>n.O[t](e[c])))?e.splice(c--,1):(a=!1,i0&&t[l-1][2]>i;l--)t[l]=t[l-1];t[l]=[e,o,i]},n.n=t=>{var r=t&&t.__esModule?()=>t.default:()=>t;return n.d(r,{a:r}),r},n.d=(t,r)=>{for(var e in r)n.o(r,e)&&!n.o(t,e)&&Object.defineProperty(t,e,{enumerable:!0,get:r[e]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),n.o=(t,r)=>Object.prototype.hasOwnProperty.call(t,r),n.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},(()=>{var t={39673:0};n.O.j=r=>0===t[r];var r=(r,e)=>{var o,i,[f,a,c]=e,u=0;if(f.some((r=>0!==t[r]))){for(o in a)n.o(a,o)&&(n.m[o]=a[o]);if(c)var l=c(n)}for(r&&r(e);un(77332)));o=n.O(o)})();(self.pbjsChunk=self.pbjsChunk||[]).push([[60802],{95789:(e,t,n)=>{n.d(t,{A4:()=>c,J7:()=>l,Pg:()=>u});var r=n(41580),i=n(91069),o=n(7873),s=n(45569);const a=(0,o.m)(),d="outstream";function c(e){const{url:t,config:n,id:o,callback:c,loaded:l,adUnitCode:u,renderNow:g}=e;this.url=t,this.config=n,this.handlers={},this.id=o,this.renderNow=g,this.adUnitCode=u,this.loaded=l,this.cmd=[],this.push=e=>{"function"==typeof e?this.loaded?e.call():this.cmd.push(e):(0,i.logError)("Commands given to Renderer.push must be wrapped in a function")},this.callback=c||(()=>{this.loaded=!0,this.process()}),this.render=function(){const e=arguments,n=()=>{this._render?this._render.apply(this,e):(0,i.logWarn)("No render function was provided, please use .setRender on the renderer")};!function(e){const t=a.adUnits.find((t=>t.code===e));if(!t)return!1;const n=t?.renderer,r=!!(n&&n.url&&n.render),i=t?.mediaTypes?.video?.renderer,o=!!(i&&i.url&&i.render);return!!(r&&!0!==n.backupOnly||o&&!0!==i.backupOnly)}(u)?g?n():(this.cmd.unshift(n),(0,r.R)(t,s.tp,d,this.callback,this.documentContext)):((0,i.logWarn)(`External Js not loaded by Renderer since renderer url and callback is already defined on adUnit ${u}`),n())}.bind(this)}function l(e){return!(!e||!e.url&&!e.renderNow)}function u(e,t,n){let r=null;e.config&&e.config.documentResolver&&(r=e.config.documentResolver(t,document,n)),r||(r=document),e.documentContext=r,e.render(t,e.documentContext)}c.install=function(e){let{url:t,config:n,id:r,callback:i,loaded:o,adUnitCode:s,renderNow:a}=e;return new c({url:t,config:n,id:r,callback:i,loaded:o,adUnitCode:s,renderNow:a})},c.prototype.getConfig=function(){return this.config},c.prototype.setRender=function(e){this._render=e},c.prototype.setEventHandlers=function(e){this.handlers=e},c.prototype.handleVideoEvent=function(e){let{id:t,eventName:n}=e;"function"==typeof this.handlers[n]&&this.handlers[n](),(0,i.logMessage)(`Prebid Renderer event for id ${t} type ${n}`)},c.prototype.process=function(){for(;this.cmd.length>0;)try{this.cmd.shift().call()}catch(e){(0,i.logError)(`Error processing Renderer command on ad unit '${this.adUnitCode}':`,e)}}},76811:(e,t,n)=>{n.d(t,{DL:()=>l,Ml:()=>i,Ue:()=>r,VJ:()=>g,hE:()=>u,hq:()=>c,mo:()=>d,pY:()=>f,qX:()=>o,uc:()=>a,yl:()=>s});const r="accessDevice",i="syncUser",o="enrichUfpd",s="enrichEids",a="fetchBids",d="reportAnalytics",c="transmitEids",l="transmitUfpd",u="transmitPreciseGeo",g="transmitTid",f="loadExternalScript"},83441:(e,t,n)=>{n.d(t,{s:()=>i});var r=n(11445);const i=(0,n(2604).ZI)((e=>r.Ay.resolveAlias(e)))},45569:(e,t,n)=>{n.d(t,{Tn:()=>a,fW:()=>o,tW:()=>i,tp:()=>r,zu:()=>s});const r="prebid",i="bidder",o="userId",s="rtd",a="analytics"},2604:(e,t,n)=>{n.d(t,{Dk:()=>s,Ii:()=>o,TQ:()=>f,U3:()=>m,XG:()=>l,ZI:()=>p,Zw:()=>c,bt:()=>u,e3:()=>g,iK:()=>a,q7:()=>d});var r=n(45569),i=n(16833);const o="component",s=o+"Type",a=o+"Name",d="adapterCode",c="storageType",l="configName",u="syncType",g="syncUrl",f="_config";function p(e){return function(t,n,i){const c={[s]:t,[a]:n,[o]:`${t}.${n}`};return t===r.tW&&(c[d]=e(n)),m(Object.assign(c,i))}}const m=(0,i.A_)("sync",(e=>e))},96953:(e,t,n)=>{n.d(t,{Vx:()=>d,l7:()=>a,p4:()=>h,$V:()=>m,nl:()=>f,ZP:()=>b,$p:()=>y,uD:()=>p});var r=n(70433),i=n(43272),o=n(95139),s=n(76811);const a=["data","ext.data","yob","gender","keywords","kwarray","id","buyeruid","customdata"].map((e=>`user.${e}`)).concat("device.ext.cdep"),d=["user.eids","user.ext.eids"],c=["user.geo.lat","user.geo.lon","device.geo.lat","device.geo.lon"],l=["device.ip"],u=["device.ipv6"];function g(e){return Object.assign({get(){},run(e,t,n,r,i){const o=n&&n[r];if(m(o)&&i()){const e=this.get(o);void 0===e?delete n[r]:n[r]=e}}},e)}function f(e){return e.forEach((e=>{e.paths=e.paths.map((e=>{const t=e.split("."),n=t.pop();return[t.length>0?t.join("."):null,n]}))})),function(t,n){const i=[];for(var o=arguments.length,s=new Array(o>2?o-2:0),a=2;a{if(!1!==t[e.name])for(const[o,s]of e.paths){const a=null==o?n:(0,r.A)(n,o);if(i.push(e.run(n,o,a,s,d.bind(null,e))),!1===t[e.name])return}})),i.filter((e=>null!=e))}}function p(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r0)}function h(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o.io;return function(n){return!t(e,n)}}function b(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;return[{name:s.DL,paths:a,applies:h(s.DL,e)},{name:s.hq,paths:d,applies:h(s.hq,e)},{name:s.hE,paths:c,applies:h(s.hE,e),get:e=>Math.round(100*(e+Number.EPSILON))/100},{name:s.hE,paths:l,applies:h(s.hE,e),get:e=>function(e){if(!e)return null;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:h(s.hE,e),get:e=>function(e){if(!e)return null;let t=e.split(":").map((e=>parseInt(e,16)));for(t=t.map((e=>isNaN(e)?0:e));t.length<8;)t.push(0);if(8!=t.length)return null;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:h(s.VJ,e)}].map(g)}const y=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;const t=f(b(e)),n=f(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;return[{name:s.hq,paths:["userId","userIdAsEids"],applies:h(s.hq,e)},{name:s.VJ,paths:["ortb2Imp.ext.tid"],applies:h(s.VJ,e)}].map(g)}(e));return function(e){const r={};return{ortb2:n=>(t(r,n,e),n),bidRequest:t=>(n(r,t,e),t)}}}();(0,o.qB)(s.VJ,"enableTIDs config",(()=>{if(!i.$W.getConfig("enableTIDs"))return{allow:!1,reason:"TIDs are disabled"}}))},95139:(e,t,n)=>{n.d(t,{io:()=>s,qB:()=>o});var r=n(91069),i=n(2604);const[o,s]=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(0,r.prefixLog)("Activity control:");const t={};function n(e){return t[e]=t[e]||[]}function o(t,n,r,o){let s;try{s=r(o)}catch(r){e.logError(`Exception in rule ${n} for '${t}'`,r),s={allow:!1,reason:r}}return s&&Object.assign({activity:t,name:n,component:o[i.Ii]},s)}const s={};function a(t){let{activity:n,name:r,allow:i,reason:o,component:a}=t;const d=`${r} ${i?"allowed":"denied"} '${n}' for '${a}'${o?":":""}`,c=s.hasOwnProperty(d);if(c&&clearTimeout(s[d]),s[d]=setTimeout((()=>delete s[d]),1e3),!c){const t=[d];o&&t.push(o),(i?e.logInfo:e.logWarn).apply(e,t)}}return[function(e,t,r){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:10;const o=n(e),s=o.findIndex((e=>{let[t]=e;return i=0&&o.splice(e,1)}},function(e,t){let r,i;for(const[s,d,c]of n(e)){if(r!==s&&i)break;r=s;const n=o(e,d,c,t);if(n){if(!n.allow)return a(n),!1;i=n}}return i&&a(i),!0}]}()},29075:(e,t,n)=>{n.d(t,{$A:()=>T,BS:()=>P,Hh:()=>N,Pk:()=>W,Uc:()=>B,XO:()=>M,_0:()=>D,bw:()=>_,n6:()=>C,qn:()=>j,vB:()=>q,vW:()=>R,vd:()=>U});var r=n(91069),i=n(75023),o=n(78969),s=n(43272),a=n(95789),d=n(71371),c=n(67314),l=n(46031),u=n(16833),g=n(12449),f=n(25555),p=n(11445),m=n(16894),h=n(97779),b=n(33005);const{AD_RENDER_FAILED:y,AD_RENDER_SUCCEEDED:v,STALE_RENDER:E,BID_WON:A,EXPIRED_RENDER:I}=o.qY,{EXCEPTION:w}=o.as,T=(0,u.A_)("sync",(function(e){return(arguments.length>2&&void 0!==arguments[2]?arguments[2]:f.U9.resolve()).then((t=>t??c.n.findBidByAdId(e))).catch((()=>{}))})),C=(0,u.A_)("sync",(function(e){((0,b.$T)(e.eventtrackers)[b.RO]?.[b.Ni]||[]).forEach((e=>(0,r.triggerPixel)(e))),i.emit(A,e),c.n.addWinningBid(e)}));function S(e){let{reason:t,message:n,bid:o,id:s}=e;const a={reason:t,message:n};o&&(a.bid=o,a.adId=o.adId),s&&(a.adId=s),(0,r.logError)(`Error rendering ad (id: ${s}): ${n}`),i.emit(y,a)}function O(e){let{doc:t,bid:n,id:r}=e;const o={doc:t};n&&(o.bid=n),r&&(o.adId=r),p.Ay.callAdRenderSucceededBidder(n.adapterCode||n.bidder,n),i.emit(v,o)}function B(e,t){switch(e.event){case o.qY.AD_RENDER_FAILED:S({bid:t,id:t.adId,reason:e.info.reason,message:e.info.message});break;case o.qY.AD_RENDER_SUCCEEDED:O({doc:null,bid:t,id:t.adId});break;default:(0,r.logError)(`Received event request for unsupported event: '${e.event}' (adId: '${t.adId}')`)}}function R(e,t,n){let{resizeFn:r,fireTrackers:i=g.vO}=n;if("resizeNativeHeight"===e.action)r(e.width,e.height);else i(e,t)}const k={[o.nl.EVENT]:B};k[o.nl.NATIVE]=R;const U=(0,u.A_)("sync",(function(e,t){const{ad:n,adUrl:i,cpm:o,originalCpm:s,width:a,height:d,instl:c}=e,l={AUCTION_PRICE:s||o,CLICKTHROUGH:t?.clickUrl||""};return{ad:(0,r.replaceMacros)(n,l),adUrl:(0,r.replaceMacros)(i,l),width:a,height:d,instl:c}})),D=(0,u.A_)("sync",(function(e){let{renderFn:t,resizeFn:n,bidResponse:i,options:s,doc:a,isMainDocument:c=a===document&&!(0,r.inIframe)()}=e;const l=i.mediaType===d.G_;if(c||l)return void S({reason:o.as.PREVENT_WRITING_ON_MAIN_DOCUMENT,message:l?"Cannot render video ad without a renderer":"renderAd was prevented from writing to the main document.",bid:i,id:i.adId});const u=U(i,s);t(Object.assign({adId:i.adId},u));const{width:g,height:f}=u;null!=(g??f)&&n(g,f)}));function _(e){let{renderFn:t,resizeFn:n,adId:a,options:d,bidResponse:c,doc:l}=e;N(c,(()=>{if(null!=c){if((c.status!==o.tl.RENDERED||((0,r.logWarn)(`Ad id ${a} has been rendered before`),i.emit(E,c),!s.$W.getConfig("auctionOptions")?.suppressStaleRender))&&(h.uW.isBidNotExpired(c)||((0,r.logWarn)(`Ad id ${a} has been expired`),i.emit(I,c),!s.$W.getConfig("auctionOptions")?.suppressExpiredRender)))try{D({renderFn:t,resizeFn:n,bidResponse:c,options:d,doc:l})}catch(e){S({reason:o.as.EXCEPTION,message:e.message,id:a,bid:c})}}else S({reason:o.as.CANNOT_FIND_AD,message:`Cannot find ad '${a}'`,id:a})}))}function j(e){const t=(0,m.BO)(e.metrics);t.checkpoint("bidRender"),t.timeBetween("bidWon","bidRender","render.deferred"),t.timeBetween("auctionEnd","bidRender","render.pending"),t.timeBetween("requestBids","bidRender","render.e2e"),e.status=o.tl.RENDERED}D.before((function(e,t){const{bidResponse:n,doc:r}=t;(0,a.J7)(n.renderer)?((0,a.Pg)(n.renderer,n,r),O({doc:r,bid:n,id:n.adId}),e.bail()):e(t)}),100);const $=new WeakMap,x=new WeakSet;function N(e,t){null!=e?($.set(e,t),e.deferRendering||q(e),W(e)):t()}function W(e){x.has(e)||(x.add(e),C(e))}function q(e){const t=$.get(e);t&&(t(),j(e),$.delete(e))}function P(e,t,n){let i;function s(e,n){S(Object.assign({id:t,bid:i},{reason:e,message:n}))}function a(t,n){const r=e.defaultView?.frameElement;r&&(t&&(r.width=t,r.style.width&&(r.style.width=`${t}px`)),n&&(r.height=n,r.style.height&&(r.style.height=`${n}px`)))}const d=(c={resizeFn:a},function(e,t,n){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:i,id:i.adId})):(0,l.HH)(i).then((n=>n(t,{sendMessage:(e,t)=>d(e,t,i),mkFrame:r.createIframe},e.defaultView))).then((()=>O({doc:e,bid:i,id:i.adId})),(e=>{s(e?.reason||o.as.EXCEPTION,e?.message),e?.stack&&(0,r.logError)(e)}));const n=document.createComment(`Creative ${i.creativeId} served by ${i.bidder} Prebid.js Header Bidding`);(0,r.insertElement)(n,e,"html")}try{t&&e?T(t).then((r=>{i=r,_({renderFn:u,resizeFn:a,adId:t,options:{clickUrl:n?.clickThrough},bidResponse:r,doc:e})})):s(o.as.MISSING_DOC_OR_ADID,"missing "+(t?"doc":"adId"))}catch(e){s(w,e.message)}}function M(){if(!window.frames[o.IY])if(document.body){const e=(0,r.createInvisibleIframe)();e.name=o.IY,document.body.appendChild(e)}else window.requestAnimationFrame(M)}},10201:(e,t,n)=>{n.d(t,{U:()=>s});var r=n(7873),i=n(91069);const o=(0,r.m)();function s(e,t){o.adServers=o.adServers||{},o.adServers[e]=o.adServers[e]||{},Object.keys(t).forEach((n=>{o.adServers[e][n]?(0,i.logWarn)(`Attempting to add an already registered function property ${n} for AdServer ${e}.`):o.adServers[e][n]=t[n]}))}},69759:(e,t,n)=>{function r(e){var t=e;return{callBids:function(){},setBidderCode:function(e){t=e},getBidderCode:function(){return t}}}n.d(t,{A:()=>r})},11445:(e,t,n)=>{n.d(t,{S1:()=>R,Ay:()=>V,tS:()=>P,pX:()=>G,Mf:()=>L,K5:()=>W,Gs:()=>M});var r=n(91069),i=n(12449),o=n(57377),s=n(68044),a=n(43272),d=n(16833);let c={};function l(e,t,n){let r=function(e,t){let n=c[e]=c[e]||{bidders:{}};return t?n.bidders[t]=n.bidders[t]||{}:n}(e,n);return r[t]=(r[t]||0)+1,r[t]}function u(e){return l(e,"auctionsCounter")}function g(e){return c?.[e]?.requestsCounter||0}function f(e,t){return c?.[e]?.bidders?.[t]?.requestsCounter||0}function p(e,t){return c?.[e]?.bidders?.[t]?.winsCounter||0}function m(e){return c?.[e]?.auctionsCounter||0}var h=n(27934),b=n(16916),y=n(75023),v=n(78969),E=n(16894),A=n(67314),I=n(45569),w=n(95139),T=n(76811),C=n(2604),S=n(96953),O=n(33005);const B="pbsBidAdapter",R={CLIENT:"client",SERVER:"server"},k={isAllowed:w.io,redact:S.$p};let U={},D=U.bidderRegistry={},_=U.aliasRegistry={},j=[];a.$W.getConfig("s2sConfig",(e=>{e&&e.s2sConfig&&(j=(0,r.isArray)(e.s2sConfig)?e.s2sConfig:[e.s2sConfig])}));var $={};const x=(0,C.ZI)((e=>U.resolveAlias(e)));function N(e){return e.configName??e.name}function W(e){return x(I.tp,B,{[C.XG]:N(e)})}const q=(0,d.A_)("sync",(function(e){let{bidderCode:t,auctionId:n,bidderRequestId:i,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,r.mergeDeep)({},o.ortb2Imp,d.ortb2Imp)},(0,r.getDefinedParams)(o,["nativeParams","nativeOrtbRequest","mediaType","renderer"]))).mediaTypes?o.mediaTypes:d.mediaTypes;return(0,r.isValidMediaTypes)(c)?d=Object.assign({},d,{mediaTypes:c}):(0,r.logError)(`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,r.getUniqueIdentifierStr)(),bidderRequestId:i,auctionId:n,src:s,metrics:a,auctionsCount:m(o.code),bidRequestsCount:g(o.code),bidderRequestsCount:f(o.code,d.bidder),bidderWinsCount:p(o.code,d.bidder),deferBilling:!!o.deferBilling})),e}),[])),e}),[]).reduce(r.flatten,[]).filter((e=>""!==e))}),"getBids");const P=(0,d.A_)("sync",(function(e,t){let{getS2SBidders:n=G}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null==t)return e;{const r=n(t);return e.filter((e=>{if(!r.has(e.bidder))return!1;if(null==e.s2sConfigName)return!0;const n=N(t);return(Array.isArray(e.s2sConfigName)?e.s2sConfigName:[e.s2sConfigName]).includes(n)}))}}),"filterBidsForAdUnit");const M=(0,d.A_)("sync",((e,t)=>e),"setupAdUnitMediaTypes");function G(e){(0,r.isArray)(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 L=(0,d.A_)("sync",(function(e,t){let{getS2SBidders:n=G}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const i=n(t);return(0,r.getBidderCodes)(e).reduce(((e,t)=>(e[i.has(t)?R.SERVER:R.CLIENT].push(t),e)),{[R.CLIENT]:[],[R.SERVER]:[]})}),"partitionBidders");function F(e,t){const n=D[e],r=n?.getSpec&&n.getSpec();if(r&&r[t]&&"function"==typeof r[t])return[r,r[t]]}function z(e,t,n,i){try{(0,r.logInfo)(`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.emit(v.qY.BEFORE_REQUEST_BIDS,e),(0,i.nk)(e),e.map((e=>e.code)).filter(r.uniques).forEach(u),e.forEach((e=>{(0,r.isPlainObject)(e.mediaTypes)||(e.mediaTypes={}),e.bids=e.bids.filter((e=>!e.bidder||k.isAllowed(T.uc,x(I.tW,e.bidder)))),l(e.code,"requestsCounter")})),e=M(e,s);let{[R.CLIENT]:g,[R.SERVER]:f}=L(e,j);a.$W.getConfig("bidderSequence")===a.Ov&&(g=(0,r.shuffle)(g));const p=(0,h.EN)();let m=[];const A=d.global||{},w=d.bidder||{};function C(e,t){const i=k.redact(null!=t?t:x(I.tW,e.bidderCode)),o=(0,r.mergeDeep)({source:{tid:n}},A,w[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(i.ortb2(o));return e.ortb2=s,e.bids=e.bids.map((e=>(e.ortb2=s,i.bidRequest(e)))),e}j.forEach((i=>{const o=W(i);if(i&&i.enabled&&k.isAllowed(T.uc,o)){let{adUnits:s,hasModuleBids:a}=function(e,t){let n=(0,r.deepClone)(e),i=!1;return n.forEach((e=>{const n=e.bids.filter((e=>e.module===B&&e.params?.configName===N(t)));1===n.length?(e.s2sBid=n[0],i=!0,e.ortb2Imp=(0,r.mergeDeep)({},e.s2sBid.ortb2Imp,e.ortb2Imp)):n.length>1&&(0,r.logWarn)('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,r.getUniqueIdentifierStr)(),e)))})),n=n.filter((e=>!(t.filterBidderlessCalls&&1===e.bids.length&&null==e.bids[0].bidder||0===e.bids.length&&null==e.s2sBid))),{adUnits:n,hasModuleBids:i}}(e,i),d=(0,r.generateUUID)();(0===f.length&&a?[null]:f).forEach((e=>{const a=(0,r.getUniqueIdentifierStr)(),l=c.fork(),u=C({bidderCode:e,auctionId:n,bidderRequestId:a,uniquePbsTid:d,bids:q({bidderCode:e,auctionId:n,bidderRequestId:a,adUnits:(0,r.deepClone)(s),src:v.RW.SRC,metrics:l}),auctionStart:t,timeout:i.timeout,src:v.RW.SRC,refererInfo:p,metrics:l},o);0!==u.bids.length&&m.push(u)})),s.forEach((e=>{let t=e.bids.filter((e=>m.find((t=>t.bids.find((t=>t.bidId===e.bid_id))))));e.bids=t})),m.forEach((e=>{void 0===e.adUnitsS2SCopy&&(e.adUnitsS2SCopy=s.filter((e=>e.bids.length>0||null!=e.s2sBid)))}))}}));let S=function(e){let t=(0,r.deepClone)(e);return t.forEach((e=>{e.bids=P(e.bids,null)})),t=t.filter((e=>0!==e.bids.length)),t}(e);return g.forEach((e=>{const i=(0,r.getUniqueIdentifierStr)(),a=c.fork(),d=C({bidderCode:e,auctionId:n,bidderRequestId:i,bids:q({bidderCode:e,auctionId:n,bidderRequestId:i,adUnits:(0,r.deepClone)(S),labels:s,src:"client",metrics:a}),auctionStart:t,timeout:o,refererInfo:p,metrics:a}),l=D[e];l||(0,r.logError)(`Trying to make a request for bidder that does not exist: ${e}`),l&&d.bids&&0!==d.bids.length&&m.push(d)})),m.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())})),m}),"makeBidRequests"),U.callBids=function(e,t,n,i,o,d,c){let l=arguments.length>7&&void 0!==arguments[7]?arguments[7]:{};if(!t.length)return void(0,r.logWarn)("callBids executed with no bidRequests. Were they filtered by labels or sizing?");let[u,g]=t.reduce(((e,t)=>(e[Number(void 0!==t.src&&t.src===v.RW.SRC)].push(t),e)),[[],[]]);var f=[];g.forEach((e=>{for(var t=-1,n=0;n{if(e&&f[p]&&G(e).has(f[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 m=f[p].uniquePbsTid,h=f[p].adUnitsS2SCopy,b=g.filter((e=>e.uniquePbsTid===m));if(u){let o={ad_units:h,s2sConfig:e,ortb2Fragments:l,requestBidsTimeout:d};if(o.ad_units.length){let e=b.map((e=>(e.start=(0,r.timestamp)(),function(t){t||c(e.bidderRequestId),i.apply(e,arguments)})));const s=(0,r.getBidderCodes)(o.ad_units).filter((e=>a.includes(e)));(0,r.logMessage)(`CALLING S2S HEADER BIDDERS ==== ${s.length>0?s.join(", "):'No bidder specified, using "ortb2Imp" definition(s) only'}`),b.forEach((e=>{y.emit(v.qY.BID_REQUESTED,{...e,tid:e.auctionId})})),u.callBids(o,g,n,(t=>e.forEach((e=>e(t)))),t)}}else(0,r.logError)("missing "+e.adapter);p++}})),u.forEach((e=>{e.start=(0,r.timestamp)();const t=D[e.bidderCode];a.$W.runWithBidder(e.bidderCode,(()=>{(0,r.logMessage)("CALLING BIDDER"),y.emit(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=i.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,r.logError)(`${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(I.tW,t,e.getSpec?.().gvlid),n.includes("video")&&U.videoAdapters.push(t),n.includes("native")&&i.mT.push(t)):(0,r.logError)("Bidder adaptor error for bidder code: "+t+"bidder must implement a callBids() function"):(0,r.logError)("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=[];j.forEach((r=>{if(r.bidders&&r.bidders.length){const i=r&&r.bidders;r&&i.includes(t)?_[t]=e:n.push(e)}})),n.forEach((e=>{(0,r.logError)('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"),i.mT.includes(e)&&t.push("native"),t}(e);if(s.constructor.prototype!=Object.prototype)a=new s.constructor,a.setBidderCode(t);else{const{useBaseGvlid:i=!1}=n||{};let d=s.getSpec();const c=i?d.gvlid:n?.gvlid;null==c&&null!=d.gvlid&&(0,r.logWarn)(`Alias '${t}' will NOT re-use the GVL ID of the original adapter ('${d.code}', gvlid: ${d.gvlid}). Functionality that requires TCF consent may not work as expected.`);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,r.logError)(e+" bidder does not currently support aliasing.","adapterManager.aliasBidAdapter")}}else(0,r.logMessage)('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:i}=e;t&&n?"function"==typeof t.enableAnalytics?(t.code=n,$[n]={adapter:t,gvlid:i},b.o2.register(I.Tn,n,i)):(0,r.logError)(`Prebid Error: Analytics adaptor error for analytics "${n}"\n analytics adapter must implement an enableAnalytics() function`):(0,r.logError)("Prebid Error: analyticsAdapter or analyticsCode not specified")},U.enableAnalytics=function(e){(0,r.isArray)(e)||(e=[e]),e.forEach((e=>{const t=$[e.provider];t&&t.adapter?k.isAllowed(T.mo,x(I.Tn,e.provider,{[C.TQ]:e}))&&t.adapter.enableAnalytics(e):(0,r.logError)(`Prebid Error: no analytics adapter found in registry for '${e.provider}'.`)}))},U.getBidAdapter=function(e){return D[e]},U.getAnalyticsAdapter=function(e){return $[e]},U.callTimedOutBidders=function(e,t,n){t=t.map((t=>(t.params=(0,r.getUserConfiguredParams)(e,t.adUnitCode,t.bidder),t.timeout=n,t))),t=(0,r.groupBy)(t,"bidder"),Object.keys(t).forEach((e=>{H(e,"onTimeout",t[e])}))},U.callBidWonBidder=function(e,t,n){var i,o;t.params=(0,r.getUserConfiguredParams)(n,t.adUnitCode,t.bidder),i=t.adUnitCode,o=t.bidder,l(i,"winsCounter",o),H(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=>r.internal.triggerPixel(e))),H(t.bidder,"onBidBillable",t))}})(),U.callSetTargetingBidder=function(e,t){H(e,"onSetTargeting",t)},U.callBidViewableBidder=function(e,t){H(e,"onBidViewable",t)},U.callBidderError=function(e,t,n){H(e,"onBidderError",{error:t,bidderRequest:n})},U.callAdRenderSucceededBidder=function(e,t){H(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,i);if(null!=n){const r=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));z(e,i,...n,r,...t)}})),Object.entries($).forEach((e=>{let[n,o]=e;const s=o?.adapter?.[i];if("function"==typeof s)try{s.apply(o.adapter,t)}catch(e){(0,r.logError)(`error calling ${i} of ${n}`,e)}}))}));const V=U},57377:(e,t,n)=>{n.d(t,{JN:()=>R,JS:()=>U,a$:()=>w,eI:()=>T,fn:()=>k,xb:()=>C});var r=n(69759),i=n(11445),o=n(43272),s=n(93597),a=n(38230),d=n(12449),c=n(63895),l=n(78969),u=n(75023),g=n(91069),f=n(16833),p=n(67314),m=n(12693),h=n(16894),b=n(95139),y=n(83441),v=n(45569),E=n(76811);const A=["cpm","ttl","creativeId","netRevenue","currency"],I=["auctionId","transactionId"];function w(e){const t=Array.isArray(e.supportedMediaTypes)?{supportedMediaTypes:e.supportedMediaTypes}:void 0;function n(e){const n=C(e);i.Ay.registerBidAdapter(n,e.code,t)}n(e),Array.isArray(e.aliases)&&e.aliases.forEach((t=>{let r,o,s=t;(0,g.isPlainObject)(t)&&(s=t.code,r=t.gvlid,o=t.skipPbsAliasing),i.Ay.aliasRegistry[s]=e.code,n(Object.assign({},e,{code:s,gvlid:r,skipPbsAliasing:o}))}))}const T=(0,g.memoize)((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 I.includes(t)?null:Reflect.get(e,t,n)}function r(e,t){const n=new Proxy(e,t);return Object.entries(e).filter((e=>{let[t,n]=e;return"function"==typeof n})).forEach((t=>{let[r,i]=t;return n[r]=i.bind(e)})),n}const i=(0,g.memoize)((e=>r(e,{get:n})),(e=>e.bidId));return{bidRequest:i,bidderRequest:e=>r(e,{get:(t,r,o)=>"bids"===r?e.bids.map(i):n(t,r,o)})}}));function C(e){return Object.assign(new r.A(e.code),{getSpec:function(){return Object.freeze(Object.assign({},e))},registerSyncs:t,callBids:function(n,r,a,d,c,f){if(!Array.isArray(n.bids))return;const p=T(n),b={};const y=[];function v(){a(),o.$W.runWithBidder(e.code,(()=>{u.emit(l.qY.BIDDER_DONE,n),t(y,n.gdprConsent,n.uspConsent,n.gppConsent)}))}const E=U(n).measureTime("validate",(()=>n.bids.filter((t=>function(t){if(!e.isBidRequestValid(t))return(0,g.logWarn)(`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)})),O(e,E,n,d,f,{onRequest:e=>u.emit(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,g.logWarn)("Received fledge auction configuration for an unknown bidId",e)},onError:(t,r)=>{r.timedOut||c(e.code),i.Ay.callBidderError(e.code,r,n),u.emit(l.qY.BIDDER_ERROR,{error:r,bidderRequest:n}),(0,g.logError)(`Server call for ${e.code} failed: ${t} ${r.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=m.u.get(t,"allowAlternateBidderCodes")||!1,r=m.u.get(t,"allowedAlternateBidderCodes");if(e&&t&&t!==e&&(r=(0,g.isArray)(r)?r.map((e=>e.trim().toLowerCase())).filter((e=>!!e)).filter(g.uniques):r,!n||(0,g.isArray)(r)&&"*"!==r[0]&&!r.includes(e)))return!0;return!1}(t.bidderCode,n.bidder))return(0,g.logWarn)(`${t.bidderCode} is not a registered partner or known bidder of ${n.bidder}, hence continuing without bid. If you wish to support this bidder, please mark allowAlternateBidderCodes as true in bidderSettings.`),void r.reject(n.adUnitCode,t,l.Tf.BIDDER_DISALLOWED);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 i=Object.assign((0,s.O)(l.XQ.GOOD,n),t,(0,g.pick)(n,I));!function(e,t){const n=(0,h.BO)(t.metrics);n.checkpoint("addBidResponse"),b[e]=!0,n.measureTime("addBidResponse.validate",(()=>k(e,t)))?r(e,t):r.reject(e,t,l.Tf.INVALID)}(n.adUnitCode,i)}else(0,g.logWarn)(`Bidder ${e.code} made bid for unknown request ID: ${t.requestId}. Ignoring.`),r.reject(null,t,l.Tf.INVALID_REQUEST_ID)},onCompletion:v})}});function t(t,n,r,i){B(e,t,n,r,i)}}const S=["bids","paapi"],O=(0,f.A_)("async",(function(e,t,n,r,i,o){let{onRequest:s,onResponse:a,onPaapi:d,onError:c,onBid:u,onCompletion:f}=o;const p=U(n);f=p.startTiming("total").stopBefore(f);const h=T(n);let A=p.measureTime("buildRequests",(()=>e.buildRequests(t.map(h.bidRequest),h.bidderRequest(n))));if(!A||0===A.length)return void f();Array.isArray(A)||(A=[A]);const I=(0,g.delayExecution)(f,A.length);A.forEach((t=>{const n=p.fork();function o(e){null!=e&&(e.metrics=n.fork().renameWith()),u(e)}const f=i((function(r,i){A();try{r=JSON.parse(r)}catch(e){}r={body:r,headers:{get:i.getResponseHeader.bind(i)}},a(r);try{r=n.measureTime("interpretResponse",(()=>e.interpretResponse(r,t)))}catch(t){return(0,g.logError)(`Bidder ${e.code} failed to interpret the server's response. Continuing without bids`,null,t),void I()}let s,c;r&&!Object.keys(r).some((e=>!S.includes(e)))?(s=r.bids,c=r.paapi):s=r,(0,g.isArray)(c)&&c.forEach(d),s&&((0,g.isArray)(s)?s.forEach(o):o(s)),I()})),h=i((function(e,t){A(),c(e,t),I()}));s(t);const A=n.startTiming("net"),w="TRUE"===(0,g.getParameterByName)(l.M).toUpperCase()||(0,g.debugTurnedOn)();function T(n){const r=t.options;return Object.assign(n,r,{browsingTopics:!(r?.hasOwnProperty("browsingTopics")&&!r.browsingTopics)&&((m.u.get(e.code,"topicsHeader")??!0)&&(0,b.io)(E.DL,(0,y.s)(v.tW,e.code))),suppressTopicsEnrollmentWarning:r?.hasOwnProperty("suppressTopicsEnrollmentWarning")?r.suppressTopicsEnrollmentWarning:!w})}switch(t.method){case"GET":r(`${t.url}${function(e){if(e)return`?${"object"==typeof e?(0,g.parseQueryStringParameters)(e):e}`;return""}(t.data)}`,{success:f,error:h},void 0,T({method:"GET",withCredentials:!0}));break;case"POST":const n=t.options?.endpointCompression,i=e=>{let{url:t,payload:n}=e;r(t,{success:f,error:h},n,T({method:"POST",contentType:"text/plain",withCredentials:!0}))};n&&w&&(0,g.logWarn)(`Skipping GZIP compression for ${e.code} as debug mode is enabled`),n&&!w&&(0,g.isGzipCompressionSupported)()?(0,g.compressDataWithGZip)(t.data).then((e=>{const n=new URL(t.url,window.location.origin);n.searchParams.has("gzip")||n.searchParams.set("gzip","1"),i({url:n.href,payload:e})})):i({url:t.url,payload:"string"==typeof t.data?t.data:JSON.stringify(t.data)});break;default:(0,g.logWarn)(`Skipping invalid request from ${e.code}. Request type ${t.type} must be GET or POST`),I()}}))}),"processBidderRequests"),B=(0,f.A_)("async",(function(e,t,n,r,s){const d=o.$W.getConfig("userSync.aliasSyncEnabled");if(e.getUserSyncs&&(d||!i.Ay.aliasRegistry[e.code])){let i=e.getUserSyncs({iframeEnabled:a.zt.canBidderRegisterSync("iframe",e.code),pixelEnabled:a.zt.canBidderRegisterSync("image",e.code)},t,n,r,s);i&&(Array.isArray(i)||(i=[i]),i.forEach((t=>{a.zt.registerSync(t.type,e.code,t.url)})),a.zt.bidderDone(e.code))}}),"registerSyncs"),R=(0,f.A_)("sync",((e,t)=>{}),"addPaapiConfig");function k(e,t){let{index:n=p.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};function r(e){return`Invalid bid from ${t.bidderCode}. Ignoring bid: ${e}`}return e?t?function(){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 r=n.getBidRequest(t),i=n.getMediaTypes(t),o=r&&r.sizes||i&&i.banner&&i.banner.sizes,s=(0,g.parseSizesInput)(o);if(1===s.length){const[e,n]=s[0].split("x");return t.width=parseInt(e,10),t.height=parseInt(n,10),!0}return!1}(e,t,{index:n}))||((0,g.logError)(r("Banner bids require a width and height")),!1):((0,g.logError)(r("Video bid does not have required vastUrl or renderer property")),!1):((0,g.logError)(r("Native bid missing some required properties.")),!1):((0,g.logError)(r(`Bidder ${t.bidderCode} is missing required params. Check http://prebid.org/dev-docs/bidder-adapter-1.html for list of params.`)),!1):((0,g.logWarn)(`Some adapter tried to add an undefined bid for ${e}.`),!1):((0,g.logWarn)("No adUnitCode was supplied to addBidResponse."),!1)}function U(e){return(0,h.BO)(e.metrics).renameWith((t=>[`adapter.client.${t}`,`adapters.client.${e.bidderCode}.${t}`]))}},41580:(e,t,n)=>{n.d(t,{R:()=>c});var r=n(76811),i=n(83441),o=n(95139),s=n(91069);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)(r.pY,(0,i.s)(t,n)))return;if(!n||!e)return void(0,s.logError)("cannot load external script without url and moduleCode");if(!d.includes(n))return void(0,s.logError)(`${n} not whitelisted for loading external JavaScript`);l||(l=document);const g=m(l,e);if(g)return c&&"function"==typeof c&&(g.loaded?c():g.callbacks.push(c)),g.tag;const f=a.get(l)||{},p={loaded:!1,tag:null,callbacks:[]};return f[e]=p,a.set(l,f),c&&"function"==typeof c&&p.callbacks.push(c),(0,s.logWarn)(`module ${n} is loading external JavaScript`),function(t,n,r,i){r||(r=document);var o=r.createElement("script");o.type="text/javascript",o.async=!0;const a=m(r,e);a&&(a.tag=o);o.readyState?o.onreadystatechange=function(){"loaded"!==o.readyState&&"complete"!==o.readyState||(o.onreadystatechange=null,n())}:o.onload=function(){n()};o.src=t,i&&(0,s.setScriptAttributes)(o,i);return(0,s.insertElement)(o,r),o}(e,(function(){p.loaded=!0;try{for(let e=0;e{n.d(t,{Q:()=>r});const r=(0,n(16833).A_)("sync",(()=>{}))},68044:(e,t,n)=>{n.d(t,{RD:()=>f,Rz:()=>g,g4:()=>u,hd:()=>p});var r=n(43272),i=n(91069);const o={fetch:window.fetch.bind(window),makeRequest:(e,t)=>new Request(e,t),timeout(e,t){const n=new AbortController;let r=setTimeout((()=>{n.abort(),(0,i.logError)(`Request timeout after ${e}ms`,t),r=null}),e);return{signal:n.signal,done(){r&&clearTimeout(r)}}}},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]:{},i=(t,n)=>{let i;null==e||null!=n?.signal||r.$W.getConfig("disableAjaxTimeout")||(i=o.timeout(e,t),n=Object.assign({signal:i.signal},n));let s=o.fetch(t,n);return null!=i?.done&&(s=s.finally(i.done)),s};return null==t&&null==n||(i=(e=>function(r,i){const o=new URL(null==r?.url?r:r.url,document.location).origin;let s=e(r,i);return t&&t(o),n&&(s=s.finally((()=>n(o)))),s})(i)),i}function l(e,t){let{status:n,statusText:r="",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:r,responseText:t,response:t,responseType:"",responseURL:s,get responseXML(){return c(i.logError)},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 r=c(e,{request:t,done:n});return function(e,t,n){!function(e,t){const{success:n,error:r}="object"==typeof t&&null!=t?t:{success:"function"==typeof t?t:()=>null,error:(e,t)=>(0,i.logError)("Network error",e,t)};e.then((e=>e.text().then((t=>[e,t])))).then((e=>{let[t,i]=e;const o=l(t,i);t.ok||304===t.status?n(i,o):r(t.statusText,o)}),(e=>r("",Object.assign(l({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?a:s);if(r===s&&t){const r=(0,i.parseUrl)(e,n);Object.assign(r.search,t),e=(0,i.buildUrl)(r)}const c=new Headers(n.customHeaders);c.set(d,n.contentType||"text/plain");const l={method:r,headers:c};return r!==s&&t&&(l.body=t),n.withCredentials&&(l.credentials="include"),isSecureContext&&(["browsingTopics","adAuctionHeaders"].forEach((e=>{n[e]&&(l[e]=!0)})),null!=n.suppressTopicsEnrollmentWarning&&(l.suppressTopicsEnrollmentWarning=n.suppressTopicsEnrollmentWarning)),n.keepalive&&(l.keepalive=!0),o.makeRequest(e,l)}(e,n,arguments.length>3&&void 0!==arguments[3]?arguments[3]:{})),t)}}function g(e,t){return!(!window.navigator||!window.navigator.sendBeacon)&&window.navigator.sendBeacon(e,t)}const f=u(),p=c()},81657:(e,t,n)=>{n.d(t,{AA:()=>S,BU:()=>q,HN:()=>J,UZ:()=>O,ZV:()=>G,mO:()=>M,mX:()=>_,sR:()=>j,v8:()=>W,w1:()=>x});var r=n(91069),i=n(86833),o=n(12449),s=n(68693),a=n(95789),d=n(43272),c=n(38230),l=n(16833),u=n(63895),g=n(71371),f=n(67314),p=n(12693),m=n(75023),h=n(11445),b=n(78969),y=n(25555),v=n(16894),E=n(57176),A=n(7873),I=n(76853),w=n(27863);const{syncUsers:T}=c.zt,C="started",S="inProgress",O="completed";m.on(b.qY.BID_ADJUSTMENT,(function(e){!function(e){let t=(0,E.y)(e.cpm,e);t>=0&&(e.cpm=t)}(e)}));const B=4,R={},k={},U=[],D=(0,A.m)();function _(e){let{adUnits:t,adUnitCodes:n,callback:c,cbTimeout:l,labels:p,auctionId:E,ortb2Fragments:A,metrics:_}=e;_=(0,v.BO)(_);const M=t,G=p,L=n,F=E||(0,r.generateUUID)(),z=l,H=new Set,V=(0,y.v6)(),J=(0,y.v6)();let K,X,Q,Z,ee=[],te=c,ne=[],re=(0,I.H)({startTime:e=>e.responseTimestamp,ttl:e=>null==(0,w.S9)()?null:1e3*Math.max((0,w.S9)(),e.ttl)}),ie=[],oe=[],se=[];function ae(){return{auctionId:F,timestamp:K,auctionEnd:X,auctionStatus:Z,adUnits:M,adUnitCodes:L,labels:G,bidderRequests:ne,noBids:ie,bidsReceived:re.toArray(),bidsRejected:ee,winningBids:oe,timeout:z,metrics:_,seatNonBids:se}}function de(e){if(e?m.emit(b.qY.AUCTION_TIMEOUT,ae()):clearTimeout(Q),void 0===X){let n=[];e&&((0,r.logMessage)(`Auction ${F} timedOut`),n=ne.filter((e=>!H.has(e.bidderRequestId))).flatMap((e=>e.bids)),n.length&&m.emit(b.qY.BID_TIMEOUT,n)),Z=O,X=Date.now(),_.checkpoint("auctionEnd"),_.timeBetween("requestBids","auctionEnd","requestBids.total"),_.timeBetween("callBids","auctionEnd","requestBids.callBids"),V.resolve(),m.emit(b.qY.AUCTION_END,ae()),N(M,(function(){try{if(null!=te){const t=re.toArray().filter((e=>L.includes(e.adUnitCode))).reduce(Y,{});te.apply(D,[t,e,F]),te=null}}catch(e){(0,r.logError)("Error executing bidsBackHandler",null,e)}finally{n.length&&h.Ay.callTimedOutBidders(t,n,z);let e=d.$W.getConfig("userSync")||{};e.enableOverride||T(e.syncDelay)}}))}}function ce(){d.$W.resetBidder(),(0,r.logInfo)(`Bids Received for Auction with id: ${F}`,re.toArray()),Z=O,de(!1)}function le(e){H.add(e)}function ue(e){e.forEach((e=>{var t;t=e,ne=ne.concat(t)}));let t={},n={bidRequests:e,run:()=>{Q=setTimeout((()=>de(!0)),z),Z=S,m.emit(b.qY.AUCTION_INIT,ae());let n=function(e,t){let{index:n=f.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},c=0,l=!1,p=new Set,h={};function v(){c--,l&&0===c&&e()}function E(e,t,n){return h[t.requestId]=!0,function(e,t){let{index:n=f.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const i=n.getBidderRequest(e),o=n.getAdUnit(e),s=i&&i.start||e.requestTimestamp;Object.assign(e,{responseTimestamp:e.responseTimestamp||(0,r.timestamp)(),requestTimestamp:e.requestTimestamp||s,cpm:parseFloat(e.cpm)||0,bidder:e.bidder||e.bidderCode,adUnitCode:t}),null!=o?.ttlBuffer&&(e.ttlBuffer=o.ttlBuffer);e.timeToRespond=e.responseTimestamp-e.requestTimestamp}(t,e),c++,n(v)}function A(e,c){E(e,c,(e=>{let l=function(e){let{index:t=f.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m.emit(b.qY.BID_ADJUSTMENT,e);const n=t.getAdUnit(e);e.instl=1===n?.ortb2Imp?.instl;const r=t.getBidRequest(e)?.renderer||n.renderer,o=e.mediaType,s=t.getMediaTypes(e),c=s&&s[o];var l=c&&c.renderer,u=null;!l||!l.render||!0===l.backupOnly&&e.renderer?!r||!r.render||!0===r.backupOnly&&e.renderer||(u=r):u=l;u&&(e.renderer=a.A4.install({url:u.url,config:u.options,renderNow:null==u.url}),e.renderer.setRender(u.render));const g=P(e.mediaType,s,d.$W.getConfig("mediaTypePriceGranularity")),p=(0,i.j)(e.cpm,"object"==typeof g?g:d.$W.getConfig("customPriceBucket"),d.$W.getConfig("currency.granularityMultiplier"));return e.pbLg=p.low,e.pbMg=p.med,e.pbHg=p.high,e.pbAg=p.auto,e.pbDg=p.dense,e.pbCg=p.custom,e}(c);m.emit(b.qY.BID_ACCEPTED,l),l.mediaType===g.G_?function(e,t,n){let{index:i=f.n.index}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=!0;const a=i.getMediaTypes({requestId:t.originalRequestId||t.requestId,adUnitId:t.adUnitId})?.video,c=a&&a?.context,l=a&&a?.useCacheKey,{useLocal:g,url:p,ignoreBidderCacheKey:m}=d.$W.getConfig("cache")||{};g?(0,s.Sb)(t):p&&(l||c!==u.H6)&&(!t.videoCacheKey||m?(o=!1,q(e,t,n,a)):t.vastUrl||((0,r.logError)("videoCacheKey specified but not required vastUrl for video bid"),o=!1));o&&(W(e,t),n())}(t,l,e):((0,o.l6)(l)&&(0,o.gs)(l,n.getAdUnit(l)),W(t,l),e())}))}function I(e,n,i){return E(e,n,(e=>{n.rejectionReason=i,(0,r.logWarn)(`Bid from ${n.bidder||"unknown bidder"} was rejected: ${i}`,n),m.emit(b.qY.BID_REJECTED,n),t.addBidRejected(n),e()}))}function w(){let n=this,i=t.getBidRequests();const o=d.$W.getConfig("auctionOptions");if(p.add(n),o&&!(0,r.isEmpty)(o)){const e=o.secondaryBidders;e&&!i.every((t=>e.includes(t.bidderCode)))&&(i=i.filter((t=>!e.includes(t.bidderCode))))}l=i.every((e=>p.has(e))),n.bids.forEach((e=>{h[e.bidId]||(t.addNoBid(e),m.emit(b.qY.NO_BID,e))})),l&&0===c&&e()}return{addBidResponse:function(){function e(e,t){j.call({dispatch:A},e,t,(()=>{let n=!1;return r=>{n||(I(e,t,r),n=!0)}})())}return e.reject=I,e}(),adapterDone:function(){$(y.U9.resolve()).finally((()=>w.call(this)))}}}(ce,this);h.Ay.callBids(M,e,n.addBidResponse,n.adapterDone,{request(e,n){l(R,n),l(t,e),k[e]||(k[e]={SRA:!0,origin:n}),t[e]>1&&(k[e].SRA=!1)},done(e){R[e]--,U[0]&&c(U[0])&&U.shift()}},z,le,A),J.resolve()}};function c(e){let t=!0,n=d.$W.getConfig("maxRequestsPerOrigin")||B;return e.bidRequests.some((e=>{let r=1,i=void 0!==e.src&&e.src===b.RW.SRC?"s2s":e.bidderCode;return k[i]&&(!1===k[i].SRA&&(r=Math.min(e.bids.length,n)),R[k[i].origin]+r>n&&(t=!1)),!t})),t&&e.run(),t}function l(e,t){void 0===e[t]?e[t]=1:e[t]++}c(n)||((0,r.logWarn)("queueing auction due to limited endpoint capacity"),U.push(n))}return(0,w.lc)((()=>re.refresh())),m.on(b.qY.SEAT_NON_BID,(e=>{var t;e.auctionId===F&&(t=e.seatnonbid,se=se.concat(t))})),{addBidReceived:function(e){re.add(e)},addBidRejected:function(e){ee=ee.concat(e)},addNoBid:function(e){ie=ie.concat(e)},callBids:function(){Z=C,K=Date.now();let e=_.measureTime("requestBids.makeRequests",(()=>h.Ay.makeBidRequests(M,K,F,z,G,A,_)));(0,r.logInfo)(`Bids Requested for Auction with id: ${F}`,e),_.checkpoint("callBids"),e.length<1?((0,r.logWarn)("No valid bid requests returned for auction"),ce()):x.call({dispatch:ue,context:this},e)},addWinningBid:function(e){oe=oe.concat(e),h.Ay.callBidWonBidder(e.adapterCode||e.bidder,e,t),e.deferBilling||h.Ay.triggerBilling(e)},setBidTargeting:function(e){h.Ay.callSetTargetingBidder(e.adapterCode||e.bidder,e)},getWinningBids:()=>oe,getAuctionStart:()=>K,getAuctionEnd:()=>X,getTimeout:()=>z,getAuctionId:()=>F,getAuctionStatus:()=>Z,getAdUnits:()=>M,getAdUnitCodes:()=>L,getBidRequests:()=>ne,getBidsReceived:()=>re.toArray(),getNoBids:()=>ie,getNonBids:()=>se,getFPD:()=>A,getMetrics:()=>_,end:V.promise,requestsDone:J.promise,getProperties:ae}}const j=(0,l.u2)((0,l.A_)("async",(function(e,t,n){!function(e){const t=d.$W.getConfig("maxBid");return!t||!e.cpm||t>=Number(e.cpm)}(t)?n(b.Tf.PRICE_TOO_HIGH):this.dispatch.call(null,e,t)}),"addBidResponse")),$=(0,l.A_)("sync",(e=>e),"responsesReady"),x=(0,l.A_)("sync",(function(e){this.dispatch.call(this.context,e)}),"addBidderRequests"),N=(0,l.A_)("async",(function(e,t){t&&t()}),"bidsBackCallback");function W(e,t){!function(e){let t;const n=!0===p.u.get(e.bidderCode,"allowZeroCpmBids")?e.cpm>=0:e.cpm>0;e.bidderCode&&(n||e.dealId)&&(t=function(e,t){let{index:n=f.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!t)return{};const r=n.getBidRequest(t);var i={};const s=J(t.mediaType,e);K(i,s,t,r),e&&p.u.getOwn(e,b.iD.ADSERVER_TARGETING)&&(K(i,p.u.ownSettingsFor(e),t,r),t.sendStandardTargeting=p.u.get(e,"sendStandardTargeting"));t.native&&(i=Object.assign({},i,(0,o.Zj)(t)));return i}(e.bidderCode,e));e.adserverTargeting=Object.assign(e.adserverTargeting||{},t)}(t),(0,v.BO)(t.metrics).timeSince("addBidResponse","addBidResponse.total"),e.addBidReceived(t),m.emit(b.qY.BID_RESPONSE,t)}const q=(0,l.A_)("async",(function(e,t,n,r){(0,s.X5)(e,t,n)}),"callPrebidCache");function P(e,t,n){if(e&&n){if(e===g.G_){const e=t?.[g.G_]?.context??"instream";if(n[`${g.G_}-${e}`])return n[`${g.G_}-${e}`]}return n[e]}}const M=function(e){let{index:t=f.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=P(e.mediaType,t.getMediaTypes(e),d.$W.getConfig("mediaTypePriceGranularity"));return"string"==typeof e.mediaType&&n?"string"==typeof n?n:"custom":d.$W.getConfig("priceGranularity")},G=e=>t=>{const n=e||M(t);return n===b.UE.AUTO?t.pbAg:n===b.UE.DENSE?t.pbDg:n===b.UE.LOW?t.pbLg:n===b.UE.MEDIUM?t.pbMg:n===b.UE.HIGH?t.pbHg:n===b.UE.CUSTOM?t.pbCg:void 0},L=()=>e=>e.creativeId?e.creativeId:"",F=()=>e=>e.meta&&e.meta.advertiserDomains&&e.meta.advertiserDomains.length>0?[e.meta.advertiserDomains].flat()[0]:"",z=()=>e=>e.meta&&(e.meta.networkId||e.meta.networkName)?e?.meta?.networkName||e?.meta?.networkId:"",H=()=>e=>{const t=e?.meta?.primaryCatId;return Array.isArray(t)?t[0]||"":t||""};function V(e,t){return{key:e,val:"function"==typeof t?function(e,n){return t(e,n)}:function(e){return e[t]}}}function J(e,t){const n=Object.assign({},p.u.settingsFor(null));if(n[b.iD.ADSERVER_TARGETING]||(n[b.iD.ADSERVER_TARGETING]=[V(b.xS.BIDDER,"bidderCode"),V(b.xS.AD_ID,"adId"),V(b.xS.PRICE_BUCKET,G()),V(b.xS.SIZE,"size"),V(b.xS.DEAL,"dealId"),V(b.xS.SOURCE,"source"),V(b.xS.FORMAT,"mediaType"),V(b.xS.ADOMAIN,F()),V(b.xS.ACAT,H()),V(b.xS.DSP,z()),V(b.xS.CRID,L())]),"video"===e){const e=n[b.iD.ADSERVER_TARGETING].slice();if(n[b.iD.ADSERVER_TARGETING]=e,[b.xS.UUID,b.xS.CACHE_ID].forEach((t=>{void 0===e.find((e=>e.key===t))&&e.push(V(t,"videoCacheKey"))})),d.$W.getConfig("cache.url")&&(!t||!1!==p.u.get(t,"sendStandardTargeting"))){const t=(0,r.parseUrl)(d.$W.getConfig("cache.url"));void 0===e.find((e=>e.key===b.xS.CACHE_HOST))&&e.push(V(b.xS.CACHE_HOST,(function(e){return e?.adserverTargeting?.[b.xS.CACHE_HOST]||t.hostname})))}}return n}function K(e,t,n,i){var o=t[b.iD.ADSERVER_TARGETING];return n.size=n.getSize(),(o||[]).forEach((function(o){var s=o.key,a=o.val;if(e[s]&&(0,r.logWarn)("The key: "+s+" is being overwritten"),(0,r.isFn)(a))try{a=a(n,i)}catch(e){(0,r.logError)("bidmanager","ERROR",e)}(void 0===t.suppressEmptyKeys||!0!==t.suppressEmptyKeys)&&s!==b.xS.DEAL&&s!==b.xS.ACAT&&s!==b.xS.DSP&&s!==b.xS.CRID||!(0,r.isEmptyStr)(a)&&null!=a?e[s]=a:(0,r.logInfo)("suppressing empty key '"+s+"' from adserver targeting")})),e}function Y(e,t){return e[t.adUnitCode]||(e[t.adUnitCode]={bids:[]}),e[t.adUnitCode].bids.push(t),e}},67314:(e,t,n)=>{n.d(t,{n:()=>l});var r=n(91069),i=n(81657);function o(e){Object.assign(this,{getAuction(t){let{auctionId:n}=t;if(null!=n)return e().find((e=>e.getAuctionId()===n))},getAdUnit(t){let{adUnitId:n}=t;if(null!=n)return e().flatMap((e=>e.getAdUnits())).find((e=>e.adUnitId===n))},getMediaTypes(e){let{adUnitId:t,requestId:n}=e;if(null!=n){const e=this.getBidRequest({requestId:n});if(null!=e&&(null==t||e.adUnitId===t))return e.mediaTypes}else if(null!=t){const e=this.getAdUnit({adUnitId:t});if(null!=e)return e.mediaTypes}},getBidderRequest(t){let{requestId:n,bidderRequestId:r}=t;if(null!=n||null!=r){let t=e().flatMap((e=>e.getBidRequests()));return null!=r&&(t=t.filter((e=>e.bidderRequestId===r))),null==n?t[0]:t.find((e=>e.bids&&null!=e.bids.find((e=>e.bidId===n))))}},getBidRequest(t){let{requestId:n}=t;if(null!=n)return e().flatMap((e=>e.getBidRequests())).flatMap((e=>e.bids)).find((e=>e&&e.bidId===n))},getOrtb2(e){return this.getBidderRequest(e)?.ortb2||this.getAuction(e)?.getFPD()?.global?.ortb2}})}var s=n(78969),a=n(16894),d=n(76853),c=n(27863);const l=function(){const e=(0,d.H)({startTime:e=>e.end.then((()=>e.getAuctionEnd())),ttl:e=>null==(0,c.S9)()?null:e.end.then((()=>1e3*Math.max((0,c.S9)(),...e.getBidsReceived().map((e=>e.ttl)))))});(0,c.lc)((()=>e.refresh()));const t={onExpiry:e.onExpiry};function n(t){for(const n of e)if(n.getAuctionId()===t)return n}function l(){return e.toArray().flatMap((e=>e.getBidsReceived()))}return t.addWinningBid=function(e){const t=(0,a.BO)(e.metrics);t.checkpoint("bidWon"),t.timeBetween("auctionEnd","bidWon","adserver.pending"),t.timeBetween("requestBids","bidWon","adserver.e2e");const i=n(e.auctionId);i?i.addWinningBid(e):(0,r.logWarn)("Auction not found when adding winning bid")},Object.entries({getAllWinningBids:{name:"getWinningBids"},getBidsRequested:{name:"getBidRequests"},getNoBids:{},getAdUnits:{},getBidsReceived:{pre:e=>e.getAuctionStatus()===i.UZ},getAdUnitCodes:{post:r.uniques}}).forEach((n=>{let[r,{name:i=r,pre:o,post:s}]=n;const a=null==o?e=>e[i]():e=>o(e)?e[i]():[],d=null==s?e=>e:e=>e.filter(s);t[r]=()=>d(e.toArray().flatMap(a))})),t.getAllBidsForAdUnitCode=function(e){return l().filter((t=>t&&t.adUnitCode===e))},t.createAuction=function(t){const n=(0,i.mX)(t);return function(t){e.add(t)}(n),n},t.findBidByAdId=function(e){return l().find((t=>t.adId===e))},t.getStandardBidderAdServerTargeting=function(){return(0,i.HN)()[s.iD.ADSERVER_TARGETING]},t.setStatusForBids=function(e,r){let i=t.findBidByAdId(e);if(i&&(i.status=r),i&&r===s.tl.BID_TARGETING_SET){const e=n(i.auctionId);e&&e.setBidTargeting(i)}},t.getLastAuctionId=function(){const t=e.toArray();return t.length&&t[t.length-1].getAuctionId()},t.clearAllAuctions=function(){e.clear()},t.index=new o((()=>e.toArray())),t}()},27863:(e,t,n)=>{n.d(t,{S9:()=>l,cT:()=>c,lc:()=>u});var r=n(43272),i=n(91069);const o="minBidCacheTTL";let s=1,a=null;const d=[];function c(e){return e.ttl-(e.hasOwnProperty("ttlBuffer")?e.ttlBuffer:s)}function l(){return a}function u(e){d.push(e)}r.$W.getConfig("ttlBuffer",(e=>{"number"==typeof e.ttlBuffer?s=e.ttlBuffer:(0,i.logError)("Invalid value for ttlBuffer",e.ttlBuffer)})),r.$W.getConfig(o,(e=>{const t=a;a=e?.[o],a="number"==typeof a?a:null,t!==a&&d.forEach((e=>e(a)))}))},12693:(e,t,n)=>{n.d(t,{u:()=>a});var r=n(70433),i=n(91069),o=n(7873),s=n(78969);const a=new class{constructor(e,t){this.getSettings=e,this.defaultScope=t}get(e,t){let n=this.getOwn(e,t);return void 0===n&&(n=this.getOwn(null,t)),n}getOwn(e,t){return e=this.#e(e),(0,r.A)(this.getSettings(),`${e}.${t}`)}getScopes(){return Object.keys(this.getSettings()).filter((e=>e!==this.defaultScope))}settingsFor(e){return(0,i.mergeDeep)({},this.ownSettingsFor(null),this.ownSettingsFor(e))}ownSettingsFor(e){return e=this.#e(e),this.getSettings()[e]||{}}#e(e){return null==e?this.defaultScope:e}}((()=>(0,o.m)().bidderSettings||{}),s.iD.BD_SETTING_STANDARD)},93597:(e,t,n)=>{n.d(t,{O:()=>o});var r=n(91069);function i(e){let{src:t="client",bidder:n="",bidId:i,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,r.getUniqueIdentifierStr)(),requestId:i,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 i(e,t)}},43272:(e,t,n)=>{n.d(t,{$W:()=>p,Ov:()=>c});var r=n(86833),i=n(91069),o=n(70433),s=n(78969);const a="TRUE"===(0,i.getParameterByName)(s.M).toUpperCase(),d={},c="random",l={};l[c]=!0,l.fixed=!0;const u=c,g={LOW:"low",MEDIUM:"medium",HIGH:"high",AUTO:"auto",DENSE:"dense",CUSTOM:"custom"};function f(e){const t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1]?{priceGranularity:g.MEDIUM,customPriceBucket:{},mediaTypePriceGranularity:{},bidderSequence:u,auctionOptions:{}}:{};function n(e){return t[e]}function o(n,r){t.hasOwnProperty(n)||Object.defineProperty(e,n,{enumerable:!0}),t[n]=r}const s={publisherDomain:{set(e){null!=e&&(0,i.logWarn)("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:g.MEDIUM):(0,i.isPlainObject)(e)&&(o("customPriceBucket",e),o("priceGranularity",g.CUSTOM),(0,i.logMessage)("Using custom price granularity")))}},customPriceBucket:{},mediaTypePriceGranularity:{set(e){null!=e&&o("mediaTypePriceGranularity",Object.keys(e).reduce(((t,r)=>(d(e[r])?"string"==typeof e?t[r]=a(e[r])?e[r]:n("priceGranularity"):(0,i.isPlainObject)(e)&&(t[r]=e[r],(0,i.logMessage)(`Using custom price granularity for ${r}`)):(0,i.logWarn)(`Invalid price granularity for media type: ${r}`),t)),{}))}},bidderSequence:{set(e){l[e]?o("bidderSequence",e):(0,i.logWarn)(`Invalid order: ${e}. Bidder Sequence was not set.`)}},auctionOptions:{set(e){(function(e){if(!(0,i.isPlainObject)(e))return(0,i.logWarn)("Auction Options must be an object"),!1;for(let t of Object.keys(e)){if("secondaryBidders"!==t&&"suppressStaleRender"!==t&&"suppressExpiredRender"!==t)return(0,i.logWarn)(`Auction Options given an incorrect param: ${t}`),!1;if("secondaryBidders"===t){if(!(0,i.isArray)(e[t]))return(0,i.logWarn)(`Auction Options ${t} must be of type Array`),!1;if(!e[t].every(i.isStr))return(0,i.logWarn)(`Auction Options ${t} must be only string`),!1}else if(("suppressStaleRender"===t||"suppressExpiredRender"===t)&&!(0,i.isBoolean)(e[t]))return(0,i.logWarn)(`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[r,i]=e;return[r,Object.assign({get:n.bind(null,r),set:o.bind(null,r),enumerable:t.hasOwnProperty(r),configurable:!t.hasOwnProperty(r)},i)]})))),e;function a(e){return Object.keys(g).find((t=>e===g[t]))}function d(e){if(!e)return(0,i.logError)("Prebid Error: no value passed to `setPriceGranularity()`"),!1;if("string"==typeof e)a(e)||(0,i.logWarn)("Prebid Warning: setPriceGranularity was called with invalid setting, using `medium` as default.");else if((0,i.isPlainObject)(e)&&!(0,r.q)(e))return(0,i.logError)("Invalid custom price value passed to `setPriceGranularity()`"),!1;return!0}}const p=function(){let e,t,n,r=[],s=null;function c(){e={};let r=f({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]!==r[n]&&(e[n]=r[n]||{}),e)),{})),t=r,n={}}function l(){if(s&&n&&(0,i.isPlainObject)(n[s])){const e=n[s],r=new Set([...Object.keys(t),...Object.keys(e)]),o={};for(const n of r){const r=t[n],s=e[n];o[n]=void 0===s?r:void 0===r?s:(0,i.isPlainObject)(s)?(0,i.mergeDeep)({},r,s):s}return o}return{...t}}const[u,g]=[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,m]=[g,u].map((e=>function(){let t=e(...arguments);return t&&"object"==typeof t&&(t=(0,i.deepClone)(t)),t}));function h(n){if(!(0,i.isPlainObject)(n))return void(0,i.logError)("setConfig options must be an object");let r=Object.keys(n),o={};r.forEach((r=>{let s=n[r];(0,i.isPlainObject)(e[r])&&(0,i.isPlainObject)(s)&&(s=Object.assign({},e[r],s));try{o[r]=t[r]=s}catch(e){(0,i.logWarn)(`Cannot set config for property ${r} : `,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,i.logError)("listener must be a function");const s={topic:e,callback:o};return r.push(s),n.init&&o("*"===e?g():{[e]:g(e)}),function(){r.splice(r.indexOf(s),1)}}function y(e){const t=Object.keys(e);r.filter((e=>t.includes(e.topic))).forEach((t=>{t.callback({[t.topic]:e[t.topic]})})),r.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,i.isPlainObject)(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,i.isPlainObject)(e.config))throw"setBidderConfig bidder options must contain a config object"}(e),e.bidders.forEach((r=>{n[r]||(n[r]=f({},!1)),Object.keys(e.config).forEach((o=>{let s=e.config[o];const a=n[r][o];if((0,i.isPlainObject)(s)&&(null==a||(0,i.isPlainObject)(a))){const e=t?i.mergeDeep:Object.assign;n[r][o]=e({},a||{},s)}else n[r][o]=s}))}))}catch(e){(0,i.logError)(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:g,getAnyConfig:u,readConfig:p,readAnyConfig:m,setConfig:h,mergeConfig:function(e){if(!(0,i.isPlainObject)(e))return void(0,i.logError)("mergeConfig input must be an object");const t=(0,i.mergeDeep)(l(),e);return h({...t}),t},setDefaults:function(n){(0,i.isPlainObject)(e)?(Object.assign(e,n),Object.assign(t,n)):(0,i.logError)("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,r=new Array(n),o=0;o{n.d(t,{B1:()=>s,SL:()=>p,ad:()=>l,et:()=>u,mW:()=>d,o2:()=>g,t6:()=>c});var r=n(91069),i=n(25555),o=n(43272);const s=Object.freeze({});class a{#t;#n;#r;#i;#o=!0;#s;generatedTime;hashFields;constructor(){this.reset()}#a(e){this.#i=!0,this.#n=e,this.#r.resolve(e)}reset(){this.#r=(0,i.v6)(),this.#t=!1,this.#n=null,this.#i=!1,this.generatedTime=null}enable(){this.#t=!0}get enabled(){return this.#t}get ready(){return this.#i}get promise(){return this.#i?i.U9.resolve(this.#n):(this.#t||this.#a(null),this.#r.promise)}setConsentData(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(0,r.timestamp)();this.generatedTime=t,this.#o=!0,this.#a(e)}getConsentData(){return this.#n}get hash(){return this.#o&&(this.#s=(0,r.cyrb53Hash)(JSON.stringify(this.#n&&this.hashFields?this.hashFields.map((e=>this.#n[e])):this.#n)),this.#o=!1),this.#s}}const 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,r.isStr)(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 i.U9.resolve(e())},get hash(){return e()?"1":"0"}}})(),g=function(){const e={},t={},n={};return{register(r,i,o){o&&((e[i]=e[i]||{})[r]=o,t.hasOwnProperty(i)?t[i]!==o&&(t[i]=n):t[i]=o)},get(r){const i={modules:e[r]||{}};return t.hasOwnProperty(r)&&t[r]!==n&&(i.gvlid=t[r]),i}}}(),f={gdpr:d,usp:c,gpp:l,coppa:u};const p=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:f;return e=Object.entries(e),Object.assign({get promise(){return i.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,r.cyrb53Hash)(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,r]=e;return[t,r[n]()]})))})];var n}))))}()},78969:(e,t,n)=>{n.d(t,{IY:()=>A,M:()=>i,RW:()=>f,Tf:()=>m,UE:()=>c,XQ:()=>o,Zh:()=>u,_B:()=>v,as:()=>a,cA:()=>d,h0:()=>h,iD:()=>r,jO:()=>b,nl:()=>E,oA:()=>y,qY:()=>s,tl:()=>p,x5:()=>g,xS:()=>l});const r={PL_CODE:"code",PL_SIZE:"sizes",PL_BIDS:"bids",BD_BIDDER:"bidder",BD_ID:"paramsd",BD_PL_ID:"placementId",ADSERVER_TARGETING:"adserverTargeting",BD_SETTING_STANDARD:"standard"},i="pbjs_debug",o={GOOD:1},s={AUCTION_INIT:"auctionInit",AUCTION_TIMEOUT:"auctionTimeout",AUCTION_END:"auctionEnd",BID_ADJUSTMENT:"bidAdjustment",BID_TIMEOUT:"bidTimeout",BID_REQUESTED:"bidRequested",BID_RESPONSE:"bidResponse",BID_REJECTED:"bidRejected",NO_BID:"noBid",SEAT_NON_BID:"seatNonBid",BID_WON:"bidWon",BIDDER_DONE:"bidderDone",BIDDER_ERROR:"bidderError",SET_TARGETING:"setTargeting",BEFORE_REQUEST_BIDS:"beforeRequestBids",BEFORE_BIDDER_HTTP:"beforeBidderHttp",REQUEST_BIDS:"requestBids",ADD_AD_UNITS:"addAdUnits",AD_RENDER_FAILED:"adRenderFailed",AD_RENDER_SUCCEEDED:"adRenderSucceeded",TCF2_ENFORCEMENT:"tcf2Enforcement",AUCTION_DEBUG:"auctionDebug",BID_VIEWABLE:"bidViewable",STALE_RENDER:"staleRender",EXPIRED_RENDER:"expiredRender",BILLABLE_EVENT:"billableEvent",BID_ACCEPTED:"bidAccepted",RUN_PAAPI_AUCTION:"paapiRunAuction",PBS_ANALYTICS:"pbsAnalytics",PAAPI_BID:"paapiBid",PAAPI_NO_BID:"paapiNoBid",PAAPI_ERROR:"paapiError",BEFORE_PBS_HTTP:"beforePBSHttp",BROWSI_INIT:"browsiInit",BROWSI_DATA:"browsiData"},a={PREVENT_WRITING_ON_MAIN_DOCUMENT:"preventWritingOnMainDocument",NO_AD:"noAd",EXCEPTION:"exception",CANNOT_FIND_AD:"cannotFindAd",MISSING_DOC_OR_ADID:"missingDocOrAdid"},d={bidWon:"adUnitCode"},c={LOW:"low",MEDIUM:"medium",HIGH:"high",AUTO:"auto",DENSE:"dense",CUSTOM:"custom"},l={BIDDER:"hb_bidder",AD_ID:"hb_adid",PRICE_BUCKET:"hb_pb",SIZE:"hb_size",DEAL:"hb_deal",SOURCE:"hb_source",FORMAT:"hb_format",UUID:"hb_uuid",CACHE_ID:"hb_cache_id",CACHE_HOST:"hb_cache_host",ADOMAIN:"hb_adomain",ACAT:"hb_acat",CRID:"hb_crid",DSP:"hb_dsp"},u={BIDDER:"hb_bidder",AD_ID:"hb_adid",PRICE_BUCKET:"hb_pb",SIZE:"hb_size",DEAL:"hb_deal",FORMAT:"hb_format",UUID:"hb_uuid",CACHE_HOST:"hb_cache_host"},g={title:"hb_native_title",body:"hb_native_body",body2:"hb_native_body2",privacyLink:"hb_native_privacy",privacyIcon:"hb_native_privicon",sponsoredBy:"hb_native_brand",image:"hb_native_image",icon:"hb_native_icon",clickUrl:"hb_native_linkurl",displayUrl:"hb_native_displayurl",cta:"hb_native_cta",rating:"hb_native_rating",address:"hb_native_address",downloads:"hb_native_downloads",likes:"hb_native_likes",phone:"hb_native_phone",price:"hb_native_price",salePrice:"hb_native_saleprice",rendererUrl:"hb_renderer_url",adTemplate:"hb_adTemplate"},f={SRC:"s2s",DEFAULT_ENDPOINT:"https://prebid.adnxs.com/pbs/v1/openrtb2/auction",SYNCED_BIDDERS_KEY:"pbjsSyncs"},p={BID_TARGETING_SET:"targetingSet",RENDERED:"rendered",BID_REJECTED:"bidRejected"},m={INVALID:"Bid has missing or invalid properties",INVALID_REQUEST_ID:"Invalid request ID",BIDDER_DISALLOWED:"Bidder code is not allowed by allowedAlternateBidderCodes / allowUnknownBidderCodes",FLOOR_NOT_MET:"Bid does not meet price floor",CANNOT_CONVERT_CURRENCY:"Unable to convert currency",DSA_REQUIRED:"Bid does not provide required DSA transparency info",DSA_MISMATCH:"Bid indicates inappropriate DSA rendering method",PRICE_TOO_HIGH:"Bid price exceeds maximum value"},h={body:"desc",body2:"desc2",sponsoredBy:"sponsored",cta:"ctatext",rating:"rating",address:"address",downloads:"downloads",likes:"likes",phone:"phone",price:"price",salePrice:"saleprice",displayUrl:"displayurl"},b={sponsored:1,desc:2,rating:3,likes:4,downloads:5,price:6,saleprice:7,phone:8,address:9,desc2:10,displayurl:11,ctatext:12},y={ICON:1,MAIN:3},v=["privacyIcon","clickUrl","sendTargetingKeys","adTemplate","rendererUrl","type"],E={REQUEST:"Prebid Request",RESPONSE:"Prebid Response",NATIVE:"Prebid Native",EVENT:"Prebid Event"},A="__pb_locator__"},86833:(e,t,n)=>{n.d(t,{j:()=>u,q:()=>f});var r=n(91069),i=n(43272);const o=2,s={buckets:[{max:5,increment:.5}]},a={buckets:[{max:20,increment:.1}]},d={buckets:[{max:20,increment:.01}]},c={buckets:[{max:3,increment:.01},{max:8,increment:.05},{max:20,increment:.5}]},l={buckets:[{max:5,increment:.05},{max:10,increment:.1},{max:20,increment:.5}]};function u(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,r=parseFloat(e);return isNaN(r)&&(r=""),{low:""===r?"":g(e,s,n),med:""===r?"":g(e,a,n),high:""===r?"":g(e,d,n),auto:""===r?"":g(e,l,n),dense:""===r?"":g(e,c,n),custom:""===r?"":g(e,t,n)}}function g(e,t,n){let s="";if(!f(t))return s;const a=t.buckets.reduce(((e,t)=>e.max>t.max?e:t),{max:0});let d=0,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=i.$W.getConfig("cpmRoundingFunction");"function"==typeof l&&(c=l);let u,g,f=Math.pow(10,s+2),p=(e*f-d*f)/(a*f);try{u=c(p)*a+d}catch(e){g=!0}(g||"number"!=typeof u)&&((0,r.logWarn)("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 f(e){if((0,r.isEmpty)(e)||!e.buckets||!Array.isArray(e.buckets))return!1;let t=!0;return e.buckets.forEach((e=>{e.max&&e.increment||(t=!1)})),t}},46031:(e,t,n)=>{n.d(t,{HH:()=>c,kj:()=>d,xh:()=>a});var r=n(25555),i=n(91069),o=n(34595),s=n(16833);const a=3,d=(0,s.A_)("sync",(function(e){return o.G})),c=function(){const e={};return function(t){const n=d(t);return e.hasOwnProperty(n)||(e[n]=new r.U9((e=>{const t=(0,i.createInvisibleIframe)();t.srcdoc=`