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 e,t={5706:(e,t,n)=>{n.d(t,{Pd:()=>l,Th:()=>d,_U:()=>u});var r=n(5730),i=n(4358),o=n(265),a=n(4614);const s=(0,n(8640).R)(),c="outstream";function d(e){const{url:t,config:n,id:o,callback:a,loaded:s,adUnitCode:d,renderNow:l}=e;this.url=t,this.config=n,this.handlers={},this.id=o,this.renderNow=l,this.loaded=s,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=a||(()=>{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")};f(d)?((0,i.logWarn)("External Js not loaded by Renderer since renderer url and callback is already defined on adUnit ".concat(d)),n()):l?n():(this.cmd.unshift(n),(0,r.B)(t,c,this.callback,this.documentContext))}.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)}function f(e){const t=s.adUnits,n=(0,a.sE)(t,(t=>t.code===e));if(!n)return!1;const r=(0,o.Z)(n,"renderer"),i=!!(r&&r.url&&r.render),c=(0,o.Z)(n,"mediaTypes.video.renderer"),d=!!(c&&c.url&&c.render);return!!(i&&!0!==r.backupOnly||d&&!0!==c.backupOnly)}d.install=function(e){let{url:t,config:n,id:r,callback:i,loaded:o,adUnitCode:a,renderNow:s}=e;return new d({url:t,config:n,id:r,callback:i,loaded:o,adUnitCode:a,renderNow:s})},d.prototype.getConfig=function(){return this.config},d.prototype.setRender=function(e){this._render=e},d.prototype.setEventHandlers=function(e){this.handlers=e},d.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 ".concat(t," type ").concat(n))},d.prototype.process=function(){for(;this.cmd.length>0;)try{this.cmd.shift().call()}catch(e){(0,i.logError)("Error processing Renderer command: ",e)}}},4947:(e,t,n)=>{n.d(t,{EL:()=>o,Jt:()=>u,K$:()=>i,S1:()=>r,UE:()=>a,e:()=>c,g0:()=>l,oK:()=>d,x$:()=>s});const r="accessDevice",i="syncUser",o="enrichEids",a="fetchBids",s="reportAnalytics",c="transmitEids",d="transmitUfpd",l="transmitPreciseGeo",u="transmitTid"},286:(e,t,n)=>{n.d(t,{T:()=>i});var r=n(8177);const i=(0,n(6310).Oj)((e=>r.ZP.resolveAlias(e)))},9633:(e,t,n)=>{n.d(t,{UL:()=>i,_U:()=>a,wu:()=>r,y2:()=>o});const r="prebid",i="bidder",o="userId",a="analytics"},6310:(e,t,n)=>{n.d(t,{$k:()=>a,Hw:()=>g,IV:()=>f,JR:()=>o,Ki:()=>c,Oj:()=>p,Qf:()=>l,bL:()=>d,bp:()=>s,cx:()=>u});var r=n(9633),i=n(2797);const o="component",a=o+"Type",s=o+"Name",c="adapterCode",d="storageType",l="configName",u="syncType",f="syncUrl",g="_config";function p(e){return function(t,n,i){const d={[a]:t,[s]:n,[o]:"".concat(t,".").concat(n)};return t===r.UL&&(d[c]=e(n)),h(Object.assign(d,i))}}const h=(0,i.z3)("sync",(e=>e))},571:(e,t,n)=>{n.d(t,{oB:()=>o,xD:()=>a});var r=n(4358),i=n(6310);const[o,a]=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 a;try{a=r(o)}catch(r){e.logError("Exception in rule ".concat(n," for '").concat(t,"'"),r),a={allow:!1,reason:r}}return a&&Object.assign({activity:t,name:n,component:o[i.JR]},a)}const a={},s=1e3;function c(t){let{activity:n,name:r,allow:i,reason:o,component:c}=t;const d="".concat(r," ").concat(i?"allowed":"denied"," '").concat(n,"' for '").concat(c,"'").concat(o?":":""),l=a.hasOwnProperty(d);if(l&&clearTimeout(a[d]),a[d]=setTimeout((()=>delete a[d]),s),!l){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),a=o.findIndex((e=>{let[t]=e;return i=0&&o.splice(e,1)}},function(e,t){let r,i;for(const[a,s,c]of n(e)){if(r!==a&&i)break;r=a;const n=o(e,s,c,t);if(n){if(!n.allow)return!1;i=n}}return i&&c(i),!0}]}()},875:(e,t,n)=>{n.d(t,{f:()=>a});var r=n(265);let i={};function o(e,t,n){let r=function(e,t){let n=i[e]=i[e]||{bidders:{}};return t?n.bidders[t]=n.bidders[t]||{}:n}(e,n);return r[t]=(r[t]||0)+1,r[t]}let a={incrementRequestsCounter:function(e){return o(e,"requestsCounter")},incrementBidderRequestsCounter:function(e,t){return o(e,"requestsCounter",t)},incrementBidderWinsCounter:function(e,t){return o(e,"winsCounter",t)},getRequestsCounter:function(e){return(0,r.Z)(i,"".concat(e,".requestsCounter"))||0},getBidderRequestsCounter:function(e,t){return(0,r.Z)(i,"".concat(e,".bidders.").concat(t,".requestsCounter"))||0},getBidderWinsCounter:function(e,t){return(0,r.Z)(i,"".concat(e,".bidders.").concat(t,".winsCounter"))||0}}},8177:(e,t,n)=>{n.d(t,{ZP:()=>$,uV:()=>F});var r=n(4358),i=n(265),o=n(59),a=n(5339),s=n(8928),c=n(3193),d=n(2797),l=n(4614),u=n(875),f=n(5102),g=n(1429),p=n(2021),h=n(5644),m=n(9128),b=n(8653),v=n(9633),y=n(571),E=n(4947),T=n(6310);const A=["data","ext.data","yob","gender","keywords","kwarray","id","buyeruid","customdata"].map((e=>"user.".concat(e))),I=["user.eids","user.ext.eids"],S=["user.geo.lat","user.geo.lon","device.geo.lat","device.geo.lon"];function w(e){return Object.assign({get(){},run(e,t,n,r,i){const o=n&&n[r];if(function(e){return null!=e&&("object"!=typeof e||Object.keys(e).length>0)}(o)&&i()){const e=this.get(o);void 0===e?delete n[r]:n[r]=e}}},e)}function C(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,a=new Array(o>2?o-2:0),s=2;s{if(!1!==t[e.name])for(const[o,a]of e.paths){const s=null==o?n:(0,i.Z)(n,o);if(r.push(e.run(n,o,s,a,c.bind(null,e))),!1===t[e.name])return}})),r.filter((e=>null!=e))}}function B(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r1&&void 0!==arguments[1]?arguments[1]:y.xD;return function(n){return!t(e,n)}}function R(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:y.xD;return[{name:E.e,paths:["userId","userIdAsEids"],applies:O(E.e,e)},{name:E.Jt,paths:["ortb2Imp.ext.tid"],applies:O(E.Jt,e)}].map(w)}function _(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:y.xD;return[{name:E.oK,paths:A,applies:O(E.oK,e)},{name:E.e,paths:I,applies:O(E.e,e)},{name:E.g0,paths:S,applies:O(E.g0,e),get:e=>Math.round(100*(e+Number.EPSILON))/100},{name:E.Jt,paths:["source.tid"],applies:O(E.Jt,e)}].map(w)}const k=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:y.xD;const t=C(_(e)),n=C(R(e));return function(e){const r={};return{ortb2:n=>(t(r,n,e),n),bidRequest:t=>(n(r,t,e),t)}}}();(0,y.oB)(E.Jt,"enableTIDs config",(()=>{if(!c.vc.getConfig("enableTIDs"))return{allow:!1,reason:"TIDs are disabled"}}));const U="pbsBidAdapter",N={CLIENT:"client",SERVER:"server"},D={isAllowed:y.xD,redact:k};let j={},q=j.bidderRegistry={},P=j.aliasRegistry={},x=[];c.vc.getConfig("s2sConfig",(e=>{e&&e.s2sConfig&&(x=(0,r.isArray)(e.s2sConfig)?e.s2sConfig:[e.s2sConfig])}));var M={};const W=(0,T.Oj)((e=>j.resolveAlias(e)));function G(e){return W(v.wu,U,{[T.Qf]:e.configName})}const L=(0,d.z3)("sync",(function(e){let{bidderCode:t,auctionId:n,bidderRequestId:o,adUnits:a,src:s,metrics:c}=e;return a.reduce(((e,a)=>{const d=a.bids.filter((e=>e.bidder===t));return null==t&&0===d.length&&null!=a.s2sBid&&d.push({bidder:null}),e.push(d.reduce(((e,t)=>{const d=null==(t=Object.assign({},t,{ortb2Imp:(0,r.mergeDeep)({},a.ortb2Imp,t.ortb2Imp)},(0,r.getDefinedParams)(a,["nativeParams","nativeOrtbRequest","mediaType","renderer"]))).mediaTypes?a.mediaTypes:t.mediaTypes;return(0,r.isValidMediaTypes)(d)?t=Object.assign({},t,{mediaTypes:d}):(0,r.logError)("mediaTypes is not correctly configured for adunit ".concat(a.code)),e.push(Object.assign({},t,{adUnitCode:a.code,transactionId:a.transactionId,sizes:(0,i.Z)(d,"banner.sizes")||(0,i.Z)(d,"video.playerSize")||[],bidId:t.bid_id||(0,r.getUniqueIdentifierStr)(),bidderRequestId:o,auctionId:n,src:s,metrics:c,bidRequestsCount:u.f.getRequestsCounter(a.code),bidderRequestsCount:u.f.getBidderRequestsCounter(a.code,t.bidder),bidderWinsCount:u.f.getBidderWinsCounter(a.code,t.bidder)})),e}),[])),e}),[]).reduce(r.flatten,[]).filter((e=>""!==e))}),"getBids");const Z=(0,d.z3)("sync",(function(e,t){let{getS2SBidders:n=F}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null==t)return e;{const r=n(t);return e.filter((e=>r.has(e.bidder)))}}),"filterBidsForAdUnit");function K(e,t){let n=(0,r.deepClone)(e),i=!1;return n.forEach((e=>{const n=e.bids.filter((e=>{var n;return e.module===U&&(null===(n=e.params)||void 0===n?void 0:n.configName)===t.configName}));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=Z(e.bids,t).map((e=>(e.bid_id=(0,r.getUniqueIdentifierStr)(),e)))})),n=n.filter((e=>0!==e.bids.length||null!=e.s2sBid)),{adUnits:n,hasModuleBids:i}}function V(e){let t=(0,r.deepClone)(e);return t.forEach((e=>{e.bids=Z(e.bids,null)})),t=t.filter((e=>0!==e.bids.length)),t}const z=(0,d.z3)("sync",((e,t)=>e),"setupAdUnitMediaTypes");function F(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 H=(0,d.z3)("sync",(function(e,t){let{getS2SBidders:n=F}=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)?N.SERVER:N.CLIENT].push(t),e)),{[N.CLIENT]:[],[N.SERVER]:[]})}),"partitionBidders");function Y(e,t){const n=q[e],r=(null==n?void 0:n.getSpec)&&n.getSpec();if(r&&r[t]&&"function"==typeof r[t])return[r,r[t]]}function J(e,t,n,i){try{(0,r.logInfo)("Invoking ".concat(e,".").concat(t));for(var o=arguments.length,a=new Array(o>4?o-4:0),s=4;s5&&void 0!==arguments[5]?arguments[5]:{},d=arguments.length>6?arguments[6]:void 0;d=(0,m.Bf)(d),p.emit(h.EVENTS.BEFORE_REQUEST_BIDS,e),(0,o.Fb)(e),e.forEach((e=>{(0,r.isPlainObject)(e.mediaTypes)||(e.mediaTypes={}),e.bids=e.bids.filter((e=>!e.bidder||D.isAllowed(E.UE,W(v.UL,e.bidder))))})),e=z(e,a);let{[N.CLIENT]:u,[N.SERVER]:b}=H(e,x);c.vc.getConfig("bidderSequence")===c.FD&&(u=(0,r.shuffle)(u));const y=(0,f.nH)();let T=[];const A=s.global||{},I=s.bidder||{};function S(e,t){const i=D.redact(null!=t?t:W(v.UL,e.bidderCode)),o=Object.freeze(i.ortb2((0,r.mergeDeep)({source:{tid:n}},A,I[e.bidderCode])));return e.ortb2=o,e.bids=e.bids.map((e=>(e.ortb2=o,i.bidRequest(e)))),e}x.forEach((i=>{const o=G(i);if(i&&i.enabled&&D.isAllowed(E.UE,o)){let{adUnits:a,hasModuleBids:s}=K(e,i),c=(0,r.generateUUID)();(0===b.length&&s?[null]:b).forEach((e=>{const s=(0,r.getUniqueIdentifierStr)(),l=d.fork(),u=S({bidderCode:e,auctionId:n,bidderRequestId:s,uniquePbsTid:c,bids:L({bidderCode:e,auctionId:n,bidderRequestId:s,adUnits:(0,r.deepClone)(a),src:h.S2S.SRC,metrics:l}),auctionStart:t,timeout:i.timeout,src:h.S2S.SRC,refererInfo:y,metrics:l},o);0!==u.bids.length&&T.push(u)})),a.forEach((e=>{let t=e.bids.filter((e=>(0,l.sE)(T,(t=>(0,l.sE)(t.bids,(t=>t.bidId===e.bid_id))))));e.bids=t})),T.forEach((e=>{void 0===e.adUnitsS2SCopy&&(e.adUnitsS2SCopy=a.filter((e=>e.bids.length>0||null!=e.s2sBid)))}))}}));let w=V(e);return u.forEach((e=>{const o=(0,r.getUniqueIdentifierStr)(),s=d.fork(),c=S({bidderCode:e,auctionId:n,bidderRequestId:o,bids:L({bidderCode:e,auctionId:n,bidderRequestId:o,adUnits:(0,r.deepClone)(w),labels:a,src:"client",metrics:s}),auctionStart:t,timeout:i,refererInfo:y,metrics:s}),l=q[e];l||(0,r.logError)("Trying to make a request for bidder that does not exist: ".concat(e)),l&&c.bids&&0!==c.bids.length&&T.push(c)})),T.forEach((e=>{g.rp.getConsentData()&&(e.gdprConsent=g.rp.getConsentData()),g.nX.getConsentData()&&(e.uspConsent=g.nX.getConsentData()),g.TJ.getConsentData()&&(e.gppConsent=g.TJ.getConsentData())})),T}),"makeBidRequests"),j.callBids=function(e,t,n,i,o,a,d){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,f]=t.reduce(((e,t)=>(e[Number(void 0!==t.src&&t.src===h.S2S.SRC)].push(t),e)),[[],[]]);var g=[];f.forEach((e=>{for(var t=-1,n=0;n{if(e&&g[m]&&F(e).has(g[m].bidderCode)){const t=(0,s.OI)(a,o?{request:o.request.bind(null,"s2s"),done:o.done}:void 0);let c=e.bidders;const u=q[e.adapter];let b=g[m].uniquePbsTid,v=g[m].adUnitsS2SCopy,y=f.filter((e=>e.uniquePbsTid===b));if(u){let o={ad_units:v,s2sConfig:e,ortb2Fragments:l};if(o.ad_units.length){let e=y.map((e=>(e.start=(0,r.timestamp)(),function(){d(e.bidderRequestId),i.apply(e,arguments)})));const a=(0,r.getBidderCodes)(o.ad_units).filter((e=>c.includes(e)));(0,r.logMessage)("CALLING S2S HEADER BIDDERS ====".concat(a.length>0?a.join(", "):'No bidder specified, using "ortb2Imp" definition(s) only')),y.forEach((e=>{p.emit(h.EVENTS.BID_REQUESTED,{...e,tid:e.auctionId})})),u.callBids(o,f,n,(()=>e.forEach((e=>e()))),t)}}else(0,r.logError)("missing "+e.adapter);m++}})),u.forEach((e=>{e.start=(0,r.timestamp)();const t=q[e.bidderCode];c.vc.runWithBidder(e.bidderCode,(()=>{p.emit(h.EVENTS.BID_REQUESTED,e)}));let l=(0,s.OI)(a,o?{request:o.request.bind(null,e.bidderCode),done:o.done}:void 0);const u=i.bind(e);try{c.vc.runWithBidder(e.bidderCode,t.callBids.bind(t,e,n,u,l,(()=>d(e.bidderRequestId)),c.vc.callbackWithBidder(e.bidderCode)))}catch(t){(0,r.logError)("".concat(e.bidderCode," Bid Adapter emitted an uncaught error when parsing their bidRequest"),{e:t,bidRequest:e}),u()}}))},j.videoAdapters=[],j.registerBidAdapter=function(e,t){let{supportedMediaTypes:n=[]}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};var i;e&&t?"function"==typeof e.callBids?(q[t]=e,g.qh.register(v.UL,t,null===(i=e.getSpec)||void 0===i?void 0:i.call(e).gvlid),(0,l.q9)(n,"video")&&j.videoAdapters.push(t),(0,l.q9)(n,"native")&&o.Sg.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")},j.aliasBidAdapter=function(e,t,n){if(void 0===q[t]){let i=q[e];if(void 0===i){const n=[];x.forEach((r=>{if(r.bidders&&r.bidders.length){const i=r&&r.bidders;r&&(0,l.q9)(i,t)?P[t]=e:n.push(e)}})),n.forEach((e=>{(0,r.logError)('bidderCode "'+e+'" is not an existing bidder.',"adapterManager.aliasBidAdapter")}))}else try{let s,c=function(e){let t=[];return(0,l.q9)(j.videoAdapters,e)&&t.push("video"),(0,l.q9)(o.Sg,e)&&t.push("native"),t}(e);if(i.constructor.prototype!=Object.prototype)s=new i.constructor,s.setBidderCode(t);else{let o=i.getSpec(),c=n&&n.gvlid;null!=o.gvlid&&null==c&&(0,r.logWarn)("Alias '".concat(t,"' will NOT re-use the GVL ID of the original adapter ('").concat(o.code,"', gvlid: ").concat(o.gvlid,"). Functionality that requires TCF consent may not work as expected."));let d=n&&n.skipPbsAliasing;s=(0,a.PZ)(Object.assign({},o,{code:t,gvlid:c,skipPbsAliasing:d})),P[t]=e}j.registerBidAdapter(s,t,{supportedMediaTypes:c})}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.')},j.resolveAlias=function(e){let t,n=e;for(;P[n]&&(!t||!t.has(n));)n=P[n],(t=t||new Set).add(n);return n},j.registerAnalyticsAdapter=function(e){let{adapter:t,code:n,gvlid:i}=e;t&&n?"function"==typeof t.enableAnalytics?(t.code=n,M[n]={adapter:t,gvlid:i},g.qh.register(v._U,n,i)):(0,r.logError)('Prebid Error: Analytics adaptor error for analytics "'.concat(n,'"\n analytics adapter must implement an enableAnalytics() function')):(0,r.logError)("Prebid Error: analyticsAdapter or analyticsCode not specified")},j.enableAnalytics=function(e){(0,r.isArray)(e)||(e=[e]),e.forEach((e=>{const t=M[e.provider];t&&t.adapter?D.isAllowed(E.x$,W(v._U,e.provider,{[T.Hw]:e}))&&t.adapter.enableAnalytics(e):(0,r.logError)("Prebid Error: no analytics adapter found in registry for '".concat(e.provider,"'."))}))},j.getBidAdapter=function(e){return q[e]},j.getAnalyticsAdapter=function(e){return M[e]},j.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=>{Q(e,"onTimeout",t[e])}))},j.callBidWonBidder=function(e,t,n){t.params=(0,r.getUserConfiguredParams)(n,t.adUnitCode,t.bidder),u.f.incrementBidderWinsCounter(t.adUnitCode,t.bidder),Q(e,"onBidWon",t)},j.callBidBillableBidder=function(e){Q(e.bidder,"onBidBillable",e)},j.callSetTargetingBidder=function(e,t){Q(e,"onSetTargeting",t)},j.callBidViewableBidder=function(e,t){Q(e,"onBidViewable",t)},j.callBidderError=function(e,t,n){Q(e,"onBidderError",{error:t,bidderRequest:n})},j.callDataDeletionRequest=(0,d.z3)("sync",(function(){for(var e=arguments.length,t=new Array(e),n=0;n!P.hasOwnProperty(e))).forEach((e=>{const n=Y(e,i);if(null!=n){const r=b.K.getBidsRequested().filter((t=>X(t.bidderCode)===e));J(e,i,...n,r,...t)}})),Object.entries(M).forEach((e=>{var n;let[o,a]=e;const s=null==a||null===(n=a.adapter)||void 0===n?void 0:n[i];if("function"==typeof s)try{s.apply(a.adapter,t)}catch(e){(0,r.logError)("error calling ".concat(i," of ").concat(o),e)}}))}));const $=j},5339:(e,t,n)=>{function r(e){var t=e;return{callBids:function(){},setBidderCode:function(e){t=e},getBidderCode:function(){return t}}}n.d(t,{PZ:()=>w,dX:()=>S});var i=n(8177),o=n(3193),a=n(9626),s=n(1974),c=n(59),d=n(154),l=n(5644),u=n(2021),f=n(4614),g=n(4358),p=n(2797),h=n(8653),m=n(5975),b=n(9128),v=n(571),y=n(286),E=n(9633),T=n(4947);const A=["cpm","ttl","creativeId","netRevenue","currency"],I=["auctionId","transactionId"];function S(e){const t=Array.isArray(e.supportedMediaTypes)?{supportedMediaTypes:e.supportedMediaTypes}:void 0;function n(e){const n=w(e);i.ZP.registerBidAdapter(n,e.code,t)}n(e),Array.isArray(e.aliases)&&e.aliases.forEach((t=>{let r,o,a=t;(0,g.isPlainObject)(t)&&(a=t.code,r=t.gvlid,o=t.skipPbsAliasing),i.ZP.aliasRegistry[a]=e.code,n(Object.assign({},e,{code:a,gvlid:r,skipPbsAliasing:o}))}))}function w(e){return Object.assign(new r(e.code),{getSpec:function(){return Object.isFrozen(e)?Object.assign({},e):Object.freeze(Object.assign({},e))},registerSyncs:t,callBids:function(n,r,s,p,S,w){if(!Array.isArray(n.bids))return;const B=function(e){if((0,v.xD)(T.Jt,(0,y.T)(E.UL,e)))return{bidRequest:e=>e,bidderRequest:e=>e};function t(e,t,n){return I.includes(t)?null:Reflect.get(e,t,n)}function n(e,t){const n=new Proxy(e,t);return Object.entries(e).filter((e=>{let[t,n]=e;return"function"==typeof n})).forEach((t=>{let[r,i]=t;return n[r]=i.bind(e)})),n}const r=(0,g.memoize)((e=>n(e,{get:t})),(e=>e.bidId));return{bidRequest:r,bidderRequest:e=>n(e,{get:(n,i,o)=>"bids"===i?e.bids.map(r):t(n,i,o)})}}(n.bidderCode),k={};function U(e,t){const n=(0,b.Bf)(t.metrics);n.checkpoint("addBidResponse"),k[e]=!0,n.measureTime("addBidResponse.validate",(()=>function(e,t){let{index:n=h.K.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};function r(){let e=Object.keys(t);return A.every((n=>(0,f.q9)(e,n)&&!(0,f.q9)([void 0,null],t[n])))}function i(e){return"Invalid bid from ".concat(t.bidderCode,". Ignoring bid: ").concat(e)}if(!e)return(0,g.logWarn)("No adUnitCode was supplied to addBidResponse."),!1;if(!t)return(0,g.logWarn)("Some adapter tried to add an undefined bid for ".concat(e,".")),!1;if(!r())return(0,g.logError)(i("Bidder ".concat(t.bidderCode," is missing required params. Check http://prebid.org/dev-docs/bidder-adapter-1.html for list of params."))),!1;if("native"===t.mediaType&&!(0,c.r4)(t,{index:n}))return(0,g.logError)(i("Native bid missing some required properties.")),!1;if("video"===t.mediaType&&!(0,d.Dn)(t,{index:n}))return(0,g.logError)(i("Video bid does not have required vastUrl or renderer property")),!1;if("banner"===t.mediaType&&!R(e,t,{index:n}))return(0,g.logError)(i("Banner bids require a width and height")),!1;return!0}(e,t)))?r(e,t):r.reject(e,t,l.REJECTION_REASON.INVALID)}const N=[];function D(){s(),o.vc.runWithBidder(e.code,(()=>{u.emit(l.EVENTS.BIDDER_DONE,n),t(N,n.gdprConsent,n.uspConsent,n.gppConsent)}))}const j=_(n).measureTime("validate",(()=>n.bids.filter((t=>function(t){if(!e.isBidRequestValid(t))return(0,g.logWarn)("Invalid bid sent to bidder ".concat(e.code,": ").concat(JSON.stringify(t))),!1;return!0}(B.bidRequest(t))))));if(0===j.length)return void D();const q={};j.forEach((e=>{q[e.bidId]=e,e.adUnitCode||(e.adUnitCode=e.placementCode)})),C(e,j.map(B.bidRequest),B.bidderRequest(n),p,w,{onRequest:e=>u.emit(l.EVENTS.BEFORE_BIDDER_HTTP,n,e),onResponse:t=>{S(e.code),N.push(t)},onFledgeAuctionConfigs:e=>{e.forEach((e=>{const t=q[e.bidId];t?O(t,e.config):(0,g.logWarn)("Received fledge auction configuration for an unknown bidId",e)}))},onError:(t,r)=>{S(e.code),i.ZP.callBidderError(e.code,r,n),u.emit(l.EVENTS.BIDDER_ERROR,{error:r,bidderRequest:n}),(0,g.logError)("Server call for ".concat(e.code," failed: ").concat(t," ").concat(r.status,". Continuing without bids."))},onBid:t=>{const n=q[t.requestId];if(n){if(t.adapterCode=n.bidder,function(e,t){let n=m.S.get(t,"allowAlternateBidderCodes")||!1,r=m.S.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)("".concat(t.bidderCode," is not a registered partner or known bidder of ").concat(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.REJECTION_REASON.BIDDER_DISALLOWED);t.originalCpm=t.cpm,t.originalCurrency=t.currency,t.meta=t.meta||Object.assign({},t[n.bidder]);const e=Object.assign((0,a.m)(l.STATUS.GOOD,n),t,(0,g.pick)(n,I));U(n.adUnitCode,e)}else(0,g.logWarn)("Bidder ".concat(e.code," made bid for unknown request ID: ").concat(t.requestId,". Ignoring.")),r.reject(null,t,l.REJECTION_REASON.INVALID_REQUEST_ID)},onCompletion:D})}});function t(t,n,r,i){B(e,t,n,r,i)}}const C=(0,p.z3)("sync",(function(e,t,n,r,i,o){let{onRequest:a,onResponse:s,onFledgeAuctionConfigs:c,onError:d,onBid:l,onCompletion:u}=o;const f=_(n);u=f.startTiming("total").stopBefore(u);let p=f.measureTime("buildRequests",(()=>e.buildRequests(t,n)));if(!p||0===p.length)return void u();Array.isArray(p)||(p=[p]);const h=(0,g.delayExecution)(u,p.length);p.forEach((t=>{const n=f.fork();function o(e){null!=e&&(e.metrics=n.fork().renameWith()),l(e)}const u=i((function(r,i){m();try{r=JSON.parse(r)}catch(e){}r={body:r,headers:{get:i.getResponseHeader.bind(i)}},s(r);try{r=n.measureTime("interpretResponse",(()=>e.interpretResponse(r,t)))}catch(t){return(0,g.logError)("Bidder ".concat(e.code," failed to interpret the server's response. Continuing without bids"),null,t),void h()}let a;r&&(0,g.isArray)(r.fledgeAuctionConfigs)?(c(r.fledgeAuctionConfigs),a=r.bids):a=r,a&&((0,g.isArray)(a)?a.forEach(o):o(a)),h()})),p=i((function(e,t){m(),d(e,t),h()}));a(t);const m=n.startTiming("net");function b(n){const r=t.options;return Object.assign(n,r,{browsingTopics:!(null!=r&&r.hasOwnProperty("browsingTopics")&&!r.browsingTopics)&&(0,v.xD)(T.oK,(0,y.T)(E.UL,e.code))})}switch(t.method){case"GET":r("".concat(t.url).concat(function(e){if(e)return"?".concat("object"==typeof e?(0,g.parseQueryStringParameters)(e):e);return""}(t.data)),{success:u,error:p},void 0,b({method:"GET",withCredentials:!0}));break;case"POST":r(t.url,{success:u,error:p},"string"==typeof t.data?t.data:JSON.stringify(t.data),b({method:"POST",contentType:"text/plain",withCredentials:!0}));break;default:(0,g.logWarn)("Skipping invalid request from ".concat(e.code,". Request type ").concat(t.type," must be GET or POST")),h()}}))}),"processBidderRequests"),B=(0,p.z3)("async",(function(e,t,n,r,a){const c=o.vc.getConfig("userSync.aliasSyncEnabled");if(e.getUserSyncs&&(c||!i.ZP.aliasRegistry[e.code])){let i=o.vc.getConfig("userSync.filterSettings"),c=e.getUserSyncs({iframeEnabled:!(!i||!i.iframe&&!i.all),pixelEnabled:!(!i||!i.image&&!i.all)},t,n,r,a);c&&(Array.isArray(c)||(c=[c]),c.forEach((t=>{s.k_.registerSync(t.type,e.code,t.url)})),s.k_.bidderDone(e.code))}}),"registerSyncs"),O=(0,p.z3)("sync",((e,t)=>{}),"addComponentAuction");function R(e,t){let{index:n=h.K.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if((t.width||0===parseInt(t.width,10))&&(t.height||0===parseInt(t.height,10)))return t.width=parseInt(t.width,10),t.height=parseInt(t.height,10),!0;const r=n.getBidRequest(t),i=n.getMediaTypes(t),o=r&&r.sizes||i&&i.banner&&i.banner.sizes,a=(0,g.parseSizesInput)(o);if(1===a.length){const[e,n]=a[0].split("x");return t.width=parseInt(e,10),t.height=parseInt(n,10),!0}return!1}function _(e){return(0,b.Bf)(e.metrics).renameWith((t=>["adapter.client.".concat(t),"adapters.client.".concat(e.bidderCode,".").concat(t)]))}},5730:(e,t,n)=>{n.d(t,{B:()=>s});var r=n(4614),i=n(4358);const o=new WeakMap,a=["debugging","adloox","criteo","outstream","adagio","spotx","browsi","brandmetrics","justtag","tncId","akamaidap","ftrackId","inskin","hadron","medianet","improvedigital","aaxBlockmeter","confiant","arcspan","airgrid","clean.io","a1Media","geoedge","qortex"];function s(e,t,n,s,c){if(!t||!e)return void(0,i.logError)("cannot load external script without url and moduleCode");if(!(0,r.q9)(a,t))return void(0,i.logError)("".concat(t," not whitelisted for loading external JavaScript"));s||(s=document);const d=f(s,e);if(d)return n&&"function"==typeof n&&(d.loaded?n():d.callbacks.push(n)),d.tag;const l=o.get(s)||{},u={loaded:!1,tag:null,callbacks:[]};return l[e]=u,o.set(s,l),n&&"function"==typeof n&&u.callbacks.push(n),(0,i.logWarn)("module ".concat(t," is loading external JavaScript")),function(t,n,r,o){r||(r=document);var a=r.createElement("script");a.type="text/javascript",a.async=!0;const s=f(r,e);s&&(s.tag=a);a.readyState?a.onreadystatechange=function(){"loaded"!==a.readyState&&"complete"!==a.readyState||(a.onreadystatechange=null,n())}:a.onload=function(){n()};a.src=t,o&&(0,i.setScriptAttributes)(a,o);return(0,i.insertElement)(a,r),a}(e,(function(){u.loaded=!0;try{for(let e=0;e{n.d(t,{OI:()=>g,hj:()=>p});var r=n(3193),i=n(4358);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 ".concat(e,"ms"),t),r=null}),e);return{signal:n.signal,done(){r&&clearTimeout(r)}}}},a="GET",s="POST",c="Content-Type";function d(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=n.method||(t?s:a);if(r===a&&t){const r=(0,i.parseUrl)(e,n);Object.assign(r.search,t),e=(0,i.buildUrl)(r)}const d=new Headers(n.customHeaders);d.set(c,n.contentType||"text/plain");const l={method:r,headers:d};return r!==a&&t&&(l.body=t),n.withCredentials&&(l.credentials="include"),n.browsingTopics&&isSecureContext&&(l.browsingTopics=!0),o.makeRequest(e,l)}function l(){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)=>{var i,a;let s;null==e||null!=(null===(i=n)||void 0===i?void 0:i.signal)||r.vc.getConfig("disableAjaxTimeout")||(s=o.timeout(e,t),n=Object.assign({signal:s.signal},n));let c=o.fetch(t,n);return null!=(null===(a=s)||void 0===a?void 0:a.done)&&(c=c.finally(s.done)),c};return null==t&&null==n||(i=(e=>function(r,i){const o=new URL(null==(null==r?void 0:r.url)?r:r.url,document.location).origin;let a=e(r,i);return t&&t(o),n&&(a=a.finally((()=>n(o)))),a})(i)),i}function u(e,t){let{status:n,statusText:r="",headers:o,url:a}=e,s=0;function d(e){if(0===s)try{var n,r;s=(new DOMParser).parseFromString(t,null==o||null===(n=o.get(c))||void 0===n||null===(r=n.split(";"))||void 0===r?void 0:r[0])}catch(t){s=null,e&&e(t)}return s}return{readyState:XMLHttpRequest.DONE,status:n,statusText:r,responseText:t,response:t,responseType:"",responseURL:a,get responseXML(){return d(i.logError)},getResponseHeader:e=>null!=o&&o.has(e)?o.get(e):null,toJSON(){return Object.assign({responseXML:d()},this)}}}function f(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=u(t,i);t.ok||304===t.status?n(i,o):r(t.statusText,o)}),(()=>r("",u({status:0},""))))}function g(){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=l(e,{request:t,done:n});return function(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};f(r(d(e,n,i)),t)}}const p=g();l()},1224:(e,t,n)=>{n.d(t,{mv:()=>w,Yw:()=>S,lU:()=>j,dg:()=>F,RH:()=>z,LX:()=>Y,vO:()=>_});var r=n(4358),i=n(265),o=n(6463),a=n(59),s=n(9885),c=n(5706),d=n(3193),l=n(1974),u=n(2797),f=n(4614),g=n(154),p=n(4679),h=n(8653),m=n(5975),b=n(2021),v=n(8177),y=n(5644),E=n(8792),T=n(9128);var A=n(8640);const{syncUsers:I}=l.k_,S="inProgress",w="completed";b.on(y.EVENTS.BID_ADJUSTMENT,(function(e){!function(e){let t=function(e,t,n){var i;let{index:o=h.K.index,bs:a=m.S}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};n=n||o.getBidRequest(t);const s=null==t?void 0:t.adapterCode,c=(null==t?void 0:t.bidderCode)||(null===(i=n)||void 0===i?void 0:i.bidder),d=a.get(null==t?void 0:t.adapterCode,"adjustAlternateBids"),l=a.getOwn(c,"bidCpmAdjustment")||a.get(d?s:c,"bidCpmAdjustment");if(l&&"function"==typeof l)try{return l(e,Object.assign({},t),n)}catch(e){(0,r.logError)("Error during bid adjustment",e)}return e}(e.cpm,e);t>=0&&(e.cpm=t)}(e)}));const C={},B={},O=[],R=(0,A.R)();function _(e){let{adUnits:t,adUnitCodes:n,callback:i,cbTimeout:o,labels:a,auctionId:s,ortb2Fragments:c,metrics:l}=e;l=(0,T.Bf)(l);const u=t,g=a,m=n,A=s||(0,r.generateUUID)(),_=o,x=new Set,M=(0,E.P)();let W,G,L,V,z=[],F=i,H=[],Y=[],J=[],X=[],$=[];function ee(){return{auctionId:A,timestamp:W,auctionEnd:G,auctionStatus:V,adUnits:u,adUnitCodes:m,labels:g,bidderRequests:H,noBids:J,bidsReceived:Y,bidsRejected:z,winningBids:X,timeout:_,metrics:l,seatNonBids:$}}function te(e){if(e||clearTimeout(L),void 0===G){let n=[];e&&((0,r.logMessage)("Auction ".concat(A," timedOut")),n=H.filter((e=>!x.has(e.bidderRequestId))).flatMap((e=>e.bids)),n.length&&b.emit(y.EVENTS.BID_TIMEOUT,n)),V=w,G=Date.now(),l.checkpoint("auctionEnd"),l.timeBetween("requestBids","auctionEnd","requestBids.total"),l.timeBetween("callBids","auctionEnd","requestBids.callBids"),M.resolve(),b.emit(y.EVENTS.AUCTION_END,ee()),D(u,(function(){try{if(null!=F){const t=Y.filter((e=>m.includes(e.adUnitCode))).reduce(Q,{});F.apply(R,[t,e,A]),F=null}}catch(e){(0,r.logError)("Error executing bidsBackHandler",null,e)}finally{n.length&&v.ZP.callTimedOutBidders(t,n,_);let e=d.vc.getConfig("userSync")||{};e.enableOverride||I(e.syncDelay)}}))}}function ne(){d.vc.resetBidder(),(0,r.logInfo)("Bids Received for Auction with id: ".concat(A),Y),V=w,te(!1)}function re(e){x.add(e)}function ie(e){e.forEach((e=>{var t;t=e,H=H.concat(t)}));let t={},n={bidRequests:e,run:()=>{L=setTimeout((()=>te(!0)),_),V=S,b.emit(y.EVENTS.AUCTION_INIT,ee());let n=function(e,t){let{index:n=h.K.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=0,o=!1,a=new Set,s={};function c(){i--,o&&0===i&&e()}function l(e,t,n){return s[t.requestId]=!0,Z(t,e),i++,n(c)}function u(e,n){l(e,n,(e=>{let r=K(n);r.mediaType===p.pX?q(t,r,e):(null!=r.native&&"object"==typeof r.native&&P(r),j(t,r),e())}))}function g(e,n,i){return l(e,n,(e=>{n.rejectionReason=i,(0,r.logWarn)("Bid from ".concat(n.bidder||"unknown bidder"," was rejected: ").concat(i),n),b.emit(y.EVENTS.BID_REJECTED,n),t.addBidRejected(n),e()}))}function m(){let n=this,c=t.getBidRequests();const l=d.vc.getConfig("auctionOptions");if(a.add(n),l&&!(0,r.isEmpty)(l)){const e=l.secondaryBidders;e&&!c.every((t=>(0,f.q9)(e,t.bidderCode)))&&(c=c.filter((t=>!(0,f.q9)(e,t.bidderCode))))}o=c.every((e=>a.has(e))),n.bids.forEach((e=>{s[e.bidId]||(t.addNoBid(e),b.emit(y.EVENTS.NO_BID,e))})),o&&0===i&&e()}return{addBidResponse:function(){function e(e,t){k.call({dispatch:u},e,t,(()=>{let n=!1;return r=>{n||(g(e,t,r),n=!0)}})())}return e.reject=g,e}(),adapterDone:function(){U(E.Z.resolve()).finally((()=>m.call(this)))}}}(ne,this);v.ZP.callBids(u,e,n.addBidResponse,n.adapterDone,{request(e,n){o(C,n),o(t,e),B[e]||(B[e]={SRA:!0,origin:n}),t[e]>1&&(B[e].SRA=!1)},done(e){C[e]--,O[0]&&i(O[0])&&O.shift()}},_,re,c)}};function i(e){let t=!0,n=d.vc.getConfig("maxRequestsPerOrigin")||4;return e.bidRequests.some((e=>{let r=1,i=void 0!==e.src&&e.src===y.S2S.SRC?"s2s":e.bidderCode;return B[i]&&(!1===B[i].SRA&&(r=Math.min(e.bids.length,n)),C[B[i].origin]+r>n&&(t=!1)),!t})),t&&e.run(),t}function o(e,t){void 0===e[t]?e[t]=1:e[t]++}i(n)||((0,r.logWarn)("queueing auction due to limited endpoint capacity"),O.push(n))}return b.on(y.EVENTS.SEAT_NON_BID,(e=>{var t;e.auctionId===A&&(t=e.seatnonbid,$=$.concat(t))})),{addBidReceived:function(e){Y=Y.concat(e)},addBidRejected:function(e){z=z.concat(e)},addNoBid:function(e){J=J.concat(e)},callBids:function(){V="started",W=Date.now();let e=l.measureTime("requestBids.makeRequests",(()=>v.ZP.makeBidRequests(u,W,A,_,g,c,l)));(0,r.logInfo)("Bids Requested for Auction with id: ".concat(A),e),l.checkpoint("callBids"),e.length<1?((0,r.logWarn)("No valid bid requests returned for auction"),ne()):N.call({dispatch:ie,context:this},e)},addWinningBid:function(e){const n=t.find((t=>t.transactionId===e.transactionId));X=X.concat(e),v.ZP.callBidWonBidder(e.adapterCode||e.bidder,e,t),n&&!n.deferBilling&&v.ZP.callBidBillableBidder(e)},setBidTargeting:function(e){v.ZP.callSetTargetingBidder(e.adapterCode||e.bidder,e)},getWinningBids:()=>X,getAuctionStart:()=>W,getAuctionEnd:()=>G,getTimeout:()=>_,getAuctionId:()=>A,getAuctionStatus:()=>V,getAdUnits:()=>u,getAdUnitCodes:()=>m,getBidRequests:()=>H,getBidsReceived:()=>Y,getNoBids:()=>J,getNonBids:()=>$,getFPD:()=>c,getMetrics:()=>l,end:M.promise}}const k=(0,u.z3)("sync",(function(e,t,n){this.dispatch.call(null,e,t)}),"addBidResponse"),U=(0,u.z3)("sync",(e=>e),"responsesReady"),N=(0,u.z3)("sync",(function(e){this.dispatch.call(this.context,e)}),"addBidderRequests"),D=(0,u.z3)("async",(function(e,t){t&&t()}),"bidsBackCallback");function j(e,t){!function(e){let t;const n=!0===m.S.get(e.bidderCode,"allowZeroCpmBids")?e.cpm>=0:e.cpm>0;e.bidderCode&&(n||e.dealId)&&(t=function(e,t){let{index:n=h.K.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!t)return{};const r=n.getBidRequest(t);var i={};const o=Y(t.mediaType,e);J(i,o,t,r),e&&m.S.getOwn(e,y.JSON_MAPPING.ADSERVER_TARGETING)&&(J(i,m.S.ownSettingsFor(e),t,r),t.sendStandardTargeting=m.S.get(e,"sendStandardTargeting"));t.native&&(i=Object.assign({},i,(0,a.Ur)(t)));return i}(e.bidderCode,e));e.adserverTargeting=Object.assign(e.adserverTargeting||{},t)}(t),(0,T.Bf)(t.metrics).timeSince("addBidResponse","addBidResponse.total"),e.addBidReceived(t),b.emit(y.EVENTS.BID_RESPONSE,t)}function q(e,t,n){let{index:o=h.K.index}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},a=!0;const s=(0,i.Z)(o.getMediaTypes({requestId:t.originalRequestId||t.requestId,transactionId:t.transactionId}),"video"),c=s&&(0,i.Z)(s,"context"),l=s&&(0,i.Z)(s,"useCacheKey");d.vc.getConfig("cache.url")&&(l||c!==g.gZ)&&(!t.videoCacheKey||d.vc.getConfig("cache.ignoreBidderCacheKey")?(a=!1,L(e,t,n,s)):t.vastUrl||((0,r.logError)("videoCacheKey specified but not required vastUrl for video bid"),a=!1)),a&&(j(e,t),n())}const P=e=>{var t,n;const r=null===(t=h.K.index.getAdUnit(e))||void 0===t?void 0:t.nativeOrtbRequest,i=null===(n=e.native)||void 0===n?void 0:n.ortb;if(r&&i){const t=(0,a.zq)(i,r);Object.assign(e.native,t)}},x=e=>{(0,s.h)(e.map((e=>e.bidResponse)),(function(t,n){n.forEach(((n,i)=>{const{auctionInstance:o,bidResponse:a,afterBidAdded:c}=e[i];t?(0,r.logWarn)("Failed to save to the video cache: ".concat(t,". Video bid must be discarded.")):""===n.uuid?(0,r.logWarn)("Supplied video cache key was already in use by Prebid Cache; caching attempt was rejected. Video bid must be discarded."):(a.videoCacheKey=n.uuid,a.vastUrl||(a.vastUrl=(0,s.z)(a.videoCacheKey)),j(o,a),c())}))}))};let M,W;d.vc.getConfig("cache",(e=>{M="number"==typeof e.cache.batchSize&&e.cache.batchSize>0?e.cache.batchSize:1,W="number"==typeof e.cache.batchTimeout&&e.cache.batchTimeout>0?e.cache.batchTimeout:0}));const G=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:setTimeout,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:x,n=[[]],r=!1;const i=e=>e();return function(o,a,s){const c=W>0?e:i;n[n.length-1].length>=M&&n.push([]),n[n.length-1].push({auctionInstance:o,bidResponse:a,afterBidAdded:s}),r||(r=!0,c((()=>{n.forEach(t),n=[[]],r=!1}),W))}}(),L=(0,u.z3)("async",(function(e,t,n,r){G(e,t,n)}),"callPrebidCache");function Z(e,t){let{index:n=h.K.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const i=n.getBidderRequest(e),o=n.getAdUnit(e),a=i&&i.start||e.requestTimestamp;Object.assign(e,{responseTimestamp:e.responseTimestamp||(0,r.timestamp)(),requestTimestamp:e.requestTimestamp||a,cpm:parseFloat(e.cpm)||0,bidder:e.bidder||e.bidderCode,adUnitCode:t}),null!=(null==o?void 0:o.ttlBuffer)&&(e.ttlBuffer=o.ttlBuffer),e.timeToRespond=e.responseTimestamp-e.requestTimestamp}function K(e){var t;let{index:n=h.K.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};b.emit(y.EVENTS.BID_ADJUSTMENT,e);const r=(null===(t=n.getBidRequest(e))||void 0===t?void 0:t.renderer)||n.getAdUnit(e).renderer,i=e.mediaType,a=n.getMediaTypes(e),s=a&&a[i];var l=s&&s.renderer,u=null;l&&l.url&&l.render&&(!0!==l.backupOnly||!e.renderer)?u=l:r&&r.url&&r.render&&(!0!==r.backupOnly||!e.renderer)&&(u=r),u&&(e.renderer=c.Th.install({url:u.url,config:u.options}),e.renderer.setRender(u.render));const f=V(e.mediaType,a,d.vc.getConfig("mediaTypePriceGranularity")),g=(0,o.D)(e.cpm,"object"==typeof f?f:d.vc.getConfig("customPriceBucket"),d.vc.getConfig("currency.granularityMultiplier"));return e.pbLg=g.low,e.pbMg=g.med,e.pbHg=g.high,e.pbAg=g.auto,e.pbDg=g.dense,e.pbCg=g.custom,e}function V(e,t,n){if(e&&n){if(e===p.pX){const e=(0,i.Z)(t,"".concat(p.pX,".context"),"instream");if(n["".concat(p.pX,"-").concat(e)])return n["".concat(p.pX,"-").concat(e)]}return n[e]}}const z=function(e){let{index:t=h.K.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=V(e.mediaType,t.getMediaTypes(e),d.vc.getConfig("mediaTypePriceGranularity")),r="string"==typeof e.mediaType&&n?"string"==typeof n?n:"custom":d.vc.getConfig("priceGranularity");return r},F=e=>t=>{const n=e||z(t);return n===y.GRANULARITY_OPTIONS.AUTO?t.pbAg:n===y.GRANULARITY_OPTIONS.DENSE?t.pbDg:n===y.GRANULARITY_OPTIONS.LOW?t.pbLg:n===y.GRANULARITY_OPTIONS.MEDIUM?t.pbMg:n===y.GRANULARITY_OPTIONS.HIGH?t.pbHg:n===y.GRANULARITY_OPTIONS.CUSTOM?t.pbCg:void 0};function H(e,t){return{key:e,val:"function"==typeof t?function(e,n){return t(e,n)}:function(e){return(0,r.getValue)(e,t)}}}function Y(e,t){const n=y.TARGETING_KEYS,o=Object.assign({},m.S.settingsFor(null));if(o[y.JSON_MAPPING.ADSERVER_TARGETING]||(o[y.JSON_MAPPING.ADSERVER_TARGETING]=function(){const e=y.TARGETING_KEYS;return[H(e.BIDDER,"bidderCode"),H(e.AD_ID,"adId"),H(e.PRICE_BUCKET,F()),H(e.SIZE,"size"),H(e.DEAL,"dealId"),H(e.SOURCE,"source"),H(e.FORMAT,"mediaType"),H(e.ADOMAIN,(e=>e.meta&&e.meta.advertiserDomains&&e.meta.advertiserDomains.length>0?[e.meta.advertiserDomains].flat()[0]:"")),H(e.ACAT,(e=>e.meta&&e.meta.primaryCatId?e.meta.primaryCatId:"")),H(e.DSP,(e=>e.meta&&(e.meta.networkId||e.meta.networkName)?(0,i.Z)(e,"meta.networkName")||(0,i.Z)(e,"meta.networkId"):"")),H(e.CRID,(e=>e.creativeId?e.creativeId:""))]}()),"video"===e){const e=o[y.JSON_MAPPING.ADSERVER_TARGETING].slice();if(o[y.JSON_MAPPING.ADSERVER_TARGETING]=e,[n.UUID,n.CACHE_ID].forEach((t=>{void 0===(0,f.sE)(e,(e=>e.key===t))&&e.push(H(t,"videoCacheKey"))})),d.vc.getConfig("cache.url")&&(!t||!1!==m.S.get(t,"sendStandardTargeting"))){const t=(0,r.parseUrl)(d.vc.getConfig("cache.url"));void 0===(0,f.sE)(e,(e=>e.key===n.CACHE_HOST))&&e.push(H(n.CACHE_HOST,(function(e){return(0,i.Z)(e,"adserverTargeting.".concat(n.CACHE_HOST))?e.adserverTargeting[n.CACHE_HOST]:t.hostname})))}}return o}function J(e,t,n,i){var o=t[y.JSON_MAPPING.ADSERVER_TARGETING];return n.size=n.getSize(),(o||[]).forEach((function(o){var a=o.key,s=o.val;if(e[a]&&(0,r.logWarn)("The key: "+a+" is being overwritten"),(0,r.isFn)(s))try{s=s(n,i)}catch(e){(0,r.logError)("bidmanager","ERROR",e)}((void 0===t.suppressEmptyKeys||!0!==t.suppressEmptyKeys)&&a!==y.TARGETING_KEYS.DEAL&&a!==y.TARGETING_KEYS.ACAT&&a!==y.TARGETING_KEYS.DSP&&a!==y.TARGETING_KEYS.CRID||!(0,r.isEmptyStr)(s)&&null!=s)&&(e[a]=s)})),e}function Q(e,t){return e[t.adUnitCode]||(e[t.adUnitCode]={bids:[]}),e[t.adUnitCode].bids.push(t),e}},8653:(e,t,n)=>{n.d(t,{K:()=>f});var r=n(4358),i=n(1224);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{transactionId:n}=t;if(null!=n)return e().flatMap((e=>e.getAdUnits())).find((e=>e.transactionId===n))},getMediaTypes(e){let{transactionId:t,requestId:n}=e;if(null!=n){const e=this.getBidRequest({requestId:n});if(null!=e&&(null==t||e.transactionId===t))return e.mediaTypes}else if(null!=t){const e=this.getAdUnit({transactionId: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))}})}var a=n(5644),s=n(9128),c=n(613),d=n(8833),l=n(3193);const u="minBidCacheTTL";const f=function(){let e=null;const t=(0,c.Z)({startTime:e=>e.end.then((()=>e.getAuctionEnd())),ttl:t=>null==e?null:t.end.then((()=>1e3*Math.max(e,...t.getBidsReceived().map(d.N))))});(0,d.l)((()=>{null!=e&&t.refresh()})),l.vc.getConfig(u,(n=>{const r=e;e=null==n?void 0:n.minBidCacheTTL,e="number"==typeof e?e:null,r!==e&&t.refresh()}));const n={};function f(e){for(const n of t)if(n.getAuctionId()===e)return n}function g(){return t.toArray().flatMap((e=>e.getBidsReceived()))}return n.addWinningBid=function(e){const t=(0,s.Bf)(e.metrics);t.checkpoint("bidWon"),t.timeBetween("auctionEnd","bidWon","render.pending"),t.timeBetween("requestBids","bidWon","render.e2e");const n=f(e.auctionId);n?(e.status=a.BID_STATUS.RENDERED,n.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.mv},getAdUnitCodes:{post:r.uniques}}).forEach((e=>{let[r,{name:i=r,pre:o,post:a}]=e;const s=null==o?e=>e[i]():e=>o(e)?e[i]():[],c=null==a?e=>e:e=>e.filter(a);n[r]=()=>c(t.toArray().flatMap(s))})),n.getAllBidsForAdUnitCode=function(e){return g().filter((t=>t&&t.adUnitCode===e))},n.createAuction=function(e){const n=(0,i.vO)(e);return function(e){t.add(e)}(n),n},n.findBidByAdId=function(e){return g().find((t=>t.adId===e))},n.getStandardBidderAdServerTargeting=function(){return(0,i.LX)()[a.JSON_MAPPING.ADSERVER_TARGETING]},n.setStatusForBids=function(e,t){let r=n.findBidByAdId(e);if(r&&(r.status=t),r&&t===a.BID_STATUS.BID_TARGETING_SET){const e=f(r.auctionId);e&&e.setBidTargeting(r)}},n.getLastAuctionId=function(){const e=t.toArray();return e.length&&e[e.length-1].getAuctionId()},n.clearAllAuctions=function(){t.clear()},n.index=new o((()=>t.toArray())),n}()},8833:(e,t,n)=>{n.d(t,{N:()=>s,l:()=>c});var r=n(3193),i=n(4358);let o=1;const a=[];function s(e){return e.ttl-(e.hasOwnProperty("ttlBuffer")?e.ttlBuffer:o)}function c(e){a.push(e)}r.vc.getConfig("ttlBuffer",(e=>{if("number"==typeof e.ttlBuffer){const t=o;o=e.ttlBuffer,t!==o&&a.forEach((e=>e(o)))}else(0,i.logError)("Invalid value for ttlBuffer",e.ttlBuffer)}))},5975:(e,t,n)=>{n.d(t,{S:()=>u});var r=n(265),i=n(4358),o=n(8640),a=n(5644);function s(e,t){!function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}(e,t),t.add(e)}function c(e,t,n){if(!t.has(e))throw new TypeError("attempted to get private field on non-instance");return n}var d=new WeakSet;function l(e){return null==e?this.defaultScope:e}const u=new class{constructor(e,t){s(this,d),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=c(this,d,l).call(this,e),(0,r.Z)(this.getSettings(),"".concat(e,".").concat(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=c(this,d,l).call(this,e),this.getSettings()[e]||{}}}((()=>(0,o.R)().bidderSettings||{}),a.JSON_MAPPING.BD_SETTING_STANDARD)},9626:(e,t,n)=>{n.d(t,{m:()=>o});var r=n(4358);function i(e){let{src:t="client",bidder:n="",bidId:i,transactionId:o,auctionId:a}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};var s=t,c=e||0;function d(){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"}}this.bidderCode=n,this.width=0,this.height=0,this.statusMessage=d(),this.adId=(0,r.getUniqueIdentifierStr)(),this.requestId=i,this.transactionId=o,this.auctionId=a,this.mediaType="banner",this.source=s,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,auctionId:this.auctionId}}}function o(e,t){return new i(e,t)}},3193:(e,t,n)=>{n.d(t,{FD:()=>d,vc:()=>p});var r=n(6463),i=n(4614),o=n(4358),a=n(265),s=n(5644);const c="TRUE"===(0,o.getParameterByName)(s.DEBUG_MODE).toUpperCase(),d="random",l={};l[d]=!0,l.fixed=!0;const u=d,f={LOW:"low",MEDIUM:"medium",HIGH:"high",AUTO:"auto",DENSE:"dense",CUSTOM:"custom"},g="*";const p=function(){let e,t,n,s=[],d=null;function p(){function a(e){return d[e].val}function s(e,t){d[e].val=t}e={};const d={publisherDomain:{set(e){null!=e&&(0,o.logWarn)("publisherDomain is deprecated and has no effect since v7 - use pageUrl instead"),s("publisherDomain",e)}},priceGranularity:{val:f.MEDIUM,set(e){h(e)&&("string"==typeof e?s("priceGranularity",p(e)?e:f.MEDIUM):(0,o.isPlainObject)(e)&&(s("customPriceBucket",e),s("priceGranularity",f.CUSTOM)))}},customPriceBucket:{val:{},set(){}},mediaTypePriceGranularity:{val:{},set(e){null!=e&&s("mediaTypePriceGranularity",Object.keys(e).reduce(((t,n)=>(h(e[n])?"string"==typeof e?t[n]=p(e[n])?e[n]:a("priceGranularity"):(0,o.isPlainObject)(e)&&(t[n]=e[n]):(0,o.logWarn)("Invalid price granularity for media type: ".concat(n)),t)),{}))}},bidderSequence:{val:u,set(e){l[e]?s("bidderSequence",e):(0,o.logWarn)("Invalid order: ".concat(e,". Bidder Sequence was not set."))}},auctionOptions:{val:{},set(e){(function(e){if(!(0,o.isPlainObject)(e))return(0,o.logWarn)("Auction Options must be an object"),!1;for(let t of Object.keys(e)){if("secondaryBidders"!==t&&"suppressStaleRender"!==t)return(0,o.logWarn)("Auction Options given an incorrect param: ".concat(t)),!1;if("secondaryBidders"===t){if(!(0,o.isArray)(e[t]))return(0,o.logWarn)("Auction Options ".concat(t," must be of type Array")),!1;if(!e[t].every(o.isStr))return(0,o.logWarn)("Auction Options ".concat(t," must be only string")),!1}else if("suppressStaleRender"===t&&!(0,o.isBoolean)(e[t]))return(0,o.logWarn)("Auction Options ".concat(t," must be of type boolean")),!1}return!0})(e)&&s("auctionOptions",e)}}};let g={debug:c,bidderTimeout:3e3,enableSendAllBids:true,useBidCache:false,deviceAccess:true,timeoutBuffer:400,disableAjaxTimeout:false,maxNestedIframes:10};function p(e){return(0,i.sE)(Object.keys(f),(t=>e===f[t]))}function h(e){if(!e)return(0,o.logError)("Prebid Error: no value passed to `setPriceGranularity()`"),!1;if("string"==typeof e)p(e)||(0,o.logWarn)("Prebid Warning: setPriceGranularity was called with invalid setting, using `medium` as default.");else if((0,o.isPlainObject)(e)&&!(0,r.t)(e))return(0,o.logError)("Invalid custom price value passed to `setPriceGranularity()`"),!1;return!0}Object.defineProperties(g,Object.fromEntries(Object.entries(d).map((e=>{let[t,n]=e;return[t,Object.assign({get:a.bind(null,t),set:s.bind(null,t),enumerable:!0},n)]})))),t&&A(Object.keys(t).reduce(((e,n)=>(t[n]!==g[n]&&(e[n]=g[n]||{}),e)),{})),t=g,n={}}function h(){if(d&&n&&(0,o.isPlainObject)(n[d])){let e=n[d];const r=new Set(Object.keys(t).concat(Object.keys(e)));return(0,i.Oc)(r).reduce(((n,r)=>(void 0===e[r]?n[r]=t[r]:void 0===t[r]?n[r]=e[r]:(0,o.isPlainObject)(e[r])?n[r]=(0,o.mergeDeep)({},t[r],e[r]):n[r]=e[r],n)),{})}return Object.assign({},t)}const[m,b]=[h,function(){const e=h();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,a.Z)(e(),t):h()}return T(...arguments)})),[v,y]=[b,m].map((e=>function(){let t=e(...arguments);return t&&"object"==typeof t&&(t=(0,o.deepClone)(t)),t}));function E(n){if(!(0,o.isPlainObject)(n))return void(0,o.logError)("setConfig options must be an object");let r=Object.keys(n),i={};r.forEach((r=>{let a=n[r];(0,o.isPlainObject)(e[r])&&(0,o.isPlainObject)(a)&&(a=Object.assign({},e[r],a));try{i[r]=t[r]=a}catch(e){(0,o.logWarn)("Cannot set config for property ".concat(r," : "),e)}})),A(i)}function T(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=t;if("string"!=typeof e&&(r=e,e=g,n=t||{}),"function"!=typeof r)return void(0,o.logError)("listener must be a function");const i={topic:e,callback:r};return s.push(i),n.init&&r(e===g?b():{[e]:b(e)}),function(){s.splice(s.indexOf(i),1)}}function A(e){const t=Object.keys(e);s.filter((e=>(0,i.q9)(t,e.topic))).forEach((t=>{t.callback({[t.topic]:e[t.topic]})})),s.filter((e=>e.topic===g)).forEach((t=>t.callback(e)))}function I(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];try{r(e),e.bidders.forEach((r=>{n[r]||(n[r]={}),Object.keys(e.config).forEach((i=>{let a=e.config[i];if((0,o.isPlainObject)(a)){const e=t?o.mergeDeep:Object.assign;n[r][i]=e({},n[r][i]||{},a)}else n[r][i]=a}))}))}catch(e){(0,o.logError)(e)}function r(e){if(!(0,o.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,o.isPlainObject)(e.config))throw"setBidderConfig bidder options must contain a config object"}}function S(e,t){d=e;try{return t()}finally{w()}}function w(){d=null}return p(),{getCurrentBidder:function(){return d},resetBidder:w,getConfig:b,getAnyConfig:m,readConfig:v,readAnyConfig:y,setConfig:E,mergeConfig:function(e){if(!(0,o.isPlainObject)(e))return void(0,o.logError)("mergeConfig input must be an object");const t=(0,o.mergeDeep)(h(),e);return E({...t}),t},setDefaults:function(n){(0,o.isPlainObject)(e)?(Object.assign(e,n),Object.assign(t,n)):(0,o.logError)("defaults must be an object")},resetConfig:p,runWithBidder:S,callbackWithBidder:function(e){return function(t){return function(){if("function"==typeof t){for(var n=arguments.length,r=new Array(n),i=0;i{function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}n.d(t,{qh:()=>C,$P:()=>f,NO:()=>O,VP:()=>w,rp:()=>A,TJ:()=>S,nX:()=>I});var i=n(8916),o=n(2793),a=n(4358),s=n(8792),c=n(3193);function d(e,t,n){l(e,t),t.set(e,n)}function l(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function u(e,t,n){if(!t.has(e))throw new TypeError("attempted to get private field on non-instance");return n}const f=Object.freeze({});var g=new WeakMap,p=new WeakMap,h=new WeakMap,m=new WeakMap,b=new WeakMap,v=new WeakMap,y=new WeakSet;class E{constructor(){var e,t;l(e=this,t=y),t.add(e),d(this,g,{writable:!0,value:void 0}),d(this,p,{writable:!0,value:void 0}),d(this,h,{writable:!0,value:void 0}),d(this,m,{writable:!0,value:void 0}),d(this,b,{writable:!0,value:!0}),d(this,v,{writable:!0,value:void 0}),r(this,"generatedTime",void 0),r(this,"hashFields",void 0),this.reset()}reset(){(0,o.Z)(this,h,(0,s.P)()),(0,o.Z)(this,g,!1),(0,o.Z)(this,p,null),(0,o.Z)(this,m,!1),this.generatedTime=null}enable(){(0,o.Z)(this,g,!0)}get enabled(){return(0,i.Z)(this,g)}get ready(){return(0,i.Z)(this,m)}get promise(){return(0,i.Z)(this,m)?s.Z.resolve((0,i.Z)(this,p)):((0,i.Z)(this,g)||u(this,y,T).call(this,null),(0,i.Z)(this,h).promise)}setConsentData(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(0,a.timestamp)();this.generatedTime=t,(0,o.Z)(this,b,!0),u(this,y,T).call(this,e)}getConsentData(){return(0,i.Z)(this,p)}get hash(){return(0,i.Z)(this,b)&&((0,o.Z)(this,v,(0,a.cyrb53Hash)(JSON.stringify((0,i.Z)(this,p)&&this.hashFields?this.hashFields.map((e=>(0,i.Z)(this,p)[e])):(0,i.Z)(this,p)))),(0,o.Z)(this,b,!1)),(0,i.Z)(this,v)}}function T(e){(0,o.Z)(this,m,!0),(0,o.Z)(this,p,e),(0,i.Z)(this,h).resolve(e)}const A=new class extends E{constructor(){super(...arguments),r(this,"hashFields",["gdprApplies","consentString"])}getConsentMeta(){const e=this.getConsentData();if(e&&e.vendorData&&this.generatedTime)return{gdprApplies:e.gdprApplies,consentStringSize:(0,a.isStr)(e.vendorData.tcString)?e.vendorData.tcString.length:0,generatedAt:this.generatedTime,apiVersion:e.apiVersion}}},I=new class extends E{getConsentMeta(){const e=this.getConsentData();if(e&&this.generatedTime)return{usp:e,generatedAt:this.generatedTime}}},S=new class extends E{constructor(){super(...arguments),r(this,"hashFields",["applicableSections","gppString"])}getConsentMeta(){if(this.getConsentData()&&this.generatedTime)return{generatedAt:this.generatedTime}}},w=(()=>{function e(){return!!c.vc.getConfig("coppa")}return{getCoppa:e,getConsentData:e,getConsentMeta:e,reset(){},get promise(){return s.Z.resolve(e())},get hash(){return e()?"1":"0"}}})(),C=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}}}(),B={gdpr:A,usp:I,gpp:S,coppa:w};const O=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:B;function t(t){return function(){return Object.fromEntries(e.map((e=>{let[n,r]=e;return[n,r[t]()]})))}}return e=Object.entries(e),Object.assign({get promise(){return s.Z.all(e.map((e=>{let[t,n]=e;return n.promise.then((e=>[t,e]))}))).then((e=>Object.fromEntries(e)))},get hash(){return(0,a.cyrb53Hash)(e.map((e=>{let[t,n]=e;return n.hash})).join(":"))}},Object.fromEntries(["getConsentData","getConsentMeta","reset"].map((e=>[e,t(e)]))))}()},6463:(e,t,n)=>{n.d(t,{D:()=>u,t:()=>g});var r=n(4614),i=n(4358),o=n(3193);const a={buckets:[{max:5,increment:.5}]},s={buckets:[{max:20,increment:.1}]},c={buckets:[{max:20,increment:.01}]},d={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?"":f(e,a,n),med:""===r?"":f(e,s,n),high:""===r?"":f(e,c,n),auto:""===r?"":f(e,l,n),dense:""===r?"":f(e,d,n),custom:""===r?"":f(e,t,n)}}function f(e,t,n){let a="";if(!g(t))return a;const s=t.buckets.reduce(((e,t)=>e.max>t.max?e:t),{max:0});let c=0,d=(0,r.sE)(t.buckets,(t=>{if(e>s.max*n){let e=t.precision;void 0===e&&(e=2),a=(t.max*n).toFixed(e)}else{if(e<=t.max*n&&e>=c*n)return t.min=c,t;c=t.max}}));return d&&(a=function(e,t,n){const r=void 0!==t.precision?t.precision:2,a=t.increment*n,s=t.min*n;let c=Math.floor,d=o.vc.getConfig("cpmRoundingFunction");"function"==typeof d&&(c=d);let l,u,f=Math.pow(10,r+2),g=(e*f-s*f)/(a*f);try{l=c(g)*a+s}catch(e){u=!0}(u||"number"!=typeof l)&&((0,i.logWarn)("Invalid rounding function passed in config"),l=Math.floor(g)*a+s);return l=Number(l.toFixed(10)),l.toFixed(r)}(e,d,n)),a}function g(e){if((0,i.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}},2021:(e,t,n)=>{n.r(t),n.d(t,{addEvents:()=>E,clearEvents:()=>T,emit:()=>y,get:()=>b,getEvents:()=>v,off:()=>m,on:()=>h});var r=n(4358),i=n(5644),o=n(613),a=n(3193);const s="eventHistoryTTL";let c=null;const d=(0,o.Z)({monotonic:!0,ttl:()=>c});a.vc.getConfig(s,(e=>{var t;const n=c;e=null===(t=e)||void 0===t?void 0:t[s],c="number"==typeof e?1e3*e:null,n!==c&&d.refresh()}));let l=Array.prototype.slice,u=Array.prototype.push,f=Object.values(i.EVENTS);const g=i.EVENT_ID_PATHS,p=function(){let e={},t={};function n(t,n){let i=n[0]||{},o=i[g[t]],a=e[t]||{que:[]};var s=Object.keys(a);let c=[];d.add({eventType:t,args:i,id:o,elapsedTime:r.getPerformanceNow()}),o&&s.includes(o)&&u.apply(c,a[o].que),u.apply(c,a.que),(c||[]).forEach((function(e){if(e)try{e.apply(null,n)}catch(e){r.logError("Error executing handler:","events.js",e)}}))}return t.on=function(t,n,i){if(o=t,f.includes(o)){let r=e[t]||{que:[]};i?(r[i]=r[i]||{que:[]},r[i].que.push(n)):r.que.push(n),e[t]=r}else r.logError("Wrong event name : "+t+" Valid event names :"+f);var o},t.emit=function(e){let t=l.call(arguments,1);n(e,t)},t.off=function(t,n,i){let o=e[t];r.isEmpty(o)||r.isEmpty(o.que)&&r.isEmpty(o[i])||i&&(r.isEmpty(o[i])||r.isEmpty(o[i].que))||(i?(o[i].que||[]).forEach((function(e){let t=o[i].que;e===n&&t.splice(t.indexOf(e),1)})):(o.que||[]).forEach((function(e){let t=o.que;e===n&&t.splice(t.indexOf(e),1)})),e[t]=o)},t.get=function(){return e},t.addEvents=function(e){f=f.concat(e)},t.getEvents=function(){return d.toArray().map((e=>Object.assign({},e)))},t}();r._setEventEmitter(p.emit.bind(p));const{on:h,off:m,get:b,getEvents:v,emit:y,addEvents:E}=p;function T(){d.clear()}},4078:(e,t,n)=>{n.d(t,{S:()=>v});var r=n(2797),i=n(5102),o=n(8196),a=n(4358),s=n(6475),c=n(3193),d=n(8792);const l=["architecture","bitness","model","platformVersion","fullVersionList"],u=["brands","mobile","platform"],f=function(){var e;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null===(e=window.navigator)||void 0===e?void 0:e.userAgentData;const n=t&&u.some((e=>void 0!==t[e]))?Object.freeze(p(1,t)):null;return function(){return n}}(),g=function(){var e;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null===(e=window.navigator)||void 0===e?void 0:e.userAgentData;const n={},r=new WeakMap;return function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l;if(!r.has(e)){const t=Array.from(e);t.sort(),r.set(e,t.join("|"))}const i=r.get(e);if(!n.hasOwnProperty(i))try{n[i]=t.getHighEntropyValues(e).then((e=>(0,a.isEmpty)(e)?null:Object.freeze(p(2,e)))).catch((()=>null))}catch(e){n[i]=d.Z.resolve(null)}return n[i]}}();function p(e,t){function n(e,t){const n={brand:e};return(0,a.isStr)(t)&&!(0,a.isEmptyStr)(t)&&(n.version=t.split(".")),n}const r={source:e};return t.platform&&(r.platform=n(t.platform,t.platformVersion)),(t.fullVersionList||t.brands)&&(r.browsers=(t.fullVersionList||t.brands).map((e=>{let{brand:t,version:r}=e;return n(t,r)}))),void 0!==t.mobile&&(r.mobile=t.mobile?1:0),["model","bitness","architecture"].forEach((e=>{const n=t[e];(0,a.isStr)(n)&&(r[e]=n)})),r}var h=n(3790);const m={getRefererInfo:i.nH,findRootDomain:o.W,getWindowTop:a.getWindowTop,getWindowSelf:a.getWindowSelf,getHighEntropySUA:g,getLowEntropySUA:f},b=(0,h.A_)("FPD"),v=(0,r.z3)("sync",(e=>d.Z.all([e,E().catch((()=>null))]).then((e=>{let[t,n]=e;const r=m.getRefererInfo();!function(e){["app","site","device"].forEach((t=>{const n=c.vc.getConfig(t);null!=n&&(e[t]=(0,a.mergeDeep)({},n,e[t]))}))}(t),Object.entries(A).forEach((e=>{let[n,i]=e;const o=i(t,r);o&&Object.keys(o).length>0&&(t[n]=(0,a.mergeDeep)({},o,t[n]))})),n&&(0,s.N)(t,"device.sua",Object.assign({},n,t.device.sua)),t=b(t);for(let e of h.Iq)if((0,h.Qg)(t,e)){t[e]=(0,a.mergeDeep)({},I(t,r),t[e]);break}return t}))));function y(e){try{return e(m.getWindowTop())}catch(t){return e(m.getWindowSelf())}}function E(){const e=c.vc.getConfig("firstPartyData.uaHints");return Array.isArray(e)&&0!==e.length?m.getHighEntropySUA(e):d.Z.resolve(m.getLowEntropySUA())}function T(e){return(0,a.getDefinedParams)(e,Object.keys(e))}const A={site(e,t){if(!h.Iq.filter((e=>"site"!==e)).some(h.Qg.bind(null,e)))return T({page:t.page,ref:t.ref})},device:()=>y((e=>({w:e.innerWidth||e.document.documentElement.clientWidth||e.document.body.clientWidth,h:e.innerHeight||e.document.documentElement.clientHeight||e.document.body.clientHeight,dnt:(0,a.getDNT)()?1:0,ua:e.navigator.userAgent,language:e.navigator.language.split("-").shift()}))),regs(){const e={};y((e=>e.navigator.globalPrivacyControl))&&(0,s.N)(e,"ext.gpc",1);const t=c.vc.getConfig("coppa");return"boolean"==typeof t&&(e.coppa=t?1:0),e}};function I(e,t){var n,r,o;const a=(0,i.hh)(t.page,{noLeadingWww:!0});return T({domain:a,keywords:null===(n=y((e=>e.document.querySelector("meta[name='keywords']"))))||void 0===n||null===(r=n.content)||void 0===r||null===(o=r.replace)||void 0===o?void 0:o.call(r,/\s/g,""),publisher:T({domain:m.findRootDomain(a)})})}},3790:(e,t,n)=>{n.d(t,{A_:()=>o,Iq:()=>i,Qg:()=>a});var r=n(4358);const i=["dooh","app","site"];function o(e){return function(t){return i.reduce(((n,i)=>(a(t,i)&&(null!=n?((0,r.logWarn)("".concat(e," specifies both '").concat(n,"' and '").concat(i,"'; dropping the latter.")),delete t[i]):n=i),n)),null),t}}function a(e,t){return null!=e[t]&&Object.keys(e[t]).length>0}},8196:(e,t,n)=>{n.d(t,{W:()=>o});var r=n(4358);const i=(0,n(5164).eA)("fpdEnrichment"),o=(0,r.memoize)((function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.location.host;if(!i.cookiesAreEnabled())return e;const t=e.split(".");if(2===t.length)return e;let n,o,a=-2;const s="_rdc".concat(Date.now()),c="writeable";do{n=t.slice(a).join(".");let e=new Date((0,r.timestamp)()+1e4).toUTCString();i.setCookie(s,c,e,"Lax",n,void 0);i.getCookie(s,void 0)===c?(o=!1,i.setCookie(s,"","Thu, 01 Jan 1970 00:00:01 GMT",void 0,n,void 0)):(a+=-1,o=Math.abs(a)<=t.length)}while(o);return n}))},2797:(e,t,n)=>{n.d(t,{Bx:()=>g,Cd:()=>c,IF:()=>p,bA:()=>f,o0:()=>l,v5:()=>d,z3:()=>a});var r=n(1432),i=n.n(r),o=n(8792);let a=i()({ready:i().SYNC|i().ASYNC|i().QUEUE});const s=(0,o.P)();a.ready=(()=>{const e=a.ready;return function(){try{return e.apply(a,arguments)}finally{s.resolve()}}})();const c=s.promise,d=a.get;function l(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:15,r=e.getHooks({hook:t});0===r.length&&e.before(t,n)}const u={};function f(e,t){let{postInstallAllowed:n=!1}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};a("async",(function(r){r.forEach((e=>t(...e))),n&&(u[e]=t)}),e)([])}function g(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{t.push(n),e(t)}))}function p(e,t){return Object.defineProperties(t,Object.fromEntries(["before","after","getHooks","removeAll"].map((t=>[t,{get:()=>e[t]}])))),t}},4679:(e,t,n)=>{n.d(t,{B5:()=>r,Mk:()=>o,Oh:()=>a,pX:()=>i});const r="native",i="video",o="banner",a="adpod"},59:(e,t,n)=>{n.d(t,{Fb:()=>A,JL:()=>k,Sg:()=>d,Ur:()=>B,e6:()=>C,eK:()=>_,lY:()=>q,r4:()=>S,xc:()=>l,zq:()=>M});var r=n(265),i=n(4358),o=n(4614),a=n(8653),s=n(5644),c=n(4679);const d=[],l=Object.keys(s.NATIVE_KEYS).map((e=>s.NATIVE_KEYS[e])),u={image:{ortb:{ver:"1.2",assets:[{required:1,id:1,img:{type:3,wmin:100,hmin:100}},{required:1,id:2,title:{len:140}},{required:1,id:3,data:{type:1}},{required:0,id:4,data:{type:2}},{required:0,id:5,img:{type:1,wmin:20,hmin:20}}]},image:{required:!0},title:{required:!0},sponsoredBy:{required:!0},clickUrl:{required:!0},body:{required:!1},icon:{required:!1}}},{NATIVE_ASSET_TYPES:f,NATIVE_IMAGE_TYPES:g,PREBID_NATIVE_DATA_KEYS_TO_ORTB:p,NATIVE_KEYS_THAT_ARE_NOT_ASSETS:h,NATIVE_KEYS:m}=s,b=W(p),v=W(f),y={img:1,js:2,1:"img",2:"js"},E=1;function T(e){if(e&&e.type&&function(e){if(!e||!(0,o.q9)(Object.keys(u),e))return(0,i.logError)("".concat(e," nativeParam is not supported")),!1;return!0}(e.type)&&(e=u[e.type]),!e||!e.ortb||I(e.ortb))return e}function A(e){e.forEach((e=>{const t=e.nativeParams||(0,r.Z)(e,"mediaTypes.native");t&&(e.nativeParams=T(t)),e.nativeParams&&(e.nativeOrtbRequest=e.nativeParams.ortb||function(e){if(!e&&!(0,i.isPlainObject)(e))return void(0,i.logError)("Native assets object is empty or not an object: ",e);const t={ver:"1.2",assets:[]};for(let n in e){if(h.includes(n))continue;if(!m.hasOwnProperty(n)){(0,i.logError)("Unrecognized native asset code: ".concat(n,". Asset will be ignored."));continue}if("privacyLink"===n){t.privacy=1;continue}const r=e[n];let o=0;r.required&&(0,i.isBoolean)(r.required)&&(o=Number(r.required));const a={id:t.assets.length,required:o};if(n in p)a.data={type:f[p[n]]},r.len&&(a.data.len=r.len);else if("icon"===n||"image"===n){if(a.img={type:"icon"===n?g.ICON:g.MAIN},r.aspect_ratios)if((0,i.isArray)(r.aspect_ratios))if(r.aspect_ratios.length){const{min_width:e,min_height:t}=r.aspect_ratios[0];(0,i.isInteger)(e)&&(0,i.isInteger)(t)?(a.img.wmin=e,a.img.hmin=t):(0,i.logError)("image.aspect_ratios min_width or min_height are invalid: ",e,t);const n=r.aspect_ratios.filter((e=>e.ratio_width&&e.ratio_height)).map((e=>"".concat(e.ratio_width,":").concat(e.ratio_height)));n.length>0&&(a.img.ext={aspectratios:n})}else(0,i.logError)("image.aspect_ratios was passed, but it's empty:",r.aspect_ratios);else(0,i.logError)("image.aspect_ratios was passed, but it's not a an array:",r.aspect_ratios);r.sizes&&(2===r.sizes.length&&(0,i.isInteger)(r.sizes[0])&&(0,i.isInteger)(r.sizes[1])?(a.img.w=r.sizes[0],a.img.h=r.sizes[1],delete a.img.hmin,delete a.img.wmin):(0,i.logError)("image.sizes was passed, but its value is not an array of integers:",r.sizes))}else"title"===n?a.title={len:r.len||140}:"ext"===n&&(a.ext=r,delete a.required);t.assets.push(a)}return t}(e.nativeParams))}))}function I(e){const t=e.assets;if(!Array.isArray(t)||0===t.length)return(0,i.logError)("assets in mediaTypes.native.ortb is not an array, or it's empty. Assets: ",t),!1;const n=t.map((e=>e.id));return t.length!==new Set(n).size||n.some((e=>e!==parseInt(e,10)))?((0,i.logError)("each asset object must have 'id' property, it must be unique and it must be an integer"),!1):e.hasOwnProperty("eventtrackers")&&!Array.isArray(e.eventtrackers)?((0,i.logError)("ortb.eventtrackers is not an array. Eventtrackers: ",e.eventtrackers),!1):t.every((e=>function(e){if(!(0,i.isPlainObject)(e))return(0,i.logError)("asset must be an object. Provided asset: ",e),!1;if(e.img){if(!(0,i.isNumber)(e.img.w)&&!(0,i.isNumber)(e.img.wmin))return(0,i.logError)("for img asset there must be 'w' or 'wmin' property"),!1;if(!(0,i.isNumber)(e.img.h)&&!(0,i.isNumber)(e.img.hmin))return(0,i.logError)("for img asset there must be 'h' or 'hmin' property"),!1}else if(e.title){if(!(0,i.isNumber)(e.title.len))return(0,i.logError)("for title asset there must be 'len' property defined"),!1}else if(e.data){if(!(0,i.isNumber)(e.data.type))return(0,i.logError)("for data asset 'type' property must be a number"),!1}else if(e.video&&!(Array.isArray(e.video.mimes)&&Array.isArray(e.video.protocols)&&(0,i.isNumber)(e.video.minduration)&&(0,i.isNumber)(e.video.maxduration)))return(0,i.logError)("video asset is not properly configured"),!1;return!0}(e)))}function S(e){var t;let{index:n=a.K.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const r=n.getAdUnit(e);if(!r)return!1;let i=r.nativeOrtbRequest,o=(null===(t=e.native)||void 0===t?void 0:t.ortb)||x(e.native,i);return w(o,i)}function w(e,t){if(!(0,r.Z)(e,"link.url"))return(0,i.logError)("native response doesn't have 'link' property. Ortb response: ",e),!1;let n=t.assets.filter((e=>1===e.required)).map((e=>e.id)),a=e.assets.map((e=>e.id));const s=n.every((e=>(0,o.q9)(a,e)));return s||(0,i.logError)("didn't receive a bid with all required assets. Required ids: ".concat(n,", but received ids in response: ").concat(a)),s}function C(e,t){const n=t.native.ortb||P(t.native);return"click"===e.action?function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,{fetchURL:n=i.triggerPixel}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(t){var r;const i=(e.assets||[]).filter((e=>e.link)).reduce(((e,t)=>(e[t.id]=t.link,e)),{}),o=(null===(r=e.link)||void 0===r?void 0:r.clicktrackers)||[];let a=i[t],s=o;a&&(s=a.clicktrackers||[]),s.forEach((e=>n(e)))}else{var o;((null===(o=e.link)||void 0===o?void 0:o.clicktrackers)||[]).forEach((e=>n(e)))}}(n,null==e?void 0:e.assetId):function(e){let{runMarkup:t=(e=>(0,i.insertHtmlIntoIframe)(e)),fetchURL:n=i.triggerPixel}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const r=(e.eventtrackers||[]).filter((e=>e.event===E));let{img:o,js:a}=r.reduce(((e,t)=>(y.hasOwnProperty(t.method)&&e[y[t.method]].push(t.url),e)),{img:[],js:[]});e.imptrackers&&(o=o.concat(e.imptrackers));o.forEach((e=>n(e))),a=a.map((e=>'