/** Teal */
function loadTlpbjs(account) {
/* prebid.js v9.50.0
Updated: 2025-06-19
Modules: consentManagementTcf, consentManagementUsp, prebidServerBidAdapter, userId, pubProvidedIdSystem, criteoIdSystem, sharedIdSystem */
if(window.tlpbjs&&window.tlpbjs.libLoaded)try{window.tlpbjs.getConfig("debug")&&console.warn("Attempted to load a copy of Prebid.js that clashes with the existing 'tlpbjs' instance. Load aborted.")}catch(t){}else (function(){
(()=>{var r,t={433:(r,t,e)=>{function n(r,t,e,n,o){for(t=t.split?t.split("."):t,n=0;nn})},8128:r=>{
u.SYNC=1,u.ASYNC=2,u.QUEUE=4;var t="fun-hooks";var e=Object.freeze({useProxy:!0,ready:0}),n=new WeakMap,o="2,1,0"===[1].reduce((function(r,t,e){return[r,t,e]}),2).toString()?Array.prototype.reduce:function(r,t){var e,n=Object(this),o=n.length>>>0,i=0;if(t)e=t;else{for(;i{function n(r,t,e){t.split&&(t=t.split("."));for(var n,o,i=0,f=t.length,u=r;in})},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=i)&&Object.keys(n.O).every((r=>n.O[r](e[a])))?e.splice(a--,1):(u=!1,i0&&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);cn(8934)));o=n.O(o)})();
(self.tlpbjsChunk=self.tlpbjsChunk||[]).push([[802],{5789:(e,t,n)=>{n.d(t,{A4:()=>c,J7:()=>l,Pg:()=>u});var i=n(1580),r=n(1069),o=n(7873),s=n(5569);const a=(0,o.m)(),d="outstream";function c(e){const{url:t,config:n,id:o,callback:c,loaded:l,adUnitCode:u,renderNow:f}=e;this.url=t,this.config=n,this.handlers={},this.id=o,this.renderNow=f,this.adUnitCode=u,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=c||(()=>{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=a.adUnits.find((t=>t.code===e));if(!t)return!1;const n=t?.renderer,i=!!(n&&n.url&&n.render),r=t?.mediaTypes?.video?.renderer,o=!!(r&&r.url&&r.render);return!!(i&&!0!==n.backupOnly||o&&!0!==r.backupOnly)}(u)?f?n():(this.cmd.unshift(n),(0,i.R)(t,s.tp,d,this.callback,this.documentContext)):((0,r.JE)(`External Js not loaded by Renderer since renderer url and callback is already defined on adUnit ${u}`),n())}.bind(this)}function l(e){return!(!e||!e.url&&!e.renderNow)}function u(e,t,n){let 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)}c.install=function(e){let{url:t,config:n,id:i,callback:r,loaded:o,adUnitCode:s,renderNow:a}=e;return new c({url:t,config:n,id:i,callback:r,loaded:o,adUnitCode:s,renderNow:a})},c.prototype.getConfig=function(){return this.config},c.prototype.setRender=function(e){this._render=e},c.prototype.setEventHandlers=function(e){this.handlers=e},c.prototype.handleVideoEvent=function(e){let{id:t,eventName:n}=e;"function"==typeof this.handlers[n]&&this.handlers[n](),(0,r.OG)(`Prebid Renderer event for id ${t} type ${n}`)},c.prototype.process=function(){for(;this.cmd.length>0;)try{this.cmd.shift().call()}catch(e){(0,r.vV)(`Error processing Renderer command on ad unit '${this.adUnitCode}':`,e)}}},6811:(e,t,n)=>{n.d(t,{DL:()=>c,Ml:()=>r,Ue:()=>i,VJ:()=>u,hE:()=>l,hq:()=>d,mo:()=>a,pY:()=>f,uc:()=>s,yl:()=>o});const i="accessDevice",r="syncUser",o="enrichEids",s="fetchBids",a="reportAnalytics",d="transmitEids",c="transmitUfpd",l="transmitPreciseGeo",u="transmitTid",f="loadExternalScript"},3441:(e,t,n)=>{n.d(t,{s:()=>r});var i=n(1445);const r=(0,n(2604).ZI)((e=>i.Ay.resolveAlias(e)))},5569:(e,t,n)=>{n.d(t,{Tn:()=>s,fW:()=>o,tW:()=>r,tp:()=>i});const i="prebid",r="bidder",o="userId",s="analytics"},2604:(e,t,n)=>{n.d(t,{Dk:()=>s,Ii:()=>o,TQ:()=>g,U3:()=>h,XG:()=>l,ZI:()=>p,Zw:()=>c,bt:()=>u,e3:()=>f,iK:()=>a,q7:()=>d});var i=n(5569),r=n(9214);const o="component",s=o+"Type",a=o+"Name",d="adapterCode",c="storageType",l="configName",u="syncType",f="syncUrl",g="_config";function p(e){return function(t,n,r){const c={[s]:t,[a]:n,[o]:`${t}.${n}`};return t===i.tW&&(c[d]=e(n)),h(Object.assign(c,r))}}const h=(0,r.A_)("sync",(e=>e))},6953:(e,t,n)=>{n.d(t,{Vx:()=>d,$p:()=>m});var i=n(433),r=n(3272),o=n(5139),s=n(6811);const a=["data","ext.data","yob","gender","keywords","kwarray","id","buyeruid","customdata"].map((e=>`user.${e}`)).concat("device.ext.cdep"),d=["user.eids","user.ext.eids"],c=["user.geo.lat","user.geo.lon","device.geo.lat","device.geo.lon"],l=["device.ip"],u=["device.ipv6"];function f(e){return Object.assign({get(){},run(e,t,n,i,r){const o=n&&n[i];if(function(e){return null!=e&&("object"!=typeof e||Object.keys(e).length>0)}(o)&&r()){const e=this.get(o);void 0===e?delete n[i]:n[i]=e}}},e)}function g(e){return e.forEach((e=>{e.paths=e.paths.map((e=>{const t=e.split("."),n=t.pop();return[t.length>0?t.join("."):null,n]}))})),function(t,n){const r=[];for(var o=arguments.length,s=new Array(o>2?o-2:0),a=2;a1?t-1:0),i=1;i{if(!1!==t[e.name])for(const[o,s]of e.paths){const a=null==o?n:(0,i.A)(n,o);if(r.push(e.run(n,o,a,s,d.bind(null,e))),!1===t[e.name])return}})),r.filter((e=>null!=e))}}function p(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o.io;return function(n){return!t(e,n)}}function h(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;return[{name:s.DL,paths:a,applies:p(s.DL,e)},{name:s.hq,paths:d,applies:p(s.hq,e)},{name:s.hE,paths:c,applies:p(s.hE,e),get:e=>Math.round(100*(e+Number.EPSILON))/100},{name:s.hE,paths:l,applies:p(s.hE,e),get:e=>function(e){if(!e)return null;let t=e.split(".").map(Number);if(4!=t.length)return null;let n=[];for(let e=0;e<4;e++){let t=Math.max(0,Math.min(8,24-8*e));n.push(255<<8-t&255)}return t.map(((e,t)=>e&n[t])).join(".")}(e)},{name:s.hE,paths:u,applies:p(s.hE,e),get:e=>function(e){if(!e)return null;let t=e.split(":").map((e=>parseInt(e,16)));for(t=t.map((e=>isNaN(e)?0:e));t.length<8;)t.push(0);if(8!=t.length)return null;let n=[];for(let e=0;e<8;e++){let t=Math.max(0,Math.min(16,64-16*e));n.push(65535<<16-t&65535)}return t.map(((e,t)=>e&n[t])).map((e=>e.toString(16))).join(":")}(e)},{name:s.VJ,paths:["source.tid"],applies:p(s.VJ,e)}].map(f)}const m=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;const t=g(h(e)),n=g(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.io;return[{name:s.hq,paths:["userId","userIdAsEids"],applies:p(s.hq,e)},{name:s.VJ,paths:["ortb2Imp.ext.tid"],applies:p(s.VJ,e)}].map(f)}(e));return function(e){const i={};return{ortb2:n=>(t(i,n,e),n),bidRequest:t=>(n(i,t,e),t)}}}();(0,o.qB)(s.VJ,"enableTIDs config",(()=>{if(!r.$W.getConfig("enableTIDs"))return{allow:!1,reason:"TIDs are disabled"}}))},5139:(e,t,n)=>{n.d(t,{io:()=>s,qB:()=>o});var i=n(1069),r=n(2604);const[o,s]=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(0,i.h0)("Activity control:");const t={};function n(e){return t[e]=t[e]||[]}function o(t,n,i,o){let s;try{s=i(o)}catch(i){e.logError(`Exception in rule ${n} for '${t}'`,i),s={allow:!1,reason:i}}return s&&Object.assign({activity:t,name:n,component:o[r.Ii]},s)}const s={};function a(t){let{activity:n,name:i,allow:r,reason:o,component:a}=t;const d=`${i} ${r?"allowed":"denied"} '${n}' for '${a}'${o?":":""}`,c=s.hasOwnProperty(d);if(c&&clearTimeout(s[d]),s[d]=setTimeout((()=>delete s[d]),1e3),!c){const t=[d];o&&t.push(o),(r?e.logInfo:e.logWarn).apply(e,t)}}return[function(e,t,i){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:10;const o=n(e),s=o.findIndex((e=>{let[t]=e;return r=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:()=>P,Hh:()=>q,Pk:()=>N,Uc:()=>R,XO:()=>V,bw:()=>_,n6:()=>C,qn:()=>$,vB:()=>W,vW:()=>S,vd:()=>U});var i=n(1069),r=n(5023),o=n(8969),s=n(3272),a=n(5789),d=n(1371),c=n(6881),l=n(6031),u=n(9214),f=n(2449),g=n(5555),p=n(1445),h=n(6894),m=n(7779),b=n(3005);const{AD_RENDER_FAILED:y,AD_RENDER_SUCCEEDED:v,STALE_RENDER:E,BID_WON:A,EXPIRED_RENDER:w}=o.qY,{EXCEPTION:I}=o.as,T=(0,u.A_)("sync",(function(e){return(arguments.length>2&&void 0!==arguments[2]?arguments[2]:g.U9.resolve()).then((t=>t??c.n.findBidByAdId(e))).catch((()=>{}))})),C=(0,u.A_)("sync",(function(e){((0,b.$T)(e.eventtrackers)[b.RO]?.[b.Ni]||[]).forEach((e=>(0,i.z$)(e))),r.Ic(A,e),c.n.addWinningBid(e)}));function B(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(y,a)}function O(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(v,o)}function R(e,t){switch(e.event){case o.qY.AD_RENDER_FAILED:B({bid:t,id:t.adId,reason:e.info.reason,message:e.info.message});break;case o.qY.AD_RENDER_SUCCEEDED:O({doc:null,bid:t,id:t.adId});break;default:(0,i.vV)(`Received event request for unsupported event: '${e.event}' (adId: '${t.adId}')`)}}function S(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 k={[o.nl.EVENT]:R};k[o.nl.NATIVE]=S;const U=(0,u.A_)("sync",(function(e,t){const{ad:n,adUrl:r,cpm:o,originalCpm:s,width:a,height:d,instl:c}=e,l={AUCTION_PRICE:s||o,CLICKTHROUGH:t?.clickUrl||""};return{ad:(0,i.gM)(n,l),adUrl:(0,i.gM)(r,l),width:a,height:d,instl:c}})),D=(0,u.A_)("sync",(function(e){let{renderFn:t,resizeFn:n,bidResponse:r,options:s,doc:a,isMainDocument:c=a===document&&!(0,i.al)()}=e;const l=r.mediaType===d.G_;if(c||l)return void B({reason:o.as.PREVENT_WRITING_ON_MAIN_DOCUMENT,message:l?"Cannot render video ad without a renderer":"renderAd was prevented from writing to the main document.",bid:r,id:r.adId});const u=U(r,s);t(Object.assign({adId:r.adId},u));const{width:f,height:g}=u;null!=(f??g)&&n(f,g)}));function _(e){let{renderFn:t,resizeFn:n,adId:a,options:d,bidResponse:c,doc:l}=e;q(c,(()=>{if(null!=c){if((c.status!==o.tl.RENDERED||((0,i.JE)(`Ad id ${a} has been rendered before`),r.Ic(E,c),!s.$W.getConfig("auctionOptions")?.suppressStaleRender))&&(m.uW.isBidNotExpired(c)||((0,i.JE)(`Ad id ${a} has been expired`),r.Ic(w,c),!s.$W.getConfig("auctionOptions")?.suppressExpiredRender)))try{D({renderFn:t,resizeFn:n,bidResponse:c,options:d,doc:l})}catch(e){B({reason:o.as.EXCEPTION,message:e.message,id:a,bid:c})}}else B({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),O({doc:i,bid:n,id:n.adId}),e.bail()):e(t)}),100);const j=new WeakMap,x=new WeakSet;function q(e,t){null!=e?(j.set(e,t),e.deferRendering||W(e),N(e)):t()}function N(e){x.has(e)||(x.add(e),C(e))}function W(e){const t=j.get(e);t&&(t(),$(e),j.delete(e))}function P(e,t,n){let r;function s(e,n){B(Object.assign({id:t,bid:r},{reason:e,message:n}))}function a(t,n){const i=e.defaultView?.frameElement;i&&(t&&(i.width=t,i.style.width&&(i.style.width=`${t}px`)),n&&(i.height=n,i.style.height&&(i.style.height=`${n}px`)))}const d=(c={resizeFn:a},function(e,t,n){k.hasOwnProperty(e)&&k[e](t,n,c)});var c;function u(t){t.ad?(e.write(t.ad),e.close(),O({doc:e,bid:r,id:r.adId})):(0,l.HH)(r).then((n=>n(t,{sendMessage:(e,t)=>d(e,t,r),mkFrame:i.hw},e.defaultView))).then((()=>O({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,_({renderFn:u,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 V(){if(!window.frames[o.IY])if(document.body){const e=(0,i.CA)();e.name=o.IY,document.body.appendChild(e)}else window.requestAnimationFrame(V)}},9759:(e,t,n)=>{function i(e){var t=e;return{callBids:function(){},setBidderCode:function(e){t=e},getBidderCode:function(){return t}}}n.d(t,{A:()=>i})},1445:(e,t,n)=>{n.d(t,{Ay:()=>z,pX:()=>M,K5:()=>N});var i=n(1069),r=n(2449),o=n(7377),s=n(8044),a=n(3272),d=n(9214);let c={};function l(e,t,n){let i=function(e,t){let n=c[e]=c[e]||{bidders:{}};return t?n.bidders[t]=n.bidders[t]||{}:n}(e,n);return i[t]=(i[t]||0)+1,i[t]}function u(e){return l(e,"auctionsCounter")}function f(e){return c?.[e]?.requestsCounter||0}function g(e,t){return c?.[e]?.bidders?.[t]?.requestsCounter||0}function p(e,t){return c?.[e]?.bidders?.[t]?.winsCounter||0}function h(e){return c?.[e]?.auctionsCounter||0}var m=n(7934),b=n(6916),y=n(5023),v=n(8969),E=n(6894),A=n(6881),w=n(5569),I=n(5139),T=n(6811),C=n(2604),B=n(6953),O=n(3005);const R="pbsBidAdapter",S={CLIENT:"client",SERVER:"server"},k={isAllowed:I.io,redact:B.$p};let U={},D=U.bidderRegistry={},_=U.aliasRegistry={},$=[];a.$W.getConfig("s2sConfig",(e=>{e&&e.s2sConfig&&($=(0,i.cy)(e.s2sConfig)?e.s2sConfig:[e.s2sConfig])}));var j={};const x=(0,C.ZI)((e=>U.resolveAlias(e)));function q(e){return e.configName??e.name}function N(e){return x(w.tp,R,{[C.XG]:q(e)})}const W=(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:h(o.code),bidRequestsCount:f(o.code),bidderRequestsCount:g(o.code,d.bidder),bidderWinsCount:p(o.code,d.bidder),deferBilling:!!o.deferBilling})),e}),[])),e}),[]).reduce(i.Bq,[]).filter((e=>""!==e))}),"getBids");const P=(0,d.A_)("sync",(function(e,t){let{getS2SBidders:n=M}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null==t)return e;{const i=n(t);return e.filter((e=>{if(!i.has(e.bidder))return!1;if(null==e.s2sConfigName)return!0;const n=q(t);return(Array.isArray(e.s2sConfigName)?e.s2sConfigName:[e.s2sConfigName]).includes(n)}))}}),"filterBidsForAdUnit");const V=(0,d.A_)("sync",((e,t)=>e),"setupAdUnitMediaTypes");function M(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 G=(0,d.A_)("sync",(function(e,t){let{getS2SBidders:n=M}=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)?S.SERVER:S.CLIENT].push(t),e)),{[S.CLIENT]:[],[S.SERVER]:[]})}),"partitionBidders");function F(e,t){const n=D[e],i=n?.getSpec&&n.getSpec();if(i&&i[t]&&"function"==typeof i[t])return[i,i[t]]}function H(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;d5&&void 0!==arguments[5]?arguments[5]:{},c=arguments.length>6?arguments[6]:void 0;c=(0,E.BO)(c),y.Ic(v.qY.BEFORE_REQUEST_BIDS,e),(0,r.nk)(e),e.map((e=>e.code)).filter(i.hj).forEach(u),e.forEach((e=>{(0,i.Qd)(e.mediaTypes)||(e.mediaTypes={}),e.bids=e.bids.filter((e=>!e.bidder||k.isAllowed(T.uc,x(w.tW,e.bidder)))),l(e.code,"requestsCounter")})),e=V(e,s);let{[S.CLIENT]:f,[S.SERVER]:g}=G(e,$);a.$W.getConfig("bidderSequence")===a.Ov&&(f=(0,i.k4)(f));const p=(0,m.EN)();let h=[];const A=d.global||{},I=d.bidder||{};function C(e,t){const r=k.redact(null!=t?t:x(w.tW,e.bidderCode)),o=(0,i.D9)({source:{tid:n}},A,I[e.bidderCode]);!function(e){const t=e.user?.eids;Array.isArray(t)&&t.length&&(e.user.ext=e.user.ext||{},e.user.ext.eids=[...e.user.ext.eids||[],...t],delete e.user.eids)}(o);const s=Object.freeze(r.ortb2(o));return e.ortb2=s,e.bids=e.bids.map((e=>(e.ortb2=s,r.bidRequest(e)))),e}$.forEach((r=>{const o=N(r);if(r&&r.enabled&&k.isAllowed(T.uc,o)){let{adUnits:s,hasModuleBids:a}=function(e,t){let n=(0,i.Go)(e),r=!1;return n.forEach((e=>{const n=e.bids.filter((e=>e.module===R&&e.params?.configName===q(t)));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=P(e.bids,t).map((e=>(e.bid_id=(0,i.s0)(),e)))})),n=n.filter((e=>0!==e.bids.length||null!=e.s2sBid)),{adUnits:n,hasModuleBids:r}}(e,r),d=(0,i.lk)();(0===g.length&&a?[null]:g).forEach((e=>{const a=(0,i.s0)(),l=c.fork(),u=C({bidderCode:e,auctionId:n,bidderRequestId:a,uniquePbsTid:d,bids:W({bidderCode:e,auctionId:n,bidderRequestId:a,adUnits:(0,i.Go)(s),src:v.RW.SRC,metrics:l}),auctionStart:t,timeout:r.timeout,src:v.RW.SRC,refererInfo:p,metrics:l},o);0!==u.bids.length&&h.push(u)})),s.forEach((e=>{let t=e.bids.filter((e=>h.find((t=>t.bids.find((t=>t.bidId===e.bid_id))))));e.bids=t})),h.forEach((e=>{void 0===e.adUnitsS2SCopy&&(e.adUnitsS2SCopy=s.filter((e=>e.bids.length>0||null!=e.s2sBid)))}))}}));let B=function(e){let t=(0,i.Go)(e);return t.forEach((e=>{e.bids=P(e.bids,null)})),t=t.filter((e=>0!==e.bids.length)),t}(e);return f.forEach((e=>{const r=(0,i.s0)(),a=c.fork(),d=C({bidderCode:e,auctionId:n,bidderRequestId:r,bids:W({bidderCode:e,auctionId:n,bidderRequestId:r,adUnits:(0,i.Go)(B),labels:s,src:"client",metrics:a}),auctionStart:t,timeout:o,refererInfo:p,metrics:a}),l=D[e];l||(0,i.vV)(`Trying to make a request for bidder that does not exist: ${e}`),l&&d.bids&&0!==d.bids.length&&h.push(d)})),h.forEach((e=>{b.mW.getConsentData()&&(e.gdprConsent=b.mW.getConsentData()),b.t6.getConsentData()&&(e.uspConsent=b.t6.getConsentData()),b.ad.getConsentData()&&(e.gppConsent=b.ad.getConsentData())})),h}),"makeBidRequests"),U.callBids=function(e,t,n,r,o,d,c){let l=arguments.length>7&&void 0!==arguments[7]?arguments[7]:{};if(!t.length)return void(0,i.JE)("callBids executed with no bidRequests. Were they filtered by labels or sizing?");let[u,f]=t.reduce(((e,t)=>(e[Number(void 0!==t.src&&t.src===v.RW.SRC)].push(t),e)),[[],[]]);var g=[];f.forEach((e=>{for(var t=-1,n=0;n{if(e&&g[p]&&M(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 u=D[e.adapter];let h=g[p].uniquePbsTid,m=g[p].adUnitsS2SCopy,b=f.filter((e=>e.uniquePbsTid===h));if(u){let o={ad_units:m,s2sConfig:e,ortb2Fragments:l,requestBidsTimeout: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=>{y.Ic(v.qY.BID_REQUESTED,{...e,tid:e.auctionId})})),u.callBids(o,f,n,(t=>e.forEach((e=>e(t)))),t)}}else(0,i.vV)("missing "+e.adapter);p++}})),u.forEach((e=>{e.start=(0,i.vE)();const t=D[e.bidderCode];a.$W.runWithBidder(e.bidderCode,(()=>{(0,i.OG)("CALLING BIDDER"),y.Ic(v.qY.BID_REQUESTED,e)}));let l=(0,s.g4)(d,o?{request:o.request.bind(null,e.bidderCode),done:o.done}:void 0);const u=r.bind(e);try{a.$W.runWithBidder(e.bidderCode,t.callBids.bind(t,e,n,u,l,(()=>c(e.bidderRequestId)),a.$W.callbackWithBidder(e.bidderCode)))}catch(t){(0,i.vV)(`${e.bidderCode} Bid Adapter emitted an uncaught error when parsing their bidRequest`,{e:t,bidRequest:e}),u()}}))},U.videoAdapters=[],U.registerBidAdapter=function(e,t){let{supportedMediaTypes:n=[]}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};e&&t?"function"==typeof e.callBids?(D[t]=e,b.o2.register(w.tW,t,e.getSpec?.().gvlid),n.includes("video")&&U.videoAdapters.push(t),n.includes("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")},U.aliasBidAdapter=function(e,t,n){if(void 0===D[t]){let s=D[e];if(void 0===s){const n=[];$.forEach((i=>{if(i.bidders&&i.bidders.length){const r=i&&i.bidders;i&&r.includes(t)?_[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 U.videoAdapters.includes(e)&&t.push("video"),r.mT.includes(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 l=n&&n.skipPbsAliasing;a=(0,o.xb)(Object.assign({},d,{code:t,gvlid:c,skipPbsAliasing:l})),_[t]=e}U.registerBidAdapter(a,t,{supportedMediaTypes:d})}catch(t){(0,i.vV)(e+" bidder does not currently support aliasing.","adapterManager.aliasBidAdapter")}}else(0,i.OG)('alias name "'+t+'" has been already specified.')},U.resolveAlias=function(e){let t,n=e;for(;_[n]&&(!t||!t.has(n));)n=_[n],(t=t||new Set).add(n);return n},U.registerAnalyticsAdapter=function(e){let{adapter:t,code:n,gvlid:r}=e;t&&n?"function"==typeof t.enableAnalytics?(t.code=n,j[n]={adapter:t,gvlid:r},b.o2.register(w.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")},U.enableAnalytics=function(e){(0,i.cy)(e)||(e=[e]),e.forEach((e=>{const t=j[e.provider];t&&t.adapter?k.isAllowed(T.mo,x(w.Tn,e.provider,{[C.TQ]:e}))&&t.adapter.enableAnalytics(e):(0,i.vV)(`Prebid Error: no analytics adapter found in registry for '${e.provider}'.`)}))},U.getBidAdapter=function(e){return D[e]},U.getAnalyticsAdapter=function(e){return j[e]},U.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=>{L(e,"onTimeout",t[e])}))},U.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),L(e,"onBidWon",t)},U.triggerBilling=(()=>{const e=new WeakSet;return t=>{e.has(t)||(e.add(t),((0,O.$T)(t.eventtrackers)[O.OA]?.[O.Ni]||[]).forEach((e=>i.mM.triggerPixel(e))),L(t.bidder,"onBidBillable",t))}})(),U.callSetTargetingBidder=function(e,t){L(e,"onSetTargeting",t)},U.callBidViewableBidder=function(e,t){L(e,"onBidViewable",t)},U.callBidderError=function(e,t,n){L(e,"onBidderError",{error:t,bidderRequest:n})},U.callAdRenderSucceededBidder=function(e,t){L(e,"onAdRenderSucceeded",t)},U.callDataDeletionRequest=(0,d.A_)("sync",(function(){for(var e=arguments.length,t=new Array(e),n=0;n!_.hasOwnProperty(e))).forEach((e=>{const n=F(e,r);if(null!=n){const i=A.n.getBidsRequested().filter((t=>function(e){const t=new Set;for(;_.hasOwnProperty(e)&&!t.has(e);)t.add(e),e=_[e];return e}(t.bidderCode)===e));H(e,r,...n,i,...t)}})),Object.entries(j).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 z=U},7377:(e,t,n)=>{n.d(t,{JN:()=>R,fn:()=>S,xb:()=>T});var i=n(9759),r=n(1445),o=n(3272),s=n(3597),a=n(8230),d=n(2449),c=n(3895),l=n(8969),u=n(5023),f=n(1069),g=n(9214),p=n(6881),h=n(2693),m=n(6894),b=n(5139),y=n(3441),v=n(5569),E=n(6811);const A=["cpm","ttl","creativeId","netRevenue","currency"],w=["auctionId","transactionId"];const I=(0,f.Bj)((e=>{let{bidderCode:t}=e;if((0,b.io)(E.VJ,(0,y.s)(v.tW,t)))return{bidRequest:e=>e,bidderRequest:e=>e};function n(e,t,n){return w.includes(t)?null:Reflect.get(e,t,n)}function i(e,t){const n=new Proxy(e,t);return Object.entries(e).filter((e=>{let[t,n]=e;return"function"==typeof n})).forEach((t=>{let[i,r]=t;return n[i]=r.bind(e)})),n}const r=(0,f.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 T(e){return Object.assign(new i.A(e.code),{getSpec:function(){return Object.freeze(Object.assign({},e))},registerSyncs:t,callBids:function(n,i,a,d,c,g){if(!Array.isArray(n.bids))return;const p=I(n),b={};const y=[];function v(){a(),o.$W.runWithBidder(e.code,(()=>{u.Ic(l.qY.BIDDER_DONE,n),t(y,n.gdprConsent,n.uspConsent,n.gppConsent)}))}const E=k(n).measureTime("validate",(()=>n.bids.filter((t=>function(t){if(!e.isBidRequestValid(t))return(0,f.JE)(`Invalid bid sent to bidder ${e.code}: ${JSON.stringify(t)}`),!1;return!0}(p.bidRequest(t))))));if(0===E.length)return void v();const A={};E.forEach((e=>{A[e.bidId]=e,e.adUnitCode||(e.adUnitCode=e.placementCode)})),B(e,E,n,d,g,{onRequest:e=>u.Ic(l.qY.BEFORE_BIDDER_HTTP,n,e),onResponse:t=>{c(e.code),y.push(t)},onPaapi:e=>{const t=A[e.bidId];t?R(t,e):(0,f.JE)("Received fledge auction configuration for an unknown bidId",e)},onError:(t,i)=>{i.timedOut||c(e.code),r.Ay.callBidderError(e.code,i,n),u.Ic(l.qY.BIDDER_ERROR,{error:i,bidderRequest:n}),(0,f.vV)(`Server call for ${e.code} failed: ${t} ${i.status}. Continuing without bids.`,{bidRequests:E})},onBid:t=>{const n=A[t.requestId];if(n){if(t.adapterCode=n.bidder,function(e,t){let n=h.u.get(t,"allowAlternateBidderCodes")||!1,i=h.u.get(t,"allowedAlternateBidderCodes");if(e&&t&&t!==e&&(i=(0,f.cy)(i)?i.map((e=>e.trim().toLowerCase())).filter((e=>!!e)).filter(f.hj):i,!n||(0,f.cy)(i)&&"*"!==i[0]&&!i.includes(e)))return!0;return!1}(t.bidderCode,n.bidder))return(0,f.JE)(`${t.bidderCode} is not a registered partner or known bidder of ${n.bidder}, hence continuing without bid. If you wish to support this bidder, please mark allowAlternateBidderCodes as true in bidderSettings.`),void i.reject(n.adUnitCode,t,l.Tf.BIDDER_DISALLOWED);t.originalCpm=t.cpm,t.originalCurrency=t.currency,t.meta=t.meta||Object.assign({},t[n.bidder]),t.deferBilling=n.deferBilling,t.deferRendering=t.deferBilling&&(t.deferRendering??"function"!=typeof e.onBidBillable);const r=Object.assign((0,s.O)(l.XQ.GOOD,n),t,(0,f.Up)(n,w));!function(e,t){const n=(0,m.BO)(t.metrics);n.checkpoint("addBidResponse"),b[e]=!0,n.measureTime("addBidResponse.validate",(()=>S(e,t)))?i(e,t):i.reject(e,t,l.Tf.INVALID)}(n.adUnitCode,r)}else(0,f.JE)(`Bidder ${e.code} made bid for unknown request ID: ${t.requestId}. Ignoring.`),i.reject(null,t,l.Tf.INVALID_REQUEST_ID)},onCompletion:v})}});function t(t,n,i,r){O(e,t,n,i,r)}}const C=["bids","paapi"],B=(0,g.A_)("async",(function(e,t,n,i,r,o){let{onRequest:s,onResponse:a,onPaapi:d,onError:c,onBid:u,onCompletion:g}=o;const p=k(n);g=p.startTiming("total").stopBefore(g);const m=I(n);let A=p.measureTime("buildRequests",(()=>e.buildRequests(t.map(m.bidRequest),m.bidderRequest(n))));if(!A||0===A.length)return void g();Array.isArray(A)||(A=[A]);const w=(0,f.U6)(g,A.length);A.forEach((t=>{const n=p.fork();function o(e){null!=e&&(e.metrics=n.fork().renameWith()),u(e)}const g=r((function(i,r){A();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,f.vV)(`Bidder ${e.code} failed to interpret the server's response. Continuing without bids`,null,t),void w()}let s,c;i&&!Object.keys(i).some((e=>!C.includes(e)))?(s=i.bids,c=i.paapi):s=i,(0,f.cy)(c)&&c.forEach(d),s&&((0,f.cy)(s)?s.forEach(o):o(s)),w()})),m=r((function(e,t){A(),c(e,t),w()}));s(t);const A=n.startTiming("net");function I(n){const i=t.options;return Object.assign(n,i,{browsingTopics:!(i?.hasOwnProperty("browsingTopics")&&!i.browsingTopics)&&((h.u.get(e.code,"topicsHeader")??!0)&&(0,b.io)(E.DL,(0,y.s)(v.tW,e.code)))})}switch(t.method){case"GET":i(`${t.url}${function(e){if(e)return`?${"object"==typeof e?(0,f.bL)(e):e}`;return""}(t.data)}`,{success:g,error:m},void 0,I({method:"GET",withCredentials:!0}));break;case"POST":const n=t.options?.endpointCompression,r="TRUE"===(0,f.Ez)(l.M).toUpperCase()||(0,f.dp)(),o=e=>{let{url:t,payload:n}=e;i(t,{success:g,error:m},n,I({method:"POST",contentType:"text/plain",withCredentials:!0}))};n&&r&&(0,f.JE)(`Skipping GZIP compression for ${e.code} as debug mode is enabled`),n&&!r&&(0,f.nT)()?(0,f.ZK)(t.data).then((e=>{const n=new URL(t.url,window.location.origin);n.searchParams.has("gzip")||n.searchParams.set("gzip","1"),o({url:n.href,payload:e})})):o({url:t.url,payload:"string"==typeof t.data?t.data:JSON.stringify(t.data)});break;default:(0,f.JE)(`Skipping invalid request from ${e.code}. Request type ${t.type} must be GET or POST`),w()}}))}),"processBidderRequests"),O=(0,g.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=e.getUserSyncs({iframeEnabled:a.zt.canBidderRegisterSync("iframe",e.code),pixelEnabled:a.zt.canBidderRegisterSync("image",e.code)},t,n,i,s);r&&(Array.isArray(r)||(r=[r]),r.forEach((t=>{a.zt.registerSync(t.type,e.code,t.url)})),a.zt.bidderDone(e.code))}}),"registerSyncs"),R=(0,g.A_)("sync",((e,t)=>{}),"addPaapiConfig");function S(e,t){let{index:n=p.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};function i(e){return`Invalid bid from ${t.bidderCode}. Ignoring bid: ${e}`}return e?t?function(){let e=Object.keys(t);return A.every((n=>e.includes(n)&&![void 0,null].includes(t[n])))}()?"native"!==t.mediaType||(0,d.Bm)(t,{index:n})?"video"!==t.mediaType||(0,c.vk)(t,{index:n})?!("banner"===t.mediaType&&!function(e,t){let{index:n=p.n.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if((t.width||0===parseInt(t.width,10))&&(t.height||0===parseInt(t.height,10)))return t.width=parseInt(t.width,10),t.height=parseInt(t.height,10),!0;if(null!=t.wratio&&null!=t.hratio)return t.wratio=parseInt(t.wratio,10),t.hratio=parseInt(t.hratio,10),!0;const i=n.getBidRequest(t),r=n.getMediaTypes(t),o=i&&i.sizes||r&&r.banner&&r.banner.sizes,s=(0,f.kK)(o);if(1===s.length){const[e,n]=s[0].split("x");return t.width=parseInt(e,10),t.height=parseInt(n,10),!0}return!1}(e,t,{index:n}))||((0,f.vV)(i("Banner bids require a width and height")),!1):((0,f.vV)(i("Video bid does not have required vastUrl or renderer property")),!1):((0,f.vV)(i("Native bid missing some required properties.")),!1):((0,f.vV)(i(`Bidder ${t.bidderCode} is missing required params. Check http://prebid.org/dev-docs/bidder-adapter-1.html for list of params.`)),!1):((0,f.JE)(`Some adapter tried to add an undefined bid for ${e}.`),!1):((0,f.JE)("No adUnitCode was supplied to addBidResponse."),!1)}function k(e){return(0,m.BO)(e.metrics).renameWith((t=>[`adapter.client.${t}`,`adapters.client.${e.bidderCode}.${t}`]))}},1580:(e,t,n)=>{n.d(t,{R:()=>c});var i=n(6811),r=n(3441),o=n(5139),s=n(1069);const a=new WeakMap,d=["debugging","outstream","aaxBlockmeter","adagio","adloox","akamaidap","arcspan","airgrid","browsi","brandmetrics","clean.io","humansecurity","confiant","contxtful","hadron","mediafilter","medianet","azerionedge","a1Media","geoedge","qortex","dynamicAdBoost","51Degrees","symitridap","wurfl","nodalsAi","anonymised","optable","justtag","tncId","ftrackId","id5"];function c(e,t,n,c,l,u){if(!(0,o.io)(i.pY,(0,r.s)(t,n)))return;if(!n||!e)return void(0,s.vV)("cannot load external script without url and moduleCode");if(!d.includes(n))return void(0,s.vV)(`${n} not whitelisted for loading external JavaScript`);l||(l=document);const f=h(l,e);if(f)return c&&"function"==typeof c&&(f.loaded?c():f.callbacks.push(c)),f.tag;const g=a.get(l)||{},p={loaded:!1,tag:null,callbacks:[]};return g[e]=p,a.set(l,g),c&&"function"==typeof c&&p.callbacks.push(c),(0,s.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 a=h(i,e);a&&(a.tag=o);o.readyState?o.onreadystatechange=function(){"loaded"!==o.readyState&&"complete"!==o.readyState||(o.onreadystatechange=null,n())}:o.onload=function(){n()};o.src=t,r&&(0,s.Bg)(o,r);return(0,s._s)(o,i),o}(e,(function(){p.loaded=!0;try{for(let e=0;e{n.d(t,{Q:()=>i});const i=(0,n(9214).A_)("sync",(()=>{}))},8044:(e,t,n)=>{n.d(t,{RD:()=>f,g4:()=>u});var i=n(3272),r=n(1069);const o={fetch:window.fetch.bind(window),makeRequest:(e,t)=>new Request(e,t),timeout(e,t){const n=new AbortController;let i=setTimeout((()=>{n.abort(),(0,r.vV)(`Request timeout after ${e}ms`,t),i=null}),e);return{signal:n.signal,done(){i&&clearTimeout(i)}}}},s="GET",a="POST",d="Content-Type";function c(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3e3,{request:t,done:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=(t,n)=>{let r;null==e||null!=n?.signal||i.$W.getConfig("disableAjaxTimeout")||(r=o.timeout(e,t),n=Object.assign({signal:r.signal},n));let s=o.fetch(t,n);return null!=r?.done&&(s=s.finally(r.done)),s};return null==t&&null==n||(r=(e=>function(i,r){const o=new URL(null==i?.url?i:i.url,document.location).origin;let s=e(i,r);return t&&t(o),n&&(s=s.finally((()=>n(o)))),s})(r)),r}function l(e,t){let{status:n,statusText:i="",headers:o,url:s}=e,a=0;function c(e){if(0===a)try{a=(new DOMParser).parseFromString(t,o?.get(d)?.split(";")?.[0])}catch(t){a=null,e&&e(t)}return a}return{readyState:XMLHttpRequest.DONE,status:n,statusText:i,responseText:t,response:t,responseType:"",responseURL:s,get responseXML(){return c(r.vV)},getResponseHeader:e=>o?.has(e)?o.get(e):null,toJSON(){return Object.assign({responseXML:c()},this)},timedOut:!1}}function u(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3e3,{request:t,done:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const i=c(e,{request:t,done:n});return function(e,t,n){!function(e,t){const{success:n,error:i}="object"==typeof t&&null!=t?t:{success:"function"==typeof t?t:()=>null,error:(e,t)=>(0,r.vV)("Network error",e,t)};e.then((e=>e.text().then((t=>[e,t])))).then((e=>{let[t,r]=e;const o=l(t,r);t.ok||304===t.status?n(r,o):i(t.statusText,o)}),(e=>i("",Object.assign(l({status:0},""),{reason:e,timedOut:"AbortError"===e?.name}))))}(i(function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const i=n.method||(t?a:s);if(i===s&&t){const i=(0,r.Dl)(e,n);Object.assign(i.search,t),e=(0,r.c$)(i)}const c=new Headers(n.customHeaders);c.set(d,n.contentType||"text/plain");const l={method:i,headers:c};return i!==s&&t&&(l.body=t),n.withCredentials&&(l.credentials="include"),isSecureContext&&["browsingTopics","adAuctionHeaders"].forEach((e=>{n[e]&&(l[e]=!0)})),n.keepalive&&(l.keepalive=!0),o.makeRequest(e,l)}(e,n,arguments.length>3&&void 0!==arguments[3]?arguments[3]:{})),t)}}const f=u();c()},6881:(e,t,n)=>{n.d(t,{n:()=>ae});var i=n(1069),r=n(6833),o=n(2449),s=n(8044),a=n(3272);const d=15,c=new Map;function l(e){let{index:t=ae.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=u(e),i=t.getAuction(e);let r={type:"xml",value:n,ttlseconds:Number(e.ttl)+d};return a.$W.getConfig("cache.vasttrack")&&(r.bidder=e.bidder,r.bidid=e.requestId,r.aid=e.auctionId),null!=i&&(r.timestamp=i.getAuctionStart()),"string"==typeof e.customCacheKey&&""!==e.customCacheKey&&(r.key=e.customCacheKey),r}function u(e){return e.vastXml?e.vastXml:(t=e.vastUrl,n=e.vastImpUrl,`\n \n \n prebid.org wrapper \n \n ${(n=n&&(Array.isArray(n)?n:[n]))?n.map((e=>` `)).join(""):""}\n \n \n \n `);var t,n}const f=e=>{const t=u(e),n=URL.createObjectURL(new Blob([t],{type:"text/xml"}));g(e,n),c.set(e.videoCacheKey,n)},g=(e,t,n)=>{e.videoCacheKey=n||(0,i.lk)(),e.vastUrl||(e.vastUrl=t)},p={store:function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:s.g4;const i={puts:e.map(l)};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 h(e){const t=e.map((e=>e.bidResponse));p.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."):(g(o,(d=t.uuid,`${a.$W.getConfig("cache.url")}?uuid=${d}`),t.uuid),J(r,o),s())}))}))}let m,b,y;a.$W.getConfig("cache",(e=>{let{cache:t}=e;m="number"==typeof t.batchSize&&t.batchSize>0?t.batchSize:1,b="number"==typeof t.batchTimeout&&t.batchTimeout>0?t.batchTimeout:0,t.useLocal&&!y&&(y=ae.onExpiry((e=>{e.getBidsReceived().forEach((e=>{const t=c.get(e.videoCacheKey);t&&t.startsWith("blob")&&URL.revokeObjectURL(t),c.delete(e.videoCacheKey)}))})))}));const v=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:setTimeout,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:h,n=[[]],i=!1;const r=e=>e();return function(o,s,a){const d=b>0?e:r;n[n.length-1].length>=m&&n.push([]),n[n.length-1].push({auctionInstance:o,bidResponse:s,afterBidAdded:a}),i||(i=!0,d((()=>{n.forEach(t),n=[[]],i=!1}),b))}}();var E=n(5789),A=n(8230),w=n(9214),I=n(3895),T=n(1371),C=n(2693),B=n(5023),O=n(1445),R=n(8969),S=n(5555),k=n(6894);var U=n(7873),D=n(6853),_=n(7863);const{syncUsers:$}=A.zt,j="started",x="inProgress",q="completed";B.on(R.qY.BID_ADJUSTMENT,(function(e){!function(e){let t=function(e,t,n){let{index:r=ae.index,bs:o=C.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 N=4,W={},P={},V=[],M=(0,U.m)();function G(e){let{adUnits:t,adUnitCodes:n,callback:s,cbTimeout:d,labels:c,auctionId:l,ortb2Fragments:u,metrics:g}=e;g=(0,k.BO)(g);const p=t,h=c,m=n,b=l||(0,i.lk)(),y=d,v=new Set,A=(0,S.v6)(),w=(0,S.v6)();let C,U,G,Y,X=[],Z=s,ee=[],te=(0,D.H)({startTime:e=>e.responseTimestamp,ttl:e=>null==(0,_.S9)()?null:1e3*Math.max((0,_.S9)(),e.ttl)}),ne=[],ie=[],re=[];function se(){return{auctionId:b,timestamp:C,auctionEnd:U,auctionStatus:Y,adUnits:p,adUnitCodes:m,labels:h,bidderRequests:ee,noBids:ne,bidsReceived:te.toArray(),bidsRejected:X,winningBids:ie,timeout:y,metrics:g,seatNonBids:re}}function de(e){if(e?B.Ic(R.qY.AUCTION_TIMEOUT,se()):clearTimeout(G),void 0===U){let n=[];e&&((0,i.OG)(`Auction ${b} timedOut`),n=ee.filter((e=>!v.has(e.bidderRequestId))).flatMap((e=>e.bids)),n.length&&B.Ic(R.qY.BID_TIMEOUT,n)),Y=q,U=Date.now(),g.checkpoint("auctionEnd"),g.timeBetween("requestBids","auctionEnd","requestBids.total"),g.timeBetween("callBids","auctionEnd","requestBids.callBids"),A.resolve(),B.Ic(R.qY.AUCTION_END,se()),z(p,(function(){try{if(null!=Z){const t=te.toArray().filter((e=>m.includes(e.adUnitCode))).reduce(oe,{});Z.apply(M,[t,e,b]),Z=null}}catch(e){(0,i.vV)("Error executing bidsBackHandler",null,e)}finally{n.length&&O.Ay.callTimedOutBidders(t,n,y);let e=a.$W.getConfig("userSync")||{};e.enableOverride||$(e.syncDelay)}}))}}function ce(){a.$W.resetBidder(),(0,i.fH)(`Bids Received for Auction with id: ${b}`,te.toArray()),Y=q,de(!1)}function le(e){v.add(e)}function ue(e){e.forEach((e=>{var t;t=e,ee=ee.concat(t)}));let t={},n={bidRequests:e,run:()=>{G=setTimeout((()=>de(!0)),y),Y=x,B.Ic(R.qY.AUCTION_INIT,se());let n=function(e,t){let{index:n=ae.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=0,d=!1,c=new Set,l={};function u(){s--,d&&0===s&&e()}function g(e,t,n){return l[t.requestId]=!0,function(e,t){let{index:n=ae.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(u)}function p(e,s){g(e,s,(e=>{let d=function(e){let{index:t=ae.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};B.Ic(R.qY.BID_ADJUSTMENT,e);const n=t.getAdUnit(e);e.instl=1===n?.ortb2Imp?.instl;const i=t.getBidRequest(e)?.renderer||n.renderer,o=e.mediaType,s=t.getMediaTypes(e),d=s&&s[o];var c=d&&d.renderer,l=null;!c||!c.render||!0===c.backupOnly&&e.renderer?!i||!i.render||!0===i.backupOnly&&e.renderer||(l=i):l=c;l&&(e.renderer=E.A4.install({url:l.url,config:l.options,renderNow:null==l.url}),e.renderer.setRender(l.render));const u=K(e.mediaType,s,a.$W.getConfig("mediaTypePriceGranularity")),f=(0,r.j)(e.cpm,"object"==typeof u?u:a.$W.getConfig("customPriceBucket"),a.$W.getConfig("currency.granularityMultiplier"));return e.pbLg=f.low,e.pbMg=f.med,e.pbHg=f.high,e.pbAg=f.auto,e.pbDg=f.dense,e.pbCg=f.custom,e}(s);B.Ic(R.qY.BID_ACCEPTED,d),d.mediaType===T.G_?function(e,t,n){let{index:r=ae.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,{useLocal:l,url:u,ignoreBidderCacheKey:g}=a.$W.getConfig("cache")||{};l?f(t):u&&(c||d!==I.H6)&&(!t.videoCacheKey||g?(o=!1,Q(e,t,n,s)):t.vastUrl||((0,i.vV)("videoCacheKey specified but not required vastUrl for video bid"),o=!1));o&&(J(e,t),n())}(t,d,e):((0,o.l6)(d)&&(0,o.gs)(d,n.getAdUnit(d)),J(t,d),e())}))}function h(e,n,r){return g(e,n,(e=>{n.rejectionReason=r,(0,i.JE)(`Bid from ${n.bidder||"unknown bidder"} was rejected: ${r}`,n),B.Ic(R.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=>e.includes(t.bidderCode)))&&(r=r.filter((t=>!e.includes(t.bidderCode))))}d=r.every((e=>c.has(e))),n.bids.forEach((e=>{l[e.bidId]||(t.addNoBid(e),B.Ic(R.qY.NO_BID,e))})),d&&0===s&&e()}return{addBidResponse:function(){function e(e,t){F.call({dispatch:p},e,t,(()=>{let n=!1;return i=>{n||(h(e,t,i),n=!0)}})())}return e.reject=h,e}(),adapterDone:function(){H(S.U9.resolve()).finally((()=>m.call(this)))}}}(ce,this);O.Ay.callBids(p,e,n.addBidResponse,n.adapterDone,{request(e,n){d(W,n),d(t,e),P[e]||(P[e]={SRA:!0,origin:n}),t[e]>1&&(P[e].SRA=!1)},done(e){W[e]--,V[0]&&s(V[0])&&V.shift()}},y,le,u),w.resolve()}};function s(e){let t=!0,n=a.$W.getConfig("maxRequestsPerOrigin")||N;return e.bidRequests.some((e=>{let i=1,r=void 0!==e.src&&e.src===R.RW.SRC?"s2s":e.bidderCode;return P[r]&&(!1===P[r].SRA&&(i=Math.min(e.bids.length,n)),W[P[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"),V.push(n))}return(0,_.lc)((()=>te.refresh())),B.on(R.qY.SEAT_NON_BID,(e=>{var t;e.auctionId===b&&(t=e.seatnonbid,re=re.concat(t))})),{addBidReceived:function(e){te.add(e)},addBidRejected:function(e){X=X.concat(e)},addNoBid:function(e){ne=ne.concat(e)},callBids:function(){Y=j,C=Date.now();let e=g.measureTime("requestBids.makeRequests",(()=>O.Ay.makeBidRequests(p,C,b,y,h,u,g)));(0,i.fH)(`Bids Requested for Auction with id: ${b}`,e),g.checkpoint("callBids"),e.length<1?((0,i.JE)("No valid bid requests returned for auction"),ce()):L.call({dispatch:ue,context:this},e)},addWinningBid:function(e){ie=ie.concat(e),O.Ay.callBidWonBidder(e.adapterCode||e.bidder,e,t),e.deferBilling||O.Ay.triggerBilling(e)},setBidTargeting:function(e){O.Ay.callSetTargetingBidder(e.adapterCode||e.bidder,e)},getWinningBids:()=>ie,getAuctionStart:()=>C,getAuctionEnd:()=>U,getTimeout:()=>y,getAuctionId:()=>b,getAuctionStatus:()=>Y,getAdUnits:()=>p,getAdUnitCodes:()=>m,getBidRequests:()=>ee,getBidsReceived:()=>te.toArray(),getNoBids:()=>ne,getNonBids:()=>re,getFPD:()=>u,getMetrics:()=>g,end:A.promise,requestsDone:w.promise,getProperties:se}}const F=(0,w.u2)((0,w.A_)("async",(function(e,t,n){!function(e){const t=a.$W.getConfig("maxBid");return!t||!e.cpm||t>=Number(e.cpm)}(t)?n(R.Tf.PRICE_TOO_HIGH):this.dispatch.call(null,e,t)}),"addBidResponse")),H=(0,w.A_)("sync",(e=>e),"responsesReady"),L=(0,w.A_)("sync",(function(e){this.dispatch.call(this.context,e)}),"addBidderRequests"),z=(0,w.A_)("async",(function(e,t){t&&t()}),"bidsBackCallback");function J(e,t){!function(e){let t;const n=!0===C.u.get(e.bidderCode,"allowZeroCpmBids")?e.cpm>=0:e.cpm>0;e.bidderCode&&(n||e.dealId)&&(t=function(e,t){let{index:n=ae.index}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!t)return{};const i=n.getBidRequest(t);var r={};const s=ie(t.mediaType,e);re(r,s,t,i),e&&C.u.getOwn(e,R.iD.ADSERVER_TARGETING)&&(re(r,C.u.ownSettingsFor(e),t,i),t.sendStandardTargeting=C.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,k.BO)(t.metrics).timeSince("addBidResponse","addBidResponse.total"),e.addBidReceived(t),B.Ic(R.qY.BID_RESPONSE,t)}const Q=(0,w.A_)("async",(function(e,t,n,i){v(e,t,n)}),"callPrebidCache");function K(e,t,n){if(e&&n){if(e===T.G_){const e=t?.[T.G_]?.context??"instream";if(n[`${T.G_}-${e}`])return n[`${T.G_}-${e}`]}return n[e]}}const Y=e=>t=>{const n=e||function(e){let{index:t=ae.index}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=K(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===R.UE.AUTO?t.pbAg:n===R.UE.DENSE?t.pbDg:n===R.UE.LOW?t.pbLg:n===R.UE.MEDIUM?t.pbMg:n===R.UE.HIGH?t.pbHg:n===R.UE.CUSTOM?t.pbCg:void 0},X=()=>e=>e.creativeId?e.creativeId:"",Z=()=>e=>e.meta&&e.meta.advertiserDomains&&e.meta.advertiserDomains.length>0?[e.meta.advertiserDomains].flat()[0]:"",ee=()=>e=>e.meta&&(e.meta.networkId||e.meta.networkName)?e?.meta?.networkName||e?.meta?.networkId:"",te=()=>e=>{const t=e?.meta?.primaryCatId;return Array.isArray(t)?t[0]||"":t||""};function ne(e,t){return{key:e,val:"function"==typeof t?function(e,n){return t(e,n)}:function(e){return e[t]}}}function ie(e,t){const n=Object.assign({},C.u.settingsFor(null));if(n[R.iD.ADSERVER_TARGETING]||(n[R.iD.ADSERVER_TARGETING]=[ne(R.xS.BIDDER,"bidderCode"),ne(R.xS.AD_ID,"adId"),ne(R.xS.PRICE_BUCKET,Y()),ne(R.xS.SIZE,"size"),ne(R.xS.DEAL,"dealId"),ne(R.xS.SOURCE,"source"),ne(R.xS.FORMAT,"mediaType"),ne(R.xS.ADOMAIN,Z()),ne(R.xS.ACAT,te()),ne(R.xS.DSP,ee()),ne(R.xS.CRID,X())]),"video"===e){const e=n[R.iD.ADSERVER_TARGETING].slice();if(n[R.iD.ADSERVER_TARGETING]=e,[R.xS.UUID,R.xS.CACHE_ID].forEach((t=>{void 0===e.find((e=>e.key===t))&&e.push(ne(t,"videoCacheKey"))})),a.$W.getConfig("cache.url")&&(!t||!1!==C.u.get(t,"sendStandardTargeting"))){const t=(0,i.Dl)(a.$W.getConfig("cache.url"));void 0===e.find((e=>e.key===R.xS.CACHE_HOST))&&e.push(ne(R.xS.CACHE_HOST,(function(e){return e?.adserverTargeting?.[R.xS.CACHE_HOST]||t.hostname})))}}return n}function re(e,t,n,r){var o=t[R.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!==R.xS.DEAL&&s!==R.xS.ACAT&&s!==R.xS.DSP&&s!==R.xS.CRID||!(0,i.xQ)(a)&&null!=a?e[s]=a:(0,i.fH)("suppressing empty key '"+s+"' from adserver targeting")})),e}function oe(e,t){return e[t.adUnitCode]||(e[t.adUnitCode]={bids:[]}),e[t.adUnitCode].bids.push(t),e}function se(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 ae=function(){const e=(0,D.H)({startTime:e=>e.end.then((()=>e.getAuctionEnd())),ttl:e=>null==(0,_.S9)()?null:e.end.then((()=>1e3*Math.max((0,_.S9)(),...e.getBidsReceived().map((e=>e.ttl)))))});(0,_.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,k.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()===q},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=G(t);return function(t){e.add(t)}(n),n},t.findBidByAdId=function(e){return r().find((t=>t.adId===e))},t.getStandardBidderAdServerTargeting=function(){return ie()[R.iD.ADSERVER_TARGETING]},t.setStatusForBids=function(e,i){let r=t.findBidByAdId(e);if(r&&(r.status=i),r&&i===R.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 se((()=>e.toArray())),t}()},7863:(e,t,n)=>{n.d(t,{S9:()=>l,cT:()=>c,lc:()=>u});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 l(){return a}function u(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:()=>p,Ov:()=>c});var i=n(6833),r=n(1069),o=n(433),s=n(8969);const a="TRUE"===(0,r.Ez)(s.M).toUpperCase(),d={},c="random",l={};l[c]=!0,l.fixed=!0;const u=c,f={LOW:"low",MEDIUM:"medium",HIGH:"high",AUTO:"auto",DENSE:"dense",CUSTOM:"custom"};function g(e){const t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1]?{priceGranularity:f.MEDIUM,customPriceBucket:{},mediaTypePriceGranularity:{},bidderSequence:u,auctionOptions:{}}:{};function n(e){return t[e]}function o(n,i){t.hasOwnProperty(n)||Object.defineProperty(e,n,{enumerable:!0}),t[n]=i}const s={publisherDomain:{set(e){null!=e&&(0,r.JE)("publisherDomain is deprecated and has no effect since v7 - use pageUrl instead"),o("publisherDomain",e)}},priceGranularity:{set(e){d(e)&&("string"==typeof e?o("priceGranularity",a(e)?e:f.MEDIUM):(0,r.Qd)(e)&&(o("customPriceBucket",e),o("priceGranularity",f.CUSTOM),(0,r.OG)("Using custom price granularity")))}},customPriceBucket:{},mediaTypePriceGranularity:{set(e){null!=e&&o("mediaTypePriceGranularity",Object.keys(e).reduce(((t,i)=>(d(e[i])?"string"==typeof e?t[i]=a(e[i])?e[i]:n("priceGranularity"):(0,r.Qd)(e)&&(t[i]=e[i],(0,r.OG)(`Using custom price granularity for ${i}`)):(0,r.JE)(`Invalid price granularity for media type: ${i}`),t)),{}))}},bidderSequence:{set(e){l[e]?o("bidderSequence",e):(0,r.JE)(`Invalid order: ${e}. Bidder Sequence was not set.`)}},auctionOptions:{set(e){(function(e){if(!(0,r.Qd)(e))return(0,r.JE)("Auction Options must be an object"),!1;for(let t of Object.keys(e)){if("secondaryBidders"!==t&&"suppressStaleRender"!==t&&"suppressExpiredRender"!==t)return(0,r.JE)(`Auction Options given an incorrect param: ${t}`),!1;if("secondaryBidders"===t){if(!(0,r.cy)(e[t]))return(0,r.JE)(`Auction Options ${t} must be of type Array`),!1;if(!e[t].every(r.O8))return(0,r.JE)(`Auction Options ${t} must be only string`),!1}else if(("suppressStaleRender"===t||"suppressExpiredRender"===t)&&!(0,r.Lm)(e[t]))return(0,r.JE)(`Auction Options ${t} must be of type boolean`),!1}return!0})(e)&&o("auctionOptions",e)}}};return Object.defineProperties(e,Object.fromEntries(Object.entries(s).map((e=>{let[i,r]=e;return[i,Object.assign({get:n.bind(null,i),set:o.bind(null,i),enumerable:t.hasOwnProperty(i),configurable:!t.hasOwnProperty(i)},r)]})))),e;function a(e){return Object.keys(f).find((t=>e===f[t]))}function d(e){if(!e)return(0,r.vV)("Prebid Error: no value passed to `setPriceGranularity()`"),!1;if("string"==typeof e)a(e)||(0,r.JE)("Prebid Warning: setPriceGranularity was called with invalid setting, using `medium` as default.");else if((0,r.Qd)(e)&&!(0,i.q)(e))return(0,r.vV)("Invalid custom price value passed to `setPriceGranularity()`"),!1;return!0}}const p=function(){let e,t,n,i=[],s=null;function c(){e={};let i=g({debug:a,bidderTimeout:3e3,enableSendAllBids:true,useBidCache:false,deviceAccess:true,disableAjaxTimeout:false,maxNestedIframes:10,maxBid:5e3,userSync:{topics:d}});t&&y(Object.keys(t).reduce(((e,n)=>(t[n]!==i[n]&&(e[n]=i[n]||{}),e)),{})),t=i,n={}}function l(){if(s&&n&&(0,r.Qd)(n[s])){const e=n[s],i=new Set([...Object.keys(t),...Object.keys(e)]),o={};for(const n of i){const i=t[n],s=e[n];o[n]=void 0===s?i:void 0===i?s:(0,r.Qd)(s)?(0,r.D9)({},i,s):s}return o}return{...t}}const[u,f]=[l,function(){const e=l();return Object.defineProperty(e,"ortb2",{get:function(){throw new Error("invalid access to 'orbt2' config - use request parameters instead")}}),e}].map((e=>function(){if(arguments.length<=1&&"function"!=typeof(arguments.length<=0?void 0:arguments[0])){const t=arguments.length<=0?void 0:arguments[0];return t?(0,o.A)(e(),t):l()}return b(...arguments)})),[p,h]=[f,u].map((e=>function(){let t=e(...arguments);return t&&"object"==typeof t&&(t=(0,r.Go)(t)),t}));function m(n){if(!(0,r.Qd)(n))return void(0,r.vV)("setConfig options must be an object");let i=Object.keys(n),o={};i.forEach((i=>{let s=n[i];(0,r.Qd)(e[i])&&(0,r.Qd)(s)&&(s=Object.assign({},e[i],s));try{o[i]=t[i]=s}catch(e){(0,r.JE)(`Cannot set config for property ${i} : `,e)}})),y(o)}function b(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=t;if("string"!=typeof e&&(o=e,e="*",n=t||{}),"function"!=typeof o)return void(0,r.vV)("listener must be a function");const s={topic:e,callback:o};return i.push(s),n.init&&o("*"===e?f():{[e]:f(e)}),function(){i.splice(i.indexOf(s),1)}}function y(e){const t=Object.keys(e);i.filter((e=>t.includes(e.topic))).forEach((t=>{t.callback({[t.topic]:e[t.topic]})})),i.filter((e=>"*"===e.topic)).forEach((t=>t.callback(e)))}function v(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];try{!function(e){if(!(0,r.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,r.Qd)(e.config))throw"setBidderConfig bidder options must contain a config object"}(e),e.bidders.forEach((i=>{n[i]||(n[i]=g({},!1)),Object.keys(e.config).forEach((o=>{let s=e.config[o];const a=n[i][o];if((0,r.Qd)(s)&&(null==a||(0,r.Qd)(a))){const e=t?r.D9:Object.assign;n[i][o]=e({},a||{},s)}else n[i][o]=s}))}))}catch(e){(0,r.vV)(e)}}function E(e,t){s=e;try{return t()}finally{A()}}function A(){s=null}return c(),{getCurrentBidder:function(){return s},resetBidder:A,getConfig:f,getAnyConfig:u,readConfig:p,readAnyConfig:h,setConfig:m,mergeConfig:function(e){if(!(0,r.Qd)(e))return void(0,r.vV)("mergeConfig input must be an object");const t=(0,r.D9)(l(),e);return m({...t}),t},setDefaults:function(n){(0,r.Qd)(e)?(Object.assign(e,n),Object.assign(t,n)):(0,r.vV)("defaults must be an object")},resetConfig:c,runWithBidder:E,callbackWithBidder:function(e){return function(t){return function(){if("function"==typeof t){for(var n=arguments.length,i=new Array(n),o=0;o{n.d(t,{B1:()=>s,SL:()=>p,ad:()=>l,mW:()=>d,o2:()=>f,t6:()=>c});var i=n(1069),r=n(5555),o=n(3272);const s=Object.freeze({});class a{#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.v6)(),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.U9.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 d=new class extends a{hashFields=["gdprApplies","consentString"];getConsentMeta(){const e=this.getConsentData();if(e&&e.vendorData&&this.generatedTime)return{gdprApplies:e.gdprApplies,consentStringSize:(0,i.O8)(e.vendorData.tcString)?e.vendorData.tcString.length:0,generatedAt:this.generatedTime,apiVersion:e.apiVersion}}},c=new class extends a{getConsentMeta(){if(this.getConsentData()&&this.generatedTime)return{generatedAt:this.generatedTime}}},l=new class extends a{hashFields=["applicableSections","gppString"];getConsentMeta(){if(this.getConsentData()&&this.generatedTime)return{generatedAt:this.generatedTime}}},u=(()=>{function e(){return!!o.$W.getConfig("coppa")}return{getCoppa:e,getConsentData:e,getConsentMeta:e,reset(){},get promise(){return r.U9.resolve(e())},get hash(){return e()?"1":"0"}}})(),f=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}}}(),g={gdpr:d,usp:c,gpp:l,coppa:u};const p=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:g;return e=Object.entries(e),Object.assign({get promise(){return r.U9.all(e.map((e=>{let[t,n]=e;return n.promise.then((e=>[t,e]))}))).then((e=>Object.fromEntries(e)))},get hash(){return(0,i.PB)(e.map((e=>{let[t,n]=e;return n.hash})).join(":"))}},Object.fromEntries(["getConsentData","getConsentMeta","reset"].map((t=>{return[t,(n=t,function(){return Object.fromEntries(e.map((e=>{let[t,i]=e;return[t,i[n]()]})))})];var n}))))}()},8969:(e,t,n)=>{n.d(t,{IY:()=>A,M:()=>r,RW:()=>g,Tf:()=>h,UE:()=>c,XQ:()=>o,Zh:()=>u,_B:()=>v,as:()=>a,cA:()=>d,h0:()=>m,iD:()=>i,jO:()=>b,nl:()=>E,oA:()=>y,qY:()=>s,tl:()=>p,x5:()=>f,xS:()=>l});const i={PL_CODE:"code",PL_SIZE:"sizes",PL_BIDS:"bids",BD_BIDDER:"bidder",BD_ID:"paramsd",BD_PL_ID:"placementId",ADSERVER_TARGETING:"adserverTargeting",BD_SETTING_STANDARD:"standard"},r="pbjs_debug",o={GOOD:1},s={AUCTION_INIT:"auctionInit",AUCTION_TIMEOUT:"auctionTimeout",AUCTION_END:"auctionEnd",BID_ADJUSTMENT:"bidAdjustment",BID_TIMEOUT:"bidTimeout",BID_REQUESTED:"bidRequested",BID_RESPONSE:"bidResponse",BID_REJECTED:"bidRejected",NO_BID:"noBid",SEAT_NON_BID:"seatNonBid",BID_WON:"bidWon",BIDDER_DONE:"bidderDone",BIDDER_ERROR:"bidderError",SET_TARGETING:"setTargeting",BEFORE_REQUEST_BIDS:"beforeRequestBids",BEFORE_BIDDER_HTTP:"beforeBidderHttp",REQUEST_BIDS:"requestBids",ADD_AD_UNITS:"addAdUnits",AD_RENDER_FAILED:"adRenderFailed",AD_RENDER_SUCCEEDED:"adRenderSucceeded",TCF2_ENFORCEMENT:"tcf2Enforcement",AUCTION_DEBUG:"auctionDebug",BID_VIEWABLE:"bidViewable",STALE_RENDER:"staleRender",EXPIRED_RENDER:"expiredRender",BILLABLE_EVENT:"billableEvent",BID_ACCEPTED:"bidAccepted",RUN_PAAPI_AUCTION:"paapiRunAuction",PBS_ANALYTICS:"pbsAnalytics",PAAPI_BID:"paapiBid",PAAPI_NO_BID:"paapiNoBid",PAAPI_ERROR:"paapiError",BEFORE_PBS_HTTP:"beforePBSHttp",BROWSI_INIT:"browsiInit",BROWSI_DATA:"browsiData"},a={PREVENT_WRITING_ON_MAIN_DOCUMENT:"preventWritingOnMainDocument",NO_AD:"noAd",EXCEPTION:"exception",CANNOT_FIND_AD:"cannotFindAd",MISSING_DOC_OR_ADID:"missingDocOrAdid"},d={bidWon:"adUnitCode"},c={LOW:"low",MEDIUM:"medium",HIGH:"high",AUTO:"auto",DENSE:"dense",CUSTOM:"custom"},l={BIDDER:"hb_bidder",AD_ID:"hb_adid",PRICE_BUCKET:"hb_pb",SIZE:"hb_size",DEAL:"hb_deal",SOURCE:"hb_source",FORMAT:"hb_format",UUID:"hb_uuid",CACHE_ID:"hb_cache_id",CACHE_HOST:"hb_cache_host",ADOMAIN:"hb_adomain",ACAT:"hb_acat",CRID:"hb_crid",DSP:"hb_dsp"},u={BIDDER:"hb_bidder",AD_ID:"hb_adid",PRICE_BUCKET:"hb_pb",SIZE:"hb_size",DEAL:"hb_deal",FORMAT:"hb_format",UUID:"hb_uuid",CACHE_HOST:"hb_cache_host"},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:()=>u,q:()=>g});var i=n(1069),r=n(3272);const o=2,s={buckets:[{max:5,increment:.5}]},a={buckets:[{max:20,increment:.1}]},d={buckets:[{max:20,increment:.01}]},c={buckets:[{max:3,increment:.01},{max:8,increment:.05},{max:20,increment:.5}]},l={buckets:[{max:5,increment:.05},{max:10,increment:.1},{max:20,increment:.5}]};function u(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,i=parseFloat(e);return isNaN(i)&&(i=""),{low:""===i?"":f(e,s,n),med:""===i?"":f(e,a,n),high:""===i?"":f(e,d,n),auto:""===i?"":f(e,l,n),dense:""===i?"":f(e,c,n),custom:""===i?"":f(e,t,n)}}function f(e,t,n){let s="";if(!g(t))return s;const a=t.buckets.reduce(((e,t)=>e.max>t.max?e:t),{max:0});let d=0,c=t.buckets.find((t=>{if(e>a.max*n){let e=t.precision;void 0===e&&(e=o),s=(t.max*n).toFixed(e)}else{if(e<=t.max*n&&e>=d*n)return t.min=d,t;d=t.max}}));return c&&(s=function(e,t,n){const s=void 0!==t.precision?t.precision:o,a=t.increment*n,d=t.min*n;let c=Math.floor,l=r.$W.getConfig("cpmRoundingFunction");"function"==typeof l&&(c=l);let u,f,g=Math.pow(10,s+2),p=(e*g-d*g)/(a*g);try{u=c(p)*a+d}catch(e){f=!0}(f||"number"!=typeof u)&&((0,i.JE)("Invalid rounding function passed in config"),u=Math.floor(p)*a+d);return u=Number(u.toFixed(10)),u.toFixed(s)}(e,c,n)),s}function g(e){if((0,i.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,{HH:()=>c,kj:()=>d,xh:()=>a});var i=n(5555),r=n(1069),o=n(4595),s=n(9214);const a=3,d=(0,s.A_)("sync",(function(e){return o.G})),c=function(){const e={};return function(t){const n=d(t);return e.hasOwnProperty(n)||(e[n]=new i.U9((e=>{const t=(0,r.CA)();t.srcdoc=`
circle-arrow
Play Button
Stop Button
chevron-right
chevron-left
chevron-up
search
warning
chevron-left-skinny
chevron-right-skinny
x
clock
calendar
play-button
cancel-circle
user
facebook
youtube
instagram
email
linkedin
Skip to Content
By Kristen Rogers, CNN
(CNN) — Avoiding three health factors may delay the odds of developing dementia by about 13 years, a new study has found: type 2 diabetes , smoking and high blood pressure.
Scientific research has long established that these risk factors are three of the strongest for dementia, and that the neurodegenerative disease’s development begins long before symptoms arrive, said Dr. Josef Coresh, senior author of the study that published Wednesday in the journal Neurology Open Access. But Coresh’s new study of more than 12,400 adults quantified how much the combination of these vascular measures in middle age may have influenced when dementia began to set in.
Participants who had those three health hazards when they were, on average, about age 56 were more than twice as likely to develop dementia and more than five times as likely to die prematurely from another cause.
“That’s relatively easy for clinicians to discuss and patients to understand,” said Coresh, founding director of the Optimal Aging Institute at the NYU Grossman School of Medicine. For patients, knowing how many more “good years” they can get by making certain lifestyle changes can be more motivating than simply knowing a percentage risk for dementia, Coresh added.
The study only shows an association, not causation, especially since researchers measured participants for high blood pressure, diabetes, smoking and other health factors such as weight just once before following them for a median period of about 26 years. Although brain health was assessed multiple times until 2022 at the latest, many other factors could have changed during that time.
“View the results as an important estimate rather than the exact prediction for every individual,” said Dr. Sanjula Singh, an assistant professor in neurology at Harvard Medical School in Boston, who wasn’t involved in the study.
Cardiologist Dr. Andrew Freeman said the research, which he wasn’t involved in, is “really exciting, and yet it also still calls to action that we need to do a lot more to get people living healthily.”
“One of the things that we’re starting to see a lot of is this concept of health span versus lifespan,” Freeman, director of cardiovascular prevention and wellness at National Jewish Health in Denver, said. “It’s one thing to be alive; it’s another to be alive and well and to avoid the American curse, which is working hard your whole life, saving your money, retiring and then suffering heart attacks, strokes, dementia.”
Lowering your risk for dementia
If you have high blood pressure or type 2 diabetes or want to quit smoking, talk to your doctor, Coresh said.
Hypertension and diabetes share some risk factors, including physical inactivity, obesity, poor diet, alcohol intake and smoking, experts said. Accordingly, preventing or alleviating hypertension and diabetes can partly be done by managing these factors. A lower-fat, plant-based diet such as the DASH (Dietary Approaches to Stop Hypertension) diet can work wonders, Freeman said.
You can view the World Health Organization’s recommendations for exercise here . Ensuring you get enough sleep and manage stress is also important.
“The way we live has the most profound impact, and I’m talking about a magnitude that is unachievable by any medication,” Freeman added. About 45% of dementia cases are due to modifiable risk factors, said Singh, also principal investigator at the Brain Care Labs and Global Brain Care Coalition at Massachusetts General Hospital.
When it comes to smoking, quitting must be your own desire for it to be effective, Freeman said. “Once you buy in, there’s a lot of different ways that can help,” he added — including nicotine patches , exercise, lozenges and gums, several medications , therapeutic programs, and acupuncture .
Also remember that smoking is a habit with certain reinforcements and associations, so you may need to also switch up your routine and social circle for at least six months to boost your chances of quitting, Freeman said.
Highlighting more tangible odds
The adults in the new research are from the Atherosclerosis Risk in Communities cohort study, which has followed nearly 15,800 adults from four communities in the United States since the late 1980s, when participants were between ages 45 and 65. The areas were Forsyth County, North Carolina; Jackson, Mississippi; eight northwestern suburbs of Minneapolis, Minnesota; and Washington County, Maryland. Fifty-six percent of participants in the latest research were women.
Having none of the three risk factors was linked with 30.1 dementia-free years, compared with 17.5 years among those who had the three health risks — hence the nearly 13-year potential delay in risk if participants had managed those health measures.
Women were dementia-free slightly longer than men, and Black participants developed dementia a few years sooner than their White counterparts. By age 85, only 7% of the adults with three risk factors remained dementia-free, compared with 35% of those with no risk factors.
The less healthy participants had a higher body mass index and prevalence of stroke, and lower physical activity and educational attainment. They were also more likely to be Black — potentially explaining the fewer dementia-free years in this group — and to be carriers of the APOE ε4 gene, which is the strongest genetic risk factor for Alzheimer’s disease, the most common form of dementia.
Over time, the three components of concern “can damage blood vessels throughout the body, including those that supply the brain, reducing the delivery of oxygen and nutrients and increasing the risk of stroke and small vessel disease,” Dr. Jacqui Hanley, head of research funding at Alzheimer’s Research UK, said in a statement.
“This damage can make the brain more vulnerable to cognitive decline and dementia,” added Hanley, who wasn’t involved in the study.
Brain health and habits are built from many small, consistent choices over time, Singh said. “Set the goals for yourself. Find friends or family members to keep you accountable or to work out with together.”
The-CNN-Wire ™ & © 2026 Cable News Network, Inc., a Warner Bros. Discovery Company. All rights reserved.
BE PART OF THE CONVERSATION
KION 46 is committed to providing a forum for civil and constructive conversation.
Please keep your comments respectful and relevant. You can review our Community Guidelines by clicking here
If you would like to share a story idea, please submit it here .