“)),[e.width,e.height]=x[r.size_id].split(“x”).map((e=>Number(e)))),e.rubiconTargeting=(Array.isArray(r.targeting)?r.targeting:[]).reduce(((e,t)=>(e[t.key]=t.values[0],e)),{rpfl_elemid:a.adUnitCode}),t.push(e)}else(0,l.logError)(“Rubicon: bidRequest undefined at index position:”.concat(n),s,e);var c,p;return t}),[]).sort(((e,t)=>(t.cpm||0)-(e.cpm||0)))},getUserSyncs:function(e,t,r,i){if(!I&&e.iframeEnabled){let e={};return r&&(“boolean”==typeof r.gdprApplies&&(e.gdpr=Number(r.gdprApplies)),”string”==typeof r.consentString&&(e.gdpr_consent=r.consentString)),i&&(e.us_privacy=encodeURIComponent(i)),e=Object.keys(e).length?”?”.concat((0,l.formatQS)(e)):””,I=!0,{type:”iframe”,url:”https://”.concat(f.syncHost||”eus”,”.rubiconproject.com/usync.html”)+e}}},transformBidParams:function(e,t){return(0,l.convertTypes)({accountId:”number”,siteId:”number”,zoneId:”number”},e)}};function v(e,t){let r;return r=e.params.referrer?e.params.referrer:t.refererInfo.page,e.params.secure?r.replace(/^http:/i,”https:”):r}function h(e){const t=document.getElementById(e.adUnitCode);!function(e){const t=e.querySelector(“div[id^=’google_ads’]”);t&&t.style.setProperty(“display”,”none”)}(t),function(e){const t=e.querySelector(“script[id^=’sas_script’]”),r=t&&t.nextSibling;r&&”iframe”===r.localName&&r.style.setProperty(“display”,”none”)}(t);const r=e.renderer.getConfig();e.renderer.push((()=>{window.MagniteApex.renderAd({width:e.width,height:e.height,vastUrl:e.vastUrl,placement:{attachTo:t,align:r.align||”center”,position:r.position||”append”},closeButton:r.closeButton||!1,label:r.label||void 0,collapse:r.collapse||!0})}))}function _(e,t){let r=e.params;if(t===d.pX){let t=[];return r.video&&r.video.playerWidth&&r.video.playerHeight?t=[r.video.playerWidth,r.video.playerHeight]:Array.isArray((0,m.Z)(e,”mediaTypes.video.playerSize”))&&1===e.mediaTypes.video.playerSize.length?t=e.mediaTypes.video.playerSize[0]:Array.isArray(e.sizes)&&e.sizes.length>0&&Array.isArray(e.sizes[0])&&e.sizes[0].length>1&&(t=e.sizes[0]),t}let i=[];return Array.isArray(r.sizes)?i=r.sizes:void 0!==(0,m.Z)(e,”mediaTypes.banner.sizes”)?i=k(e.mediaTypes.banner.sizes):Array.isArray(e.sizes)&&e.sizes.length>0?i=k(e.sizes):(0,l.logWarn)(“Rubicon: no sizes are setup or found”),function(e){const t=[15,2,9];return e.sort(((e,r)=>{const i=t.indexOf(e),n=t.indexOf(r);return i>-1||n>-1?-1===i?1:-1===n?-1:i-n:e-r}))}(i)}function k(e){return(0,l.parseSizesInput)(e).reduce(((e,t)=>{let r=parseInt(x[t],10);return r&&e.push(r),e}),[])}function j(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=[];if(function(e){let t=void 0!==(0,m.Z)(e,”mediaTypes.”.concat(d.pX)),r=void 0!==(0,m.Z)(e,”mediaTypes.”.concat(d.Mk)),i=void 0!==(0,m.Z)(e,”params.bidonmultiformat”),n=”object”!=typeof(0,m.Z)(e,”params.video”);return!(!t||!i)||(r&&n&&(t=!1),t&&n&&(0,u.N)(e,”params.video”,{}),t)}(e)){if(-1===[“outstream”,”instream”].indexOf((0,m.Z)(e,”mediaTypes.”.concat(d.pX,”.context”))))return t&&(0,l.logError)(“Rubicon: mediaTypes.video.context must be outstream or instream”),r;if(_(e,d.pX).length<2)return t&&(0,l.logError)(“Rubicon: could not determine the playerSize of the video”),r;t&&(0,l.logMessage)(“Rubicon: making video request for adUnit”,e.adUnitCode),r.push(d.pX)}if(void 0!==(0,m.Z)(e,”mediaTypes.”.concat(d.B5))&&r.push(d.B5),void 0!==(0,m.Z)(e,”mediaTypes.”.concat(d.Mk))){if(0===_(e,d.Mk).length)return t&&(0,l.logError)(“Rubicon: could not determine the sizes for banner request”),r;t&&(0,l.logMessage)(“Rubicon: making banner request for adUnit”,e.adUnitCode),r.push(d.Mk)}return r}function A(e){let t=!1;const r=[“asi”,”sid”,”hp”];return e.nodes?(t=e.nodes.reduce(((e,t)=>e?r.every((e=>t.hasOwnProperty(e))):e),!0),t||(0,l.logError)(“Rubicon: required schain params missing”),t):t}function w(e,t){return”rp_schain”===e?”rp_schain=”.concat(t):””.concat(e,”=”).concat(encodeURIComponent(t))}var I=!1;(0,s.dX)(b),(0,i.z)(“rubiconBidAdapter”)},26372:(e,t,r)=>{r.d(t,{DZ:()=>o,Px:()=>s,TP:()=>d,YC:()=>a,Z:()=>n,f8:()=>l,fP:()=>u,gm:()=>i,md:()=>c});const i=[“request”,”imp”,”bidResponse”,”response”],[n,o,s,a]=i,[d,c]=[“default”,”pbs”],p=new Set(i);const{registerOrtbProcessor:l,getProcessors:u}=function(){const e={};return{registerOrtbProcessor(t){let{type:r,name:n,fn:o,priority:s=0,dialects:a=[d]}=t;if(!p.has(r))throw new Error(“ORTB processor type must be one of: “.concat(i.join(“, “)));a.forEach((t=>{e.hasOwnProperty(t)||(e[t]={}),e[t].hasOwnProperty(r)||(e[t][r]={}),e[t][r][n]={priority:s,fn:o}}))},getProcessors:t=>e[t]||{}}}()}},e=>{e.O(0,[85279,70951],(()=>{return t=40060,e(e.s=t);var t}));e.O()}]);
(self.pbjsChunk=self.pbjsChunk||[]).push([[92972],{54834:(o,e,t)=>{var n=t(78640),r=t(64358),d=t(92797),i=t(51039),a=t(15164),u=t(34516),c=t(9633),l=t(81694);const s=(0,a.df)({moduleType:c.y2,moduleName:”pubCommonId”}),m=”cookie”,f=”html5″,g=”_pubcid_optout”,p=”PublisherCommonId”;function I(o,e){if(e===m)return s.getCookie(o);if(e===f&&s.hasLocalStorage()){const e=s.getDataFromLocalStorage(“”.concat(o,”_exp”));if(!e)return s.getDataFromLocalStorage(o);if(new Date(e).getTime()-Date.now()>0)return s.getDataFromLocalStorage(o)}}function b(o,e){return function(t,n){e?v(e,o,(()=>{t(n()||o)}))():t(o)}}function v(o){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:””,t=arguments.length>2?arguments[2]:void 0;if(!o)return;const n=(0,r.parseUrl)(o);n.search.id=encodeURIComponent(“pubcid:”+e);const d=(0,r.buildUrl)(n);return function(){(0,r.triggerPixel)(d,t)}}function h(){return!!(s.cookiesAreEnabled()&&I(g,m)||s.hasLocalStorage()&&I(g,f))}const C={name:”sharedId”,aliasName:”pubCommonId”,gvlid:u.$P,decode(o,e){if(h())return void(0,r.logInfo)(“PubCommonId decode: Has opted-out”);(0,r.logInfo)(” Decoded value PubCommonId “+o);return{pubcid:o}},getId:function(){let o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>2?arguments[2]:void 0;if(h())return void(0,r.logInfo)(“PubCommonId: Has opted-out”);if(i.VP.getCoppa())return void(0,r.logInfo)(“PubCommonId: IDs not provided for coppa requests, exiting PubCommonId”);const{params:{create:t=!0,pixelUrl:n}={}}=o;let d=e;if(!d){try{“object”==typeof window[p]&&(d=window[p].getId())}catch(o){}d||(d=t&&(0,r.hasDeviceAccess)()?(0,r.generateUUID)():void 0)}return{id:d,callback:b(d,n)}},extendId:function(){let o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>2?arguments[2]:void 0;if(h())return(0,r.logInfo)(“PubCommonId: Has opted-out”),{id:void 0};if(i.VP.getCoppa())return void(0,r.logInfo)(“PubCommonId: IDs not provided for coppa requests, exiting PubCommonId”);const{params:{extend:t=!1,pixelUrl:n}={}}=o;if(t){if(n){return{callback:v(n,e)}}return{id:e}}},domainOverride:(0,l.U)(s,”sharedId”)};(0,d.Bx)(“userId”,C),(0,n.z)(“sharedIdSystem”)}},o=>{o.O(0,[57748],(()=>{return e=54834,o(o.s=e);var e}));o.O()}]);
(self.pbjsChunk=self.pbjsChunk||[]).push([[88029],{76401:(e,t,n)=>{var r=n(78640),i=n(64358),a=n(20265),s=n(14699),d=n(15164);const o=”teads”,c=12,p=11,u=0,I=22,g=(0,d.df)({bidderCode:o}),l={code:o,gvlid:132,supportedMediaTypes:[“video”,”banner”],isBidRequestValid:function(e){let t=!1;if(void 0!==e.params){let n=b((0,i.getValue)(e.params,”placementId”)),r=b((0,i.getValue)(e.params,”pageId”));t=n&&r}return t||(0,i.logError)(“Teads placementId and pageId parameters are required. Bid aborted.”),t},buildRequests:function(e,t){const n=e.map(v),r={referrer:m(t),pageReferrer:document.referrer,networkBandwidth:(i=window.navigator,i&&i.connection&&i.connection.downlink>=0?i.connection.downlink.toString():””),timeToFirstByte:y(window),data:n,deviceWidth:screen.width,hb_version:”7.52.0″,…f(e),…h(e)};var i;const s=e[0];s.schain&&(r.schain=s.schain);let d=t.gdprConsent;if(t&&d){let e=”boolean”==typeof d.gdprApplies,t=”string”==typeof d.consentString,n=e?function(e,t){let n=c;e?t&&!t.isServiceSpecific&&(n=p):n=u;return n}(d.gdprApplies,d.vendorData):I;r.gdpr_iab={consent:t?d.consentString:””,status:n,apiVersion:d.apiVersion}}t&&t.uspConsent&&(r.us_privacy=t.uspConsent);const o=(0,a.Z)(s,”ortb2.device.sua”);o&&(r.userAgentClientHints=o);return{method:”POST”,url:”https://a.teads.tv/hb/bid-request”,data:JSON.stringify(r)}},interpretResponse:function(e,t){const n=[];return(e=e.body).responses&&e.responses.forEach((function(e){const t={cpm:e.cpm,width:e.width,height:e.height,currency:e.currency,netRevenue:!0,ttl:e.ttl,meta:{advertiserDomains:e&&e.adomain?e.adomain:[]},ad:e.ad,requestId:e.bidId,creativeId:e.creativeId,placementId:e.placementId};e.dealId&&(t.dealId=e.dealId),n.push(t)})),n}};function f(e){const t={unifiedId2:”uid2.id”,liveRampId:”idl_env”,lotamePanoramaId:”lotamePanoramaId”,id5Id:”id5id.uid”,criteoId:”criteoId”,yahooConnectId:”connectId”,quantcastId:”quantcastId”,epsilonPublisherLinkId:”publinkId”,publisherFirstPartyViewerId:”pubcid”,merkleId:”merkleId.id”,kinessoId:”kpuid”};let n={};for(const r in t){const i=t[r],s=(0,a.Z)(e,”0.userId.”.concat(i));s&&(n[r]=s)}return n}function m(e){let t=””;return e&&e.refererInfo&&e.refererInfo.page&&(t=e.refererInfo.page),t}function y(e){const t=e.performance||e.webkitPerformance||e.msPerformance||e.mozPerformance,n=t&&”function”==typeof t.getEntriesByType&&”[object Function]”===Object.prototype.toString.call(t.getEntriesByType)&&t.getEntriesByType(“navigation”)[0]&&t.getEntriesByType(“navigation”)[0].responseStart&&t.getEntriesByType(“navigation”)[0].requestStart&&t.getEntriesByType(“navigation”)[0].responseStart>0&&t.getEntriesByType(“navigation”)[0].requestStart>0&&Math.round(t.getEntriesByType(“navigation”)[0].responseStart-t.getEntriesByType(“navigation”)[0].requestStart);if(n)return n.toString();const r=t&&t.timing.responseStart&&t.timing.requestStart&&t.timing.responseStart>0&&t.timing.requestStart>0&&t.timing.responseStart-t.timing.requestStart;return r?r.toString():””}function v(e){const t={};let n=(0,i.getValue)(e.params,”placementId”),r=(0,i.getValue)(e.params,”pageId”);const s=(0,a.Z)(e,”ortb2Imp.ext.gpid”);return t.sizes=function(e){return(0,i.parseSizesInput)(function(e){let t=(0,a.Z)(e,”mediaTypes.video.playerSize”),n=(0,a.Z)(e,”mediaTypes.video.sizes”),r=(0,a.Z)(e,”mediaTypes.banner.sizes”);if((0,i.isArray)(r)||(0,i.isArray)(t)||(0,i.isArray)(n)){return[r,n,t].reduce((function(e,t){return(0,i.isArray)(t)&&((0,i.isArray)(t[0])?t.forEach((function(t){e.push(t)})):e.push(t)),e}),[])}return e.sizes}(e))}(e),t.bidId=(0,i.getBidIdParameter)(“bidId”,e),t.bidderRequestId=(0,i.getBidIdParameter)(“bidderRequestId”,e),t.placementId=parseInt(n,10),t.pageId=parseInt(r,10),t.adUnitCode=(0,i.getBidIdParameter)(“adUnitCode”,e),t.auctionId=(0,i.getBidIdParameter)(“auctionId”,e),t.transactionId=(0,i.getBidIdParameter)(“transactionId”,e),s&&(t.gpid=s),t}function b(e){return parseInt(e)>0}function h(e){const t=(0,a.Z)(e,”0.userId.teadsId”);if(t)return{firstPartyCookieTeadsId:t};if(g.cookiesAreEnabled(null)){const e=g.getCookie(“_tfpvi”,null);if(e)return{firstPartyCookieTeadsId:e}}return{}}(0,s.dX)(l),(0,r.z)(“teadsBidAdapter”)}},e=>{var t;t=76401,e(e.s=t)}]);
(self.pbjsChunk=self.pbjsChunk||[]).push([[82599],{70789:(e,t,r)=>{var n=r(78640),i=r(64358),o=r(24679),a=r(14699),d=r(3193),u=r(15164);const s=”triplelift”;let p=null,c=null;const l=(0,u.df)({bidderCode:s}),m={gvlid:28,code:s,supportedMediaTypes:[o.Mk,o.pX],isBidRequestValid:function(e){return void 0!==e.params.inventoryCode},buildRequests:function(e,t){let r=”https://tlx.3lift.com/header/auction?”,n=function(e,t){var r,n;let o={},{schain:a}=e[0];const d=function(e){const t={},r={},n={},o=e.ortb2||{},a=function(){const e=l.getDataFromLocalStorage(“opecloud_ctx”);if(!e)return null;try{return JSON.parse(e)}catch(e){return(0,i.logError)(“Triplelift: error parsing JSON: “,e),null}}(),d=Object.assign({},o.site),u=Object.assign({},o.user);if(a){u.data=u.data||[];try{u.data.push({name:”www.1plusx.com”,ext:a})}catch(e){(0,i.logError)(“Triplelift: error adding 1plusX segments: “,e)}}v(r,d),v(n,u),(0,i.isEmpty)(r)||(t.context=r);(0,i.isEmpty)(n)||(t.user=n);return t}(t);o.imp=e.map((function(e,t){let r={id:t,tagid:e.params.inventoryCode,floor:b(e)};return f(e)&&(r.video=function(e){let t={…e.params.video,…e.mediaTypes.video};try{t.w||(t.w=t.playerSize[0][0]),t.h||(t.h=t.playerSize[0][1])}catch(e){(0,i.logWarn)(“Video size not defined”,e)}”instream”===t.context&&(t.placement=1);”outstream”===t.context&&(t.placement?-1===[3,4,5].indexOf(t.placement)&&((0,i.logMessage)(“video.placement value of “.concat(t.placement,” is invalid for outstream context. Setting placement to 3″)),t.placement=3):t.placement=3);t.playbackmethod&&Number.isInteger(t.playbackmethod)&&(t.playbackmethod=Array.from(String(t.playbackmethod),Number));return delete t.playerSize,t}(e)),e.mediaTypes.banner&&!y(e)&&(r.banner={format:_(e.sizes)}),(0,i.isEmpty)(e.ortb2Imp)||(r.fpd=function(e){const t={},r={};v(r,e.ext),(0,i.isEmpty)(r)||(t.context=r);return t}(e.ortb2Imp),(0,i.isEmpty)(e.ortb2Imp.ext)||(r.ext={…e.ortb2Imp.ext})),r}));let u=[…h([e[0]]),…S([e[0]]),…x([e[0]]),…I([e[0]]),…A(e[0])];u.length>0&&(o.user={ext:{eids:u}});let s=function(e,t){let r={};(0,i.isEmpty)(e)||(r.schain={…e});(0,i.isEmpty)(t)||(r.fpd={…t});return r}(a,d);(0,i.isEmpty)(s)||(o.ext=s);null!=t&&null!==(r=t.ortb2)&&void 0!==r&&null!==(n=r.regs)&&void 0!==n&&n.gpp&&(o.regs=Object.assign({},t.ortb2.regs));return o}(e,t);if(r=(0,i.tryAppendQueryString)(r,”lib”,”prebid”),r=(0,i.tryAppendQueryString)(r,”v”,”7.52.0″),t&&t.refererInfo){let e=t.refererInfo.page;r=(0,i.tryAppendQueryString)(r,”referrer”,e)}return t&&t.timeout&&(r=(0,i.tryAppendQueryString)(r,”tmax”,t.timeout)),t&&t.gdprConsent&&(p=void 0===t.gdprConsent.gdprApplies||t.gdprConsent.gdprApplies,r=(0,i.tryAppendQueryString)(r,”gdpr”,p.toString()),void 0!==t.gdprConsent.consentString&&(c=t.gdprConsent.consentString,r=(0,i.tryAppendQueryString)(r,”cmp_cs”,c))),t&&t.uspConsent&&(r=(0,i.tryAppendQueryString)(r,”us_privacy”,t.uspConsent)),!0===d.config.getConfig(“coppa”)&&(r=(0,i.tryAppendQueryString)(r,”coppa”,!0)),r.lastIndexOf(“&”)===r.length-1&&(r=r.substring(0,r.length-1)),(0,i.logMessage)(“tlCall request built: “+r),{method:”POST”,url:r,data:n,bidderRequest:t}},interpretResponse:function(e,t){let{bidderRequest:r}=t;return(e.body.bids||[]).map((function(e){return function(e,t){let r={},n=t.width||1,i=t.height||1,o=t.deal_id||””,a=t.crid||””,d=e.bids[t.imp_id];0!=t.cpm&&t.ad&&(r={requestId:d.bidId,cpm:t.cpm,width:n,height:i,netRevenue:!0,ad:t.ad,creativeId:a,dealId:o,currency:”USD”,ttl:300,tl_source:t.tl_source,meta:{}},f(d)&&”video”===t.media_type&&(r.vastXml=t.ad,r.mediaType=”video”,r.ttl=3600),t.advertiser_name&&(r.meta.advertiserName=t.advertiser_name),t.adomain&&t.adomain.length&&(r.meta.advertiserDomains=t.adomain),t.tl_source&&”hdx”==t.tl_source&&(f(d)&&”video”===t.media_type?r.meta.mediaType=”video”:r.meta.mediaType=”banner”),t.tl_source&&”tlx”==t.tl_source&&(r.meta.mediaType=”native”),a&&(r.meta.networkId=a.slice(0,a.indexOf(“_”))));return r}(r,e)}))},getUserSyncs:function(e,t,r,n){let o=function(e){if(!e)return;if(e.iframeEnabled)return”iframe”;if(e.pixelEnabled)return”image”}(e);if(!o)return;let a=”https://eb2.3lift.com/sync?”;return”image”===o&&(a=(0,i.tryAppendQueryString)(a,”px”,1),a=(0,i.tryAppendQueryString)(a,”src”,”prebid”)),(null!==c||p)&&(a=(0,i.tryAppendQueryString)(a,”gdpr”,p),a=(0,i.tryAppendQueryString)(a,”cmp_cs”,c)),n&&(a=(0,i.tryAppendQueryString)(a,”us_privacy”,n)),[{type:o,url:a}]}};function f(e){return g(e)&&(y(e)||function(e){return g(e)&&”outstream”===e.mediaTypes.video.context.toLowerCase()}(e))}function y(e){return g(e)&&”instream”===e.mediaTypes.video.context.toLowerCase()}function g(e){return e.mediaTypes.video&&e.mediaTypes.video.context}function b(e){let t=null;if(“function”==typeof e.getFloor)try{const r=e.getFloor({currency:”USD”,mediaType:f(e)?”video”:”banner”,size:”*”});”object”!=typeof r||”USD”!==r.currency||isNaN(parseFloat(r.floor))||(t=parseFloat(r.floor))}catch(e){(0,i.logError)(“Triplelift: getFloor threw an error: “,e)}return null!==t?t:e.params.floor}function v(e,t){(0,i.isEmpty)(t)||Object.keys(t).forEach((r=>{null!=t[r]&&(e[r]=t[r])}))}function h(e){return E(e,”tdid”,”adserver.org”,”TDID”)}function S(e){return E(e,”idl_env”,”liveramp.com”,”idl”)}function x(e){return E(e,”criteoId”,”criteo.com”,”criteoId”)}function I(e){return E(e,”pubcid”,”pubcid.org”,”pubcid”)}function A(e){let t=[“adserver.org”,”liveramp.com”,”criteo.com”,”pubcid.org”],r=[];return e.userIdAsEids&&e.userIdAsEids.forEach((e=>{try{if(-1===t.indexOf(e.source)){let t=e.uids.map((t=>({id:t.id,ext:{rtiPartner:e.source}})));r.push({source:e.source,uids:t})}}catch(t){(0,i.logWarn)(“Triplelift: Error attempting to add “.concat(e,” to bid request”),t)}})),r}function E(e,t,r,n){return e.map(function(e){return t=>t&&t.userId&&t.userId[e]}(t)).filter(T(t)).map(function(e,t){return r=>({source:e,uids:[{id:r.id?r.id:r,ext:{rtiPartner:t}}]})}(r,n))}const T=e=>(t,r,n)=>{let o=!!t&&((0,i.isStr)(t)?!!t:(0,i.isPlainObject)(t)&&!(0,i.isArray)(t)&&!(0,i.isEmpty)(t)&&t.id&&(0,i.isStr)(t.id)&&!!t.id);return o||void 0===n[0]||(0,i.logWarn)(“Triplelift: invalid “.concat(e,” userId format”)),o};function _(e){return e.filter(C).map((function(e){return{w:e[0],h:e[1]}}))}function C(e){return 2===e.length&&”number”==typeof e[0]&&”number”==typeof e[1]}(0,a.dX)(m),(0,n.z)(“tripleliftBidAdapter”)}},e=>{var t;t=70789,e(e.s=t)}]);
(self.pbjsChunk=self.pbjsChunk||[]).push([[34579],{98709:(r,e,t)=>{var o=t(78640),n=t(64358),s=t(48928),d=t(92797);const i=”unifiedId”,c={name:i,gvlid:21,decode:r=>r&&”string”==typeof r.TDID?{tdid:r.TDID}:void 0,getId(r){const e=r&&r.params||{};if(!e||”string”!=typeof e.partner&&”string”!=typeof e.url)return void(0,n.logError)(“User ID – unifiedId submodule requires either partner or url to be defined”);const t=e.url||”https://match.adsrvr.org/track/rid?ttd_pid=”.concat(e.partner,”&fmt=json”);return{callback:function(r){const e={success:e=>{let t;if(e)try{t=JSON.parse(e)}catch(r){(0,n.logError)(r)}r(t)},error:e=>{(0,n.logError)(“”.concat(i,”: ID fetch encountered an error”),e),r()}};(0,s.h)(t,e,void 0,{method:”GET”,withCredentials:!0})}}}};(0,d.Bx)(“userId”,c),(0,o.z)(“unifiedIdSystem”)}},r=>{var e;e=98709,r(r.s=e)}]);
(self.pbjsChunk=self.pbjsChunk||[]).push([[69039],{83806:(e,r,n)=>{var t=n(78640),i=n(20265),d=n(64358),o=n(35706),s=n(14699),a=n(24679);const u=(e,r,n)=>{const{bids:t,bidderRequestId:d,auctionId:o,bidderCode:s,…a}=n,u=n.bids.length-r.length;let l={};r.forEach((e=>{const r=e.params.siteId;(e=>{Object.keys(e.mediaTypes).forEach((r=>{let n;n=”function”==typeof e.getFloor?e.getFloor({currency:”USD”,mediaType:r,size:”*”}).floor||0:e.params.floor||0,e.mediaTypes[r].floor=n}))})(e),(e=>{let r=(0,i.Z)(e,”mediaTypes.banner”);if(r){let e={},n=[];r.sizes.forEach((r=>{e[r.toString()]||(e[r.toString()]=!0,n.push(r))})),r.sizes=n}})(e),l[r]=l[r]||[],l[r].push(e)}));let p=[];return Object.keys(l).forEach((r=>{let n={bidderRequest:Object.assign({},{bids:l[r],invalidBidsCount:u,…a})};p.push(Object.assign({},{data:n,…e}))})),p},l=e=>{if(e.ad)return e;(0,d.logError)(new Error(“UnrulyBidAdapter: Missing ad config.”))},p=e=>{if(e.vastUrl||e.vastXml)return e;(0,d.logError)(new Error(“UnrulyBidAdapter: Missing vastUrl or vastXml config.”))},c=e=>{const r=!!(0,i.Z)(e,”ext.renderer.config”),n=!!(0,i.Z)(e,”ext.renderer.config.siteId”);if(!r)return void(0,d.logError)(new Error(“UnrulyBidAdapter: Missing renderer config.”));if(!n)return void(0,d.logError)(new Error(“UnrulyBidAdapter: Missing renderer siteId.”));const t=(0,i.Z)(e,”ext.renderer”);!function(e,r){if(!e.config)throw new Error(“UnrulyBidAdapter: Missing renderer config.”);if(!e.config.siteId)throw new Error(“UnrulyBidAdapter: Missing renderer siteId.”);parent.window.unruly=parent.window.unruly||{},parent.window.unruly.native=parent.window.unruly.native||{},parent.window.unruly.native.siteId=parent.window.unruly.native.siteId||e.config.siteId,parent.window.unruly.native.adSlotId=r,parent.window.unruly.native.supplyMode=”prebid”}(t,e.requestId),parent.window.unruly.native.prebid=parent.window.unruly.native.prebid||{},parent.window.unruly.native.prebid.uq=parent.window.unruly.native.prebid.uq||[];const s=o.Th.install(Object.assign({},t)),a=Object.assign({},e,{renderer:s,adUnitCode:(0,i.Z)(e,”ext.adUnitCode”)});return s.setRender((()=>{var e;e=a,parent.window.unruly.native.prebid.uq.push([“render”,e])})),e.renderer=e.renderer||s,e},y=e=>{if(!e.context)return!1;return-1!==[“outstream”,”instream”].indexOf(e.context)},f=e=>e.sizes,w={code:”unruly”,supportedMediaTypes:[a.pX,a.Mk],gvlid:36,isBidRequestValid:function(e){let r=(0,i.Z)(e,”params.siteId”)&&(e=>{const r=(0,i.Z)(e,”mediaTypes.video”),n=(0,i.Z)(e,”mediaTypes.banner”);let t=!(!r&&!n);return t&&r&&(t=y(r)),t&&n&&(t=f(n)),t})(e);return!!r},buildRequests:function(e,r){let n=”https://targeting.unrulymedia.com/unruly_prebid”;e[0]&&(n=(0,i.Z)(e[0],”params.endpoint”)||n);return u({url:n,method:”POST”,options:{contentType:”application/json”}},e,r)},interpretResponse:function(){const e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).body;return!e||!e.bids?[]:(e=>{let r=[];return e.forEach((e=>{let n,t=(0,i.Z)(e,”meta.mediaType”);if(t&&”banner”===t.toLowerCase())e.mediaType=a.Mk,n=l(e);else if(t&&”video”===t.toLowerCase()){let r=(0,i.Z)(e,”meta.videoContext”);e.mediaType=a.pX,”instream”===r?n=p(e):”outstream”===r&&(n=c(e))}n&&r.push(n)})),r})(e.bids)}};(0,s.dX)(w),(0,t.z)(“unrulyBidAdapter”)}},e=>{var r;r=83806,e(e.s=r)}]);
(self.pbjsChunk=self.pbjsChunk||[]).push([[9215],{82547:(e,t,n)=>{var o=n(78640),r=n(34614),i=n(3193),c=n(52021),s=n(51039),a=n(5644),u=n(92797),d=n(64358),l=n(20265);const g={growthCodeId:{getValue:function(e){return e.gc_id},source:”growthcode.io”,atype:1,getUidExt:function(e){const t=(0,d.pick)(e,[“h1″,”h2″,”h3″]);if(Object.keys(t).length)return t}},trustpid:{source:”trustpid.com”,atype:1,getValue:function(e){return e}},intentIqId:{source:”intentiq.com”,atype:1},naveggId:{source:”navegg.com”,atype:1},pairId:{source:”google.com”,atype:571187},justId:{source:”justtag.com”,atype:1},pubcid:{source:”pubcid.org”,atype:1},tdid:{source:”adserver.org”,atype:1,getUidExt:function(){return{rtiPartner:”TDID”}}},id5id:{getValue:function(e){return e.uid},source:”id5-sync.com”,atype:1,getUidExt:function(e){if(e.ext)return e.ext}},ftrackId:{source:”flashtalking.com”,atype:1,getValue:function(e){let t=””;return e&&e.ext&&e.ext.DeviceID&&(t=e.ext.DeviceID),t},getUidExt:function(e){return e&&e.ext}},parrableId:{source:”parrable.com”,atype:1,getValue:function(e){return e.eid?e.eid:e.ccpaOptout?””:null},getUidExt:function(e){const t=(0,d.pick)(e,[“ibaOptout”,”ccpaOptout”]);if(Object.keys(t).length)return t}},idl_env:{source:”liveramp.com”,atype:3},lipb:{getValue:function(e){return e.lipbid},source:”liveintent.com”,atype:3,getEidExt:function(e){if(Array.isArray(e.segments)&&e.segments.length)return{segments:e.segments}}},bidswitch:{source:”bidswitch.net”,atype:3,getValue:function(e){return e.id}},medianet:{source:”media.net”,atype:3,getValue:function(e){return e.id}},britepoolid:{source:”britepool.com”,atype:3},dmdId:{source:”hcn.health”,atype:3},lotamePanoramaId:{source:”crwdcntrl.net”,atype:1},criteoId:{source:”criteo.com”,atype:1},merkleId:{atype:3,getSource:function(e){var t;return null!=e&&null!==(t=e.ext)&&void 0!==t&&t.ssp?””.concat(e.ext.ssp,”.merkleinc.com”):”merkleinc.com”},getValue:function(e){return e.id},getUidExt:function(e){return e.keyID?{keyID:e.keyID}:e.ext?e.ext:void 0}},netId:{source:”netid.de”,atype:1},IDP:{source:”zeotap.com”,atype:1},hadronId:{source:”audigent.com”,atype:1},quantcastId:{source:”quantcast.com”,atype:1},idx:{source:”idx.lat”,atype:1},connectid:{source:”verizonmedia.com”,atype:3},fabrickId:{source:”neustar.biz”,atype:1},mwOpenLinkId:{source:”mediawallahscript.com”,atype:1},tapadId:{source:”tapad.com”,atype:1},novatiq:{getValue:function(e){return void 0===e.snowflake.id?e.snowflake:e.snowflake.id},source:”novatiq.com”},uid2:{source:”uidapi.com”,atype:3,getValue:function(e){return e.id}},deepintentId:{source:”deepintent.com”,atype:3},admixerId:{source:”admixer.net”,atype:3},adtelligentId:{source:”adtelligent.com”,atype:3},amxId:{source:”amxdt.net”,atype:1},publinkId:{source:”epsilon.com”,atype:3},kpuid:{source:”kpuid.com”,atype:3},imppid:{source:”ppid.intimatemerger.com”,atype:1},imuid:{source:”intimatemerger.com”,atype:1},connectId:{source:”yahoo.com”,atype:3},qid:{source:”adquery.io”,atype:1},dacId:{source:”impact-ad.jp”,atype:1},”33acrossId”:{source:”33across.com”,atype:1,getValue:function(e){return e.envelope}},tncid:{source:”thenewco.it”,atype:3},gravitompId:{source:”gravito.net”,atype:1},czechAdId:{source:”czechadid.cz”,atype:1},oneKeyData:{getValue:function(e){if(e&&Array.isArray(e.identifiers)&&e.identifiers[0])return e.identifiers[0].value},source:”paf”,atype:1,getEidExt:function(e){if(e&&e.preferences)return{preferences:e.preferences}},getUidExt:function(e){if(e&&Array.isArray(e.identifiers)&&e.identifiers[0]){const t=e.identifiers[0];return{version:t.version,type:t.type,source:t.source}}}}};function f(e,t){const n=g[t];if(n&&e){let t={};t.source=(0,d.isFn)(n.getSource)?n.getSource(e):n.source;const o=(0,d.isFn)(n.getValue)?n.getValue(e):e;if((0,d.isStr)(o)){const r={id:o,atype:n.atype};if((0,d.isFn)(n.getUidExt)){const t=n.getUidExt(e);t&&(r.ext=t)}if(t.uids=[r],(0,d.isFn)(n.getEidExt)){const o=n.getEidExt(e);o&&(t.ext=o)}return t}}return null}function p(e){let t=[];for(const n in e)if(e.hasOwnProperty(n))if(“pubProvidedId”===n)t=t.concat(e.pubProvidedId);else if(Array.isArray(e[n]))e[n].forEach(((e,o,r)=>{const i=f(e,n);i&&t.push(i)}));else{const o=f(e[n],n);o&&t.push(o)}return t}var m=n(15164),y=n(96475),b=n(7563),h=n(68792),I=n(17673),v=n(26372),E=n(99128),w=n(38196),O=n(34516),D=n(9633),k=n(50571),j=n(74947),S=n(10286);const x=”User ID”,P=m.c$,A=m.Dp,U={name:”_pbjs_userid_consent_data”,expires:30},C=”_pbjs_id_optout”,T=(0,m.eA)(“userId”),V={isAllowed:k.xD};let N,_,q,R,L,Z,F=!1,z=[],G=[],M=[];const W=(()=>{let e;return()=>(null==e&&(e=(0,E.V6)()),e)})();function B(e){return W().fork().renameWith((t=>[“userId.mod.”.concat(t),”userId.mods.”.concat(e,”.”).concat(t)]))}function J(e,t){t=t||e.storageMgr;const n=”function”==typeof e.submodule.domainOverride?e.submodule.domainOverride():null,o=e.config.storage.name;return function(e,r,i){t.setCookie(o+(e||””),r,i,”Lax”,n)}}function H(e,t){const n=e.config.storage,o=e.storageMgr;try{const r=new Date(Date.now()+864e5*n.expires).toUTCString(),i=(0,d.isPlainObject)(t)?JSON.stringify(t):t;if(n.type===P){const t=J(e);t(null,i,r),”number”==typeof n.refreshInSeconds&&t(“_last”,(new Date).toUTCString(),r)}else n.type===A&&(o.setDataInLocalStorage(“”.concat(n.name,”_exp”),r),o.setDataInLocalStorage(n.name,encodeURIComponent(i)),”number”==typeof n.refreshInSeconds&&o.setDataInLocalStorage(“”.concat(n.name,”_last”),(new Date).toUTCString()))}catch(e){(0,d.logError)(e)}}function K(e){let t=(0,d.getPrebidInternal)().setEidPermissions;”function”==typeof t&&(0,d.isArray)(e)&&t(function(e){let t=[];return e.filter((e=>(0,d.isPlainObject)(e.idObj)&&Object.keys(e.idObj).length)).forEach((e=>{Object.keys(e.idObj).forEach((n=>{(0,l.Z)(e,”config.bidders”)&&Array.isArray(e.config.bidders)&&(0,l.Z)(g,n+”.source”)&&t.push({source:g[n].source,bidders:e.config.bidders})}))})),t}(e))}function Y(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;const n=e.storageMgr,o=e.config.storage,r=t?””.concat(o.name,”_”).concat(t):o.name;let i;try{if(o.type===P)i=n.getCookie(r);else if(o.type===A){const e=n.getDataFromLocalStorage(“”.concat(o.name,”_exp”));””===e?i=n.getDataFromLocalStorage(r):e&&new Date(e).getTime()-Date.now()>0&&(i=decodeURIComponent(n.getDataFromLocalStorage(r)))}”string”==typeof i&&”{“===i.trim().charAt(0)&&(i=JSON.parse(i))}catch(e){(0,d.logError)(e)}return i}function $(e){const t={consentString:””,gdprApplies:!1,apiVersion:0};return e&&(t.consentString=e.consentString,t.gdprApplies=e.gdprApplies,t.apiVersion=e.apiVersion),(0,d.cyrb53Hash)(JSON.stringify(t))}function Q(e,t){t=W().fork().startTiming(“userId.callbacks.total”).stopBefore(t);const n=(0,d.delayExecution)((()=>{clearTimeout(_),t()}),e.length);e.forEach((function(e){const t=B(e.submodule.name).startTiming(“callback”).stopBefore(n);try{e.callback((function(n){n?(e.config.storage&&H(e,n),e.idObj=e.submodule.decode(n,e.config),pe(e.idObj)):(0,d.logInfo)(“”.concat(x,”: “).concat(e.submodule.name,” – request id responded with an empty value”)),t()}),Y.bind(null,e))}catch(n){(0,d.logError)(“Error in userID module ‘”.concat(e.submodule.name,”‘:”),n),t()}e.callback=void 0}))}function X(e,t){[e].some((e=>!Array.isArray(e)||!e.length))||e.forEach((e=>{e.bids&&(0,d.isArray)(e.bids)&&e.bids.forEach((e=>{const n=function(e,t){return Array.isArray(e)&&e.length&&t?e.filter((e=>!e.config.bidders||!(0,d.isArray)(e.config.bidders)||(0,r.q9)(e.config.bidders,t))).filter((e=>(0,d.isPlainObject)(e.idObj)&&Object.keys(e.idObj).length)).reduce(((e,t)=>(Object.keys(t.idObj).forEach((n=>{e[n]=t.idObj[n]})),e)),{}):{}}(t,e.bidder);Object.keys(n).length&&(e.userId=n,e.userIdAsEids=p(n))}))}))}const ee={};let te;function ne(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:ie()||[];const t=L&&e.find((e=>e.source===L));if(t&&”string”==typeof(0,l.Z)(t,”uids.0.id”)){const e=t.uids[0].id.replace(/[W_]/g,””);if(e.length>=32&&e.length<=150)return e;(0,d.logWarn)(“User ID – Googletag Publisher Provided ID for “.concat(L,” is not between 32 and 150 characters – “).concat(e))}}const oe=(0,E.g3)(“userId”,(function(e,t){let{delay:n=h.Z.timeout,getIds:r=le}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};h.Z.race([r().catch((()=>null)),n(R)]).then((()=>{X(t.adUnits||(0,o.R)().adUnits,N),W().join((0,E.Bf)(t.metrics),{propagate:!1,includeGroups:!0}),e.call(this,t)}))}));function re(){return function(e){return Array.isArray(e)&&e.length?e.filter((e=>(0,d.isPlainObject)(e.idObj)&&Object.keys(e.idObj).length)).reduce(((e,t)=>(Object.keys(t.idObj).forEach((n=>{e[n]=t.idObj[n]})),e)),{}):{}}(N)}function ie(){return p(re())}function ce(e){return p(function(e,t){if(!Array.isArray(e)||!e.length)return{};const n=e.filter((e=>{var n;return(0,d.isPlainObject)(e.idObj)&&Object.keys(e.idObj).length&&(null===(n=g[Object.keys(e.idObj)[0]])||void 0===n?void 0:n.source)===t}));return(0,d.isEmpty)(n)?[]:n[0].idObj}(N,e))[0]}function se(e,t,n){return te().then((()=>{let o={};if((0,d.isFn)(n)){(0,d.logInfo)(“”.concat(x,” – Getting encrypted signal from custom function : “).concat(n.name,” & source : “).concat(e,” “));const t=n(e);o[e]=t?ae(t):null}else{const n=ce(e);(0,d.logInfo)(“”.concat(x,” – Getting encrypted signal for eids :”).concat(JSON.stringify(n))),(0,d.isEmpty)(n)||(o[n.source]=!0===t?ae(n):n.uids[0].id)}return(0,d.logInfo)(“”.concat(x,” – Fetching encrypted eids: “).concat(o[e])),o[e]}))}function ae(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,n=””;if(1===t)n=”object”==typeof e?window.btoa(JSON.stringify(e)):window.btoa(e);return””.concat(t,”||”).concat(n)}function ue(){if(!(0,d.isGptPubadsDefined)())return;window.googletag.encryptedSignalProviders=window.googletag.encryptedSignalProviders||[];const e=i.config.getConfig(“userSync.encryptedSignalSources”);if(e){const t=e.registerDelay||0;setTimeout((()=>{e.sources&&e.sources.forEach((e=>{let{source:t,encrypt:n,customFunc:o}=e;t.forEach((e=>{window.googletag.encryptedSignalProviders.push({id:e,collectorFunction:()=>se(e,n,o)})}))}))}),t)}else(0,d.logWarn)(“”.concat(x,” – ESP : encryptedSignalSources config not defined under userSync Object”))}function de(){let{submoduleNames:e}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;return te({refresh:!0,submoduleNames:e}).then((()=>(t&&(0,d.isFn)(t)&&t(),re())))}function le(){return te().then((()=>re()),(e=>e===ee?Promise.resolve().then(le):((0,d.logError)(“Error initializing userId”,e),h.Z.reject(e))))}const ge=(0,u.z3)(“sync”,(function(e,t){return{userIdModules:e,hasValidated:t&&t.hasValidated}}),”validateGdprEnforcement”);function fe(e,t,n,o){if(e.config.storage){let r,i=Y(e),c=!1;if(“number”==typeof e.config.storage.refreshInSeconds){const t=new Date(Y(e,”last”));c=t&&Date.now()-t.getTime()>1e3*e.config.storage.refreshInSeconds}!i||c||o||!function(e,t){return null!=e&&e===$(t)}(n,t)?r=e.submodule.getId(e.config,t,i):”function”==typeof e.submodule.extendId&&(r=e.submodule.extendId(e.config,t,i)),(0,d.isPlainObject)(r)&&(r.id&&(H(e,r.id),i=r.id),”function”==typeof r.callback&&(e.callback=r.callback)),i&&(e.idObj=e.submodule.decode(i,e.config))}else if(e.config.value)e.idObj=e.config.value;else{const n=e.submodule.getId(e.config,t,void 0);(0,d.isPlainObject)(n)&&(“function”==typeof n.callback&&(e.callback=n.callback),n.id&&(e.idObj=e.submodule.decode(n.id,e.config)))}pe(e.idObj)}function pe(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:re();if(e&&L){const t=ne(p(e));t&&((0,d.isGptPubadsDefined)()?window.googletag.pubads().setPublisherProvidedId(t):(window.googletag=window.googletag||{},window.googletag.cmd=window.googletag.cmd||[],window.googletag.cmd.push((function(){window.googletag.pubads().setPublisherProvidedId(t)}))))}}function me(e,t,n){let o=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return W().fork().measureTime(“userId.init.modules”,(function(){if(!t.length)return[];if(!(t=t.filter((e=>(!e.config.storage||function(e){var t,n;switch(null===(t=e.config)||void 0===t||null===(n=t.storage)||void 0===n?void 0:n.type){case A:if(e.storageMgr.localStorageIsEnabled())return!T.getDataFromLocalStorage(C)||((0,d.logInfo)(“”.concat(x,” – opt-out localStorage found, storage disabled”)),!1);break;case P:if(e.storageMgr.cookiesAreEnabled())return!T.getCookie(C)||((0,d.logInfo)(“”.concat(x,” – opt-out cookie found, storage disabled”)),!1)}return!1}(e))&&V.isAllowed(j.EL,(0,S.T)(D.y2,e.config.name))))).length)return(0,d.logWarn)(“”.concat(x,” – no ID module configured”)),[];let{userIdModules:r,hasValidated:i}=ge(t,n);if(!i&&!(0,I.h)(n))return(0,d.logWarn)(“”.concat(x,” – gdpr permission not valid for local storage or cookies, exit module”)),[];const c=function(){try{return T.getCookie(U.name)}catch(e){(0,d.logError)(e)}}();!function(e){try{const t=new Date(Date.now()+864e5*U.expires).toUTCString();T.setCookie(U.name,$(e),t,”Lax”)}catch(e){(0,d.logError)(e)}}(n);const s=r.reduce(((e,t)=>B(t.submodule.name).measureTime(“init”,(()=>{try{fe(t,n,c,o),e.push(t)}catch(e){(0,d.logError)(“Error in userID module ‘”.concat(t.submodule.name,”‘:”),e)}return e}))),[]);return s.length&&K(s),s.forEach(ye.bind(null,e)),s}))}function ye(e,t){let n=!1;for(let o=0;o
(self.pbjsChunk=self.pbjsChunk||[]).push([[66635],{63273:(e,t,n)=>{var o=n(78640),r=n(64358),i=n(20265),a=n(14699),c=n(24679),d=n(15164),s=n(55975),u=n(3193);const p=”prebid”,l=”vidazoo”,g=”1.0.0″,b=9e5,f=36e5,h=”vidSid”,m=”vdzwopt”,I=”wsid_”+parseInt(Date.now()*Math.random()),v=(0,d.df)({bidderCode:l});function C(){try{return(0,r.parseUrl)(window.top.document.URL,{decodeSearchAsString:!0}).search}catch(e){return””}}function S(){return”https://”.concat(arguments.length>0&&void 0!==arguments[0]?arguments[0]:p,”.cootlogix.com”)}function y(e){return e.cId||e.CID||e.cID||e.CId||e.cid||e.ciD||e.Cid||e.CiD}function D(e){return e.pId||e.PID||e.pID||e.PId||e.pid||e.piD||e.Pid||e.PiD}function w(e,t,n,o,a){var c,d;const{params:u,bidId:p,userId:w,adUnitCode:q,schain:x,mediaTypes:A,auctionId:k,transactionId:O,bidderRequestId:T,bidRequestsCount:_,bidderRequestsCount:z,bidderWinsCount:j}=e,{ext:F}=u;let{bidFloor:M}=u;const Z=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:”_”;const n=e.length;let o=0,r=0;if(n>0)for(;r
(self.pbjsChunk=self.pbjsChunk||[]).push([[50608],{39595:(e,t,s)=>{var n=s(78640),r=s(20265),i=s(64358),d=s(14699),a=s(24679),o=s(35706),c=s(34614);const u=”https://player.sync.viewdeos.com/outstream-unit/2.01/outstream.min.js”,p=”outstream”,l=”display”,m={code:”viewdeosDX”,aliases:[“viewdeos”],gvlid:924,supportedMediaTypes:[a.pX,a.Mk],isBidRequestValid:function(e){return!!(0,r.Z)(e,”params.aid”)},getUserSyncs:function(e,t){const s=[];function n(t){const n=t.cookieURLs,r=t.cookieURLSTypes||[];Array.isArray(n)&&n.forEach(((t,n)=>{const i=r[n]||”image”;!e.pixelEnabled&&”image”===i||!e.iframeEnabled&&”iframe”===i||s.push({type:i,url:t})}))}return(e.pixelEnabled||e.iframeEnabled)&&(0,i.isArray)(t)&&t.forEach((e=>{e.body&&((0,i.isArray)(e.body)?e.body.forEach((e=>{n(e)})):n(e.body))})),s},buildRequests:function(e,t){return{data:b(e,t),bidderRequest:t,method:”GET”,url:”https://ghb.sync.viewdeos.com/auction/”}},interpretResponse:function(e,t){let{bidderRequest:s}=t;e=e.body;let n=[];return(0,i.isArray)(e)?(e.forEach((e=>{n=(0,i.flatten)(n,f(e,s))})),n):f(e,s)}};function f(e,t){const s=!e||!(0,i.isArray)(e.bids),n=[];if(s){const s=e&&e.ext&&e.ext.message?”: “.concat(e.ext.message):””,r=”in response for “.concat(t.bidderCode,” adapter “).concat(s);return(0,i.logError)(r),n}return e.bids.forEach((e=>{const s=(0,c.cx)(t.bids,(t=>t.bidId===e.requestId));if(0!==e.cpm&&-1!==s){const i=t.bids[s],d=function(e,t,s){const n={requestId:e.requestId,creativeId:e.cmpId,height:e.height,currency:e.cur,width:e.width,cpm:e.cpm,netRevenue:!0,mediaType:t,ttl:3600,meta:{advertiserDomains:e.adomain||[]}};if(t===l)return Object.assign(n,{ad:e.ad});Object.assign(n,{vastUrl:e.vastUrl}),t===p&&Object.assign(n,{mediaType:”video”,adResponse:e,renderer:h(e.requestId,s)});return n}(e,function(e){const t=(0,r.Z)(e,”mediaTypes.video”),s=(0,r.Z)(e,”mediaTypes.video.context”);return t?s===p?p:a.pX:l}(i),i.params);n.push(d)}})),n}function b(e,t){const s={domain:(0,r.Z)(t,”refererInfo.page”)};(0,r.Z)(t,”gdprConsent.gdprApplies”)&&(s.gdpr=1,s.gdpr_consent=(0,r.Z)(t,”gdprConsent.consentString”)),(0,r.Z)(t,”bidderRequest.uspConsent”)&&(s.us_privacy=t.uspConsent);for(let t=0,n=e.length;t
(self.pbjsChunk=self.pbjsChunk||[]).push([[15337],{55511:(e,t,r)=>{var i=r(78640),n=r(64358),o=r(20265),a=r(96475),d=r(24679),s=r(14699),c=r(35706),p=r(34614);const u=”USD”,l=300,m=!0,f=”https://prebid-outstream.yieldmo.com/bundle.js”,g=[“mimes”,”startdelay”,”placement”,”startdelay”,”skipafter”,”protocols”,”api”,”playbackmethod”,”maxduration”,”minduration”,”pos”,”skip”,”skippable”],y=[“name”,”domain”,”cat”,”keywords”],v=(0,n.getWindowTop)(),h=2,b=0,I=[“description”,”title”,”pr”,”page_url”],x={code:”yieldmo”,supportedMediaTypes:[d.Mk,d.pX],gvlid:173,isBidRequestValid:function(e){return!!(e&&e.adUnitCode&&e.bidId&&(w(e)||Z(e))&&function(e){if(!Z(e))return!0;const t=(e,t,r)=>{let i='”‘.concat(e,'” is required’);throw r&&(i+=” when “+r),new Error(i)},r=(e,t,r)=>{throw r=r?”, expected: “+r:””,t=JSON.stringify(t),new Error(‘”‘.concat(e,'”=’).concat(t,” is invalid”).concat(r))},i=e=>void 0!==e,a=(t,r,i,n)=>{if(0===t.indexOf(“video”)){const a=”params.”+t,d=”mediaTypes.”+t,s=(0,o.Z)(e,a),c=(0,o.Z)(e,d),p=r(s),u=r(c);return p?s:u||(p?u||i(d,c,n):i(a,s,n),s||c)}{const a=(0,o.Z)(e,t);return r(a)||i(t,a,n),a}};try{a(“video.context”,(e=>!(0,n.isEmpty)(e)),t),a(“params.placementId”,(e=>!(0,n.isEmpty)(e)),t),a(“video.playerSize”,(e=>(0,n.isArrayOfNums)(e,2)||(0,n.isArray)(e)&&e.every((e=>(0,n.isArrayOfNums)(e,2)))),r,”array of 2 integers, ex: [640,480] or [[640,480]]”),a(“video.mimes”,(e=>i(e)),t),a(“video.mimes”,(e=>(0,n.isArray)(e)&&e.every((e=>(0,n.isStr)(e)))),r,’array of strings, ex: [“video/mp4”]’);const e=a(“video.placement”,(e=>i(e)),t);return a(“video.placement”,(e=>e>=1&&e<=5),r),1===e&&(a(“video.startdelay”,(e=>i(e)),((e,r)=>t(e,r,”placement == 1″))),a(“video.startdelay”,(e=>(0,n.isNumber)(e)),r,”number, ex: 5″)),a(“video.protocols”,(e=>i(e)),t),a(“video.protocols”,(e=>(0,n.isArrayOfNums)(e)&&e.every((e=>e>=1&&e<=6))),r,”array of numbers, ex: [2,3]”),a(“video.api”,(e=>i(e)),t),a(“video.api”,(e=>(0,n.isArrayOfNums)(e)&&e.every((e=>e>=1&&e<=6))),r,”array of numbers, ex: [2,3]”),a(“video.playbackmethod”,(e=>!i(e)||(0,n.isArrayOfNums)(e)),r,”array of integers, ex: [2,6]”),a(“video.maxduration”,(e=>i(e)),t),a(“video.maxduration”,(e=>(0,n.isInteger)(e)),r),a(“video.minduration”,(e=>!i(e)||(0,n.isNumber)(e)),r),a(“video.skippable”,(e=>!i(e)||(0,n.isBoolean)(e)),r),a(“video.skipafter”,(e=>!i(e)||(0,n.isNumber)(e)),r),a(“video.pos”,(e=>!i(e)||(0,n.isNumber)(e)),r),a(“params.badv”,(e=>!i(e)||(0,n.isArray)(e)),r,’array of strings, ex: [“ford.com”,”pepsi.com”]’),a(“params.bcat”,(e=>!i(e)||(0,n.isArray)(e)),r,’array of strings, ex: [“IAB1-5″,”IAB1-6”]’),!0}catch(e){return(0,n.logError)(e.message),!1}}(e))},buildRequests:function(e,t){const r=function(e){var t,r;return!(null===(t=e.refererInfo)||void 0===t||null===(r=t.referer)||void 0===r||!r.includes(“pb_force_a”))}(t),i=_(“/exchange/prebid”,r),s=_(“/exchange/prebidvideo”,r),c=e.filter((e=>w(e))),u=e.filter((e=>Z(e)));let l=[];const m=function(e){if((0,o.Z)(e,”userIdAsEids”))return e.userIdAsEids||[]}(e[0])||[];if(c.length>0){let e={pbav:”7.52.0″,p:[],page_url:t.refererInfo.page,bust:(new Date).getTime().toString(),dnt:”1″===window.doNotTrack||”1″===window.navigator.doNotTrack||!1,description:k(),userConsent:JSON.stringify({gdprApplies:(0,o.Z)(t,”gdprConsent.gdprApplies”)||””,cmp:(0,o.Z)(t,”gdprConsent.consentString”)||””,gpp:(0,o.Z)(t,”gppConsent.gppString”)||””,gpp_sid:(0,o.Z)(t,”gppConsent.applicableSections”)||[]}),us_privacy:(0,o.Z)(t,”uspConsent”)||””};(function(){try{if((0,n.getWindowTop)().location.href)return!0}catch(e){return!1}})()&&(e.pr=v.document&&v.document.referrer||””,e.scrd=v.devicePixelRatio||0,e.title=v.document.title||””,e.w=v.innerWidth,e.h=v.innerHeight);const r=window.navigator.maxTouchPoints;r&&(e.mtp=r),c.forEach((t=>{e.p.push(function(e){const t=(0,o.Z)(e,”ortb2Imp.ext.data.pbadslot”),r={placement_id:e.adUnitCode,callback_id:e.bidId,sizes:e.mediaTypes.banner.sizes};if(e.params){e.params.placementId&&(r.ym_placement_id=e.params.placementId);const t=S(e,d.Mk);t&&(r.bidFloor=t)}t&&(r.gpid=t);const i=(0,o.Z)(e,”ortb2Imp.ext.tid”);i&&(r.tid=i);e.auctionId&&(r.auctionId=e.auctionId);return JSON.stringify(r)}(t));const r=N(t,”pubcid”);r?e.pubcid=r:t.crumbs&&t.crumbs.pubcid&&(e.pubcid=t.crumbs.pubcid);const i=N(t,”tdid”);i&&(e.tdid=i);const n=N(t,”criteoId”);n&&(e.cri_prebid=n),t.schain&&(e.schain=JSON.stringify(t.schain)),(0,o.Z)(t,”params.lr_env”)&&(e.ats_envelope=t.params.lr_env)})),e.p=”[“+e.p.toString()+”]”,m.length&&(e.eids=JSON.stringify(m));let a=””.concat(i,”?”).concat((0,n.parseQueryStringParameters)(e)).length-8e3;if(a>0)for(let t=0;t
})(),pbjs.processQueue();
Keep your floors sparkling clean with minimal effort
There is nothing like a robot vacuum to keep your floors clean with minimal human interaction. Although these devices were a novelty a decade ago, they’ve become very common nowadays and offer valuable help in our daily lives. Most are controlled using an app and smart speakers, allowing you to launch them while performing other tasks or without leaving your couch.
In the beginning, iRobot was on the market with its Roomba robot vacuums. Since then, a handful of brands have launched an impressive number of competing products that often surpass iRobot’s Roombas.
With so many options to pick from, we’ve handpicked the best robot vacuums to help you find the right one for you. The list includes various models, ranging from affordable sweepers — which are plenty enough for a daily clean — to much more sophisticated devices that can mop and remove stains in full autonomy.
Below we’ve highlighted a couple of great Prime Day deals from Roborock, which is sponsoring these inclusions for the duration of Prime Day. The company was not involved in the selection of these products in our Buyer’s Guide; we are highlighting their discounts as part of a wider sponsorship deal.
Our top recommendations for the best robot vacuums in 2023
Dreametech L10s Ultra
Best overall
Premium, powerful, and feature rich
The Dreametech L10S Ultra packs almost everything you want from a robot vacuum. It has a high 5300Pa suction power, an auto-empty station, and a mopping function. It also works with Alexa voice assistant.
- Set it and forget it approach
- Vacuums and mops and at the same time
- Excellent navigation
- No extra consumables included
- Mopping isn’t perfect
The Dreametech L10s Ultra is, together with the Roborock S7 MaxV Ultra, the most advanced robot vacuum available on the market. It has impressive suction power, two spinning brushes to clean and mop your floors, advanced navigation features, and obstacle detection. The L10s Ultra can also clean its mops and automatically empty the dirty water and dust in the dock’s appropriate tanks.
Similarly, it can automatically go back to its station to refill its clean water tank, which the station automatically mixes with a cleaning solution. Dreametech designed its self-emptying and self-cleaning station with care and integrated the tanks vertically to save space, making it a nice addition to your living room. It’s our favorite and most recommended option, provided you have the budget for it.
Roborock S7 MaxV Ultra
???? Prime Day Deal! ????
Your robot vacuum splurge
$540 $860 Save
$320
If you want to enjoy almost hands-free cleaning, there is no better option than the Roborock S7 MaxV Ultra. It costs a pretty penny but offers tons of quality of life features.
- Powerful suction
- Accurate mapping and obstacle avoidance
- Expensive
- Too many consumable accessories
The Roborock S7 MaxV Ultra is lavishly expensive, but it’s also the most powerful and easiest-to-use robot vacuum we’ve ever tested. If you have a combination of hard flooring and carpet, it can clean it all. Best of all, you barely have to touch the robot, thanks to its base station, which can handle the dirty water and dust for a while without being emptied.
With its advanced app, it can detect obstacles, avoid specific areas and recognize rooms. It does cost an arm and a leg, though, so you’ll have to consider whether you really hate mopping and cleaning the old-fashioned way. Lastly, its design is a bit too close to a garbage bin, making it a dubious addition to your living area.
Dreametech D9
Best value
A low-cost but dependable option
The Dreametech D9 is one of the most affordable robot vacuum and mop combo. At under $200, it brings LiDAR mapping, 3000Pa suction power, and a decent companion app.
- Works with both hardwood floors and carpets
- LiDAR provides accurate mapping
- No extra consumables in the box
- Mopping is basic
The Dreametech D9 probably offers one of the best values, as it can both mop and vacuum simultaneously while being affordable. In addition, its built-in LIDAR helps it create a detailed map of your house, letting you send it to specific rooms and areas.
Its 3,000Pa suction power and mopping capability allow it to leave your floors clean and shiny. That being said, its mopping features are basic and can’t rival the ones offered by more premium devices. However, the price difference makes the Dreametech D9 particularly attractive since it can do an excellent job at sweeping and mopping your floors.
If you don’t mind manually emptying its dust bin and washing its mop, the D9 is a nice option that offers great value for money.
iRobot Roomba S9+
Efficient cleaning
The most advanced Roomba around
$799 $999 Save
$200
The iRobot Roomba S9+ has a ton going for it. From intelligent navigation to powerful suction, it has everything you need in a top-notch robot vacuum.
- Powerful suction
- Fantastic cleaning
The s9+ is one of the most expensive Roombas. It’s also the one with the best cleaning efficiency, thanks to its advanced edge cleaning and dual plastic brushes that are perfect for removing pet hair. Its app is well-designed, with advanced recommendations and the ability to create maps and define rooms.
Although it comes with a self-emptying base, it lacks mopping features and obstacle detection, meaning you should consider other options if your floors are often covered with dust and need mopping.
Ecovacs Deebot N10 Plus
Solid mid-range pick
A robot vacuum that does it all
$550 $650 Save
$100
The Ecovas Deebot N10 Plus is an excellent mid-range robot vacuum and mop combo with an auto-empty station, 3800Pa suction power, and LiDAR-based navigation. It also supports the Alexa voice assistant.
- Powerful suction
- Great companion app
The Ecovacs Deebot N10 Plus is a feature-rich vacuum and mop combo that doesn’t cost as much as some of the more expensive robot vacuums among our recommendations. One of its highlights is the included auto-empty station, which ensures you don’t need to empty its dust bin every few days. The auto-empty station can store dirt and debris for up to 60 days. But unfortunately, this feature doesn’t make the robot vacuum completely hands-free, as you’ll still need to clean the mop attachment regularly if you use the mop function.
In other features, its 3800Pa suction is good enough for a thorough cleaning, and the LiDAR-based navigation system is excellent at mapping and navigating your home. You’ll also be happy to know that the Deebot N10 Plus supports Alexa voice assistant and has a pretty great companion app. B

