@dev-wrapp/8efa792fe841a 0.0.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ /*! app name: app-p8efa792fe841a.js | version: 1.0.0 | build date: 2025-05-16T16:29:34.515Z */(()=>{var __webpack_modules__={"../../../home/wrapp/builds/8EFA792FE841A/0.0.26/prebid.js":()=>{eval('/* prebid.js v9.23.0\nUpdated: 2025-05-16\nModules: consentManagementGpp, consentManagementUsp, gppControl_usnat, gppControl_usstates, gptPreAuction, sovrnBidAdapter, testbidderBidAdapter, appnexusBidAdapter */\nif(window.pbjs&&window.pbjs.libLoaded)try{window.pbjs.getConfig("debug")&&console.warn("Attempted to load a copy of Prebid.js that clashes with the existing \'pbjs\' instance. Load aborted.")}catch(e){}else (function(){\n(()=>{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=>{\n/*\n* @license MIT\n* Fun Hooks v0.9.10\n* (c) @snapwich\n*/\nu.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.pbjsChunk=self.pbjsChunk||[];e.forEach(t.bind(null,0)),e.push=t.bind(null,e.push.bind(e))})();var o=n.O(void 0,[802,85],(()=>n(8261)));o=n.O(o)})();\n(self.pbjsChunk=self.pbjsChunk||[]).push([[802],{5789:(e,t,n)=>{n.d(t,{A4:()=>u,J7:()=>l,Pg:()=>f});var i=n(1580),r=n(1069),o=n(5901),s=n(7873),a=n(5569);const d=(0,s.m)(),c="outstream";function u(e){const{url:t,config:n,id:s,callback:u,loaded:l,adUnitCode:f,renderNow:g}=e;this.url=t,this.config=n,this.handlers={},this.id=s,this.renderNow=g,this.loaded=l,this.cmd=[],this.push=e=>{"function"==typeof e?this.loaded?e.call():this.cmd.push(e):(0,r.vV)("Commands given to Renderer.push must be wrapped in a function")},this.callback=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=d.adUnits,n=(0,o.I6)(t,(t=>t.code===e));if(!n)return!1;const i=n?.renderer,r=!!(i&&i.url&&i.render),s=n?.mediaTypes?.video?.renderer,a=!!(s&&s.url&&s.render);return!!(r&&!0!==i.backupOnly||a&&!0!==s.backupOnly)}(f)?g?n():(this.cmd.unshift(n),(0,i.R)(t,a.tp,c,this.callback,this.documentContext)):((0,r.JE)(`External Js not loaded by Renderer since renderer url and callback is already defined on adUnit ${f}`),n())}.bind(this)}function l(e){return!(!e||!e.url&&!e.renderNow)}function f(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:()=>u,Ml:()=>r,Ue:()=>i,VJ:()=>f,hE:()=>l,hq:()=>c,mo:()=>d,pY:()=>g,qX:()=>o,uc:()=>a,yl:()=>s});const i="accessDevice",r="syncUser",o="enrichUfpd",s="enrichEids",a="fetchBids",d="reportAnalytics",c="transmitEids",u="transmitUfpd",l="transmitPreciseGeo",f="transmitTid",g="loadExternalScript"},3441:(e,t,n)=>{n.d(t,{s:()=>r});var i=n(8046);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:()=>u,ZI:()=>p,Zw:()=>c,bt:()=>l,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",u="configName",l="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))},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:()=>T,BS:()=>W,Hh:()=>q,Pk:()=>x,Uc:()=>O,XO:()=>P,bw:()=>U,n6:()=>w,qn:()=>_,vB:()=>N,vW:()=>k,vd:()=>S});var i=n(1069),r=n(5023),o=n(8969),s=n(3272),a=n(5789),d=n(1371),c=n(6881),u=n(6031),l=n(9214),f=n(2449),g=n(5555),p=n(8046),h=n(6894),m=n(7779);const{AD_RENDER_FAILED:b,AD_RENDER_SUCCEEDED:y,STALE_RENDER:v,BID_WON:E,EXPIRED_RENDER:A}=o.qY,{EXCEPTION:I}=o.as,T=(0,l.A_)("sync",(function(e){return(arguments.length>2&&void 0!==arguments[2]?arguments[2]:g.k.resolve()).then((t=>t??c.n.findBidByAdId(e))).catch((()=>{}))})),w=(0,l.A_)("sync",(function(e){r.Ic(E,e),c.n.addWinningBid(e)}));function C(e){let{reason:t,message:n,bid:o,id:s}=e;const a={reason:t,message:n};o&&(a.bid=o,a.adId=o.adId),s&&(a.adId=s),(0,i.vV)(`Error rendering ad (id: ${s}): ${n}`),r.Ic(b,a)}function B(e){let{doc:t,bid:n,id:i}=e;const o={doc:t};n&&(o.bid=n),i&&(o.adId=i),p.Ay.callAdRenderSucceededBidder(n.adapterCode||n.bidder,n),r.Ic(y,o)}function O(e,t){switch(e.event){case o.qY.AD_RENDER_FAILED:C({bid:t,id:t.adId,reason:e.info.reason,message:e.info.message});break;case o.qY.AD_RENDER_SUCCEEDED:B({doc:null,bid:t,id:t.adId});break;default:(0,i.vV)(`Received event request for unsupported event: \'${e.event}\' (adId: \'${t.adId}\')`)}}function k(e,t,n){let{resizeFn:i,fireTrackers:r=f.vO}=n;if("resizeNativeHeight"===e.action)i(e.width,e.height);else r(e,t)}const R={[o.nl.EVENT]:O};R[o.nl.NATIVE]=k;const S=(0,l.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}})),D=(0,l.A_)("sync",(function(e){let{renderFn:t,resizeFn:n,bidResponse:r,options:s,doc:a,isMainDocument:c=a===document&&!(0,i.al)()}=e;const u=r.mediaType===d.G_;if(c||u)return void C({reason:o.as.PREVENT_WRITING_ON_MAIN_DOCUMENT,message:u?"Cannot render video ad without a renderer":"renderAd was prevented from writing to the main document.",bid:r,id:r.adId});const l=S(r,s);t(Object.assign({adId:r.adId},l));const{width:f,height:g}=l;null!=(f??g)&&n(f,g)}));function U(e){let{renderFn:t,resizeFn:n,adId:a,options:d,bidResponse:c,doc:u}=e;q(c,(()=>{if(null!=c){if((c.status!==o.tl.RENDERED||((0,i.JE)(`Ad id ${a} has been rendered before`),r.Ic(v,c),!s.$W.getConfig("auctionOptions")?.suppressStaleRender))&&(m.uW.isBidNotExpired(c)||((0,i.JE)(`Ad id ${a} has been expired`),r.Ic(A,c),!s.$W.getConfig("auctionOptions")?.suppressExpiredRender)))try{D({renderFn:t,resizeFn:n,bidResponse:c,options:d,doc:u})}catch(e){C({reason:o.as.EXCEPTION,message:e.message,id:a,bid:c})}}else C({reason:o.as.CANNOT_FIND_AD,message:`Cannot find ad \'${a}\'`,id:a})}))}function _(e){const t=(0,h.BO)(e.metrics);t.checkpoint("bidRender"),t.timeBetween("bidWon","bidRender","render.deferred"),t.timeBetween("auctionEnd","bidRender","render.pending"),t.timeBetween("requestBids","bidRender","render.e2e"),e.status=o.tl.RENDERED}D.before((function(e,t){const{bidResponse:n,doc:i}=t;(0,a.J7)(n.renderer)?((0,a.Pg)(n.renderer,n,i),B({doc:i,bid:n,id:n.adId}),e.bail()):e(t)}),100);const j=new WeakMap,$=new WeakSet;function q(e,t){null!=e?(j.set(e,t),e.deferRendering||N(e),x(e)):t()}function x(e){$.has(e)||($.add(e),w(e))}function N(e){const t=j.get(e);t&&(t(),_(e),j.delete(e))}function W(e,t,n){let r;function s(e,n){C(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){R.hasOwnProperty(e)&&R[e](t,n,c)});var c;function l(t){t.ad?(e.write(t.ad),e.close(),B({doc:e,bid:r,id:r.adId})):(0,u.H)(r).then((n=>n(t,{sendMessage:(e,t)=>d(e,t,r),mkFrame:i.hw},e.defaultView))).then((()=>B({doc:e,bid:r,id:r.adId})),(e=>{s(e?.reason||o.as.EXCEPTION,e?.message),e?.stack&&(0,i.vV)(e)}));const n=document.createComment(`Creative ${r.creativeId} served by ${r.bidder} Prebid.js Header Bidding`);(0,i._s)(n,e,"html")}try{t&&e?T(t).then((i=>{r=i,U({renderFn:l,resizeFn:a,adId:t,options:{clickUrl:n?.clickThrough},bidResponse:i,doc:e})})):s(o.as.MISSING_DOC_OR_ADID,"missing "+(t?"doc":"adId"))}catch(e){s(I,e.message)}}function P(){if(!window.frames[o.IY])if(document.body){const e=(0,i.CA)();e.name=o.IY,document.body.appendChild(e)}else window.requestAnimationFrame(P)}},8046:(e,t,n)=>{n.d(t,{Ay:()=>te,pX:()=>Q});var i=n(1069),r=n(2449),o=n(9115),s=n(8044),a=n(3272),d=n(9214),c=n(5901);let u={};function l(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 f(e){return l(e,"auctionsCounter")}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}function m(e){return u?.[e]?.auctionsCounter||0}var b=n(7934),y=n(6916),v=n(5023),E=n(8969),A=n(6894),I=n(6881),T=n(5569),w=n(5139),C=n(6811),B=n(2604),O=n(433);const k=["data","ext.data","yob","gender","keywords","kwarray","id","buyeruid","customdata"].map((e=>`user.${e}`)).concat("device.ext.cdep"),R=["user.eids","user.ext.eids"],S=["user.geo.lat","user.geo.lon","device.geo.lat","device.geo.lon"],D=["device.ip"],U=["device.ipv6"];function _(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 j(e){return e.forEach((e=>{e.paths=e.paths.map((e=>{const t=e.split("."),n=t.pop();return[t.length>0?t.join("."):null,n]}))})),function(t,n){const i=[];for(var r=arguments.length,o=new Array(r>2?r-2:0),s=2;s<r;s++)o[s-2]=arguments[s];const a=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,...o);return e.forEach((e=>{if(!1!==t[e.name])for(const[r,o]of e.paths){const s=null==r?n:(0,O.A)(n,r);if(i.push(e.run(n,r,s,o,a.bind(null,e))),!1===t[e.name])return}})),i.filter((e=>null!=e))}}function $(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:w.io;return function(n){return!t(e,n)}}function q(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:w.io;return[{name:C.DL,paths:k,applies:$(C.DL,e)},{name:C.hq,paths:R,applies:$(C.hq,e)},{name:C.hE,paths:S,applies:$(C.hE,e),get:e=>Math.round(100*(e+Number.EPSILON))/100},{name:C.hE,paths:D,applies:$(C.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:C.hE,paths:U,applies:$(C.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:C.VJ,paths:["source.tid"],applies:$(C.VJ,e)}].map(_)}const x=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:w.io;const t=j(q(e)),n=j(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:w.io;return[{name:C.hq,paths:["userId","userIdAsEids"],applies:$(C.hq,e)},{name:C.VJ,paths:["ortb2Imp.ext.tid"],applies:$(C.VJ,e)}].map(_)}(e));return function(e){const i={};return{ortb2:n=>(t(i,n,e),n),bidRequest:t=>(n(i,t,e),t)}}}();(0,w.qB)(C.VJ,"enableTIDs config",(()=>{if(!a.$W.getConfig("enableTIDs"))return{allow:!1,reason:"TIDs are disabled"}}));const N="pbsBidAdapter",W={CLIENT:"client",SERVER:"server"},P={isAllowed:w.io,redact:x};let V={},M=V.bidderRegistry={},G=V.aliasRegistry={},F=[];a.$W.getConfig("s2sConfig",(e=>{e&&e.s2sConfig&&(F=(0,i.cy)(e.s2sConfig)?e.s2sConfig:[e.s2sConfig])}));var H={};const L=(0,B.ZI)((e=>V.resolveAlias(e)));const z=(0,d.A_)("sync",(function(e){let{bidderCode:t,auctionId:n,bidderRequestId:r,adUnits:o,src:s,metrics:a}=e;return o.reduce(((e,o)=>{const d=o.bids.filter((e=>e.bidder===t));return null==t&&0===d.length&&null!=o.s2sBid&&d.push({bidder:null}),e.push(d.reduce(((e,d)=>{const c=null==(d=Object.assign({},d,{ortb2Imp:(0,i.D9)({},o.ortb2Imp,d.ortb2Imp)},(0,i.SH)(o,["nativeParams","nativeOrtbRequest","mediaType","renderer"]))).mediaTypes?o.mediaTypes:d.mediaTypes;return(0,i.wD)(c)?d=Object.assign({},d,{mediaTypes:c}):(0,i.vV)(`mediaTypes is not correctly configured for adunit ${o.code}`),"client"===s&&function(e,t){l(e,"requestsCounter",t)}(o.code,t),e.push(Object.assign({},d,{adUnitCode:o.code,transactionId:o.transactionId,adUnitId:o.adUnitId,sizes:c?.banner?.sizes||c?.video?.playerSize||[],bidId:d.bid_id||(0,i.s0)(),bidderRequestId:r,auctionId:n,src:s,metrics:a,auctionsCount:m(o.code),bidRequestsCount:g(o.code),bidderRequestsCount:p(o.code,d.bidder),bidderWinsCount:h(o.code,d.bidder),deferBilling:!!o.deferBilling})),e}),[])),e}),[]).reduce(i.Bq,[]).filter((e=>""!==e))}),"getBids");const J=(0,d.A_)("sync",(function(e,t){let{getS2SBidders:n=Q}=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 K=(0,d.A_)("sync",((e,t)=>e),"setupAdUnitMediaTypes");function Q(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 Y=(0,d.A_)("sync",(function(e,t){let{getS2SBidders:n=Q}=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)?W.SERVER:W.CLIENT].push(t),e)),{[W.CLIENT]:[],[W.SERVER]:[]})}),"partitionBidders");function X(e,t){const n=M[e],i=n?.getSpec&&n.getSpec();if(i&&i[t]&&"function"==typeof i[t])return[i,i[t]]}function Z(e,t,n,r){try{(0,i.fH)(`Invoking ${e}.${t}`);for(var o=arguments.length,s=new Array(o>4?o-4:0),d=4;d<o;d++)s[d-4]=arguments[d];a.$W.runWithBidder(e,r.bind(n,...s))}catch(n){(0,i.JE)(`Error calling ${t} of ${e}`)}}function ee(e,t,n){if(n?.source!==E.RW.SRC){const i=X(e,t);null!=i&&Z(e,t,...i,n)}}V.makeBidRequests=(0,d.A_)("sync",(function(e,t,n,o,s){let d=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},u=arguments.length>6?arguments[6]:void 0;u=(0,A.BO)(u),v.Ic(E.qY.BEFORE_REQUEST_BIDS,e),(0,r.nk)(e),e.map((e=>e.code)).filter(i.hj).forEach(f),e.forEach((e=>{(0,i.Qd)(e.mediaTypes)||(e.mediaTypes={}),e.bids=e.bids.filter((e=>!e.bidder||P.isAllowed(C.uc,L(T.tW,e.bidder)))),l(e.code,"requestsCounter")})),e=K(e,s);let{[W.CLIENT]:g,[W.SERVER]:p}=Y(e,F);a.$W.getConfig("bidderSequence")===a.Ov&&(g=(0,i.k4)(g));const h=(0,b.EN)();let m=[];const I=d.global||{},w=d.bidder||{};function O(e,t){const r=P.redact(null!=t?t:L(T.tW,e.bidderCode)),o=Object.freeze(r.ortb2((0,i.D9)({source:{tid:n}},I,w[e.bidderCode])));return e.ortb2=o,e.bids=e.bids.map((e=>(e.ortb2=o,r.bidRequest(e)))),e}F.forEach((r=>{const o=function(e){return L(T.tp,N,{[B.XG]:e.configName})}(r);if(r&&r.enabled&&P.isAllowed(C.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===N&&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=J(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===p.length&&a?[null]:p).forEach((e=>{const a=(0,i.s0)(),c=u.fork(),l=O({bidderCode:e,auctionId:n,bidderRequestId:a,uniquePbsTid:d,bids:z({bidderCode:e,auctionId:n,bidderRequestId:a,adUnits:(0,i.Go)(s),src:E.RW.SRC,metrics:c}),auctionStart:t,timeout:r.timeout,src:E.RW.SRC,refererInfo:h,metrics:c},o);0!==l.bids.length&&m.push(l)})),s.forEach((e=>{let t=e.bids.filter((e=>(0,c.I6)(m,(t=>(0,c.I6)(t.bids,(t=>t.bidId===e.bid_id))))));e.bids=t})),m.forEach((e=>{void 0===e.adUnitsS2SCopy&&(e.adUnitsS2SCopy=s.filter((e=>e.bids.length>0||null!=e.s2sBid)))}))}}));let k=function(e){let t=(0,i.Go)(e);return t.forEach((e=>{e.bids=J(e.bids,null)})),t=t.filter((e=>0!==e.bids.length)),t}(e);return g.forEach((e=>{const r=(0,i.s0)(),a=u.fork(),d=O({bidderCode:e,auctionId:n,bidderRequestId:r,bids:z({bidderCode:e,auctionId:n,bidderRequestId:r,adUnits:(0,i.Go)(k),labels:s,src:"client",metrics:a}),auctionStart:t,timeout:o,refererInfo:h,metrics:a}),c=M[e];c||(0,i.vV)(`Trying to make a request for bidder that does not exist: ${e}`),c&&d.bids&&0!==d.bids.length&&m.push(d)})),m.forEach((e=>{y.mW.getConsentData()&&(e.gdprConsent=y.mW.getConsentData()),y.t6.getConsentData()&&(e.uspConsent=y.t6.getConsentData()),y.ad.getConsentData()&&(e.gppConsent=y.ad.getConsentData())})),m}),"makeBidRequests"),V.callBids=function(e,t,n,r,o,d,c){let u=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[l,f]=t.reduce(((e,t)=>(e[Number(void 0!==t.src&&t.src===E.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;F.forEach((e=>{if(e&&g[p]&&Q(e).has(g[p].bidderCode)){const t=(0,s.g4)(d,o?{request:o.request.bind(null,"s2s"),done:o.done}:void 0);let a=e.bidders;const l=M[e.adapter];let h=g[p].uniquePbsTid,m=g[p].adUnitsS2SCopy,b=f.filter((e=>e.uniquePbsTid===h));if(l){let o={ad_units:m,s2sConfig:e,ortb2Fragments:u,requestBidsTimeout:d};if(o.ad_units.length){let e=b.map((e=>(e.start=(0,i.vE)(),function(t){t||c(e.bidderRequestId),r.apply(e,arguments)})));const s=(0,i.ZA)(o.ad_units).filter((e=>a.includes(e)));(0,i.OG)(`CALLING S2S HEADER BIDDERS ==== ${s.length>0?s.join(", "):\'No bidder specified, using "ortb2Imp" definition(s) only\'}`),b.forEach((e=>{v.Ic(E.qY.BID_REQUESTED,{...e,tid:e.auctionId})})),l.callBids(o,f,n,(t=>e.forEach((e=>e(t)))),t)}}else(0,i.vV)("missing "+e.adapter);p++}})),l.forEach((e=>{e.start=(0,i.vE)();const t=M[e.bidderCode];a.$W.runWithBidder(e.bidderCode,(()=>{(0,i.OG)("CALLING BIDDER"),v.Ic(E.qY.BID_REQUESTED,e)}));let u=(0,s.g4)(d,o?{request:o.request.bind(null,e.bidderCode),done:o.done}:void 0);const l=r.bind(e);try{a.$W.runWithBidder(e.bidderCode,t.callBids.bind(t,e,n,l,u,(()=>c(e.bidderRequestId)),a.$W.callbackWithBidder(e.bidderCode)))}catch(t){(0,i.vV)(`${e.bidderCode} Bid Adapter emitted an uncaught error when parsing their bidRequest`,{e:t,bidRequest:e}),l()}}))},V.videoAdapters=[],V.registerBidAdapter=function(e,t){let{supportedMediaTypes:n=[]}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};e&&t?"function"==typeof e.callBids?(M[t]=e,y.o2.register(T.tW,t,e.getSpec?.().gvlid),(0,c.mK)(n,"video")&&V.videoAdapters.push(t),(0,c.mK)(n,"native")&&r.mT.push(t)):(0,i.vV)("Bidder adaptor error for bidder code: "+t+"bidder must implement a callBids() function"):(0,i.vV)("bidAdapter or bidderCode not specified")},V.aliasBidAdapter=function(e,t,n){if(void 0===M[t]){let s=M[e];if(void 0===s){const n=[];F.forEach((i=>{if(i.bidders&&i.bidders.length){const r=i&&i.bidders;i&&(0,c.mK)(r,t)?G[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,c.mK)(V.videoAdapters,e)&&t.push("video"),(0,c.mK)(r.mT,e)&&t.push("native"),t}(e);if(s.constructor.prototype!=Object.prototype)a=new s.constructor,a.setBidderCode(t);else{const{useBaseGvlid:r=!1}=n||{};let d=s.getSpec();const c=r?d.gvlid:n?.gvlid;null==c&&null!=d.gvlid&&(0,i.JE)(`Alias \'${t}\' will NOT re-use the GVL ID of the original adapter (\'${d.code}\', gvlid: ${d.gvlid}). Functionality that requires TCF consent may not work as expected.`);let u=n&&n.skipPbsAliasing;a=(0,o.xb)(Object.assign({},d,{code:t,gvlid:c,skipPbsAliasing:u})),G[t]=e}V.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.\')},V.resolveAlias=function(e){let t,n=e;for(;G[n]&&(!t||!t.has(n));)n=G[n],(t=t||new Set).add(n);return n},V.registerAnalyticsAdapter=function(e){let{adapter:t,code:n,gvlid:r}=e;t&&n?"function"==typeof t.enableAnalytics?(t.code=n,H[n]={adapter:t,gvlid:r},y.o2.register(T.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")},V.enableAnalytics=function(e){(0,i.cy)(e)||(e=[e]),e.forEach((e=>{const t=H[e.provider];t&&t.adapter?P.isAllowed(C.mo,L(T.Tn,e.provider,{[B.TQ]:e}))&&t.adapter.enableAnalytics(e):(0,i.vV)(`Prebid Error: no analytics adapter found in registry for \'${e.provider}\'.`)}))},V.getBidAdapter=function(e){return M[e]},V.getAnalyticsAdapter=function(e){return H[e]},V.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=>{ee(e,"onTimeout",t[e])}))},V.callBidWonBidder=function(e,t,n){var r,o;t.params=(0,i.SB)(n,t.adUnitCode,t.bidder),r=t.adUnitCode,o=t.bidder,l(r,"winsCounter",o),ee(e,"onBidWon",t)},V.triggerBilling=(()=>{const e=new WeakSet;return t=>{e.has(t)||(e.add(t),t.source===E.RW.SRC&&t.burl&&i.mM.triggerPixel(t.burl),ee(t.bidder,"onBidBillable",t))}})(),V.callSetTargetingBidder=function(e,t){ee(e,"onSetTargeting",t)},V.callBidViewableBidder=function(e,t){ee(e,"onBidViewable",t)},V.callBidderError=function(e,t,n){ee(e,"onBidderError",{error:t,bidderRequest:n})},V.callAdRenderSucceededBidder=function(e,t){ee(e,"onAdRenderSucceeded",t)},V.callDataDeletionRequest=(0,d.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(M).filter((e=>!G.hasOwnProperty(e))).forEach((e=>{const n=X(e,r);if(null!=n){const i=I.n.getBidsRequested().filter((t=>function(e){const t=new Set;for(;G.hasOwnProperty(e)&&!t.has(e);)t.add(e),e=G[e];return e}(t.bidderCode)===e));Z(e,r,...n,i,...t)}})),Object.entries(H).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 te=V},9115:(e,t,n)=>{function i(e){var t=e;return{callBids:function(){},setBidderCode:function(e){t=e},getBidderCode:function(){return t}}}n.d(t,{xb:()=>B,a$:()=>w});var r=n(8046),o=n(3272),s=n(3597),a=n(8230),d=n(2449),c=n(3895),u=n(8969),l=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"],T=["auctionId","transactionId"];function w(e){const t=Array.isArray(e.supportedMediaTypes)?{supportedMediaTypes:e.supportedMediaTypes}:void 0;function n(e){const n=B(e);r.Ay.registerBidAdapter(n,e.code,t)}n(e),Array.isArray(e.aliases)&&e.aliases.forEach((t=>{let i,o,s=t;(0,g.Qd)(t)&&(s=t.code,i=t.gvlid,o=t.skipPbsAliasing),r.Ay.aliasRegistry[s]=e.code,n(Object.assign({},e,{code:s,gvlid:i,skipPbsAliasing:o}))}))}const C=(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 T.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 B(e){return Object.assign(new i(e.code),{getSpec:function(){return Object.freeze(Object.assign({},e))},registerSyncs:t,callBids:function(n,i,a,p,y,v){if(!Array.isArray(n.bids))return;const E=C(n),A={};function w(e,t){const n=(0,b.BO)(t.metrics);n.checkpoint("addBidResponse"),A[e]=!0,n.measureTime("addBidResponse.validate",(()=>function(e,t){let{index:n=h.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};function i(){let e=Object.keys(t);return I.every((n=>(0,f.mK)(e,n)&&!(0,f.mK)([void 0,null],t[n])))}function r(e){return`Invalid bid from ${t.bidderCode}. Ignoring bid: ${e}`}if(!e)return(0,g.JE)("No adUnitCode was supplied to addBidResponse."),!1;if(!t)return(0,g.JE)(`Some adapter tried to add an undefined bid for ${e}.`),!1;if(!i())return(0,g.vV)(r(`Bidder ${t.bidderCode} is missing required params. Check http://prebid.org/dev-docs/bidder-adapter-1.html for list of params.`)),!1;if("native"===t.mediaType&&!(0,d.Bm)(t,{index:n}))return(0,g.vV)(r("Native bid missing some required properties.")),!1;if("video"===t.mediaType&&!(0,c.vk)(t,{index:n}))return(0,g.vV)(r("Video bid does not have required vastUrl or renderer property")),!1;if("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}))return(0,g.vV)(r("Banner bids require a width and height")),!1;return!0}(e,t)))?i(e,t):i.reject(e,t,u.Tf.INVALID)}const B=[];function O(){a(),o.$W.runWithBidder(e.code,(()=>{l.Ic(u.qY.BIDDER_DONE,n),t(B,n.gdprConsent,n.uspConsent,n.gppConsent)}))}const R=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}(E.bidRequest(t))))));if(0===R.length)return void O();const U={};R.forEach((e=>{U[e.bidId]=e,e.adUnitCode||(e.adUnitCode=e.placementCode)})),k(e,R,n,p,v,{onRequest:e=>l.Ic(u.qY.BEFORE_BIDDER_HTTP,n,e),onResponse:t=>{y(e.code),B.push(t)},onPaapi:e=>{const t=U[e.bidId];t?S(t,e):(0,g.JE)("Received fledge auction configuration for an unknown bidId",e)},onError:(t,i)=>{i.timedOut||y(e.code),r.Ay.callBidderError(e.code,i,n),l.Ic(u.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=U[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,u.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)(u.XQ.GOOD,n),t,(0,g.Up)(n,T));w(n.adUnitCode,r)}else(0,g.JE)(`Bidder ${e.code} made bid for unknown request ID: ${t.requestId}. Ignoring.`),i.reject(null,t,u.Tf.INVALID_REQUEST_ID)},onCompletion:O})}});function t(t,n,i,r){R(e,t,n,i,r)}}const O=["bids","paapi"],k=(0,p.A_)("sync",(function(e,t,n,i,r,o){let{onRequest:s,onResponse:a,onPaapi:d,onError:c,onBid:u,onCompletion:l}=o;const f=D(n);l=f.startTiming("total").stopBefore(l);const p=C(n);let h=f.measureTime("buildRequests",(()=>e.buildRequests(t.map(p.bidRequest),p.bidderRequest(n))));if(!h||0===h.length)return void l();Array.isArray(h)||(h=[h]);const b=(0,g.U6)(l,h.length);h.forEach((t=>{const n=f.fork();function o(e){null!=e&&(e.metrics=n.fork().renameWith()),u(e)}const l=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=>!O.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:l,error:p},void 0,I({method:"GET",withCredentials:!0}));break;case"POST":i(t.url,{success:l,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"),R=(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"),S=(0,p.A_)("sync",((e,t)=>{}),"addPaapiConfig");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:()=>u});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 u(e,t,n,u,l,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`);l||(l=document);const g=m(l,e);if(g)return u&&"function"==typeof u&&(g.loaded?u():g.callbacks.push(u)),g.tag;const p=d.get(l)||{},h={loaded:!1,tag:null,callbacks:[]};return p[e]=h,d.set(l,p),u&&"function"==typeof u&&h.callbacks.push(u),(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)}}),l,f);function m(e,t){const n=d.get(e);return n&&n[t]?n[t]:null}}},8044:(e,t,n)=>{n.d(t,{g4:()=>l});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 u(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 l(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3e3,{request:t,done:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};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=u(t,r);t.ok||304===t.status?n(r,o):i(t.statusText,o)}),(e=>i("",Object.assign(u({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 u={method:i,headers:c};return i!==s&&t&&(u.body=t),n.withCredentials&&(u.credentials="include"),isSecureContext&&["browsingTopics","adAuctionHeaders"].forEach((e=>{n[e]&&(u[e]=!0)})),n.keepalive&&(u.keepalive=!0),o.makeRequest(e,u)}(e,n,arguments.length>3&&void 0!==arguments[3]?arguments[3]:{})),t)}}l(),c()},6881:(e,t,n)=>{n.d(t,{n:()=>ie});var i=n(1069),r=n(6833),o=n(2449),s=n(8044),a=n(3272);const d=15;function c(e){let{index:t=ie.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)+d};return a.$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]:s.g4;const i={puts:e.map(c)};n(a.$W.getConfig("cache.timeout"))(a.$W.getConfig("cache.url"),function(e){return{success:function(t){let n;try{n=JSON.parse(t).responses}catch(t){return void e(t,[])}n?e(null,n):e(new Error("The cache server didn\'t respond with a responses property."),[])},error:function(t,n){e(new Error(`Error storing video ad in the cache: ${t}: ${JSON.stringify(n)}`),[])}}}(t),JSON.stringify(i),{contentType:"text/plain",withCredentials:!0})}};function l(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 d;""===t.uuid?(0,i.JE)("Supplied video cache key was already in use by Prebid Cache; caching attempt was rejected. Video bid must be discarded."):(o.videoCacheKey=t.uuid,o.vastUrl||(o.vastUrl=(d=o.videoCacheKey,`${a.$W.getConfig("cache.url")}?uuid=${d}`)),F(r,o),s())}))}))}let f,g;a.$W.getConfig("cache",(e=>{f="number"==typeof e.cache.batchSize&&e.cache.batchSize>0?e.cache.batchSize:1,g="number"==typeof e.cache.batchTimeout&&e.cache.batchTimeout>0?e.cache.batchTimeout:0}));const p=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:setTimeout,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:l,n=[[]],i=!1;const r=e=>e();return function(o,s,a){const d=g>0?e:r;n[n.length-1].length>=f&&n.push([]),n[n.length-1].push({auctionInstance:o,bidResponse:s,afterBidAdded:a}),i||(i=!0,d((()=>{n.forEach(t),n=[[]],i=!1}),g))}}();var h=n(5789),m=n(8230),b=n(9214),y=n(5901),v=n(3895),E=n(1371),A=n(2693),I=n(5023),T=n(8046),w=n(8969),C=n(5555),B=n(6894);var O=n(7873),k=n(6853),R=n(7863);const{syncUsers:S}=m.zt,D="started",U="inProgress",_="completed";I.on(w.qY.BID_ADJUSTMENT,(function(e){!function(e){let t=function(e,t,n){let{index:r=ie.index,bs:o=A.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 j=4,$={},q={},x=[],N=(0,O.m)();function W(e){let{adUnits:t,adUnitCodes:n,callback:s,cbTimeout:d,labels:c,auctionId:u,ortb2Fragments:l,metrics:f}=e;f=(0,B.BO)(f);const g=t,p=c,m=n,b=u||(0,i.lk)(),A=d,O=new Set,W=(0,C.v)(),z=(0,C.v)();let J,K,Q,Y,X=[],Z=s,ee=[],ne=(0,k.H)({startTime:e=>e.responseTimestamp,ttl:e=>null==(0,R.S9)()?null:1e3*Math.max((0,R.S9)(),e.ttl)}),re=[],oe=[],se=[];function ae(){return{auctionId:b,timestamp:J,auctionEnd:K,auctionStatus:Y,adUnits:g,adUnitCodes:m,labels:p,bidderRequests:ee,noBids:re,bidsReceived:ne.toArray(),bidsRejected:X,winningBids:oe,timeout:A,metrics:f,seatNonBids:se}}function de(e){if(e?I.Ic(w.qY.AUCTION_TIMEOUT,ae()):clearTimeout(Q),void 0===K){let n=[];e&&((0,i.OG)(`Auction ${b} timedOut`),n=ee.filter((e=>!O.has(e.bidderRequestId))).flatMap((e=>e.bids)),n.length&&I.Ic(w.qY.BID_TIMEOUT,n)),Y=_,K=Date.now(),f.checkpoint("auctionEnd"),f.timeBetween("requestBids","auctionEnd","requestBids.total"),f.timeBetween("callBids","auctionEnd","requestBids.callBids"),W.resolve(),I.Ic(w.qY.AUCTION_END,ae()),G(g,(function(){try{if(null!=Z){const t=ne.toArray().filter((e=>m.includes(e.adUnitCode))).reduce(te,{});Z.apply(N,[t,e,b]),Z=null}}catch(e){(0,i.vV)("Error executing bidsBackHandler",null,e)}finally{n.length&&T.Ay.callTimedOutBidders(t,n,A);let e=a.$W.getConfig("userSync")||{};e.enableOverride||S(e.syncDelay)}}))}}function ce(){a.$W.resetBidder(),(0,i.fH)(`Bids Received for Auction with id: ${b}`,ne.toArray()),Y=_,de(!1)}function ue(e){O.add(e)}function le(e){e.forEach((e=>{var t;t=e,ee=ee.concat(t)}));let t={},n={bidRequests:e,run:()=>{Q=setTimeout((()=>de(!0)),A),Y=U,I.Ic(w.qY.AUCTION_INIT,ae());let n=function(e,t){let{index:n=ie.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=0,d=!1,c=new Set,u={};function l(){s--,d&&0===s&&e()}function f(e,t,n){return u[t.requestId]=!0,function(e,t){let{index:n=ie.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=n.getBidderRequest(e),o=n.getAdUnit(e),s=r&&r.start||e.requestTimestamp;Object.assign(e,{responseTimestamp:e.responseTimestamp||(0,i.vE)(),requestTimestamp:e.requestTimestamp||s,cpm:parseFloat(e.cpm)||0,bidder:e.bidder||e.bidderCode,adUnitCode:t}),null!=o?.ttlBuffer&&(e.ttlBuffer=o.ttlBuffer);e.timeToRespond=e.responseTimestamp-e.requestTimestamp}(t,e),s++,n(l)}function g(e,s){f(e,s,(e=>{let d=function(e){let{index:t=ie.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};I.Ic(w.qY.BID_ADJUSTMENT,e);const n=t.getBidRequest(e)?.renderer||t.getAdUnit(e).renderer,i=e.mediaType,o=t.getMediaTypes(e),s=o&&o[i];var d=s&&s.renderer,c=null;!d||!d.render||!0===d.backupOnly&&e.renderer?!n||!n.render||!0===n.backupOnly&&e.renderer||(c=n):c=d;c&&(e.renderer=h.A4.install({url:c.url,config:c.options,renderNow:null==c.url}),e.renderer.setRender(c.render));const u=L(e.mediaType,o,a.$W.getConfig("mediaTypePriceGranularity")),l=(0,r.j)(e.cpm,"object"==typeof u?u:a.$W.getConfig("customPriceBucket"),a.$W.getConfig("currency.granularityMultiplier"));return e.pbLg=l.low,e.pbMg=l.med,e.pbHg=l.high,e.pbAg=l.auto,e.pbDg=l.dense,e.pbCg=l.custom,e}(s);I.Ic(w.qY.BID_ACCEPTED,d),d.mediaType===E.G_?function(e,t,n){let{index:r=ie.index}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=!0;const s=r.getMediaTypes({requestId:t.originalRequestId||t.requestId,adUnitId:t.adUnitId})?.video,d=s&&s?.context,c=s&&s?.useCacheKey;a.$W.getConfig("cache.url")&&(c||d!==v.H6)&&(!t.videoCacheKey||a.$W.getConfig("cache.ignoreBidderCacheKey")?(o=!1,H(e,t,n,s)):t.vastUrl||((0,i.vV)("videoCacheKey specified but not required vastUrl for video bid"),o=!1));o&&(F(e,t),n())}(t,d,e):((0,o.l6)(d)&&(0,o.gs)(d,n.getAdUnit(d)),F(t,d),e())}))}function p(e,n,r){return f(e,n,(e=>{n.rejectionReason=r,(0,i.JE)(`Bid from ${n.bidder||"unknown bidder"} was rejected: ${r}`,n),I.Ic(w.qY.BID_REJECTED,n),t.addBidRejected(n),e()}))}function m(){let n=this,r=t.getBidRequests();const o=a.$W.getConfig("auctionOptions");if(c.add(n),o&&!(0,i.Im)(o)){const e=o.secondaryBidders;e&&!r.every((t=>(0,y.mK)(e,t.bidderCode)))&&(r=r.filter((t=>!(0,y.mK)(e,t.bidderCode))))}d=r.every((e=>c.has(e))),n.bids.forEach((e=>{u[e.bidId]||(t.addNoBid(e),I.Ic(w.qY.NO_BID,e))})),d&&0===s&&e()}return{addBidResponse:function(){function e(e,t){P.call({dispatch:g},e,t,(()=>{let n=!1;return i=>{n||(p(e,t,i),n=!0)}})())}return e.reject=p,e}(),adapterDone:function(){V(C.k.resolve()).finally((()=>m.call(this)))}}}(ce,this);T.Ay.callBids(g,e,n.addBidResponse,n.adapterDone,{request(e,n){d($,n),d(t,e),q[e]||(q[e]={SRA:!0,origin:n}),t[e]>1&&(q[e].SRA=!1)},done(e){$[e]--,x[0]&&s(x[0])&&x.shift()}},A,ue,l),z.resolve()}};function s(e){let t=!0,n=a.$W.getConfig("maxRequestsPerOrigin")||j;return e.bidRequests.some((e=>{let i=1,r=void 0!==e.src&&e.src===w.RW.SRC?"s2s":e.bidderCode;return q[r]&&(!1===q[r].SRA&&(i=Math.min(e.bids.length,n)),$[q[r].origin]+i>n&&(t=!1)),!t})),t&&e.run(),t}function d(e,t){void 0===e[t]?e[t]=1:e[t]++}s(n)||((0,i.JE)("queueing auction due to limited endpoint capacity"),x.push(n))}return(0,R.lc)((()=>ne.refresh())),I.on(w.qY.SEAT_NON_BID,(e=>{var t;e.auctionId===b&&(t=e.seatnonbid,se=se.concat(t))})),{addBidReceived:function(e){ne.add(e)},addBidRejected:function(e){X=X.concat(e)},addNoBid:function(e){re=re.concat(e)},callBids:function(){Y=D,J=Date.now();let e=f.measureTime("requestBids.makeRequests",(()=>T.Ay.makeBidRequests(g,J,b,A,p,l,f)));(0,i.fH)(`Bids Requested for Auction with id: ${b}`,e),f.checkpoint("callBids"),e.length<1?((0,i.JE)("No valid bid requests returned for auction"),ce()):M.call({dispatch:le,context:this},e)},addWinningBid:function(e){oe=oe.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:()=>oe,getAuctionStart:()=>J,getAuctionEnd:()=>K,getTimeout:()=>A,getAuctionId:()=>b,getAuctionStatus:()=>Y,getAdUnits:()=>g,getAdUnitCodes:()=>m,getBidRequests:()=>ee,getBidsReceived:()=>ne.toArray(),getNoBids:()=>re,getNonBids:()=>se,getFPD:()=>l,getMetrics:()=>f,end:W.promise,requestsDone:z.promise}}const P=(0,b.A_)("sync",(function(e,t,n){!function(e){const t=a.$W.getConfig("maxBid");return!t||!e.cpm||t>=Number(e.cpm)}(t)?n(w.Tf.PRICE_TOO_HIGH):this.dispatch.call(null,e,t)}),"addBidResponse"),V=(0,b.A_)("sync",(e=>e),"responsesReady"),M=(0,b.A_)("sync",(function(e){this.dispatch.call(this.context,e)}),"addBidderRequests"),G=(0,b.A_)("async",(function(e,t){t&&t()}),"bidsBackCallback");function F(e,t){!function(e){let t;const n=!0===A.u.get(e.bidderCode,"allowZeroCpmBids")?e.cpm>=0:e.cpm>0;e.bidderCode&&(n||e.dealId)&&(t=function(e,t){let{index:n=ie.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!t)return{};const i=n.getBidRequest(t);var r={};const s=Z(t.mediaType,e);ee(r,s,t,i),e&&A.u.getOwn(e,w.iD.ADSERVER_TARGETING)&&(ee(r,A.u.ownSettingsFor(e),t,i),t.sendStandardTargeting=A.u.get(e,"sendStandardTargeting"));t.native&&(r=Object.assign({},r,(0,o.Zj)(t)));return r}(e.bidderCode,e));e.adserverTargeting=Object.assign(e.adserverTargeting||{},t)}(t),(0,B.BO)(t.metrics).timeSince("addBidResponse","addBidResponse.total"),e.addBidReceived(t),I.Ic(w.qY.BID_RESPONSE,t)}const H=(0,b.A_)("async",(function(e,t,n,i){p(e,t,n)}),"callPrebidCache");function L(e,t,n){if(e&&n){if(e===E.G_){const e=t?.[E.G_]?.context??"instream";if(n[`${E.G_}-${e}`])return n[`${E.G_}-${e}`]}return n[e]}}const z=e=>t=>{const n=e||function(e){let{index:t=ie.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=L(e.mediaType,t.getMediaTypes(e),a.$W.getConfig("mediaTypePriceGranularity"));return"string"==typeof e.mediaType&&n?"string"==typeof n?n:"custom":a.$W.getConfig("priceGranularity")}(t);return n===w.UE.AUTO?t.pbAg:n===w.UE.DENSE?t.pbDg:n===w.UE.LOW?t.pbLg:n===w.UE.MEDIUM?t.pbMg:n===w.UE.HIGH?t.pbHg:n===w.UE.CUSTOM?t.pbCg:void 0},J=()=>e=>e.creativeId?e.creativeId:"",K=()=>e=>e.meta&&e.meta.advertiserDomains&&e.meta.advertiserDomains.length>0?[e.meta.advertiserDomains].flat()[0]:"",Q=()=>e=>e.meta&&(e.meta.networkId||e.meta.networkName)?e?.meta?.networkName||e?.meta?.networkId:"",Y=()=>e=>e.meta&&e.meta.primaryCatId?e.meta.primaryCatId:"";function X(e,t){return{key:e,val:"function"==typeof t?function(e,n){return t(e,n)}:function(e){return e[t]}}}function Z(e,t){const n=Object.assign({},A.u.settingsFor(null));if(n[w.iD.ADSERVER_TARGETING]||(n[w.iD.ADSERVER_TARGETING]=[X(w.xS.BIDDER,"bidderCode"),X(w.xS.AD_ID,"adId"),X(w.xS.PRICE_BUCKET,z()),X(w.xS.SIZE,"size"),X(w.xS.DEAL,"dealId"),X(w.xS.SOURCE,"source"),X(w.xS.FORMAT,"mediaType"),X(w.xS.ADOMAIN,K()),X(w.xS.ACAT,Y()),X(w.xS.DSP,Q()),X(w.xS.CRID,J())]),"video"===e){const e=n[w.iD.ADSERVER_TARGETING].slice();if(n[w.iD.ADSERVER_TARGETING]=e,[w.xS.UUID,w.xS.CACHE_ID].forEach((t=>{void 0===(0,y.I6)(e,(e=>e.key===t))&&e.push(X(t,"videoCacheKey"))})),a.$W.getConfig("cache.url")&&(!t||!1!==A.u.get(t,"sendStandardTargeting"))){const t=(0,i.Dl)(a.$W.getConfig("cache.url"));void 0===(0,y.I6)(e,(e=>e.key===w.xS.CACHE_HOST))&&e.push(X(w.xS.CACHE_HOST,(function(e){return e?.adserverTargeting?.[w.xS.CACHE_HOST]||t.hostname})))}}return n}function ee(e,t,n,r){var o=t[w.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!==w.xS.DEAL&&s!==w.xS.ACAT&&s!==w.xS.DSP&&s!==w.xS.CRID||!(0,i.xQ)(a)&&null!=a?e[s]=a:(0,i.fH)("suppressing empty key \'"+s+"\' from adserver targeting")})),e}function te(e,t){return e[t.adUnitCode]||(e[t.adUnitCode]={bids:[]}),e[t.adUnitCode].bids.push(t),e}function ne(e){Object.assign(this,{getAuction(t){let{auctionId:n}=t;if(null!=n)return e().find((e=>e.getAuctionId()===n))},getAdUnit(t){let{adUnitId:n}=t;if(null!=n)return e().flatMap((e=>e.getAdUnits())).find((e=>e.adUnitId===n))},getMediaTypes(e){let{adUnitId:t,requestId:n}=e;if(null!=n){const e=this.getBidRequest({requestId:n});if(null!=e&&(null==t||e.adUnitId===t))return e.mediaTypes}else if(null!=t){const e=this.getAdUnit({adUnitId:t});if(null!=e)return e.mediaTypes}},getBidderRequest(t){let{requestId:n,bidderRequestId:i}=t;if(null!=n||null!=i){let t=e().flatMap((e=>e.getBidRequests()));return null!=i&&(t=t.filter((e=>e.bidderRequestId===i))),null==n?t[0]:t.find((e=>e.bids&&null!=e.bids.find((e=>e.bidId===n))))}},getBidRequest(t){let{requestId:n}=t;if(null!=n)return e().flatMap((e=>e.getBidRequests())).flatMap((e=>e.bids)).find((e=>e&&e.bidId===n))},getOrtb2(e){return this.getBidderRequest(e)?.ortb2||this.getAuction(e)?.getFPD()?.global?.ortb2}})}const ie=function(){const e=(0,k.H)({startTime:e=>e.end.then((()=>e.getAuctionEnd())),ttl:e=>null==(0,R.S9)()?null:e.end.then((()=>1e3*Math.max((0,R.S9)(),...e.getBidsReceived().map((e=>e.ttl)))))});(0,R.lc)((()=>e.refresh()));const t={onExpiry:e.onExpiry};function n(t){for(const n of e)if(n.getAuctionId()===t)return n}function r(){return e.toArray().flatMap((e=>e.getBidsReceived()))}return t.addWinningBid=function(e){const t=(0,B.BO)(e.metrics);t.checkpoint("bidWon"),t.timeBetween("auctionEnd","bidWon","adserver.pending"),t.timeBetween("requestBids","bidWon","adserver.e2e");const r=n(e.auctionId);r?r.addWinningBid(e):(0,i.JE)("Auction not found when adding winning bid")},Object.entries({getAllWinningBids:{name:"getWinningBids"},getBidsRequested:{name:"getBidRequests"},getNoBids:{},getAdUnits:{},getBidsReceived:{pre:e=>e.getAuctionStatus()===_},getAdUnitCodes:{post:i.hj}}).forEach((n=>{let[i,{name:r=i,pre:o,post:s}]=n;const a=null==o?e=>e[r]():e=>o(e)?e[r]():[],d=null==s?e=>e:e=>e.filter(s);t[i]=()=>d(e.toArray().flatMap(a))})),t.getAllBidsForAdUnitCode=function(e){return r().filter((t=>t&&t.adUnitCode===e))},t.createAuction=function(t){const n=W(t);return function(t){e.add(t)}(n),n},t.findBidByAdId=function(e){return r().find((t=>t.adId===e))},t.getStandardBidderAdServerTargeting=function(){return Z()[w.iD.ADSERVER_TARGETING]},t.setStatusForBids=function(e,i){let r=t.findBidByAdId(e);if(r&&(r.status=i),r&&i===w.tl.BID_TARGETING_SET){const e=n(r.auctionId);e&&e.setBidTargeting(r)}},t.getLastAuctionId=function(){const t=e.toArray();return t.length&&t[t.length-1].getAuctionId()},t.clearAllAuctions=function(){e.clear()},t.index=new ne((()=>e.toArray())),t}()},7863:(e,t,n)=>{n.d(t,{S9:()=>u,cT:()=>c,lc:()=>l});var i=n(3272),r=n(1069);const o="minBidCacheTTL";let s=1,a=null;const d=[];function c(e){return e.ttl-(e.hasOwnProperty("ttlBuffer")?e.ttlBuffer:s)}function u(){return a}function l(e){d.push(e)}i.$W.getConfig("ttlBuffer",(e=>{"number"==typeof e.ttlBuffer?s=e.ttlBuffer:(0,r.vV)("Invalid value for ttlBuffer",e.ttlBuffer)})),i.$W.getConfig(o,(e=>{const t=a;a=e?.[o],a="number"==typeof a?a:null,t!==a&&d.forEach((e=>e(a)))}))},2693:(e,t,n)=>{n.d(t,{u:()=>a});var i=n(433),r=n(1069),o=n(7873),s=n(8969);const a=new class{constructor(e,t){this.getSettings=e,this.defaultScope=t}get(e,t){let n=this.getOwn(e,t);return void 0===n&&(n=this.getOwn(null,t)),n}getOwn(e,t){return e=this.#e(e),(0,i.A)(this.getSettings(),`${e}.${t}`)}getScopes(){return Object.keys(this.getSettings()).filter((e=>e!==this.defaultScope))}settingsFor(e){return(0,r.D9)({},this.ownSettingsFor(null),this.ownSettingsFor(e))}ownSettingsFor(e){return e=this.#e(e),this.getSettings()[e]||{}}#e(e){return null==e?this.defaultScope:e}}((()=>(0,o.m)().bidderSettings||{}),s.iD.BD_SETTING_STANDARD)},3597:(e,t,n)=>{n.d(t,{O:()=>o});var i=n(1069);function r(e){let{src:t="client",bidder:n="",bidId:r,transactionId:o,adUnitId:s,auctionId:a}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};var d=t,c=e||0;Object.assign(this,{bidderCode:n,width:0,height:0,statusMessage:function(){switch(c){case 0:return"Pending";case 1:return"Bid available";case 2:return"Bid returned empty or error response";case 3:return"Bid timed out"}}(),adId:(0,i.s0)(),requestId:r,transactionId:o,adUnitId:s,auctionId:a,mediaType:"banner",source:d}),this.getStatusCode=function(){return c},this.getSize=function(){return this.width+"x"+this.height},this.getIdentifiers=function(){return{src:this.source,bidder:this.bidderCode,bidId:this.requestId,transactionId:this.transactionId,adUnitId:this.adUnitId,auctionId:this.auctionId}}}function o(e,t){return new r(e,t)}},3272:(e,t,n)=>{n.d(t,{$W:()=>h,Ov:()=>u});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={},u="random",l={};l[u]=!0,l.fixed=!0;const f=u,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){l[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&&"suppressExpiredRender"!==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||"suppressExpiredRender"===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 u(){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 l(){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]=[l,function(){const e=l();return Object.defineProperty(e,"ortb2",{get:function(){throw new Error("invalid access to \'orbt2\' config - use request parameters instead")}}),e}].map((e=>function(){if(arguments.length<=1&&"function"!=typeof(arguments.length<=0?void 0:arguments[0])){const t=arguments.length<=0?void 0:arguments[0];return t?(0,s.A)(e(),t):l()}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 u(),{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)(l(),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:u,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:()=>l,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}}},u=(()=>{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"}}})(),l=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:u};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:()=>l,_B:()=>v,as:()=>a,cA:()=>d,h0:()=>m,iD:()=>i,jO:()=>b,nl:()=>E,oA:()=>y,qY:()=>s,tl:()=>p,x5:()=>f,xS:()=>u});const i={PL_CODE:"code",PL_SIZE:"sizes",PL_BIDS:"bids",BD_BIDDER:"bidder",BD_ID:"paramsd",BD_PL_ID:"placementId",ADSERVER_TARGETING:"adserverTargeting",BD_SETTING_STANDARD:"standard"},r="pbjs_debug",o={GOOD:1},s={AUCTION_INIT:"auctionInit",AUCTION_TIMEOUT:"auctionTimeout",AUCTION_END:"auctionEnd",BID_ADJUSTMENT:"bidAdjustment",BID_TIMEOUT:"bidTimeout",BID_REQUESTED:"bidRequested",BID_RESPONSE:"bidResponse",BID_REJECTED:"bidRejected",NO_BID:"noBid",SEAT_NON_BID:"seatNonBid",BID_WON:"bidWon",BIDDER_DONE:"bidderDone",BIDDER_ERROR:"bidderError",SET_TARGETING:"setTargeting",BEFORE_REQUEST_BIDS:"beforeRequestBids",BEFORE_BIDDER_HTTP:"beforeBidderHttp",REQUEST_BIDS:"requestBids",ADD_AD_UNITS:"addAdUnits",AD_RENDER_FAILED:"adRenderFailed",AD_RENDER_SUCCEEDED:"adRenderSucceeded",TCF2_ENFORCEMENT:"tcf2Enforcement",AUCTION_DEBUG:"auctionDebug",BID_VIEWABLE:"bidViewable",STALE_RENDER:"staleRender",EXPIRED_RENDER:"expiredRender",BILLABLE_EVENT:"billableEvent",BID_ACCEPTED:"bidAccepted",RUN_PAAPI_AUCTION:"paapiRunAuction",PBS_ANALYTICS:"pbsAnalytics",PAAPI_BID:"paapiBid",PAAPI_NO_BID:"paapiNoBid",PAAPI_ERROR:"paapiError"},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"},u={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"},l={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}]},u={buckets:[{max:3,increment:.01},{max:8,increment:.05},{max:20,increment:.5}]},l={buckets:[{max:5,increment:.05},{max:10,increment:.1},{max:20,increment:.5}]};function 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,l,n),dense:""===i?"":g(e,u,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,u=(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 u&&(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,u=o.$W.getConfig("cpmRoundingFunction");"function"==typeof u&&(c=u);let l,f,g=Math.pow(10,i+2),p=(e*g-d*g)/(a*g);try{l=c(p)*a+d}catch(e){f=!0}(f||"number"!=typeof l)&&((0,r.JE)("Invalid rounding function passed in config"),l=Math.floor(p)*a+d);return l=Number(l.toFixed(10)),l.toFixed(i)}(e,u,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 u=Array.prototype.slice,l=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)&&l.apply(d,s[o].que),l.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,u.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)))},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:()=>T});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),u=n(5555);const l=["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]:l;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]=u.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"),T=(0,i.A_)("sync",(e=>{const t=[e,C().catch((()=>null)),u.k.resolve("cookieDeprecationLabel"in navigator&&(0,b.io)(v.Ue,(0,y.s)(E.tp,"cdep"))&&navigator.cookieDeprecationLabel.getValue()).catch((()=>null))];return u.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 w(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):u.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:()=>w((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={};w((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=w((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:()=>l,Xj:()=>_,Zj:()=>w,gs:()=>T,l6:()=>b,mT:()=>u,nk:()=>v,vO:()=>I,yl:()=>R});var i=n(1069),r=n(5901),o=n(6881),s=n(8969),a=n(1371),d=n(9075),c=n(6031);const u=[],l=Object.keys(s.x5).map((e=>s.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=q(s.h0),p=q(s.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,r.mK)(Object.keys(f),e))return(0,i.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||e?.mediaTypes?.native;t&&(e.nativeParams=y(t)),e.nativeParams&&(e.nativeOrtbRequest=e.nativeParams.ortb||function(e){if(!e&&!(0,i.Qd)(e))return void(0,i.vV)("Native assets object is empty or not an object: ",e);const t={ver:"1.2",assets:[]};for(let n in e){if(s._B.includes(n))continue;if(!s.x5.hasOwnProperty(n)){(0,i.vV)(`Unrecognized native asset code: ${n}. Asset will be ignored.`);continue}if("privacyLink"===n){t.privacy=1;continue}const r=e[n];let o=0;r.required&&(0,i.Lm)(r.required)&&(o=Number(r.required));const a={id:t.assets.length,required:o};if(n in s.h0)a.data={type:s.jO[s.h0[n]]},r.len&&(a.data.len=r.len);else if("icon"===n||"image"===n){if(a.img={type:"icon"===n?s.oA.ICON:s.oA.MAIN},r.aspect_ratios)if((0,i.cy)(r.aspect_ratios))if(r.aspect_ratios.length){const{min_width:e,min_height:t}=r.aspect_ratios[0];(0,i.Fq)(e)&&(0,i.Fq)(t)?(a.img.wmin=e,a.img.hmin=t):(0,i.vV)("image.aspect_ratios min_width or min_height are invalid: ",e,t);const n=r.aspect_ratios.filter((e=>e.ratio_width&&e.ratio_height)).map((e=>`${e.ratio_width}:${e.ratio_height}`));n.length>0&&(a.img.ext={aspectratios:n})}else(0,i.vV)("image.aspect_ratios was passed, but it\'s empty:",r.aspect_ratios);else(0,i.vV)("image.aspect_ratios was passed, but it\'s not a an array:",r.aspect_ratios);r.sizes&&(2===r.sizes.length&&(0,i.Fq)(r.sizes[0])&&(0,i.Fq)(r.sizes[1])?(a.img.w=r.sizes[0],a.img.h=r.sizes[1],delete a.img.hmin,delete a.img.wmin):(0,i.vV)("image.sizes was passed, but its value is not an array of integers:",r.sizes))}else"title"===n?a.title={len:r.len||140}:"ext"===n&&(a.ext=r,delete a.required);t.assets.push(a)}return t}(e.nativeParams))}))}function E(e){const t=e.assets;if(!Array.isArray(t)||0===t.length)return(0,i.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,i.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,i.vV)("ortb.eventtrackers is not an array. Eventtrackers: ",e.eventtrackers),!1):t.every((e=>function(e){if(!(0,i.Qd)(e))return(0,i.vV)("asset must be an object. Provided asset: ",e),!1;if(e.img){if(!(0,i.Et)(e.img.w)&&!(0,i.Et)(e.img.wmin))return(0,i.vV)("for img asset there must be \'w\' or \'wmin\' property"),!1;if(!(0,i.Et)(e.img.h)&&!(0,i.Et)(e.img.hmin))return(0,i.vV)("for img asset there must be \'h\' or \'hmin\' property"),!1}else if(e.title){if(!(0,i.Et)(e.title.len))return(0,i.vV)("for title asset there must be \'len\' property defined"),!1}else if(e.data){if(!(0,i.Et)(e.data.type))return(0,i.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,i.Et)(e.video.minduration)&&(0,i.Et)(e.video.maxduration)))return(0,i.vV)("video asset is not properly configured"),!1;return!0}(e)))}function A(e){let{index:t=o.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=t.getAdUnit(e);if(!n)return!1;let s=n.nativeOrtbRequest;return function(e,t){if(!e?.link?.url)return(0,i.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)),o=e.assets.map((e=>e.id));const s=n.every((e=>(0,r.mK)(o,e)));s||(0,i.vV)(`didn\'t receive a bid with all required assets. Required ids: ${n}, but received ids in response: ${o}`);return s}(e.native?.ortb||$(e.native,s),s)}function I(e,t){const n=t.native.ortb||j(t.native);return"click"===e.action?function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,{fetchURL:n=i.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,i.ro)(e)),fetchURL:n=i.z$}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const r=(e.eventtrackers||[]).filter((e=>e.event===m.impression));let{img:o,js:s}=r.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 T(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===s.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 w(e){let{index:t=o.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n={};const i=t.getAdUnit(e),r=null==i?.nativeParams?.ortb&&!1!==i?.nativeParams?.sendTargetingKeys,a=function(e){const t={};e?.nativeParams?.ext&&Object.keys(e.nativeParams.ext).forEach((e=>{t[e]=`hb_native_${e}`}));return{...s.x5,...t}}(i),d={...e.native,...e.native.ext};return delete d.ext,Object.keys(d).forEach((t=>{const o=a[t];let s=S(e.native[t])||S(e?.native?.ext?.[t]);if("adTemplate"===t||!o||!s)return;let d=i?.nativeParams?.[t]?.sendId;if("boolean"!=typeof d&&(d=i?.nativeParams?.ext?.[t]?.sendId),d){s=`${o}:${e.adId}`}let c=i?.nativeParams?.[t]?.sendTargetingKeys;"boolean"!=typeof c&&(c=i?.nativeParams?.ext?.[t]?.sendTargetingKeys);("boolean"==typeof c?c:r)&&(n[o]=s)})),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||s.x5.hasOwnProperty(r))&&i.push({key:r,value:S(o)})})),i}function B(e,t,n){let{index:r=o.n.index}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const a={message:"assetResponse",adId:e.adId};let u=(0,d.vd)(t).native;return u?(a.native=Object.assign({},u),a.renderer=(0,c.k)(t),null!=n&&(u.assets=u.assets.filter((e=>{let{key:t}=e;return n.includes(t)})))):u=function(e,t,n){const r={...(0,i.SH)(e.native,["rendererUrl","adTemplate"]),assets:C(e.native,n),nativeKeys:s.x5};return e.native.ortb?r.ortb=e.native.ortb:t.mediaTypes?.native?.ortb&&(r.ortb=$(e.native,t.nativeOrtbRequest)),r}(t,r.getAdUnit(t),n),Object.assign(a,u)}const O=Object.fromEntries(Object.entries(s.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,t){for(;e&&t&&e!==t;)e>t?e-=t:t-=e;return e||t}function U(e){if(!E(e))return;const t={};for(const n of e.assets){if(n.title){const e={required:!!n.required&&Boolean(n.required),len:n.title.len};t.title=e}else if(n.img){const e={required:!!n.required&&Boolean(n.required)};if(n.img.w&&n.img.h)e.sizes=[n.img.w,n.img.h];else if(n.img.wmin&&n.img.hmin){const t=D(n.img.wmin,n.img.hmin);e.aspect_ratios=[{min_width:n.img.wmin,min_height:n.img.hmin,ratio_width:n.img.wmin/t,ratio_height:n.img.hmin/t}]}n.img.type===s.oA.MAIN?t.image=e:t.icon=e}else if(n.data){let e=Object.keys(s.jO).find((e=>s.jO[e]===n.data.type)),i=Object.keys(s.h0).find((t=>s.h0[t]===e));t[i]={required:!!n.required&&Boolean(n.required)},n.data.len&&(t[i].len=n.data.len)}e.privacy&&(t.privacyLink={required:!1})}return t}function _(e){{if(!e||!(0,i.cy)(e))return e;if(!e.some((e=>(e?.mediaTypes||{})[a.s6]?.ortb)))return e;let t=(0,i.Go)(e);for(const e of t)e.mediaTypes&&e.mediaTypes[a.s6]&&e.mediaTypes[a.s6].ortb&&(e.mediaTypes[a.s6]=Object.assign((0,i.Up)(e.mediaTypes[a.s6],s._B),U(e.mediaTypes[a.s6].ortb)),e.nativeParams=y(e.mediaTypes[a.s6]));return t}}function j(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 $(e,t){const n={...j(e),assets:[]};function r(e,r){let o=t.assets.find(e);null!=o&&(o=(0,i.Go)(o),r(o),n.assets.push(o))}return Object.keys(e).filter((t=>!!e[t])).forEach((t=>{const n=S(e[t]);switch(t){case"title":r((e=>null!=e.title),(e=>{e.title={text:n}}));break;case"image":case"icon":const e="image"===t?s.oA.MAIN:s.oA.ICON;r((t=>null!=t.img&&t.img.type===e),(e=>{e.img={url:n}}));break;default:t in s.h0&&r((e=>null!=e.data&&e.data.type===s.jO[s.h0[t]]),(e=>{e.data={value:n}}))}})),n}function q(e){var t={};for(var n in e)t[e[n]]=n;return 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})},8261:(e,t,n)=>{var i=n(7873),r=n(1069),o=n(433),s=n(3172),a=n(2449),d=n(8969),c=n(5901),u=n(9075),l=n(6031);const{REQUEST:f,RESPONSE:g,NATIVE:p,EVENT:h}=d.nl,m={[f]:function(e,t,n){(0,u.bw)({renderFn(t){e(Object.assign({message:g,renderer:(0,l.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,u.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,u.$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)()?u(e):(0,r.t1)()?l(t):t}function u(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 l(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,u.Hh)(n,(()=>e((0,a.IX)(t,n))));break;case"allAssetRequest":(0,u.Hh)(n,(()=>e((0,a.yl)(t,n))));break;default:(0,u.vW)(t,n,{resizeFn:y(t.adId,n)}),(0,u.Pk)(n)}}});var v=n(8230),E=n(3272),A=n(6881),I=n(7779),T=n(9214),w=n(3597),C=n(1580),B=n(5555),O=n(5569);const k="__pbjs_debugging__";function R(){return(0,i.m)().installedModules.includes("debugging")}function S(e){return new B.k((t=>{(0,C.R)(e,O.tp,"debugging",t)}))}function D(){let{alreadyInstalled:e=R,script:t=S}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=null;return function(){return null==n&&(n=new B.k(((n,o)=>{setTimeout((()=>{if(e())n();else{const e="https://cdn.jsdelivr.net/npm/prebid.js@9.23.0/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:k,hook:T.A_,config:E.$W,createBid:w.O,logger:(0,r.h0)("DEBUG:")})})).then(n,o)}}))}))),n}}const U=function(){let{load:e=D(),hook:t=(0,T.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||B.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()}}}();U.reset;E.$W.getConfig("debugging",(function(e){let{debugging:t}=e;t?.enabled?U.enable():U.disable()}));var _=n(2938),j=n(8046),$=n(5023),q=n(6894),x=n(1970),N=n(6916),W=n(2713),P=n(3895);const V=new Map([["format",e=>Array.isArray(e)&&e.length>0&&e.every((e=>"object"==typeof e))],["w",r.Fq],["h",r.Fq],["btype",r.Uu],["battr",r.Uu],["pos",r.Fq],["mimes",e=>Array.isArray(e)&&e.length>0&&e.every((e=>"string"==typeof e))],["topframe",e=>[1,0].includes(e)],["expdir",r.Uu],["api",r.Uu],["id",r.O8],["vcm",e=>[1,0].includes(e)]]);var M=n(1371);const G=(0,i.m)(),{triggerUserSyncs:F}=v.zt,{ADD_AD_UNITS:H,REQUEST_BIDS:L,SET_TARGETING:z}=d.qY,J={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 K(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 Q(e,t){const n=(0,o.A)(e,`ortb2Imp.${t}`),i=(0,o.A)(e,`mediaTypes.${t}`);if(!n&&!i)return;const a={[M.G_]:P.Zy,[M.D4]:V}[t];a&&[...a].forEach((n=>{let[i,a]=n;const d=(0,o.A)(e,`mediaTypes.${t}.${i}`),c=(0,o.A)(e,`ortb2Imp.${t}.${i}`);null==d&&null==c||(null==d?(0,s.J)(e,`mediaTypes.${t}.${i}`,c):null==c?(0,s.J)(e,`ortb2Imp.${t}.${i}`,d):((0,r.JE)(`adUnit ${e.code}: specifies conflicting ortb2Imp.${t}.${i} and mediaTypes.${t}.${i}, the latter will be ignored`,e),(0,s.J)(e,`mediaTypes.${t}.${i}`,c)))}))}function Y(e){const t=(0,r.Go)(e),n=t.mediaTypes.banner,i=K(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),Q(t,"banner"),t}function X(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=K(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,P.aP)(t),Q(t,"video"),t}function Z(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),i}function ee(e,t){let n=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 te(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=U,n=null;try{n=e.getItem(k)}catch(e){}null!==n&&t.enable()}}(),G.bidderSettings=G.bidderSettings||{},G.libLoaded=!0,G.version="v9.23.0",(0,r.fH)("Prebid.js v9.23.0 loaded"),G.installedModules=G.installedModules||[],G.adUnits=G.adUnits||[],G.triggerUserSyncs=F;const ne={validateAdUnit:te,validateBannerMediaType:Y,validateSizes:K};Object.assign(ne,{validateNativeMediaType:Z}),Object.assign(ne,{validateVideoMediaType:X});const ie=(0,T.A_)("sync",(function(e){const t=[];return e.forEach((e=>{if(null==(e=te(e)))return;const n=e.mediaTypes;let i,r,o;n.banner&&(i=Y(e),n.banner.hasOwnProperty("pos")&&(i=ee(i,"banner"))),n.video&&(r=X(i||e),n.video.hasOwnProperty("pos")&&(r=ee(r,"video"))),n.native&&(o=Z(r||(i||e)));const s=Object.assign({},i,r,o);t.push(s)})),t}),"checkAdUnitSetup");function re(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)),{})}G.getAdserverTargetingForAdUnitCodeStr=function(e){if((0,r.fH)("Invoking pbjs.getAdserverTargetingForAdUnitCodeStr",arguments),e){var t=G.getAdserverTargetingForAdUnitCode(e);return(0,r.$D)(t)}(0,r.OG)("Need to call getAdserverTargetingForAdUnitCodeStr with adunitCode")},G.getHighestUnusedBidResponseForAdUnitCode=function(e){if(e){const t=A.n.getAllBidsForAdUnitCode(e).filter(I.Yl);return t.length?t.reduce(W.Vk):{}}(0,r.OG)("Need to call getHighestUnusedBidResponseForAdUnitCode with adunitCode")},G.getAdserverTargetingForAdUnitCode=function(e){return G.getAdserverTargeting(e)[e]},G.getAdserverTargeting=function(e){return(0,r.fH)("Invoking pbjs.getAdserverTargeting",arguments),I.iS.getAllTargeting(e)},G.getConsentMetadata=function(){return(0,r.fH)("Invoking pbjs.getConsentMetadata"),N.SL.getConsentMeta()},G.getNoBids=function(){return(0,r.fH)("Invoking pbjs.getNoBids",arguments),re("getNoBids")},G.getNoBidsForAdUnitCode=function(e){return{bids:A.n.getNoBids().filter((t=>t.adUnitCode===e))}},G.getBidResponses=function(){return(0,r.fH)("Invoking pbjs.getBidResponses",arguments),re("getBidsReceived")},G.getBidResponsesForAdUnitCode=function(e){return{bids:A.n.getBidsReceived().filter((t=>t.adUnitCode===e))}},G.setTargetingForGPTAsync=function(e,t){(0,r.fH)("Invoking pbjs.setTargetingForGPTAsync",arguments),(0,r.II)()?I.iS.setTargetingForGPT(e,t):(0,r.vV)("window.googletag is not defined on the page")},G.setTargetingForAst=function(e){(0,r.fH)("Invoking pbjs.setTargetingForAn",arguments),I.iS.isApntagDefined()?(I.iS.setTargetingForAst(e),$.Ic(z,I.iS.getAllTargeting())):(0,r.vV)("window.apntag is not defined on the page")},G.renderAd=(0,T.A_)("async",(function(e,t,n){(0,r.fH)("Invoking pbjs.renderAd",arguments),(0,r.OG)("Calling renderAd with adId :"+t),(0,u.BS)(e,t,n)})),G.removeAdUnit=function(e){if((0,r.fH)("Invoking pbjs.removeAdUnit",arguments),!e)return void(G.adUnits=[]);let t;t=(0,r.cy)(e)?e:[e],t.forEach((e=>{for(let t=G.adUnits.length-1;t>=0;t--)G.adUnits[t].code===e&&G.adUnits.splice(t,1)}))},G.requestBids=function(){const e=(0,T.A_)("async",(function(){let{bidsBackHandler:e,timeout:t,adUnits:n,adUnitCodes:i,labels:o,auctionId:s,ttlBuffer:a,ortb2:d,metrics:u,defer:l}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$.Ic(L);const f=t||E.$W.getConfig("bidderTimeout");(0,r.fH)("Invoking pbjs.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,(0,r.Go)(n.ortb2)]})).filter((e=>{let[t,n]=e;return null!=n})))};return(0,x.w)(B.k.resolve(g.global)).then((t=>(g.global=t,oe({bidsBackHandler:e,timeout:f,adUnits:n,adUnitCodes:i,labels:o,auctionId:s,ttlBuffer:a,ortb2Fragments:g,metrics:u,defer:l}))))}),"requestBids");return(0,T.Y6)(e,(function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.adUnits||G.adUnits;return t.adUnits=(0,r.cy)(n)?n.slice():[n],t.metrics=(0,q.K7)(),t.metrics.checkpoint("requestBids"),t.defer=(0,B.v)({promiseFactory:e=>new Promise(e)}),e.call(this,t),t.defer.promise}))}();const oe=(0,T.A_)("async",(function(){let{bidsBackHandler:e,timeout:t,adUnits:n,ttlBuffer:i,adUnitCodes:o,labels:a,auctionId:d,ortb2Fragments:u,metrics:l,defer:f}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const g=(0,j.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,P.V0)(e)))}(n),n=(0,q.BO)(l).measureTime("requestBids.validate",(()=>ie(n)));const h={};if(n.forEach((e=>{const t=Object.keys(e.mediaTypes||{banner:"banner"}),n=e.bids.map((e=>e.bidder)),o=j.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,s.J)(e,"ortb2Imp.ext.tid",t)}));const e=A.n.createAuction({adUnits:n,adUnitCodes:o,callback:p,cbTimeout:t,labels:a,auctionId:d,ortb2Fragments:u,metrics:l});let i=n.length;i>15&&(0,r.fH)(`Current auction ${e.getAuctionId()} contains ${i} adUnits.`,n),o.forEach((t=>I.iS.setLatestAuctionForAdUnit(t,e.getAuctionId()))),e.callBids()}else(0,r.OG)("No adUnits configured. No bids requested."),p()}),"startAuction");G.requestBids.before((function(e,t){function n(e){for(var t;t=e.shift();)t()}n(_.s0),n(se),e.call(this,t)}),49),G.addAdUnits=function(e){(0,r.fH)("Invoking pbjs.addAdUnits",arguments),G.adUnits.push.apply(G.adUnits,(0,r.cy)(e)?e:[e]),$.Ic(H)},G.onEvent=function(e,t,n){(0,r.fH)("Invoking pbjs.onEvent",arguments),(0,r.fp)(t)?!n||J[e].call(null,n)?$.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+\'".\')},G.offEvent=function(e,t,n){(0,r.fH)("Invoking pbjs.offEvent",arguments),n&&!J[e].call(null,n)||$.AU(e,t,n)},G.getEvents=function(){return(0,r.fH)("Invoking pbjs.getEvents"),$.kQ()},G.registerBidAdapter=function(e,t){(0,r.fH)("Invoking pbjs.registerBidAdapter",arguments);try{j.Ay.registerBidAdapter(e(),t)}catch(e){(0,r.vV)("Error registering bidder adapter : "+e.message)}},G.registerAnalyticsAdapter=function(e){(0,r.fH)("Invoking pbjs.registerAnalyticsAdapter",arguments);try{j.Ay.registerAnalyticsAdapter(e)}catch(e){(0,r.vV)("Error registering analytics adapter : "+e.message)}},G.createBid=function(e){return(0,r.fH)("Invoking pbjs.createBid",arguments),(0,w.O)(e)};const se=[],ae=(0,T.A_)("async",(function(e){e&&!(0,r.Im)(e)?((0,r.fH)("Invoking pbjs.enableAnalytics for: ",e),j.Ay.enableAnalytics(e)):(0,r.vV)("pbjs.enableAnalytics should be called with option {}")}),"enableAnalyticsCb");function de(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 pbjs.cmd.push must be wrapped in a function")}function ce(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)}}))}G.enableAnalytics=function(e){se.push(ae.bind(this,e))},G.aliasBidder=function(e,t,n){(0,r.fH)("Invoking pbjs.aliasBidder",arguments),e&&t?j.Ay.aliasBidAdapter(e,t,n):(0,r.vV)("bidderCode and alias must be passed as arguments","pbjs.aliasBidder")},G.aliasRegistry=j.Ay.aliasRegistry,E.$W.getConfig("aliasRegistry",(e=>{"private"===e.aliasRegistry&&delete G.aliasRegistry})),G.getAllWinningBids=function(){return A.n.getAllWinningBids()},G.getAllPrebidWinningBids=function(){return A.n.getBidsReceived().filter((e=>e.status===d.tl.BID_TARGETING_SET))},G.getHighestCpmBids=function(e){return I.iS.getWinningBids(e)},G.clearAllAuctions=function(){A.n.clearAllAuctions()},G.markWinningBidAsUsed=function(e){let t,{adId:n,adUnitCode:i,analytics:o=!1}=e;i&&null==n?t=I.iS.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&&(o?(0,u.n6)(t[0]):A.n.addWinningBid(t[0]),(0,u.qn)(t[0]))},G.getConfig=E.$W.getAnyConfig,G.readConfig=E.$W.readAnyConfig,G.mergeConfig=E.$W.mergeConfig,G.mergeBidderConfig=E.$W.mergeBidderConfig,G.setConfig=E.$W.setConfig,G.setBidderConfig=E.$W.setBidderConfig,G.que.push((()=>b())),G.processQueue=function(){G.que.push=G.cmd.push=de,(0,u.XO)(),T.A_.ready(),ce(G.que),ce(G.cmd)},G.triggerBilling=e=>{let{adId:t,adUnitCode:n}=e;A.n.getAllWinningBids().filter((e=>e.adId===t||null==t&&e.adUnitCode===n)).forEach((e=>{j.Ay.triggerBilling(e),(0,u.vB)(e)}))}},7873:(e,t,n)=>{n.d(t,{E:()=>s,m:()=>o});const i=window,r=i.pbjs=i.pbjs||{};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("pbjs"))},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,u,l,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,u=f,b=!0,h=!0,d===c.top&&(g=!0),e.canonicalUrl&&(l=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&&(u=f)}else{if(o&&(f=o,u=f,h=!1,d===c.top)){g=!0;const e=a(d.document);e&&(l=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?u:null,v=i.$W.getConfig("pageUrl")||l||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:u||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:u||null,canonicalUrl:v}}}));var c},2938:(e,t,n)=>{n.d(t,{CK:()=>b,s0:()=>p,vM:()=>m});var i=n(1069),r=n(2693),o=n(5569),s=n(5139),a=n(2604),d=n(6811),c=n(3272),u=n(8046),l=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&&u.Ay.aliasRegistry[f]===e&&(s=f);return i({valid:n(d.Ue,(0,l.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(){let{moduleType:e,moduleName:t,bidderCode:n}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};function i(){throw new Error("Invalid invocation for getStorageManager: must set either bidderCode, or moduleType + moduleName")}return n?((e&&e!==o.tW||t)&&i(),e=o.tW,t=n):t&&e||i(),h({moduleType:e,moduleName:t})}function b(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}}))},7779:(e,t,n)=>{n.d(t,{Yl:()=>T,iS:()=>O,uW:()=>I});var i=n(6881),r=n(7863),o=n(2693),s=n(3272),a=n(8969),d=n(5023),c=n(9214),u=n(1371),l=n(2449),f=n(5901),g=n(1069),p=n(433),h=n(2713),m=[];const b=20,y="targetingControls.allowTargetingKeys",v="targetingControls.addTargetingKeys",E=`Only one of "${y}" or "${v}" can be set`,A=Object.keys(a.xS).map((e=>a.xS[e]));let I={isActualBid:e=>e.getStatusCode()===a.XQ.GOOD,isBidNotExpired:e=>e.responseTimestamp+1e3*(0,r.cT)(e)>(0,g.vE)(),isUnusedBid:e=>e&&(e.status&&!(0,f.mK)([a.tl.RENDERED],e.status)||!e.status)};function T(e){return!Object.values(I).some((t=>!t(e)))}const w=(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],r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:g.Q0;if(!i){const i=[],o=s.$W.getConfig("sendBidsControl.dealPrioritization");let a=(0,g.$z)(e,"adUnitCode");return Object.keys(a).forEach((e=>{let s=[],d=(0,g.$z)(a[e],"bidderCode");Object.keys(d).forEach((e=>{s.push(d[e].reduce(t))})),n?(s=o?s.sort(C(!0)):s.sort(((e,t)=>t.cpm-e.cpm)),i.push(...s.slice(0,n))):(s=s.sort(r),i.push(...s))})),i}return e}));function C(){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 B(e,t){return(arguments.length>2&&void 0!==arguments[2]?arguments[2]:()=>window.googletag.pubads().getSlots())().reduce(((e,n)=>{const i=(0,g.fp)(t)&&t(n);return Object.keys(e).filter((0,g.fp)(i)?i:(0,g.iC)(n)).forEach((t=>e[t].push(n))),e}),Object.fromEntries(e.map((e=>[e,[]]))))}const O=function(e){let t={},n={};function i(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const i=A.concat(l.Nh),r=s.$W.getConfig("targetingControls.allowSendAllBidsTargetingKeys"),o=r?r.map((e=>a.xS[e])):i;return e.reduce(((e,r)=>{if(t||n&&r.dealId){const t=function(e,t){return t.reduce(((t,n)=>(e.adserverTargeting[n]&&t.push({[`${n}_${e.bidderCode}`.substring(0,20)]:[e.adserverTargeting[n]]}),t)),[])}(r,i.filter((e=>void 0!==r.adserverTargeting[e]&&(n||-1!==o.indexOf(e)))));t&&e.push({[r.adUnitCode]:t})}return e}),[])}function r(t){return"string"==typeof t?[t]:(0,g.cy)(t)?t:e.getAdUnitCodes()||[]}function I(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:h.Bq,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,r=e.getBidsReceived().reduce(((e,t)=>{const i=s.$W.getConfig("useBidCache"),r=s.$W.getConfig("bidCacheFilterFunction"),o=n[t.adUnitCode]===t.auctionId,a=!(i&&!o&&"function"==typeof r)||!!r(t);return(i||o)&&a&&(0,p.A)(t,"video.context")!==u.LM&&T(t)&&(t.latestTargetedAuctionId=n[t.adUnitCode],e.push(t)),e}),[]);return w(r,t,void 0,void 0,void 0,i)}function O(){return e.getStandardBidderAdServerTargeting().map((e=>e.key)).concat(A).filter(g.hj)}return t.setLatestAuctionForAdUnit=function(e,t){n[e]=t},t.resetPresetTargeting=function(e,t){if((0,g.II)()){const n=r(e);Object.values(B(n,t)).forEach((e=>{e.forEach((e=>{!function(e){m.forEach((t=>{e.getTargeting(t)&&e.clearTargeting(t)}))}(e)}))}))}},t.resetPresetTargetingAST=function(e){r(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,f.mK)(m,e.toLowerCase())||(i[e]=t.keywords[e])})),window.apntag.modifyTag(e,{keywords:i})}}))},t.getAllTargeting=function(t,n,d){let c=arguments.length>3&&void 0!==arguments[3]?arguments[3]:h.Vk,u=arguments.length>4&&void 0!==arguments[4]?arguments[4]:g.Q0;d||=I(c,u);const A=r(t),T=s.$W.getConfig("enableSendAllBids"),B=s.$W.getConfig("sendBidsControl.bidLimit"),k=T&&(n||B)||0,{customKeysByUnit:R,filteredBids:S}=function(e,t){const n=[],i={},r=s.$W.getConfig("targetingControls.alwaysIncludeDeals");return t.forEach((t=>{const s=(0,f.mK)(e,t.adUnitCode),a=!0===o.u.get(t.bidderCode,"allowZeroCpmBids")?t.cpm>=0:t.cpm>0,d=r&&t.dealId;s&&(d||a)&&(n.push(t),Object.keys(t.adserverTargeting).filter(function(){let e=O();e=e.concat(l.Nh);return function(t){return-1===e.indexOf(t)}}()).forEach((e=>{const n=e.substring(0,b),r=i[t.adUnitCode]||{},o=[t.adserverTargeting[e]];r[n]?r[n]=r[n].concat(o).filter(g.hj):r[n]=o,i[t.adUnitCode]=r})))})),{filteredBids:n,customKeysByUnit:i}}(A,d);let D=function(t,n){const r=function(e){let t=[],n=e.reduce(((e,n)=>((0,f.mK)(t,n.adUnitCode)||(e.push(n),t.push(n.adUnitCode)),e)),[]),i=O();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,b)]:i};if(n===a.xS.DEAL){const o=`${n}_${e.bidderCode}`.substring(0,b),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=s.$W.getConfig("targetingControls.alwaysIncludeDeals");return i(e,s.$W.getConfig("enableSendAllBids"),t)}(t)).concat(function(){function t(e){return(0,p.A)(e,a.iD.ADSERVER_TARGETING)}function n(e){const n=t(e);return Object.keys(n).map((function(e){return(0,g.O8)(n[e])&&(n[e]=n[e].split(",").map((e=>e.trim()))),(0,g.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 r.forEach((e=>{!function(e){Object.keys(e).forEach((t=>{e[t].forEach((e=>{const t=Object.keys(e);-1===m.indexOf(t[0])&&(m=t.concat(m))}))}))}(e)})),r}(w(S,c,k,void 0,u),R);const U=Object.keys(Object.assign({},a.Zh,a.x5));let _=s.$W.getConfig(y);const j=s.$W.getConfig(v);if(null!=j&&null!=_)throw new Error(E);_=null!=j?U.concat(j):_||U,Array.isArray(_)&&_.length>0&&(D=function(e,t){const n=Object.assign({},a.xS,a.x5),i=Object.keys(n),r={};(0,g.fH)(`allowTargetingKeys - allowed keys [ ${t.map((e=>n[e])).join(", ")} ]`),e.map((e=>{const o=Object.keys(e)[0],s=e[o].filter((e=>{const o=Object.keys(e)[0],s=0===i.filter((e=>0===o.indexOf(n[e]))).length||(0,f.I6)(t,(e=>{const t=n[e];return 0===o.indexOf(t)}));return r[o]=!s,s}));e[o]=s}));const o=Object.keys(r).filter((e=>r[e]));return(0,g.fH)(`allowTargetingKeys - removed keys [ ${o.join(", ")} ]`),e.filter((e=>e[Object.keys(e)[0]].length>0))}(D,_)),D=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}(D);const $=s.$W.getConfig("targetingControls.auctionKeyMaxChars");return $&&((0,g.fH)(`Detected \'targetingControls.auctionKeyMaxChars\' was active for this auction; set with a limit of ${$} characters. Running checks on auction keys...`),D=function(e,t){let n=(0,g.Go)(e),i=Object.keys(n).map((e=>({adUnitCode:e,adserverTargeting:n[e]}))).sort(C());return i.reduce((function(e,i,r,o){let s=(a=i.adserverTargeting,Object.keys(a).reduce((function(e,t){return e+`${t}%3d${encodeURIComponent(a[t])}%26`}),""));var a;r+1===o.length&&(s=s.slice(0,-3));let d=i.adUnitCode,c=s.length;return c<=t?(t-=c,(0,g.fH)(`AdUnit \'${d}\' auction keys comprised of ${c} characters. Deducted from running threshold; new limit is ${t}`,n[d]),e[d]=n[d]):(0,g.JE)(`The following keys for adUnitCode \'${d}\' exceeded the current limit of the \'auctionKeyMaxChars\' setting.\\nThe key-set size was ${c}, the current allotted amount was ${t}.\\n`,n[d]),r+1===o.length&&0===Object.keys(e).length&&(0,g.vV)("No auction targeting keys were permitted due to the setting in setConfig(targetingControls.auctionKeyMaxChars). Please review setup and consider adjusting."),e}),{})}(D,$)),A.forEach((e=>{D[e]||(D[e]={})})),D},s.$W.getConfig("targetingControls",(function(e){null!=(0,p.A)(e,y)&&null!=(0,p.A)(e,v)&&(0,g.vV)(E)})),t.setTargetingForGPT=(0,c.A_)("sync",(function(n,i){let r=t.getAllTargeting(n),o=Object.fromEntries(m.map((e=>[e,null])));Object.entries(B(Object.keys(r),i)).forEach((e=>{let[t,n]=e;n.forEach((e=>{Object.keys(r[t]).forEach((e=>{let n=r[t][e];"string"==typeof n&&-1!==n.indexOf(",")&&(n=n.split(",")),r[t][e]=n})),(0,g.OG)(`Attempting to set targeting-map for slot: ${e.getSlotElementId()} with targeting-map:`,r[t]),e.updateTargetingFromMap(Object.assign({},o,r[t]))}))})),Object.keys(r).forEach((t=>{Object.keys(r[t]).forEach((n=>{"hb_adid"===n&&e.setStatusForBids(r[t][n],a.tl.BID_TARGETING_SET)}))})),t.targetingDone(r),d.Ic(a.qY.SET_TARGETING,r)}),"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]:h.Vk,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:g.Q0;const a=[],d=t||I(n,i),c=r(e);return d.reduce(((e,t)=>{const n=t.adUnitCode,i=!0===o.u.get(n,"allowZeroCpmBids")?t.cpm>=0:t.cpm>0,r=s.$W.getConfig("targetingControls.alwaysIncludeDeals")&&t.dealId;return(0,f.mK)(c,n)&&!(0,f.mK)(a,n)&&(r||i)&&(e.push(t),a.push(n)),e}),[])},t.setTargetingForAst=function(e){let n=t.getAllTargeting(e);try{t.resetPresetTargetingAST(e)}catch(e){(0,g.vV)("unable to reset targeting for AST"+e)}Object.keys(n).forEach((e=>Object.keys(n[e]).forEach((t=>{if((0,g.OG)(`Attempting to set targeting for targetId: ${e} key: ${t} value: ${n[e][t]}`),(0,g.O8)(n[e][t])||(0,g.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,g.fp)(window.apntag.setKeywords))return!0},t}(i.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),u=n(5569),l=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]===u.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,l.s)(u.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:()=>D,$z:()=>Oe,Bg:()=>He,Bj:()=>Fe,Bq:()=>le,CA:()=>L,D4:()=>fe,D9:()=>Me,Dl:()=>We,El:()=>Le,Et:()=>X,Ez:()=>z,Fq:()=>$e,GE:()=>Ce,Go:()=>ye,II:()=>pe,Im:()=>te,JE:()=>P,Lm:()=>ee,N9:()=>we,O8:()=>Q,OG:()=>N,PB:()=>Ge,Q0:()=>me,Qd:()=>Z,SB:()=>Se,SG:()=>de,SH:()=>ke,Tz:()=>ce,U6:()=>Be,Up:()=>qe,Uu:()=>xe,V:()=>Te,Vt:()=>Ee,ZA:()=>ge,_s:()=>re,al:()=>ve,bL:()=>S,bu:()=>ie,bz:()=>je,c$:()=>Pe,cD:()=>I,cy:()=>Y,fH:()=>W,fp:()=>K,gM:()=>Ae,h0:()=>M,hj:()=>ue,hw:()=>H,iC:()=>_e,k4:()=>be,kK:()=>U,l4:()=>q,l9:()=>De,lk:()=>k,mM:()=>w,mb:()=>$,ro:()=>ae,s0:()=>O,t1:()=>he,u5:()=>R,vE:()=>Ie,vV:()=>V,wD:()=>Re,xQ:()=>ne,z$:()=>se});var i=n(3272),r=n(5751),o=n(5901),s=n(8969),a=n(5555),d=n(7873),c="String",u="Function",l="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 T(){null!=h&&h(...arguments)}const w={checkCookieSupport:Ce,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:q,getWindowTop:$,canAccessWindowTop:function(){try{if(w.getWindowTop().location.href)return!0}catch(e){return!1}},getWindowLocation:x,insertUserSyncIframe:de,insertElement:re,isFn:K,triggerPixel:se,logError:V,logWarn:P,logMessage:N,logInfo:W,parseQS:Ne,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:Ve};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,t){return t?.[e]||""}function S(e){let t="";for(var n in e)e.hasOwnProperty(n)&&(t+=n+"="+encodeURIComponent(e[n])+"&");return t=t.replace(/&$/,""),t}function D(e){return e&&Object.getOwnPropertyNames(e).length>0?Object.keys(e).map((t=>`${t}=${encodeURIComponent(e[t])}`)).join("&"):""}function U(e){return(t=e,"string"==typeof t?t.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(t)?j(t)?[t]:t.filter(j):[]).map(_);var t}function _(e){return e[0]+"x"+e[1]}function j(e){return Y(e)&&2===e.length&&!isNaN(e[0])&&!isNaN(e[1])}function $(){return window.top}function q(){return window.self}function x(){return window.location}function N(){F()&&b&&console.log.apply(console,G(arguments,"MESSAGE:"))}function W(){F()&&y&&console.info.apply(console,G(arguments,"INFO:"))}function P(){F()&&v&&console.warn.apply(console,G(arguments,"WARNING:")),T(s.qY.AUCTION_DEBUG,{type:"WARNING",arguments})}function V(){F()&&E&&console.error.apply(console,G(arguments,"ERROR:")),T(s.qY.AUCTION_DEBUG,{type:"ERROR",arguments})}function M(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(V),logWarn:t(P),logMessage:t(N),logInfo:t(W)}}function G(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 F(){return!!i.$W.getConfig("debug")}const H=(()=>{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 L(){return H(document,{id:O(),width:0,height:0,src:"about:blank"},{display:"none",height:"0px",width:"0px",border:"0px"})}function z(e){return Ne(x().search)[e]||""}function J(e,t){return p.call(e)==="[object "+t+"]"}function K(e){return J(e,u)}function Q(e){return J(e,c)}const Y=Array.isArray.bind(Array);function X(e){return J(e,l)}function Z(e){return J(e,f)}function ee(e){return J(e,g)}function te(e){return!e||(Y(e)||Q(e)?!(e.length>0):Object.keys(e).length<=0)}function ne(e){return Q(e)&&(!e||0===e.length)}function ie(e,t){if(K(e?.forEach))return e.forEach(t,this);Object.entries(e||{}).forEach((e=>{let[n,i]=e;return t.call(this,i,n)}))}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&&w.isFn(t)&&oe(i,n).then(t),i.src=e}function ae(e){if(!e)return;const t=L();var n;w.insertElement(t,document,"body"),(n=t.contentWindow.document).open(),n.write(e),n.close()}function de(e,t,n){let i=w.createTrackPixelIframeHtml(e,!1,"allow-scripts allow-same-origin"),r=document.createElement("div");r.innerHTML=i;let o=r.firstChild;t&&w.isFn(t)&&oe(o,n).then(t),w.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 ue(e,t,n){return n.indexOf(e)===t}function le(e,t){return e.concat(t)}function fe(e,t){if(e)return t.flatMap((e=>e.bids)).find((t=>["bidId","adId","bid_id"].some((n=>t[n]===e))))}function ge(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:A.adUnits).map((e=>e.bids.map((e=>e.bidder)).reduce(le,[]))).reduce(le,[]).filter((e=>void 0!==e)).filter(ue)}function pe(){if(window.googletag&&K(window.googletag.pubads)&&K(window.googletag.pubads().getSlots))return!0}function he(){if(window.apntag&&K(window.apntag.getTag))return!0}const me=(e,t)=>t.cpm-e.cpm;function be(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 ye(e){return(0,r.Q)(e)||{}}function ve(){try{return w.getWindowSelf()!==w.getWindowTop()}catch(e){return!0}}function Ee(){return/^((?!chrome|android|crios|fxios).)*safari/i.test(navigator.userAgent)}function Ae(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 Ie(){return(new Date).getTime()}function Te(){return window.performance&&window.performance.now&&window.performance.now()||0}function we(){return!1!==i.$W.getConfig("deviceAccess")}function Ce(){if(window.navigator.cookieEnabled||document.cookie.length)return!0}function Be(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 Oe(e,t){return e.reduce((function(e,n){return(e[n[t]]=e[n[t]]||[]).push(n),e}),{})}function ke(e,t){return t.filter((t=>e[t])).reduce(((t,n)=>Object.assign(t,{[n]:e[n]})),{})}function Re(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 Se(e,t,n){return e.filter((e=>e.code===t)).flatMap((e=>e.bids)).filter((e=>e.bidder===n)).map((e=>e.params||{}))}function De(){return"1"===navigator.doNotTrack||"1"===window.doNotTrack||"1"===navigator.msDoNotTrack||"yes"===navigator.doNotTrack}const Ue=(e,t)=>e.getAdUnitPath()===t||e.getSlotElementId()===t;function _e(e){return t=>Ue(e,t)}function je(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 $e=Number.isInteger.bind(Number);function qe(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 xe(e,t){return Y(e)&&(!t||e.length===t)&&e.every((e=>$e(e)))}function Ne(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 We(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:w.parseQS(n.search||""),hash:(n.hash||"").replace(/^#/,""),host:n.host||window.location.host}}function Pe(e){return(e.protocol||"http")+"://"+(e.host||e.hostname+(e.port?`:${e.port}`:""))+(e.pathname||"")+(e.search?`?${w.formatQS(e.search||"")}`:"")+(e.hash?`#${e.hash}`:"")}function Ve(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(!Ve(e[r],t[r],{checkTypes:n}))return!1}return!0}}function Me(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(Z(e)&&Z(r))for(const t in r)Z(r[t])?(e[t]||Object.assign(e,{[t]:{}}),Me(e[t],r[t])):Y(r[t])?e[t]?Y(e[t])&&r[t].forEach((n=>{let i=1;for(let r=0;r<e[t].length;r++)if(Ve(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 Me(e,...n)}function Ge(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=function(e,t){if(K(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 Fe(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 He(e,t){Object.entries(t).forEach((t=>{let[n,i]=t;return e.setAttribute(n,i)}))}function Le(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)=>{function i(e){return!e?.gdprApplies||!0===e?.vendorData?.purpose?.consents?.[1]}n.d(t,{C:()=>i})},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=u,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 u(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 l(t){return n(e,(e=>u(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:l,measureTime:function(e,t){return l(e).stopAfter(t)()},measureHookTime:function(e,t,n){const i=l(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&&u(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&&u(n,o),o},setMetric:u,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 u(e){return{metrics:{},timestamps:{},groups:{},addParent(t,n){e.push([t,n])},newSibling:()=>u(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 l=(()=>{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||l}i.$W.getConfig(r,(e=>{f=!!e[r]}));const p=(()=>{const e=a();return function(){return f?e():l}})();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#u(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.#u(e,((e,i)=>e?t(i):n(i)))}))}static all(e){return new this(((t,n)=>{let i=[];this.#u(e,((e,t,r)=>e?i[r]=t:n(t)),(()=>t(i)))}))}static allSettled(e){return new this((t=>{let n=[];this.#u(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(){return function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i;return(t,n)=>e(n,t)<0?n:t}(o(arguments.length>0&&void 0!==arguments[0]?arguments[0]:i))}n.d(t,{Bq:()=>l,Vk:()=>u});const d=r((e=>e.cpm)),c=r((e=>e.responseTimestamp)),u=a(s(d,o(r((e=>e.timeToRespond))))),l=a(s(d,o(c)));a(s(d,c))},6853:(e,t,n)=>{n.d(t,{H:()=>u});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 u(){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=[],u=n?e=>d.push(e):e=>d.splice((0,r.El)(d,e,(e=>e.expiry)),0,e);let l,f;function g(){if(f&&clearTimeout(f),d.length>0){const e=(0,r.vE)();l=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()}),l-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,u(p),(null==f||l>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:()=>a,V0:()=>u,Zy:()=>c,aP:()=>l,mn:()=>d,vk:()=>f});var i=n(1069),r=n(3272),o=n(9214),s=n(6881);const a="outstream",d="instream",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 u(e){const t=e?.mediaTypes?.video;null!=t&&null==t.plcmt&&(t.context===a||[2,3,4].includes(t.placement)?t.plcmt=4:t.context!==a&&[2,6].includes(t.playbackmethod)&&(t.plcmt=2))}function l(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=s.n.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=t.getMediaTypes(e)?.video,i=n&&n?.context,r=n&&n?.useCacheKey,o=t.getAdUnit(e);return g(e,o,n,i,r)}const g=(0,o.A_)("sync",(function(e,t,n,o,s){return n&&(s||o!==a)?r.$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 pbjs.setConfig({ cache: {url: "..."} });\\n \'),!1):!(o===a&&!s)||!!(e.renderer||t&&t.renderer||n.renderer)}),"checkVideoBidSetup")}}]);\n(self.pbjsChunk=self.pbjsChunk||[]).push([[85],{4595:(s,d,e)=>{e.d(d,{G:()=>n});const n=\'(()=>{"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))}}})();\'}}]);\n(self.pbjsChunk=self.pbjsChunk||[]).push([[444],{554:(e,t,r)=>{r.d(t,{QF:()=>g,T_:()=>f,gg:()=>l});var n=r(1069),o=r(433),i=r(8656),d=r(3858);const c={526:"1plusX",527:"1plusX",541:"captify_segments",540:"perid"},a=["user.data"].concat(d.Dy.map((e=>`${e}.content.data`)));function u(e,t,r){return null==t?r:(0,n.O8)(t)?t:(0,n.Et)(t)?t.toString():void(0,n.JE)("Unsuported type for param: "+e+" required type: String")}function l(e){return(0,n.O8)(e)&&""!==e?s(e.split(/\\s*(?:,)\\s*/)):{}}function s(e){const t={};return e.forEach((e=>{if(-1!==e.indexOf("=")){let r=e.split("="),n=r[0],o=r[1];t.hasOwnProperty(n)?t[n].push(o):t[n]=[o]}else t.hasOwnProperty(e)||(t[e]=[])})),t}function f(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"keywords";const r=[];return(0,n.bu)(e,((e,o)=>{if((0,n.cy)(e)){let r=[];(0,n.bu)(e,(e=>{((e=u(t+"."+o,e))||""===e)&&r.push(e)})),e=r}else{if(e=u(t+"."+o,e),!(0,n.O8)(e))return;e=[e]}e=e.filter((e=>""!==e));const i={key:o};e.length>0&&(i.value=e),r.push(i)})),r}((0,n.D9)(...t.map((e=>Object.fromEntries(Object.entries(e||{}).map((e=>{let[t,r]=e;return[t,(0,n.Et)(r)||(0,n.O8)(r)?[r]:r]})))))))}function g(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return f(function(e){return s((0,i.D)(e))}(e),function(e){let t={};return a.forEach((r=>{((0,o.A)(e,r)||[]).forEach((e=>{const r=c[e?.ext?.segtax];r&&e.segment.forEach((e=>{t[r]?t[r].push(e.id):t[r]=[e.id]}))}))})),t}(e),...r)}},2349:(e,t,r)=>{r.d(t,{DX:()=>i,GS:()=>d,vk:()=>o});var n=r(1069);function o(e){return e.replace(/(?:^|\\.?)([A-Z])/g,(function(e,t){return"_"+t.toLowerCase()})).replace(/^_/,"")}const i=[{code:"appnexusAst",gvlid:32},{code:"emxdigital",gvlid:183},{code:"emetriq",gvlid:213},{code:"pagescience",gvlid:32},{code:"gourmetads",gvlid:32},{code:"matomy",gvlid:32},{code:"featureforward",gvlid:32},{code:"oftmedia",gvlid:32},{code:"adasta",gvlid:32},{code:"beintoo",gvlid:618},{code:"projectagora",gvlid:1032},{code:"stailamedia",gvlid:32},{code:"uol",gvlid:32},{code:"adzymic",gvlid:723}];function d(e,t){let r=[];for(let o=0;o<t;o++){let t=(0,n.Qd)(e)?(0,n.Go)(e):e;r.push(t)}return r}}}]);\n(self.pbjsChunk=self.pbjsChunk||[]).push([[126],{5761:(e,r,n)=>{n.d(r,{$:()=>t});var s=n(1069);function t(e,r){return Object.keys(e).forEach((n=>{var t,u;r[n]&&((0,s.fp)(e[n])?r[n]=e[n](r[n]):r[n]=(t=e[n],u=r[n],"string"===t?u&&u.toString():"number"===t?Number(u):u),isNaN(r[n])&&delete r.key)})),r}}}]);\n(self.pbjsChunk=self.pbjsChunk||[]).push([[247],{8656:(r,e,a)=>{a.d(e,{D:()=>o});var n=a(3858),t=a(433);const s=["user.keywords"].concat(n.Dy.flatMap((r=>["keywords","content.keywords"].map((e=>`${r}.${e}`)))));function o(r){for(var e=arguments.length,a=new Array(e>1?e-1:0),n=1;n<e;n++)a[n-1]=arguments[n];return function(){const r=new Set;for(var e=arguments.length,a=new Array(e),n=0;n<e;n++)a[n]=arguments[n];return a.filter((r=>r)).flatMap((r=>Array.isArray(r)?r:r.split(","))).map((r=>r.replace(/^\\s*/,"").replace(/\\s*$/,""))).filter((r=>r)).forEach((e=>r.add(e))),Array.from(r.keys())}(...s.map((e=>(0,t.A)(r,e))),...a)}}}]);\n(self.pbjsChunk=self.pbjsChunk||[]).push([[982],{9906:(e,l,s)=>{function t(e,l){let s=[];for(let t=0;t<Math.ceil(e.length/l);t++){let h=t*l,n=h+l;s.push(e.slice(h,n))}return s}s.d(l,{i:()=>t})}}]);\n(self.pbjsChunk=self.pbjsChunk||[]).push([[698],{4673:(A,B,I)=>{I.d(B,{n:()=>s});const s={1:"IAB20-3",2:"IAB18-5",3:"IAB10-1",4:"IAB2-3",5:"IAB19-8",6:"IAB22-1",7:"IAB18-1",8:"IAB12-3",9:"IAB5-1",10:"IAB4-5",11:"IAB13-4",12:"IAB8-7",13:"IAB9-7",14:"IAB7-1",15:"IAB20-18",16:"IAB10-7",17:"IAB19-18",18:"IAB13-6",19:"IAB18-4",20:"IAB1-5",21:"IAB1-6",22:"IAB3-4",23:"IAB19-13",24:"IAB22-2",25:"IAB3-9",26:"IAB17-18",27:"IAB19-6",28:"IAB1-7",29:"IAB9-30",30:"IAB20-7",31:"IAB20-17",32:"IAB7-32",33:"IAB16-5",34:"IAB19-34",35:"IAB11-5",36:"IAB12-3",37:"IAB11-4",38:"IAB12-3",39:"IAB9-30",41:"IAB7-44",42:"IAB7-1",43:"IAB7-30",50:"IAB19-30",51:"IAB17-12",52:"IAB19-30",53:"IAB3-1",55:"IAB13-2",56:"IAB19-30",57:"IAB19-30",58:"IAB7-39",59:"IAB22-1",60:"IAB7-39",61:"IAB21-3",62:"IAB5-1",63:"IAB12-3",64:"IAB20-18",65:"IAB11-2",66:"IAB17-18",67:"IAB9-9",68:"IAB9-5",69:"IAB7-44",71:"IAB22-3",73:"IAB19-30",74:"IAB8-5",78:"IAB22-1",85:"IAB12-2",86:"IAB22-3",87:"IAB11-3",112:"IAB7-32",113:"IAB7-32",114:"IAB7-32",115:"IAB7-32",118:"IAB9-5",119:"IAB9-5",120:"IAB9-5",121:"IAB9-5",122:"IAB9-5",123:"IAB9-5",124:"IAB9-5",125:"IAB9-5",126:"IAB9-5",127:"IAB22-1",132:"IAB1-2",133:"IAB19-30",137:"IAB3-9",138:"IAB19-3",140:"IAB2-3",141:"IAB2-1",142:"IAB2-3",143:"IAB17-13",166:"IAB11-4",175:"IAB3-1",176:"IAB13-4",182:"IAB8-9",183:"IAB3-5"}}}]);\n(self.pbjsChunk=self.pbjsChunk||[]).push([[109],{965:(t,e,n)=>{n.d(e,{c5:()=>o,q4:()=>r});var a=n(5555);const c=0,l=1,r=2;function o(t){let{apiName:e,apiVersion:n,apiArgs:o=["command","callback","parameter","version"],callbackArgs:s=["returnValue","success"],mode:i=c}=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 c="function"==typeof t;return function(r,o){if(a&&a(),i!==l){(null==o||o?e:n)(c?void 0:r)}c&&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===l||null==t.callback&&i===c)&&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 c=Math.random().toString(),r={[d]:{...Object.fromEntries(g(t).filter((t=>{let[e]=t;return"callback"!==e}))),callId:c}};f[c]=h(t?.callback,n,a,(e||null==t?.callback)&&(()=>{delete f[c]})),k.postMessage(r,"*"),i===l&&n()}))}),Object.assign(v,{isDirect:m,close(){!m&&u.removeEventListener("message",b)}})}}}]);\n(self.pbjsChunk=self.pbjsChunk||[]).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)}))}}}]);\n(self.pbjsChunk=self.pbjsChunk||[]).push([[82],{7274:(n,e,t)=>{t.d(e,{l:()=>v});var i=t(5139),o=t(6811),s=t(6916),r=t(1069);function a(n){return null!=n&&0!==n}function c(n){return["MspaServiceProviderMode","Gpc"].some((e=>1===n[e]))||2===n.PersonalDataConsents||1===n.KnownChildSensitiveDataConsents[0]||a(n.KnownChildSensitiveDataConsents[1])||0===n.MspaCoveredTransaction}function l(n,e){return["SensitiveDataProcessingOptOutNotice","SensitiveDataLimitUseNotice"].some((t=>n[t]===e))}function u(n){return c(n)||["Sale","Sharing","TargetedAdvertising"].some((e=>{const t=n[`${e}OptOut`],i=n[`${e}OptOutNotice`];return 1===t||2===i||2===t&&0===i}))||2===n.SharingNotice||2===n.SharingOptOut&&0===n.SharingNotice}const f=(()=>{const n=[6,7,9,10,12].map((n=>--n)),e=Array.from(Array(12).keys()).filter((n=>7!==n)),t=e.filter((e=>!n.includes(e)));return function(i){return u(i)||l(i,2)||n.some((n=>a(i.SensitiveDataProcessing[n])))||t.some((n=>1===i.SensitiveDataProcessing[n]))||l(i,0)&&e.some((n=>2===i.SensitiveDataProcessing[n]))}})();const g={[o.Ml]:u,[o.yl]:u,[o.qX]:f,[o.hE]:function(n){const e=n.SensitiveDataProcessing[7];return 1===e||c(n)||l(n,2)||l(n,0)&&2===e}};function v(n,e){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:n=>n,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:g,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:i.qB,c=arguments.length>5&&void 0!==arguments[5]?arguments[5]:()=>s.ad.getConsentData();const l=[],u=`MSPA (GPP \'${n}\' for section${e.length>1?"s":""} ${e.join(", ")})`;return(0,r.fH)(`Enabling activity controls for ${u}`),Object.entries(o).forEach((i=>{let[o,r]=i;l.push(a(o,u,function(n,e,t){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:()=>s.ad.getConsentData()?.applicableSections;return function(){if(i().some((e=>n.includes(e)))){const n=e();if(null==n)return{allow:!1,reason:"consent data not available"};if(1!==n.Version)return{allow:!1,reason:`unsupported consent specification version "${n.Version}"`};if(t(n))return{allow:!1}}}}(e,(()=>{return t((e=c()?.parsedSections?.[n],Array.isArray(e)?e.reduceRight(((n,e)=>Object.assign(e,n)),{}):e));var e}),r,(()=>c()?.applicableSections||[]))))})),()=>l.forEach((n=>n()))}}}]);\n(self.pbjsChunk=self.pbjsChunk||[]).push([[5],{1252:(t,e,n)=>{n.d(e,{Cn:()=>u,eu:()=>s});var a=n(3858),l=n(433),r=n(1069);const u=["IAB_AUDIENCE_1_1","IAB_CONTENT_2_2"];function s(t){return Object.entries({[u[0]]:f(t,["user.data"],4),[u[1]]:f(t,a.Dy.map((t=>`${t}.content.data`)),6)}).map((t=>{let[e,n]=t;return n.length?{taxonomy:e,values:n}:null})).filter((t=>t))}function f(t,e,n){return e.flatMap((e=>(0,l.A)(t,e)||[])).filter((t=>t.ext?.segtax===n)).flatMap((t=>t.segment?.map((t=>t.id)))).filter((t=>t)).filter(r.hj)}}}]);\n(self.pbjsChunk=self.pbjsChunk||[]).push([[498],{11:(r,e,a)=>{a.d(e,{Z:()=>y});var i=a(1069);const y={mimes:r=>Array.isArray(r)&&r.length>0&&r.every((r=>"string"==typeof r)),minduration:r=>(0,i.Fq)(r),maxduration:r=>(0,i.Fq)(r),protocols:r=>Array.isArray(r)&&r.every((r=>r>=1&&r<=10)),w:r=>(0,i.Fq)(r),h:r=>(0,i.Fq)(r),startdelay:r=>(0,i.Fq)(r),linearity:r=>-1!==[1,2].indexOf(r),skip:r=>-1!==[0,1].indexOf(r),skipmin:r=>(0,i.Fq)(r),skipafter:r=>(0,i.Fq)(r),sequence:r=>(0,i.Fq)(r),battr:r=>Array.isArray(r)&&r.every((r=>r>=1&&r<=17)),maxextended:r=>(0,i.Fq)(r),minbitrate:r=>(0,i.Fq)(r),maxbitrate:r=>(0,i.Fq)(r),boxingallowed:r=>-1!==[0,1].indexOf(r),playbackmethod:r=>Array.isArray(r)&&r.every((r=>r>=1&&r<=6)),playbackend:r=>-1!==[1,2,3].indexOf(r),api:r=>Array.isArray(r)&&r.every((r=>r>=1&&r<=6))}}}]);\n(self.pbjsChunk=self.pbjsChunk||[]).push([[599],{791:(e,t,r)=>{var i=r(7873),a=r(1069),s=r(433),o=r(5789),n=r(3272),d=r(9115),c=r(1371),p=r(5901),l=r(3895),u=r(2938),m=r(2693),g=r(2621),h=r(2449),_=r(4673),f=r(554),b=r(2349),y=r(5761),v=r(9906);const k="appnexus",w="https://ib.adnxs.com/ut/v3/prebid",I="https://ib.adnxs-simple.com/ut/v3/prebid",x=["id","minduration","maxduration","skippable","playback_method","frameworks","context","skipoffset"],C=["minduration","maxduration","skip","skipafter","playbackmethod","api","startdelay","placement","plcmt"],O=["age","externalUid","external_uid","segments","gender","dnt","language"],T=["geo","device_id"],U=["enabled","dongle","member_id","debug_timeout"],E={apn_debug_dongle:"dongle",apn_debug_member_id:"member_id",apn_debug_timeout:"debug_timeout"},S={playback_method:{unknown:0,auto_play_sound_on:1,auto_play_sound_off:2,click_to_play:3,mouse_over:4,auto_play_sound_unknown:5},context:{unknown:0,pre_roll:1,mid_roll:2,post_roll:3,outstream:4,"in-banner":5,"in-feed":6,interstitial:7,accompanying_content_pre_roll:8,accompanying_content_mid_roll:9,accompanying_content_post_roll:10}},A={body:"description",body2:"desc2",cta:"ctatext",image:{serverName:"main_image",requiredParams:{required:!0}},icon:{serverName:"icon",requiredParams:{required:!0}},sponsoredBy:"sponsored_by",privacyLink:"privacy_link",salePrice:"saleprice",displayUrl:"displayurl"},j="<script",D=/\\/\\/cdn\\.adnxs\\.com\\/v|\\/\\/cdn\\.adnxs\\-simple\\.com\\/v/,R="trk.js",z=(0,u.vM)({bidderCode:k}),N=new Map([[1,"Mobile/Tablet - General"],[2,"Personal Computer"],[3,"Connected TV"],[4,"Phone"],[5,"Tablet"],[6,"Connected Device"],[7,"Set Top Box"],[8,"OOH Device"]]),q={code:k,gvlid:32,aliases:b.DX,supportedMediaTypes:[c.D4,c.G_,c.s6],isBidRequestValid:function(e){return!!(e.params.placementId||e.params.placement_id||e.params.member&&(e.params.invCode||e.params.inv_code))},buildRequests:function(e,t){const r=(e=(0,h.Xj)(e)).map(G),i=(0,p.I6)(e,M);let s={};!0===n.$W.getConfig("coppa")&&(s={coppa:!0}),i&&Object.keys(i.params.user).filter((e=>(0,p.mK)(O,e))).forEach((e=>{let t=(0,b.vk)(e);if("segments"===e&&(0,a.cy)(i.params.user[e])){let r=[];i.params.user[e].forEach((e=>{(0,a.Et)(e)?r.push({id:e}):(0,a.Qd)(e)&&r.push(e)})),s[t]=r}else"segments"!==e&&(s[t]=i.params.user[e])}));const o=(0,p.I6)(e,B);let d;o&&o.params&&o.params.app&&(d={},Object.keys(o.params.app).filter((e=>(0,p.mK)(T,e))).forEach((e=>d[e]=o.params.app[e])));const c=(0,p.I6)(e,K);let l;c&&c.params&&o.params.app&&o.params.app.id&&(l={appid:c.params.app.id});let u={},m={};const _=z.getCookie("apn_prebid_debug")||null;if(_)try{u=JSON.parse(_)}catch(e){(0,a.vV)("AppNexus Debug Auction Cookie Error:\\n\\n"+e)}else{Object.keys(E).forEach((e=>{let t=(0,a.Ez)(e);(0,a.O8)(t)&&""!==t&&(u[E[e]]=t,u.enabled=!0)})),u=(0,y.$)({member_id:"number",debug_timeout:"number"},u);const t=(0,p.I6)(e,V);t&&t.debug&&(u=t.debug)}u&&u.enabled&&Object.keys(u).filter((e=>(0,p.mK)(U,e))).forEach((e=>{m[e]=u[e]}));const k=(0,p.I6)(e,$),x=k?parseInt(k.params.member,10):0,C=e[0].schain,S=(0,p.I6)(e,W),A={tags:[...r],user:s,sdk:{source:"pbjs",version:"9.23.0"},schain:C};S&&(A.iab_support={omidpn:"Appnexus",omidpv:"9.23.0"}),x>0&&(A.member_id=x),o&&(A.device=d),c&&(A.app=l),t?.ortb2?.device&&(A.device=A.device||{},(0,a.D9)(A.device,function(e){const t={useragent:e.ua,devicetype:N.get(e.devicetype),make:e.make,model:e.model,os:e.os,os_version:e.osv,w:e.w,h:e.h,ppi:e.ppi,pxratio:e.pxratio};return Object.keys(t).reduce(((e,r)=>(t[r]&&(e[r]=t[r]),e)),{})}(t.ortb2.device)));let j=(0,a.Go)(t&&t.ortb2),D=(0,a.Go)(n.$W.getConfig("appnexusAuctionKeywords"))||{},R=(0,f.QF)(j,D);if(R.length>0&&(A.keywords=R),n.$W.getConfig("adpod.brandCategoryExclusion")&&(A.brand_category_uniqueness=!0),m.enabled&&(A.debug=m,(0,a.fH)("AppNexus Debug Auction Settings:\\n\\n"+JSON.stringify(m,null,4))),t&&t.gdprConsent&&(A.gdpr_consent={consent_string:t.gdprConsent.consentString,consent_required:t.gdprConsent.gdprApplies},t.gdprConsent.addtlConsent&&-1!==t.gdprConsent.addtlConsent.indexOf("~"))){let e=t.gdprConsent.addtlConsent,r=e.substring(e.indexOf("~")+1);A.gdpr_consent.addtl_consent=r.split(".").map((e=>parseInt(e,10)))}if(t&&t.uspConsent&&(A.us_privacy=t.uspConsent),t?.gppConsent?A.privacy={gpp:t.gppConsent.gppString,gpp_sid:t.gppConsent.applicableSections}:t?.ortb2?.regs?.gpp&&(A.privacy={gpp:t.ortb2.regs.gpp,gpp_sid:t.ortb2.regs.gpp_sid}),t&&t.refererInfo){let e={rd_ref:encodeURIComponent(t.refererInfo.topmostLocation),rd_top:t.refererInfo.reachedTop,rd_ifs:t.refererInfo.numIframes,rd_stk:t.refererInfo.stack.map((e=>encodeURIComponent(e))).join(",")},r=t.refererInfo.canonicalUrl;(0,a.O8)(r)&&""!==r&&(e.rd_can=r),A.referrer_detection=e}(0,p.I6)(e,L)&&e.filter(L).forEach((e=>{const t=function(e,t){const{durationRangeSec:r,requireExactDuration:i}=t.mediaTypes.video,a=function(e){const{adPodDurationSec:t,durationRangeSec:r,requireExactDuration:i}=e,a=Math.min(...r),s=Math.floor(t/a);return i?Math.max(s,r.length):s}(t.mediaTypes.video),s=Math.max(...r),o=e.filter((e=>e.uuid===t.bidId));let n=(0,b.GS)(...o,a);if(i){const e=Math.ceil(a/r.length),t=(0,v.i)(n,e);r.forEach(((e,r)=>{t[r].map((t=>{H(t,"minduration",e),H(t,"maxduration",e)}))}))}else n.map((e=>H(e,"maxduration",s)));return n}(r,e),i=A.tags.filter((t=>t.uuid!==e.bidId));A.tags=[...i,...t]}));if(e[0].userId){let t=[];e[0].userIdAsEids.forEach((e=>{!e||!e.uids||e.uids.length<1||e.uids.forEach((r=>{let i={source:e.source,id:r.id};"adserver.org"==e.source?i.rti_partner="TDID":"uidapi.com"==e.source&&(i.rti_partner="UID2"),t.push(i)}))})),t.length&&(A.eids=t)}if(t?.ortb2?.regs?.ext?.dsa){const e=t.ortb2.regs.ext.dsa,r={};if(["dsarequired","pubrender","datatopub"].forEach((t=>{(0,a.Et)(e[t])&&(r[t]=e[t])})),(0,a.cy)(e.transparency)&&e.transparency.every((e=>(0,a.Qd)(e)))){const t=[];e.transparency.forEach((e=>{(0,a.O8)(e.domain)&&""!=e.domain&&(0,a.cy)(e.dsaparams)&&e.dsaparams.every((e=>(0,a.Et)(e)))&&t.push(e)})),t.length>0&&(r.transparency=t)}(0,a.Im)(r)||(A.dsa=r)}r[0].publisher_id&&(A.publisher_id=r[0].publisher_id);const q=function(e,t){let r=[],i={withCredentials:!0},s=w;(0,g.C)(t?.gdprConsent)||(s=I);"TRUE"!==(0,a.Ez)("apn_test").toUpperCase()&&!0!==n.$W.getConfig("apn_test")||(i.customHeaders={"X-Is-Test":1});if(e.tags.length>15){const o=(0,a.Go)(e);(0,v.i)(e.tags,15).forEach((e=>{o.tags=e;const a=JSON.stringify(o);r.push({method:"POST",url:s,data:a,bidderRequest:t,options:i})}))}else{const a=JSON.stringify(e);r={method:"POST",url:s,data:a,bidderRequest:t,options:i}}return r}(A,t);return q},interpretResponse:function(e,t){let{bidderRequest:r}=t;e=e.body;const i=[];if(!e||e.error){let t=`in response for ${r.bidderCode} adapter`;return e&&e.error&&(t+=`: ${e.error}`),(0,a.vV)(t),i}if(e.tags&&e.tags.forEach((e=>{const t=(n=e)&&n.ads&&n.ads.length&&(0,p.I6)(n.ads,(e=>e.rtb));var n;if(t){if((!0===m.u.get(r.bidderCode,"allowZeroCpmBids")?t.cpm>=0:t.cpm>0)&&(0,p.mK)(this.supportedMediaTypes,t.ad_type)){const n=function(e,t,r){const i=(0,a.D4)(e.uuid,[r]),n=(0,a.s0)(),d={adId:n,requestId:e.uuid,cpm:t.cpm,creativeId:t.creative_id,dealId:t.deal_id,currency:"USD",netRevenue:!0,ttl:300,adUnitCode:i.adUnitCode,appnexus:{buyerMemberId:t.buyer_member_id,dealPriority:t.deal_priority,dealCode:t.deal_code}};t.adomain&&(d.meta=Object.assign({},d.meta,{advertiserDomains:[t.adomain]}));t.advertiser_id&&(d.meta=Object.assign({},d.meta,{advertiserId:t.advertiser_id}));t.dsa&&(d.meta=Object.assign({},d.meta,{dsa:t.dsa}));function u(e){return{ver:"1.0",complete:0,nodes:[{bsid:e.buyer_member_id.toString()}]}}t.buyer_member_id&&(d.meta=Object.assign({},d.meta,{dchain:u(t)}));t.brand_id&&(d.meta=Object.assign({},d.meta,{brandId:t.brand_id}));if(t.rtb.video){Object.assign(d,{width:t.rtb.video.player_width,height:t.rtb.video.player_height,vastImpUrl:t.notify_url,ttl:3600});switch((0,s.A)(i,"mediaTypes.video.context")){case c.LM:const i=_.n[t.brand_category_id]?_.n[t.brand_category_id]:null;d.meta=Object.assign({},d.meta,{primaryCatId:i});const n=t.deal_priority;d.video={context:c.LM,durationSeconds:Math.floor(t.rtb.video.duration_ms/1e3),dealTier:n},d.vastUrl=t.rtb.video.asset_url;break;case l.H6:if(d.adResponse=e,d.adResponse.ad=d.adResponse.ads[0],d.adResponse.ad.video=d.adResponse.ad.rtb.video,d.vastXml=t.rtb.video.content,t.renderer_url){const i=(0,p.I6)(r.bids,(t=>t.bidId===e.uuid));let n=(0,s.A)(i,"mediaTypes.video.renderer.options");n||(n=(0,s.A)(i,"renderer.options")),d.renderer=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const i=o.A4.install({id:t.renderer_id,url:t.renderer_url,config:r,loaded:!1,adUnitCode:e});try{i.setRender(J)}catch(e){(0,a.JE)("Prebid Error calling setRender on renderer",e)}return i.setEventHandlers({impression:()=>(0,a.OG)("AppNexus outstream video impression event"),loaded:()=>(0,a.OG)("AppNexus outstream video loaded event"),ended:()=>{(0,a.OG)("AppNexus outstream renderer video event"),document.querySelector(`#${e}`).style.display="none"}}),i}(d.adUnitCode,t,n)}break;case l.mn:d.vastUrl=t.notify_url+"&redir="+encodeURIComponent(t.rtb.video.asset_url)}}else if(t.rtb[c.s6]){const e=t.rtb[c.s6];let r;if(function(e){if(!e||""===e)return!1;let t=e.match(D),r=null!=t&&t.length>=1,i=e.match(R),a=null!=i&&i.length>=1;return e.startsWith(j)&&a&&r}(t.viewability.config)){let e="pbjs_adid="+n+";pbjs_auc="+i.adUnitCode;r=t.viewability.config.replace("dom_id=%native_dom_id%",e)}let s=e.javascript_trackers;null==s?s=r:(0,a.O8)(s)?s=[s,r]:s.push(r),d[c.s6]={title:e.title,body:e.desc,body2:e.desc2,cta:e.ctatext,rating:e.rating,sponsoredBy:e.sponsored,privacyLink:e.privacy_link,address:e.address,downloads:e.downloads,likes:e.likes,phone:e.phone,price:e.price,salePrice:e.saleprice,clickUrl:e.link.url,displayUrl:e.displayurl,clickTrackers:e.link.click_trackers,impressionTrackers:e.impression_trackers,video:e.video,javascriptTrackers:s},e.main_img&&(d[c.s6].image={url:e.main_img.url,height:e.main_img.height,width:e.main_img.width}),e.icon&&(d[c.s6].icon={url:e.icon.url,height:e.icon.height,width:e.icon.width}),d[c.s6].ext={video:e.video,customImage1:e.image1&&{url:e.image1.url,height:e.image1.height,width:e.image1.width},customImage2:e.image2&&{url:e.image2.url,height:e.image2.height,width:e.image2.width},customImage3:e.image3&&{url:e.image3.url,height:e.image3.height,width:e.image3.width},customImage4:e.image4&&{url:e.image4.url,height:e.image4.height,width:e.image4.width},customImage5:e.image5&&{url:e.image5.url,height:e.image5.height,width:e.image5.width},customIcon1:e.icon1&&{url:e.icon1.url,height:e.icon1.height,width:e.icon1.width},customIcon2:e.icon2&&{url:e.icon2.url,height:e.icon2.height,width:e.icon2.width},customIcon3:e.icon3&&{url:e.icon3.url,height:e.icon3.height,width:e.icon3.width},customIcon4:e.icon4&&{url:e.icon4.url,height:e.icon4.height,width:e.icon4.width},customIcon5:e.icon5&&{url:e.icon5.url,height:e.icon5.height,width:e.icon5.width},customSocialIcon1:e.socialicon1&&{url:e.socialicon1.url,height:e.socialicon1.height,width:e.socialicon1.width},customSocialIcon2:e.socialicon2&&{url:e.socialicon2.url,height:e.socialicon2.height,width:e.socialicon2.width},customSocialIcon3:e.socialicon3&&{url:e.socialicon3.url,height:e.socialicon3.height,width:e.socialicon3.width},customSocialIcon4:e.socialicon4&&{url:e.socialicon4.url,height:e.socialicon4.height,width:e.socialicon4.width},customSocialIcon5:e.socialicon5&&{url:e.socialicon5.url,height:e.socialicon5.height,width:e.socialicon5.width},customTitle1:e.title1,customTitle2:e.title2,customTitle3:e.title3,customTitle4:e.title4,customTitle5:e.title5,customBody1:e.body1,customBody2:e.body2,customBody3:e.body3,customBody4:e.body4,customBody5:e.body5,customCta1:e.ctatext1,customCta2:e.ctatext2,customCta3:e.ctatext3,customCta4:e.ctatext4,customCta5:e.ctatext5,customDisplayUrl1:e.displayurl1,customDisplayUrl2:e.displayurl2,customDisplayUrl3:e.displayurl3,customDisplayUrl4:e.displayurl4,customDisplayUrl5:e.displayurl5,customSocialUrl1:e.socialurl1,customSocialUrl2:e.socialurl2,customSocialUrl3:e.socialurl3,customSocialUrl4:e.socialurl4,customSocialUrl5:e.socialurl5}}else{Object.assign(d,{width:t.rtb.banner.width,height:t.rtb.banner.height,ad:t.rtb.banner.content});try{if(t.rtb.trackers)for(let e=0;e<t.rtb.trackers[0].impression_urls.length;e++){const r=t.rtb.trackers[0].impression_urls[e],i=(0,a.Tz)(r);d.ad+=i}}catch(e){(0,a.vV)("Error appending tracking pixel",e)}}return d}(e,t,r);n.mediaType=function(e){const t=e.ad_type;return t===c.G_?c.G_:t===c.s6?c.s6:c.D4}(t),i.push(n)}}})),e.debug&&e.debug.debug_info){let t="AppNexus Debug Auction for Prebid\\n\\n"+e.debug.debug_info;t=t.replace(/(<td>|<th>)/gm,"\\t").replace(/(<\\/td>|<\\/th>)/gm,"\\n").replace(/^<br>/gm,"").replace(/(<br>\\n|<br>)/gm,"\\n").replace(/<h1>(.*)<\\/h1>/gm,"\\n\\n===== $1 =====\\n\\n").replace(/<h[2-6]>(.*)<\\/h[2-6]>/gm,"\\n\\n*** $1 ***\\n\\n").replace(/(<([^>]+)>)/gim,""),(0,a.OG)("https://console.appnexus.com/docs/understanding-the-debug-auction"),(0,a.OG)(t)}return i},getUserSyncs:function(e,t,r,i,a){if(e.iframeEnabled&&(0,g.C)(r))return[{type:"iframe",url:"https://acdn.adnxs.com/dmp/async_usersync.html"}];if(e.pixelEnabled){return["https://px.ads.linkedin.com/setuid?partner=appNexus"].map((e=>({type:"image",url:e})))}}};function G(e){const t={};Object.keys(e.params).forEach((t=>{let r=(0,b.vk)(t);r!==t&&(e.params[r]=e.params[t],delete e.params[t])})),t.sizes=P(e.sizes),t.primary_size=t.sizes[0],t.ad_types=[],t.uuid=e.bidId,e.params.placement_id?t.id=parseInt(e.params.placement_id,10):t.code=e.params.inv_code;const r=(0,a.Ez)("ast_override_div");if((0,a.O8)(r)&&""!==r){const i=decodeURIComponent(r).split(",").find((t=>t.startsWith(`${e.adUnitCode}:`)));if(i){const e=i.split(":")[1];e&&(t.force_creative_id=parseInt(e,10))}}t.allow_smaller_sizes=e.params.allow_smaller_sizes||!1,t.use_pmt_rule="boolean"==typeof e.params.use_payment_rule?e.params.use_payment_rule:"boolean"==typeof e.params.use_pmt_rule&&e.params.use_pmt_rule,t.prebid=!0,t.disable_psa=!0;let i=function(e){if(!(0,a.fp)(e.getFloor))return e.params.reserve?e.params.reserve:null;let t=e.getFloor({currency:"USD",mediaType:"*",size:"*"});if((0,a.Qd)(t)&&!isNaN(t.floor)&&"USD"===t.currency)return t.floor;return null}(e);if(i&&(t.reserve=i),e.params.position)t.position={above:1,below:2}[e.params.position]||0;else{let r=(0,s.A)(e,"mediaTypes.banner.pos")||(0,s.A)(e,"mediaTypes.video.pos");0!==r&&1!==r&&3!==r||(t.position=3===r?2:r)}e.params.traffic_source_code&&(t.traffic_source_code=e.params.traffic_source_code),e.params.private_sizes&&(t.private_sizes=P(e.params.private_sizes)),e.params.supply_type&&(t.supply_type=e.params.supply_type),e.params.pub_click&&(t.pubclick=e.params.pub_click),e.params.ext_inv_code&&(t.ext_inv_code=e.params.ext_inv_code),e.params.publisher_id&&(t.publisher_id=parseInt(e.params.publisher_id,10)),e.params.external_imp_id&&(t.external_imp_id=e.params.external_imp_id);const o=(0,f.T_)((0,f.gg)((0,s.A)(e,"ortb2Imp.ext.data.keywords")),e.params?.keywords);o.length>0&&(t.keywords=o);let n=(0,s.A)(e,"ortb2Imp.ext.gpid")||(0,s.A)(e,"ortb2Imp.ext.data.pbadslot");if(n&&(t.gpid=n),(e.mediaType===c.s6||(0,s.A)(e,`mediaTypes.${c.s6}`))&&(t.ad_types.push(c.s6),0===t.sizes.length&&(t.sizes=P([1,1])),e.nativeParams)){const r=function(e){const t={};return Object.keys(e).forEach((r=>{const i=A[r]&&A[r].serverName||A[r]||r,s=A[r]&&A[r].requiredParams;t[i]=Object.assign({},s,e[r]);if(!(i!==A.image.serverName&&i!==A.icon.serverName)&&t[i].sizes){let e=t[i].sizes;((0,a.Uu)(e)||(0,a.cy)(e)&&e.length>0&&e.every((e=>(0,a.Uu)(e))))&&(t[i].sizes=P(t[i].sizes))}i===A.privacyLink&&(t.privacy_supported=!0)})),t}(e.nativeParams);t[c.s6]={layouts:[r]}}{const r=(0,s.A)(e,`mediaTypes.${c.G_}`),i=(0,s.A)(e,"mediaTypes.video.context");t.hb_source=r&&"adpod"===i?7:1,(e.mediaType===c.G_||r)&&t.ad_types.push(c.G_),(e.mediaType===c.G_||r&&"outstream"!==i)&&(t.require_asset_url=!0),e.params.video&&(t.video={},Object.keys(e.params.video).filter((e=>(0,p.mK)(x,e))).forEach((r=>{switch(r){case"context":case"playback_method":let i=e.params.video[r];i=(0,a.cy)(i)?i[0]:i,t.video[r]=S[r][i];break;case"frameworks":break;default:t.video[r]=e.params.video[r]}})),e.params.video.frameworks&&(0,a.cy)(e.params.video.frameworks)&&(t.video_frameworks=e.params.video.frameworks)),r&&(t.video=t.video||{},Object.keys(r).filter((e=>(0,p.mK)(C,e))).forEach((e=>{switch(e){case"minduration":case"maxduration":"number"!=typeof t.video[e]&&(t.video[e]=r[e]);break;case"skip":"boolean"!=typeof t.video.skippable&&(t.video.skippable=1===r[e]);break;case"skipafter":"number"!=typeof t.video.skipoffset&&(t.video.skippoffset=r[e]);break;case"playbackmethod":if("number"!=typeof t.video.playback_method){let i=r[e];i=(0,a.cy)(i)?i[0]:i,i>=1&&i<=4&&(t.video.playback_method=i)}break;case"api":if(!t.video_frameworks&&(0,a.cy)(r[e])){let i=r[e].map((e=>{let t=4===e?5:5===e?4:e;if(t>=1&&t<=5)return t})).filter((e=>e));t.video_frameworks=i}break;case"startdelay":case"plcmt":case"placement":if("number"!=typeof t.video.context){const e=r.plcmt,i=r.placement,a=r.startdelay,s=function(e,t){if(!e)return;if(2===e){if(void 0===t)return;if(0===t)return"accompanying_content_pre_roll";if(-1===t)return"accompanying_content_mid_roll";if(-2===t)return"accompanying_content_post_roll"}else{if(3===e)return"interstitial";if(4===e)return"outstream"}}(e,a)||function(e){if(!e)return;if(2===e)return"in-banner";if(3===e)return"outstream";if(4===e)return"in-feed";if(5===e)return"intersitial"}(i)||function(e){if(!e)return;if(0===e)return"pre_roll";if(-1===e)return"mid_roll";if(-2===e)return"post_roll"}(a);t.video.context=S.context[s]}}}))),e.renderer&&(t.video=Object.assign({},t.video,{custom_renderer_present:!0}))}return e.params.frameworks&&(0,a.cy)(e.params.frameworks)&&(t.banner_frameworks=e.params.frameworks),(0,s.A)(e,`mediaTypes.${c.D4}`)&&t.ad_types.push(c.D4),0===t.ad_types.length&&delete t.ad_types,t}function P(e){let t=[],r={};if((0,a.cy)(e)&&2===e.length&&!(0,a.cy)(e[0]))r.width=parseInt(e[0],10),r.height=parseInt(e[1],10),t.push(r);else if("object"==typeof e)for(let i=0;i<e.length;i++){let a=e[i];r={},r.width=parseInt(a[0],10),r.height=parseInt(a[1],10),t.push(r)}return t}function M(e){return!!e.params.user}function $(e){return!!parseInt(e.params.member,10)}function B(e){if(e.params)return!!e.params.app}function K(e){return e.params&&e.params.app?!!e.params.app.id:!!e.params.app}function V(e){return!!e.debug}function L(e){return e.mediaTypes&&e.mediaTypes.video&&e.mediaTypes.video.context===c.LM}function W(e){let t=!1;const r=e.params,i=e.params.video;return r.frameworks&&(0,a.cy)(r.frameworks)&&(t=(0,p.mK)(e.params.frameworks,6)),!t&&i&&i.frameworks&&(0,a.cy)(i.frameworks)&&(t=(0,p.mK)(e.params.video.frameworks,6)),t}function H(e,t,r){(0,a.Im)(e.video)&&(e.video={}),e.video[t]=r}function J(e,t){!function(e){try{const t=document.getElementById(e).querySelectorAll("div[id^=\'google_ads\']");t[0]&&t[0].style.setProperty("display","none")}catch(e){}}(e.adUnitCode),function(e){try{const t=document.getElementById(e).querySelectorAll("script[id^=\'sas_script\']");t[0].nextSibling&&"iframe"===t[0].nextSibling.localName&&t[0].nextSibling.style.setProperty("display","none")}catch(e){}}(e.adUnitCode),e.renderer.push((()=>{(t?.defaultView||window).ANOutstreamVideo.renderAd({tagId:e.adResponse.tag_id,sizes:[e.getSize().split("x")],targetId:e.adUnitCode,uuid:e.adResponse.uuid,adResponse:e.adResponse,rendererOptions:e.renderer.getConfig()},Q.bind(null,e))}))}function Q(e,t,r){e.renderer.handleVideoEvent({id:t,eventName:r})}(0,d.a$)(q),(0,i.E)("appnexusBidAdapter")}},e=>{e.O(0,[802,444,126,247,982,698,85],(()=>{return t=791,e(e.s=t);var t}));e.O()}]);\n(self.pbjsChunk=self.pbjsChunk||[]).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()}]);\n(self.pbjsChunk=self.pbjsChunk||[]).push([[662],{6056:(n,t,e)=>{var o=e(7873),a=e(1069),s=e(3172),i=e(3272),c=e(8046),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()}]);\n(self.pbjsChunk=self.pbjsChunk||[]).push([[301],{1057:(n,e,s)=>{var t=s(7873),a=s(3272),l=s(7274);let p=!1;a.$W.getConfig("consentManagement",(n=>{null==n?.consentManagement?.gpp||p||((0,l.l)("usnat",[7]),p=!0)})),(0,t.E)("gppControl_usnat")}},n=>{n.O(0,[82,802,85],(()=>{return e=1057,n(n.s=e);var e}));n.O()}]);\n(self.pbjsChunk=self.pbjsChunk||[]).push([[534],{8194:(n,t,e)=>{var s=e(7873),r=e(3272),o=e(7274),i=e(3172),a=e(1069);const l={Version:0,Gpc:0,SharingNotice:0,SaleOptOutNotice:0,SharingOptOutNotice:0,TargetedAdvertisingOptOutNotice:0,SensitiveDataProcessingOptOutNotice:0,SensitiveDataLimitUseNotice:0,SaleOptOut:0,SharingOptOut:0,TargetedAdvertisingOptOut:0,SensitiveDataProcessing:12,KnownChildSensitiveDataConsents:2,PersonalDataConsents:0,MspaCoveredTransaction:0,MspaOptOutOptionMode:0,MspaServiceProviderMode:0};function c(n){let{nullify:t=[],move:e={},fn:s}=n,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:l;return e=Object.fromEntries(Object.entries(e).map((n=>{let[t,e]=n;return[t,Object.fromEntries(Object.entries(e).map((n=>{let[t,e]=n;return[t,Array.isArray(e)?e:[e]]})).map((n=>{let[t,e]=n;return[--t,e.map((n=>--n))]})))]}))),function(n){const o=Object.fromEntries(Object.entries(r).map((t=>{let[s,r]=t,o=null;if(r>0){if(o=Array(r).fill(null),Array.isArray(n[s])){const t=e[s]||{},i=[];n[s].forEach(((n,e)=>{const[s,a]=t.hasOwnProperty(e)?[t[e],!0]:[[e],!1];s.forEach((t=>{t<r&&!i.includes(t)&&(o[t]=n,a&&i.push(t))}))}))}}else null!=n[s]&&(o=Array.isArray(n[s])?null:n[s]);return[s,o]})));return t.forEach((n=>(0,i.J)(o,n,null))),s&&s(n,o),o}}function u(n,t){t.KnownChildSensitiveDataConsents=0===n.KnownChildSensitiveDataConsents?[0,0]:[1,1]}const p={7:n=>n,8:c({move:{SensitiveDataProcessing:{1:9,2:10,3:8,4:[1,2],5:12,8:3,9:4}},fn(n,t){n.KnownChildSensitiveDataConsents.some((n=>0!==n))&&(t.KnownChildSensitiveDataConsents=[1,1])}}),9:c({fn:u}),10:c({fn:u}),11:c({move:{SensitiveDataProcessing:{3:4,4:5,5:3}},fn:u}),12:c({fn(n,t){const e=n.KnownChildSensitiveDataConsents;let s;s=e.some((n=>0!==n))?2===e[1]&&2===e[2]?[2,1]:[1,1]:[0,0],t.KnownChildSensitiveDataConsents=s}})},f={8:"usca",9:"usva",10:"usco",11:"usut",12:"usct"},O=(()=>{const n=Object.keys(f).map(Number);return function(){let{sections:t={},sids:e=n}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.map((n=>{const e=(0,a.h0)(`Cannot set up MSPA controls for SID ${n}:`),s=t[n]||{},r=s.normalizeAs||n;if(!p.hasOwnProperty(r))return void e.logError(`no normalization rules are known for SID ${r}`);const o=s.name||f[n];if("string"==typeof o)return[o,[n],p[r]];e.logError("cannot determine GPP section name")})).filter((n=>null!=n))}})(),v=[];r.$W.getConfig("consentManagement",(n=>{const t=n.consentManagement?.gpp;if(t){for(;v.length;)v.pop()();O(t?.mspa||{}).forEach((n=>{let[t,e,s]=n;return v.push((0,o.l)(t,e,s))}))}})),(0,s.E)("gppControl_usstates")}},n=>{n.O(0,[82,802,85],(()=>{return t=8194,n(n.s=t);var t}));n.O()}]);\n(self.pbjsChunk=self.pbjsChunk||[]).push([[584],{4232:(t,e,o)=>{var n=o(7873),a=o(1252),d=o(6881),r=o(3272),s=o(8969),i=o(9214),l=o(5901),c=o(1069),u=o(3172),p=o(433);let f={},g=!1;function b(t){return(0,a.eu)(t)}const m=t=>(r.$W.getConfig("gptPreAuction")||{}).mcmEnabled?t.replace(/(^\\/\\d*),\\d*\\//,"$1/"):t;function h(t){(0,c.JE)("pbadslot is deprecated and will soon be removed, use gpid instead",t)}const I=function(t,e){const o=(t=>{const{customGptSlotMatching:e}=f;if(!(0,c.II)())return;const o=t.reduce(((t,e)=>(t[e.code]=t[e.code]||[],t[e.code].push(e),t)),{}),n={};return window.googletag.pubads().getSlots().forEach((t=>{const a=(0,l.I6)(Object.keys(o),e?e(t):(0,c.iC)(t));if(a){const e=n[a]=t.getAdUnitPath(),d={name:"gam",adslot:m(e)};o[a].forEach((t=>{(0,u.J)(t,"ortb2Imp.ext.data.adserver",Object.assign({},t.ortb2Imp?.ext?.data?.adserver,d))}))}})),n})(e),{useDefaultPreAuction:n,customPreAuction:a}=f;e.forEach((t=>{t.ortb2Imp=t.ortb2Imp||{},t.ortb2Imp.ext=t.ortb2Imp.ext||{},t.ortb2Imp.ext.data=t.ortb2Imp.ext.data||{};const e=t.ortb2Imp.ext;if(a||n){e.data?.pbadslot&&h(t);let d,r=(0,p.A)(e,"data.adserver.adslot");a?d=a(t,r,o?.[t.code]):n&&(d=((t,e,o)=>{const n=t.ortb2Imp.ext.data;if(n.pbadslot)return n.pbadslot;if((0,c.II)()){var a=window.googletag.pubads().getSlots().filter((t=>t.getAdUnitPath()===o));if(0!==a.length)return 1===a.length?e:`${e}#${t.code}`}})(t,r,o?.[t.code])),d&&(e.gpid=e.data.pbadslot=d)}else{h(t);const o=(t=>{const e=t.ortb2Imp.ext.data,{customPbAdSlot:o}=f;if(!e.pbadslot)if(o)e.pbadslot=o(t.code,(0,p.A)(e,"adserver.adslot"));else{try{const o=document.getElementById(t.code);if(o.dataset.adslotid)return void(e.pbadslot=o.dataset.adslotid)}catch(t){}if(!(0,p.A)(e,"adserver.adslot"))return e.pbadslot=t.code,!0;e.pbadslot=e.adserver.adslot}})(t);e.gpid||o||(e.gpid=e.data.pbadslot)}}));for(var d=arguments.length,r=new Array(d>2?d-2:0),s=2;s<d;s++)r[s-2]=arguments[s];return t.call(undefined,e,...r)},A=(t,e)=>{const o=function(t){const e={};return a.Cn.forEach((o=>{const n=t.flatMap((t=>t)).filter((t=>t.taxonomy===o)).map((t=>t.values));e[o]=n.length?n.reduce(((t,e)=>t.filter((t=>e.includes(t))))):[],e[o]={values:e[o]}})),e}(function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:d.n.index;return t.map((t=>e.getAuction({auctionId:t})?.getFPD()?.global)).map(b).filter((t=>t))}(function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:d.n;return Object.values(t).flatMap((t=>Object.entries(t))).filter((t=>t[0]===s.xS.AD_ID||t[0].startsWith(s.xS.AD_ID+"_"))).flatMap((t=>t[1])).map((t=>e.findBidByAdId(t)?.auctionId)).filter((t=>null!=t)).filter(c.hj)}(e)));window.googletag.setConfig&&window.googletag.setConfig({pps:{taxonomies:o}}),t(e)},v=t=>{f=(0,c.Up)(t,["enabled",t=>!1!==t,"customGptSlotMatching",t=>"function"==typeof t&&t,"customPbAdSlot",t=>"function"==typeof t&&t,"customPreAuction",t=>"function"==typeof t&&t,"useDefaultPreAuction",t=>t??!0]),f.enabled?g||((0,i.Yn)("makeBidRequests").before(I),(0,i.Yn)("targetingDone").after(A),g=!0):((0,c.fH)("GPT Pre-Auction: Turning off module"),f={},(0,i.Yn)("makeBidRequests").getHooks({hook:I}).remove(),(0,i.Yn)("targetingDone").getHooks({hook:A}).remove(),g=!1)};r.$W.getConfig("gptPreAuction",(t=>v(t.gptPreAuction))),v({}),(0,n.E)("gptPreAuction")}},t=>{t.O(0,[5,802,85],(()=>{return e=4232,t(t.s=e);var e}));t.O()}]);\n(self.pbjsChunk=self.pbjsChunk||[]).push([[723],{2605:(e,t,r)=>{var i=r(7873),s=r(1069),n=r(433),a=r(3172),o=r(9115),p=r(1371);const d={...r(11).Z,placement:e=>(0,s.Fq)(e)&&e>=1&&e<=5,plcmt:e=>(0,s.Fq)(e)&&e>=1&&e<=4,delivery:e=>Array.isArray(e)&&e.every((e=>e>=1&&e<=3)),pos:e=>(0,s.Fq)(e)&&e>=1&&e<=7},c={context:e=>e!==p.LM,mimes:d.mimes,maxduration:d.maxduration,protocols:d.protocols},u={code:"sovrn",supportedMediaTypes:[p.D4,p.G_],gvlid:13,isBidRequestValid:function(e){const t=e?.mediaTypes?.video;return!(!e.params.tagid||isNaN(parseFloat(e.params.tagid))||!isFinite(e.params.tagid)||t&&!Object.keys(c).every((e=>c[e](t[e]))))},buildRequests:function(e,t){try{let r,i,o,p,c=[];(0,s.bu)(e,(function(e){!o&&e.userIdAsEids&&(o=e.userIdAsEids,o.forEach((function(e){e.uids&&e.uids[0]&&"criteo.com"===e.source&&(p=e.uids[0].id)}))),e.schain&&(i=i||e.schain),r=r||(0,s.u5)("iv",e.params);const a={adunitcode:e.adUnitCode,id:e.bidId,tagid:String((0,s.u5)("tagid",e.params)),bidfloor:l(e)};if((0,n.A)(e,"mediaTypes.banner")){let t=(0,n.A)(e,"mediaTypes.banner.sizes")||e.sizes;t=(0,s.cy)(t)&&(0,s.cy)(t[0])?t:[t],t=t.filter((e=>(0,s.cy)(e)));const r=t.map((e=>({w:parseInt(e[0],10),h:parseInt(e[1],10)})));a.banner={format:r,w:1,h:1}}(0,n.A)(e,"mediaTypes.video")&&(a.video=function(e){const t={},r=(0,n.A)(e,"sizes"),i=(0,n.A)(e,"mediaTypes.video",{}),a=(0,n.A)(e,"params.video",{}),o={};if(r){const e=Array.isArray(r[0])?r[0]:r;o.w=e[0],o.h=e[1]}else if(Array.isArray(i.playerSize)){const e=Array.isArray(i.playerSize[0])?i.playerSize[0]:i.playerSize;o.w=e[0],o.h=e[1]}const p={...o,...i,...a};return Object.keys(d).forEach((e=>{p.hasOwnProperty(e)&&(d[e](p[e])?t[e]=p[e]:(0,s.JE)(`The OpenRTB video param ${e} has been skipped due to misformating. Please refer to OpenRTB 2.5 spec.`))})),t}(e)),a.ext=(0,s.u5)("ext",e.ortb2Imp)||void 0;const u=(0,s.u5)("segments",e.params);u&&(a.ext=a.ext||{},a.ext.deals=u.split(",").map((e=>e.trim())));const m=e?.ortb2Imp?.ext?.ae;t.paapi?.enabled&&(0,s.Fq)(m)?(a.ext=a.ext||{},a.ext.ae=m):a.ext?.ae&&delete a.ext.ae,c.push(a)}));const u=t.ortb2||{},m=u.site||{};m.page=t.refererInfo.page,m.domain=t.refererInfo.domain;const g=(0,n.A)(t,"timeout"),y={id:(0,s.s0)(),imp:c,site:m,user:u.user||{},tmax:g};i&&(y.source={ext:{schain:i}});const b=(0,n.A)(t,"ortb2.source.tid");b&&(0,a.J)(y,"source.tid",b);(0,n.A)(t,"ortb2.regs.coppa")&&(0,a.J)(y,"regs.coppa",1),t.gdprConsent&&((0,a.J)(y,"regs.ext.gdpr",+t.gdprConsent.gdprApplies),(0,a.J)(y,"user.ext.consent",t.gdprConsent.consentString)),t.uspConsent&&(0,a.J)(y,"regs.ext.us_privacy",t.uspConsent),t.gppConsent&&((0,a.J)(y,"regs.gpp",t.gppConsent.gppString),(0,a.J)(y,"regs.gpp_sid",t.gppConsent.applicableSections)),t?.ortb2?.device&&(y.device=y.device||{},(0,s.D9)(y.device,t.ortb2.device)),o&&((0,a.J)(y,"user.ext.eids",o),p&&(0,a.J)(y,"user.ext.prebid_criteoid",p));let f="https://ap.lijit.com/rtb/bid?src=prebid_prebid_9.23.0";return r&&(f+=`&iv=${r}`),{method:"POST",url:f,data:JSON.stringify(y),options:{contentType:"text/plain"}}}catch(e){(0,s.vV)("Could not build bidrequest, error deatils:",e)}},interpretResponse:function(e){let{body:{id:t,seatbid:r,ext:i}}=e;if(!t||!r||!Array.isArray(r))return[];try{let e=r.filter((e=>e)).map((e=>e.bid.map((e=>{const t={requestId:e.impid,cpm:parseFloat(e.price),width:parseInt(e.w),height:parseInt(e.h),creativeId:e.crid||e.id,dealId:e.dealid||null,currency:"USD",netRevenue:!0,mediaType:e.nurl?p.D4:p.G_,ttl:e.ext?.ttl||90,meta:{advertiserDomains:e&&e.adomain?e.adomain:[]}};return e.nurl?t.ad=decodeURIComponent(`${e.adm}<img src="${e.nurl}">`):t.vastXml=decodeURIComponent(e.adm),t})))).flat(),t=null;if((0,s.cy)(i?.igbid)){const e=i.seller,r=i.decisionLogicUrl,n=i.sellerTimeout;i.igbid.filter((e=>{return t=e,!(0,s.xQ)(t.impid)&&(0,s.cy)(t.igbuyer)&&t.igbuyer.length;var t})).forEach((i=>{const a={};i.igbuyer.filter((e=>{return t=e,!(0,s.xQ)(t.igdomain);var t})).forEach((e=>{a[e.igdomain]=e.buyerdata}));const o=[...Object.keys(a)];o.length&&(t=t||{},t[i.impid]={seller:e,decisionLogicUrl:r,sellerTimeout:n,interestGroupBuyers:o,perBuyerSignals:a})}))}return t?(t=Object.entries(t).map((e=>{let[t,r]=e;return{bidId:t,config:Object.assign({auctionSignals:{}},r)}})),{bids:e,paapi:t}):e}catch(e){return(0,s.vV)("Could not interpret bidresponse, error details:",e),e}},getUserSyncs:function(e,t,r,i,s){try{const a=[];if(t&&0!==t.length){if(e.iframeEnabled){const e=t.filter((e=>(0,n.A)(e,"body.ext.iid"))).map((e=>e.body.ext.iid)),o=[];r&&r.gdprApplies&&"string"==typeof r.consentString&&o.push(["gdpr_consent",r.consentString]),i&&o.push(["us_privacy",i]),s&&(o.push(["gpp",s.gppString]),o.push(["gpp_sid",s.applicableSections])),e[0]&&(o.push(["informer",e[0]]),a.push({type:"iframe",url:"https://ce.lijit.com/beacon?"+o.map((e=>e.join("="))).join("&")}))}e.pixelEnabled&&t.filter((e=>(0,n.A)(e,"body.ext.sync.pixels"))).reduce(((e,t)=>e.concat(t.body.ext.sync.pixels)),[]).map((e=>e.url)).forEach((e=>a.push({type:"image",url:e})))}return a}catch(e){return[]}}};function l(e){const t=e.getFloor&&"function"==typeof e.getFloor?e.getFloor({currency:"USD",mediaType:e.mediaTypes&&e.mediaTypes.banner?"banner":"video",size:"*"}):{},r=parseFloat(t?.floor);if(!isNaN(r))return r;const i=parseFloat((0,s.u5)("bidfloor",e.params));return isNaN(i)?void 0:i}(0,o.a$)(u),(0,i.E)("sovrnBidAdapter")}},e=>{e.O(0,[498,802,85],(()=>{return t=2605,e(e.s=t);var t}));e.O()}]);\n(self.pbjsChunk=self.pbjsChunk||[]).push([[103],{7967:(t,e,n)=>{var d=n(7873),i=n(9115);const s="testbidder",a={code:s,isBidRequestValid:function(t){return!!t.params},buildRequests:function(t,e){return t.map((t=>({method:"GET",url:"",data:{mock:!0,bidId:t.bidId,testRequestId:t.params.requestId??null,testCPM:t.params.cpm??null,testWidth:t.params.width??null,testHeight:t.params.height??null,testAd:t.params.ad??null,testTTL:t.params.ttl??null},bidRequestId:t.bidId})))},interpretResponse:function(t,e){const n=e.data.testWidth||300,d=e.data.testHeight||250,i=e.data.testRequestId||e.bidRequestId,a=`<!DOCTYPE html>\\n <html>\\n <head>\\n <meta charset="utf-8">\\n <style>\\n body { margin: 0; padding: 0; }\\n .creative-container {\\n position: relative;\\n width: ${n}px;\\n height: ${d}px;\\n background: #f0f0f0;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n overflow: hidden;\\n }\\n </style>\\n </head>\\n <body>\\n <div id="creative-${i}" class="creative-container">\\n <div style="text-align: center;">\\n <p>Test Ad</p>\\n <p>${e.data.testAd}</p>\\n <p>${n}x${d}</p>\\n </div>\\n <script>\\n (function() {\\n var size = { width: ${n}, height: ${d} };\\n window.parent.postMessage(JSON.stringify({\\n message: \'Prebid Creative Loaded\',\\n adId: \'${i}\',\\n size: size\\n }), \'*\');\\n })();\\n <\\/script>\\n </div>\\n </body>\\n </html>`;return[{requestId:e.data.testRequestId||e.bidRequestId,cpm:e.data.testCPM||1.5,currency:"USD",width:n,height:d,mediaType:"banner",ad:a,ttl:e.data.testTTL||300,creativeId:"test-creative-id",netRevenue:!0,bidderCode:s}]},onTimeout:function(t){},onBidWon:function(t){}};(0,i.a$)(a),(0,d.E)("testbidderBidAdapter")}},t=>{t.O(0,[802,85],(()=>{return e=7967,t(t.s=e);var e}));t.O()}]);\n})(),pbjs.processQueue();\n\n//# sourceURL=webpack://@wrapp/wrapper/../../../home/wrapp/builds/8EFA792FE841A/0.0.26/prebid.js?')},"../../../home/wrapp/node_modules/css-loader/dist/cjs.js!./wrapper/css/sticky.css":(module,__webpack_exports__,__webpack_require__)=>{"use strict";eval('__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _home_wrapp_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../home/wrapp/node_modules/css-loader/dist/runtime/noSourceMaps.js */ "../../../home/wrapp/node_modules/css-loader/dist/runtime/noSourceMaps.js");\n/* harmony import */ var _home_wrapp_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_home_wrapp_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _home_wrapp_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../home/wrapp/node_modules/css-loader/dist/runtime/api.js */ "../../../home/wrapp/node_modules/css-loader/dist/runtime/api.js");\n/* harmony import */ var _home_wrapp_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_home_wrapp_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _home_wrapp_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_home_wrapp_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `\n.ad-anchor {\n box-sizing: border-box;\n z-index: 9999;\n background-color: #f0f0f0;\n border: 1px dotted #ccc;\n place-items: center;\n padding: 5px;\n transition: all 0.3s ease;\n display: flex;\n align-items: flex-start;\n justify-content: space-between; /* space between .ad-slot and .ad-action-buttons */\n}\n\n.ad-slot {\n flex-grow: 1; /* take up remaining space in center */\n flex-shrink: 1;\n color: #888; /* text color */\n text-align: center; /* center-align content inside div */\n display: flex;\n align-items: center; /* vertically center align all children */\n justify-content: center; /* horizontally center align all children */\n overflow: hidden;\n}\n\n.ad-action-buttons {\n display: flex; /* use flexbox for the buttons */\n gap: 5px; /* add 5px horizontal gap between buttons */\n flex-shrink: 0;\n}\n\n.ad-action-btn {\n box-sizing: border-box;\n width: 20px;\n height: 20px;\n color: #888;\n background: #f0f0f0;\n border: 1px solid #ccc;\n font-size: 20px;\n font-weight: normal;\n font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;\n line-height: 18px;\n text-align: center;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n\n/* top sticky ad */\n.ad-TP {\n position: sticky;\n top: 0;\n left: 0;\n width: calc(100vw - 25px);\n height: auto;\n min-height: 10vh; /* minimum height 10% of viewport */\n max-height: 30vh; /* maximum height 30% of viewport */\n}\n\n/* bottom sticky ad */\n.ad-BM {\n position: fixed;\n bottom: 0;\n left: 0;\n width: 100%; /* "fixed" position width goes by view port */\n height: auto;\n min-height: 10vh; /* minimum height 10% of viewport */\n max-height: 30vh; /* maximum height 30% of viewport */\n/* \n max-width: 100%;\n left: 50%;\n transform: translateX(-50%);\n margin-left: calc(-50vw + 50%); */\n}\n\n/* right rail sticky ad */\n.ad-RG {\n position: fixed;\n top: 50%;\n right: 0;\n width: 300px;\n height: 600px;\n transform: translateY(-50%);\n}\n\n/* left rail sticky ad */\n.ad-LF {\n position: fixed;\n top: 50%;\n left: 0;\n width: 300px;\n height: 600px;\n transform: translateY(-50%);\n}\n\n/* minimized states */\n.horizontal-minimized {\n height: 30px;\n min-height: 30px;\n overflow: hidden;\n}\n\n.vertical-minimized {\n width: 55px;\n min-width: 55px;\n overflow: hidden;\n}\n\n/* hidden state */\n.hidden {\n display: none;\n}\n\n`, ""]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://@wrapp/wrapper/./wrapper/css/sticky.css?../../../home/wrapp/node_modules/css-loader/dist/cjs.js')},"../../../home/wrapp/node_modules/css-loader/dist/runtime/api.js":module=>{"use strict";eval('\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = "";\n var needLayer = typeof item[5] !== "undefined";\n if (item[4]) {\n content += "@supports (".concat(item[4], ") {");\n }\n if (item[2]) {\n content += "@media ".concat(item[2], " {");\n }\n if (needLayer) {\n content += "@layer".concat(item[5].length > 0 ? " ".concat(item[5]) : "", " {");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += "}";\n }\n if (item[2]) {\n content += "}";\n }\n if (item[4]) {\n content += "}";\n }\n return content;\n }).join("");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === "string") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== "undefined") {\n if (typeof item[5] === "undefined") {\n item[5] = layer;\n } else {\n item[1] = "@layer".concat(item[5].length > 0 ? " ".concat(item[5]) : "", " {").concat(item[1], "}");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = "@media ".concat(item[2], " {").concat(item[1], "}");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = "".concat(supports);\n } else {\n item[1] = "@supports (".concat(item[4], ") {").concat(item[1], "}");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};\n\n//# sourceURL=webpack://@wrapp/wrapper/../../../home/wrapp/node_modules/css-loader/dist/runtime/api.js?')},"../../../home/wrapp/node_modules/css-loader/dist/runtime/noSourceMaps.js":module=>{"use strict";eval("\n\nmodule.exports = function (i) {\n return i[1];\n};\n\n//# sourceURL=webpack://@wrapp/wrapper/../../../home/wrapp/node_modules/css-loader/dist/runtime/noSourceMaps.js?")},"./wrapper/css/sticky.css":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval('__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _home_wrapp_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../../home/wrapp/node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "../../../home/wrapp/node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");\n/* harmony import */ var _home_wrapp_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_home_wrapp_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _home_wrapp_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../../home/wrapp/node_modules/style-loader/dist/runtime/styleDomAPI.js */ "../../../home/wrapp/node_modules/style-loader/dist/runtime/styleDomAPI.js");\n/* harmony import */ var _home_wrapp_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_home_wrapp_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _home_wrapp_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../../home/wrapp/node_modules/style-loader/dist/runtime/insertBySelector.js */ "../../../home/wrapp/node_modules/style-loader/dist/runtime/insertBySelector.js");\n/* harmony import */ var _home_wrapp_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_home_wrapp_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _home_wrapp_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../../home/wrapp/node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "../../../home/wrapp/node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");\n/* harmony import */ var _home_wrapp_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_home_wrapp_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _home_wrapp_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../../home/wrapp/node_modules/style-loader/dist/runtime/insertStyleElement.js */ "../../../home/wrapp/node_modules/style-loader/dist/runtime/insertStyleElement.js");\n/* harmony import */ var _home_wrapp_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_home_wrapp_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _home_wrapp_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../../home/wrapp/node_modules/style-loader/dist/runtime/styleTagTransform.js */ "../../../home/wrapp/node_modules/style-loader/dist/runtime/styleTagTransform.js");\n/* harmony import */ var _home_wrapp_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_home_wrapp_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var _home_wrapp_node_modules_css_loader_dist_cjs_js_sticky_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../../home/wrapp/node_modules/css-loader/dist/cjs.js!./sticky.css */ "../../../home/wrapp/node_modules/css-loader/dist/cjs.js!./wrapper/css/sticky.css");\n\n \n \n \n \n \n \n \n \n \n\nvar options = {};\n\noptions.styleTagTransform = (_home_wrapp_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());\noptions.setAttributes = (_home_wrapp_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());\noptions.insert = _home_wrapp_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");\noptions.domAPI = (_home_wrapp_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());\noptions.insertStyleElement = (_home_wrapp_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());\n\nvar update = _home_wrapp_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_home_wrapp_node_modules_css_loader_dist_cjs_js_sticky_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);\n\n\n\n\n /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_home_wrapp_node_modules_css_loader_dist_cjs_js_sticky_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _home_wrapp_node_modules_css_loader_dist_cjs_js_sticky_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _home_wrapp_node_modules_css_loader_dist_cjs_js_sticky_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);\n\n\n//# sourceURL=webpack://@wrapp/wrapper/./wrapper/css/sticky.css?')},"../../../home/wrapp/node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js":module=>{"use strict";eval('\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = "".concat(id, " ").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};\n\n//# sourceURL=webpack://@wrapp/wrapper/../../../home/wrapp/node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js?')},"../../../home/wrapp/node_modules/style-loader/dist/runtime/insertBySelector.js":module=>{"use strict";eval('\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === "undefined") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error("Couldn\'t find a style target. This probably means that the value for the \'insert\' parameter is invalid.");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;\n\n//# sourceURL=webpack://@wrapp/wrapper/../../../home/wrapp/node_modules/style-loader/dist/runtime/insertBySelector.js?')},"../../../home/wrapp/node_modules/style-loader/dist/runtime/insertStyleElement.js":module=>{"use strict";eval('\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement("style");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;\n\n//# sourceURL=webpack://@wrapp/wrapper/../../../home/wrapp/node_modules/style-loader/dist/runtime/insertStyleElement.js?')},"../../../home/wrapp/node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js":(module,__unused_webpack_exports,__webpack_require__)=>{"use strict";eval('\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = true ? __webpack_require__.nc : 0;\n if (nonce) {\n styleElement.setAttribute("nonce", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;\n\n//# sourceURL=webpack://@wrapp/wrapper/../../../home/wrapp/node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js?')},"../../../home/wrapp/node_modules/style-loader/dist/runtime/styleDomAPI.js":module=>{"use strict";eval('\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = "";\n if (obj.supports) {\n css += "@supports (".concat(obj.supports, ") {");\n }\n if (obj.media) {\n css += "@media ".concat(obj.media, " {");\n }\n var needLayer = typeof obj.layer !== "undefined";\n if (needLayer) {\n css += "@layer".concat(obj.layer.length > 0 ? " ".concat(obj.layer) : "", " {");\n }\n css += obj.css;\n if (needLayer) {\n css += "}";\n }\n if (obj.media) {\n css += "}";\n }\n if (obj.supports) {\n css += "}";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== "undefined") {\n css += "\\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), " */");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === "undefined") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;\n\n//# sourceURL=webpack://@wrapp/wrapper/../../../home/wrapp/node_modules/style-loader/dist/runtime/styleDomAPI.js?')},"../../../home/wrapp/node_modules/style-loader/dist/runtime/styleTagTransform.js":module=>{"use strict";eval("\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;\n\n//# sourceURL=webpack://@wrapp/wrapper/../../../home/wrapp/node_modules/style-loader/dist/runtime/styleTagTransform.js?")},"./wrapper/src/abTests.ts":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getTestAdSlots: () => (/* binding */ getTestAdSlots)\n/* harmony export */ });\n/* harmony import */ var xxhash_wasm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! xxhash-wasm */ \"../../../home/wrapp/node_modules/xxhash-wasm/esm/xxhash-wasm.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils */ \"./wrapper/src/utils.ts\");\n\n\nconst MAX_HASH_32 = Number(2 ** 32 - 1); // max possible value for xxHash32\n/**\n *\n * @param audienceId can be either userId or sessionId\n * @param testId can be either testId or experimentId\n * @returns number between [0, 1]\n */\nasync function getProjection(audienceId, testId) {\n const { h32 } = await (0,xxhash_wasm__WEBPACK_IMPORTED_MODULE_0__[\"default\"])();\n const data = `${audienceId}:${testId}`;\n // compute hash\n const xxHash32 = h32(data, 0); // seed 0 explicitly\n // normalize to [0, 1]\n const projection = parseFloat((Number(xxHash32) / Number(MAX_HASH_32)).toFixed(2));\n if (projection < 0 || projection > 1) {\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleError)(`projection '${projection}' not between 0 and 1`, true);\n }\n return projection;\n}\nasync function getTreatment(test, projection) {\n let treatment = null;\n try {\n const url = `${wrapperConfig.t /*testsAPIEndpoint*/}/allocations?testId=${test.i /*testId*/}`;\n const response = await fetch(url, {\n method: \"GET\",\n headers: {\n \"Content-Type\": \"text/plain\"\n }\n });\n switch (response.status) {\n case 200:\n let allocations = await response.json();\n let cumAlloc = 0;\n test.tm /*treatments*/.forEach(tr => {\n tr.a /*allocation*/ = allocations.find(alloc => alloc.i === tr.i /*id*/)?.a; // adds values to wrapperConfig.inventory.tests[].treatment[]\n cumAlloc += tr.a /*allocation*/ ?? 0;\n if ((treatment === null) && (projection <= cumAlloc)) {\n treatment = tr;\n }\n });\n break;\n case 204:\n default:\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleError)(`http error! ${response.status} ${response.statusText}`);\n }\n }\n catch (error) {\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleError)('error fetching tests data in getTreatment():', false, error);\n }\n return treatment;\n}\nasync function getTestAdSlots(inventory) {\n const adSlotOverridesMap = new Map();\n const testPromises = inventory.ts /*tests*/?.map(async (test) => {\n // TODO: support multiple randomization method, userId vs. sessionId\n const projection = await getProjection((0,_utils__WEBPACK_IMPORTED_MODULE_1__.getUserId)(), test.i /*testId*/);\n const treatment = await getTreatment(test, projection);\n if (treatment === null) {\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleDebug)(`unable to find treatment for testId '${test.i /*testId*/}' and projection: ${projection}, proceeding without tests ...`);\n return;\n }\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleDebug)(`test details testId: '${test.i /*testId*/}', projection: ${projection}, treatmentId: '${treatment.i /*id*/}'`);\n // multiple tests can include same ad unit, but not override same attribute (1 level deep)\n treatment.as /*adSlots*/.forEach((auo) => {\n const tauo = adSlotOverridesMap.get(auo.g /*gam ad unit code*/);\n adSlotOverridesMap.set(auo.g, {\n g: auo.g, /* gam ad unit code */\n o: (tauo?.o && auo.o) /* auctionTimeout */\n ? (() => { throw new Error(`auctionTimeout defined in multiple tests for ad unit '${auo.g}'`); })()\n : (tauo?.o ?? auo.o),\n n: (tauo?.n && auo.n) /* insert */\n ? (() => { throw new Error(`insert defined in multiple tests for ad unit '${auo.g}'`); })()\n : (tauo?.n ?? auo.n),\n m: (tauo?.m && auo.m) /* media */\n ? (() => { throw new Error(`media defined in multiple tests for ad unit '${auo.g}'`); })()\n : (tauo?.m ?? auo.m),\n tg: (tauo?.tg && auo.tg) /* tagIds */\n ? (() => { throw new Error(`tagIds defined in multiple tests for ad unit '${auo.g}'`); })()\n : (tauo?.tg ?? auo.tg),\n r: (tauo?.r && auo.r) /* refresh */\n ? (() => { throw new Error(`refresh defined in multiple tests for ad unit '${auo.g}'`); })()\n : (tauo?.r ?? auo.r),\n l: (tauo?.l && auo.l) /* load */\n ? (() => { throw new Error(`load defined in multiple tests for ad unit '${auo.g}'`); })()\n : (tauo?.l ?? auo.l),\n kv: (tauo?.kv && auo.kv) /* targetingKeyValues */\n ? (() => { throw new Error(`targetingKeyValues defined in multiple tests for ad unit '${auo.g}'`); })()\n : (tauo?.kv ?? auo.kv),\n f: (tauo?.f && auo.f) /* price floor */\n ? (() => { throw new Error(`floor defined in multiple tests for ad unit '${auo.g}'`); })()\n : (tauo?.f ?? auo.f)\n });\n });\n }) ?? null;\n if (testPromises) {\n await Promise.all(testPromises);\n }\n const testAdSlots = [];\n adSlotOverridesMap.forEach((auo) => {\n const iau = inventory.as /* ad slots */\n .find(au => au.g === auo.g); /* gam ad unit code */\n testAdSlots.push({\n g: auo.g, /* gam ad unit code */\n o: auo.o ?? iau?.o, /* auctionTimeout */\n n: (auo.n || iau?.n) /* insert */\n ? auo.n ?? iau?.n\n : (() => { throw new Error(`insert not defined for test ad unit '${auo.g}'`); })(),\n m: (auo.m || iau?.m) /* media */\n ? auo.m ?? iau?.m\n : (() => { throw new Error(`media not defined for test ad unit '${auo.g}'`); })(),\n tg: (auo.tg || iau?.tg) /* tagIds */\n ? auo.tg ?? iau?.tg\n : (() => { throw new Error(`tagIds not defined for test ad unit '${auo.g}'`); })(),\n r: auo.r ?? iau?.r, /* refresh */\n l: (auo.l || iau?.l) /* load */\n ? auo.l ?? iau?.l\n : (() => { throw new Error(`load not defined for test ad unit '${auo.g}'`); })(),\n kv: auo.kv ?? iau?.kv, /* targetingKeyValues */\n f: auo.f ?? iau?.f /* price floor */\n });\n });\n return testAdSlots;\n}\n\n\n//# sourceURL=webpack://@wrapp/wrapper/./wrapper/src/abTests.ts?")},"./wrapper/src/auctionConductor.ts":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ setRegisterSlotWorker: () => (/* binding */ setRegisterSlotWorker),\n/* harmony export */ setServeAdWorker: () => (/* binding */ setServeAdWorker)\n/* harmony export */ });\n/* harmony import */ var _refreshEventHandlers__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./refreshEventHandlers */ \"./wrapper/src/refreshEventHandlers.ts\");\n\n/**\n *\n * auction is event based and conducted in 3 steps\n * 1) register ad slot after parent div element is added - setRegisterSlotWorker()\n * 2) start auction\n * 3)\n *\n */\n// register handler: to register ad slot after div has loaded in body\nfunction setRegisterSlotWorker(slot) {\n const slot_div_id = slot.getSlotElementId();\n var element = document.getElementById(slot_div_id);\n if (element) { // element already exists\n registerSlot();\n return;\n }\n var observer = null;\n if (document.body) { // page has already loaded\n mutationListener();\n }\n else {\n document.addEventListener('DOMContentLoaded', () => {\n element = document.getElementById(slot_div_id);\n if (element) { // element already exists\n registerSlot();\n return;\n }\n mutationListener();\n });\n }\n // set up MutationObserver for future additions\n function mutationListener() {\n observer = new MutationObserver((mutations) => {\n for (const mutation of mutations) {\n // check if element exists in DOM now\n const element = document.getElementById(slot_div_id);\n if (element) {\n registerSlot();\n return;\n }\n }\n });\n // start observing document for changes\n observer.observe(document.body, {\n childList: true, // listen for direct children added/removed\n subtree: true // listen for changes in the entire subtree\n });\n }\n function registerSlot() {\n googletag.cmd.push(() => {\n googletag.display(slot_div_id); // called to register slot, disableInitialLoad() should still apply\n // fetch ads for \"lazy\" load ad units only\n if (slot.getTargeting('load').includes('lazy')) {\n setFetchAdWorker(slot);\n }\n else {\n // register refresh handlers for \"eager\" load ad units\n (0,_refreshEventHandlers__WEBPACK_IMPORTED_MODULE_0__.setRefreshWorker)(slot.getAdUnitPath());\n }\n });\n if (observer) {\n observer.disconnect(); // stop observing, after slot is registered\n }\n }\n}\n// meant to be called for \"lazy\" load ad units only\nfunction setFetchAdWorker(slot) {\n const options = {\n root: null, // element to intersect with browser viewport\n rootMargin: \"1000px\", // margin to grow or shrink intersection frame of root, default 100px (10% of most popular viewport 1080px)\n threshold: 0.0 // % element visible\n };\n const slot_div_id = slot.getSlotElementId();\n const element = document.getElementById(slot_div_id);\n const observer = new IntersectionObserver((entries, observer) => {\n entries.forEach(entry => {\n if (entry.intersectionRatio > 0) {\n pbjs.que.push(() => {\n pbjs.requestBids({\n adUnitCodes: [slot.getAdUnitPath()],\n timeout: wrapperConfig.o /*auctionTimeout*/ // TODO: use adUnit level timeout when set\n });\n });\n observer.disconnect(); // stop observing after ad is fetched\n // register refresh handlers for \"lazy\" load ad units\n (0,_refreshEventHandlers__WEBPACK_IMPORTED_MODULE_0__.setRefreshWorker)(slot.getAdUnitPath());\n }\n });\n }, options);\n if (element) {\n observer.observe(element);\n }\n}\nfunction setServeAdWorker() {\n pbjs.onEvent('auctionEnd', (auction) => {\n googletag.cmd.push(() => {\n const renderAdSlotCodes = auction.adUnitCodes;\n const renderSlots = googletag.pubads().getSlots()\n .filter(slot => renderAdSlotCodes.includes(slot.getAdUnitPath()));\n if (renderSlots.length > 0) {\n pbjs.que.push(() => {\n pbjs.setTargetingForGPTAsync(renderAdSlotCodes);\n googletag.pubads().refresh(renderSlots);\n });\n }\n });\n });\n // TODO should this part be moved to a different function?\n pbjs.onEvent('bidWon', (bid) => {\n const slot = googletag\n .pubads()\n .getSlots()\n .find(slot => slot.getAdUnitPath() === bid.adUnitCode)\n ?? null;\n // TODO add prefix to targeting keys to make it obvious that this is specific to our wrapper\n if (slot) {\n googletag.cmd.push(() => {\n slot.setTargeting('hb_bidder_code', bid.bidderCode);\n slot.setTargeting('hb_cpm', bid.cpm);\n slot.setTargeting('hb_cpm_currency', bid.currency);\n });\n }\n });\n}\n\n\n//# sourceURL=webpack://@wrapp/wrapper/./wrapper/src/auctionConductor.ts?")},"./wrapper/src/audiences.ts":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getUserBrowser: () => (/* binding */ getUserBrowser),\n/* harmony export */ getUserCountry: () => (/* binding */ getUserCountry),\n/* harmony export */ getUserDevice: () => (/* binding */ getUserDevice),\n/* harmony export */ matchAudience: () => (/* binding */ matchAudience)\n/* harmony export */ });\n/* harmony import */ var _enums__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enums */ \"./wrapper/src/enums.ts\");\n\nfunction getUserBrowser() {\n const ua = navigator.userAgent.toLowerCase();\n if (ua.indexOf('chrome') > -1 && ua.indexOf('edge') === -1) {\n return _enums__WEBPACK_IMPORTED_MODULE_0__.Browser.Chrome;\n }\n else if (ua.indexOf('safari') > -1 && ua.indexOf('chrome') === -1) {\n return _enums__WEBPACK_IMPORTED_MODULE_0__.Browser.Safari;\n }\n else if (ua.indexOf('edge') > -1) {\n return _enums__WEBPACK_IMPORTED_MODULE_0__.Browser.Edge;\n }\n else if (ua.indexOf('firefox') > -1) {\n return _enums__WEBPACK_IMPORTED_MODULE_0__.Browser.Firefox;\n }\n return _enums__WEBPACK_IMPORTED_MODULE_0__.Browser.Unknown;\n}\nfunction getUserDevice() {\n const viewPortCheck = window.matchMedia(\"(max-width: 760px), (max-width: 1024px) and (orientation: landscape)\").matches;\n const userAgentCheck = /Android|iPhone|iPad/i.test(navigator.userAgent);\n return (viewPortCheck || userAgentCheck) ? _enums__WEBPACK_IMPORTED_MODULE_0__.Device.Mobile : _enums__WEBPACK_IMPORTED_MODULE_0__.Device.Desktop;\n}\nfunction getUserCountry() {\n const [/* langCode */ , localeCountryCode] = Intl.DateTimeFormat().resolvedOptions()\n .locale.split('-'); // e.g., \"en-US\" -> \"US\"\n const [/* langCode */ , langCountryCode] = navigator.language?.split('-');\n return localeCountryCode ?? langCountryCode ?? null;\n}\nfunction matchAudience(inventory) {\n for (const inc of inventory.t /*targetAudience*/?.ic /*includes*/ ?? []) {\n if (inc.bw /*browser*/ && !inc.bw /*browser*/.includes(getUserBrowser()))\n return null;\n if (inc.dv /*device*/ && !inc.dv /*device*/.includes(getUserDevice()))\n return null;\n if (inc.cy /*country*/ && !inc.cy /*country*/.includes(getUserCountry() ?? ''))\n return null;\n }\n for (const exc of inventory.t /*targetAudience*/?.ex /*excludes*/ ?? []) {\n if (exc.bw /*browser*/ && exc.bw /*browser*/.includes(getUserBrowser()))\n return null;\n if (exc.dv /*device*/ && exc.dv /*device*/.includes(getUserDevice()))\n return null;\n if (exc.cy /*country*/ && exc.cy /*country*/.includes(getUserCountry() ?? ''))\n return null;\n }\n return inventory;\n}\n\n\n//# sourceURL=webpack://@wrapp/wrapper/./wrapper/src/audiences.ts?")},"./wrapper/src/dynamicSlot.ts":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ deleteDynamicAdSlot: () => (/* binding */ deleteDynamicAdSlot),\n/* harmony export */ insertDynamicAdSlot: () => (/* binding */ insertDynamicAdSlot),\n/* harmony export */ setDynamicSlotHandler: () => (/* binding */ setDynamicSlotHandler)\n/* harmony export */ });\n/* harmony import */ var _enums__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enums */ \"./wrapper/src/enums.ts\");\n/* harmony import */ var _auctionConductor__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./auctionConductor */ \"./wrapper/src/auctionConductor.ts\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils */ \"./wrapper/src/utils.ts\");\n\n\n\nconst dynamicAdSlots = {};\nfunction setDynamicSlotHandler() {\n // setup event listener for new elements to have been added or getting close to view, and invoke insertDynamicAdSlot() when applicable\n // invoke deleteDynamicSlot() when dynamic ad slot far from view port\n}\nfunction insertDynamicAdSlot(refId, reference) {\n const inventory = wrapperConfig.iv /*inventory*/\n .find((inv) => (0,_utils__WEBPACK_IMPORTED_MODULE_2__.matchPagePath)(window.location.pathname, inv.pp /*pagePaths*/));\n if (inventory === undefined) {\n (0,_utils__WEBPACK_IMPORTED_MODULE_2__.consoleDebug)(`no inventory defined for pagepath '${window.location.pathname}', ad cannot be served by insertDynamicAdSlot()`);\n return;\n }\n const refElement = document.getElementById(refId);\n if (refElement === null) {\n throw new Error('could not find element for refId in insertDynamicSlot(): ' + refId);\n }\n const slotDiv = document.createElement('div');\n slotDiv.id = `ad-slot-${reference}-${refId}`;\n slotDiv.className = 'ad-anchor';\n slotDiv.innerHTML = 'Advertisement';\n switch (reference) {\n case _enums__WEBPACK_IMPORTED_MODULE_0__.ElementReference.Before:\n refElement?.before(slotDiv);\n break;\n case _enums__WEBPACK_IMPORTED_MODULE_0__.ElementReference.After:\n refElement?.after(slotDiv);\n break;\n case _enums__WEBPACK_IMPORTED_MODULE_0__.ElementReference.Inside:\n break;\n default:\n throw new Error('invalid reference parameter to insertDynamicSlot() ' + reference);\n }\n const parentElement = refElement.parentElement;\n const adSlot = Object.values([inventory]) // pass inventory as array\n .flatMap((inv) => inv.as /*adSlots*/)\n .filter((adUnit) => adUnit !== undefined)\n .find(({ n /*insert*/ }) => ((n.a /*anchor*/ === _enums__WEBPACK_IMPORTED_MODULE_0__.Anchor.DynamicElement) &&\n (n.d /*divId*/ === parentElement?.id)));\n if (adSlot === undefined) {\n (0,_utils__WEBPACK_IMPORTED_MODULE_2__.consoleDebug)(`no inventory defined for element id '${parentElement?.id}', ad cannot be served by insertDynamicAdSlot()`, inventory);\n return;\n }\n dynamicAdSlots[slotDiv.id] = { adUnit: null, gptSlot: null };\n pbjs.que.push(() => {\n // add all ad units to prebid auction\n const pbjsAdUnit = {\n code: adSlot.g /*gam ad unit code*/ + `/${slotDiv.id}`,\n div: slotDiv.id,\n mediaTypes: {\n banner: {\n sizes: adSlot.m /*media*/.sz /*sizes*/.map(size => [size.w /*width*/, size.h /*height*/])\n }\n },\n bids: adSlot.tg /*tagIds*/.map(tagId => ({\n bidder: tagId.b /*bidder*/,\n params: tagId.pm /*params*/.reduce((acc, param) => {\n acc[param.k /*key*/] = param.v /*value*/;\n return acc;\n }, {})\n }))\n };\n pbjs.addAdUnits(pbjsAdUnit);\n dynamicAdSlots[slotDiv.id].adUnit = pbjsAdUnit;\n // start prebid auction\n pbjs.requestBids({\n adUnitCodes: [pbjsAdUnit.code],\n timeout: adSlot.o /*auctionTimeout*/ ?? wrapperConfig.o /*auctionTimeout*/\n });\n });\n googletag.cmd.push(() => {\n const sizes = adSlot.m /*media*/.sz /*sizes*/.map((size) => [size.w /*width*/, size.h /*height*/]);\n const gptSlot = googletag\n .defineSlot(adSlot.g /*gam ad unit code*/ + `/${slotDiv.id}`, sizes, slotDiv.id)\n ?.addService(googletag.pubads());\n if (gptSlot) {\n // slot level targeting (google publisher tag)\n adSlot.kv /*targetingKeyValues*/?.forEach((pair) => {\n const { k /*key*/, v /*value*/ } = pair;\n gptSlot.setTargeting(k /*key*/, Array.isArray(v /*value*/) ? v /*value*/ : JSON.stringify(v /*value*/));\n });\n if (adSlot.f /*price floor*/) {\n gptSlot.setTargeting('hb_floor', adSlot.f /*price floor*/.toString());\n }\n gptSlot.setTargeting('load', adSlot.l /*load*/);\n (0,_auctionConductor__WEBPACK_IMPORTED_MODULE_1__.setRegisterSlotWorker)(gptSlot);\n dynamicAdSlots[slotDiv.id].gptSlot = gptSlot;\n }\n });\n}\nfunction deleteDynamicAdSlot(divId) {\n // googletag.destroySlots([gptSlot])\n // pbjs.removeAdSlot(adUnitCode)\n // remove any refresh handlers\n}\n\n\n//# sourceURL=webpack://@wrapp/wrapper/./wrapper/src/dynamicSlot.ts?")},"./wrapper/src/enums.ts":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval('__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Anchor: () => (/* binding */ Anchor),\n/* harmony export */ Browser: () => (/* binding */ Browser),\n/* harmony export */ Device: () => (/* binding */ Device),\n/* harmony export */ ElementReference: () => (/* binding */ ElementReference),\n/* harmony export */ Load: () => (/* binding */ Load),\n/* harmony export */ MediaFormat: () => (/* binding */ MediaFormat),\n/* harmony export */ PagePathPattern: () => (/* binding */ PagePathPattern),\n/* harmony export */ RefreshTrigger: () => (/* binding */ RefreshTrigger),\n/* harmony export */ WindowReference: () => (/* binding */ WindowReference)\n/* harmony export */ });\nvar WindowReference;\n(function (WindowReference) {\n WindowReference["Top"] = "TP";\n WindowReference["Bottom"] = "BM";\n WindowReference["Left"] = "LF";\n WindowReference["Right"] = "RG";\n})(WindowReference || (WindowReference = {}));\nvar ElementReference;\n(function (ElementReference) {\n ElementReference["Before"] = "BF";\n ElementReference["After"] = "AT";\n ElementReference["Inside"] = "IN";\n})(ElementReference || (ElementReference = {}));\nvar Anchor;\n(function (Anchor) {\n Anchor["Window"] = "WN";\n Anchor["StaticElement"] = "ST";\n Anchor["DynamicElement"] = "DY";\n})(Anchor || (Anchor = {}));\nvar Load;\n(function (Load) {\n /**\n * Eager Loading:\n * Ads are loaded as soon as the page loads, regardless of whether they are visible to the user.\n * Use Case: Pages with high-priority ad slots above the fold where immediate visibility is crucial.\n */\n Load["Eager"] = "EG";\n /**\n * Deferred Loading:\n * Ads are loaded after the entire page has finished loading or after a specific delay.\n * Use Case: Ensures critical content is loaded first to improve perceived performance.\n */\n Load["Deferred"] = "DF";\n /**\n * Lazy Loading:\n * Ads are loaded only when they are about to come into the viewport (or are close to it).\n * Use Case: Improves performance and reduces resource usage by deferring ad requests for offscreen ads.\n */\n Load["Lazy"] = "LZ";\n /**\n * Dynamic Loading:\n * Ads are loaded for slots created dynamically after the initial page load, such as in infinite scroll scenarios.\n * Use Case: Pages with content that expands dynamically, where new ad slots are introduced as the user scrolls.\n */\n Load["Dynamic"] = "YM";\n /**\n * On-Demand Loading:\n * Ads are loaded based on specific user actions, such as clicking a button or interacting with a part of the page.\n * Use Case: When ads need to be shown only after user engagement (e.g., inside a collapsible menu).\n */\n Load["OnDemand"] = "ON";\n})(Load || (Load = {}));\nvar MediaFormat;\n(function (MediaFormat) {\n MediaFormat["Banner"] = "BN";\n})(MediaFormat || (MediaFormat = {}));\nvar RefreshTrigger;\n(function (RefreshTrigger) {\n RefreshTrigger["InView"] = "IV";\n RefreshTrigger["AfterInterval"] = "AV";\n})(RefreshTrigger || (RefreshTrigger = {}));\nvar Device;\n(function (Device) {\n Device["Mobile"] = "MB";\n Device["Desktop"] = "DK";\n Device["Tablet"] = "TB";\n})(Device || (Device = {}));\nvar Browser;\n(function (Browser) {\n Browser["Chrome"] = "CR";\n Browser["Safari"] = "SF";\n Browser["Edge"] = "EG";\n Browser["Firefox"] = "FX";\n Browser["Unknown"] = "UN";\n})(Browser || (Browser = {}));\nvar PagePathPattern;\n(function (PagePathPattern) {\n PagePathPattern["Prefix"] = "PR";\n PagePathPattern["Contains"] = "CT";\n PagePathPattern["Suffix"] = "SF";\n PagePathPattern["Exact"] = "EX";\n PagePathPattern["Regex"] = "RG";\n})(PagePathPattern || (PagePathPattern = {}));\n\n\n//# sourceURL=webpack://@wrapp/wrapper/./wrapper/src/enums.ts?')},"./wrapper/src/index.ts":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval('__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _logEventHandlers__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./logEventHandlers */ "./wrapper/src/logEventHandlers.ts");\n/* harmony import */ var _auctionConductor__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./auctionConductor */ "./wrapper/src/auctionConductor.ts");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils */ "./wrapper/src/utils.ts");\n/* harmony import */ var _stickySlot__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./stickySlot */ "./wrapper/src/stickySlot.ts");\n/* harmony import */ var _abTests__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./abTests */ "./wrapper/src/abTests.ts");\n/* harmony import */ var _enums__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./enums */ "./wrapper/src/enums.ts");\n/* harmony import */ var _audiences__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./audiences */ "./wrapper/src/audiences.ts");\nconst WRAPPER_VERSION = \'0.1\';\n\n\n\n\n\n\n\nconst wrapperConfig = __webpack_require__(/*! ../../../home/wrapp/builds/8EFA792FE841A/0.0.26/config-d8EFA792FE841A-v0-0-26.json */ "../../../home/wrapp/builds/8EFA792FE841A/0.0.26/config-d8EFA792FE841A-v0-0-26.json");\nfunction initAdserver() {\n if (!window.googletag.pubads) {\n (0,_utils__WEBPACK_IMPORTED_MODULE_2__.consoleError)(\'googletag (google publisher tag) did not load properly ...\');\n return;\n }\n if (pbjs.initAdserverSet)\n return;\n pbjs.initAdserverSet = true;\n googletag.cmd.push(() => {\n pbjs.setTargetingForGPTAsync && pbjs.setTargetingForGPTAsync();\n googletag.pubads().refresh();\n });\n throw new Error(\'prebid did not load properly ...\');\n //TODO log error\n}\n;\nfunction processAdSlots(adSlots) {\n pbjs.que.push(() => {\n // add all ad units to prebid auction\n var pbjsAdUnits = adSlots\n .map(adUnit => ({\n code: adUnit.g /*gam ad unit code*/,\n div: adUnit.n /*insert*/.d /*divId*/ ?? \'\',\n mediaTypes: {\n banner: {\n sizes: adUnit.m /*media*/.sz /*sizes*/.map(size => [size.w /*width*/, size.h /*height*/])\n }\n },\n bids: adUnit.tg /*tagIds*/.map(tagId => ({\n bidder: tagId.b /*bidder*/,\n params: tagId.pm /*params*/.reduce((acc, param) => {\n acc[param.k /*key*/] = param.v /*value*/;\n return acc;\n }, {})\n }))\n }));\n pbjs.addAdUnits(pbjsAdUnits);\n // start prebid auction for "eager" load ad units\n var eagerAdSlotCodes = adSlots\n .filter(({ l /*load*/ }) => l /*load*/ === _enums__WEBPACK_IMPORTED_MODULE_5__.Load.Eager) // filter "eager" load ad unit codes\n .map(({ g /*gam ad unit code*/ }) => g /*gam ad unit code*/);\n pbjs.requestBids({\n adUnitCodes: eagerAdSlotCodes,\n timeout: wrapperConfig.o /*auctionTimeout*/\n });\n });\n googletag.cmd.push(() => {\n adSlots\n .filter(({ l /*load*/ }) => [_enums__WEBPACK_IMPORTED_MODULE_5__.Load.Eager, _enums__WEBPACK_IMPORTED_MODULE_5__.Load.Lazy].includes(l /*load*/))\n .forEach((adSlot) => {\n var sizes = adSlot.m /*media*/.sz /*sizes*/\n .map((size) => [size.w /*width*/, size.h /*height*/]);\n const slotDivId = (adSlot.n.a === _enums__WEBPACK_IMPORTED_MODULE_5__.Anchor.Window) ?\n (0,_stickySlot__WEBPACK_IMPORTED_MODULE_3__.stickySlotId)(adSlot.n /*insert*/.r /*reference*/) :\n adSlot.n /*insert*/.d /*divId*/;\n const gptSlot = googletag\n .defineSlot(adSlot.g /*gam ad unit code*/, sizes, slotDivId)\n ?.addService(googletag.pubads());\n if (gptSlot) {\n // slot level targeting (google publisher tag)\n adSlot.kv /*targetingKeyValues*/?.forEach((pair) => {\n const { k /*key*/, v /*value*/ } = pair;\n gptSlot.setTargeting(k /*key*/, Array.isArray(v /*value*/) ? v /*value*/ : JSON.stringify(v /*value*/));\n });\n if (adSlot.f /*price floor*/) {\n gptSlot.setTargeting(\'hb_floor\', adSlot.f /*price floor*/.toString());\n }\n gptSlot.setTargeting(\'load\', adSlot.l /*load*/);\n if (adSlot.n /*insert*/.a /*anchor*/ === _enums__WEBPACK_IMPORTED_MODULE_5__.Anchor.Window) {\n (0,_stickySlot__WEBPACK_IMPORTED_MODULE_3__.setInsertSlotWorker)(adSlot); // add ad slot element to body before registering slot\n }\n (0,_auctionConductor__WEBPACK_IMPORTED_MODULE_1__.setRegisterSlotWorker)(gptSlot);\n }\n });\n googletag.pubads().enableSingleRequest(); // all ad slots should be defined and added to service before\n googletag.enableServices();\n });\n}\nasync function main() {\n (0,_utils__WEBPACK_IMPORTED_MODULE_2__.consoleDebug)("app info" +\n "\\n name: " + "app-p8efa792fe841a.js" +\n "\\n version: " + "1.0.0" +\n "\\n build date: " + "2025-05-16T16:29:34.412Z");\n window.wrapperConfig = wrapperConfig;\n //check config domain covers publisher domain\n const secondLevelDomain = window.location.hostname.split(\'.\').slice(-2).join(\'.\');\n const thirdLevelDomain = window.location.hostname.split(\'.\').slice(-3).join(\'.\');\n const sldHash = await (0,_utils__WEBPACK_IMPORTED_MODULE_2__.generateHash)(secondLevelDomain, 13);\n const tldHash = await (0,_utils__WEBPACK_IMPORTED_MODULE_2__.generateHash)(thirdLevelDomain, 13);\n if (![sldHash, tldHash].includes(wrapperConfig.d /*domain*/)) {\n (0,_utils__WEBPACK_IMPORTED_MODULE_2__.consoleError)(`inventory defined for different domain with ID \'${wrapperConfig.d /*domain*/}\', no ads will be served`);\n return;\n }\n //TODO: check wrapper version compatibility with config version\n // in case pbjs does not load, ensure googletag.pubads().refresh() is called\n setTimeout(() => {\n initAdserver();\n }, wrapperConfig.f /*failsafeTimeout*/);\n pbjs.que.push(() => {\n pbjs.initAdserverSet = true; // execute first once pbjs setup is complete\n // register event handlers and workers early\n _logEventHandlers__WEBPACK_IMPORTED_MODULE_0__.setDocumentEventLogHandlers();\n _logEventHandlers__WEBPACK_IMPORTED_MODULE_0__.setAuctionEventLogHandlers();\n googletag.cmd.push(() => {\n _logEventHandlers__WEBPACK_IMPORTED_MODULE_0__.setGPTEventLogHandlers();\n });\n (0,_auctionConductor__WEBPACK_IMPORTED_MODULE_1__.setServeAdWorker)();\n });\n googletag.cmd.push(() => {\n googletag.pubads().disableInitialLoad();\n });\n const inventory = wrapperConfig.iv /*inventory*/\n .filter((inv) => (0,_utils__WEBPACK_IMPORTED_MODULE_2__.matchPagePath)(window.location.pathname, inv.pp /*pagePaths*/))\n .filter((inv) => (0,_audiences__WEBPACK_IMPORTED_MODULE_6__.matchAudience)(inv) !== null);\n if (inventory === undefined) {\n (0,_utils__WEBPACK_IMPORTED_MODULE_2__.consoleDebug)(`no inventory defined for pagepath \'${window.location.pathname}\', ads will not be served`);\n return;\n }\n // exclude ad units that are overriden in any tests\n const adUnits = Object.values(inventory)\n .flatMap(inv => {\n const testAdSlotCodes = new Set(inv.ts /*tests*/?.flatMap(test => test.tm /*treatments*/.flatMap(treatment => treatment.as /*adSlots*/.map(adUnit => adUnit.g /*gam ad unit code*/))) || []);\n return inv.as /*adSlots*/.filter(adUnit => !testAdSlotCodes.has(adUnit.g /*gam ad unit code*/));\n });\n processAdSlots(adUnits);\n googletag.cmd.push(() => {\n // page-level targeting (google publisher tag)\n const allPageLevelTargeting = Object.values(inventory)\n .flatMap((inv) => inv.kv /*pageTargetingKeyValues*/)\n .filter((item) => item !== undefined);\n allPageLevelTargeting?.forEach((pair) => {\n const { k /*key*/, v /*value*/ } = pair;\n googletag.pubads().setTargeting(k /*key*/, Array.isArray(v /*value*/) ? v /*value*/ : JSON.stringify(v /*value*/));\n });\n });\n // retrieve test ad units meant for user\n const testAdSlots = (await Promise.all(inventory\n .filter((inv) => inv.ts /*tests*/)\n .map((inv) => (0,_abTests__WEBPACK_IMPORTED_MODULE_4__.getTestAdSlots)(inv))))\n .flat();\n processAdSlots(testAdSlots);\n}\n// queue to execute ad server tasks in order\nwindow.googletag = window.googletag || { cmd: [] };\n// queue to execute auction tasks in order\nwindow.pbjs = window.pbjs || { que: [] };\n// window.__gpp = {\n// getSection: function(sectionId, callback) {\n// callback({\n// gppString: \'DBABMA~CPXxRfAPXxRfABABQBENB-CgAAAAAAAAAAAAAAAAAAA.YAAAAAAAAAA\',\n// applicableSections: [\'tcfeu\', \'usca\'], // GDPR and US Privacy\n// });\n// },\n// };\nmain();\n// anchor to view_port (sticky ads) -- always loaded eager\n// anchor to static_content (standard ads) -- loaded eager or lazy\n// anchor to dynamic_content; --\x3e div id regex or class name -- loaded lazy\n// ad slots can be insertion can be on page content, sticky, and dynamic\n// ads can be loaded -- eager or lazy\n//TODOs\n//for eager slots auction can end before winner has been declared from bid responses\n//auction end includes array of bid responses\n\n\n//# sourceURL=webpack://@wrapp/wrapper/./wrapper/src/index.ts?')},"./wrapper/src/logEventHandlers.ts":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ setAuctionEventLogHandlers: () => (/* binding */ setAuctionEventLogHandlers),\n/* harmony export */ setDocumentEventLogHandlers: () => (/* binding */ setDocumentEventLogHandlers),\n/* harmony export */ setGPTEventLogHandlers: () => (/* binding */ setGPTEventLogHandlers)\n/* harmony export */ });\n/* harmony import */ var _logObjectBuilder__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./logObjectBuilder */ \"./wrapper/src/logObjectBuilder.ts\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils */ \"./wrapper/src/utils.ts\");\n\n\nfunction setAuctionEventLogHandlers() {\n pbjs.onEvent('auctionInit', (auction) => {\n //TODO add debug condition for log\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleDebug)('pbjs.events.auctionInit', auction);\n const auctionInit = _logObjectBuilder__WEBPACK_IMPORTED_MODULE_0__.auctionInitObject(auction);\n fetch(`${wrapperConfig.l /*logAPIEndpoint*/}/auction/init`, {\n method: 'POST',\n body: JSON.stringify(auctionInit),\n headers: {\n \"Content-Type\": \"text/plain\"\n }\n })\n .then(response => {\n if (response.status != 200) {\n throw new Error(`http error! ${response.status} ${response.statusText}`);\n }\n })\n .catch(error => {\n // TODO: post 'auctionInit' object as string to error log endpoint\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleError)(\"failed to log 'pbjs.events.auctionInit'\", false, auctionInit, error);\n });\n });\n pbjs.onEvent('bidResponse', (bid) => {\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleDebug)('pbjs.events.bidResponse', bid);\n const bidResponse = _logObjectBuilder__WEBPACK_IMPORTED_MODULE_0__.bidResponseObject(bid);\n fetch(`${wrapperConfig.l /*logAPIEndpoint*/}/bid/response`, {\n method: 'POST',\n body: JSON.stringify(bidResponse),\n headers: {\n \"Content-Type\": \"text/plain\"\n }\n })\n .then(response => {\n if (response.status != 200) {\n throw new Error(`http error! ${response.status} ${response.statusText}`);\n }\n })\n .catch(error => {\n //TODO post 'bidResponse' object as string to error log endpoint\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleError)(\"failed to log 'pbjs.events.bidResponse'\", false, bidResponse, error);\n });\n });\n pbjs.onEvent('bidWon', (bid) => {\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleDebug)('pbjs.events.bidWon', bid);\n const bidWon = _logObjectBuilder__WEBPACK_IMPORTED_MODULE_0__.bidWonObject(bid);\n fetch(`${wrapperConfig.l /*logAPIEndpoint*/}/bid/won`, {\n method: \"POST\",\n body: JSON.stringify(bidWon),\n headers: {\n \"Content-Type\": \"text/plain\"\n }\n })\n .then(response => {\n if (response.status != 200) {\n throw new Error(`http error! ${response.status} ${response.statusText}`);\n }\n })\n .catch(error => {\n //TODO post 'bidWon' object as string to error log endpoint\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleError)(\"failed to log 'pbjs.events.bidWon'\", false, bidWon, error);\n });\n });\n pbjs.onEvent('bidRejected', (bid) => {\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleDebug)('pbjs.events.bidRejected', bid);\n const bidRejected = _logObjectBuilder__WEBPACK_IMPORTED_MODULE_0__.bidRejectedObject(bid, Date.now()); /* UTC timestamp */\n fetch(`${wrapperConfig.l /*logAPIEndpoint*/}/bid/reject`, {\n method: \"POST\",\n body: JSON.stringify(bidRejected),\n headers: {\n \"Content-Type\": \"text/plain\"\n }\n })\n .then(response => {\n if (response.status != 200) {\n throw new Error(`http error! ${response.status} ${response.statusText}`);\n }\n })\n .catch(error => {\n //TODO post 'bidRejected' object as string to error log endpoint\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleError)(\"failed to log 'pbjs.events.bidRejected'\", false, bidRejected, error);\n });\n });\n pbjs.onEvent('bidTimeout', (bids) => {\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleDebug)('pbjs.events.bidTimeout', bids);\n const bidTimeout = _logObjectBuilder__WEBPACK_IMPORTED_MODULE_0__.bidTimeoutObjects(bids);\n fetch(`${wrapperConfig.l /*logAPIEndpoint*/}/bid/timeouts`, {\n method: \"POST\",\n body: JSON.stringify(bidTimeout),\n headers: {\n \"Content-Type\": \"text/plain\"\n }\n })\n .then(response => {\n if (response.status != 200) {\n throw new Error(`http error! ${response.status} ${response.statusText}`);\n }\n })\n .catch(error => {\n //TODO post 'bidTimeout' object as string to error log endpoint\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleError)(\"failed to log 'pbjs.events.bidTimeout'\", false, bidTimeout, error);\n });\n });\n pbjs.onEvent('auctionEnd', (auction) => {\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleDebug)('pbjs.events.auctionEnd', auction);\n const auctionEnd = _logObjectBuilder__WEBPACK_IMPORTED_MODULE_0__.auctionEndObject(auction);\n fetch(`${wrapperConfig.l /*logAPIEndpoint*/}/auction/end`, {\n method: \"POST\",\n body: JSON.stringify(auctionEnd),\n headers: {\n \"Content-Type\": \"text/plain\"\n }\n })\n .then(response => {\n if (response.status != 200) {\n throw new Error(`http error! ${response.status} ${response.statusText}`);\n }\n })\n .catch(error => {\n //TODO post 'auctionEnd' object as string to error log endpoint\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleError)(\"failed to log 'pbjs.events.auctionEnd'\", false, auctionEnd, error);\n });\n });\n pbjs.onEvent('adRenderSucceeded', (data) => {\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleDebug)('pbjs.events.adRenderSucceeded', data);\n const adServe = _logObjectBuilder__WEBPACK_IMPORTED_MODULE_0__.adServeObject(data.bid, {\n serveStatus: 'SUCCESS',\n serveTimestamp: Date.now(), /* UTC timestamp */\n failReason: null\n });\n fetch(`${wrapperConfig.l /*logAPIEndpoint*/}/ad/serve`, {\n method: \"POST\",\n body: JSON.stringify(adServe),\n headers: {\n \"Content-Type\": \"text/plain\"\n }\n })\n .then(response => {\n if (response.status != 200) {\n throw new Error(`http error! ${response.status} ${response.statusText}`);\n }\n })\n .catch(error => {\n //TODO post 'adServe' object as string to error log endpoint\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleError)(\"failed to log 'pbjs.events.adRenderSucceeded'\", false, adServe, error);\n });\n });\n pbjs.onEvent('adRenderFailed', (data) => {\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleDebug)('pbjs.events.adRenderFailed', data);\n const adServe = _logObjectBuilder__WEBPACK_IMPORTED_MODULE_0__.adServeObject(data.bid, {\n serveStatus: 'FAIL',\n failReason: data.reason,\n serveTimestamp: null\n });\n fetch(`${wrapperConfig.l /*logAPIEndpoint*/}/ad/serve`, {\n method: \"POST\",\n body: JSON.stringify(adServe),\n headers: {\n \"Content-Type\": \"text/plain\"\n }\n })\n .then(response => {\n if (response.status != 200) {\n throw new Error(`http error! ${response.status} ${response.statusText}`);\n }\n })\n .catch(error => {\n //TODO post 'adServe' object as string to error log endpoint\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleError)(\"failed to log 'pbjs.events.adRenderFailed'\", false, adServe, error);\n });\n });\n}\nfunction setDocumentEventLogHandlers() {\n if (document.readyState === \"loading\") {\n document.addEventListener(\"DOMContentLoaded\", logPageView);\n }\n else {\n // DOMContentLoaded already fired, call function immediately\n logPageView();\n }\n function logPageView() {\n const pageView = _logObjectBuilder__WEBPACK_IMPORTED_MODULE_0__.pageViewObject();\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleDebug)('pageView', pageView);\n fetch(`${wrapperConfig.l /*logAPIEndpoint*/}/page/view`, {\n method: 'POST',\n body: JSON.stringify(pageView),\n headers: {\n \"Content-Type\": \"text/plain\"\n }\n })\n .then(response => {\n if (response.status != 200) {\n throw new Error(`http error! ${response.status} ${response.statusText}`);\n }\n })\n .catch(error => {\n //TODO post 'pageView' object as string to error log endpoint\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleError)(\"failed to log page view\", false, pageView, error);\n });\n }\n}\nfunction setGPTEventLogHandlers() {\n googletag.pubads().addEventListener('slotRenderEnded', (event) => {\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleDebug)('googletag.events.SlotRenderEndedEvent', event);\n if (event.isEmpty) { // no impression\n const adUnfilled = _logObjectBuilder__WEBPACK_IMPORTED_MODULE_0__.adUnfilledObject(event.slot, Date.now()); /* UTC timestamp */\n fetch(`${wrapperConfig.l /*logAPIEndpoint*/}/ad/unfilled`, {\n method: 'POST',\n body: JSON.stringify(adUnfilled),\n headers: {\n \"Content-Type\": \"text/plain\"\n }\n })\n .then(response => {\n if (response.status != 200) {\n throw new Error(`http error! ${response.status} ${response.statusText}`);\n }\n })\n .catch(error => {\n //TODO post 'adUnfilled' object as string to error log endpoint\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleError)(\"failed to log 'googletag.events.SlotRenderEndedEvent'\", false, adUnfilled, error);\n });\n }\n else { //impression\n // TODO: look into slot renders with sizes 1x1\n // if (event.size && (event.size[0] === 1 && event.size[1] === 1)) {\n // ignore pixel renders\n // }\n // else {\n const adImpression = _logObjectBuilder__WEBPACK_IMPORTED_MODULE_0__.adImpressionObject(event, Date.now()); /* UTC timestamp */\n fetch(`${wrapperConfig.l /*logAPIEndpoint*/}/ad/impression`, {\n method: 'POST',\n body: JSON.stringify(adImpression),\n headers: {\n \"Content-Type\": \"text/plain\"\n }\n })\n .then(response => {\n if (response.status != 200) {\n throw new Error(`http error! ${response.status} ${response.statusText}`);\n }\n })\n .catch(error => {\n //TODO post 'adImpression' object as string to error log endpoint\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleError)(\"failed to log 'googletag.events.SlotRenderEndedEvent'\", false, adImpression, error);\n });\n // }\n }\n });\n googletag.pubads().addEventListener(\"impressionViewable\", (event) => {\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleDebug)('googletag.events.ImpressionViewableEvent', event, event.slot.getResponseInformation());\n const slotId = event.slot.getSlotElementId();\n const slotDiv = document.getElementById(slotId);\n const iframe = slotDiv?.querySelector('iframe') ?? null;\n const size = iframe?.width + 'x' + iframe?.height;\n if (size === '1x1') {\n // ignore pixel renders\n }\n else {\n const adView = _logObjectBuilder__WEBPACK_IMPORTED_MODULE_0__.adViewableObject(event.slot, size, Date.now()); /* UTC timestamp */\n fetch(`${wrapperConfig.l /*logAPIEndpoint*/}/ad/viewable`, {\n method: 'POST',\n body: JSON.stringify(adView),\n headers: {\n \"Content-Type\": \"text/plain\"\n }\n })\n .then(response => {\n if (response.status != 200) {\n throw new Error(`http error! ${response.status} ${response.statusText}`);\n }\n })\n .catch(error => {\n //TODO post 'adView' object as string to error log endpoint\n (0,_utils__WEBPACK_IMPORTED_MODULE_1__.consoleError)(\"failed to log 'googletag.events.ImpressionViewableEvent'\", false, adView, error);\n });\n }\n });\n}\n\n\n//# sourceURL=webpack://@wrapp/wrapper/./wrapper/src/logEventHandlers.ts?")},"./wrapper/src/logObjectBuilder.ts":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ adImpressionObject: () => (/* binding */ adImpressionObject),\n/* harmony export */ adServeObject: () => (/* binding */ adServeObject),\n/* harmony export */ adUnfilledObject: () => (/* binding */ adUnfilledObject),\n/* harmony export */ adViewableObject: () => (/* binding */ adViewableObject),\n/* harmony export */ auctionEndObject: () => (/* binding */ auctionEndObject),\n/* harmony export */ auctionInitObject: () => (/* binding */ auctionInitObject),\n/* harmony export */ bidRejectedObject: () => (/* binding */ bidRejectedObject),\n/* harmony export */ bidResponseObject: () => (/* binding */ bidResponseObject),\n/* harmony export */ bidTimeoutObjects: () => (/* binding */ bidTimeoutObjects),\n/* harmony export */ bidWonObject: () => (/* binding */ bidWonObject),\n/* harmony export */ pageViewObject: () => (/* binding */ pageViewObject)\n/* harmony export */ });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils */ \"./wrapper/src/utils.ts\");\n/* harmony import */ var _audiences__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./audiences */ \"./wrapper/src/audiences.ts\");\n/* harmony import */ var _enums__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./enums */ \"./wrapper/src/enums.ts\");\n\n\n\nfunction pageViewObject() {\n // TODO: return timezone when locale unavailable, server side to map to country\n const pageView = {\n view_start_time: Date.now(),\n domain: window.location.hostname,\n page_path: window.location.pathname,\n session_id: (0,_utils__WEBPACK_IMPORTED_MODULE_0__.getSessionId)(),\n user_id: (0,_utils__WEBPACK_IMPORTED_MODULE_0__.getUserId)(),\n device: {\n user_agent: navigator.userAgent,\n language: navigator.language,\n mobile: (0,_audiences__WEBPACK_IMPORTED_MODULE_1__.getUserDevice)() === _enums__WEBPACK_IMPORTED_MODULE_2__.Device.Mobile,\n view_port: {\n width: window.innerWidth,\n height: window.innerHeight\n },\n geo_location: (0,_audiences__WEBPACK_IMPORTED_MODULE_1__.getUserCountry)()\n }\n };\n return pageView;\n}\nfunction auctionInitObject(auction) {\n const auctionInit = {\n auction_id: auction.auctionId,\n auction_start_time: auction.timestamp, /* UTC timestamp */\n auction_end_time: null, /* UTC timestamp */\n domain: window.location.hostname,\n page_path: window.location.pathname,\n session_id: (0,_utils__WEBPACK_IMPORTED_MODULE_0__.getSessionId)(),\n user_id: (0,_utils__WEBPACK_IMPORTED_MODULE_0__.getUserId)(),\n ad_slots: []\n };\n auction.adUnits.forEach((adUnit) => {\n const bidderCodes = [];\n adUnit.bids.forEach((bid) => {\n bidderCodes.push(bid.bidder);\n });\n auctionInit.ad_slots.push({\n ad_unit_id: adUnit.adUnitId,\n div_id: adUnit.div,\n ad_unit_code: adUnit.code,\n transaction_id: adUnit.transactionId,\n price_floor: 0,\n price_floor_currency: null,\n deal_id: null,\n bidder_codes: bidderCodes\n });\n });\n return auctionInit;\n}\nfunction bidResponseObject(bid) {\n const bidResponse = {\n auction_id: bid.auctionId,\n ad_unit_id: bid.adUnitId,\n transaction_id: bid.transactionId,\n ad_unit_code: bid.adUnitCode,\n bidder_code: bid.bidderCode,\n cpm: bid.cpm ? bid.cpm : null, // TODO handle scenario if bidder responds with 0\n cpm_currency: bid.currency,\n deal_id: bid.dealId ? bid.dealId : null,\n size: bid.size,\n time_to_respond: bid.timeToRespond\n };\n return bidResponse;\n}\nfunction bidWonObject(bid) {\n const bidWon = {\n auction_id: bid.auctionId,\n ad_unit_id: bid.adUnitId,\n transaction_id: bid.transactionId,\n ad_unit_code: bid.adUnitCode,\n bidder_code: bid.bidderCode,\n cpm: bid.cpm,\n cpm_currency: bid.currency,\n size: bid.size,\n response_timestamp: bid.responseTimestamp /* UTC timestamp */\n };\n return bidWon;\n}\nfunction bidTimeoutObjects(bids) {\n const bidTimeouts = new Array();\n bids.forEach(bid => {\n bidTimeouts.push({\n auction_id: bid.auctionId,\n ad_unit_id: bid.adUnitId,\n transaction_id: bid.transactionId,\n ad_unit_code: bid.adUnitCode,\n bidder_code: bid.bidder,\n timeout: 0 //TODO bid.timeout not populated, need to figure out why\n });\n });\n return bidTimeouts;\n}\nfunction bidRejectedObject(bid, adRejectTimestamp) {\n const bidRejected = {\n auction_id: bid.auctionId,\n ad_unit_id: bid.adUnitId,\n transaction_id: bid.transactionId,\n ad_unit_code: bid.adUnitCode,\n bidder_code: bid.bidderCode,\n cpm: bid.cpm ? bid.cpm : null,\n cpm_currency: bid.currency,\n size: bid.width + 'x' + bid.height,\n deal_id: bid.dealId,\n rejection_reason: bid.rejectionReason ? bid.rejectionReason : '',\n device_user_agent: navigator.userAgent,\n domain: window.location.hostname,\n page_path: window.location.pathname,\n session_id: (0,_utils__WEBPACK_IMPORTED_MODULE_0__.getSessionId)(),\n reject_timestamp: adRejectTimestamp /* UTC timestamp */\n };\n return bidRejected;\n}\nfunction adServeObject(bid, ad) {\n const adServe = {\n auction_id: bid.auctionId,\n ad_unit_id: bid.adUnitId,\n transaction_id: bid.transactionId,\n ad_unit_code: bid.adUnitCode,\n status: ad.serveStatus,\n ad_id: bid.adId,\n bidder_code: bid.bidderCode,\n bid_cpm: bid.cpm,\n bid_cpm_currency: bid.currency,\n size: bid.size,\n ad_serve_timestamp: ad.serveTimestamp, /* UTC timestamp */\n fail_reason: ad.failReason\n };\n return adServe;\n}\nfunction auctionEndObject(auction) {\n if (!auction.auctionId || !auction.auctionEnd || !auction.auctionStatus) {\n throw new Error('invalid parameter auction in auctionEndObject()');\n }\n const auctionEnd = {\n auction_id: auction.auctionId,\n auction_end_time: auction.auctionEnd, /* UTC timestamp */\n end_state: auction.auctionStatus\n };\n return auctionEnd;\n}\nfunction adImpressionObject(event, adImpressionTimestamp) {\n // const size: [number, number] = event.size;\n const size = event?.size ? `${event.size[0]}x${event.size[1]}` : '';\n const adImpression = {\n ad_unit_code: event.slot.getAdUnitPath(),\n domain: window.location.hostname,\n page_path: window.location.pathname,\n slot_element_id: event.slot.getSlotElementId(),\n session_id: (0,_utils__WEBPACK_IMPORTED_MODULE_0__.getSessionId)(),\n advertiser_id: event.advertiserId,\n campaign_id: event.campaignId,\n creative_id: event.creativeId,\n line_item_id: event.lineItemId,\n hb_bidder_code: event.slot.getTargeting('hb_bidder_code')?.[0] || null,\n hb_cpm: event.slot.getTargeting('hb_cpm')?.[0] || null,\n hb_cpm_currency: event.slot.getTargeting('hb_cpm_currency')?.[0] || null,\n size: size,\n ad_impression_timestamp: adImpressionTimestamp /* UTC timestamp */\n };\n return adImpression;\n}\nfunction adUnfilledObject(slot, adUnfilledTimestamp) {\n const adUnfilled = {\n ad_unit_code: slot.getAdUnitPath(),\n domain: window.location.hostname,\n page_path: window.location.pathname,\n slot_element_id: slot.getSlotElementId(),\n session_id: (0,_utils__WEBPACK_IMPORTED_MODULE_0__.getSessionId)(),\n ad_unfilled_timestamp: adUnfilledTimestamp /* UTC timestamp */\n };\n return adUnfilled;\n}\nfunction adViewableObject(slot, size, adViewableTimestamp) {\n const responseInformation = slot.getResponseInformation();\n const adViewable = {\n ad_unit_code: slot.getAdUnitPath(),\n domain: window.location.hostname,\n page_path: window.location.pathname,\n slot_element_id: slot.getSlotElementId(),\n session_id: (0,_utils__WEBPACK_IMPORTED_MODULE_0__.getSessionId)(),\n advertiser_id: responseInformation?.advertiserId,\n campaign_id: responseInformation?.campaignId,\n creative_id: responseInformation?.creativeId,\n line_item_id: responseInformation?.lineItemId,\n hb_bidder_code: slot.getTargeting('hb_bidder_code')?.[0] || null,\n hb_cpm: slot.getTargeting('hb_cpm')?.[0] || null,\n hb_cpm_currency: slot.getTargeting('hb_cpm_currency')?.[0] || null,\n size: size,\n ad_viewable_timestamp: adViewableTimestamp /* UTC timestamp */\n };\n return adViewable;\n}\n\n\n//# sourceURL=webpack://@wrapp/wrapper/./wrapper/src/logObjectBuilder.ts?")},"./wrapper/src/refreshEventHandlers.ts":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval('__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ setRefreshWorker: () => (/* binding */ setRefreshWorker)\n/* harmony export */ });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils */ "./wrapper/src/utils.ts");\n/* harmony import */ var _stickySlot__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./stickySlot */ "./wrapper/src/stickySlot.ts");\n/* harmony import */ var _enums__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./enums */ "./wrapper/src/enums.ts");\n\n\n\nconst DEFAULT_REFRESH_INTERVAL = 30; // in seconds\nfunction setRefreshWorker(adUnitCode) {\n const inventory = wrapperConfig.iv /*inventory*/\n .find((inv) => (0,_utils__WEBPACK_IMPORTED_MODULE_0__.matchPagePath)(window.location.pathname, inv.pp /*pagePaths*/));\n if (inventory === null) {\n (0,_utils__WEBPACK_IMPORTED_MODULE_0__.consoleDebug)(`no inventory defined for pagepath \'${window.location.pathname}\', ads will not be refreshed`);\n return;\n }\n const adSlot = inventory?.as /*adSlots*/\n .find(({ g /*gam ad unit code*/ }) => g /*gam ad unit code*/ === adUnitCode);\n if (adSlot) {\n const slotDivId = (adSlot.n /*insert*/.a /*anchor*/ === _enums__WEBPACK_IMPORTED_MODULE_2__.Anchor.Window) ?\n (0,_stickySlot__WEBPACK_IMPORTED_MODULE_1__.stickySlotId)(adSlot.n /*insert*/.r /*reference*/) :\n adSlot.n /*insert*/.d /*divId*/;\n const element = document.getElementById(slotDivId);\n const refreshType = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.enumFromString)(_enums__WEBPACK_IMPORTED_MODULE_2__.RefreshTrigger, adSlot?.r /*refresh*/?.t /*trigger*/ ?? \'\');\n if (element && refreshType) {\n switch (refreshType) {\n case _enums__WEBPACK_IMPORTED_MODULE_2__.RefreshTrigger.InView:\n refreshInView(element, adSlot);\n break;\n case _enums__WEBPACK_IMPORTED_MODULE_2__.RefreshTrigger.AfterInterval:\n refreshAfterInterval(element, adSlot);\n break;\n default:\n break;\n }\n }\n }\n}\n/**\n *\n * refresh in view, only after interval\n * max refresh applies (if specified)\n *\n **/\nfunction refreshInView(element, adUnit) {\n const maxRefreshes = adUnit.r /*refresh*/?.c /*count of times*/ ?? Number.MAX_SAFE_INTEGER;\n const timeout = (adUnit.r /*refresh*/?.i /*interval*/ ?? DEFAULT_REFRESH_INTERVAL) * 1000; // refresh interval in miliseconds\n const code = adUnit.g /*gam ad unit code*/;\n var refreshCount = 0; // initialize refresh counter\n const options = {\n root: null, // element to intersect with browser viewport\n rootMargin: "0px", // margin to grow or shrink intersection frame of root\n threshold: 0.0 // % element visible\n };\n var isElementVisible = false; // track element visibility\n const observer = new IntersectionObserver((entries) => {\n entries.forEach(entry => {\n isElementVisible = entry.intersectionRatio > 0; // update visibility status\n });\n }, options);\n observer.observe(element);\n // refresh loop\n const intervalId = setInterval(() => {\n if (isElementVisible && refreshCount < maxRefreshes) {\n refreshCount++;\n pbjs.que.push(() => {\n pbjs.requestBids({\n adUnitCodes: [code],\n timeout: adUnit.o /*auctionTimeout*/ ?? wrapperConfig.o /*auctionTimeout*/\n });\n });\n }\n if (refreshCount >= maxRefreshes) {\n clearInterval(intervalId); // stop interval when max refreshes reached\n observer.disconnect(); // disconnect observer\n }\n }, timeout); // delay between checks\n}\n/**\n *\n * refresh after interval, only if ad was viewable\n * max refresh applies (if specified)\n *\n **/\nfunction refreshAfterInterval(element, adUnit) {\n const maxRefreshes = adUnit.r /*refresh*/?.c /*count of times*/ ?? Number.MAX_SAFE_INTEGER;\n const timeout = (adUnit.r /*refresh*/?.i /*interval*/ ?? DEFAULT_REFRESH_INTERVAL) * 1000; // refresh interval in miliseconds\n const code = adUnit.g /*gam ad unit code*/;\n var refreshCount = 0; // initialize refresh counter\n const options = {\n root: null, // element to intersect with browser viewport\n rootMargin: "0px", // margin to grow or shrink intersection frame of root\n threshold: 0.0 // % element visible\n };\n const observer = new IntersectionObserver((entries, observer) => {\n entries.forEach(entry => {\n if (entry.intersectionRatio > 0) {\n if (refreshCount < maxRefreshes) {\n refreshCount++;\n setTimeout(() => {\n pbjs.que.push(() => {\n pbjs.requestBids({\n adUnitCodes: [code],\n timeout: adUnit.o /*auctionTimeout*/ ?? wrapperConfig.o /*auctionTimeout*/\n });\n });\n }, timeout);\n }\n if (refreshCount >= maxRefreshes) {\n observer.disconnect(); // stop observing after max refreshes\n }\n }\n });\n }, options);\n observer.observe(element);\n}\n\n\n//# sourceURL=webpack://@wrapp/wrapper/./wrapper/src/refreshEventHandlers.ts?')},"./wrapper/src/stickySlot.ts":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ setInsertSlotWorker: () => (/* binding */ setInsertSlotWorker),\n/* harmony export */ stickySlotId: () => (/* binding */ stickySlotId)\n/* harmony export */ });\n/* harmony import */ var _enums__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enums */ \"./wrapper/src/enums.ts\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils */ \"./wrapper/src/utils.ts\");\n\n\nvar StickyAction;\n(function (StickyAction) {\n StickyAction[\"Minimize\"] = \"minimize\";\n StickyAction[\"Restore\"] = \"restore\";\n StickyAction[\"Dismiss\"] = \"dismiss\";\n})(StickyAction || (StickyAction = {}));\nfunction setInsertSlotWorker(adUnit) {\n // TODO add all sticky slots at one time\n if (document.body) { // page has already loaded\n addStickySlot(adUnit.n /*insert*/);\n }\n else {\n document.addEventListener('DOMContentLoaded', () => {\n addStickySlot(adUnit.n /*insert*/);\n });\n }\n}\nconst stickySlotId = (ref) => `ad-${ref}-slot`;\nfunction addStickySlot(insert) {\n const anchorId = `ad-${insert.r /*reference*/}-anchor`;\n const slotId = stickySlotId(insert.r /*reference*/);\n const anchorClass = `ad-anchor ad-${insert.r /*reference*/}`;\n const btnIdPrefix = `ad-${insert.r /*reference*/}-`;\n // TODO allow anchorId to be added only once\n const anchor = document.createElement('div');\n anchor.id = anchorId;\n anchor.className = anchorClass;\n const actionButtonsDiv = document.createElement('div');\n actionButtonsDiv.className = 'ad-action-buttons';\n const btnRes = document.createElement('div');\n btnRes.id = btnIdPrefix + StickyAction.Restore;\n btnRes.innerHTML = '+';\n btnRes.className = 'ad-action-btn';\n btnRes.onclick = () => anchorAction(insert.r /*reference*/, StickyAction.Restore);\n btnRes.title = 'Restore Ad';\n btnRes.style.display = 'none';\n actionButtonsDiv.appendChild(btnRes);\n if (insert.z /*minimize*/) {\n const btnMin = document.createElement('div');\n btnMin.id = btnIdPrefix + StickyAction.Minimize;\n btnMin.innerHTML = '-';\n btnMin.className = 'ad-action-btn';\n btnMin.onclick = () => anchorAction(insert.r /*reference*/, StickyAction.Minimize);\n btnMin.title = 'Minimize Ad';\n actionButtonsDiv.appendChild(btnMin);\n }\n if (insert.s /*dismiss*/) {\n const btnDis = document.createElement('div');\n btnDis.id = btnIdPrefix + StickyAction.Dismiss;\n btnDis.innerHTML = 'x';\n btnDis.className = 'ad-action-btn';\n btnDis.onclick = () => anchorAction(insert.r /*reference*/, StickyAction.Dismiss);\n btnDis.title = 'Dismiss Ad';\n actionButtonsDiv.appendChild(btnDis);\n }\n anchor.appendChild(Object.assign(document.createElement('div'), {\n id: slotId,\n className: 'ad-slot',\n innerHTML: 'Advertisement'\n }));\n anchor.appendChild(actionButtonsDiv);\n switch (insert.r /*reference*/) {\n case _enums__WEBPACK_IMPORTED_MODULE_0__.WindowReference.Top:\n document.body.prepend(anchor);\n break;\n case _enums__WEBPACK_IMPORTED_MODULE_0__.WindowReference.Bottom:\n document.body.append(anchor);\n break;\n case _enums__WEBPACK_IMPORTED_MODULE_0__.WindowReference.Left:\n case _enums__WEBPACK_IMPORTED_MODULE_0__.WindowReference.Right:\n document.body.append(anchor);\n break;\n default:\n //TODO log invalid parameter\n break;\n }\n}\n/**\n * handle ad actions (hide, minimize, restore)\n * @param {string} reference - anchor reference (WindowReference)\n * @param {string} action - action to take (StickyAction)\n */\nfunction anchorAction(reference, action) {\n const idPrefix = `ad-${reference}-`;\n const adAnchor = document.getElementById(idPrefix + 'anchor');\n const restoreBtn = document.getElementById(idPrefix + StickyAction.Restore);\n const minimizeBtn = document.getElementById(idPrefix + StickyAction.Minimize);\n const dismissBtn = document.getElementById(idPrefix + StickyAction.Dismiss);\n var minimizeClassName = '';\n switch (reference) {\n case _enums__WEBPACK_IMPORTED_MODULE_0__.WindowReference.Top:\n case _enums__WEBPACK_IMPORTED_MODULE_0__.WindowReference.Bottom:\n minimizeClassName = 'horizontal-minimized';\n break;\n case _enums__WEBPACK_IMPORTED_MODULE_0__.WindowReference.Left:\n case _enums__WEBPACK_IMPORTED_MODULE_0__.WindowReference.Right:\n minimizeClassName = 'vertical-minimized';\n break;\n default:\n throw new Error(`invalid reference parameter '${reference}' to anchorAction()`);\n }\n switch (action) {\n case StickyAction.Restore:\n adAnchor?.classList.remove(minimizeClassName); // restore\n restoreBtn?.style && (restoreBtn.style.display = 'none'); // hide restore button \n minimizeBtn?.style && (minimizeBtn.style.display = 'block'); // show minimize button\n dismissBtn?.style && (dismissBtn.style.display = 'block'); // show dismiss button\n break;\n case StickyAction.Minimize:\n adAnchor?.classList.add(minimizeClassName); // minimize\n minimizeBtn?.style && (minimizeBtn.style.display = 'none'); // hide minimize button\n restoreBtn?.style && (restoreBtn.style.display = 'block'); // show restore button\n dismissBtn?.style && (dismissBtn.style.display = 'block'); // show dismiss button\n //TODO how to handle refresh?\n break;\n case StickyAction.Dismiss:\n adAnchor?.classList.add('hidden'); // dismiss\n //TODO delete google slot and pbjs ad unit, should we remove element?\n break;\n default:\n throw new Error(`invalid action parameter '${action}' to anchorAction()`);\n }\n}\n//TODO minimized ad slot maximized on refresh\n//TODO should not have unfilled -- house ad or immediate refresh, after which automatically minimized\n\n\n//# sourceURL=webpack://@wrapp/wrapper/./wrapper/src/stickySlot.ts?")},"./wrapper/src/utils.ts":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ consoleDebug: () => (/* binding */ consoleDebug),\n/* harmony export */ consoleError: () => (/* binding */ consoleError),\n/* harmony export */ enumFromString: () => (/* binding */ enumFromString),\n/* harmony export */ generateHash: () => (/* binding */ generateHash),\n/* harmony export */ getPrimaryDomain: () => (/* binding */ getPrimaryDomain),\n/* harmony export */ getSessionId: () => (/* binding */ getSessionId),\n/* harmony export */ getUserId: () => (/* binding */ getUserId),\n/* harmony export */ matchPagePath: () => (/* binding */ matchPagePath)\n/* harmony export */ });\n/* harmony import */ var xxhash_wasm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! xxhash-wasm */ \"../../../home/wrapp/node_modules/xxhash-wasm/esm/xxhash-wasm.js\");\n/* harmony import */ var _enums__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./enums */ \"./wrapper/src/enums.ts\");\n\n\nconst SESSION_LENGTH_MS = 10 * 60 * 1000; // 10 minutes, in milliseconds\nfunction getSessionId() {\n var sessionId = localStorage.getItem('sessionId');\n var sessionIdLastRead = localStorage.getItem('sessionIdLastRead');\n sessionIdLastRead = Date.now().toString(); /* UTC timestamp */\n localStorage.setItem('sessionIdLastRead', sessionIdLastRead);\n if ((!sessionId) ||\n (sessionIdLastRead && ((Date.now() - parseInt(sessionIdLastRead)) > SESSION_LENGTH_MS))) {\n sessionId = Math.random().toString(36).substring(2, 15)\n .padEnd(13, Math.random().toString(36).substring(2, 15));\n localStorage.setItem('sessionId', sessionId);\n }\n return sessionId;\n}\nfunction getUserId() {\n var userId = localStorage.getItem('userId');\n if (!userId) {\n const userId = Math.random().toString(36).substring(2, 15)\n .padEnd(13, Math.random().toString(36).substring(2, 15));\n localStorage.setItem('userId', userId);\n return userId;\n }\n return userId;\n}\nfunction consoleDebug(message, ...args) {\n const urlParams = new URLSearchParams(window.location.search);\n if ((urlParams.get('pbjs_debug') === 'true') ||\n (pbjs.readConfig && pbjs.readConfig('debug') === true)) {\n console.log('%cAAM', 'background: navy; color: white; padding: 2px 5px; border-radius: 3px;', message, ...args);\n }\n}\nfunction consoleError(message, escalate = false, ...args) {\n const urlParams = new URLSearchParams(window.location.search);\n if ((urlParams.get('pbjs_debug') === 'true') ||\n (pbjs.readConfig && pbjs.readConfig('debug') === true)) {\n console.error('%cAAM', 'background: navy; color: white; padding: 2px 5px; border-radius: 3px;', message, ...args);\n }\n if (escalate) {\n throw Error(message);\n }\n}\nfunction enumFromString(enumType, value) {\n return Object.values(enumType).includes(value) ? value : undefined;\n}\nconst getPrimaryDomain = (hostname) => hostname.split('.').slice(-2).join('.');\nasync function generateHash(data, length) {\n const { h64 } = await (0,xxhash_wasm__WEBPACK_IMPORTED_MODULE_0__[\"default\"])();\n const hash64Value = h64(data, BigInt(0));\n const hexHash = hash64Value.toString(16).padStart(16, '0').toUpperCase();\n return hexHash.slice(0, length);\n}\nfunction matchPagePath(currentPath, pagePaths) {\n return pagePaths.some(({ t /*pattern*/, p /*path*/ }) => {\n switch (t /*pattern*/) {\n case _enums__WEBPACK_IMPORTED_MODULE_1__.PagePathPattern.Prefix:\n return currentPath.startsWith(p /*path*/);\n case _enums__WEBPACK_IMPORTED_MODULE_1__.PagePathPattern.Contains:\n return currentPath.includes(p /*path*/);\n case _enums__WEBPACK_IMPORTED_MODULE_1__.PagePathPattern.Suffix:\n return currentPath.endsWith(p /*path*/);\n case _enums__WEBPACK_IMPORTED_MODULE_1__.PagePathPattern.Exact:\n return currentPath === p /*path*/;\n case _enums__WEBPACK_IMPORTED_MODULE_1__.PagePathPattern.Regex:\n try {\n const regex = new RegExp(p /*path*/);\n return regex.test(currentPath);\n }\n catch {\n console.error(`Invalid regex pattern: ${p /*path*/}`);\n return false;\n }\n default:\n return false;\n }\n });\n}\n\n\n//# sourceURL=webpack://@wrapp/wrapper/./wrapper/src/utils.ts?")},"./wrapper/src/wrapperTag.ts":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval('__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _dynamicSlot__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./dynamicSlot */ "./wrapper/src/dynamicSlot.ts");\n/* harmony import */ var _enums__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./enums */ "./wrapper/src/enums.ts");\n\n\nwindow.wrapperTag = {\n insertAdSlot: (refDivId, position) => _dynamicSlot__WEBPACK_IMPORTED_MODULE_0__.insertDynamicAdSlot(refDivId, position),\n deleteAdSlot: (divId) => _dynamicSlot__WEBPACK_IMPORTED_MODULE_0__.deleteDynamicAdSlot(divId)\n};\n\n\n//# sourceURL=webpack://@wrapp/wrapper/./wrapper/src/wrapperTag.ts?')},"../../../home/wrapp/node_modules/xxhash-wasm/esm/xxhash-wasm.js":(__unused_webpack___webpack_module__,__webpack_exports__,__webpack_require__)=>{"use strict";eval('__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ "default": () => (/* binding */ e)\n/* harmony export */ });\nconst t=new Uint8Array([0,97,115,109,1,0,0,0,1,48,8,96,3,127,127,127,1,127,96,3,127,127,127,0,96,2,127,127,0,96,1,127,1,127,96,3,127,127,126,1,126,96,3,126,127,127,1,126,96,2,127,126,0,96,1,127,1,126,3,11,10,0,0,2,1,3,4,5,6,1,7,5,3,1,0,1,7,85,9,3,109,101,109,2,0,5,120,120,104,51,50,0,0,6,105,110,105,116,51,50,0,2,8,117,112,100,97,116,101,51,50,0,3,8,100,105,103,101,115,116,51,50,0,4,5,120,120,104,54,52,0,5,6,105,110,105,116,54,52,0,7,8,117,112,100,97,116,101,54,52,0,8,8,100,105,103,101,115,116,54,52,0,9,10,251,22,10,242,1,1,4,127,32,0,32,1,106,33,3,32,1,65,16,79,4,127,32,3,65,16,107,33,6,32,2,65,168,136,141,161,2,106,33,3,32,2,65,137,235,208,208,7,107,33,4,32,2,65,207,140,162,142,6,106,33,5,3,64,32,3,32,0,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,3,32,4,32,0,65,4,106,34,0,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,4,32,2,32,0,65,4,106,34,0,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,2,32,5,32,0,65,4,106,34,0,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,5,32,6,32,0,65,4,106,34,0,79,13,0,11,32,2,65,12,119,32,5,65,18,119,106,32,4,65,7,119,106,32,3,65,1,119,106,5,32,2,65,177,207,217,178,1,106,11,32,1,106,32,0,32,1,65,15,113,16,1,11,146,1,0,32,1,32,2,106,33,2,3,64,32,1,65,4,106,32,2,75,69,4,64,32,0,32,1,40,2,0,65,189,220,202,149,124,108,106,65,17,119,65,175,214,211,190,2,108,33,0,32,1,65,4,106,33,1,12,1,11,11,3,64,32,1,32,2,79,69,4,64,32,0,32,1,45,0,0,65,177,207,217,178,1,108,106,65,11,119,65,177,243,221,241,121,108,33,0,32,1,65,1,106,33,1,12,1,11,11,32,0,32,0,65,15,118,115,65,247,148,175,175,120,108,34,0,65,13,118,32,0,115,65,189,220,202,149,124,108,34,0,65,16,118,32,0,115,11,63,0,32,0,65,8,106,32,1,65,168,136,141,161,2,106,54,2,0,32,0,65,12,106,32,1,65,137,235,208,208,7,107,54,2,0,32,0,65,16,106,32,1,54,2,0,32,0,65,20,106,32,1,65,207,140,162,142,6,106,54,2,0,11,195,4,1,6,127,32,1,32,2,106,33,6,32,0,65,24,106,33,4,32,0,65,40,106,40,2,0,33,3,32,0,32,0,40,2,0,32,2,106,54,2,0,32,0,65,4,106,34,5,32,5,40,2,0,32,2,65,16,79,32,0,40,2,0,65,16,79,114,114,54,2,0,32,2,32,3,106,65,16,73,4,64,32,3,32,4,106,32,1,32,2,252,10,0,0,32,0,65,40,106,32,2,32,3,106,54,2,0,15,11,32,3,4,64,32,3,32,4,106,32,1,65,16,32,3,107,34,2,252,10,0,0,32,0,65,8,106,34,3,32,3,40,2,0,32,4,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,54,2,0,32,0,65,12,106,34,3,32,3,40,2,0,32,4,65,4,106,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,54,2,0,32,0,65,16,106,34,3,32,3,40,2,0,32,4,65,8,106,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,54,2,0,32,0,65,20,106,34,3,32,3,40,2,0,32,4,65,12,106,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,54,2,0,32,0,65,40,106,65,0,54,2,0,32,1,32,2,106,33,1,11,32,1,32,6,65,16,107,77,4,64,32,6,65,16,107,33,8,32,0,65,8,106,40,2,0,33,2,32,0,65,12,106,40,2,0,33,3,32,0,65,16,106,40,2,0,33,5,32,0,65,20,106,40,2,0,33,7,3,64,32,2,32,1,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,2,32,3,32,1,65,4,106,34,1,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,3,32,5,32,1,65,4,106,34,1,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,5,32,7,32,1,65,4,106,34,1,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,7,32,8,32,1,65,4,106,34,1,79,13,0,11,32,0,65,8,106,32,2,54,2,0,32,0,65,12,106,32,3,54,2,0,32,0,65,16,106,32,5,54,2,0,32,0,65,20,106,32,7,54,2,0,11,32,1,32,6,73,4,64,32,4,32,1,32,6,32,1,107,34,1,252,10,0,0,32,0,65,40,106,32,1,54,2,0,11,11,97,1,1,127,32,0,65,16,106,40,2,0,33,1,32,0,65,4,106,40,2,0,4,127,32,1,65,12,119,32,0,65,20,106,40,2,0,65,18,119,106,32,0,65,12,106,40,2,0,65,7,119,106,32,0,65,8,106,40,2,0,65,1,119,106,5,32,1,65,177,207,217,178,1,106,11,32,0,40,2,0,106,32,0,65,24,106,32,0,65,40,106,40,2,0,16,1,11,255,3,2,3,126,1,127,32,0,32,1,106,33,6,32,1,65,32,79,4,126,32,6,65,32,107,33,6,32,2,66,214,235,130,238,234,253,137,245,224,0,124,33,3,32,2,66,177,169,172,193,173,184,212,166,61,125,33,4,32,2,66,249,234,208,208,231,201,161,228,225,0,124,33,5,3,64,32,3,32,0,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,3,32,4,32,0,65,8,106,34,0,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,4,32,2,32,0,65,8,106,34,0,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,2,32,5,32,0,65,8,106,34,0,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,5,32,6,32,0,65,8,106,34,0,79,13,0,11,32,2,66,12,137,32,5,66,18,137,124,32,4,66,7,137,124,32,3,66,1,137,124,32,3,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,4,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,2,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,5,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,5,32,2,66,197,207,217,178,241,229,186,234,39,124,11,32,1,173,124,32,0,32,1,65,31,113,16,6,11,134,2,0,32,1,32,2,106,33,2,3,64,32,2,32,1,65,8,106,79,4,64,32,1,41,3,0,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,32,0,133,66,27,137,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,33,0,32,1,65,8,106,33,1,12,1,11,11,32,1,65,4,106,32,2,77,4,64,32,0,32,1,53,2,0,66,135,149,175,175,152,182,222,155,158,127,126,133,66,23,137,66,207,214,211,190,210,199,171,217,66,126,66,249,243,221,241,153,246,153,171,22,124,33,0,32,1,65,4,106,33,1,11,3,64,32,1,32,2,73,4,64,32,0,32,1,49,0,0,66,197,207,217,178,241,229,186,234,39,126,133,66,11,137,66,135,149,175,175,152,182,222,155,158,127,126,33,0,32,1,65,1,106,33,1,12,1,11,11,32,0,32,0,66,33,136,133,66,207,214,211,190,210,199,171,217,66,126,34,0,32,0,66,29,136,133,66,249,243,221,241,153,246,153,171,22,126,34,0,32,0,66,32,136,133,11,77,0,32,0,65,8,106,32,1,66,214,235,130,238,234,253,137,245,224,0,124,55,3,0,32,0,65,16,106,32,1,66,177,169,172,193,173,184,212,166,61,125,55,3,0,32,0,65,24,106,32,1,55,3,0,32,0,65,32,106,32,1,66,249,234,208,208,231,201,161,228,225,0,124,55,3,0,11,244,4,2,3,127,4,126,32,1,32,2,106,33,5,32,0,65,40,106,33,4,32,0,65,200,0,106,40,2,0,33,3,32,0,32,0,41,3,0,32,2,173,124,55,3,0,32,2,32,3,106,65,32,73,4,64,32,3,32,4,106,32,1,32,2,252,10,0,0,32,0,65,200,0,106,32,2,32,3,106,54,2,0,15,11,32,3,4,64,32,3,32,4,106,32,1,65,32,32,3,107,34,2,252,10,0,0,32,0,65,8,106,34,3,32,3,41,3,0,32,4,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,55,3,0,32,0,65,16,106,34,3,32,3,41,3,0,32,4,65,8,106,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,55,3,0,32,0,65,24,106,34,3,32,3,41,3,0,32,4,65,16,106,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,55,3,0,32,0,65,32,106,34,3,32,3,41,3,0,32,4,65,24,106,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,55,3,0,32,0,65,200,0,106,65,0,54,2,0,32,1,32,2,106,33,1,11,32,1,65,32,106,32,5,77,4,64,32,5,65,32,107,33,2,32,0,65,8,106,41,3,0,33,6,32,0,65,16,106,41,3,0,33,7,32,0,65,24,106,41,3,0,33,8,32,0,65,32,106,41,3,0,33,9,3,64,32,6,32,1,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,6,32,7,32,1,65,8,106,34,1,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,7,32,8,32,1,65,8,106,34,1,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,8,32,9,32,1,65,8,106,34,1,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,9,32,2,32,1,65,8,106,34,1,79,13,0,11,32,0,65,8,106,32,6,55,3,0,32,0,65,16,106,32,7,55,3,0,32,0,65,24,106,32,8,55,3,0,32,0,65,32,106,32,9,55,3,0,11,32,1,32,5,73,4,64,32,4,32,1,32,5,32,1,107,34,1,252,10,0,0,32,0,65,200,0,106,32,1,54,2,0,11,11,188,2,1,5,126,32,0,65,24,106,41,3,0,33,1,32,0,41,3,0,34,2,66,32,90,4,126,32,0,65,8,106,41,3,0,34,3,66,1,137,32,0,65,16,106,41,3,0,34,4,66,7,137,124,32,1,66,12,137,32,0,65,32,106,41,3,0,34,5,66,18,137,124,124,32,3,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,4,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,1,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,5,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,5,32,1,66,197,207,217,178,241,229,186,234,39,124,11,32,2,124,32,0,65,40,106,32,2,66,31,131,167,16,6,11]);async function e(){return function(t){const{exports:{mem:e,xxh32:n,xxh64:r,init32:i,update32:a,digest32:o,init64:s,update64:u,digest64:c}}=t;let h=new Uint8Array(e.buffer);function g(t,n){if(e.buffer.byteLength<t+n){const r=Math.ceil((t+n-e.buffer.byteLength)/65536);e.grow(r),h=new Uint8Array(e.buffer)}}function f(t,e,n,r,i,a){g(t);const o=new Uint8Array(t);return h.set(o),n(0,e),o.set(h.subarray(0,t)),{update(e){let n;return h.set(o),"string"==typeof e?(g(3*e.length,t),n=w.encodeInto(e,h.subarray(t)).written):(g(e.byteLength,t),h.set(e,t),n=e.byteLength),r(0,t,n),o.set(h.subarray(0,t)),this},digest:()=>(h.set(o),a(i(0)))}}function y(t){return t>>>0}const b=2n**64n-1n;function d(t){return t&b}const w=new TextEncoder,l=0,p=0n;function x(t,e=l){return g(3*t.length,0),y(n(0,w.encodeInto(t,h).written,e))}function L(t,e=p){return g(3*t.length,0),d(r(0,w.encodeInto(t,h).written,e))}return{h32:x,h32ToString:(t,e=l)=>x(t,e).toString(16).padStart(8,"0"),h32Raw:(t,e=l)=>(g(t.byteLength,0),h.set(t),y(n(0,t.byteLength,e))),create32:(t=l)=>f(48,t,i,a,o,y),h64:L,h64ToString:(t,e=p)=>L(t,e).toString(16).padStart(16,"0"),h64Raw:(t,e=p)=>(g(t.byteLength,0),h.set(t),d(r(0,t.byteLength,e))),create64:(t=p)=>f(88,t,s,u,c,d)}}((await WebAssembly.instantiate(t)).instance)}\n//# sourceMappingURL=xxhash-wasm.js.map\n\n\n//# sourceURL=webpack://@wrapp/wrapper/../../../home/wrapp/node_modules/xxhash-wasm/esm/xxhash-wasm.js?')},"../../../home/wrapp/builds/8EFA792FE841A/0.0.26/config-d8EFA792FE841A-v0-0-26.json":module=>{"use strict";eval('module.exports = /*#__PURE__*/JSON.parse(\'{"d":{"id":"8EFA792FE841A"},"f":null,"l":"https://logs.animaadtech.com","o":{"a":null,"b":false},"t":"https://experiments.animaadtech.com","v":"","as":[{"f":0,"g":"/19968336/header-bid-tag-0/0","l":"EG","m":{"b":false,"f":"BN","sz":{"a":[[300,600]]}},"n":{"a":"ST","d":"sidebar-ad-1","r":"IN"},"o":null,"r":{"c":10,"i":15,"t":"IV"},"kv":{},"tg":[{"b":"sovrn","pm":{"tagid":"1278387"}},{"b":"appnexus","pm":{"placement_id":13144370}},{"b":"testbidder","pm":{}}]}],"ly":[]}\');\n\n//# sourceURL=webpack://@wrapp/wrapper/../../../home/wrapp/builds/8EFA792FE841A/0.0.26/config-d8EFA792FE841A-v0-0-26.json?')}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var n=__webpack_module_cache__[e]={id:e,exports:{}};return __webpack_modules__[e](n,n.exports,__webpack_require__),n.exports}__webpack_require__.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(t,{a:t}),t},__webpack_require__.d=(e,t)=>{for(var n in t)__webpack_require__.o(t,n)&&!__webpack_require__.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},__webpack_require__.nc=void 0,__webpack_require__("./wrapper/src/index.ts"),__webpack_require__("./wrapper/src/wrapperTag.ts"),__webpack_require__("../../../home/wrapp/builds/8EFA792FE841A/0.0.26/prebid.js");var __webpack_exports__=__webpack_require__("./wrapper/css/sticky.css")})();
package/package.json ADDED
@@ -0,0 +1,28 @@
1
+ {
2
+ "name": "@dev-wrapp/8efa792fe841a",
3
+ "version": "0.0.26",
4
+ "main": "dist/app-p8efa792fe841a.js",
5
+ "scripts": {
6
+ "build": "webpack",
7
+ "test": "echo \"Error: no test specified\" && exit 1"
8
+ },
9
+ "files": [
10
+ "dist/app-p8efa792fe841a.js"
11
+ ],
12
+ "author": "Anima, Inc. <admin@animaadtech.com>",
13
+ "license": "ISC",
14
+ "dependencies": {
15
+ "@types/googletag": "^3.1.3",
16
+ "css-loader": "^7.1.2",
17
+ "json-loader": "^0.5.7",
18
+ "style-loader": "^4.0.0",
19
+ "terser-webpack-plugin": "^5.3.10",
20
+ "ts-loader": "^9.5.1",
21
+ "typescript": "^5.7.2",
22
+ "webpack": "^5.96.1",
23
+ "webpack-cli": "^5.1.4",
24
+ "xxhash-wasm": "^1.1.0"
25
+ },
26
+ "keywords": [],
27
+ "description": "open programmatic web app"
28
+ }