-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbids.js
More file actions
169 lines (163 loc) · 183 KB
/
bids.js
File metadata and controls
169 lines (163 loc) · 183 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
function loadTlpbjs() {
/* prebid.js v9.18.0-pre
Updated: 2024-11-15
Modules: consentManagementGpp, consentManagementTcf, consentManagementUsp, prebidServerBidAdapter */
if(window.tlpbjs&&window.tlpbjs.libLoaded)try{window.tlpbjs.getConfig("debug")&&console.warn("Attempted to load a copy of Prebid.js that clashes with the existing 'tlpbjs' instance. Load aborted.")}catch(t){}else (function(){
(()=>{var r,t={433:(r,t,e)=>{function n(r,t,e,n,o){for(t=t.split?t.split("."):t,n=0;n<t.length;n++)r=r?r[t[n]]:o;return r===o?e:r}e.d(t,{A:()=>n})},8128:r=>{
/*
* @license MIT
* Fun Hooks v0.9.10
* (c) @snapwich
*/
u.SYNC=1,u.ASYNC=2,u.QUEUE=4;var t="fun-hooks";var e=Object.freeze({useProxy:!0,ready:0}),n=new WeakMap,o="2,1,0"===[1].reduce((function(r,t,e){return[r,t,e]}),2).toString()?Array.prototype.reduce:function(r,t){var e,n=Object(this),o=n.length>>>0,i=0;if(t)e=t;else{for(;i<o&&!(i in n);)i++;e=n[i++]}for(;i<o;)i in n&&(e=r(e,n[i],i,n)),i++;return e};function i(r,t){return Array.prototype.slice.call(r,t)}var f=Object.assign||function(r){return o.call(i(arguments,1),(function(r,t){return t&&Object.keys(t).forEach((function(e){r[e]=t[e]})),r}),r)};function u(r){var a,c={},l=[];function p(r,t){return"function"==typeof r?h.call(null,"sync",r,t):"string"==typeof r&&"function"==typeof t?h.apply(null,arguments):"object"==typeof r?y.apply(null,arguments):void 0}function y(r,t,e){var n=!0;void 0===t&&(t=Object.getOwnPropertyNames(r),n=!1);var o={},i=["constructor"];do{(t=t.filter((function(t){return!("function"!=typeof r[t]||-1!==i.indexOf(t)||t.match(/^_/))}))).forEach((function(t){var n=t.split(":"),i=n[0],f=n[1]||"sync";if(!o[i]){var u=r[i];o[i]=r[i]=h(f,u,e?[e,i]:void 0)}})),r=Object.getPrototypeOf(r)}while(n&&r);return o}function s(r){var e=Array.isArray(r)?r:r.split(".");return o.call(e,(function(n,o,i){var f=n[o],u=!1;return f||(i===e.length-1?(a||l.push((function(){u||console.warn(t+": referenced '"+r+"' but it was never created")})),n[o]=v((function(r){n[o]=r,u=!0}))):n[o]={})}),c)}function v(r){var t=[],e=[],o=function(){},i={before:function(r,e){return a.call(this,t,"before",r,e)},after:function(r,t){return a.call(this,e,"after",r,t)},getHooks:function(r){var n=t.concat(e);"object"==typeof r&&(n=n.filter((function(t){return Object.keys(r).every((function(e){return t[e]===r[e]}))})));try{f(n,{remove:function(){return n.forEach((function(r){r.remove()})),this}})}catch(r){console.error("error adding `remove` to array, did you modify Array.prototype?")}return n},removeAll:function(){return this.getHooks().remove()}},u={install:function(n,i,f){this.type=n,o=f,f(t,e),r&&r(i)}};return n.set(i.after,u),i;function a(r,n,i,f){var u={hook:i,type:n,priority:f||10,remove:function(){var n=r.indexOf(u);-1!==n&&(r.splice(n,1),o(t,e))}};return r.push(u),r.sort((function(r,t){return t.priority-r.priority})),o(t,e),this}}function h(e,o,c){var p=o.after&&n.get(o.after);if(p){if(p.type!==e)throw t+": recreated hookable with different type";return o}var y,h,d=c?s(c):v(),b={get:function(r,t){return d[t]||Reflect.get.apply(Reflect,arguments)}};return a||l.push(g),r.useProxy&&"function"==typeof Proxy&&Proxy.revocable?h=new Proxy(o,b):(h=function(){return b.apply?b.apply(o,this,i(arguments)):o.apply(this,arguments)},f(h,d)),n.get(h.after).install(e,h,(function(r,t){var n,o=[];r.length||t.length?(r.forEach(f),n=o.push(void 0)-1,t.forEach(f),y=function(r,t,f){var u,a=0,c="async"===e&&"function"==typeof f[f.length-1]&&f.pop();function l(r){"sync"===e?u=r:c&&c.apply(null,arguments)}function p(r){if(o[a]){var n=i(arguments);return p.bail=l,n.unshift(p),o[a++].apply(t,n)}"sync"===e?u=r:c&&c.apply(null,arguments)}return o[n]=function(){var n=i(arguments,1);"async"===e&&c&&(delete p.bail,n.push(p));var o=r.apply(t,n);"sync"===e&&p(o)},p.apply(null,f),u}):y=void 0;function f(r){o.push(r.hook)}g()})),h;function g(){!a&&("sync"!==e||r.ready&u.SYNC)&&("async"!==e||r.ready&u.ASYNC)?"sync"!==e&&r.ready&u.QUEUE?b.apply=function(){var r=arguments;l.push((function(){h.apply(r[1],r[2])}))}:b.apply=function(){throw t+": hooked function not ready"}:b.apply=y}}return(r=f({},e,r)).ready?p.ready=function(){a=!0,function(r){for(var t;t=r.shift();)t()}(l)}:a=!0,p.get=s,p}r.exports=u},3172:(r,t,e)=>{function n(r,t,e){t.split&&(t=t.split("."));for(var n,o,i=0,f=t.length,u=r;i<f&&"__proto__"!=(o=""+t[i++])&&"constructor"!==o&&"prototype"!==o;)u=u[o]=i===f?e:typeof(n=u[o])==typeof t?n:0*t[i]!=0||~(""+t[i]).indexOf(".")?{}:[]}e.d(t,{J:()=>n})},5751:(r,t,e)=>{function n(r){var t,e,o;if(Array.isArray(r)){for(e=Array(t=r.length);t--;)e[t]=(o=r[t])&&"object"==typeof o?n(o):o;return e}if("[object Object]"===Object.prototype.toString.call(r)){for(t in e={},r)"__proto__"===t?Object.defineProperty(e,t,{value:n(r[t]),configurable:!0,enumerable:!0,writable:!0}):e[t]=(o=r[t])&&"object"==typeof o?n(o):o;return e}return r}e.d(t,{Q:()=>n})}},e={};function n(r){var o=e[r];if(void 0!==o)return o.exports;var i=e[r]={exports:{}};return t[r](i,i.exports,n),i.exports}n.m=t,r=[],n.O=(t,e,o,i)=>{if(!e){var f=1/0;for(l=0;l<r.length;l++){e=r[l][0],o=r[l][1],i=r[l][2];for(var u=!0,a=0;a<e.length;a++)(!1&i||f>=i)&&Object.keys(n.O).every((r=>n.O[r](e[a])))?e.splice(a--,1):(u=!1,i<f&&(f=i));if(u){r.splice(l--,1);var c=o();void 0!==c&&(t=c)}}return t}i=i||0;for(var l=r.length;l>0&&r[l-1][2]>i;l--)r[l]=r[l-1];r[l]=[e,o,i]},n.n=r=>{var t=r&&r.__esModule?()=>r.default:()=>r;return n.d(t,{a:t}),t},n.d=(r,t)=>{for(var e in t)n.o(t,e)&&!n.o(r,e)&&Object.defineProperty(r,e,{enumerable:!0,get:t[e]})},n.o=(r,t)=>Object.prototype.hasOwnProperty.call(r,t),(()=>{var r={673:0};n.O.j=t=>0===r[t];var t=(t,e)=>{var o,i,f=e[0],u=e[1],a=e[2],c=0;if(f.some((t=>0!==r[t]))){for(o in u)n.o(u,o)&&(n.m[o]=u[o]);if(a)var l=a(n)}for(t&&t(e);c<f.length;c++)i=f[c],n.o(r,i)&&r[i]&&r[i][0](),r[i]=0;return n.O(l)},e=self.tlpbjsChunk=self.tlpbjsChunk||[];e.forEach(t.bind(null,0)),e.push=t.bind(null,e.push.bind(e))})();var o=n.O(void 0,[802,85],(()=>n(7804)));o=n.O(o)})();
(self.tlpbjsChunk=self.tlpbjsChunk||[]).push([[802],{5789:(e,t,n)=>{n.d(t,{A4:()=>u,J7:()=>f,Pg:()=>g});var i=n(1580),r=n(1069),o=n(433),s=n(5901),a=n(7873),d=n(5569);const c=(0,a.m)(),l="outstream";function u(e){const{url:t,config:n,id:a,callback:u,loaded:f,adUnitCode:g,renderNow:p}=e;this.url=t,this.config=n,this.handlers={},this.id=a,this.renderNow=p,this.loaded=f,this.cmd=[],this.push=e=>{"function"==typeof e?this.loaded?e.call():this.cmd.push(e):(0,r.vV)("Commands given to Renderer.push must be wrapped in a function")},this.callback=u||(()=>{this.loaded=!0,this.process()}),this.render=function(){const e=arguments,n=()=>{this._render?this._render.apply(this,e):(0,r.JE)("No render function was provided, please use .setRender on the renderer")};!function(e){const t=c.adUnits,n=(0,s.I6)(t,(t=>t.code===e));if(!n)return!1;const i=(0,o.A)(n,"renderer"),r=!!(i&&i.url&&i.render),a=(0,o.A)(n,"mediaTypes.video.renderer"),d=!!(a&&a.url&&a.render);return!!(r&&!0!==i.backupOnly||d&&!0!==a.backupOnly)}(g)?p?n():(this.cmd.unshift(n),(0,i.R)(t,d.tp,l,this.callback,this.documentContext)):((0,r.JE)(`External Js not loaded by Renderer since renderer url and callback is already defined on adUnit ${g}`),n())}.bind(this)}function f(e){return!(!e||!e.url&&!e.renderNow)}function g(e,t,n){let i=null;e.config&&e.config.documentResolver&&(i=e.config.documentResolver(t,document,n)),i||(i=document),e.documentContext=i,e.render(t,e.documentContext)}u.install=function(e){let{url:t,config:n,id:i,callback:r,loaded:o,adUnitCode:s,renderNow:a}=e;return new u({url:t,config:n,id:i,callback:r,loaded:o,adUnitCode:s,renderNow:a})},u.prototype.getConfig=function(){return this.config},u.prototype.setRender=function(e){this._render=e},u.prototype.setEventHandlers=function(e){this.handlers=e},u.prototype.handleVideoEvent=function(e){let{id:t,eventName:n}=e;"function"==typeof this.handlers[n]&&this.handlers[n](),(0,r.OG)(`Prebid Renderer event for id ${t} type ${n}`)},u.prototype.process=function(){for(;this.cmd.length>0;)try{this.cmd.shift().call()}catch(e){(0,r.vV)("Error processing Renderer command: ",e)}}},6811:(e,t,n)=>{n.d(t,{DL:()=>d,Ml:()=>r,Ue:()=>i,VJ:()=>l,hE:()=>c,hq:()=>a,mo:()=>s,pY:()=>u,uc:()=>o});const i="accessDevice",r="syncUser",o="fetchBids",s="reportAnalytics",a="transmitEids",d="transmitUfpd",c="transmitPreciseGeo",l="transmitTid",u="loadExternalScript"},3441:(e,t,n)=>{n.d(t,{s:()=>r});var i=n(1445);const r=(0,n(2604).ZI)((e=>i.Ay.resolveAlias(e)))},5569:(e,t,n)=>{n.d(t,{Tn:()=>o,tW:()=>r,tp:()=>i});const i="prebid",r="bidder",o="analytics"},2604:(e,t,n)=>{n.d(t,{Dk:()=>s,Ii:()=>o,TQ:()=>g,U3:()=>h,XG:()=>l,ZI:()=>p,Zw:()=>c,bt:()=>u,e3:()=>f,iK:()=>a,q7:()=>d});var i=n(5569),r=n(9214);const o="component",s=o+"Type",a=o+"Name",d="adapterCode",c="storageType",l="configName",u="syncType",f="syncUrl",g="_config";function p(e){return function(t,n,r){const c={[s]:t,[a]:n,[o]:`${t}.${n}`};return t===i.tW&&(c[d]=e(n)),h(Object.assign(c,r))}}const h=(0,r.A_)("sync",(e=>e))},6953:(e,t,n)=>{n.d(t,{$p:()=>m});var i=n(433),r=n(3272),o=n(5139),s=n(6811);const a=["data","ext.data","yob","gender","keywords","kwarray","id","buyeruid","customdata"].map((e=>`user.${e}`)).concat("device.ext.cdep"),d=["user.eids","user.ext.eids"],c=["user.geo.lat","user.geo.lon","device.geo.lat","device.geo.lon"],l=["device.ip"],u=["device.ipv6"];function f(e){return Object.assign({get(){},run(e,t,n,i,r){const o=n&&n[i];if(function(e){return null!=e&&("object"!=typeof e||Object.keys(e).length>0)}(o)&&r()){const e=this.get(o);void 0===e?delete n[i]:n[i]=e}}},e)}function g(e){return e.forEach((e=>{e.paths=e.paths.map((e=>{const t=e.split("."),n=t.pop();return[t.length>0?t.join("."):null,n]}))})),function(t,n){const r=[];for(var o=arguments.length,s=new Array(o>2?o-2:0),a=2;a<o;a++)s[a-2]=arguments[a];const d=function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return function(t){return e.hasOwnProperty(t.name)||(e[t.name]=!!t.applies(...n)),e[t.name]}}(t,...s);return e.forEach((e=>{if(!1!==t[e.name])for(const[o,s]of e.paths){const a=null==o?n:(0,i.A)(n,o);if(r.push(e.run(n,o,a,s,d.bind(null,e))),!1===t[e.name])return}})),r.filter((e=>null!=e))}}function p(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o.io;return function(n){return!t(e,n)}}function h(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;return[{name:s.DL,paths:a,applies:p(s.DL,e)},{name:s.hq,paths:d,applies:p(s.hq,e)},{name:s.hE,paths:c,applies:p(s.hE,e),get:e=>Math.round(100*(e+Number.EPSILON))/100},{name:s.hE,paths:l,applies:p(s.hE,e),get:e=>function(e){if(!e)return null;let t=e.split(".").map(Number);if(4!=t.length)return null;let n=[];for(let e=0;e<4;e++){let t=Math.max(0,Math.min(8,24-8*e));n.push(255<<8-t&255)}return t.map(((e,t)=>e&n[t])).join(".")}(e)},{name:s.hE,paths:u,applies:p(s.hE,e),get:e=>function(e){if(!e)return null;let t=e.split(":").map((e=>parseInt(e,16)));for(t=t.map((e=>isNaN(e)?0:e));t.length<8;)t.push(0);if(8!=t.length)return null;let n=[];for(let e=0;e<8;e++){let t=Math.max(0,Math.min(16,64-16*e));n.push(65535<<16-t&65535)}return t.map(((e,t)=>e&n[t])).map((e=>e.toString(16))).join(":")}(e)},{name:s.VJ,paths:["source.tid"],applies:p(s.VJ,e)}].map(f)}const m=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;const t=g(h(e)),n=g(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;return[{name:s.hq,paths:["userId","userIdAsEids"],applies:p(s.hq,e)},{name:s.VJ,paths:["ortb2Imp.ext.tid"],applies:p(s.VJ,e)}].map(f)}(e));return function(e){const i={};return{ortb2:n=>(t(i,n,e),n),bidRequest:t=>(n(i,t,e),t)}}}();(0,o.qB)(s.VJ,"enableTIDs config",(()=>{if(!r.$W.getConfig("enableTIDs"))return{allow:!1,reason:"TIDs are disabled"}}))},5139:(e,t,n)=>{n.d(t,{io:()=>s,qB:()=>o});var i=n(1069),r=n(2604);const[o,s]=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(0,i.h0)("Activity control:");const t={};function n(e){return t[e]=t[e]||[]}function o(t,n,i,o){let s;try{s=i(o)}catch(i){e.logError(`Exception in rule ${n} for '${t}'`,i),s={allow:!1,reason:i}}return s&&Object.assign({activity:t,name:n,component:o[r.Ii]},s)}const s={};function a(t){let{activity:n,name:i,allow:r,reason:o,component:a}=t;const d=`${i} ${r?"allowed":"denied"} '${n}' for '${a}'${o?":":""}`,c=s.hasOwnProperty(d);if(c&&clearTimeout(s[d]),s[d]=setTimeout((()=>delete s[d]),1e3),!c){const t=[d];o&&t.push(o),(r?e.logInfo:e.logWarn).apply(e,t)}}return[function(e,t,i){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:10;const o=n(e),s=o.findIndex((e=>{let[t]=e;return r<t})),a=[r,t,i];return o.splice(s<0?o.length:s,0,a),function(){const e=o.indexOf(a);e>=0&&o.splice(e,1)}},function(e,t){let i,r;for(const[s,d,c]of n(e)){if(i!==s&&r)break;i=s;const n=o(e,d,c,t);if(n){if(!n.allow)return a(n),!1;r=n}}return r&&a(r),!0}]}()},9075:(e,t,n)=>{n.d(t,{$A:()=>I,BS:()=>N,Hh:()=>j,Pk:()=>q,Uc:()=>B,XO:()=>P,bw:()=>D,qn:()=>U,vB:()=>x,vW:()=>O,vd:()=>R});var i=n(1069),r=n(433),o=n(5023),s=n(8969),a=n(3272),d=n(5789),c=n(1371),l=n(6881),u=n(6031),f=n(9214),g=n(2449),p=n(5555),h=n(1445),m=n(6894);const{AD_RENDER_FAILED:b,AD_RENDER_SUCCEEDED:y,STALE_RENDER:v,BID_WON:E}=s.qY,{EXCEPTION:A}=s.as,I=(0,f.A_)("sync",(function(e){return(arguments.length>2&&void 0!==arguments[2]?arguments[2]:p.k.resolve()).then((t=>t??l.n.findBidByAdId(e))).catch((()=>{}))})),w=(0,f.A_)("sync",(function(e){o.Ic(E,e),l.n.addWinningBid(e)}));function T(e){let{reason:t,message:n,bid:r,id:s}=e;const a={reason:t,message:n};r&&(a.bid=r,a.adId=r.adId),s&&(a.adId=s),(0,i.vV)(`Error rendering ad (id: ${s}): ${n}`),o.Ic(b,a)}function C(e){let{doc:t,bid:n,id:i}=e;const r={doc:t};n&&(r.bid=n),i&&(r.adId=i),h.Ay.callAdRenderSucceededBidder(n.adapterCode||n.bidder,n),o.Ic(y,r)}function B(e,t){switch(e.event){case s.qY.AD_RENDER_FAILED:T({bid:t,id:t.adId,reason:e.info.reason,message:e.info.message});break;case s.qY.AD_RENDER_SUCCEEDED:C({doc:null,bid:t,id:t.adId});break;default:(0,i.vV)(`Received event request for unsupported event: '${e.event}' (adId: '${t.adId}')`)}}function O(e,t,n){let{resizeFn:i,fireTrackers:r=g.vO}=n;if("resizeNativeHeight"===e.action)i(e.width,e.height);else r(e,t)}const k={[s.nl.EVENT]:B};k[s.nl.NATIVE]=O;const R=(0,f.A_)("sync",(function(e,t){const{ad:n,adUrl:r,cpm:o,originalCpm:s,width:a,height:d}=e,c={AUCTION_PRICE:s||o,CLICKTHROUGH:t?.clickUrl||""};return{ad:(0,i.gM)(n,c),adUrl:(0,i.gM)(r,c),width:a,height:d}})),S=(0,f.A_)("sync",(function(e){let{renderFn:t,resizeFn:n,bidResponse:i,options:r}=e;if(i.mediaType===c.G_)return void T({reason:s.as.PREVENT_WRITING_ON_MAIN_DOCUMENT,message:"Cannot render video ad",bid:i,id:i.adId});const o=R(i,r);t(Object.assign({adId:i.adId},o));const{width:a,height:d}=o;null!=(a??d)&&n(a,d)}));function D(e){let{renderFn:t,resizeFn:n,adId:d,options:c,bidResponse:l,doc:u}=e;j(l,(()=>{if(null!=l){if(l.status!==s.tl.RENDERED||((0,i.JE)(`Ad id ${d} has been rendered before`),o.Ic(v,l),!(0,r.A)(a.$W.getConfig("auctionOptions"),"suppressStaleRender")))try{S({renderFn:t,resizeFn:n,bidResponse:l,options:c,doc:u})}catch(e){T({reason:s.as.EXCEPTION,message:e.message,id:d,bid:l})}}else T({reason:s.as.CANNOT_FIND_AD,message:`Cannot find ad '${d}'`,id:d})}))}function U(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=s.tl.RENDERED}S.before((function(e,t){const{bidResponse:n,doc:i}=t;(0,d.J7)(n.renderer)?((0,d.Pg)(n.renderer,n,i),C({doc:i,bid:n,id:n.adId}),e.bail()):e(t)}),100);const _=new WeakMap,$=new WeakSet;function j(e,t){null!=e?(_.set(e,t),e.deferRendering||x(e),q(e)):t()}function q(e){$.has(e)||($.add(e),w(e))}function x(e){const t=_.get(e);t&&(t(),U(e),_.delete(e))}function N(e,t,n){let r;function o(e,n){T(Object.assign({id:t,bid:r},{reason:e,message:n}))}function a(t,n){e.defaultView&&e.defaultView.frameElement&&(t&&(e.defaultView.frameElement.width=t),n&&(e.defaultView.frameElement.height=n))}const d=(c={resizeFn:a},function(e,t,n){k.hasOwnProperty(e)&&k[e](t,n,c)});var c;function l(t){t.ad?(e.write(t.ad),e.close(),C({doc:e,bid:r,adId:r.adId})):(0,u.H)(r).then((n=>n(t,{sendMessage:(e,t)=>d(e,t,r),mkFrame:i.hw},e.defaultView))).then((()=>C({doc:e,bid:r,adId:r.adId})),(e=>{o(e?.reason||s.as.EXCEPTION,e?.message),e?.stack&&(0,i.vV)(e)}));const n=document.createComment(`Creative ${r.creativeId} served by ${r.bidder} Prebid.js Header Bidding`);(0,i._s)(n,e,"html")}try{t&&e?e!==document||(0,i.al)()?I(t).then((i=>{r=i,D({renderFn:l,resizeFn:a,adId:t,options:{clickUrl:n?.clickThrough},bidResponse:i,doc:e})})):o(s.as.PREVENT_WRITING_ON_MAIN_DOCUMENT,"renderAd was prevented from writing to the main document."):o(s.as.MISSING_DOC_OR_ADID,"missing "+(t?"doc":"adId"))}catch(e){o(A,e.message)}}function P(){if(!window.frames[s.IY])if(document.body){const e=(0,i.CA)();e.name=s.IY,document.body.appendChild(e)}else window.requestAnimationFrame(P)}},9759:(e,t,n)=>{function i(e){var t=e;return{callBids:function(){},setBidderCode:function(e){t=e},getBidderCode:function(){return t}}}n.d(t,{A:()=>i})},1445:(e,t,n)=>{n.d(t,{Ay:()=>H,pX:()=>W,K5:()=>q});var i=n(1069),r=n(433),o=n(2449),s=n(7377),a=n(8044),d=n(3272),c=n(9214),l=n(5901);let u={};function f(e,t,n){let i=function(e,t){let n=u[e]=u[e]||{bidders:{}};return t?n.bidders[t]=n.bidders[t]||{}:n}(e,n);return i[t]=(i[t]||0)+1,i[t]}function g(e){return u?.[e]?.requestsCounter||0}function p(e,t){return u?.[e]?.bidders?.[t]?.requestsCounter||0}function h(e,t){return u?.[e]?.bidders?.[t]?.winsCounter||0}var m=n(7934),b=n(6916),y=n(5023),v=n(8969),E=n(6894),A=n(6881),I=n(5569),w=n(5139),T=n(6811),C=n(2604),B=n(6953);const O="pbsBidAdapter",k={CLIENT:"client",SERVER:"server"},R={isAllowed:w.io,redact:B.$p};let S={},D=S.bidderRegistry={},U=S.aliasRegistry={},_=[];d.$W.getConfig("s2sConfig",(e=>{e&&e.s2sConfig&&(_=(0,i.cy)(e.s2sConfig)?e.s2sConfig:[e.s2sConfig])}));var $={};const j=(0,C.ZI)((e=>S.resolveAlias(e)));function q(e){return j(I.tp,O,{[C.XG]:e.configName})}const x=(0,c.A_)("sync",(function(e){let{bidderCode:t,auctionId:n,bidderRequestId:o,adUnits:s,src:a,metrics:d}=e;return s.reduce(((e,s)=>{const c=s.bids.filter((e=>e.bidder===t));return null==t&&0===c.length&&null!=s.s2sBid&&c.push({bidder:null}),e.push(c.reduce(((e,c)=>{const l=null==(c=Object.assign({},c,{ortb2Imp:(0,i.D9)({},s.ortb2Imp,c.ortb2Imp)},(0,i.SH)(s,["nativeParams","nativeOrtbRequest","mediaType","renderer"]))).mediaTypes?s.mediaTypes:c.mediaTypes;return(0,i.wD)(l)?c=Object.assign({},c,{mediaTypes:l}):(0,i.vV)(`mediaTypes is not correctly configured for adunit ${s.code}`),"client"===a&&function(e,t){f(e,"requestsCounter",t)}(s.code,t),e.push(Object.assign({},c,{adUnitCode:s.code,transactionId:s.transactionId,adUnitId:s.adUnitId,sizes:(0,r.A)(l,"banner.sizes")||(0,r.A)(l,"video.playerSize")||[],bidId:c.bid_id||(0,i.s0)(),bidderRequestId:o,auctionId:n,src:a,metrics:d,bidRequestsCount:g(s.code),bidderRequestsCount:p(s.code,c.bidder),bidderWinsCount:h(s.code,c.bidder),deferBilling:!!s.deferBilling})),e}),[])),e}),[]).reduce(i.Bq,[]).filter((e=>""!==e))}),"getBids");const N=(0,c.A_)("sync",(function(e,t){let{getS2SBidders:n=W}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null==t)return e;{const i=n(t);return e.filter((e=>i.has(e.bidder)))}}),"filterBidsForAdUnit");const P=(0,c.A_)("sync",((e,t)=>e),"setupAdUnitMediaTypes");function W(e){(0,i.cy)(e)||(e=[e]);const t=new Set([null]);return e.filter((e=>e&&e.enabled)).flatMap((e=>e.bidders)).forEach((e=>t.add(e))),t}const V=(0,c.A_)("sync",(function(e,t){let{getS2SBidders:n=W}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=n(t);return(0,i.ZA)(e).reduce(((e,t)=>(e[r.has(t)?k.SERVER:k.CLIENT].push(t),e)),{[k.CLIENT]:[],[k.SERVER]:[]})}),"partitionBidders");function M(e,t){const n=D[e],i=n?.getSpec&&n.getSpec();if(i&&i[t]&&"function"==typeof i[t])return[i,i[t]]}function G(e,t,n,r){try{(0,i.fH)(`Invoking ${e}.${t}`);for(var o=arguments.length,s=new Array(o>4?o-4:0),a=4;a<o;a++)s[a-4]=arguments[a];d.$W.runWithBidder(e,r.bind(n,...s))}catch(n){(0,i.JE)(`Error calling ${t} of ${e}`)}}function F(e,t,n){if(n?.source!==v.RW.SRC){const i=M(e,t);null!=i&&G(e,t,...i,n)}}S.makeBidRequests=(0,c.A_)("sync",(function(e,t,n,r,s){let a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},c=arguments.length>6?arguments[6]:void 0;c=(0,E.BO)(c),y.Ic(v.qY.BEFORE_REQUEST_BIDS,e),(0,o.nk)(e),e.forEach((e=>{(0,i.Qd)(e.mediaTypes)||(e.mediaTypes={}),e.bids=e.bids.filter((e=>!e.bidder||R.isAllowed(T.uc,j(I.tW,e.bidder)))),f(e.code,"requestsCounter")})),e=P(e,s);let{[k.CLIENT]:u,[k.SERVER]:g}=V(e,_);d.$W.getConfig("bidderSequence")===d.Ov&&(u=(0,i.k4)(u));const p=(0,m.EN)();let h=[];const A=a.global||{},w=a.bidder||{};function C(e,t){const r=R.redact(null!=t?t:j(I.tW,e.bidderCode)),o=Object.freeze(r.ortb2((0,i.D9)({source:{tid:n}},A,w[e.bidderCode])));return e.ortb2=o,e.bids=e.bids.map((e=>(e.ortb2=o,r.bidRequest(e)))),e}_.forEach((r=>{const o=q(r);if(r&&r.enabled&&R.isAllowed(T.uc,o)){let{adUnits:s,hasModuleBids:a}=function(e,t){let n=(0,i.Go)(e),r=!1;return n.forEach((e=>{const n=e.bids.filter((e=>e.module===O&&e.params?.configName===t.configName));1===n.length?(e.s2sBid=n[0],r=!0,e.ortb2Imp=(0,i.D9)({},e.s2sBid.ortb2Imp,e.ortb2Imp)):n.length>1&&(0,i.JE)('Multiple "module" bids for the same s2s configuration; all will be ignored',n),e.bids=N(e.bids,t).map((e=>(e.bid_id=(0,i.s0)(),e)))})),n=n.filter((e=>0!==e.bids.length||null!=e.s2sBid)),{adUnits:n,hasModuleBids:r}}(e,r),d=(0,i.lk)();(0===g.length&&a?[null]:g).forEach((e=>{const a=(0,i.s0)(),l=c.fork(),u=C({bidderCode:e,auctionId:n,bidderRequestId:a,uniquePbsTid:d,bids:x({bidderCode:e,auctionId:n,bidderRequestId:a,adUnits:(0,i.Go)(s),src:v.RW.SRC,metrics:l}),auctionStart:t,timeout:r.timeout,src:v.RW.SRC,refererInfo:p,metrics:l},o);0!==u.bids.length&&h.push(u)})),s.forEach((e=>{let t=e.bids.filter((e=>(0,l.I6)(h,(t=>(0,l.I6)(t.bids,(t=>t.bidId===e.bid_id))))));e.bids=t})),h.forEach((e=>{void 0===e.adUnitsS2SCopy&&(e.adUnitsS2SCopy=s.filter((e=>e.bids.length>0||null!=e.s2sBid)))}))}}));let B=function(e){let t=(0,i.Go)(e);return t.forEach((e=>{e.bids=N(e.bids,null)})),t=t.filter((e=>0!==e.bids.length)),t}(e);return u.forEach((e=>{const o=(0,i.s0)(),a=c.fork(),d=C({bidderCode:e,auctionId:n,bidderRequestId:o,bids:x({bidderCode:e,auctionId:n,bidderRequestId:o,adUnits:(0,i.Go)(B),labels:s,src:"client",metrics:a}),auctionStart:t,timeout:r,refererInfo:p,metrics:a}),l=D[e];l||(0,i.vV)(`Trying to make a request for bidder that does not exist: ${e}`),l&&d.bids&&0!==d.bids.length&&h.push(d)})),h.forEach((e=>{b.mW.getConsentData()&&(e.gdprConsent=b.mW.getConsentData()),b.t6.getConsentData()&&(e.uspConsent=b.t6.getConsentData()),b.ad.getConsentData()&&(e.gppConsent=b.ad.getConsentData())})),h}),"makeBidRequests"),S.callBids=function(e,t,n,r,o,s,c){let l=arguments.length>7&&void 0!==arguments[7]?arguments[7]:{};if(!t.length)return void(0,i.JE)("callBids executed with no bidRequests. Were they filtered by labels or sizing?");let[u,f]=t.reduce(((e,t)=>(e[Number(void 0!==t.src&&t.src===v.RW.SRC)].push(t),e)),[[],[]]);var g=[];f.forEach((e=>{for(var t=-1,n=0;n<g.length;++n)if(e.uniquePbsTid===g[n].uniquePbsTid){t=n;break}t<=-1&&g.push(e)}));let p=0;_.forEach((e=>{if(e&&g[p]&&W(e).has(g[p].bidderCode)){const t=(0,a.g4)(s,o?{request:o.request.bind(null,"s2s"),done:o.done}:void 0);let d=e.bidders;const u=D[e.adapter];let h=g[p].uniquePbsTid,m=g[p].adUnitsS2SCopy,b=f.filter((e=>e.uniquePbsTid===h));if(u){let o={ad_units:m,s2sConfig:e,ortb2Fragments:l,requestBidsTimeout:s};if(o.ad_units.length){let e=b.map((e=>(e.start=(0,i.vE)(),function(t){t||c(e.bidderRequestId),r.apply(e,arguments)})));const s=(0,i.ZA)(o.ad_units).filter((e=>d.includes(e)));(0,i.OG)(`CALLING S2S HEADER BIDDERS ==== ${s.length>0?s.join(", "):'No bidder specified, using "ortb2Imp" definition(s) only'}`),b.forEach((e=>{y.Ic(v.qY.BID_REQUESTED,{...e,tid:e.auctionId})})),u.callBids(o,f,n,(t=>e.forEach((e=>e(t)))),t)}}else(0,i.vV)("missing "+e.adapter);p++}})),u.forEach((e=>{e.start=(0,i.vE)();const t=D[e.bidderCode];d.$W.runWithBidder(e.bidderCode,(()=>{(0,i.OG)("CALLING BIDDER"),y.Ic(v.qY.BID_REQUESTED,e)}));let l=(0,a.g4)(s,o?{request:o.request.bind(null,e.bidderCode),done:o.done}:void 0);const u=r.bind(e);try{d.$W.runWithBidder(e.bidderCode,t.callBids.bind(t,e,n,u,l,(()=>c(e.bidderRequestId)),d.$W.callbackWithBidder(e.bidderCode)))}catch(t){(0,i.vV)(`${e.bidderCode} Bid Adapter emitted an uncaught error when parsing their bidRequest`,{e:t,bidRequest:e}),u()}}))},S.videoAdapters=[],S.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),(0,l.mK)(n,"video")&&S.videoAdapters.push(t),(0,l.mK)(n,"native")&&o.mT.push(t)):(0,i.vV)("Bidder adaptor error for bidder code: "+t+"bidder must implement a callBids() function"):(0,i.vV)("bidAdapter or bidderCode not specified")},S.aliasBidAdapter=function(e,t,n){if(void 0===D[t]){let r=D[e];if(void 0===r){const n=[];_.forEach((i=>{if(i.bidders&&i.bidders.length){const r=i&&i.bidders;i&&(0,l.mK)(r,t)?U[t]=e:n.push(e)}})),n.forEach((e=>{(0,i.vV)('bidderCode "'+e+'" is not an existing bidder.',"adapterManager.aliasBidAdapter")}))}else try{let a,d=function(e){let t=[];return(0,l.mK)(S.videoAdapters,e)&&t.push("video"),(0,l.mK)(o.mT,e)&&t.push("native"),t}(e);if(r.constructor.prototype!=Object.prototype)a=new r.constructor,a.setBidderCode(t);else{const{useBaseGvlid:o=!1}=n||{};let d=r.getSpec();const c=o?d.gvlid:n?.gvlid;null==c&&null!=d.gvlid&&(0,i.JE)(`Alias '${t}' will NOT re-use the GVL ID of the original adapter ('${d.code}', gvlid: ${d.gvlid}). Functionality that requires TCF consent may not work as expected.`);let l=n&&n.skipPbsAliasing;a=(0,s.xb)(Object.assign({},d,{code:t,gvlid:c,skipPbsAliasing:l})),U[t]=e}S.registerBidAdapter(a,t,{supportedMediaTypes:d})}catch(t){(0,i.vV)(e+" bidder does not currently support aliasing.","adapterManager.aliasBidAdapter")}}else(0,i.OG)('alias name "'+t+'" has been already specified.')},S.resolveAlias=function(e){let t,n=e;for(;U[n]&&(!t||!t.has(n));)n=U[n],(t=t||new Set).add(n);return n},S.registerAnalyticsAdapter=function(e){let{adapter:t,code:n,gvlid:r}=e;t&&n?"function"==typeof t.enableAnalytics?(t.code=n,$[n]={adapter:t,gvlid:r},b.o2.register(I.Tn,n,r)):(0,i.vV)(`Prebid Error: Analytics adaptor error for analytics "${n}"\n analytics adapter must implement an enableAnalytics() function`):(0,i.vV)("Prebid Error: analyticsAdapter or analyticsCode not specified")},S.enableAnalytics=function(e){(0,i.cy)(e)||(e=[e]),e.forEach((e=>{const t=$[e.provider];t&&t.adapter?R.isAllowed(T.mo,j(I.Tn,e.provider,{[C.TQ]:e}))&&t.adapter.enableAnalytics(e):(0,i.vV)(`Prebid Error: no analytics adapter found in registry for '${e.provider}'.`)}))},S.getBidAdapter=function(e){return D[e]},S.getAnalyticsAdapter=function(e){return $[e]},S.callTimedOutBidders=function(e,t,n){t=t.map((t=>(t.params=(0,i.SB)(e,t.adUnitCode,t.bidder),t.timeout=n,t))),t=(0,i.$z)(t,"bidder"),Object.keys(t).forEach((e=>{F(e,"onTimeout",t[e])}))},S.callBidWonBidder=function(e,t,n){var r,o;t.params=(0,i.SB)(n,t.adUnitCode,t.bidder),r=t.adUnitCode,o=t.bidder,f(r,"winsCounter",o),F(e,"onBidWon",t)},S.triggerBilling=(()=>{const e=new WeakSet;return t=>{e.has(t)||(e.add(t),t.source===v.RW.SRC&&t.burl&&i.mM.triggerPixel(t.burl),F(t.bidder,"onBidBillable",t))}})(),S.callSetTargetingBidder=function(e,t){F(e,"onSetTargeting",t)},S.callBidViewableBidder=function(e,t){F(e,"onBidViewable",t)},S.callBidderError=function(e,t,n){F(e,"onBidderError",{error:t,bidderRequest:n})},S.callAdRenderSucceededBidder=function(e,t){F(e,"onAdRenderSucceeded",t)},S.callDataDeletionRequest=(0,c.A_)("sync",(function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];const r="onDataDeletionRequest";Object.keys(D).filter((e=>!U.hasOwnProperty(e))).forEach((e=>{const n=M(e,r);if(null!=n){const i=A.n.getBidsRequested().filter((t=>function(e){const t=new Set;for(;U.hasOwnProperty(e)&&!t.has(e);)t.add(e),e=U[e];return e}(t.bidderCode)===e));G(e,r,...n,i,...t)}})),Object.entries($).forEach((e=>{let[n,o]=e;const s=o?.adapter?.[r];if("function"==typeof s)try{s.apply(o.adapter,t)}catch(e){(0,i.vV)(`error calling ${r} of ${n}`,e)}}))}));const H=S},7377:(e,t,n)=>{n.d(t,{JN:()=>R,fn:()=>S,xb:()=>C});var i=n(9759),r=n(1445),o=n(3272),s=n(3597),a=n(8230),d=n(2449),c=n(3895),l=n(8969),u=n(5023),f=n(5901),g=n(1069),p=n(9214),h=n(6881),m=n(2693),b=n(6894),y=n(5139),v=n(3441),E=n(5569),A=n(6811);const I=["cpm","ttl","creativeId","netRevenue","currency"],w=["auctionId","transactionId"];const T=(0,g.Bj)((e=>{let{bidderCode:t}=e;if((0,y.io)(A.VJ,(0,v.s)(E.tW,t)))return{bidRequest:e=>e,bidderRequest:e=>e};function n(e,t,n){return w.includes(t)?null:Reflect.get(e,t,n)}function i(e,t){const n=new Proxy(e,t);return Object.entries(e).filter((e=>{let[t,n]=e;return"function"==typeof n})).forEach((t=>{let[i,r]=t;return n[i]=r.bind(e)})),n}const r=(0,g.Bj)((e=>i(e,{get:n})),(e=>e.bidId));return{bidRequest:r,bidderRequest:e=>i(e,{get:(t,i,o)=>"bids"===i?e.bids.map(r):n(t,i,o)})}}));function C(e){return Object.assign(new i.A(e.code),{getSpec:function(){return Object.freeze(Object.assign({},e))},registerSyncs:t,callBids:function(n,i,a,d,c,f){if(!Array.isArray(n.bids))return;const p=T(n),h={};const y=[];function v(){a(),o.$W.runWithBidder(e.code,(()=>{u.Ic(l.qY.BIDDER_DONE,n),t(y,n.gdprConsent,n.uspConsent,n.gppConsent)}))}const E=D(n).measureTime("validate",(()=>n.bids.filter((t=>function(t){if(!e.isBidRequestValid(t))return(0,g.JE)(`Invalid bid sent to bidder ${e.code}: ${JSON.stringify(t)}`),!1;return!0}(p.bidRequest(t))))));if(0===E.length)return void v();const A={};E.forEach((e=>{A[e.bidId]=e,e.adUnitCode||(e.adUnitCode=e.placementCode)})),O(e,E,n,d,f,{onRequest:e=>u.Ic(l.qY.BEFORE_BIDDER_HTTP,n,e),onResponse:t=>{c(e.code),y.push(t)},onPaapi:e=>{const t=A[e.bidId];t?R(t,e):(0,g.JE)("Received fledge auction configuration for an unknown bidId",e)},onError:(t,i)=>{i.timedOut||c(e.code),r.Ay.callBidderError(e.code,i,n),u.Ic(l.qY.BIDDER_ERROR,{error:i,bidderRequest:n}),(0,g.vV)(`Server call for ${e.code} failed: ${t} ${i.status}. Continuing without bids.`)},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,i=m.u.get(t,"allowedAlternateBidderCodes");if(e&&t&&t!==e&&(i=(0,g.cy)(i)?i.map((e=>e.trim().toLowerCase())).filter((e=>!!e)).filter(g.hj):i,!n||(0,g.cy)(i)&&"*"!==i[0]&&!i.includes(e)))return!0;return!1}(t.bidderCode,n.bidder))return(0,g.JE)(`${t.bidderCode} is not a registered partner or known bidder of ${n.bidder}, hence continuing without bid. If you wish to support this bidder, please mark allowAlternateBidderCodes as true in bidderSettings.`),void i.reject(n.adUnitCode,t,l.Tf.BIDDER_DISALLOWED);t.originalCpm=t.cpm,t.originalCurrency=t.currency,t.meta=t.meta||Object.assign({},t[n.bidder]),t.deferBilling=n.deferBilling,t.deferRendering=t.deferBilling&&(t.deferRendering??"function"!=typeof e.onBidBillable);const r=Object.assign((0,s.O)(l.XQ.GOOD,n),t,(0,g.Up)(n,w));!function(e,t){const n=(0,b.BO)(t.metrics);n.checkpoint("addBidResponse"),h[e]=!0,n.measureTime("addBidResponse.validate",(()=>S(e,t)))?i(e,t):i.reject(e,t,l.Tf.INVALID)}(n.adUnitCode,r)}else(0,g.JE)(`Bidder ${e.code} made bid for unknown request ID: ${t.requestId}. Ignoring.`),i.reject(null,t,l.Tf.INVALID_REQUEST_ID)},onCompletion:v})}});function t(t,n,i,r){k(e,t,n,i,r)}}const B=["bids","paapi"],O=(0,p.A_)("sync",(function(e,t,n,i,r,o){let{onRequest:s,onResponse:a,onPaapi:d,onError:c,onBid:l,onCompletion:u}=o;const f=D(n);u=f.startTiming("total").stopBefore(u);const p=T(n);let h=f.measureTime("buildRequests",(()=>e.buildRequests(t.map(p.bidRequest),p.bidderRequest(n))));if(!h||0===h.length)return void u();Array.isArray(h)||(h=[h]);const b=(0,g.U6)(u,h.length);h.forEach((t=>{const n=f.fork();function o(e){null!=e&&(e.metrics=n.fork().renameWith()),l(e)}const u=r((function(i,r){h();try{i=JSON.parse(i)}catch(e){}i={body:i,headers:{get:r.getResponseHeader.bind(r)}},a(i);try{i=n.measureTime("interpretResponse",(()=>e.interpretResponse(i,t)))}catch(t){return(0,g.vV)(`Bidder ${e.code} failed to interpret the server's response. Continuing without bids`,null,t),void b()}let s,c;i&&!Object.keys(i).some((e=>!B.includes(e)))?(s=i.bids,c=i.paapi):s=i,(0,g.cy)(c)&&c.forEach(d),s&&((0,g.cy)(s)?s.forEach(o):o(s)),b()})),p=r((function(e,t){h(),c(e,t),b()}));s(t);const h=n.startTiming("net");function I(n){const i=t.options;return Object.assign(n,i,{browsingTopics:!(i?.hasOwnProperty("browsingTopics")&&!i.browsingTopics)&&((m.u.get(e.code,"topicsHeader")??!0)&&(0,y.io)(A.DL,(0,v.s)(E.tW,e.code)))})}switch(t.method){case"GET":i(`${t.url}${function(e){if(e)return`?${"object"==typeof e?(0,g.bL)(e):e}`;return""}(t.data)}`,{success:u,error:p},void 0,I({method:"GET",withCredentials:!0}));break;case"POST":i(t.url,{success:u,error:p},"string"==typeof t.data?t.data:JSON.stringify(t.data),I({method:"POST",contentType:"text/plain",withCredentials:!0}));break;default:(0,g.JE)(`Skipping invalid request from ${e.code}. Request type ${t.type} must be GET or POST`),b()}}))}),"processBidderRequests"),k=(0,p.A_)("async",(function(e,t,n,i,s){const d=o.$W.getConfig("userSync.aliasSyncEnabled");if(e.getUserSyncs&&(d||!r.Ay.aliasRegistry[e.code])){let r=o.$W.getConfig("userSync.filterSettings"),d=e.getUserSyncs({iframeEnabled:!(!r||!r.iframe&&!r.all),pixelEnabled:!(!r||!r.image&&!r.all)},t,n,i,s);d&&(Array.isArray(d)||(d=[d]),d.forEach((t=>{a.zt.registerSync(t.type,e.code,t.url)})),a.zt.bidderDone(e.code))}}),"registerSyncs"),R=(0,p.A_)("sync",((e,t)=>{}),"addPaapiConfig");function S(e,t){let{index:n=h.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};function i(e){return`Invalid bid from ${t.bidderCode}. Ignoring bid: ${e}`}return e?t?function(){let e=Object.keys(t);return I.every((n=>(0,f.mK)(e,n)&&!(0,f.mK)([void 0,null],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=h.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;const i=n.getBidRequest(t),r=n.getMediaTypes(t),o=i&&i.sizes||r&&r.banner&&r.banner.sizes,s=(0,g.kK)(o);if(1===s.length){const[e,n]=s[0].split("x");return t.width=parseInt(e,10),t.height=parseInt(n,10),!0}return!1}(e,t,{index:n}))||((0,g.vV)(i("Banner bids require a width and height")),!1):((0,g.vV)(i("Video bid does not have required vastUrl or renderer property")),!1):((0,g.vV)(i("Native bid missing some required properties.")),!1):((0,g.vV)(i(`Bidder ${t.bidderCode} is missing required params. Check http://prebid.org/dev-docs/bidder-adapter-1.html for list of params.`)),!1):((0,g.JE)(`Some adapter tried to add an undefined bid for ${e}.`),!1):((0,g.JE)("No adUnitCode was supplied to addBidResponse."),!1)}function D(e){return(0,b.BO)(e.metrics).renameWith((t=>[`adapter.client.${t}`,`adapters.client.${e.bidderCode}.${t}`]))}},1580:(e,t,n)=>{n.d(t,{R:()=>l});var i=n(6811),r=n(3441),o=n(5139),s=n(5901),a=n(1069);const d=new WeakMap,c=["debugging","outstream","improvedigital","showheroes-bs","aaxBlockmeter","adagio","adloox","akamaidap","arcspan","airgrid","browsi","brandmetrics","clean.io","humansecurity","confiant","contxtful","hadron","mediafilter","medianet","azerionedge","a1Media","geoedge","qortex","dynamicAdBoost","51Degrees","symitridap","wurfl","justtag","tncId","ftrackId","id5"];function l(e,t,n,l,u,f){if(!(0,o.io)(i.pY,(0,r.s)(t,n)))return;if(!n||!e)return void(0,a.vV)("cannot load external script without url and moduleCode");if(!(0,s.mK)(c,n))return void(0,a.vV)(`${n} not whitelisted for loading external JavaScript`);u||(u=document);const g=m(u,e);if(g)return l&&"function"==typeof l&&(g.loaded?l():g.callbacks.push(l)),g.tag;const p=d.get(u)||{},h={loaded:!1,tag:null,callbacks:[]};return p[e]=h,d.set(u,p),l&&"function"==typeof l&&h.callbacks.push(l),(0,a.JE)(`module ${n} is loading external JavaScript`),function(t,n,i,r){i||(i=document);var o=i.createElement("script");o.type="text/javascript",o.async=!0;const s=m(i,e);s&&(s.tag=o);o.readyState?o.onreadystatechange=function(){"loaded"!==o.readyState&&"complete"!==o.readyState||(o.onreadystatechange=null,n())}:o.onload=function(){n()};o.src=t,r&&(0,a.Bg)(o,r);return(0,a._s)(o,i),o}(e,(function(){h.loaded=!0;try{for(let e=0;e<h.callbacks.length;e++)h.callbacks[e]()}catch(e){(0,a.vV)("Error executing callback","adloader.js:loadExternalScript",e)}}),u,f);function m(e,t){const n=d.get(e);return n&&n[t]?n[t]:null}}},8044:(e,t,n)=>{n.d(t,{RD:()=>f,g4:()=>u});var i=n(3272),r=n(1069);const o={fetch:window.fetch.bind(window),makeRequest:(e,t)=>new Request(e,t),timeout(e,t){const n=new AbortController;let i=setTimeout((()=>{n.abort(),(0,r.vV)(`Request timeout after ${e}ms`,t),i=null}),e);return{signal:n.signal,done(){i&&clearTimeout(i)}}}},s="GET",a="POST",d="Content-Type";function c(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3e3,{request:t,done:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=(t,n)=>{let r;null==e||null!=n?.signal||i.$W.getConfig("disableAjaxTimeout")||(r=o.timeout(e,t),n=Object.assign({signal:r.signal},n));let s=o.fetch(t,n);return null!=r?.done&&(s=s.finally(r.done)),s};return null==t&&null==n||(r=(e=>function(i,r){const o=new URL(null==i?.url?i:i.url,document.location).origin;let s=e(i,r);return t&&t(o),n&&(s=s.finally((()=>n(o)))),s})(r)),r}function l(e,t){let{status:n,statusText:i="",headers:o,url:s}=e,a=0;function c(e){if(0===a)try{a=(new DOMParser).parseFromString(t,o?.get(d)?.split(";")?.[0])}catch(t){a=null,e&&e(t)}return a}return{readyState:XMLHttpRequest.DONE,status:n,statusText:i,responseText:t,response:t,responseType:"",responseURL:s,get responseXML(){return c(r.vV)},getResponseHeader:e=>o?.has(e)?o.get(e):null,toJSON(){return Object.assign({responseXML:c()},this)},timedOut:!1}}function u(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3e3,{request:t,done:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const i=c(e,{request:t,done:n});return function(e,t,n){!function(e,t){const{success:n,error:i}="object"==typeof t&&null!=t?t:{success:"function"==typeof t?t:()=>null,error:(e,t)=>(0,r.vV)("Network error",e,t)};e.then((e=>e.text().then((t=>[e,t])))).then((e=>{let[t,r]=e;const o=l(t,r);t.ok||304===t.status?n(r,o):i(t.statusText,o)}),(e=>i("",Object.assign(l({status:0},""),{reason:e,timedOut:"AbortError"===e?.name}))))}(i(function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const i=n.method||(t?a:s);if(i===s&&t){const i=(0,r.Dl)(e,n);Object.assign(i.search,t),e=(0,r.c$)(i)}const c=new Headers(n.customHeaders);c.set(d,n.contentType||"text/plain");const l={method:i,headers:c};return i!==s&&t&&(l.body=t),n.withCredentials&&(l.credentials="include"),n.browsingTopics&&isSecureContext&&(l.browsingTopics=!0),n.keepalive&&(l.keepalive=!0),o.makeRequest(e,l)}(e,n,arguments.length>3&&void 0!==arguments[3]?arguments[3]:{})),t)}}const f=u();c()},6881:(e,t,n)=>{n.d(t,{n:()=>oe});var i=n(1069),r=n(433),o=n(6833),s=n(2449),a=n(8044),d=n(3272);const c=15;function l(e){let{index:t=oe.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=e.vastXml?e.vastXml:(i=e.vastUrl,r=e.vastImpUrl,`<VAST version="3.0">\n <Ad>\n <Wrapper>\n <AdSystem>prebid.org wrapper</AdSystem>\n <VASTAdTagURI><![CDATA[${i}]]></VASTAdTagURI>\n ${(r=r&&(Array.isArray(r)?r:[r]))?r.map((e=>`<Impression><![CDATA[${e}]]></Impression>`)).join(""):""}\n <Creatives></Creatives>\n </Wrapper>\n </Ad>\n </VAST>`);var i,r;const o=t.getAuction(e);let s={type:"xml",value:n,ttlseconds:Number(e.ttl)+c};return d.$W.getConfig("cache.vasttrack")&&(s.bidder=e.bidder,s.bidid=e.requestId,s.aid=e.auctionId),null!=o&&(s.timestamp=o.getAuctionStart()),"string"==typeof e.customCacheKey&&""!==e.customCacheKey&&(s.key=e.customCacheKey),s}const u={store:function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:a.g4;const i={puts:e.map(l)};n(d.$W.getConfig("cache.timeout"))(d.$W.getConfig("cache.url"),function(e){return{success:function(t){let n;try{n=JSON.parse(t).responses}catch(t){return void e(t,[])}n?e(null,n):e(new Error("The cache server didn't respond with a responses property."),[])},error:function(t,n){e(new Error(`Error storing video ad in the cache: ${t}: ${JSON.stringify(n)}`),[])}}}(t),JSON.stringify(i),{contentType:"text/plain",withCredentials:!0})}};function f(e){const t=e.map((e=>e.bidResponse));u.store(t,(function(n,r){var o;n?(o=n,(0,i.vV)(`Failed to save to the video cache: ${o}. Video bids will be discarded:`,t)):e.length!==r.length?(0,i.vV)(`expected ${e.length} cache IDs, got ${r.length} instead`):r.forEach(((t,n)=>{const{auctionInstance:r,bidResponse:o,afterBidAdded:s}=e[n];var a;""===t.uuid?(0,i.JE)("Supplied video cache key was already in use by Prebid Cache; caching attempt was rejected. Video bid must be discarded."):(o.videoCacheKey=t.uuid,o.vastUrl||(o.vastUrl=(a=o.videoCacheKey,`${d.$W.getConfig("cache.url")}?uuid=${a}`)),G(r,o),s())}))}))}let g,p;d.$W.getConfig("cache",(e=>{g="number"==typeof e.cache.batchSize&&e.cache.batchSize>0?e.cache.batchSize:1,p="number"==typeof e.cache.batchTimeout&&e.cache.batchTimeout>0?e.cache.batchTimeout:0}));const h=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:setTimeout,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:f,n=[[]],i=!1;const r=e=>e();return function(o,s,a){const d=p>0?e:r;n[n.length-1].length>=g&&n.push([]),n[n.length-1].push({auctionInstance:o,bidResponse:s,afterBidAdded:a}),i||(i=!0,d((()=>{n.forEach(t),n=[[]],i=!1}),p))}}();var m=n(5789),b=n(8230),y=n(9214),v=n(5901),E=n(3895),A=n(1371),I=n(2693),w=n(5023),T=n(1445),C=n(8969),B=n(5555),O=n(6894);var k=n(7873);const{syncUsers:R}=b.zt,S="started",D="inProgress",U="completed";w.on(C.qY.BID_ADJUSTMENT,(function(e){!function(e){let t=function(e,t,n){let{index:r=oe.index,bs:o=I.u}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};n=n||r.getBidRequest(t);const s=t?.adapterCode,a=t?.bidderCode||n?.bidder,d=o.get(t?.adapterCode,"adjustAlternateBids"),c=o.getOwn(a,"bidCpmAdjustment")||o.get(d?s:a,"bidCpmAdjustment");if(c&&"function"==typeof c)try{return c(e,Object.assign({},t),n)}catch(e){(0,i.vV)("Error during bid adjustment",e)}return e}(e.cpm,e);t>=0&&(e.cpm=t)}(e)}));const _=4,$={},j={},q=[],x=(0,k.m)();function N(e){let{adUnits:t,adUnitCodes:n,callback:a,cbTimeout:c,labels:l,auctionId:u,ortb2Fragments:f,metrics:g}=e;g=(0,O.BO)(g);const p=t,h=l,b=n,y=u||(0,i.lk)(),I=c,k=new Set,N=(0,B.v)(),L=(0,B.v)();let z,J,K,Q,Y=[],X=a,Z=[],te=[],ne=[],ie=[],re=[];function se(){return{auctionId:y,timestamp:z,auctionEnd:J,auctionStatus:Q,adUnits:p,adUnitCodes:b,labels:h,bidderRequests:Z,noBids:ne,bidsReceived:te,bidsRejected:Y,winningBids:ie,timeout:I,metrics:g,seatNonBids:re}}function ae(e){if(e?w.Ic(C.qY.AUCTION_TIMEOUT,se()):clearTimeout(K),void 0===J){let n=[];e&&((0,i.OG)(`Auction ${y} timedOut`),n=Z.filter((e=>!k.has(e.bidderRequestId))).flatMap((e=>e.bids)),n.length&&w.Ic(C.qY.BID_TIMEOUT,n)),Q=U,J=Date.now(),g.checkpoint("auctionEnd"),g.timeBetween("requestBids","auctionEnd","requestBids.total"),g.timeBetween("callBids","auctionEnd","requestBids.callBids"),N.resolve(),w.Ic(C.qY.AUCTION_END,se()),M(p,(function(){try{if(null!=X){const t=te.filter((e=>b.includes(e.adUnitCode))).reduce(ee,{});X.apply(x,[t,e,y]),X=null}}catch(e){(0,i.vV)("Error executing bidsBackHandler",null,e)}finally{n.length&&T.Ay.callTimedOutBidders(t,n,I);let e=d.$W.getConfig("userSync")||{};e.enableOverride||R(e.syncDelay)}}))}}function de(){d.$W.resetBidder(),(0,i.fH)(`Bids Received for Auction with id: ${y}`,te),Q=U,ae(!1)}function ce(e){k.add(e)}function le(e){e.forEach((e=>{var t;t=e,Z=Z.concat(t)}));let t={},n={bidRequests:e,run:()=>{K=setTimeout((()=>ae(!0)),I),Q=D,w.Ic(C.qY.AUCTION_INIT,se());let n=function(e,t){let{index:n=oe.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=0,c=!1,l=new Set,u={};function f(){a--,c&&0===a&&e()}function g(e,t,n){return u[t.requestId]=!0,function(e,t){let{index:n=oe.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=n.getBidderRequest(e),o=n.getAdUnit(e),s=r&&r.start||e.requestTimestamp;Object.assign(e,{responseTimestamp:e.responseTimestamp||(0,i.vE)(),requestTimestamp:e.requestTimestamp||s,cpm:parseFloat(e.cpm)||0,bidder:e.bidder||e.bidderCode,adUnitCode:t}),null!=o?.ttlBuffer&&(e.ttlBuffer=o.ttlBuffer);e.timeToRespond=e.responseTimestamp-e.requestTimestamp}(t,e),a++,n(f)}function p(e,a){g(e,a,(e=>{let c=function(e){let{index:t=oe.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};w.Ic(C.qY.BID_ADJUSTMENT,e);const n=t.getBidRequest(e)?.renderer||t.getAdUnit(e).renderer,i=e.mediaType,r=t.getMediaTypes(e),s=r&&r[i];var a=s&&s.renderer,c=null;a&&a.url&&a.render&&(!0!==a.backupOnly||!e.renderer)?c=a:n&&n.url&&n.render&&(!0!==n.backupOnly||!e.renderer)&&(c=n);c&&(e.renderer=m.A4.install({url:c.url,config:c.options}),e.renderer.setRender(c.render));const l=H(e.mediaType,r,d.$W.getConfig("mediaTypePriceGranularity")),u=(0,o.j)(e.cpm,"object"==typeof l?l:d.$W.getConfig("customPriceBucket"),d.$W.getConfig("currency.granularityMultiplier"));return e.pbLg=u.low,e.pbMg=u.med,e.pbHg=u.high,e.pbAg=u.auto,e.pbDg=u.dense,e.pbCg=u.custom,e}(a);w.Ic(C.qY.BID_ACCEPTED,c),c.mediaType===A.G_?function(e,t,n){let{index:o=oe.index}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},s=!0;const a=(0,r.A)(o.getMediaTypes({requestId:t.originalRequestId||t.requestId,adUnitId:t.adUnitId}),"video"),c=a&&(0,r.A)(a,"context"),l=a&&(0,r.A)(a,"useCacheKey");d.$W.getConfig("cache.url")&&(l||c!==E.H6)&&(!t.videoCacheKey||d.$W.getConfig("cache.ignoreBidderCacheKey")?(s=!1,F(e,t,n,a)):t.vastUrl||((0,i.vV)("videoCacheKey specified but not required vastUrl for video bid"),s=!1));s&&(G(e,t),n())}(t,c,e):((0,s.l6)(c)&&(0,s.gs)(c,n.getAdUnit(c)),G(t,c),e())}))}function h(e,n,r){return g(e,n,(e=>{n.rejectionReason=r,(0,i.JE)(`Bid from ${n.bidder||"unknown bidder"} was rejected: ${r}`,n),w.Ic(C.qY.BID_REJECTED,n),t.addBidRejected(n),e()}))}function b(){let n=this,r=t.getBidRequests();const o=d.$W.getConfig("auctionOptions");if(l.add(n),o&&!(0,i.Im)(o)){const e=o.secondaryBidders;e&&!r.every((t=>(0,v.mK)(e,t.bidderCode)))&&(r=r.filter((t=>!(0,v.mK)(e,t.bidderCode))))}c=r.every((e=>l.has(e))),n.bids.forEach((e=>{u[e.bidId]||(t.addNoBid(e),w.Ic(C.qY.NO_BID,e))})),c&&0===a&&e()}return{addBidResponse:function(){function e(e,t){P.call({dispatch:p},e,t,(()=>{let n=!1;return i=>{n||(h(e,t,i),n=!0)}})())}return e.reject=h,e}(),adapterDone:function(){W(B.k.resolve()).finally((()=>b.call(this)))}}}(de,this);T.Ay.callBids(p,e,n.addBidResponse,n.adapterDone,{request(e,n){c($,n),c(t,e),j[e]||(j[e]={SRA:!0,origin:n}),t[e]>1&&(j[e].SRA=!1)},done(e){$[e]--,q[0]&&a(q[0])&&q.shift()}},I,ce,f),L.resolve()}};function a(e){let t=!0,n=d.$W.getConfig("maxRequestsPerOrigin")||_;return e.bidRequests.some((e=>{let i=1,r=void 0!==e.src&&e.src===C.RW.SRC?"s2s":e.bidderCode;return j[r]&&(!1===j[r].SRA&&(i=Math.min(e.bids.length,n)),$[j[r].origin]+i>n&&(t=!1)),!t})),t&&e.run(),t}function c(e,t){void 0===e[t]?e[t]=1:e[t]++}a(n)||((0,i.JE)("queueing auction due to limited endpoint capacity"),q.push(n))}return w.on(C.qY.SEAT_NON_BID,(e=>{var t;e.auctionId===y&&(t=e.seatnonbid,re=re.concat(t))})),{addBidReceived:function(e){te=te.concat(e)},addBidRejected:function(e){Y=Y.concat(e)},addNoBid:function(e){ne=ne.concat(e)},callBids:function(){Q=S,z=Date.now();let e=g.measureTime("requestBids.makeRequests",(()=>T.Ay.makeBidRequests(p,z,y,I,h,f,g)));(0,i.fH)(`Bids Requested for Auction with id: ${y}`,e),g.checkpoint("callBids"),e.length<1?((0,i.JE)("No valid bid requests returned for auction"),de()):V.call({dispatch:le,context:this},e)},addWinningBid:function(e){ie=ie.concat(e),T.Ay.callBidWonBidder(e.adapterCode||e.bidder,e,t),e.deferBilling||T.Ay.triggerBilling(e)},setBidTargeting:function(e){T.Ay.callSetTargetingBidder(e.adapterCode||e.bidder,e)},getWinningBids:()=>ie,getAuctionStart:()=>z,getAuctionEnd:()=>J,getTimeout:()=>I,getAuctionId:()=>y,getAuctionStatus:()=>Q,getAdUnits:()=>p,getAdUnitCodes:()=>b,getBidRequests:()=>Z,getBidsReceived:()=>te,getNoBids:()=>ne,getNonBids:()=>re,getFPD:()=>f,getMetrics:()=>g,end:N.promise,requestsDone:L.promise}}const P=(0,y.A_)("sync",(function(e,t,n){!function(e){const t=d.$W.getConfig("maxBid");return!t||!e.cpm||t>=Number(e.cpm)}(t)?n(C.Tf.PRICE_TOO_HIGH):this.dispatch.call(null,e,t)}),"addBidResponse"),W=(0,y.A_)("sync",(e=>e),"responsesReady"),V=(0,y.A_)("sync",(function(e){this.dispatch.call(this.context,e)}),"addBidderRequests"),M=(0,y.A_)("async",(function(e,t){t&&t()}),"bidsBackCallback");function G(e,t){!function(e){let t;const n=!0===I.u.get(e.bidderCode,"allowZeroCpmBids")?e.cpm>=0:e.cpm>0;e.bidderCode&&(n||e.dealId)&&(t=function(e,t){let{index:n=oe.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!t)return{};const i=n.getBidRequest(t);var r={};const o=X(t.mediaType,e);Z(r,o,t,i),e&&I.u.getOwn(e,C.iD.ADSERVER_TARGETING)&&(Z(r,I.u.ownSettingsFor(e),t,i),t.sendStandardTargeting=I.u.get(e,"sendStandardTargeting"));t.native&&(r=Object.assign({},r,(0,s.Zj)(t)));return r}(e.bidderCode,e));e.adserverTargeting=Object.assign(e.adserverTargeting||{},t)}(t),(0,O.BO)(t.metrics).timeSince("addBidResponse","addBidResponse.total"),e.addBidReceived(t),w.Ic(C.qY.BID_RESPONSE,t)}const F=(0,y.A_)("async",(function(e,t,n,i){h(e,t,n)}),"callPrebidCache");function H(e,t,n){if(e&&n){if(e===A.G_){const e=(0,r.A)(t,`${A.G_}.context`,"instream");if(n[`${A.G_}-${e}`])return n[`${A.G_}-${e}`]}return n[e]}}const L=e=>t=>{const n=e||function(e){let{index:t=oe.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=H(e.mediaType,t.getMediaTypes(e),d.$W.getConfig("mediaTypePriceGranularity"));return"string"==typeof e.mediaType&&n?"string"==typeof n?n:"custom":d.$W.getConfig("priceGranularity")}(t);return n===C.UE.AUTO?t.pbAg:n===C.UE.DENSE?t.pbDg:n===C.UE.LOW?t.pbLg:n===C.UE.MEDIUM?t.pbMg:n===C.UE.HIGH?t.pbHg:n===C.UE.CUSTOM?t.pbCg:void 0},z=()=>e=>e.creativeId?e.creativeId:"",J=()=>e=>e.meta&&e.meta.advertiserDomains&&e.meta.advertiserDomains.length>0?[e.meta.advertiserDomains].flat()[0]:"",K=()=>e=>e.meta&&(e.meta.networkId||e.meta.networkName)?(0,r.A)(e,"meta.networkName")||(0,r.A)(e,"meta.networkId"):"",Q=()=>e=>e.meta&&e.meta.primaryCatId?e.meta.primaryCatId:"";function Y(e,t){return{key:e,val:"function"==typeof t?function(e,n){return t(e,n)}:function(e){return(0,i._W)(e,t)}}}function X(e,t){const n=Object.assign({},I.u.settingsFor(null));if(n[C.iD.ADSERVER_TARGETING]||(n[C.iD.ADSERVER_TARGETING]=[Y(C.xS.BIDDER,"bidderCode"),Y(C.xS.AD_ID,"adId"),Y(C.xS.PRICE_BUCKET,L()),Y(C.xS.SIZE,"size"),Y(C.xS.DEAL,"dealId"),Y(C.xS.SOURCE,"source"),Y(C.xS.FORMAT,"mediaType"),Y(C.xS.ADOMAIN,J()),Y(C.xS.ACAT,Q()),Y(C.xS.DSP,K()),Y(C.xS.CRID,z())]),"video"===e){const e=n[C.iD.ADSERVER_TARGETING].slice();if(n[C.iD.ADSERVER_TARGETING]=e,[C.xS.UUID,C.xS.CACHE_ID].forEach((t=>{void 0===(0,v.I6)(e,(e=>e.key===t))&&e.push(Y(t,"videoCacheKey"))})),d.$W.getConfig("cache.url")&&(!t||!1!==I.u.get(t,"sendStandardTargeting"))){const t=(0,i.Dl)(d.$W.getConfig("cache.url"));void 0===(0,v.I6)(e,(e=>e.key===C.xS.CACHE_HOST))&&e.push(Y(C.xS.CACHE_HOST,(function(e){return(0,r.A)(e,`adserverTargeting.${C.xS.CACHE_HOST}`)?e.adserverTargeting[C.xS.CACHE_HOST]:t.hostname})))}}return n}function Z(e,t,n,r){var o=t[C.iD.ADSERVER_TARGETING];return n.size=n.getSize(),(o||[]).forEach((function(o){var s=o.key,a=o.val;if(e[s]&&(0,i.JE)("The key: "+s+" is being overwritten"),(0,i.fp)(a))try{a=a(n,r)}catch(e){(0,i.vV)("bidmanager","ERROR",e)}(void 0===t.suppressEmptyKeys||!0!==t.suppressEmptyKeys)&&s!==C.xS.DEAL&&s!==C.xS.ACAT&&s!==C.xS.DSP&&s!==C.xS.CRID||!(0,i.xQ)(a)&&null!=a?e[s]=a:(0,i.fH)("suppressing empty key '"+s+"' from adserver targeting")})),e}function ee(e,t){return e[t.adUnitCode]||(e[t.adUnitCode]={bids:[]}),e[t.adUnitCode].bids.push(t),e}function te(e){Object.assign(this,{getAuction(t){let{auctionId:n}=t;if(null!=n)return e().find((e=>e.getAuctionId()===n))},getAdUnit(t){let{adUnitId:n}=t;if(null!=n)return e().flatMap((e=>e.getAdUnits())).find((e=>e.adUnitId===n))},getMediaTypes(e){let{adUnitId:t,requestId:n}=e;if(null!=n){const e=this.getBidRequest({requestId:n});if(null!=e&&(null==t||e.adUnitId===t))return e.mediaTypes}else if(null!=t){const e=this.getAdUnit({adUnitId:t});if(null!=e)return e.mediaTypes}},getBidderRequest(t){let{requestId:n,bidderRequestId:i}=t;if(null!=n||null!=i){let t=e().flatMap((e=>e.getBidRequests()));return null!=i&&(t=t.filter((e=>e.bidderRequestId===i))),null==n?t[0]:t.find((e=>e.bids&&null!=e.bids.find((e=>e.bidId===n))))}},getBidRequest(t){let{requestId:n}=t;if(null!=n)return e().flatMap((e=>e.getBidRequests())).flatMap((e=>e.bids)).find((e=>e&&e.bidId===n))},getOrtb2(e){return this.getBidderRequest(e)?.ortb2||this.getAuction(e)?.getFPD()?.global?.ortb2}})}var ne=n(6853),ie=n(7863);const re="minBidCacheTTL";const oe=function(){let e=null;const t=(0,ne.H)({startTime:e=>e.end.then((()=>e.getAuctionEnd())),ttl:t=>null==e?null:t.end.then((()=>1e3*Math.max(e,...t.getBidsReceived().map(ie.L))))});(0,ie.u)((()=>{null!=e&&t.refresh()})),d.$W.getConfig(re,(n=>{const i=e;e=n?.[re],e="number"==typeof e?e:null,i!==e&&t.refresh()}));const n={onExpiry:t.onExpiry};function r(e){for(const n of t)if(n.getAuctionId()===e)return n}function o(){return t.toArray().flatMap((e=>e.getBidsReceived()))}return n.addWinningBid=function(e){const t=(0,O.BO)(e.metrics);t.checkpoint("bidWon"),t.timeBetween("auctionEnd","bidWon","adserver.pending"),t.timeBetween("requestBids","bidWon","adserver.e2e");const n=r(e.auctionId);n?n.addWinningBid(e):(0,i.JE)("Auction not found when adding winning bid")},Object.entries({getAllWinningBids:{name:"getWinningBids"},getBidsRequested:{name:"getBidRequests"},getNoBids:{},getAdUnits:{},getBidsReceived:{pre:e=>e.getAuctionStatus()===U},getAdUnitCodes:{post:i.hj}}).forEach((e=>{let[i,{name:r=i,pre:o,post:s}]=e;const a=null==o?e=>e[r]():e=>o(e)?e[r]():[],d=null==s?e=>e:e=>e.filter(s);n[i]=()=>d(t.toArray().flatMap(a))})),n.getAllBidsForAdUnitCode=function(e){return o().filter((t=>t&&t.adUnitCode===e))},n.createAuction=function(e){const n=N(e);return function(e){t.add(e)}(n),n},n.findBidByAdId=function(e){return o().find((t=>t.adId===e))},n.getStandardBidderAdServerTargeting=function(){return X()[C.iD.ADSERVER_TARGETING]},n.setStatusForBids=function(e,t){let i=n.findBidByAdId(e);if(i&&(i.status=t),i&&t===C.tl.BID_TARGETING_SET){const e=r(i.auctionId);e&&e.setBidTargeting(i)}},n.getLastAuctionId=function(){const e=t.toArray();return e.length&&e[e.length-1].getAuctionId()},n.clearAllAuctions=function(){t.clear()},n.index=new te((()=>t.toArray())),n}()},7863:(e,t,n)=>{n.d(t,{L:()=>a,u:()=>d});var i=n(3272),r=n(1069);let o=1;const s=[];function a(e){return e.ttl-(e.hasOwnProperty("ttlBuffer")?e.ttlBuffer:o)}function d(e){s.push(e)}i.$W.getConfig("ttlBuffer",(e=>{if("number"==typeof e.ttlBuffer){const t=o;o=e.ttlBuffer,t!==o&&s.forEach((e=>e(o)))}else(0,r.vV)("Invalid value for ttlBuffer",e.ttlBuffer)}))},2693:(e,t,n)=>{n.d(t,{u:()=>a});var i=n(433),r=n(1069),o=n(7873),s=n(8969);const a=new class{constructor(e,t){this.getSettings=e,this.defaultScope=t}get(e,t){let n=this.getOwn(e,t);return void 0===n&&(n=this.getOwn(null,t)),n}getOwn(e,t){return e=this.#e(e),(0,i.A)(this.getSettings(),`${e}.${t}`)}getScopes(){return Object.keys(this.getSettings()).filter((e=>e!==this.defaultScope))}settingsFor(e){return(0,r.D9)({},this.ownSettingsFor(null),this.ownSettingsFor(e))}ownSettingsFor(e){return e=this.#e(e),this.getSettings()[e]||{}}#e(e){return null==e?this.defaultScope:e}}((()=>(0,o.m)().bidderSettings||{}),s.iD.BD_SETTING_STANDARD)},3597:(e,t,n)=>{n.d(t,{O:()=>o});var i=n(1069);function r(e){let{src:t="client",bidder:n="",bidId:r,transactionId:o,adUnitId:s,auctionId:a}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};var d=t,c=e||0;Object.assign(this,{bidderCode:n,width:0,height:0,statusMessage:function(){switch(c){case 0:return"Pending";case 1:return"Bid available";case 2:return"Bid returned empty or error response";case 3:return"Bid timed out"}}(),adId:(0,i.s0)(),requestId:r,transactionId:o,adUnitId:s,auctionId:a,mediaType:"banner",source:d}),this.getStatusCode=function(){return c},this.getSize=function(){return this.width+"x"+this.height},this.getIdentifiers=function(){return{src:this.source,bidder:this.bidderCode,bidId:this.requestId,transactionId:this.transactionId,adUnitId:this.adUnitId,auctionId:this.auctionId}}}function o(e,t){return new r(e,t)}},3272:(e,t,n)=>{n.d(t,{$W:()=>h,Ov:()=>l});var i=n(6833),r=n(5901),o=n(1069),s=n(433),a=n(8969);const d="TRUE"===(0,o.Ez)(a.M).toUpperCase(),c={},l="random",u={};u[l]=!0,u.fixed=!0;const f=l,g={LOW:"low",MEDIUM:"medium",HIGH:"high",AUTO:"auto",DENSE:"dense",CUSTOM:"custom"};function p(e){const t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1]?{priceGranularity:g.MEDIUM,customPriceBucket:{},mediaTypePriceGranularity:{},bidderSequence:f,auctionOptions:{}}:{};function n(e){return t[e]}function s(n,i){t.hasOwnProperty(n)||Object.defineProperty(e,n,{enumerable:!0}),t[n]=i}const a={publisherDomain:{set(e){null!=e&&(0,o.JE)("publisherDomain is deprecated and has no effect since v7 - use pageUrl instead"),s("publisherDomain",e)}},priceGranularity:{set(e){c(e)&&("string"==typeof e?s("priceGranularity",d(e)?e:g.MEDIUM):(0,o.Qd)(e)&&(s("customPriceBucket",e),s("priceGranularity",g.CUSTOM),(0,o.OG)("Using custom price granularity")))}},customPriceBucket:{},mediaTypePriceGranularity:{set(e){null!=e&&s("mediaTypePriceGranularity",Object.keys(e).reduce(((t,i)=>(c(e[i])?"string"==typeof e?t[i]=d(e[i])?e[i]:n("priceGranularity"):(0,o.Qd)(e)&&(t[i]=e[i],(0,o.OG)(`Using custom price granularity for ${i}`)):(0,o.JE)(`Invalid price granularity for media type: ${i}`),t)),{}))}},bidderSequence:{set(e){u[e]?s("bidderSequence",e):(0,o.JE)(`Invalid order: ${e}. Bidder Sequence was not set.`)}},auctionOptions:{set(e){(function(e){if(!(0,o.Qd)(e))return(0,o.JE)("Auction Options must be an object"),!1;for(let t of Object.keys(e)){if("secondaryBidders"!==t&&"suppressStaleRender"!==t)return(0,o.JE)(`Auction Options given an incorrect param: ${t}`),!1;if("secondaryBidders"===t){if(!(0,o.cy)(e[t]))return(0,o.JE)(`Auction Options ${t} must be of type Array`),!1;if(!e[t].every(o.O8))return(0,o.JE)(`Auction Options ${t} must be only string`),!1}else if("suppressStaleRender"===t&&!(0,o.Lm)(e[t]))return(0,o.JE)(`Auction Options ${t} must be of type boolean`),!1}return!0})(e)&&s("auctionOptions",e)}}};return Object.defineProperties(e,Object.fromEntries(Object.entries(a).map((e=>{let[i,r]=e;return[i,Object.assign({get:n.bind(null,i),set:s.bind(null,i),enumerable:t.hasOwnProperty(i),configurable:!t.hasOwnProperty(i)},r)]})))),e;function d(e){return(0,r.I6)(Object.keys(g),(t=>e===g[t]))}function c(e){if(!e)return(0,o.vV)("Prebid Error: no value passed to `setPriceGranularity()`"),!1;if("string"==typeof e)d(e)||(0,o.JE)("Prebid Warning: setPriceGranularity was called with invalid setting, using `medium` as default.");else if((0,o.Qd)(e)&&!(0,i.q)(e))return(0,o.vV)("Invalid custom price value passed to `setPriceGranularity()`"),!1;return!0}}const h=function(){let e,t,n,i=[],a=null;function l(){e={};let i=p({debug:d,bidderTimeout:3e3,enableSendAllBids:true,useBidCache:false,deviceAccess:true,disableAjaxTimeout:false,maxNestedIframes:10,maxBid:5e3,userSync:{topics:c}});t&&v(Object.keys(t).reduce(((e,n)=>(t[n]!==i[n]&&(e[n]=i[n]||{}),e)),{})),t=i,n={}}function u(){if(a&&n&&(0,o.Qd)(n[a])){let e=n[a];const i=new Set(Object.keys(t).concat(Object.keys(e)));return(0,r.A6)(i).reduce(((n,i)=>(void 0===e[i]?n[i]=t[i]:void 0===t[i]?n[i]=e[i]:(0,o.Qd)(e[i])?n[i]=(0,o.D9)({},t[i],e[i]):n[i]=e[i],n)),{})}return Object.assign({},t)}const[f,g]=[u,function(){const e=u();return Object.defineProperty(e,"ortb2",{get:function(){throw new Error("invalid access to 'orbt2' config - use request parameters instead")}}),e}].map((e=>function(){if(arguments.length<=1&&"function"!=typeof(arguments.length<=0?void 0:arguments[0])){const t=arguments.length<=0?void 0:arguments[0];return t?(0,s.A)(e(),t):u()}return y(...arguments)})),[h,m]=[g,f].map((e=>function(){let t=e(...arguments);return t&&"object"==typeof t&&(t=(0,o.Go)(t)),t}));function b(n){if(!(0,o.Qd)(n))return void(0,o.vV)("setConfig options must be an object");let i=Object.keys(n),r={};i.forEach((i=>{let s=n[i];(0,o.Qd)(e[i])&&(0,o.Qd)(s)&&(s=Object.assign({},e[i],s));try{r[i]=t[i]=s}catch(e){(0,o.JE)(`Cannot set config for property ${i} : `,e)}})),v(r)}function y(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=t;if("string"!=typeof e&&(r=e,e="*",n=t||{}),"function"!=typeof r)return void(0,o.vV)("listener must be a function");const s={topic:e,callback:r};return i.push(s),n.init&&r("*"===e?g():{[e]:g(e)}),function(){i.splice(i.indexOf(s),1)}}function v(e){const t=Object.keys(e);i.filter((e=>(0,r.mK)(t,e.topic))).forEach((t=>{t.callback({[t.topic]:e[t.topic]})})),i.filter((e=>"*"===e.topic)).forEach((t=>t.callback(e)))}function E(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];try{!function(e){if(!(0,o.Qd)(e))throw"setBidderConfig bidder options must be an object";if(!Array.isArray(e.bidders)||!e.bidders.length)throw"setBidderConfig bidder options must contain a bidders list with at least 1 bidder";if(!(0,o.Qd)(e.config))throw"setBidderConfig bidder options must contain a config object"}(e),e.bidders.forEach((i=>{n[i]||(n[i]=p({},!1)),Object.keys(e.config).forEach((r=>{let s=e.config[r];const a=n[i][r];if((0,o.Qd)(s)&&(null==a||(0,o.Qd)(a))){const e=t?o.D9:Object.assign;n[i][r]=e({},a||{},s)}else n[i][r]=s}))}))}catch(e){(0,o.vV)(e)}}function A(e,t){a=e;try{return t()}finally{I()}}function I(){a=null}return l(),{getCurrentBidder:function(){return a},resetBidder:I,getConfig:g,getAnyConfig:f,readConfig:h,readAnyConfig:m,setConfig:b,mergeConfig:function(e){if(!(0,o.Qd)(e))return void(0,o.vV)("mergeConfig input must be an object");const t=(0,o.D9)(u(),e);return b({...t}),t},setDefaults:function(n){(0,o.Qd)(e)?(Object.assign(e,n),Object.assign(t,n)):(0,o.vV)("defaults must be an object")},resetConfig:l,runWithBidder:A,callbackWithBidder:function(e){return function(t){return function(){if("function"==typeof t){for(var n=arguments.length,i=new Array(n),r=0;r<n;r++)i[r]=arguments[r];return A(e,t.bind(this,...i))}(0,o.JE)("config.callbackWithBidder callback is not a function")}}},setBidderConfig:E,getBidderConfig:function(){return n},mergeBidderConfig:function(e){return E(e,!0)}}}()},6916:(e,t,n)=>{n.d(t,{SL:()=>g,ad:()=>c,mW:()=>a,o2:()=>u,t6:()=>d});var i=n(1069),r=n(5555),o=n(3272);Object.freeze({});class s{#t;#n;#i;#r;#o=!0;#s;generatedTime;hashFields;constructor(){this.reset()}#a(e){this.#r=!0,this.#n=e,this.#i.resolve(e)}reset(){this.#i=(0,r.v)(),this.#t=!1,this.#n=null,this.#r=!1,this.generatedTime=null}enable(){this.#t=!0}get enabled(){return this.#t}get ready(){return this.#r}get promise(){return this.#r?r.k.resolve(this.#n):(this.#t||this.#a(null),this.#i.promise)}setConsentData(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(0,i.vE)();this.generatedTime=t,this.#o=!0,this.#a(e)}getConsentData(){return this.#n}get hash(){return this.#o&&(this.#s=(0,i.PB)(JSON.stringify(this.#n&&this.hashFields?this.hashFields.map((e=>this.#n[e])):this.#n)),this.#o=!1),this.#s}}const a=new class extends s{hashFields=["gdprApplies","consentString"];getConsentMeta(){const e=this.getConsentData();if(e&&e.vendorData&&this.generatedTime)return{gdprApplies:e.gdprApplies,consentStringSize:(0,i.O8)(e.vendorData.tcString)?e.vendorData.tcString.length:0,generatedAt:this.generatedTime,apiVersion:e.apiVersion}}},d=new class extends s{getConsentMeta(){if(this.getConsentData()&&this.generatedTime)return{generatedAt:this.generatedTime}}},c=new class extends s{hashFields=["applicableSections","gppString"];getConsentMeta(){if(this.getConsentData()&&this.generatedTime)return{generatedAt:this.generatedTime}}},l=(()=>{function e(){return!!o.$W.getConfig("coppa")}return{getCoppa:e,getConsentData:e,getConsentMeta:e,reset(){},get promise(){return r.k.resolve(e())},get hash(){return e()?"1":"0"}}})(),u=function(){const e={},t={},n={};return{register(i,r,o){o&&((e[r]=e[r]||{})[i]=o,t.hasOwnProperty(r)?t[r]!==o&&(t[r]=n):t[r]=o)},get(i){const r={modules:e[i]||{}};return t.hasOwnProperty(i)&&t[i]!==n&&(r.gvlid=t[i]),r}}}(),f={gdpr:a,usp:d,gpp:c,coppa:l};const g=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:f;return e=Object.entries(e),Object.assign({get promise(){return r.k.all(e.map((e=>{let[t,n]=e;return n.promise.then((e=>[t,e]))}))).then((e=>Object.fromEntries(e)))},get hash(){return(0,i.PB)(e.map((e=>{let[t,n]=e;return n.hash})).join(":"))}},Object.fromEntries(["getConsentData","getConsentMeta","reset"].map((t=>{return[t,(n=t,function(){return Object.fromEntries(e.map((e=>{let[t,i]=e;return[t,i[n]()]})))})];var n}))))}()},8969:(e,t,n)=>{n.d(t,{IY:()=>A,M:()=>r,RW:()=>g,Tf:()=>h,UE:()=>c,XQ:()=>o,Zh:()=>u,_B:()=>v,as:()=>a,cA:()=>d,h0:()=>m,iD:()=>i,jO:()=>b,nl:()=>E,oA:()=>y,qY:()=>s,tl:()=>p,x5:()=>f,xS:()=>l});const i={PL_CODE:"code",PL_SIZE:"sizes",PL_BIDS:"bids",BD_BIDDER:"bidder",BD_ID:"paramsd",BD_PL_ID:"placementId",ADSERVER_TARGETING:"adserverTargeting",BD_SETTING_STANDARD:"standard"},r="pbjs_debug",o={GOOD:1},s={AUCTION_INIT:"auctionInit",AUCTION_TIMEOUT:"auctionTimeout",AUCTION_END:"auctionEnd",BID_ADJUSTMENT:"bidAdjustment",BID_TIMEOUT:"bidTimeout",BID_REQUESTED:"bidRequested",BID_RESPONSE:"bidResponse",BID_REJECTED:"bidRejected",NO_BID:"noBid",SEAT_NON_BID:"seatNonBid",BID_WON:"bidWon",BIDDER_DONE:"bidderDone",BIDDER_ERROR:"bidderError",SET_TARGETING:"setTargeting",BEFORE_REQUEST_BIDS:"beforeRequestBids",BEFORE_BIDDER_HTTP:"beforeBidderHttp",REQUEST_BIDS:"requestBids",ADD_AD_UNITS:"addAdUnits",AD_RENDER_FAILED:"adRenderFailed",AD_RENDER_SUCCEEDED:"adRenderSucceeded",TCF2_ENFORCEMENT:"tcf2Enforcement",AUCTION_DEBUG:"auctionDebug",BID_VIEWABLE:"bidViewable",STALE_RENDER:"staleRender",BILLABLE_EVENT:"billableEvent",BID_ACCEPTED:"bidAccepted",RUN_PAAPI_AUCTION:"paapiRunAuction",PBS_ANALYTICS:"pbsAnalytics",PAAPI_BID:"paapiBid",PAAPI_NO_BID:"paapiNoBid",PAAPI_ERROR:"paapiError"},a={PREVENT_WRITING_ON_MAIN_DOCUMENT:"preventWritingOnMainDocument",NO_AD:"noAd",EXCEPTION:"exception",CANNOT_FIND_AD:"cannotFindAd",MISSING_DOC_OR_ADID:"missingDocOrAdid"},d={bidWon:"adUnitCode"},c={LOW:"low",MEDIUM:"medium",HIGH:"high",AUTO:"auto",DENSE:"dense",CUSTOM:"custom"},l={BIDDER:"hb_bidder",AD_ID:"hb_adid",PRICE_BUCKET:"hb_pb",SIZE:"hb_size",DEAL:"hb_deal",SOURCE:"hb_source",FORMAT:"hb_format",UUID:"hb_uuid",CACHE_ID:"hb_cache_id",CACHE_HOST:"hb_cache_host",ADOMAIN:"hb_adomain",ACAT:"hb_acat",CRID:"hb_crid",DSP:"hb_dsp"},u={BIDDER:"hb_bidder",AD_ID:"hb_adid",PRICE_BUCKET:"hb_pb",SIZE:"hb_size",DEAL:"hb_deal",FORMAT:"hb_format",UUID:"hb_uuid",CACHE_HOST:"hb_cache_host"},f={title:"hb_native_title",body:"hb_native_body",body2:"hb_native_body2",privacyLink:"hb_native_privacy",privacyIcon:"hb_native_privicon",sponsoredBy:"hb_native_brand",image:"hb_native_image",icon:"hb_native_icon",clickUrl:"hb_native_linkurl",displayUrl:"hb_native_displayurl",cta:"hb_native_cta",rating:"hb_native_rating",address:"hb_native_address",downloads:"hb_native_downloads",likes:"hb_native_likes",phone:"hb_native_phone",price:"hb_native_price",salePrice:"hb_native_saleprice",rendererUrl:"hb_renderer_url",adTemplate:"hb_adTemplate"},g={SRC:"s2s",DEFAULT_ENDPOINT:"https://prebid.adnxs.com/pbs/v1/openrtb2/auction",SYNCED_BIDDERS_KEY:"pbjsSyncs"},p={BID_TARGETING_SET:"targetingSet",RENDERED:"rendered",BID_REJECTED:"bidRejected"},h={INVALID:"Bid has missing or invalid properties",INVALID_REQUEST_ID:"Invalid request ID",BIDDER_DISALLOWED:"Bidder code is not allowed by allowedAlternateBidderCodes / allowUnknownBidderCodes",FLOOR_NOT_MET:"Bid does not meet price floor",CANNOT_CONVERT_CURRENCY:"Unable to convert currency",DSA_REQUIRED:"Bid does not provide required DSA transparency info",DSA_MISMATCH:"Bid indicates inappropriate DSA rendering method",PRICE_TOO_HIGH:"Bid price exceeds maximum value"},m={body:"desc",body2:"desc2",sponsoredBy:"sponsored",cta:"ctatext",rating:"rating",address:"address",downloads:"downloads",likes:"likes",phone:"phone",price:"price",salePrice:"saleprice",displayUrl:"displayurl"},b={sponsored:1,desc:2,rating:3,likes:4,downloads:5,price:6,saleprice:7,phone:8,address:9,desc2:10,displayurl:11,ctatext:12},y={ICON:1,MAIN:3},v=["privacyIcon","clickUrl","sendTargetingKeys","adTemplate","rendererUrl","type"],E={REQUEST:"Prebid Request",RESPONSE:"Prebid Response",NATIVE:"Prebid Native",EVENT:"Prebid Event"},A="__pb_locator__"},6833:(e,t,n)=>{n.d(t,{j:()=>f,q:()=>p});var i=n(5901),r=n(1069),o=n(3272);const s=2,a={buckets:[{max:5,increment:.5}]},d={buckets:[{max:20,increment:.1}]},c={buckets:[{max:20,increment:.01}]},l={buckets:[{max:3,increment:.01},{max:8,increment:.05},{max:20,increment:.5}]},u={buckets:[{max:5,increment:.05},{max:10,increment:.1},{max:20,increment:.5}]};function f(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,i=parseFloat(e);return isNaN(i)&&(i=""),{low:""===i?"":g(e,a,n),med:""===i?"":g(e,d,n),high:""===i?"":g(e,c,n),auto:""===i?"":g(e,u,n),dense:""===i?"":g(e,l,n),custom:""===i?"":g(e,t,n)}}function g(e,t,n){let a="";if(!p(t))return a;const d=t.buckets.reduce(((e,t)=>e.max>t.max?e:t),{max:0});let c=0,l=(0,i.I6)(t.buckets,(t=>{if(e>d.max*n){let e=t.precision;void 0===e&&(e=s),a=(t.max*n).toFixed(e)}else{if(e<=t.max*n&&e>=c*n)return t.min=c,t;c=t.max}}));return l&&(a=function(e,t,n){const i=void 0!==t.precision?t.precision:s,a=t.increment*n,d=t.min*n;let c=Math.floor,l=o.$W.getConfig("cpmRoundingFunction");"function"==typeof l&&(c=l);let u,f,g=Math.pow(10,i+2),p=(e*g-d*g)/(a*g);try{u=c(p)*a+d}catch(e){f=!0}(f||"number"!=typeof u)&&((0,r.JE)("Invalid rounding function passed in config"),u=Math.floor(p)*a+d);return u=Number(u.toFixed(10)),u.toFixed(i)}(e,l,n)),a}function p(e){if((0,r.Im)(e)||!e.buckets||!Array.isArray(e.buckets))return!1;let t=!0;return e.buckets.forEach((e=>{e.max&&e.increment||(t=!1)})),t}},6031:(e,t,n)=>{n.d(t,{H:()=>a,k:()=>s});var i=n(5555),r=n(1069),o=n(4595);const s=(0,n(9214).A_)("sync",(function(e){return o.G})),a=function(){const e={};return function(t){const n=s(t);return e.hasOwnProperty(n)||(e[n]=new i.k((e=>{const t=(0,r.CA)();t.srcdoc=`<script>${n}<\/script>`,t.onload=()=>e(t.contentWindow.render),document.body.appendChild(t)}))),e[n]}}()},5023:(e,t,n)=>{n.d(t,{AU:()=>m,Ic:()=>v,kQ:()=>y,on:()=>h});var i=n(1069),r=n(8969),o=n(6853),s=n(3272);const a="eventHistoryTTL";let d=null;const c=(0,o.H)({monotonic:!0,ttl:()=>d});s.$W.getConfig(a,(e=>{const t=d;e=e?.[a],d="number"==typeof e?1e3*e:null,t!==d&&c.refresh()}));let l=Array.prototype.slice,u=Array.prototype.push,f=Object.values(r.qY);const g=r.cA,p=function(){let e={},t={};function n(e){return f.includes(e)}return t.has=n,t.on=function(t,r,o){if(n(t)){let n=e[t]||{que:[]};o?(n[o]=n[o]||{que:[]},n[o].que.push(r)):n.que.push(r),e[t]=n}else i.vV("Wrong event name : "+t+" Valid event names :"+f)},t.emit=function(t){!function(t,n){i.OG("Emitting event for: "+t);let r=n[0]||{},o=r[g[t]],s=e[t]||{que:[]};var a=Object.keys(s);let d=[];c.add({eventType:t,args:r,id:o,elapsedTime:i.V()}),o&&a.includes(o)&&u.apply(d,s[o].que),u.apply(d,s.que),(d||[]).forEach((function(e){if(e)try{e.apply(null,n)}catch(e){i.vV("Error executing handler:","events.js",e,t)}}))}(t,l.call(arguments,1))},t.off=function(t,n,r){let o=e[t];i.Im(o)||i.Im(o.que)&&i.Im(o[r])||r&&(i.Im(o[r])||i.Im(o[r].que))||(r?(o[r].que||[]).forEach((function(e){let t=o[r].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 c.toArray().map((e=>Object.assign({},e)))},window.prebidEvents=t,t}();i.cD(p.emit.bind(p));const{on:h,off:m,get:b,getEvents:y,emit:v,addEvents:E,has:A}=p},1970:(e,t,n)=>{n.d(t,{w:()=>w});var i=n(9214),r=n(7934),o=n(1069);const s=(0,n(2938).CK)("fpdEnrichment"),a=(0,o.Bj)((function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.location.host;if(!s.cookiesAreEnabled())return e;const t=e.split(".");if(2===t.length)return e;let n,i,r=-2;const a=`_rdc${Date.now()}`,d="writeable";do{n=t.slice(r).join(".");let e=new Date((0,o.vE)()+1e4).toUTCString();s.setCookie(a,d,e,"Lax",n,void 0);s.getCookie(a,void 0)===d?(i=!1,s.setCookie(a,"","Thu, 01 Jan 1970 00:00:01 GMT",void 0,n,void 0)):(r+=-1,i=Math.abs(r)<=t.length)}while(i);return n}));var d=n(3172),c=n(3272),l=n(5555);const u=["architecture","bitness","model","platformVersion","fullVersionList"],f=["brands","mobile","platform"],g=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.navigator?.userAgentData;const t=e&&f.some((t=>void 0!==e[t]))?Object.freeze(h(1,e)):null;return function(){return t}}(),p=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.navigator?.userAgentData;const t={},n=new WeakMap;return function(){let i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:u;if(!n.has(i)){const e=Array.from(i);e.sort(),n.set(i,e.join("|"))}const r=n.get(i);if(!t.hasOwnProperty(r))try{t[r]=e.getHighEntropyValues(i).then((e=>(0,o.Im)(e)?null:Object.freeze(h(2,e)))).catch((()=>null))}catch(e){t[r]=l.k.resolve(null)}return t[r]}}();function h(e,t){function n(e,t){const n={brand:e};return(0,o.O8)(t)&&!(0,o.xQ)(t)&&(n.version=t.split(".")),n}const i={source:e};return t.platform&&(i.platform=n(t.platform,t.platformVersion)),(t.fullVersionList||t.brands)&&(i.browsers=(t.fullVersionList||t.brands).map((e=>{let{brand:t,version:i}=e;return n(t,i)}))),void 0!==t.mobile&&(i.mobile=t.mobile?1:0),["model","bitness","architecture"].forEach((e=>{const n=t[e];(0,o.O8)(n)&&(i[e]=n)})),i}var m=n(3858),b=n(5139),y=n(3441),v=n(6811),E=n(5569);const A={getRefererInfo:r.EN,findRootDomain:a,getWindowTop:o.mb,getWindowSelf:o.l4,getHighEntropySUA:p,getLowEntropySUA:g},I=(0,m.i8)("FPD"),w=(0,i.A_)("sync",(e=>{const t=[e,C().catch((()=>null)),l.k.resolve("cookieDeprecationLabel"in navigator&&(0,b.io)(v.Ue,(0,y.s)(E.tp,"cdep"))&&navigator.cookieDeprecationLabel.getValue()).catch((()=>null))];return l.k.all(t).then((e=>{let[t,n,i]=e;const r=A.getRefererInfo();if(Object.entries(O).forEach((e=>{let[n,i]=e;const s=i(t,r);s&&Object.keys(s).length>0&&(t[n]=(0,o.D9)({},s,t[n]))})),n&&(0,d.J)(t,"device.sua",Object.assign({},n,t.device.sua)),i){const e={cdep:i};(0,d.J)(t,"device.ext",Object.assign({},e,t.device.ext))}t=I(t);for(let e of m.Dy)if((0,m.O$)(t,e)){t[e]=(0,o.D9)({},k(t,r),t[e]);break}return t}))}));function T(e){try{return e(A.getWindowTop())}catch(t){return e(A.getWindowSelf())}}function C(){const e=c.$W.getConfig("firstPartyData.uaHints");return Array.isArray(e)&&0!==e.length?A.getHighEntropySUA(e):l.k.resolve(A.getLowEntropySUA())}function B(e){return(0,o.SH)(e,Object.keys(e))}const O={site(e,t){if(!m.Dy.filter((e=>"site"!==e)).some(m.O$.bind(null,e)))return B({page:t.page,ref:t.ref})},device:()=>T((e=>{const t=e.screen.width,n=e.screen.height,i=e.innerWidth||e.document.documentElement.clientWidth||e.document.body.clientWidth,r=e.innerHeight||e.document.documentElement.clientHeight||e.document.body.clientHeight,s={w:t,h:n,dnt:(0,o.l9)()?1:0,ua:e.navigator.userAgent,language:e.navigator.language.split("-").shift(),ext:{vpw:i,vph:r}};return e.navigator?.webdriver&&(0,d.J)(s,"ext.webdriver",!0),s})),regs(){const e={};T((e=>e.navigator.globalPrivacyControl))&&(0,d.J)(e,"ext.gpc",1);const t=c.$W.getConfig("coppa");return"boolean"==typeof t&&(e.coppa=t?1:0),e}};function k(e,t){const n=(0,r.gR)(t.page,{noLeadingWww:!0}),i=T((e=>e.document.querySelector("meta[name='keywords']")))?.content?.replace?.(/\s/g,"");return B({domain:n,keywords:i,publisher:B({domain:A.findRootDomain(n)})})}},3858:(e,t,n)=>{n.d(t,{Dy:()=>r,O$:()=>s,i8:()=>o});var i=n(1069);const r=["dooh","app","site"];function o(e){return function(t){return r.reduce(((n,r)=>(s(t,r)&&(null!=n?((0,i.JE)(`${e} specifies both '${n}' and '${r}'; dropping the latter.`),delete t[r]):n=r),n)),null),t}}function s(e,t){return null!=e[t]&&Object.keys(e[t]).length>0}},9214:(e,t,n)=>{n.d(t,{A_:()=>s,Y6:()=>c,Yn:()=>d});var i=n(8128),r=n.n(i),o=n(5555);let s=r()({ready:r().SYNC|r().ASYNC|r().QUEUE});const a=(0,o.v)();s.ready=(()=>{const e=s.ready;return function(){try{return e.apply(s,arguments)}finally{a.resolve()}}})();a.promise;const d=s.get;function c(e,t){return Object.defineProperties(t,Object.fromEntries(["before","after","getHooks","removeAll"].map((t=>[t,{get:()=>e[t]}])))),t}},1371:(e,t,n)=>{n.d(t,{D4:()=>o,G_:()=>r,LM:()=>s,s6:()=>i});const i="native",r="video",o="banner",s="adpod"},2449:(e,t,n)=>{n.d(t,{Bm:()=>A,IX:()=>k,Nh:()=>u,Zj:()=>T,gs:()=>w,l6:()=>b,mT:()=>l,nk:()=>v,vO:()=>I,yl:()=>R});var i=n(433),r=n(1069),o=n(5901),s=n(6881),a=n(8969),d=n(9075),c=n(6031);const l=[],u=Object.keys(a.x5).map((e=>a.x5[e])),f={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}}},g=_(a.h0),p=_(a.jO),h={img:1,js:2,1:"img",2:"js"},m={impression:1,"viewable-mrc50":2,"viewable-mrc100":3,"viewable-video50":4};function b(e){return e.native&&"object"==typeof e.native}function y(e){if(e&&e.type&&function(e){if(!e||!(0,o.mK)(Object.keys(f),e))return(0,r.vV)(`${e} nativeParam is not supported`),!1;return!0}(e.type)&&(e=f[e.type]),!e||!e.ortb||E(e.ortb))return e}function v(e){e.forEach((e=>{const t=e.nativeParams||(0,i.A)(e,"mediaTypes.native");t&&(e.nativeParams=y(t)),e.nativeParams&&(e.nativeOrtbRequest=e.nativeParams.ortb||function(e){if(!e&&!(0,r.Qd)(e))return void(0,r.vV)("Native assets object is empty or not an object: ",e);const t={ver:"1.2",assets:[]};for(let n in e){if(a._B.includes(n))continue;if(!a.x5.hasOwnProperty(n)){(0,r.vV)(`Unrecognized native asset code: ${n}. Asset will be ignored.`);continue}if("privacyLink"===n){t.privacy=1;continue}const i=e[n];let o=0;i.required&&(0,r.Lm)(i.required)&&(o=Number(i.required));const s={id:t.assets.length,required:o};if(n in a.h0)s.data={type:a.jO[a.h0[n]]},i.len&&(s.data.len=i.len);else if("icon"===n||"image"===n){if(s.img={type:"icon"===n?a.oA.ICON:a.oA.MAIN},i.aspect_ratios)if((0,r.cy)(i.aspect_ratios))if(i.aspect_ratios.length){const{min_width:e,min_height:t}=i.aspect_ratios[0];(0,r.Fq)(e)&&(0,r.Fq)(t)?(s.img.wmin=e,s.img.hmin=t):(0,r.vV)("image.aspect_ratios min_width or min_height are invalid: ",e,t);const n=i.aspect_ratios.filter((e=>e.ratio_width&&e.ratio_height)).map((e=>`${e.ratio_width}:${e.ratio_height}`));n.length>0&&(s.img.ext={aspectratios:n})}else(0,r.vV)("image.aspect_ratios was passed, but it's empty:",i.aspect_ratios);else(0,r.vV)("image.aspect_ratios was passed, but it's not a an array:",i.aspect_ratios);i.sizes&&(2===i.sizes.length&&(0,r.Fq)(i.sizes[0])&&(0,r.Fq)(i.sizes[1])?(s.img.w=i.sizes[0],s.img.h=i.sizes[1],delete s.img.hmin,delete s.img.wmin):(0,r.vV)("image.sizes was passed, but its value is not an array of integers:",i.sizes))}else"title"===n?s.title={len:i.len||140}:"ext"===n&&(s.ext=i,delete s.required);t.assets.push(s)}return t}(e.nativeParams))}))}function E(e){const t=e.assets;if(!Array.isArray(t)||0===t.length)return(0,r.vV)("assets in mediaTypes.native.ortb is not an array, or it's empty. Assets: ",t),!1;const n=t.map((e=>e.id));return t.length!==new Set(n).size||n.some((e=>e!==parseInt(e,10)))?((0,r.vV)("each asset object must have 'id' property, it must be unique and it must be an integer"),!1):e.hasOwnProperty("eventtrackers")&&!Array.isArray(e.eventtrackers)?((0,r.vV)("ortb.eventtrackers is not an array. Eventtrackers: ",e.eventtrackers),!1):t.every((e=>function(e){if(!(0,r.Qd)(e))return(0,r.vV)("asset must be an object. Provided asset: ",e),!1;if(e.img){if(!(0,r.Et)(e.img.w)&&!(0,r.Et)(e.img.wmin))return(0,r.vV)("for img asset there must be 'w' or 'wmin' property"),!1;if(!(0,r.Et)(e.img.h)&&!(0,r.Et)(e.img.hmin))return(0,r.vV)("for img asset there must be 'h' or 'hmin' property"),!1}else if(e.title){if(!(0,r.Et)(e.title.len))return(0,r.vV)("for title asset there must be 'len' property defined"),!1}else if(e.data){if(!(0,r.Et)(e.data.type))return(0,r.vV)("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,r.Et)(e.video.minduration)&&(0,r.Et)(e.video.maxduration)))return(0,r.vV)("video asset is not properly configured"),!1;return!0}(e)))}function A(e){let{index:t=s.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=t.getAdUnit(e);if(!n)return!1;let a=n.nativeOrtbRequest;return function(e,t){if(!(0,i.A)(e,"link.url"))return(0,r.vV)("native response doesn't have 'link' property. Ortb response: ",e),!1;let n=t.assets.filter((e=>1===e.required)).map((e=>e.id)),s=e.assets.map((e=>e.id));const a=n.every((e=>(0,o.mK)(s,e)));a||(0,r.vV)(`didn't receive a bid with all required assets. Required ids: ${n}, but received ids in response: ${s}`);return a}(e.native?.ortb||U(e.native,a),a)}function I(e,t){const n=t.native.ortb||D(t.native);return"click"===e.action?function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,{fetchURL:n=r.z$}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(t){const i=(e.assets||[]).filter((e=>e.link)).reduce(((e,t)=>(e[t.id]=t.link,e)),{}),r=e.link?.clicktrackers||[];let o=i[t],s=r;o&&(s=o.clicktrackers||[]),s.forEach((e=>n(e)))}else(e.link?.clicktrackers||[]).forEach((e=>n(e)))}(n,e?.assetId):function(e){let{runMarkup:t=(e=>(0,r.ro)(e)),fetchURL:n=r.z$}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const i=(e.eventtrackers||[]).filter((e=>e.event===m.impression));let{img:o,js:s}=i.reduce(((e,t)=>(h.hasOwnProperty(t.method)&&e[h[t.method]].push(t.url),e)),{img:[],js:[]});e.imptrackers&&(o=o.concat(e.imptrackers));o.forEach((e=>n(e))),s=s.map((e=>`<script async src="${e}"><\/script>`)),e.jstracker&&(s=s.concat([e.jstracker]));s.length&&t(s.join("\n"))}(n),e.action}function w(e,t){const n=t?.nativeOrtbRequest,i=e.native?.ortb;if(n&&i){const t=function(e,t){const n={},i=t?.assets||[];n.clickUrl=e.link?.url,n.privacyLink=e.privacy;for(const t of e?.assets||[]){const e=i.find((e=>t.id===e.id));t.title?n.title=t.title.text:t.img?n[e?.img?.type===a.oA.MAIN?"image":"icon"]={url:t.img.url,width:t.img.w,height:t.img.h}:t.data&&(n[g[p[e?.data?.type]]]=t.data.value)}n.impressionTrackers=[];let r=[];e.imptrackers&&n.impressionTrackers.push(...e.imptrackers);for(const t of e?.eventtrackers||[])t.event===m.impression&&t.method===h.img&&n.impressionTrackers.push(t.url),t.event===m.impression&&t.method===h.js&&r.push(t.url);r=r.map((e=>`<script async src="${e}"><\/script>`)),e?.jstracker&&r.push(e.jstracker);r.length&&(n.javascriptTrackers=r.join("\n"));return n}(i,n);Object.assign(e.native,t)}["rendererUrl","adTemplate"].forEach((n=>{const i=t?.nativeParams?.[n];i&&(e.native[n]=S(i))}))}function T(e){let{index:t=s.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n={};const r=t.getAdUnit(e),o=null==r?.nativeParams?.ortb&&!1!==(0,i.A)(r,"nativeParams.sendTargetingKeys"),d=function(e){const t={};(0,i.A)(e,"nativeParams.ext")&&Object.keys(e.nativeParams.ext).forEach((e=>{t[e]=`hb_native_${e}`}));return{...a.x5,...t}}(r),c={...e.native,...e.native.ext};return delete c.ext,Object.keys(c).forEach((t=>{const s=d[t];let a=S(e.native[t])||S((0,i.A)(e,`native.ext.${t}`));if("adTemplate"===t||!s||!a)return;let c=(0,i.A)(r,`nativeParams.${t}.sendId`);if("boolean"!=typeof c&&(c=(0,i.A)(r,`nativeParams.ext.${t}.sendId`)),c){a=`${s}:${e.adId}`}let l=(0,i.A)(r,`nativeParams.${t}.sendTargetingKeys`);"boolean"!=typeof l&&(l=(0,i.A)(r,`nativeParams.ext.${t}.sendTargetingKeys`));("boolean"==typeof l?l:o)&&(n[s]=a)})),n}function C(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=[];return Object.entries(e).filter((e=>{let[i,r]=e;return r&&(!1===n&&"ext"===i||null==t||t.includes(i))})).forEach((e=>{let[r,o]=e;!1===n&&"ext"===r?i.push(...C(o,t,!0)):(n||a.x5.hasOwnProperty(r))&&i.push({key:r,value:S(o)})})),i}function B(e,t,n){let{index:i=s.n.index}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const o={message:"assetResponse",adId:e.adId};let l=(0,d.vd)(t).native;return l?(o.native=Object.assign({},l),o.renderer=(0,c.k)(t),null!=n&&(l.assets=l.assets.filter((e=>{let{key:t}=e;return n.includes(t)})))):l=function(e,t,n){const i={...(0,r.SH)(e.native,["rendererUrl","adTemplate"]),assets:C(e.native,n),nativeKeys:a.x5};return e.native.ortb?i.ortb=e.native.ortb:t.mediaTypes?.native?.ortb&&(i.ortb=U(e.native,t.nativeOrtbRequest)),i}(t,i.getAdUnit(t),n),Object.assign(o,l)}const O=Object.fromEntries(Object.entries(a.x5).map((e=>{let[t,n]=e;return[n,t]})));function k(e,t){const n=e.assets.map((e=>O[e]));return B(e,t,n)}function R(e,t){return B(e,t,null)}function S(e){return e?.url||e}function D(e){const t={link:{},eventtrackers:[]};return Object.entries(e).forEach((e=>{let[n,i]=e;switch(n){case"clickUrl":t.link.url=i;break;case"clickTrackers":t.link.clicktrackers=Array.isArray(i)?i:[i];break;case"impressionTrackers":(Array.isArray(i)?i:[i]).forEach((e=>{t.eventtrackers.push({event:m.impression,method:h.img,url:e})}));break;case"javascriptTrackers":t.jstracker=Array.isArray(i)?i.join(""):i;break;case"privacyLink":t.privacy=i}})),t}function U(e,t){const n={...D(e),assets:[]};function i(e,i){let o=t.assets.find(e);null!=o&&(o=(0,r.Go)(o),i(o),n.assets.push(o))}return Object.keys(e).filter((t=>!!e[t])).forEach((t=>{const n=S(e[t]);switch(t){case"title":i((e=>null!=e.title),(e=>{e.title={text:n}}));break;case"image":case"icon":const e="image"===t?a.oA.MAIN:a.oA.ICON;i((t=>null!=t.img&&t.img.type===e),(e=>{e.img={url:n}}));break;default:t in a.h0&&i((e=>null!=e.data&&e.data.type===a.jO[a.h0[t]]),(e=>{e.data={value:n}}))}})),n}function _(e){var t={};for(var n in e)t[e[n]]=n;return t}},1e3:(e,t,n)=>{n.d(t,{Cf:()=>a,S3:()=>r,Tb:()=>o,WR:()=>s,e4:()=>c,pS:()=>u,qN:()=>d,yB:()=>f,zt:()=>i});const i=["request","imp","bidResponse","response"],[r,o,s,a]=i,[d,c]=["default","pbs"],l=new Set(i);const{registerOrtbProcessor:u,getProcessors:f}=function(){const e={};return{registerOrtbProcessor(t){let{type:n,name:r,fn:o,priority:s=0,dialects:a=[d]}=t;if(!l.has(n))throw new Error(`ORTB processor type must be one of: ${i.join(", ")}`);a.forEach((t=>{e.hasOwnProperty(t)||(e[t]={}),e[t].hasOwnProperty(n)||(e[t][n]={}),e[t][n][r]={priority:s,fn:o}}))},getProcessors:t=>e[t]||{}}}()},5901:(e,t,n)=>{function i(e,t,n){return e&&e.includes(t,n)||!1}function r(){return Array.from.apply(Array,arguments)}function o(e,t,n){return e&&e.find(t,n)}n.d(t,{A6:()=>r,I6:()=>o,mK:()=>i})},7804:(e,t,n)=>{var i=n(7873),r=n(1069),o=n(3172),s=n(433),a=n(2449),d=n(8969),c=n(5901),l=n(9075),u=n(6031);const{REQUEST:f,RESPONSE:g,NATIVE:p,EVENT:h}=d.nl,m={[f]:function(e,t,n){(0,l.bw)({renderFn(t){e(Object.assign({message:g,renderer:(0,u.k)(n)},t))},resizeFn:y(t.adId,n),options:t.options,adId:t.adId,bidResponse:n})},[h]:function(e,t,n){if(null==n)return void(0,r.vV)(`Cannot find ad '${t.adId}' for x-origin event request`);if(n.status!==d.tl.RENDERED)return void(0,r.JE)(`Received x-origin event request without corresponding render request for ad '${n.adId}'`);return(0,l.Uc)(t,n)}};function b(){window.addEventListener("message",(function(e){!function(e){var t=e.message?"message":"data",n={};try{n=JSON.parse(e[t])}catch(e){return}if(n&&n.adId&&n.message&&m.hasOwnProperty(n.message))(0,l.$A)(n.adId,n.message===d.nl.REQUEST).then((t=>{var i,o;m[n.message]((i=n.adId,o=function(e){return null==e.origin&&0===e.ports.length?function(){const e="Cannot post message to a frame with null origin. Please update creatives to use MessageChannel, see https://github.com/prebid/Prebid.js/issues/7870";throw(0,r.vV)(e),new Error(e)}:e.ports.length>0?function(t){e.ports[0].postMessage(JSON.stringify(t))}:function(t){e.source.postMessage(JSON.stringify(t),e.origin)}}(e),function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return o(Object.assign({},e,{adId:i}),...n)}),n,t)}))}(e)}),!1)}function y(e,t){return function(n,i){!function(e){let{adId:t,adUnitCode:n,width:i,height:o}=e;function s(e){return e?e+"px":"100%"}function a(e){let i=d(t,n),r=document.getElementById(i);return r&&r.querySelector(e)}function d(e,t){return(0,r.II)()?l(e):(0,r.t1)()?u(t):t}function l(e){const t=(0,c.I6)(window.googletag.pubads().getSlots(),(t=>(0,c.I6)(t.getTargetingKeys(),(n=>(0,c.mK)(t.getTargeting(n),e)))));return t?t.getSlotElementId():null}function u(e){let t=window.apntag.getTag(e);return t&&t.targetId}["div","iframe"].forEach((e=>{let t=a(e+':not([style*="display: none"])');if(t){let e=t.style;e.width=s(i),e.height=s(o)}else(0,r.vV)(`Unable to locate matching page element for adUnitCode ${n}. Can't resize it to ad's dimensions. Please review setup.`)}))}({...t,width:n,height:i,adId:e})}}Object.assign(m,{[p]:function(e,t,n){if(null==n)return void(0,r.vV)(`Cannot find ad for x-origin event request: '${t.adId}'`);switch(t.action){case"assetRequest":(0,l.Hh)(n,(()=>e((0,a.IX)(t,n))));break;case"allAssetRequest":(0,l.Hh)(n,(()=>e((0,a.yl)(t,n))));break;default:(0,l.vW)(t,n,{resizeFn:y(t.adId,n)}),(0,l.Pk)(n)}}});var v=n(8230),E=n(3272),A=n(6881),I=n(7863),w=n(2693),T=n(5023),C=n(9214),B=n(1371),O=n(2713),k=[];const R=20,S="targetingControls.allowTargetingKeys",D="targetingControls.addTargetingKeys",U=`Only one of "${S}" or "${D}" can be set`,_=Object.keys(d.xS).map((e=>d.xS[e]));let $={isActualBid:e=>e.getStatusCode()===d.XQ.GOOD,isBidNotExpired:e=>e.responseTimestamp+1e3*(0,I.L)(e)>(0,r.vE)(),isUnusedBid:e=>e&&(e.status&&!(0,c.mK)([d.tl.RENDERED],e.status)||!e.status)};function j(e){return!Object.values($).some((t=>!t(e)))}const q=(0,C.A_)("sync",(function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,i=arguments.length>3&&void 0!==arguments[3]&&arguments[3],o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:r.Q0;if(!i){const i=[],s=E.$W.getConfig("sendBidsControl.dealPrioritization");let a=(0,r.$z)(e,"adUnitCode");return Object.keys(a).forEach((e=>{let d=[],c=(0,r.$z)(a[e],"bidderCode");Object.keys(c).forEach((e=>{d.push(c[e].reduce(t))})),n?(d=s?d.sort(x(!0)):d.sort(((e,t)=>t.cpm-e.cpm)),i.push(...d.slice(0,n))):(d=d.sort(o),i.push(...d))})),i}return e}));function x(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return function(t,n){return void 0!==t.adserverTargeting.hb_deal&&void 0===n.adserverTargeting.hb_deal?-1:void 0===t.adserverTargeting.hb_deal&&void 0!==n.adserverTargeting.hb_deal?1:e?n.cpm-t.cpm:n.adserverTargeting.hb_pb-t.adserverTargeting.hb_pb}}function N(e,t){return(arguments.length>2&&void 0!==arguments[2]?arguments[2]:()=>window.googletag.pubads().getSlots())().reduce(((e,n)=>{const i=(0,r.fp)(t)&&t(n);return Object.keys(e).filter((0,r.fp)(i)?i:(0,r.iC)(n)).forEach((t=>e[t].push(n))),e}),Object.fromEntries(e.map((e=>[e,[]]))))}const P=function(e){let t={},n={};function i(e){let t=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!(arguments.length>1&&void 0!==arguments[1]&&arguments[1]))return[];const n=_.concat(a.Nh),i=E.$W.getConfig("targetingControls.allowSendAllBidsTargetingKeys"),r=i?i.map((e=>d.xS[e])):n;return e.reduce(((e,i)=>{if(!t||i.dealId){const o=function(e,t){return t.reduce(((t,n)=>(e.adserverTargeting[n]&&t.push({[`${n}_${e.bidderCode}`.substring(0,20)]:[e.adserverTargeting[n]]}),t)),[])}(i,n.filter((e=>void 0!==i.adserverTargeting[e]&&(t||-1!==r.indexOf(e)))));o&&e.push({[i.adUnitCode]:o})}return e}),[])}function o(t){return"string"==typeof t?[t]:(0,r.cy)(t)?t:e.getAdUnitCodes()||[]}function l(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:O.Bq,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,r=e.getBidsReceived().reduce(((e,t)=>{const i=E.$W.getConfig("useBidCache"),r=E.$W.getConfig("bidCacheFilterFunction"),o=n[t.adUnitCode]===t.auctionId,a=!(i&&!o&&"function"==typeof r)||!!r(t);return(i||o)&&a&&(0,s.A)(t,"video.context")!==B.LM&&j(t)&&(t.latestTargetedAuctionId=n[t.adUnitCode],e.push(t)),e}),[]);return q(r,t,void 0,void 0,void 0,i)}function u(){return e.getStandardBidderAdServerTargeting().map((e=>e.key)).concat(_).filter(r.hj)}return t.setLatestAuctionForAdUnit=function(e,t){n[e]=t},t.resetPresetTargeting=function(e,t){if((0,r.II)()){const n=o(e);Object.values(N(n,t)).forEach((e=>{e.forEach((e=>{!function(e){k.forEach((t=>{e.getTargeting(t)&&e.clearTargeting(t)}))}(e)}))}))}},t.resetPresetTargetingAST=function(e){o(e).forEach((function(e){const t=window.apntag.getTag(e);if(t&&t.keywords){const n=Object.keys(t.keywords),i={};n.forEach((e=>{(0,c.mK)(k,e.toLowerCase())||(i[e]=t.keywords[e])})),window.apntag.modifyTag(e,{keywords:i})}}))},t.getAllTargeting=function(t,n,f){let g=arguments.length>3&&void 0!==arguments[3]?arguments[3]:O.Vk,p=arguments.length>4&&void 0!==arguments[4]?arguments[4]:r.Q0;f||=l(g,p);const h=o(t),m=E.$W.getConfig("enableSendAllBids"),b=E.$W.getConfig("sendBidsControl.bidLimit"),y=m&&(n||b)||0,{customKeysByUnit:v,filteredBids:A}=function(e,t){const n=[],i={},o=E.$W.getConfig("targetingControls.alwaysIncludeDeals");return t.forEach((t=>{const s=(0,c.mK)(e,t.adUnitCode),d=!0===w.u.get(t.bidderCode,"allowZeroCpmBids")?t.cpm>=0:t.cpm>0,l=o&&t.dealId;s&&(l||d)&&(n.push(t),Object.keys(t.adserverTargeting).filter(function(){let e=u();e=e.concat(a.Nh);return function(t){return-1===e.indexOf(t)}}()).forEach((e=>{const n=e.substring(0,R),o=i[t.adUnitCode]||{},s=[t.adserverTargeting[e]];o[n]?o[n]=o[n].concat(s).filter(r.hj):o[n]=s,i[t.adUnitCode]=o})))})),{filteredBids:n,customKeysByUnit:i}}(h,f);let I=function(t,n){const o=function(e){let t=[],n=e.reduce(((e,n)=>((0,c.mK)(t,n.adUnitCode)||(e.push(n),t.push(n.adUnitCode)),e)),[]),i=u();return n=n.map((e=>({[e.adUnitCode]:Object.keys(e.adserverTargeting).filter((t=>void 0===e.sendStandardTargeting||e.sendStandardTargeting||-1===i.indexOf(t))).reduce(((t,n)=>{const i=[e.adserverTargeting[n]],r={[n.substring(0,R)]:i};if(n===d.xS.DEAL){const o=`${n}_${e.bidderCode}`.substring(0,R),s={[o]:i};return[...t,r,s]}return[...t,r]}),[])}))),n}(t).concat(function(e,t){return e.reduce(((e,n)=>{const i=Object.assign({},n),r=t[i.adUnitCode],o=[];return r&&Object.keys(r).forEach((e=>{e&&r[e]&&o.push({[e]:r[e]})})),e.push({[i.adUnitCode]:o}),e}),[])}(t,n)).concat(function(e){const t=E.$W.getConfig("targetingControls.alwaysIncludeDeals");return i(e,E.$W.getConfig("enableSendAllBids")||t,t)}(t)).concat(function(){function t(e){return(0,s.A)(e,d.iD.ADSERVER_TARGETING)}function n(e){const n=t(e);return Object.keys(n).map((function(e){return(0,r.O8)(n[e])&&(n[e]=n[e].split(",").map((e=>e.trim()))),(0,r.cy)(n[e])||(n[e]=[n[e]]),{[e]:n[e]}}))}return e.getAdUnits().filter((e=>t(e))).reduce(((e,t)=>{const i=n(t);return i&&e.push({[t.code]:i}),e}),[])}());return o.forEach((e=>{!function(e){Object.keys(e).forEach((t=>{e[t].forEach((e=>{const t=Object.keys(e);-1===k.indexOf(t[0])&&(k=t.concat(k))}))}))}(e)})),o}(q(A,g,y,void 0,p),v);const T=Object.keys(Object.assign({},d.Zh,d.x5));let C=E.$W.getConfig(S);const B=E.$W.getConfig(D);if(null!=B&&null!=C)throw new Error(U);C=null!=B?T.concat(B):C||T,Array.isArray(C)&&C.length>0&&(I=function(e,t){const n=Object.assign({},d.xS,d.x5),i=Object.keys(n),o={};(0,r.fH)(`allowTargetingKeys - allowed keys [ ${t.map((e=>n[e])).join(", ")} ]`),e.map((e=>{const r=Object.keys(e)[0],s=e[r].filter((e=>{const r=Object.keys(e)[0],s=0===i.filter((e=>0===r.indexOf(n[e]))).length||(0,c.I6)(t,(e=>{const t=n[e];return 0===r.indexOf(t)}));return o[r]=!s,s}));e[r]=s}));const s=Object.keys(o).filter((e=>o[e]));return(0,r.fH)(`allowTargetingKeys - removed keys [ ${s.join(", ")} ]`),e.filter((e=>e[Object.keys(e)[0]].length>0))}(I,C)),I=function(e){let t=e.map((e=>({[Object.keys(e)[0]]:e[Object.keys(e)[0]].map((e=>({[Object.keys(e)[0]]:e[Object.keys(e)[0]].join(",")}))).reduce(((e,t)=>Object.assign(t,e)),{})})));return t=t.reduce((function(e,t){var n=Object.keys(t)[0];return e[n]=Object.assign({},e[n],t[n]),e}),{}),t}(I);const _=E.$W.getConfig("targetingControls.auctionKeyMaxChars");return _&&((0,r.fH)(`Detected 'targetingControls.auctionKeyMaxChars' was active for this auction; set with a limit of ${_} characters. Running checks on auction keys...`),I=function(e,t){let n=(0,r.Go)(e),i=Object.keys(n).map((e=>({adUnitCode:e,adserverTargeting:n[e]}))).sort(x());return i.reduce((function(e,i,o,s){let a=(d=i.adserverTargeting,Object.keys(d).reduce((function(e,t){return e+`${t}%3d${encodeURIComponent(d[t])}%26`}),""));var d;o+1===s.length&&(a=a.slice(0,-3));let c=i.adUnitCode,l=a.length;return l<=t?(t-=l,(0,r.fH)(`AdUnit '${c}' auction keys comprised of ${l} characters. Deducted from running threshold; new limit is ${t}`,n[c]),e[c]=n[c]):(0,r.JE)(`The following keys for adUnitCode '${c}' exceeded the current limit of the 'auctionKeyMaxChars' setting.\nThe key-set size was ${l}, the current allotted amount was ${t}.\n`,n[c]),o+1===s.length&&0===Object.keys(e).length&&(0,r.vV)("No auction targeting keys were permitted due to the setting in setConfig(targetingControls.auctionKeyMaxChars). Please review setup and consider adjusting."),e}),{})}(I,_)),h.forEach((e=>{I[e]||(I[e]={})})),I},E.$W.getConfig("targetingControls",(function(e){null!=(0,s.A)(e,S)&&null!=(0,s.A)(e,D)&&(0,r.vV)(U)})),t.setTargetingForGPT=(0,C.A_)("sync",(function(n,i){let o=t.getAllTargeting(n),s=Object.fromEntries(k.map((e=>[e,null])));Object.entries(N(Object.keys(o),i)).forEach((e=>{let[t,n]=e;n.forEach((e=>{Object.keys(o[t]).forEach((e=>{let n=o[t][e];"string"==typeof n&&-1!==n.indexOf(",")&&(n=n.split(",")),o[t][e]=n})),(0,r.OG)(`Attempting to set targeting-map for slot: ${e.getSlotElementId()} with targeting-map:`,o[t]),e.updateTargetingFromMap(Object.assign({},s,o[t]))}))})),Object.keys(o).forEach((t=>{Object.keys(o[t]).forEach((n=>{"hb_adid"===n&&e.setStatusForBids(o[t][n],d.tl.BID_TARGETING_SET)}))})),t.targetingDone(o),T.Ic(d.qY.SET_TARGETING,o)}),"setTargetingForGPT"),t.targetingDone=(0,C.A_)("sync",(function(e){return e}),"targetingDone"),t.getWinningBids=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:O.Vk,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:r.Q0;const s=[],a=t||l(n,i),d=o(e);return a.reduce(((e,t)=>{const n=t.adUnitCode,i=!0===w.u.get(n,"allowZeroCpmBids")?t.cpm>=0:t.cpm>0,r=E.$W.getConfig("targetingControls.alwaysIncludeDeals")&&t.dealId;return(0,c.mK)(d,n)&&!(0,c.mK)(s,n)&&(r||i)&&(e.push(t),s.push(n)),e}),[])},t.setTargetingForAst=function(e){let n=t.getAllTargeting(e);try{t.resetPresetTargetingAST(e)}catch(e){(0,r.vV)("unable to reset targeting for AST"+e)}Object.keys(n).forEach((e=>Object.keys(n[e]).forEach((t=>{if((0,r.OG)(`Attempting to set targeting for targetId: ${e} key: ${t} value: ${n[e][t]}`),(0,r.O8)(n[e][t])||(0,r.cy)(n[e][t])){let i={},r=/pt[0-9]/;t.search(r)<0?i[t.toUpperCase()]=n[e][t]:i[t]=n[e][t],window.apntag.setKeywords(e,i,{overrideKeyValue:!0})}}))))},t.isApntagDefined=function(){if(window.apntag&&(0,r.fp)(window.apntag.setKeywords))return!0},t}(A.n);var W=n(3597),V=n(1580),M=n(5555),G=n(5569);const F="__tlpbjs_debugging__";function H(){return(0,i.m)().installedModules.includes("debugging")}function L(e){return new M.k((t=>{(0,V.R)(e,G.tp,"debugging",t)}))}function z(){let{alreadyInstalled:e=H,script:t=L}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=null;return function(){return null==n&&(n=new M.k(((n,o)=>{setTimeout((()=>{if(e())n();else{const e="https://cdn.jsdelivr.net/npm/prebid.js@latest/dist/debugging-standalone.js";(0,r.OG)(`Debugging module not installed, loading it from "${e}"...`),(0,i.m)()._installDebugging=!0,t(e).then((()=>{(0,i.m)()._installDebugging({DEBUG_KEY:F,hook:C.A_,config:E.$W,createBid:W.O,logger:(0,r.h0)("DEBUG:")})})).then(n,o)}}))}))),n}}const J=function(){let{load:e=z(),hook:t=(0,C.Yn)("requestBids")}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=null,i=!1;function r(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r<t;r++)i[r-1]=arguments[r];return(n||M.k.resolve()).then((()=>e.apply(this,i)))}function o(){t.getHooks({hook:r}).remove(),i=!1}return{enable:function(){i||(n=e(),t.before(r,99),i=!0)},disable:o,reset:function(){n=null,o()}}}();J.reset;E.$W.getConfig("debugging",(function(e){let{debugging:t}=e;t?.enabled?J.enable():J.disable()}));var K=n(2938),Q=n(1445),Y=n(6894),X=n(1970),Z=n(6916),ee=n(3895);const te=(0,i.m)(),{triggerUserSyncs:ne}=v.zt,{ADD_AD_UNITS:ie,REQUEST_BIDS:re,SET_TARGETING:oe}=d.qY,se={bidWon:function(e){if(!A.n.getBidsRequested().map((e=>e.bids.map((e=>e.adUnitCode)))).reduce(r.Bq).filter(r.hj).includes(e))return void(0,r.vV)('The "'+e+'" placement is not defined.');return!0}};function ae(e,t){let n=[];return(0,r.cy)(e)&&(t?e.length===t:e.length>0)&&(e.every((e=>(0,r.Uu)(e,2)))?n=e:(0,r.Uu)(e,2)&&n.push(e)),n}function de(e,t){const n=e.ortb2Imp||{},i=e.mediaTypes||{};n[t]?.battr&&i[t]?.battr&&n[t]?.battr!==i[t]?.battr&&(0,r.JE)(`Ad unit ${e.code} specifies conflicting ortb2Imp.${t}.battr and mediaTypes.${t}.battr, the latter will be ignored`,e);const s=n[t]?.battr||i[t]?.battr;null!=s&&((0,o.J)(e,`ortb2Imp.${t}.battr`,s),(0,o.J)(e,`mediaTypes.${t}.battr`,s))}function ce(e){const t=(0,r.Go)(e),n=t.mediaTypes.banner,i=ae(n.sizes);return i.length>0?(n.sizes=i,t.sizes=i):((0,r.vV)("Detected a mediaTypes.banner object without a proper sizes field. Please ensure the sizes are listed like: [[300, 250], ...]. Removing invalid mediaTypes.banner object from request."),delete t.mediaTypes.banner),de(t,"banner"),t}function le(e){const t=(0,r.Go)(e),n=t.mediaTypes.video;if(n.playerSize){let e="number"==typeof n.playerSize[0]?2:1;const i=ae(n.playerSize,e);i.length>0?(2===e&&(0,r.fH)("Transforming video.playerSize from [640,480] to [[640,480]] so it's in the proper format."),n.playerSize=i,t.sizes=i):((0,r.vV)("Detected incorrect configuration of mediaTypes.video.playerSize. Please specify only one set of dimensions in a format like: [[640, 480]]. Removing invalid mediaTypes.video.playerSize property from request."),delete t.mediaTypes.video.playerSize)}return(0,ee.aP)(t),de(t,"video"),t}function ue(e){function t(t){return(0,r.vV)(`Error in adUnit "${e.code}": ${t}. Removing native request from ad unit`,e),delete i.mediaTypes.native,i}function n(e){for(const t of["sendTargetingKeys","types"])if(o.hasOwnProperty(t)){const n=e(t);if(n)return n}}const i=(0,r.Go)(e),o=i.mediaTypes.native;if(o.ortb){if(o.ortb.assets?.some((e=>!(0,r.Et)(e.id)||e.id<0||e.id%1!=0)))return t("native asset ID must be a nonnegative integer");if(n((e=>t(`ORTB native requests cannot specify "${e}"`))))return i;const e=Object.keys(d.x5).filter((e=>d.x5[e].includes("hb_native_"))),s=Object.keys(o).filter((t=>e.includes(t)));s.length>0&&((0,r.vV)(`when using native OpenRTB format, you cannot use legacy native properties. Deleting ${s} keys from request.`),s.forEach((e=>delete i.mediaTypes.native[e])))}else n((e=>`mediaTypes.native.${e} is deprecated, consider using native ORTB instead`));return o.image&&o.image.sizes&&!Array.isArray(o.image.sizes)&&((0,r.vV)("Please use an array of sizes for native.image.sizes field. Removing invalid mediaTypes.native.image.sizes property from request."),delete i.mediaTypes.native.image.sizes),o.image&&o.image.aspect_ratios&&!Array.isArray(o.image.aspect_ratios)&&((0,r.vV)("Please use an array of sizes for native.image.aspect_ratios field. Removing invalid mediaTypes.native.image.aspect_ratios property from request."),delete i.mediaTypes.native.image.aspect_ratios),o.icon&&o.icon.sizes&&!Array.isArray(o.icon.sizes)&&((0,r.vV)("Please use an array of sizes for native.icon.sizes field. Removing invalid mediaTypes.native.icon.sizes property from request."),delete i.mediaTypes.native.icon.sizes),de(i,"native"),i}function fe(e,t){let n=(0,s.A)(e,`mediaTypes.${t}.pos`);if(!(0,r.Et)(n)||isNaN(n)||!isFinite(n)){let n=`Value of property 'pos' on ad unit ${e.code} should be of type: Number`;(0,r.JE)(n),delete e.mediaTypes[t].pos}return e}function ge(e){const t=t=>`adUnit.code '${e.code}' ${t}`,n=e.mediaTypes,i=e.bids;return null==i||(0,r.cy)(i)?null==i&&null==e.ortb2Imp?((0,r.vV)(t("has no 'adUnit.bids' and no 'adUnit.ortb2Imp'. Removing adUnit from auction")),null):n&&0!==Object.keys(n).length?(null==e.ortb2Imp||null!=i&&0!==i.length||(e.bids=[{bidder:null}],(0,r.OG)(t("defines 'adUnit.ortb2Imp' with no 'adUnit.bids'; it will be seen only by S2S adapters"))),e):((0,r.vV)(t("does not define a 'mediaTypes' object. This is a required field for the auction, so this adUnit has been removed.")),null):((0,r.vV)(t("defines 'adUnit.bids' that is not an array. Removing adUnit from auction")),null)}!function(){let e=null;try{e=window.sessionStorage}catch(e){}if(null!==e){let t=J,n=null;try{n=e.getItem(F)}catch(e){}null!==n&&t.enable()}}(),te.bidderSettings=te.bidderSettings||{},te.libLoaded=!0,te.version="v9.18.0-pre",(0,r.fH)("Prebid.js v9.18.0-pre loaded"),te.installedModules=te.installedModules||[],te.adUnits=te.adUnits||[],te.triggerUserSyncs=ne;const pe={validateAdUnit:ge,validateBannerMediaType:ce,validateSizes:ae};Object.assign(pe,{validateNativeMediaType:ue}),Object.assign(pe,{validateVideoMediaType:le});const he=(0,C.A_)("sync",(function(e){const t=[];return e.forEach((e=>{if(null==(e=ge(e)))return;const n=e.mediaTypes;let i,r,o;n.banner&&(i=ce(e),n.banner.hasOwnProperty("pos")&&(i=fe(i,"banner"))),n.video&&(r=le(i||e),n.video.hasOwnProperty("pos")&&(r=fe(r,"video"))),n.native&&(o=ue(r||(i||e)));const s=Object.assign({},i,r,o);t.push(s)})),t}),"checkAdUnitSetup");function me(e){const t=A.n[e]().filter((e=>A.n.getAdUnitCodes().includes(e.adUnitCode))),n=A.n.getLastAuctionId();return t.map((e=>e.adUnitCode)).filter(r.hj).map((e=>t.filter((t=>t.auctionId===n&&t.adUnitCode===e)))).filter((e=>e&&e[0]&&e[0].adUnitCode)).map((e=>({[e[0].adUnitCode]:{bids:e}}))).reduce(((e,t)=>Object.assign(e,t)),{})}te.getAdserverTargetingForAdUnitCodeStr=function(e){if((0,r.fH)("Invoking tlpbjs.getAdserverTargetingForAdUnitCodeStr",arguments),e){var t=te.getAdserverTargetingForAdUnitCode(e);return(0,r.$D)(t)}(0,r.OG)("Need to call getAdserverTargetingForAdUnitCodeStr with adunitCode")},te.getHighestUnusedBidResponseForAdUnitCode=function(e){if(e){const t=A.n.getAllBidsForAdUnitCode(e).filter(j);return t.length?t.reduce(O.Vk):{}}(0,r.OG)("Need to call getHighestUnusedBidResponseForAdUnitCode with adunitCode")},te.getAdserverTargetingForAdUnitCode=function(e){return te.getAdserverTargeting(e)[e]},te.getAdserverTargeting=function(e){return(0,r.fH)("Invoking tlpbjs.getAdserverTargeting",arguments),P.getAllTargeting(e)},te.getConsentMetadata=function(){return(0,r.fH)("Invoking tlpbjs.getConsentMetadata"),Z.SL.getConsentMeta()},te.getNoBids=function(){return(0,r.fH)("Invoking tlpbjs.getNoBids",arguments),me("getNoBids")},te.getNoBidsForAdUnitCode=function(e){return{bids:A.n.getNoBids().filter((t=>t.adUnitCode===e))}},te.getBidResponses=function(){return(0,r.fH)("Invoking tlpbjs.getBidResponses",arguments),me("getBidsReceived")},te.getBidResponsesForAdUnitCode=function(e){return{bids:A.n.getBidsReceived().filter((t=>t.adUnitCode===e))}},te.setTargetingForGPTAsync=function(e,t){(0,r.fH)("Invoking tlpbjs.setTargetingForGPTAsync",arguments),(0,r.II)()?P.setTargetingForGPT(e,t):(0,r.vV)("window.googletag is not defined on the page")},te.setTargetingForAst=function(e){(0,r.fH)("Invoking tlpbjs.setTargetingForAn",arguments),P.isApntagDefined()?(P.setTargetingForAst(e),T.Ic(oe,P.getAllTargeting())):(0,r.vV)("window.apntag is not defined on the page")},te.renderAd=(0,C.A_)("async",(function(e,t,n){(0,r.fH)("Invoking tlpbjs.renderAd",arguments),(0,r.OG)("Calling renderAd with adId :"+t),(0,l.BS)(e,t,n)})),te.removeAdUnit=function(e){if((0,r.fH)("Invoking tlpbjs.removeAdUnit",arguments),!e)return void(te.adUnits=[]);let t;t=(0,r.cy)(e)?e:[e],t.forEach((e=>{for(let t=te.adUnits.length-1;t>=0;t--)te.adUnits[t].code===e&&te.adUnits.splice(t,1)}))},te.requestBids=function(){const e=(0,C.A_)("async",(function(){let{bidsBackHandler:e,timeout:t,adUnits:n,adUnitCodes:i,labels:o,auctionId:s,ttlBuffer:a,ortb2:d,metrics:l,defer:u}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};T.Ic(re);const f=t||E.$W.getConfig("bidderTimeout");(0,r.fH)("Invoking tlpbjs.requestBids",arguments),null==i||Array.isArray(i)||(i=[i]),i&&i.length?n=n.filter((e=>(0,c.mK)(i,e.code))):i=n&&n.map((e=>e.code)),i=i.filter(r.hj);const g={global:(0,r.D9)({},E.$W.getAnyConfig("ortb2")||{},d||{}),bidder:Object.fromEntries(Object.entries(E.$W.getBidderConfig()).map((e=>{let[t,n]=e;return[t,n.ortb2]})).filter((e=>{let[t,n]=e;return null!=n})))};return(0,X.w)(M.k.resolve(g.global)).then((t=>(g.global=t,be({bidsBackHandler:e,timeout:f,adUnits:n,adUnitCodes:i,labels:o,auctionId:s,ttlBuffer:a,ortb2Fragments:g,metrics:l,defer:u}))))}),"requestBids");return(0,C.Y6)(e,(function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.adUnits||te.adUnits;return t.adUnits=(0,r.cy)(n)?n.slice():[n],t.metrics=(0,Y.K7)(),t.metrics.checkpoint("requestBids"),t.defer=(0,M.v)({promiseFactory:e=>new Promise(e)}),e.call(this,t),t.defer.promise}))}();const be=(0,C.A_)("async",(function(){let{bidsBackHandler:e,timeout:t,adUnits:n,ttlBuffer:i,adUnitCodes:s,labels:a,auctionId:d,ortb2Fragments:l,metrics:u,defer:f}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const g=(0,Q.pX)(E.$W.getConfig("s2sConfig")||[]);function p(t,n,i){if("function"==typeof e)try{e(t,n,i)}catch(e){(0,r.vV)("Error executing bidsBackHandler",null,e)}f.resolve({bids:t,timedOut:n,auctionId:i})}!function(e){e.forEach((e=>(0,ee.V0)(e)))}(n),n=(0,Y.BO)(u).measureTime("requestBids.validate",(()=>he(n)));const h={};if(n.forEach((e=>{const t=Object.keys(e.mediaTypes||{banner:"banner"}),n=e.bids.map((e=>e.bidder)),o=Q.Ay.bidderRegistry,s=n.filter((e=>!g.has(e)));e.adUnitId=(0,r.lk)();const a=e.ortb2Imp?.ext?.tid;a&&(h.hasOwnProperty(e.code)?(0,r.JE)(`Multiple distinct ortb2Imp.ext.tid were provided for twin ad units '${e.code}'`):h[e.code]=a),null==i||e.hasOwnProperty("ttlBuffer")||(e.ttlBuffer=i),s.forEach((n=>{const i=o[n],s=i&&i.getSpec&&i.getSpec(),a=s&&s.supportedMediaTypes||["banner"];t.some((e=>(0,c.mK)(a,e)))||((0,r.JE)((0,r.bz)(e,n)),e.bids=e.bids.filter((e=>e.bidder!==n)))}))})),n&&0!==n.length){n.forEach((e=>{const t=e.ortb2Imp?.ext?.tid||h[e.code]||(0,r.lk)();h.hasOwnProperty(e.code)||(h[e.code]=t),e.transactionId=t,(0,o.J)(e,"ortb2Imp.ext.tid",t)}));const e=A.n.createAuction({adUnits:n,adUnitCodes:s,callback:p,cbTimeout:t,labels:a,auctionId:d,ortb2Fragments:l,metrics:u});let i=n.length;i>15&&(0,r.fH)(`Current auction ${e.getAuctionId()} contains ${i} adUnits.`,n),s.forEach((t=>P.setLatestAuctionForAdUnit(t,e.getAuctionId()))),e.callBids()}else(0,r.OG)("No adUnits configured. No bids requested."),p()}),"startAuction");te.requestBids.before((function(e,t){function n(e){for(var t;t=e.shift();)t()}n(K.s0),n(ye),e.call(this,t)}),49),te.addAdUnits=function(e){(0,r.fH)("Invoking tlpbjs.addAdUnits",arguments),te.adUnits.push.apply(te.adUnits,(0,r.cy)(e)?e:[e]),T.Ic(ie)},te.onEvent=function(e,t,n){(0,r.fH)("Invoking tlpbjs.onEvent",arguments),(0,r.fp)(t)?!n||se[e].call(null,n)?T.on(e,t,n):(0,r.vV)('The id provided is not valid for event "'+e+'" and no handler was set.'):(0,r.vV)('The event handler provided is not a function and was not set on event "'+e+'".')},te.offEvent=function(e,t,n){(0,r.fH)("Invoking tlpbjs.offEvent",arguments),n&&!se[e].call(null,n)||T.AU(e,t,n)},te.getEvents=function(){return(0,r.fH)("Invoking tlpbjs.getEvents"),T.kQ()},te.registerBidAdapter=function(e,t){(0,r.fH)("Invoking tlpbjs.registerBidAdapter",arguments);try{Q.Ay.registerBidAdapter(e(),t)}catch(e){(0,r.vV)("Error registering bidder adapter : "+e.message)}},te.registerAnalyticsAdapter=function(e){(0,r.fH)("Invoking tlpbjs.registerAnalyticsAdapter",arguments);try{Q.Ay.registerAnalyticsAdapter(e)}catch(e){(0,r.vV)("Error registering analytics adapter : "+e.message)}},te.createBid=function(e){return(0,r.fH)("Invoking tlpbjs.createBid",arguments),(0,W.O)(e)};const ye=[],ve=(0,C.A_)("async",(function(e){e&&!(0,r.Im)(e)?((0,r.fH)("Invoking tlpbjs.enableAnalytics for: ",e),Q.Ay.enableAnalytics(e)):(0,r.vV)("tlpbjs.enableAnalytics should be called with option {}")}),"enableAnalyticsCb");function Ee(e){e.forEach((function(e){if(void 0===e.called)try{e.call(),e.called=!0}catch(e){(0,r.vV)("Error processing command :","prebid.js",e)}}))}te.enableAnalytics=function(e){ye.push(ve.bind(this,e))},te.aliasBidder=function(e,t,n){(0,r.fH)("Invoking tlpbjs.aliasBidder",arguments),e&&t?Q.Ay.aliasBidAdapter(e,t,n):(0,r.vV)("bidderCode and alias must be passed as arguments","tlpbjs.aliasBidder")},te.aliasRegistry=Q.Ay.aliasRegistry,E.$W.getConfig("aliasRegistry",(e=>{"private"===e.aliasRegistry&&delete te.aliasRegistry})),te.getAllWinningBids=function(){return A.n.getAllWinningBids()},te.getAllPrebidWinningBids=function(){return A.n.getBidsReceived().filter((e=>e.status===d.tl.BID_TARGETING_SET))},te.getHighestCpmBids=function(e){return P.getWinningBids(e)},te.clearAllAuctions=function(){A.n.clearAllAuctions()},te.markWinningBidAsUsed=function(e){let t,{adId:n,adUnitCode:i}=e;i&&null==n?t=P.getWinningBids(i):n?t=A.n.getBidsReceived().filter((e=>e.adId===n)):(0,r.JE)("Improper use of markWinningBidAsUsed. It needs an adUnitCode or an adId to function."),t.length>0&&(A.n.addWinningBid(t[0]),(0,l.qn)(t[0]))},te.getConfig=E.$W.getAnyConfig,te.readConfig=E.$W.readAnyConfig,te.mergeConfig=E.$W.mergeConfig,te.mergeBidderConfig=E.$W.mergeBidderConfig,te.setConfig=E.$W.setConfig,te.setBidderConfig=E.$W.setBidderConfig,te.que.push((()=>b())),te.cmd.push=function(e){if("function"==typeof e)try{e.call()}catch(e){(0,r.vV)("Error processing command :",e.message,e.stack)}else(0,r.vV)("Commands written into tlpbjs.cmd.push must be wrapped in a function")},te.que.push=te.cmd.push,te.processQueue=function(){(0,l.XO)(),C.A_.ready(),Ee(te.que),Ee(te.cmd)},te.triggerBilling=e=>{let{adId:t,adUnitCode:n}=e;A.n.getAllWinningBids().filter((e=>e.adId===t||null==t&&e.adUnitCode===n)).forEach((e=>{Q.Ay.triggerBilling(e),(0,l.vB)(e)}))}},7873:(e,t,n)=>{n.d(t,{E:()=>s,m:()=>o});const i=window,r=i.tlpbjs=i.tlpbjs||{};function o(){return r}function s(e){r.installedModules.push(e)}r.cmd=r.cmd||[],r.que=r.que||[],i===window&&(i._pbjsGlobals=i._pbjsGlobals||[],i._pbjsGlobals.push("tlpbjs"))},7934:(e,t,n)=>{n.d(t,{EN:()=>d,gR:()=>s});var i=n(3272),r=n(1069);function o(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window;if(!e)return e;if(/\w+:\/\//.exec(e))return e;let n=t.location.protocol;try{n=t.top.location.protocol}catch(e){}return/^\/\//.exec(e)?n+e:`${n}//${e}`}function s(e){let{noLeadingWww:t=!1,noPort:n=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};try{e=new URL(o(e))}catch(e){return}return e=n?e.hostname:e.host,t&&e.startsWith("www.")&&(e=e.substring(4)),e}function a(e){try{const t=e.querySelector("link[rel='canonical']");if(null!==t)return t.href}catch(e){}return null}const d=function(e){let t,n,i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window;return r.top!==r?e:function(){const o=a(r.document),s=r.location.href;return t===o&&s===n||(t=o,n=s,i=e()),i}}((c=window,function(){const e=[],t=function(e){try{if(!e.location.ancestorOrigins)return;return e.location.ancestorOrigins}catch(e){}}(c),n=i.$W.getConfig("maxNestedIframes");let d,l,u,f,g=!1,p=0,h=!1,m=!1,b=!1;do{const n=d,i=m;let o,s=!1,f=null;m=!1,d=d?d.parent:c;try{o=d.location.href||null}catch(e){s=!0}if(s)if(i){const e=n.context;try{f=e.sourceUrl,l=f,b=!0,h=!0,d===c.top&&(g=!0),e.canonicalUrl&&(u=e.canonicalUrl)}catch(e){}}else{(0,r.JE)("Trying to access cross domain iframe. Continuing without referrer and location");try{const e=n.document.referrer;e&&(f=e,d===c.top&&(g=!0))}catch(e){}!f&&t&&t[p-1]&&(f=t[p-1],d===c.top&&(b=!0)),f&&!h&&(l=f)}else{if(o&&(f=o,l=f,h=!1,d===c.top)){g=!0;const e=a(d.document);e&&(u=e)}d.context&&d.context.sourceUrl&&(m=!0)}e.push(f),p++}while(d!==c.top&&p<n);e.reverse();try{f=c.top.document.referrer}catch(e){}const y=g||b?l:null,v=i.$W.getConfig("pageUrl")||u||null;let E=i.$W.getConfig("pageUrl")||y||o(v,c);return y&&y.indexOf("?")>-1&&-1===E.indexOf("?")&&(E=`${E}${y.substring(y.indexOf("?"))}`),{reachedTop:g,isAmp:h,numIframes:p-1,stack:e,topmostLocation:l||null,location:y,canonicalUrl:v,page:E,domain:s(E)||null,ref:f||null,legacy:{reachedTop:g,isAmp:h,numIframes:p-1,stack:e,referer:l||null,canonicalUrl:v}}}));var c},2938:(e,t,n)=>{n.d(t,{CK:()=>m,s0:()=>p});var i=n(1069),r=n(2693),o=n(5569),s=n(5139),a=n(2604),d=n(6811),c=n(3272),l=n(1445),u=n(3441);const f="html5",g="cookie";let p=[];function h(){let{moduleName:e,moduleType:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{isAllowed:n=s.io}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};function r(i,r){let s=e;const f=c.$W.getCurrentBidder();f&&t===o.tW&&l.Ay.aliasRegistry[f]===e&&(s=f);return i({valid:n(d.Ue,(0,u.s)(t,s,{[a.Zw]:r}))})}function h(e,t,n){if(!n||"function"!=typeof n)return r(e,t);p.push((function(){let i=r(e,t);n(i)}))}function m(e){const t=e.charAt(0).toUpperCase()+e.substring(1),n=()=>window[e],r=function(t){return h((function(t){if(t&&t.valid)try{return!!n()}catch(t){(0,i.vV)(`${e} api disabled`)}return!1}),f,t)};return{[`has${t}`]:r,[`${e}IsEnabled`]:e=>h((function(e){if(e&&e.valid)try{return n().setItem("prebid.cookieTest","1"),"1"===n().getItem("prebid.cookieTest")}catch(e){}finally{try{n().removeItem("prebid.cookieTest")}catch(e){}}return!1}),f,e),[`setDataIn${t}`]:(e,t,i)=>h((function(i){i&&i.valid&&r()&&n().setItem(e,t)}),f,i),[`getDataFrom${t}`]:(e,t)=>h((function(t){return t&&t.valid&&r()?n().getItem(e):null}),f,t),[`removeDataFrom${t}`]:(e,t)=>h((function(t){t&&t.valid&&r()&&n().removeItem(e)}),f,t)}}return{setCookie:function(e,t,n,i,r,o){return h((function(o){if(o&&o.valid){const o=r&&""!==r?` ;domain=${encodeURIComponent(r)}`:"",s=n&&""!==n?` ;expires=${n}`:"",a=null!=i&&"none"==i.toLowerCase()?"; Secure":"";document.cookie=`${e}=${encodeURIComponent(t)}${s}; path=/${o}${i?`; SameSite=${i}`:""}${a}`}}),g,o)},getCookie:function(e,t){return h((function(t){if(t&&t.valid){let t=window.document.cookie.match("(^|;)\\s*"+e+"\\s*=\\s*([^;]*)\\s*(;|$)");return t?decodeURIComponent(t[2]):null}return null}),g,t)},cookiesAreEnabled:function(e){return h((function(e){return!(!e||!e.valid)&&(0,i.GE)()}),g,e)},...m("localStorage"),...m("sessionStorage"),findSimilarCookies:function(e,t){return h((function(t){if(t&&t.valid){const t=[];if((0,i.N9)()){const n=document.cookie.split(";");for(;n.length;){const i=n.pop();let r=i.indexOf("=");r=r<0?i.length:r;decodeURIComponent(i.slice(0,r).replace(/^\s+/,"")).indexOf(e)>=0&&t.push(decodeURIComponent(i.slice(r+1)))}}return t}}),g,t)}}}function m(e){return h({moduleName:e,moduleType:o.tp})}(0,s.qB)(d.Ue,"deviceAccess config",(function(){if(!(0,i.N9)())return{allow:!1}})),(0,s.qB)(d.Ue,"bidderSettings.*.storageAllowed",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.u;if(e[a.Dk]!==o.tW)return;let n=t.get(e[a.q7],"storageAllowed");if(n&&!0!==n){const t=e[a.Zw];n=Array.isArray(n)?n.some((e=>e===t)):n===t}else n=!!n;return n?void 0:{allow:n}}))},8230:(e,t,n)=>{n.d(t,{zt:()=>g});var i=n(1069),r=n(3272),o=n(5901),s=n(2938),a=n(5139),d=n(6811),c=n(2604),l=n(5569),u=n(3441);r.$W.setDefaults({userSync:(0,i.Go)({syncEnabled:!0,filterSettings:{image:{bidders:"*",filter:"include"}},syncsPerBidder:5,syncDelay:3e3,auctionDelay:500})});const f=(0,s.CK)("usersync");const g=function(e){let t={},n={image:[],iframe:[]},s=new Set,a={},f={image:!0,iframe:!1},g=e.config;function p(){if(g.syncEnabled&&e.browserSupportsCookies){try{!function(){if(!f.iframe)return;h(n.iframe,(e=>{let[t,r]=e;(0,i.OG)(`Invoking iframe user sync for bidder: ${t}`),(0,i.SG)(r),function(e,t){e.image=e.image.filter((e=>e[0]!==t))}(n,t)}))}(),function(){if(!f.image)return;h(n.image,(e=>{let[t,n]=e;(0,i.OG)(`Invoking image pixel user sync for bidder: ${t}`),(0,i.z$)(n)}))}()}catch(e){return(0,i.vV)("Error firing user syncs",e)}n={image:[],iframe:[]}}}function h(e,t){(0,i.k4)(e).forEach(t)}function m(e,t){let n=g.filterSettings;if(function(e,t){if(e.all&&e[t])return(0,i.JE)(`Detected presence of the "filterSettings.all" and "filterSettings.${t}" in userSync config. You cannot mix "all" with "iframe/image" configs; they are mutually exclusive.`),!1;let n=e.all?e.all:e[t],r=e.all?"all":t;if(!n)return!1;let o=n.filter,s=n.bidders;if(o&&"include"!==o&&"exclude"!==o)return(0,i.JE)(`UserSync "filterSettings.${r}.filter" setting '${o}' is not a valid option; use either 'include' or 'exclude'.`),!1;if("*"!==s&&!(Array.isArray(s)&&s.length>0&&s.every((e=>(0,i.O8)(e)&&"*"!==e))))return(0,i.JE)(`Detected an invalid setup in userSync "filterSettings.${r}.bidders"; use either '*' (to represent all bidders) or an array of bidders.`),!1;return!0}(n,e)){f[e]=!0;let i=n.all?n.all:n[e],r="*"===i.bidders?[t]:i.bidders;const s={include:(e,t)=>!(0,o.mK)(e,t),exclude:(e,t)=>(0,o.mK)(e,t)};return s[i.filter||"include"](r,t)}return!f[e]}return r.$W.getConfig("userSync",(e=>{if(e.userSync){let t=e.userSync.filterSettings;(0,i.Qd)(t)&&(t.image||t.all||(e.userSync.filterSettings.image={bidders:"*",filter:"include"}))}g=Object.assign(g,e.userSync)})),e.regRule(d.Ml,"userSync config",(e=>{if(!g.syncEnabled)return{allow:!1,reason:"syncs are disabled"};if(e[c.Dk]===l.tW){const n=e[c.bt],i=e[c.iK];if(!t.canBidderRegisterSync(n,i))return{allow:!1,reason:`${n} syncs are not enabled for ${i}`}}})),t.registerSync=(t,r,o)=>s.has(r)?(0,i.OG)(`already fired syncs for "${r}", ignoring registerSync call`):g.syncEnabled&&(0,i.cy)(n[t])?r?0!==g.syncsPerBidder&&Number(a[r])>=g.syncsPerBidder?(0,i.JE)(`Number of user syncs exceeded for "${r}"`):void(e.isAllowed(d.Ml,(0,u.s)(l.tW,r,{[c.bt]:t,[c.e3]:o}))&&(n[t].push([r,o]),a=function(e,t){return e[t]?e[t]+=1:e[t]=1,e}(a,r))):(0,i.JE)("Bidder is required for registering sync"):(0,i.JE)(`User sync type "${t}" not supported`),t.bidderDone=s.add.bind(s),t.syncUsers=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(e)return setTimeout(p,Number(e));p()},t.triggerUserSyncs=()=>{g.enableOverride&&t.syncUsers()},t.canBidderRegisterSync=(e,t)=>!g.filterSettings||!m(e,t),t}(Object.defineProperties({config:r.$W.getConfig("userSync"),isAllowed:a.io,regRule:a.qB},{browserSupportsCookies:{get:function(){return!(0,i.Vt)()&&f.cookiesAreEnabled()}}}))},1069:(e,t,n)=>{n.d(t,{$D:()=>S,$z:()=>Re,Bg:()=>ze,Bj:()=>Le,Bk:()=>le,Bq:()=>fe,CA:()=>z,D4:()=>ge,D9:()=>Fe,Dl:()=>Ve,El:()=>Je,Et:()=>Z,Ez:()=>J,Fq:()=>xe,GE:()=>Oe,Go:()=>Ee,II:()=>me,Im:()=>ne,JE:()=>V,Lm:()=>te,N9:()=>Be,O8:()=>Y,OG:()=>P,PB:()=>He,Q0:()=>ye,Qd:()=>ee,SB:()=>Ue,SG:()=>de,SH:()=>Se,Tz:()=>ce,U6:()=>ke,Up:()=>Ne,Uu:()=>Pe,V:()=>Ce,Vt:()=>Ie,ZA:()=>he,_W:()=>pe,_s:()=>re,al:()=>Ae,bL:()=>R,bz:()=>qe,c$:()=>Me,cD:()=>I,cf:()=>$,cy:()=>X,fH:()=>W,fp:()=>Q,gM:()=>we,h0:()=>G,hj:()=>ue,hw:()=>L,iC:()=>je,k4:()=>ve,kK:()=>U,l4:()=>x,l9:()=>_e,lk:()=>k,mM:()=>T,mb:()=>q,ro:()=>ae,s0:()=>O,t1:()=>be,vE:()=>Te,vV:()=>M,wD:()=>De,xQ:()=>ie,y$:()=>D,z$:()=>se});var i=n(3272),r=n(5751),o=n(5901),s=n(8969),a=n(5555),d=n(7873),c="String",l="Function",u="Number",f="Object",g="Boolean",p=Object.prototype.toString;let h,m=Boolean(window.console),b=Boolean(m&&window.console.log),y=Boolean(m&&window.console.info),v=Boolean(m&&window.console.warn),E=Boolean(m&&window.console.error);const A=(0,d.m)();function I(e){h=e}function w(){null!=h&&h(...arguments)}const T={checkCookieSupport:Oe,createTrackPixelIframeHtml:function(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";if(!e)return"";t&&(e=encodeURI(e));n&&(n=`sandbox="${n}"`);return`<iframe ${n} id="${O()}"\n frameborder="0"\n allowtransparency="true"\n marginheight="0" marginwidth="0"\n width="0" hspace="0" vspace="0" height="0"\n style="height:0px;width:0px;display:none;"\n scrolling="no"\n src="${e}">\n </iframe>`},getWindowSelf:x,getWindowTop:q,canAccessWindowTop:function(){try{if(T.getWindowTop().location.href)return!0}catch(e){return!1}},getWindowLocation:N,insertUserSyncIframe:de,insertElement:re,isFn:Q,triggerPixel:se,logError:M,logWarn:V,logMessage:P,logInfo:W,parseQS:We,formatQS:function(e){return Object.keys(e).map((t=>Array.isArray(e[t])?e[t].map((e=>`${t}[]=${e}`)).join("&"):`${t}=${e[t]}`)).join("&")},deepEqual:Ge};var C,B=(C=0,function(){return++C});function O(){return B()+Math.random().toString(16).substr(2)}function k(e){return e?(e^(window&&window.crypto&&window.crypto.getRandomValues?crypto.getRandomValues(new Uint8Array(1))[0]%16:16*Math.random())>>e/4).toString(16):([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,k)}function R(e){let t="";for(var n in e)e.hasOwnProperty(n)&&(t+=n+"="+encodeURIComponent(e[n])+"&");return t=t.replace(/&$/,""),t}function S(e){return e&&Object.getOwnPropertyNames(e).length>0?Object.keys(e).map((t=>`${t}=${encodeURIComponent(e[t])}`)).join("&"):""}function D(e){return"string"==typeof e?e.split(/\s*,\s*/).map((e=>e.match(/^(\d+)x(\d+)$/i))).filter((e=>e)).map((e=>{let[t,n,i]=e;return[parseInt(n,10),parseInt(i,10)]})):Array.isArray(e)?j(e)?[e]:e.filter(j):[]}function U(e){return D(e).map(_)}function _(e){return e[0]+"x"+e[1]}function $(e){return{w:e[0],h:e[1]}}function j(e){return X(e)&&2===e.length&&!isNaN(e[0])&&!isNaN(e[1])}function q(){return window.top}function x(){return window.self}function N(){return window.location}function P(){H()&&b&&console.log.apply(console,F(arguments,"MESSAGE:"))}function W(){H()&&y&&console.info.apply(console,F(arguments,"INFO:"))}function V(){H()&&v&&console.warn.apply(console,F(arguments,"WARNING:")),w(s.qY.AUCTION_DEBUG,{type:"WARNING",arguments})}function M(){H()&&E&&console.error.apply(console,F(arguments,"ERROR:")),w(s.qY.AUCTION_DEBUG,{type:"ERROR",arguments})}function G(e){function t(t){return function(){for(var n=arguments.length,i=new Array(n),r=0;r<n;r++)i[r]=arguments[r];t(e,...i)}}return{logError:t(M),logWarn:t(V),logMessage:t(P),logInfo:t(W)}}function F(e,t){e=[].slice.call(e);let n=i.$W.getCurrentBidder();return t&&e.unshift(t),n&&e.unshift(r("#aaa")),e.unshift(r("#3b88c3")),e.unshift("%cPrebid"+(n?`%c${n}`:"")),e;function r(e){return`display: inline-block; color: #fff; background: ${e}; padding: 1px 4px; border-radius: 3px;`}}function H(){return!!i.$W.getConfig("debug")}const L=(()=>{const e={border:"0px",hspace:"0",vspace:"0",marginWidth:"0",marginHeight:"0",scrolling:"no",frameBorder:"0",allowtransparency:"true"};return function(t,n){let i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=t.createElement("iframe");return Object.assign(r,Object.assign({},e,n)),Object.assign(r.style,i),r}})();function z(){return L(document,{id:O(),width:0,height:0,src:"about:blank"},{display:"none",height:"0px",width:"0px",border:"0px"})}function J(e){return We(N().search)[e]||""}function K(e,t){return p.call(e)==="[object "+t+"]"}function Q(e){return K(e,l)}function Y(e){return K(e,c)}const X=Array.isArray.bind(Array);function Z(e){return K(e,u)}function ee(e){return K(e,f)}function te(e){return K(e,g)}function ne(e){return!e||(X(e)||Y(e)?!(e.length>0):Object.keys(e).length<=0)}function ie(e){return Y(e)&&(!e||0===e.length)}function re(e,t,n,i){let r;t=t||document,r=n?t.getElementsByTagName(n):t.getElementsByTagName("head");try{if(r=r.length?r:t.getElementsByTagName("body"),r.length){r=r[0];let t=i?null:r.firstChild;return r.insertBefore(e,t)}}catch(e){}}function oe(e,t){let n=null;return new a.k((i=>{const r=function(){e.removeEventListener("load",r),e.removeEventListener("error",r),null!=n&&window.clearTimeout(n),i()};e.addEventListener("load",r),e.addEventListener("error",r),null!=t&&(n=window.setTimeout(r,t))}))}function se(e,t,n){const i=new Image;t&&T.isFn(t)&&oe(i,n).then(t),i.src=e}function ae(e){if(!e)return;const t=z();var n;T.insertElement(t,document,"body"),(n=t.contentWindow.document).open(),n.write(e),n.close()}function de(e,t,n){let i=T.createTrackPixelIframeHtml(e,!1,"allow-scripts allow-same-origin"),r=document.createElement("div");r.innerHTML=i;let o=r.firstChild;t&&T.isFn(t)&&oe(o,n).then(t),T.insertElement(o,document,"html",!0)}function ce(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:encodeURI;if(!e)return"";let n='<div style="position:absolute;left:0px;top:0px;visibility:hidden;">';return n+='<img src="'+t(e)+'"></div>',n}function le(e){return Array.from(e.matchAll(/\$({[^}]+})/g)).map((e=>e[1])).reduce(((e,t)=>e.replace("$"+encodeURIComponent(t),"$"+t)),encodeURI(e))}function ue(e,t,n){return n.indexOf(e)===t}function fe(e,t){return e.concat(t)}function ge(e,t){if(e)return t.flatMap((e=>e.bids)).find((t=>["bidId","adId","bid_id"].some((n=>t[n]===e))))}function pe(e,t){return e[t]}function he(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:A.adUnits).map((e=>e.bids.map((e=>e.bidder)).reduce(fe,[]))).reduce(fe,[]).filter((e=>void 0!==e)).filter(ue)}function me(){if(window.googletag&&Q(window.googletag.pubads)&&Q(window.googletag.pubads().getSlots))return!0}function be(){if(window.apntag&&Q(window.apntag.getTag))return!0}const ye=(e,t)=>t.cpm-e.cpm;function ve(e){let t=e.length;for(;t>0;){let n=Math.floor(Math.random()*t);t--;let i=e[t];e[t]=e[n],e[n]=i}return e}function Ee(e){return(0,r.Q)(e)||{}}function Ae(){try{return T.getWindowSelf()!==T.getWindowTop()}catch(e){return!0}}function Ie(){return/^((?!chrome|android|crios|fxios).)*safari/i.test(navigator.userAgent)}function we(e,t){if(e)return Object.entries(t).reduce(((e,t)=>{let[n,i]=t;return e.replace(new RegExp("\\$\\{"+n+"\\}","g"),i||"")}),e)}function Te(){return(new Date).getTime()}function Ce(){return window.performance&&window.performance.now&&window.performance.now()||0}function Be(){return!1!==i.$W.getConfig("deviceAccess")}function Oe(){if(window.navigator.cookieEnabled||document.cookie.length)return!0}function ke(e,t){if(t<1)throw new Error(`numRequiredCalls must be a positive number. Got ${t}`);let n=0;return function(){n++,n===t&&e.apply(this,arguments)}}function Re(e,t){return e.reduce((function(e,n){return(e[n[t]]=e[n[t]]||[]).push(n),e}),{})}function Se(e,t){return t.filter((t=>e[t])).reduce(((t,n)=>Object.assign(t,{[n]:e[n]})),{})}function De(e){const t=["banner","native","video"],n=["instream","outstream","adpod"];return!!Object.keys(e).every((e=>(0,o.mK)(t,e)))&&(!e.video||!e.video.context||(0,o.mK)(n,e.video.context))}function Ue(e,t,n){return e.filter((e=>e.code===t)).flatMap((e=>e.bids)).filter((e=>e.bidder===n)).map((e=>e.params||{}))}function _e(){return"1"===navigator.doNotTrack||"1"===window.doNotTrack||"1"===navigator.msDoNotTrack||"yes"===navigator.doNotTrack}const $e=(e,t)=>e.getAdUnitPath()===t||e.getSlotElementId()===t;function je(e){return t=>$e(e,t)}function qe(e,t){const n=Object.keys(e.mediaTypes||{banner:"banner"}).join(", ");return`\n ${e.code} is a ${n} ad unit\n containing bidders that don't support ${n}: ${t}.\n This bidder won't fetch demand.\n `}const xe=Number.isInteger.bind(Number);function Ne(e,t){return"object"!=typeof e?{}:t.reduce(((n,i,r)=>{if("function"==typeof i)return n;let o=i,s=i.match(/^(.+?)\sas\s(.+?)$/i);s&&(i=s[1],o=s[2]);let a=e[i];return"function"==typeof t[r+1]&&(a=t[r+1](a,n)),void 0!==a&&(n[o]=a),n}),{})}function Pe(e,t){return X(e)&&(!t||e.length===t)&&e.every((e=>xe(e)))}function We(e){return e?e.replace(/^\?/,"").split("&").reduce(((e,t)=>{let[n,i]=t.split("=");return/\[\]$/.test(n)?(n=n.replace("[]",""),e[n]=e[n]||[],e[n].push(i)):e[n]=i||"",e}),{}):{}}function Ve(e,t){let n=document.createElement("a");t&&"noDecodeWholeURL"in t&&t.noDecodeWholeURL?n.href=e:n.href=decodeURIComponent(e);let i=t&&"decodeSearchAsString"in t&&t.decodeSearchAsString;return{href:n.href,protocol:(n.protocol||"").replace(/:$/,""),hostname:n.hostname,port:+n.port,pathname:n.pathname.replace(/^(?!\/)/,"/"),search:i?n.search:T.parseQS(n.search||""),hash:(n.hash||"").replace(/^#/,""),host:n.host||window.location.host}}function Me(e){return(e.protocol||"http")+"://"+(e.host||e.hostname+(e.port?`:${e.port}`:""))+(e.pathname||"")+(e.search?`?${T.formatQS(e.search||"")}`:"")+(e.hash?`#${e.hash}`:"")}function Ge(e,t){let{checkTypes:n=!1}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(e===t)return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t||n&&e.constructor!==t.constructor)return!1;{const i=Object.keys(e);if(i.length!==Object.keys(t).length)return!1;for(let r of i){if(!t.hasOwnProperty(r))return!1;if(!Ge(e[r],t[r],{checkTypes:n}))return!1}return!0}}function Fe(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];if(!n.length)return e;const r=n.shift();if(ee(e)&&ee(r))for(const t in r)ee(r[t])?(e[t]||Object.assign(e,{[t]:{}}),Fe(e[t],r[t])):X(r[t])?e[t]?X(e[t])&&r[t].forEach((n=>{let i=1;for(let r=0;r<e[t].length;r++)if(Ge(e[t][r],n)){i=0;break}i&&e[t].push(n)})):Object.assign(e,{[t]:[...r[t]]}):Object.assign(e,{[t]:r[t]});return Fe(e,...n)}function He(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=function(e,t){if(Q(Math.imul))return Math.imul(e,t);var n=(4194303&e)*(t|=0);return 4290772992&e&&(n+=(4290772992&e)*t|0),0|n},i=3735928559^t,r=1103547991^t;for(let t,o=0;o<e.length;o++)t=e.charCodeAt(o),i=n(i^t,2654435761),r=n(r^t,1597334677);return i=n(i^i>>>16,2246822507)^n(r^r>>>13,3266489909),r=n(r^r>>>16,2246822507)^n(i^i>>>13,3266489909),(4294967296*(2097151&r)+(i>>>0)).toString()}function Le(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(e){return e};const n=new Map,i=function(){const i=t.apply(this,arguments);return n.has(i)||n.set(i,e.apply(this,arguments)),n.get(i)};return i.clear=n.clear.bind(n),i}function ze(e,t){Object.entries(t).forEach((t=>{let[n,i]=t;return e.setAttribute(n,i)}))}function Je(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e=>e,i=0,r=e.length&&e.length-1;const o=n(t);for(;r-i>1;){const t=i+Math.round((r-i)/2);o>n(e[t])?i=t:r=t}for(;e.length>i&&o>n(e[i]);)i++;return i}},2621:(e,t,n)=>{n.d(t,{C:()=>r});var i=n(433);function r(e){return!e?.gdprApplies||!0===(0,i.A)(e,"vendorData.purpose.consents.1")}},6894:(e,t,n)=>{n.d(t,{Ak:()=>m,BO:()=>g,K7:()=>p});var i=n(3272);const r="performanceMetrics",o=window.performance&&window.performance.now?()=>window.performance.now():()=>Date.now(),s=new WeakMap;function a(){let{now:e=o,mkNode:t=l,mkTimer:n=c,mkRenamer:i=(e=>e),nodes:r=s}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(){return function o(s){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e=>({forEach(t){t(e)}});a=i(a);const d=(c="timestamps",function(e){return s.dfWalk({visit(t,n){const i=n[c];if(i.hasOwnProperty(e))return i[e]}})});var c;function l(e,t){const n=a(e);s.dfWalk({follow:(e,t)=>t.propagate&&(!e||!e.stopPropagation),visit(e,i){n.forEach((n=>{null==e?i.metrics[n]=t:(i.groups.hasOwnProperty(n)||(i.groups[n]=[]),i.groups[n].push(t))}))}})}function u(t){return n(e,(e=>l(t,e)))}function f(){let e={};return s.dfWalk({visit(t,n){e=Object.assign({},!t||t.includeGroups?n.groups:null,n.metrics,e)}}),e}const g={startTiming:u,measureTime:function(e,t){return u(e).stopAfter(t)()},measureHookTime:function(e,t,n){const i=u(e);return n(function(e){const t=i.stopBefore(e);return t.bail=e.bail&&i.stopBefore(e.bail),t.stopTiming=i,t.untimed=e,t}(t))},checkpoint:function(t){s.timestamps[t]=e()},timeSince:function(t,n){const i=d(t),r=null!=i?e()-i:null;return null!=n&&l(n,r),r},timeBetween:function(e,t,n){const i=d(e),r=d(t),o=null!=i&&null!=r?r-i:null;return null!=n&&l(n,o),o},setMetric:l,getMetrics:f,fork:function(){let{propagate:e=!0,stopPropagation:n=!1,includeGroups:i=!1}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return o(t([[s,{propagate:e,stopPropagation:n,includeGroups:i}]]),a)},join:function(e){let{propagate:t=!0,stopPropagation:n=!1,includeGroups:i=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const o=r.get(e);null!=o&&o.addParent(s,{propagate:t,stopPropagation:n,includeGroups:i})},newMetrics:function(){return o(s.newSibling(),a)},renameWith:function(e){return o(s,e)},toJSON:()=>f()};return r.set(g,s),g}(t([]))}}function d(e,t,n){return function(){t&&t();try{return e.apply(this,arguments)}finally{n&&n()}}}function c(e,t){const n=e();let i=!1;function r(){i||(t(e()-n),i=!0)}return r.stopBefore=e=>d(e,r),r.stopAfter=e=>d(e,null,r),r}function l(e){return{metrics:{},timestamps:{},groups:{},addParent(t,n){e.push([t,n])},newSibling:()=>l(e.slice()),dfWalk(){let t,{visit:n,follow:i=(()=>!0),visited:r=new Set,inEdge:o}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!r.has(this)){if(r.add(this),t=n(o,this),null!=t)return t;for(const[s,a]of e)if(i(o,a)&&(t=s.dfWalk({visit:n,follow:i,visited:r,inEdge:a}),null!=t))return t}}}}const u=(()=>{const e=function(){},t=()=>({}),n={forEach:e},i=()=>null;i.stopBefore=e=>e,i.stopAfter=e=>e;const r=Object.defineProperties({dfWalk:e,newSibling:()=>r,addParent:e},Object.fromEntries(["metrics","timestamps","groups"].map((e=>[e,{get:t}]))));return a({now:()=>0,mkNode:()=>r,mkRenamer:()=>()=>n,mkTimer:()=>i,nodes:{get:e,set:e}})()})();let f=!0;function g(e){return f&&e||u}i.$W.getConfig(r,(e=>{f=!!e[r]}));const p=(()=>{const e=a();return function(){return f?e():u}})();function h(e,t){return function(n,i){return function(r){for(var o=arguments.length,s=new Array(o>1?o-1:0),a=1;a<o;a++)s[a-1]=arguments[a];const d=this;return g(t.apply(d,s)).measureHookTime(e+n,r,(function(e){return i.call(d,e,...s)}))}}}const m=h("requestBids.",(e=>e.metrics));h("addBidResponse.",((e,t)=>t.metrics))},5555:(e,t,n)=>{n.d(t,{k:()=>o,v:()=>s});const i=0,r=1;class o{#d;#c;static timeout(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return new o((t=>{0===e?t():setTimeout(t,e)}))}constructor(e){if("function"!=typeof e)throw new Error("resolver not a function");const t=[],n=[];let[o,s]=[i,r].map((e=>function(r){if(e===i&&"function"==typeof r?.then)r.then(o,s);else if(!t.length)for(t.push(e,r);n.length;)n.shift()()}));try{e(o,s)}catch(e){s(e)}this.#d=t,this.#c=n}then(e,t){const n=this.#d;return new this.constructor(((r,o)=>{const s=()=>{let s=n[1],[a,d]=n[0]===i?[e,r]:[t,o];if("function"==typeof a){try{s=a(s)}catch(e){return void o(e)}d=r}d(s)};n.length?s():this.#c.push(s)}))}catch(e){return this.then(null,e)}finally(e){let t;return this.then((n=>(t=n,e())),(n=>(t=this.constructor.reject(n),e()))).then((()=>t))}static#l(e,t,n){let i=e.length;function r(){t.apply(this,arguments),--i<=0&&n&&n()}0===e.length&&n?n():e.forEach(((e,t)=>this.resolve(e).then((e=>r(!0,e,t)),(e=>r(!1,e,t)))))}static race(e){return new this(((t,n)=>{this.#l(e,((e,i)=>e?t(i):n(i)))}))}static all(e){return new this(((t,n)=>{let i=[];this.#l(e,((e,t,r)=>e?i[r]=t:n(t)),(()=>t(i)))}))}static allSettled(e){return new this((t=>{let n=[];this.#l(e,((e,t,i)=>n[i]=e?{status:"fulfilled",value:t}:{status:"rejected",reason:t}),(()=>t(n)))}))}static resolve(e){return new this((t=>t(e)))}static reject(e){return new this(((t,n)=>n(e)))}}function s(){let e,t,{promiseFactory:n=(e=>new o(e))}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};function i(e){return t=>e(t)}return{promise:n(((n,i)=>{e=n,t=i})),resolve:i(e),reject:i(t)}}},2713:(e,t,n)=>{function i(e,t){return e===t?0:e<t?-1:1}function r(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:e=>e;return(t,n)=>i(e(t),e(n))}function o(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i;return(t,n)=>-e(t,n)||0}function s(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(e,n){for(const i of t){const t=i(e,n);if(0!==t)return t}return 0}}function a(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i;return(t,n)=>e(n,t)<0?n:t}function d(){return a(o(arguments.length>0&&void 0!==arguments[0]?arguments[0]:i))}n.d(t,{Bp:()=>a,Bq:()=>f,NV:()=>r,Vk:()=>u});const c=r((e=>e.cpm)),l=r((e=>e.responseTimestamp)),u=d(s(c,o(r((e=>e.timeToRespond))))),f=d(s(c,o(l)));d(s(c,l))},6853:(e,t,n)=>{n.d(t,{H:()=>l});var i=n(5555),r=n(1069);let o=null,s=0,a=[];function d(){document.hidden?o=Date.now():(s+=Date.now()-(o??0),o=null,a.forEach((e=>{let{callback:t,startTime:n,setTimerId:i}=e;return i(c(t,s-n)())})),a=[])}function c(e,t){const n=s;let i=setTimeout((()=>{s===n&&null==o?e():null!=o?a.push({callback:e,startTime:n,setTimerId(e){i=e}}):i=c(e,s-n)()}),t);return()=>i}function l(){let{startTime:e=r.vE,ttl:t=(()=>null),monotonic:n=!1,slack:o=5e3}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const s=new Map,a=[],d=[],l=n?e=>d.push(e):e=>d.splice((0,r.El)(d,e,(e=>e.expiry)),0,e);let u,f;function g(){if(f&&clearTimeout(f),d.length>0){const e=(0,r.vE)();u=Math.max(e,d[0].expiry+o),f=c((()=>{const e=(0,r.vE)();let t=0;for(const n of d){if(n.expiry>e)break;a.forEach((e=>{try{e(n.item)}catch(e){(0,r.vV)(e)}})),s.delete(n.item),t++}d.splice(0,t),f=null,g()}),u-e)}else f=null}function p(n){const r={},s=h;let a;const[d,c]=Object.entries({start:e,delta:t}).map((e=>{let t,[d,c]=e;return function(){const e=t={};i.k.resolve(c(n)).then((n=>{e===t&&(r[d]=n,s===h&&null!=r.start&&null!=r.delta&&(a=r.start+r.delta,l(p),(null==f||u>a+o)&&g()))}))}})),p={item:n,refresh:c,get expiry(){return a}};return d(),c(),p}let h={};return{[Symbol.iterator]:()=>s.keys(),add(e){!s.has(e)&&s.set(e,p(e))},clear(){d.length=0,g(),s.clear(),h={}},toArray:()=>Array.from(s.keys()),refresh(){d.length=0,g();for(const e of s.values())e.refresh()},onExpiry:e=>(a.push(e),()=>{const t=a.indexOf(e);t>=0&&a.splice(t,1)})}}document.addEventListener("visibilitychange",d)},3895:(e,t,n)=>{n.d(t,{H6:()=>d,V0:()=>l,Zy:()=>c,aP:()=>u,vk:()=>f});var i=n(1069),r=n(433),o=n(3272),s=n(9214),a=n(6881);const d="outstream",c=new Map([["mimes",e=>Array.isArray(e)&&e.length>0&&e.every((e=>"string"==typeof e))],["minduration",i.Fq],["maxduration",i.Fq],["startdelay",i.Fq],["maxseq",i.Fq],["poddur",i.Fq],["protocols",i.Uu],["w",i.Fq],["h",i.Fq],["podid",i.O8],["podseq",i.Fq],["rqddurs",i.Uu],["placement",i.Fq],["plcmt",i.Fq],["linearity",i.Fq],["skip",e=>[1,0].includes(e)],["skipmin",i.Fq],["skipafter",i.Fq],["sequence",i.Fq],["slotinpod",i.Fq],["mincpmpersec",i.Et],["battr",i.Uu],["maxextended",i.Fq],["minbitrate",i.Fq],["maxbitrate",i.Fq],["boxingallowed",i.Fq],["playbackmethod",i.Uu],["playbackend",i.Fq],["delivery",i.Uu],["pos",i.Fq],["api",i.Uu],["companiontype",i.Uu],["poddedupe",i.Uu]]);function l(e){const t=e?.mediaTypes?.video;null!=t&&null==t.plcmt&&(t.context===d||[2,3,4].includes(t.placement)?t.plcmt=4:t.context!==d&&[2,6].includes(t.playbackmethod)&&(t.plcmt=2))}function u(e,t){const n=e?.mediaTypes?.video;(0,i.Qd)(n)?null!=n&&Object.entries(n).forEach((r=>{let[o,s]=r;if(!c.has(o))return;c.get(o)(s)||("function"==typeof t?t(o,s,e):(delete n[o],(0,i.JE)(`Invalid prop in adUnit "${e.code}": Invalid value for mediaTypes.video.${o} ORTB property. The property has been removed.`)))})):(0,i.JE)("validateOrtbVideoFields: videoParams must be an object.")}function f(e){let{index:t=a.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=(0,r.A)(t.getMediaTypes(e),"video"),i=n&&(0,r.A)(n,"context"),o=n&&(0,r.A)(n,"useCacheKey"),s=t.getAdUnit(e);return g(e,s,n,i,o)}const g=(0,s.A_)("sync",(function(e,t,n,r,s){return n&&(s||r!==d)?o.$W.getConfig("cache.url")||!e.vastXml||e.vastUrl?!(!e.vastUrl&&!e.vastXml):((0,i.vV)('\n This bid contains only vastXml and will not work when a prebid cache url is not specified.\n Try enabling prebid cache with tlpbjs.setConfig({ cache: {url: "..."} });\n '),!1):!(r===d&&!s)||!!(e.renderer||t&&t.renderer||n.renderer)}),"checkVideoBidSetup")}}]);
(self.tlpbjsChunk=self.tlpbjsChunk||[]).push([[85],{4595:(s,d,e)=>{e.d(d,{G:()=>t});const t='(()=>{"use strict";window.render=function({ad:d,adUrl:e,width:i,height:r},{mkFrame:n},o){if(!d&&!e)throw{reason:"noAd",message:"Missing ad markup or URL"};{const s=o.document,t={width:i,height:r};e&&!d?t.src=e:t.srcdoc=d,s.body.appendChild(n(s,t))}}})();'}}]);
(self.tlpbjsChunk=self.tlpbjsChunk||[]).push([[109],{965:(t,e,n)=>{n.d(e,{c5:()=>o,q4:()=>r});var a=n(5555);const l=0,c=1,r=2;function o(t){let{apiName:e,apiVersion:n,apiArgs:o=["command","callback","parameter","version"],callbackArgs:s=["returnValue","success"],mode:i=l}=t,u=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window;const f={},d=`${e}Call`,p=`${e}Return`;function b(t){const e="string"==typeof t.data&&t.data.includes(p)?JSON.parse(t.data):t.data;if(e?.[p]?.callId){const t=e[p];f.hasOwnProperty(t.callId)&&f[t.callId](...s.map((e=>t[e])))}}const[k,m]=function(){let t,n=u,a=!1;for(;null!=n;){try{if("function"==typeof n[e]){t=n,a=!0;break}}catch(t){}try{if(n.frames[`${e}Locator`]){t=n;break}}catch(t){}if(n===u.top)break;n=n.parent}return[t,a]}();if(!k)return;function g(t){return t=Object.assign({version:n},t),o.map((e=>[e,t[e]]))}function h(t,e,n,a){const l="function"==typeof t;return function(r,o){if(a&&a(),i!==c){(null==o||o?e:n)(l?void 0:r)}l&&t.apply(this,arguments)}}let v;return m?v=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new a.k(((n,a)=>{const o=k[e](...g({...t,callback:t.callback||i===r?h(t.callback,n,a):void 0}).map((t=>{let[e,n]=t;return n})));(i===c||null==t.callback&&i===l)&&n(o)}))}:(u.addEventListener("message",b,!1),v=function(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return new a.k(((n,a)=>{const l=Math.random().toString(),r={[d]:{...Object.fromEntries(g(t).filter((t=>{let[e]=t;return"callback"!==e}))),callId:l}};f[l]=h(t?.callback,n,a,(e||null==t?.callback)&&(()=>{delete f[l]})),k.postMessage(r,"*"),i===c&&n()}))}),Object.assign(v,{isDirect:m,close(){!m&&u.removeEventListener("message",b)}})}}}]);
(self.tlpbjsChunk=self.tlpbjsChunk||[]).push([[10],{3806:(n,e,a)=>{a.d(e,{R:()=>t});var i=a(6894),r=a(1069);function t(n,e,a){return(0,i.Ak)(n,(function(n,i){var t;t=function(e,a){if(a){let n=r.JE;e&&(n=r.vV,a=`${a} Canceling auction as per consentManagement config.`);for(var t=arguments.length,o=new Array(t>2?t-2:0),l=2;l<t;l++)o[l-2]=arguments[l];n(a,...o)}e?(n.stopTiming(),"function"==typeof i.bidsBackHandler?i.bidsBackHandler():(0,r.vV)("Error executing bidsBackHandler")):n.call(this,i)},e()?((0,r.fH)("User consent information already known. Pulling internally stored information..."),t(!1)):a(t)}))}}}]);
(self.tlpbjsChunk=self.tlpbjsChunk||[]).push([[618],{4610:(e,i,d)=>{d.d(i,{m:()=>v});var t=d(9466),r=d(1e3),n=d(433),s=d(1069),a=d(5825),b=d(1445),o=d(3272),p=d(3172);var c=d(3323);var f=d(7873);var l=d(1371);const g={[r.S3]:{extPrebid:{fn:function(e,i){(0,p.J)(e,"ext.prebid",(0,s.D9)({auctiontimestamp:i.auctionStart,targeting:{includewinners:!0,includebidderkeys:!1}},e.ext?.prebid)),o.$W.getConfig("debug")&&(e.ext.prebid.debug=!0)}},extPrebidChannel:{fn:function(e){(0,p.J)(e,"ext.prebid.channel",Object.assign({name:"pbjs",version:(0,f.m)().version},e.ext?.prebid?.channel))}},extPrebidAliases:{fn:function(e,i,d){let{am:t=b.Ay}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};if(t.aliasRegistry[i.bidderCode]){const d=t.bidderRegistry[i.bidderCode];if(!d||!d.getSpec().skipPbsAliasing){(0,p.J)(e,`ext.prebid.aliases.${i.bidderCode}`,t.aliasRegistry[i.bidderCode]);const r=o.$W.getConfig(`gvlMapping.${i.bidderCode}`)||d?.getSpec?.().gvlid;r&&(0,p.J)(e,`ext.prebid.aliasgvlids.${i.bidderCode}`,r)}}}}},[r.Tb]:{params:{fn:c.W},adUnitCode:{fn:function(e,i){const d=i.adUnitCode;d&&(0,p.J)(e,"ext.prebid.adunitcode",d)}}},[r.WR]:{mediaType:{fn:a.o,priority:99},videoCache:{fn:function(e,i){if(e.mediaType===l.G_){let{cacheId:d,url:t}=(0,n.A)(i,"ext.prebid.cache.vastXml")||{};if(!d||!t){const{hb_uuid:e,hb_cache_host:r,hb_cache_path:s}=(0,n.A)(i,"ext.prebid.targeting")||{};e&&r&&s&&(d=e,t=`https://${r}${s}?uuid=${e}`)}d&&t&&Object.assign(e,{videoCacheKey:d,vastUrl:t})}},priority:-10},bidderCode:{fn(e,i,d){e.bidderCode=d.seatbid.seat,e.adapterCode=(0,n.A)(i,"ext.prebid.meta.adaptercode")||d.bidRequest?.bidder||e.bidderCode}},pbsBidId:{fn(e,i){const d=(0,n.A)(i,"ext.prebid.bidid");(0,s.O8)(d)&&(e.pbsBidId=d)}},adserverTargeting:{fn(e,i){const d=(0,n.A)(i,"ext.prebid.targeting");(0,s.Qd)(d)&&(e.adserverTargeting=d)}},extPrebidMeta:{fn(e,i){e.meta=(0,s.D9)({},(0,n.A)(i,"ext.prebid.meta"),e.meta)}},pbsWurl:{fn(e,i){const d=(0,n.A)(i,"ext.prebid.events.win");(0,s.O8)(d)&&(e.pbsWurl=d)}}},[r.Cf]:{serverSideStats:{fn(e,i,d){Object.entries({errors:"serverErrors",responsetimemillis:"serverResponseTimeMs"}).forEach((e=>{let[t,r]=e;const s=(0,n.A)(i,`ext.${t}.${d.bidderRequest.bidderCode}`);s&&(d.bidderRequest[r]=s,d.bidRequests.forEach((e=>e[r]=s)))}))}}}};var u=d(9766);const v=(0,s.Bj)((()=>(0,t.U)((0,u.T)(),g,(0,r.yB)(r.e4))))},5825:(e,i,d)=>{d.d(i,{o:()=>s,s:()=>n});var t=d(1371),r=d(5561);const n={[t.D4]:"banner",[t.s6]:"native",[t.G_]:"video"};function s(e,i,d){let s=d.mediaType;s||(s=r.X.hasOwnProperty(i.mtype)?r.X[i.mtype]:i.ext?.prebid?.type,n.hasOwnProperty(s)||(s=t.D4)),e.mediaType=s}},3323:(e,i,d)=>{d.d(i,{W:()=>r});var t=d(3172);function r(e,i){let d=i.params;d&&(0,t.J)(e,`ext.prebid.bidder.${i.bidder}`,d)}}}]);
(self.tlpbjsChunk=self.tlpbjsChunk||[]).push([[498],{9766:(e,t,r)=>{r.d(t,{T:()=>l,A:()=>f});const n=new WeakMap;var i=r(1069),s=r(433),o=r(1371);var a=r(3895);var d=r(5561);var p=r(1e3),c=r(3858);const u={[p.S3]:{fpd:{priority:99,fn(e,t){(0,i.D9)(e,t.ortb2)}},onlyOneClient:{priority:-99,fn:(0,c.i8)("ORTB request")},props:{fn(e,t){Object.assign(e,{id:e.id||(0,i.lk)(),test:e.test||0});const r=parseInt(t.timeout,10);isNaN(r)||(e.tmax=r)}}},[p.Tb]:{fpd:{priority:99,fn(e,t){(0,i.D9)(e,t.ortb2Imp)}},id:{fn(e,t){e.id=t.bidId}},banner:{fn:function(e,t,r){if(r.mediaType&&r.mediaType!==o.D4)return;const n=(0,s.A)(t,"mediaTypes.banner");if(n){const t={topframe:!0===(0,i.al)()?0:1};n.sizes&&(t.format=(0,i.y$)(n.sizes).map(i.cf)),n.hasOwnProperty("pos")&&(t.pos=n.pos),e.banner=(0,i.D9)(t,e.banner)}}},pbadslot:{fn(e){const t=e.ext?.data?.pbadslot;t&&"string"==typeof t||delete e.ext?.data?.pbadslot}}},[p.WR]:{mediaType:{priority:99,fn:d.K},banner:{fn:function(){let{createPixel:e=(e=>(0,i.Tz)(decodeURIComponent(e),i.Bk))}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(t,r){t.mediaType===o.D4&&(r.adm&&r.nurl?(t.ad=r.adm,t.ad+=e(r.nurl)):r.adm?t.ad=r.adm:r.nurl&&(t.adUrl=r.nurl))}}()},props:{fn(e,t,r){Object.entries({requestId:r.bidRequest?.bidId,seatBidId:t.id,cpm:t.price,currency:r.ortbResponse.cur||r.currency,width:t.w,height:t.h,dealId:t.dealid,creative_id:t.crid,creativeId:t.crid,burl:t.burl,ttl:t.exp||r.ttl,netRevenue:r.netRevenue}).filter((e=>{let[t,r]=e;return void 0!==r})).forEach((t=>{let[r,n]=t;return e[r]=n})),e.meta||(e.meta={}),t.adomain&&(e.meta.advertiserDomains=t.adomain),t.ext?.dsa&&(e.meta.dsa=t.ext.dsa),t.cat&&(e.meta.primaryCatId=t.cat[0],e.meta.secondaryCatIds=t.cat.slice(1)),t.attr&&(e.meta.attr=t.attr)}}}};u[p.Tb].native={fn:function(e,t,r){if(r.mediaType&&r.mediaType!==o.s6)return;let n=t.nativeOrtbRequest;n&&(n=Object.assign({},r.nativeRequest,n),n.assets?.length?e.native=(0,i.D9)({},{request:JSON.stringify(n),ver:n.ver},e.native):(0,i.JE)("mediaTypes.native is set, but no assets were specified. Native request skipped.",t))}},u[p.WR].native={fn:function(e,t){if(e.mediaType===o.s6){let r;if(r="string"==typeof t.adm?JSON.parse(t.adm):t.adm,!(0,i.Qd)(r)||!Array.isArray(r.assets))throw new Error("ORTB native response contained no assets");e.native={ortb:r}}}},u[p.Tb].video={fn:function(e,t,r){if(r.mediaType&&r.mediaType!==o.G_)return;const n=(0,s.A)(t,"mediaTypes.video");if(!(0,i.Im)(n)){const t=Object.fromEntries(Object.entries(n).filter((e=>{let[t]=e;return a.Zy.has(t)})));if(n.playerSize){const e=(0,i.y$)(n.playerSize).map(i.cf);e.length>1&&(0,i.JE)("video request specifies more than one playerSize; all but the first will be ignored"),Object.assign(t,e[0])}e.video=(0,i.D9)(t,e.video)}}},u[p.WR].video={fn:function(e,t,r){e.mediaType===o.G_&&((0,s.A)(r.imp,"video.w")&&(0,s.A)(r.imp,"video.h")&&([e.playerWidth,e.playerHeight]=[r.imp.video.w,r.imp.video.h]),t.adm&&(e.vastXml=t.adm),t.nurl&&(e.vastUrl=t.nurl))}};var m=r(9466);function f(){let{context:e={},processors:t=l,overrides:r={},imp:s,request:o,bidResponse:a,response:d}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const c=new WeakMap;function u(e,i,s,o){let a;return function(){return null==a&&(a=function(){let a=s.bind(this,function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!n.has(e)){const t=Object.entries(e);t.sort(((e,t)=>(e=e[1].priority||0)===(t=t[1].priority||0)?0:e>t?-1:1)),n.set(e,t.map((e=>{let[t,r]=e;return[t,r.fn]})))}const r=n.get(e).filter((e=>{let[r]=e;return!t.hasOwnProperty(r)||t[r]})).map((function(e){let[r,n]=e;return t.hasOwnProperty(r)?t[r].bind(this,n):n}));return function(){const e=Array.from(arguments);r.forEach((t=>{t.apply(this,e)}))}}(t()[e]||{},r[e]||{}));return i&&(a=i.bind(this,a)),function(){try{return a.apply(this,arguments)}catch(e){o.call(this,e,...arguments)}}}()),a.apply(this,arguments)}}const m=u(p.Tb,s,(function(e,t,r){const n={};return e(n,t,r),n}),(function(e,t,r){(0,i.vV)("Error while converting bidRequest to ORTB imp; request skipped.",{error:e,bidRequest:t,context:r})})),f=u(p.S3,o,(function(e,t,r,n){const i={imp:t};return e(i,r,n),i}),(function(e,t,r,n){throw(0,i.vV)("Error while converting to ORTB request",{error:e,imps:t,bidderRequest:r,context:n}),e})),b=u(p.WR,a,(function(e,t,r){const n={};return e(n,t,r),n}),(function(e,t,r){(0,i.vV)("Error while converting ORTB seatbid.bid to bidResponse; bid skipped.",{error:e,bid:t,context:r})})),y=u(p.Cf,d,(function(e,t,r,n){const i={bids:t};return e(i,r,n),i}),(function(e,t,r,n){throw(0,i.vV)("Error while converting from ORTB response",{error:e,bidResponses:t,ortbResponse:r,context:n}),e}));return{toORTB(t){let{bidderRequest:r,bidRequests:n,context:s={}}=t;n=n||r.bids;const o={req:Object.assign({bidRequests:n},e,s),imp:{}};o.req.impContext=o.imp;const a=n.map((t=>{const n=Object.assign({bidderRequest:r,reqContext:o.req},e,s),a=m(t,n);if(null!=a){if(a.hasOwnProperty("id"))return Object.assign(n,{bidRequest:t,imp:a}),o.imp[a.id]=n,a;(0,i.vV)("Converted ORTB imp does not specify an id, ignoring bid request",t,a)}})).filter(Boolean),d=f(a,r,o.req);return o.req.bidderRequest=r,null!=d&&c.set(d,o),d},fromORTB(e){let{request:t,response:r}=e;const n=c.get(t);if(null==n)throw new Error("ortbRequest passed to `fromORTB` must be the same object returned by `toORTB`");function s(e){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Object.assign(e,{ortbRequest:t},r)}const o=Object.fromEntries((t.imp||[]).map((e=>[e.id,e]))),a=(r.seatbid||[]).flatMap((e=>(e.bid||[]).map((t=>{if(o.hasOwnProperty(t.impid)&&n.imp.hasOwnProperty(t.impid))return b(t,s(n.imp[t.impid],{imp:o[t.impid],seatbid:e,ortbResponse:r}));(0,i.vV)("ORTB response seatbid[].bid[].impid does not match any imp in request; ignoring bid",t)})))).filter(Boolean);return y(a,r,s(n.req))}}}const l=(0,i.Bj)((()=>(0,m.U)(u,(0,p.yB)(p.qN))))},9466:(e,t,r)=>{r.d(t,{U:()=>i});var n=r(1e3);function i(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];const s=t.shift(),o=t.length>1?i(...t):t[0];return Object.fromEntries(n.zt.map((e=>[e,Object.assign({},s[e],o[e])])))}},5561:(e,t,r)=>{r.d(t,{K:()=>s,X:()=>i});var n=r(1371);const i={1:n.D4,2:n.G_,4:n.s6};function s(e,t,r){if(e.mediaType)return;const n=r.mediaType;if(!n&&!i.hasOwnProperty(t.mtype))throw new Error("Cannot determine mediaType for response");e.mediaType=n||i[t.mtype]}}}]);
(self.tlpbjsChunk=self.tlpbjsChunk||[]).push([[225],{6743:(n,t,l)=>{l.d(t,{x4:()=>i});var e=l(7873),r=l(2713);function u(n,t,l){let r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];if(t===l)return n;let u=n;try{u=(0,e.m)().convertCurrency(n,t,l)}catch(n){if(!r)throw n}return u}function i(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:n=>[n.cpm,n.currency],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:u;return function(e,r){return null==n&&(n=r),l(e,r,n,t)}}();return(0,r.NV)((l=>t.apply(null,n(l))))}}}]);
(self.tlpbjsChunk=self.tlpbjsChunk||[]).push([[793],{6345:(e,n,t)=>{var i=t(7873),s=t(1069),a=t(3172),o=t(3272),r=t(6916),c=t(1970),p=t(965),l=t(5555),u=t(2604),g=t(3806);let d,h,f,m,P=!1;function S(e,n){let{onSuccess:t,onError:i}=n;new l.k((n=>n(e()))).then(t,(e=>{e instanceof v?i(e.message,...e.args):i("GPP error:",e)}))}class v{constructor(e,n){this.message=e,this.args=null==n?[]:[n]}}class C{apiVersion="1.1";static INST;static get(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:p.c5;if(null==this.INST){const n=e({apiName:"__gpp",apiArgs:["command","callback","parameter"],mode:p.q4});if(null==n)throw new v("GPP CMP not found");this.INST=new this(n)}return this.INST}#e;#n;#t=[];initialized=!1;constructor(e){this.cmp=e,[this.#e,this.#n]=["resolve","reject"].map((e=>n=>{for(;this.#t.length;)this.#t.pop()[e](n)}))}init(e){const n=this.updateWhenReady(e);return this.initialized||(e.gppVersion!==this.apiVersion&&(0,s.JE)(`Unrecognized GPP CMP version: ${e.apiVersion}. Continuing using GPP API version ${this.apiVersion}...`),this.initialized=!0,this.cmp({command:"addEventListener",callback:(e,n)=>{null==n||n?"error"===e?.pingData?.cmpStatus?this.#n(new v('CMP status is "error"; please check CMP setup',e)):this.isCMPReady(e?.pingData||{})&&["sectionChange","signalStatus"].includes(e?.eventName)&&this.#e(this.updateConsent(e.pingData)):this.#n(new v("Received error response from CMP",e)),null==m||null==e?.pingData||this.isCMPReady(e.pingData)||(m=null)}})),n}refresh(){return this.cmp({command:"ping"}).then(this.init.bind(this))}updateConsent(e){return new l.k((n=>{if(null==e||(0,s.Im)(e))throw new v("Received empty response from CMP",e);const t=w(e);(0,s.fH)("Retrieved GPP consent from CMP:",t),n(t)}))}nextUpdate(){const e=(0,l.v)();return this.#t.push(e),e.promise}updateWhenReady(e){return this.isCMPReady(e)?this.updateConsent(e):this.nextUpdate()}isCMPReady(e){return"ready"===e.signalStatus}}const b={iab:function(e){let{onSuccess:n,onError:t}=e,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:p.c5;S((()=>C.get(i).refresh()),{onSuccess:n,onError:t})},static:function(e){return S((()=>w(f)),e)}};function y(e){let n=!1,t=null;function i(i,s,a){if(null!=t&&clearTimeout(t),n=!0,r.ad.setConsentData(i),"function"==typeof e){for(var o=arguments.length,c=new Array(o>3?o-3:0),p=3;p<o;p++)c[p-3]=arguments[p];e(s,a,...c)}}if(!b.hasOwnProperty(d))return void i(null,!1,`GPP CMP framework (${d}) is not a supported framework. Aborting consentManagement module and resuming auction.`);const s={onSuccess:e=>i(e,!1),onError:function(e){for(var n=arguments.length,t=new Array(n>1?n-1:0),s=1;s<n;s++)t[s-1]=arguments[s];i(null,!0,e,...t)}};if(b[d](s),!n){const e=()=>{const e=e=>{i(e,!1,"GPP CMP did not load, continuing auction...")};S((()=>w(m)),{onSuccess:e,onError:()=>e(D())})};0===h?e():t=setTimeout(e,h)}}const M=(0,g.R)("gpp",(()=>m),y);function w(e){if(null!=e?.applicableSections&&!Array.isArray(e.applicableSections)||null!=e?.gppString&&!(0,s.O8)(e.gppString)||null!=e?.parsedSections&&!(0,s.Qd)(e.parsedSections))throw new v("CMP returned unexpected value during lookup process.",e);return["usnatv1","uscav1"].forEach((n=>{e?.parsedSections?.[n]&&(0,s.JE)(`Received invalid section from cmp: '${n}'. Some functionality may not work as expected`,e)})),D(e)}function D(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return m={gppString:e?.gppString,applicableSections:e?.applicableSections||[],parsedSections:e?.parsedSections||{},gppData:e},r.ad.setConsentData(e),m}o.$W.getConfig("consentManagement",(e=>function(e){(e=e&&e.gpp)&&"object"==typeof e?((0,s.O8)(e.cmpApi)?d=e.cmpApi:(d="iab",(0,s.fH)("consentManagement.gpp config did not specify cmp. Using system default setting (iab).")),(0,s.Et)(e.timeout)?h=e.timeout:(h=1e4,(0,s.fH)("consentManagement.gpp config did not specify timeout. Using system default setting (10000).")),"static"===d&&((0,s.Qd)(e.consentData)?(f=e.consentData,h=0):(0,s.vV)("consentManagement.gpp config with cmpApi: 'static' did not specify consentData. No consents will be available to adapters.")),(0,s.fH)("consentManagement.gpp module has been activated..."),P||((0,i.m)().requestBids.before(M,50),u.U3.before(((e,n)=>e(Object.assign({gppConsent:r.ad.getConsentData()},n))))),P=!0,r.ad.enable(),y()):(0,s.JE)("consentManagement.gpp config not defined, exiting consent manager module")}(e.consentManagement))),c.w.before((function(e,n){return e(n.then((e=>{const n=r.ad.getConsentData();return n&&(Array.isArray(n.applicableSections)&&(0,a.J)(e,"regs.gpp_sid",n.applicableSections),(0,a.J)(e,"regs.gpp",n.gppString)),e})))})),(0,i.E)("consentManagementGpp")}},e=>{e.O(0,[109,10,802,85],(()=>{return n=6345,e(e.s=n);var n}));e.O()}]);
(self.tlpbjsChunk=self.tlpbjsChunk||[]).push([[81],{6117:(n,e,t)=>{var o=t(7873),s=t(1069),i=t(3172),a=t(3272),r=t(6916),c=t(5901),l=t(1e3),d=t(1970),u=t(965),p=t(3806);const f=2;let g,m,C,b,v,M,y=!1,A=!1;const S={iab:function(n){let{onSuccess:e,onError:t,onEvent:o}=n;const i=(0,u.c5)({apiName:"__tcfapi",apiVersion:f,apiArgs:["command","version","callback","parameter"]});if(!i)return t("TCF2 CMP not found.");i.isDirect?(0,s.fH)("Detected CMP API is directly accessible, calling it now..."):(0,s.fH)("Detected CMP is outside the current iframe where Prebid.js is located, calling it now...");i({command:"addEventListener",callback:function(n,i){(0,s.fH)("Received a response from CMP",n),i?(o(n),!1!==n.gdprApplies&&"tcloaded"!==n.eventStatus&&"useractioncomplete"!==n.eventStatus||h(n,{onSuccess:e,onError:t})):t("CMP unable to register callback function. Please check CMP setup.")}})},static:function(n){let{onSuccess:e,onError:t}=n;h(b,{onSuccess:e,onError:t})}};function P(n){let e,t,o=!1,s=null,i=!1;function a(n){null!=s&&clearTimeout(s),o||null==n||(0===n?e():s=setTimeout(e,n))}function l(e,t,s){if(a(null),o=!0,r.mW.setConsentData(e),"function"==typeof n){for(var i=arguments.length,c=new Array(i>3?i-3:0),l=3;l<i;l++)c[l-3]=arguments[l];n(t,s,...c)}}if(!(0,c.mK)(Object.keys(S),g))return void l(null,!1,`CMP framework (${g}) is not a supported framework. Aborting consentManagement module and resuming auction.`);const d={onSuccess:n=>l(n,!1),onError:function(n){for(var e=arguments.length,t=new Array(e>1?e-1:0),o=1;o<e;o++)t[o-1]=arguments[o];l(null,!0,n,...t)},onEvent:function(n){t=n,i||(i=!0,null!=v&&a(v))}};e=()=>{const n=n=>{l(n,!1,(i?"Timeout waiting for user action on CMP":"CMP did not load")+", continuing auction...")};h(t,{onSuccess:n,onError:()=>n(w(void 0))})},S[g](d),null!=v&&i||a(m)}const E=(0,p.R)("gdpr",(()=>M),P);function h(n,e){let{onSuccess:t,onError:o}=e;!function(){const e=n&&"boolean"==typeof n.gdprApplies?n.gdprApplies:C,t=n&&n.tcString;return!("boolean"==typeof e&&(!0!==e||t&&(0,s.O8)(t)))}()?t(w(n)):o("CMP returned unexpected value during lookup process.",n)}function w(n){return M={consentString:n?n.tcString:void 0,vendorData:n||void 0,gdprApplies:n&&"boolean"==typeof n.gdprApplies?n.gdprApplies:C},n&&n.addtlConsent&&(0,s.O8)(n.addtlConsent)&&(M.addtlConsent=n.addtlConsent),M.apiVersion=f,M}a.$W.getConfig("consentManagement",(n=>function(n){(n=n&&(n.gdpr||n.usp||n.gpp?n.gdpr:n))&&"object"==typeof n?((0,s.O8)(n.cmpApi)?g=n.cmpApi:(g="iab",(0,s.fH)("consentManagement config did not specify cmp. Using system default setting (iab).")),(0,s.Et)(n.timeout)?m=n.timeout:(m=1e4,(0,s.fH)("consentManagement config did not specify timeout. Using system default setting (10000).")),v=(0,s.Et)(n.actionTimeout)?n.actionTimeout:null,C=!0===n.defaultGdprScope,y=!!n.dsaPlatform,(0,s.fH)("consentManagement module has been activated..."),"static"===g&&((0,s.Qd)(n.consentData)?(b=n.consentData,null!=b?.getTCData&&(b=b.getTCData),m=0):(0,s.vV)("consentManagement config with cmpApi: 'static' did not specify consentData. No consents will be available to adapters.")),A||(0,o.m)().requestBids.before(E,50),A=!0,r.mW.enable(),P()):(0,s.JE)("consentManagement (gdpr) config not defined, exiting consent manager")}(n.consentManagement))),d.w.before((function(n,e){return n(e.then((n=>{const e=r.mW.getConsentData();return e&&("boolean"==typeof e.gdprApplies&&(0,i.J)(n,"regs.ext.gdpr",e.gdprApplies?1:0),(0,i.J)(n,"user.ext.consent",e.consentString)),y&&(0,i.J)(n,"regs.ext.dsa.dsarequired",3),n})))})),(0,l.pS)({type:l.S3,name:"gdprAddtlConsent",fn:function(n,e){const t=e.gdprConsent?.addtlConsent;t&&"string"==typeof t&&(0,i.J)(n,"user.ext.ConsentedProvidersSettings.consented_providers",t)}}),(0,o.E)("consentManagementTcf")}},n=>{n.O(0,[802,109,10,85],(()=>{return e=6117,n(n.s=e);var e}));n.O()}]);
(self.tlpbjsChunk=self.tlpbjsChunk||[]).push([[662],{6056:(n,t,e)=>{var o=e(7873),a=e(1069),s=e(3172),i=e(3272),c=e(1445),r=e(6916),u=e(6894),l=e(9214),f=e(1970),g=e(965);const d="iab";let p,m,P=d,v=50,S=!1;const b={iab:function(n){let{onSuccess:t,onError:e}=n;let o=function(){const n={};return{consentDataCallback:(o,a)=>{a&&o.uspString&&(n.usPrivacy=o.uspString),n.usPrivacy?h(n,{onSuccess:t,onError:e}):e("Unable to get USP consent string.")}}}();const s=(0,g.c5)({apiName:"__uspapi",apiVersion:1,apiArgs:["command","version","callback"]});if(!s)return e("USP CMP not found.");s.isDirect?(0,a.fH)("Detected USP CMP is directly accessible, calling it now..."):(0,a.fH)("Detected USP CMP is outside the current iframe where Prebid.js is located, calling it now...");s({command:"getUSPData",callback:o.consentDataCallback}),s({command:"registerDeletion",callback:(n,t)=>(null==t||t)&&c.Ay.callDataDeletionRequest(n)}).catch((n=>{(0,a.vV)("Error invoking CMP `registerDeletion`:",n)}))},static:function(n){let{onSuccess:t,onError:e}=n;h(p,{onSuccess:t,onError:e})}};function D(n){let t=null,e=!1;function o(o,a){if(null!=t&&clearTimeout(t),e=!0,r.t6.setConsentData(o),null!=n){for(var s=arguments.length,i=new Array(s>2?s-2:0),c=2;c<s;c++)i[c-2]=arguments[c];n(a,...i)}}if(!b[P])return void o(null,`USP framework (${P}) is not a supported framework. Aborting consentManagement module and resuming auction.`);const a={onSuccess:o,onError:function(n){for(var t=arguments.length,e=new Array(t>1?t-1:0),a=1;a<t;a++)e[a-1]=arguments[a];o(null,`${n} Resuming auction without consent data as per consentManagement config.`,...e)}};b[P](a),e||(0===v?h(void 0,a):t=setTimeout(a.onError.bind(null,"USPAPI workflow exceeded timeout threshold."),v))}const y=(0,u.Ak)("usp",(function(n,t){var e=this;S||U(),D((function(o){if(null!=o){for(var s=arguments.length,i=new Array(s>1?s-1:0),c=1;c<s;c++)i[c-1]=arguments[c];(0,a.JE)(o,...i)}n.call(e,t)}))}));function h(n,t){let{onSuccess:e,onError:o}=t;!n||!n.usPrivacy?o("USPAPI returned unexpected value during lookup process.",n):(!function(n){n&&n.usPrivacy&&(m=n.usPrivacy)}(n),e(m))}function U(){let n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];S||((0,a.fH)("USPAPI consentManagement module has been activated"+(n?"":` using default values (api: '${P}', timeout: ${v}ms)`)),S=!0,r.t6.enable()),D()}i.$W.getConfig("consentManagement",(n=>function(n){(n=n&&n.usp)&&"object"==typeof n||(0,a.JE)("consentManagement.usp config not defined, using defaults"),n&&(0,a.O8)(n.cmpApi)?P=n.cmpApi:(P=d,(0,a.fH)(`consentManagement.usp config did not specify cmpApi. Using system default setting (${d}).`)),n&&(0,a.Et)(n.timeout)?v=n.timeout:(v=50,(0,a.fH)("consentManagement.usp config did not specify timeout. Using system default setting (50).")),"static"===P&&((0,a.Qd)(n.consentData)&&(0,a.Qd)(n.consentData.getUSPData)?(n.consentData.getUSPData.uspString&&(p={usPrivacy:n.consentData.getUSPData.uspString}),v=0):(0,a.vV)("consentManagement config with cmpApi: 'static' did not specify consentData. No consents will be available to adapters.")),U(!0)}(n.consentManagement))),(0,l.Yn)("requestBids").before(y,50),f.w.before((function(n,t){return n(t.then((n=>{const t=r.t6.getConsentData();return t&&(0,s.J)(n,"regs.ext.us_privacy",t),n})))})),(0,o.E)("consentManagementUsp")}},n=>{n.O(0,[109,802,85],(()=>{return t=6056,n(n.s=t);var t}));n.O()}]);
(self.tlpbjsChunk=self.tlpbjsChunk||[]).push([[328],{6976:(e,t,n)=>{n.d(t,{Gk:()=>_});var s=n(7873),i=n(9759),r=n(1069),d=n(433),o=n(8969),a=n(1445),c=n(3272),u=n(7377),p=n(5023),b=n(5901);const l={appnexuspsp:{adapter:"prebidServer",enabled:!0,endpoint:{p1Consent:"https://ib.adnxs.com/openrtb2/prebid",noP1Consent:"https://ib.adnxs-simple.com/openrtb2/prebid"},syncEndpoint:{p1Consent:"https://prebid.adnxs.com/pbs/v1/cookie_sync",noP1Consent:"https://prebid.adnxs-simple.com/pbs/v1/cookie_sync"},maxTimeout:1e3},rubicon:{adapter:"prebidServer",enabled:!0,endpoint:{p1Consent:"https://prebid-server.rubiconproject.com/openrtb2/auction",noP1Consent:"https://prebid-server.rubiconproject.com/openrtb2/auction"},syncEndpoint:{p1Consent:"https://prebid-server.rubiconproject.com/cookie_sync",noP1Consent:"https://prebid-server.rubiconproject.com/cookie_sync"},maxTimeout:500},openwrap:{adapter:"prebidServer",enabled:!0,endpoint:{p1Consent:"https://ow.pubmatic.com/openrtb2/auction?source=pbjs",noP1Consent:"https://ow.pubmatic.com/openrtb2/auction?source=pbjs"},maxTimeout:500}};var f=n(8044),g=n(9214),m=n(2621),C=n(9766),h=n(3172),y=n(3597),B=n(4610),v=n(3323),R=n(5825),q=n(1e3),I=n(6953),O=n(3441),S=n(5569),x=n(5139),E=n(6811),$=n(6743),j=n(2713);const T=new Set(["bidderCode","bidderRequestId","uniquePbsTid","bids","timeout"]),P=(0,C.A)({processors:B.m,context:{netRevenue:!0},imp(e,t,n){Object.assign(n,t.pbsData);const s=e(t,n);if((t.bids||[]).forEach((e=>{e.ortb2Imp&&Object.keys(e.ortb2Imp).length>0&&(0,h.J)(s,`ext.prebid.imp.${e.bidder}`,e.ortb2Imp)})),Object.values(R.s).some((e=>s[e])))return s.secure=n.s2sBidRequest.s2sConfig.secure,s},request(e,t,n,s){if(t.length){let{s2sBidRequest:i}=s;const r=e(t,n,s);return r.tmax=i.s2sConfig.timeout??Math.min(.75*i.requestBidsTimeout,i.s2sConfig.maxTimeout??_.maxTimeout),r.ext.tmaxmax=r.ext.tmaxmax||i.requestBidsTimeout,[r.app,r.dooh,r.site].forEach((e=>{e&&!e.publisher?.id&&(0,h.J)(e,"publisher.id",i.s2sConfig.accountId)})),s.transmitTids||(0,h.J)(r,"ext.prebid.createtids",!1),r}(0,r.vV)("Request to Prebid Server rejected due to invalid media type(s) in adUnit.")},bidResponse(e,t,n){let s=n.actualBidRequests.get(n.seatbid.seat);null==s&&(s=n.actualBidRequests.get(null)),s&&Object.assign(n,{bidRequest:s,bidderRequest:n.actualBidderRequests.find((e=>e.bidderCode===s.bidder))});const i=e(t,n);return i.requestBidder=s?.bidder,i.native?.ortb&&(i.adm=i.native.ortb),i.requestTimestamp=n.requestTimestamp,{bid:Object.assign((0,y.O)(o.XQ.GOOD,{src:o.RW.SRC,bidId:s?s.bidId||s.bid_Id:null,transactionId:n.adUnit.transactionId,adUnitId:n.adUnit.adUnitId,auctionId:n.bidderRequest.auctionId}),i,{deferRendering:!!n.adUnit.deferBilling,deferBilling:!!n.adUnit.deferBilling}),adUnit:n.adUnit.code}},overrides:{[q.Tb]:{id(e,t,n,s){t.id=s.impId},params(e,t,n,s){const i=s.s2sBidRequest.s2sConfig.adapterOptions;for(const e of s.actualBidRequests.values())(0,v.W)(t,e,s,s),i&&i[e.bidder]&&Object.assign(t.ext.prebid.bidder[e.bidder],i[e.bidder])},bidfloor(e,t,n,s){const i=(0,j.Bp)((0,$.x4)((e=>[e.bidfloor,e.bidfloorcur])));let r;for(const t of s.actualBidRequests.values()){const n={};if(e(n,t,s),null==n.bidfloorcur||null==n.bidfloor){r=null;break}r=null==r?n:i(r,n)}null!=r&&Object.assign(t,r)}},[q.S3]:{fpd(e,t,n,s){s.transmitTids&&(0,h.J)(t,"source.tid",n.auctionId),(0,r.D9)(t,s.s2sBidRequest.ortb2Fragments?.global),s.s2sBidRequest.s2sConfig.extPrebid&&"object"==typeof s.s2sBidRequest.s2sConfig.extPrebid&&(0,h.J)(t,"ext.prebid",(0,r.D9)(t.ext?.prebid||{},s.s2sBidRequest.s2sConfig.extPrebid)),s.getRedactor().ortb2(t);const i=Object.entries(s.s2sBidRequest.ortb2Fragments?.bidder||{}).filter((e=>{let[t]=e;const n=s.s2sBidRequest.s2sConfig.bidders;return s.s2sBidRequest.s2sConfig.allowUnknownBidderCodes||n&&n.includes(t)})).map((e=>{let[t,n]=e;return{bidders:[t],config:{ortb2:s.getRedactor(t).ortb2(n)}}}));i.length&&(0,h.J)(t,"ext.prebid.bidderconfig",i)},extPrebidAliases(e,t,n,s){s.actualBidderRequests.forEach((n=>e(t,n,s)))},sourceExtSchain(e,t,n,s){let i=(0,d.A)(t,"ext.prebid.schains")||[];const r=new Set(i.flatMap((e=>e.bidders)));i=Object.values(i.concat(s.actualBidderRequests.filter((e=>!r.has(e.bidderCode))).map((e=>({bidders:[e.bidderCode],schain:(0,d.A)(e,"bids.0.schain")})))).filter((e=>{let{bidders:t,schain:n}=e;return t?.length>0&&n})).reduce(((e,t)=>{let{bidders:n,schain:s}=t;const i=JSON.stringify(s);return e.hasOwnProperty(i)||(e[i]={bidders:new Set,schain:s}),n.forEach((t=>e[i].bidders.add(t))),e}),{})).map((e=>{let{bidders:t,schain:n}=e;return{bidders:Array.from(t),schain:n}})),i.length&&(0,h.J)(t,"ext.prebid.schains",i)}},[q.Cf]:{serverSideStats(e,t,n,s){s.actualBidderRequests.forEach((i=>e(t,n,{...s,bidderRequest:i,bidRequests:i.bids})))},paapiConfigs(e,t,n,s){const i=Object.values(s.impContext).flatMap((e=>(e.paapiConfigs||[]).map((t=>{const n=e.actualBidderRequests.find((e=>e.bidderCode===t.bidder)),s=e.actualBidRequests.get(t.bidder);return{adUnitCode:e.adUnit.code,ortb2:n?.ortb2,ortb2Imp:s?.ortb2Imp,bidder:t.bidder,config:t.config}}))));i.length>0&&(t.paapi=i)}}}});var A=n(6894);const w=c.$W.getConfig,k=o.RW.SRC;let D,U=0;const _={bidders:Object.freeze([]),syncTimeout:1e3,maxBids:1,adapter:"prebidServer",allowUnknownBidderCodes:!1,adapterOptions:{},syncUrlModifier:{},ortbNative:{eventtrackers:[{event:1,methods:[1,2]}]},maxTimeout:1500};function J(e){if(!e)return;const t=Array.isArray(e)?e:[e],n=[];return t.every(((e,t,s)=>{!function(e){["endpoint","syncEndpoint"].forEach((t=>{if((0,r.O8)(e[t])){let n=e[t];e[t]={p1Consent:n,noP1Consent:n}}!(0,r.Qd)(e[t])||e[t].p1Consent&&e[t].noP1Consent||["p1Consent","noP1Consent"].forEach((n=>{e[t][n]||(0,r.JE)(`s2sConfig.${t}.${n} not defined. PBS request will be skipped in some P1 scenarios.`)}))}))}(e);const i=function(e){if(e.defaultVendor){let t=e.defaultVendor,n=Object.keys(e);if(!l[t])return(0,r.vV)("Incorrect or unavailable prebid server default vendor option: "+t),!1;Object.keys(l[t]).forEach((s=>{_[s]!==e[s]&&(0,b.mK)(n,s)||(e[s]=l[t][s])}))}return e.enabled="boolean"==typeof e.enabled&&e.enabled}(e);if(!1!==i){const i=function(e){const t=Object.keys(e);if(["accountId","endpoint"].filter((e=>!(0,b.mK)(t,e)&&((0,r.vV)(e+" missing in server to server config"),!0))).length>0)return!1}(e);if(!1!==i)return Array.isArray(e.bidders)&&(s[t].bidders=e.bidders.filter((e=>-1===n.indexOf(e)&&(n.push(e),!0)))),!0}return(0,r.JE)("prebidServer: s2s config is disabled"),!1}))?D=t:void 0}function N(e,t,n,s,i){if(D.length===U)return;U++;let d={};const o=w("userSync.filterSettings");if(o){const{all:e,iframe:t,image:n}=o,s=t||e,i=n||e;s&&(d=Object.assign({iframe:s},d)),i&&(d=Object.assign({image:i},d))}const a={uuid:(0,r.lk)(),bidders:e,account:i.accountId,filterSettings:d};let c=i.userSyncLimit;(0,r.Et)(c)&&c>0&&(a.limit=c),t&&(a.gdpr=t.gdprApplies?1:0,!1!==t.gdprApplies&&(a.gdpr_consent=t.consentString)),n&&(a.us_privacy=n),s&&(a.gpp_sid=s.applicableSections.join(),a.gpp=s.gppString),"boolean"==typeof i.coopSync&&(a.coopSync=i.coopSync);const u=JSON.stringify(a);(0,f.RD)(G(i.syncEndpoint,t),(e=>{try{W((e=JSON.parse(e)).bidder_status,i)}catch(e){(0,r.vV)(e)}}),u,{contentType:"text/plain",withCredentials:!0})}function W(e,t){if(0===e.length)return;const n=e.shift();n.no_cookie?function(e,t,n,s,i){i.syncUrlModifier&&"function"==typeof i.syncUrlModifier[n]&&(t=i.syncUrlModifier[n](e,t,n));!function(e,t,n,s,i){t?"image"===e||"redirect"===e?((0,r.OG)(`Invoking image pixel user sync for bidder: "${n}"`),(0,r.z$)(t,s,i)):"iframe"===e?((0,r.OG)(`Invoking iframe user sync for bidder: "${n}"`),(0,r.SG)(t,s,i)):((0,r.vV)(`User sync type "${e}" not supported for bidder: "${n}"`),s()):((0,r.vV)(`No sync url for bidder "${n}": ${t}`),s())}(e,t,n,s,i.syncTimeout)}(n.usersync.type,n.usersync.url,n.bidder,W.bind(null,e,t),t):W(e,t)}c.$W.setDefaults({s2sConfig:_}),w("s2sConfig",(e=>{let{s2sConfig:t}=e;return J(t)}));let V={};function M(e){const t=function(e,t){if([e,t].every(r.O8))return V[`${e}${t}`]}(e.auctionId,e.adId);var n,s;(0,r.O8)(t)&&((0,r.OG)(`Invoking image pixel for wurl on BID_WIN: "${t}"`),(0,r.z$)(t),n=e.auctionId,s=e.adId,[n,s].every(r.O8)&&(V[`${n}${s}`]=void 0))}function G(e,t){const n=(0,m.C)(t),s=n?e.p1Consent:e.noP1Consent;return s||(0,r.JE)("Missing matching consent URL when gdpr="+n),s}function L(e){let t,n,s;return Array.isArray(e)&&e.length>0&&(t=e[0].gdprConsent,n=e[0].uspConsent,s=e[0].gppConsent),{gdprConsent:t,uspConsent:n,gppConsent:s}}const Y=(0,g.A_)("sync",(function(e,t,n,s){let{onResponse:i,onError:o,onBid:u,onFledge:p}=s,{gdprConsent:l}=L(t);const f=(0,r.Go)(e.ad_units),g=f.map((e=>e.bids.map((e=>e.bidder)).filter(r.hj))).reduce(r.Bq,[]).filter(r.hj),m=e.metrics.measureTime("buildRequests",(()=>function(e,t,n,s){const i=(0,r.vE)(),d=new Set,o=[],u=(0,a.K5)(e.s2sConfig),p=(()=>{const e=(0,I.$p)(u),t={};return n=>null==n?e:(t.hasOwnProperty(n)||(t[n]=(0,I.$p)((0,O.s)(S.tW,n))),t[n])})();(n=n.map((e=>p().bidRequest(e)))).forEach((e=>{const s=new Map;n.bids=e.bids.map((e=>p(e.bidder).bidRequest(e))),e.bids.forEach((n=>{null!=n.mediaTypes&&(0,r.JE)(`Prebid Server adapter does not (yet) support bidder-specific mediaTypes for the same adUnit. Size mapping configuration will be ignored for adUnit: ${e.code}, bidder: ${n.bidder}`),s.set(n.bidder,(0,r.D4)(n.bid_id,t))}));let i=e.code,a=1;for(;d.has(i);)a++,i=`${e.code}-${a}`;d.add(i),o.push({...e,adUnitCode:e.code,pbsData:{impId:i,actualBidRequests:s,adUnit:e}})}));const b={...Object.fromEntries(Object.entries(t[0]).filter((e=>{let[t]=e;return!T.has(t)}))),paapi:{enabled:t.some((e=>e.paapi?.enabled))}};return P.toORTB({bidderRequest:b,bidRequests:o,context:{currency:c.$W.getConfig("currency.adServerCurrency")||"USD",ttl:e.s2sConfig.defaultTtl||60,requestTimestamp:i,s2sBidRequest:e,requestedBidders:s,actualBidderRequests:t,nativeRequest:e.s2sConfig.ortbNative,getRedactor:p,transmitTids:(0,x.io)(E.VJ,u)}})}(e,t,f,g))),C=m&&JSON.stringify(m);(0,r.fH)("BidRequest: "+C);const h=G(e.s2sConfig.endpoint,l),y=(0,d.A)(e,"s2sConfig.customHeaders",{});if(m&&C&&h){const t=e.metrics.startTiming("net");n(h,{success:function(n){let s;t();try{s=JSON.parse(n);const{bids:t,paapi:i}=e.metrics.measureTime("interpretResponse",(()=>function(e,t){return P.fromORTB({response:e,request:t})}(s,m)));t.forEach(u),i&&i.forEach(p)}catch(e){(0,r.vV)(e)}!s||s.status&&(0,b.mK)(s.status,"Error")?((0,r.vV)("error parsing response: ",s?s.status:"not valid JSON"),i(!1,g)):i(!0,g,s)},error:function(){t(),o.apply(this,arguments)}},C,{contentType:"text/plain",withCredentials:!0,browsingTopics:(0,x.io)(E.DL,(0,a.K5)(e.s2sConfig)),customHeaders:y})}else(0,r.vV)("PBS request not made. Check endpoints.")}),"processPBSRequest");function K(e,t){return e?.extPrebid?.returnallbidstatus?t?.ext?.seatnonbid:void 0}function z(e){return e?.ext?.prebid?.analytics?.tags}a.Ay.registerBidAdapter(new function(){const e=new i.A("prebidServer");return e.callBids=function(e,t,n,s,i){const b=e.metrics=(0,A.BO)((0,d.A)(t,"0.metrics")).newMetrics().renameWith((t=>[`adapter.s2s.${t}`,`adapters.s2s.${e.s2sConfig.defaultVendor}.${t}`]));s=b.startTiming("total").stopBefore(s),t.forEach((e=>(0,A.BO)(e.metrics).join(b,{continuePropagation:!1})));let{gdprConsent:l,uspConsent:f,gppConsent:g}=L(t);if(Array.isArray(D)){if(e.s2sConfig&&e.s2sConfig.syncEndpoint&&G(e.s2sConfig.syncEndpoint,l)){const t=(e.s2sConfig.extPrebid&&e.s2sConfig.extPrebid.aliases)??{};N(e.s2sConfig.bidders.map((e=>a.Ay.aliasRegistry[e]||t[e]||e)).filter(((e,t,n)=>n.indexOf(e)===t)),l,f,g,e.s2sConfig)}Y(e,t,i,{onResponse:function(n,i,r){n&&t.forEach((e=>p.Ic(o.qY.BIDDER_DONE,e)));const{seatNonBidData:d,atagData:u}=function(e,t){return{atagData:z(t),seatNonBidData:K(e,t)}}(e.s2sConfig,r);if(d&&p.Ic(o.qY.SEAT_NON_BID,{seatnonbid:r.ext.seatnonbid,auctionId:t[0].auctionId,requestedBidders:i,response:r,adapterMetrics:b}),d||u){const e={seatnonbid:d,atag:u,auctionId:t[0].auctionId,requestedBidders:i,response:r,adapterMetrics:b};p.Ic(o.qY.PBS_ANALYTICS,e)}s(!1),function(e,t,n,s){e.forEach((e=>{let i=a.Ay.getBidAdapter(e);i&&i.registerSyncs&&c.$W.runWithBidder(e,i.registerSyncs.bind(i,[],t,n,s))}))}(i,l,f,g)},onError(n,i){const{p1Consent:d="",noP1Consent:a=""}=e?.s2sConfig?.endpoint||{};d===a?(0,r.vV)(`Prebid server call failed: '${n}'. Endpoint: "${d}"}`,i):(0,r.vV)(`Prebid server call failed: '${n}'. Endpoints: p1Consent "${d}", noP1Consent "${a}"}`,i),t.forEach((e=>p.Ic(o.qY.BIDDER_ERROR,{error:i,bidderRequest:e}))),s(i.timedOut)},onBid:function(t){let{adUnit:s,bid:i}=t;const d=i.metrics=e.metrics.fork().renameWith();var a,c,p;d.checkpoint("addBidResponse"),null!=i.requestId&&null!=i.requestBidder||e.s2sConfig.allowUnknownBidderCodes?d.measureTime("addBidResponse.validate",(()=>(0,u.fn)(s,i)))?(n(s,i),i.pbsWurl&&(a=i.auctionId,c=i.adId,p=i.pbsWurl,[a,c].every(r.O8)&&(V[`${a}${c}`]=p))):n.reject(s,i,o.Tf.INVALID):((0,r.JE)(`PBS adapter received bid from unknown bidder (${i.bidder}), but 's2sConfig.allowUnknownBidderCodes' is not set. Ignoring bid.`),n.reject(s,i,o.Tf.BIDDER_DISALLOWED))},onFledge:e=>{c.$W.runWithBidder(e.bidder,(()=>{(0,u.JN)({auctionId:t[0].auctionId,...e},{config:e.config})}))}})}},p.on(o.qY.BID_WON,M),Object.assign(this,{callBids:e.callBids,setBidderCode:e.setBidderCode,type:k})},"prebidServer"),(0,s.E)("prebidServerBidAdapter")}},e=>{e.O(0,[802,618,498,225,85],(()=>{return t=6976,e(e.s=t);var t}));e.O()}]);
})(),tlpbjs.processQueue();
tlpbjs.config = {};
//these default config settings are overidden later on
tlpbjs.config.div = document.getElementById("tl-ad-unit-div");
tlpbjs.config.storedImp = "td-in-content";
tlpbjs.nativeRender = function() {
var winners=tlpbjs.getHighestCpmBids();
console.log("tlpbjs: winners: " + winners.length);
for (var i = 0; i < winners.length; i++) {
var winningBid = winners[i];
if (winningBid && winningBid.adId) {
console.log("tlpbjs: winning bid id: "+ winningBid.adId);
if (tlpbjs.config.div) {
tlpbjs.config.div.innerHTML = "";
tlpbjs.config.div.align = "center";
let iframe = document.createElement("iframe");
iframe.frameBorder = "0";
iframe.scrolling = "no";
iframe.style = "overflow:hidden;display:block;border-style:none;";
tlpbjs.config.div.appendChild(iframe);
var iframeDoc = iframe.contentWindow.document;
tlpbjs.renderAd(iframeDoc, winningBid.adId);
}
}
}
}
tlpbjs.que.push(function() {
tlpbjs.setConfig({
s2sConfig: {
accountId: "tl",
bidders: ["appnexus"],
timeout: 2000,
enabled: true,
adapter: "prebidServer",
endpoint: "https://a.bids.ws/openrtb2/auction",
syncEndpoint: "https://a.bids.ws/cookie_sync",
coopSync: false,
allowUnknownBidderCodes: true
},
useBidCache: true,
bidderTimeout: 2500,
enableTIDs: true,
bidderSequence: "random",
enableSendAllBids: false,
auctionOptions: {
suppressStaleRender: true
},
consentManagement: {
gdpr: {
cmpApi: "iab",
allowAuctionWithoutConsent: true,
timeout: 0,
defaultGdprScope: true
},
usp: {
cmpApi: "iab",
timeout: 0
}
}
});
});
}
function renderTlDynamicAd(tlid, div) {
if(!window.tlpbjs)
loadTlpbjs();
if(div) {
if (typeof div === "string") {
tlpbjs.config.div = document.getElementById(div);
} else {
tlpbjs.config.div = div;
}
}
if(tlid) {
tlpbjs.config.storedImp = tlid;
}
tlpbjs.que.push(function() {
if (!tlpbjs.config.adUnits) {
tlpbjs.config.adUnits = [{
code: "tl_dynamic_unit",
mediaTypes: {
native: {
type: "image"
}
},
bids: [{
bidder: "appnexus" //need at least one bidder to trigger s2s auction
}],
ortb2Imp: {
ext: {
prebid: {
storedrequest: {
id: tlpbjs.config.storedImp
}
}
}
}
}];
tlpbjs.addAdUnits(tlpbjs.config.adUnits);
}
var other_eids;
if (!(typeof pbjs === "undefined") && pbjs.getUserIdsAsEids) {
other_eids = pbjs.getUserIdsAsEids();
} else if (!(typeof ihowpbjs === "undefined") && ihowpbjs.getUserIdsAsEids) {
other_eids = ihowpbjs.getUserIdsAsEids();
} else if (!(typeof pbjs === "undefined") && pbjs.adUnits && pbjs.adUnits[0] && pbjs.adUnits[0].bids && pbjs.adUnits[0].bids[0] && pbjs.adUnits[0].bids[0].userId) {
other_eids = pbjs.adUnits[0].bids[0].userId;
}
tlpbjs.mergeConfig({
ortb2: {
user: {
eids: other_eids,
ext: {
eids: other_eids
}
}
}
});
tlpbjs.requestBids({
bidsBackHandler: tlpbjs.nativeRender()
});
});
}
function initTlpbjs() {
var tlid, div;
if (document.currentScript && document.currentScript.getAttribute('src')) {
let src = document.currentScript.getAttribute('src');
if (src.endsWith("/bids.js")) {
return;
}
tlid = src.match(/\/([^\/]*?)\.js/i)[1];
div = document.currentScript.parentNode;
}
if (document.currentScript && document.currentScript.dataset && document.currentScript.dataset.divid) {
div = document.currentScript.dataset.divid;
}
if (tlid) {
renderTlDynamicAd(tlid, div);
}
}
initTlpbjs();