${n}`), (t.onload = () => e(t.contentWindow.render)), document.body.appendChild(t); })), mi[n]
); }; })(); }, 3005: (e, t, n) => { nd(t, { $T: () => a, Ni: () => i, OA: () => o, RO: () => s, fR: () => r }); constante i = 1, r = 2, o = 1, s = 500; función a(e) { return (e ?? []).reduce((e, t) => { let { evento: n, método: i, url: r } = t; const o = (e[n] = mi[n] ?? {}); regresar (o[i] = o[i] ?? []).push(r), mi; }, {}); } }, 5023: (e, t, n) => { nd(t, { AU: () => m, Ic: () => v, kQ: () => y, on: () => h }); var i = n(1069), r = n(8969), o = n(6853), s = n(3272); const a = ‘eventoHistoryTTL’; sea d = nulo; const c = (0, oH)({ monótono: !0, ttl: () => d }); s.$W.getConfig(a, e => { const t = d; (e = e?.[a]), (d = ‘número’ == tipo de e ? 1e3 * e : nulo), t !== d && c.refresh(); }); let l = Array.prototype.slice, u = Array.prototype.push, f = Object.values(r.qY); const g = r.cA, p = (función() { let e = {}, t = {}; function n(e) { return f.includes(e); } return ( (t.has = n), (t.on = function(t, r, o) { if (n(t)) { let n = e[t] || { eso: [] }; ¿o? ((norte[o] = norte[o] || { eso: [] }), norte[o].que.push(r)) : n.que.push(r), (e[t] = norte); } else i.vV( ‘Nombre de evento incorrecto: ‘ + t + ‘ Nombres de evento válidos :’ + f ); }), (t.emit = function(t) { !(function(t, n) { i.OG(‘Emitiendo evento para: ‘ + t); sea r = n[0] || {}, o = r[g[t]], s = mi[t] || { eso: [] }; var a = Objeto.claves(s); sea d = []; c.add({ eventType: t, args: r, id: o, elapsedTime: iV() }), o && a.includes(o) && u.apply(d, s[o].que),
u.apply(d, s.que),
(d || []).forEach(function(e) { if (e) try { e.apply(null, n); } catch (e) { i.vV( ‘Error al ejecutar el controlador:’, ‘events.js’, e, t ); } }); })(t, l.call(argumentos, 1)); }), (t.off = función(t, n, r) { sea o = e[t]; i.Estoy (o) || (yo.estoy(o.que) && yo.estoy(o[r])) || (r && (i.Estoy(o[r]) || Yo soy (o[r].que))) || (r? (o[r].eso || []).forEach(función(e) { sea t = o[r].qué; mi === n && t.splice(t.indexOf(e), 1); }) : (qué || []).forEach(function(e) { let t = o.que; e === n && t.splice(t.indexOf(e), 1); }), (e[t] = o)); }), (t.get = function() { return e; }), (t.addEvents = function(e) { f = f.concat(e); }), (t.getEvents = function() { return c.toArray().map(e => Object.assign({}, e)); }), t); })(); i.cD(p.emit.bind(p)); const { encendido: h, apagado: m, obtener: b, getEvents: y, emitir: v, addEvents: E, tiene: A } = p; }, 687: (e, t, n) => { nd(t, { w: () => I }); var i = n(9214), r = n(7934), o = n(5973), s = n(1069), a = n(3172), d = n(3272), c = n(5555); constante l = [
‘architecture’,
‘bitness’,
‘model’,
‘platformVersion’,
‘fullVersionList’
]tu = [‘brands’, ‘mobile’, ‘platform’]f = (función() { let e = argumentos.longitud > 0 && void 0 !== argumentos[0]
? argumentos[0]
: ventana.navigator?.userAgentData; const t = e && u.some(t => vacío 0!== e[t]) ? Object.freeze(p(1, e)): nulo; función de retorno() { retorno t; }; })(), g = (función() { let e = argumentos.longitud > 0 && void 0 !== argumentos[0]
? argumentos[0]
: ventana.navigator?.userAgentData; const t = {}, n = nuevo WeakMap(); función de retorno() { let i = argumentos.longitud > 0 && void 0 !== argumentos[0]
? argumentos[0]
:l; if (!n.has(i)) { const e = Array.from(i); e.sort(), n.set(i, e.join(‘|’)); } const r = n.get(i); si (!t.hasOwnProperty(r)) intente { t[r] = e .getHighEntropyValues(i) .then(e => (0, s.Im)(e) ? null : Object.freeze(p(2, e)) ) .catch(() => null); } atrapar (e) { t[r] = c.U9.resolve(nulo); } devolver t[r]; }; })(); función p(e, t) { función n(e, t) { const n = { marca: e }; return ( (0, s.O8)(t) && !(0, s.xQ)(t) && (n.version = t.split(‘.’)), n ); } const i = { fuente: e }; return ( t.platform && (i.platform = n(t.platform, t.platformVersion)), (t.fullVersionList || t.brands) && (i.browsers = (t.fullVersionList || t.brands).map(e => { let { brand: t, version: i } = e; return n(t, i); })), void 0 !== t.mobile && (i.móvil = t.móvil? 1: 0),
[‘model’, ‘bitness’, ‘architecture’].forEach(e => { const n = t[e]; (0, s.O8)(n) && (yo[e] = norte); }), i ); } var h = n(3858), m = n(5139), b = n(3441), y = n(6811), v = n(5569), E = n(8944); const A = { getRefererInfo: r.EN, findRootDomain: oS, getWindowTop: s.mb, getWindowSelf: s.l4, getHighEntropySUA: g, getLowEntropySUA: f, getDocument: s.YE }, w = (0, h.i8)(‘FPD’),(‘FPD’, i.inc’, es decir, e => { const t = [
e,
C().catch(() => null),
c.U9.resolve(
‘cookieDeprecationLabel’ in navigator &&
(0, m.io)(y.Ue, (0, b.s)(v.tp, ‘cdep’)) &&
navigator.cookieDeprecationLabel.getValue()
).catch(() => null)
]; return c.U9.all(t).entonces(e => { let [t, n, i] = y; const r = A.getRefererInfo(); if ( (Object.entries(O).forEach(e => { dejar [n, i] = mi; constante o = i(t, r); o && Objeto.claves(o).longitud > 0 && (t[n] = (0, s.D9)({}, o, t[n])); }), n && (0, aJ)( t, ‘device.sua’, Object.assign({}, n, t.device.sua) ), i) ) { const e = { cdep: i }; (0, aJ)(t, ‘dispositivo.ext’, Object.assign({}, e, t.dispositivo.ext)); } const o = A.getDocument().documentElement.lang; o && (0, aJ)(t, ‘sitio.ext.data.documentLang’, o), (t = w(t)); para (sea e de h.Dy) if ((0, hO$)(t, e)) { t[e] = (0, s.D9)({}, R(t, r), t[e]); romper; } devolver t; }); }); función T(e) { intentar { return e(A.getWindowTop()); } captura (t) { retorno e(A.getWindowSelf()); } } función C() { const e = d.$W.getConfig(‘firstPartyData.uaHints’); devolver Array.isArray(e) && 0!== e.length? A.getHighEntropySUA(e): c.U9.resolve(A.getLowEntropySUA()); } función B(e) { return (0, s.SH)(e, Object.keys(e)); } const O = { sitio(e, t) { if (!h.Dy.filter(e => ‘sitio’ !== e).some(hO$.bind(null, e))) return B({ página: t.page, ref: t.ref }); }, dispositivo: () => T(e => { const t = (0, s.Ot)().screen.width, n = (0, s.Ot)().screen.height, { ancho: i, alto: r } = (0, EM)(), o = { w: t, h: n, dnt: (0, s.l9)() ? 1 : 0, ua: e.navigator.userAgent, idioma: e.navigator.language.split(‘-‘).shift(), text: { vpw: i, vph: r } }; return ( e.navigator?.webdriver && (0, aJ)(o, ‘ext.webdriver’, !0), o }), regs() { const e = {}; T(e => e.navigator.globalPrivacyControl) && (0, aJ)(e, ‘ext.gpc’, ‘1’); const t = d.$W.getConfig(‘coppa’); return ‘booleano’ == tipo de t && (e.coppa = t? 1: 0), e; } }; función R(e, t) { const n = (0, r.gR)(t.page, { noLeadingWww: !0 }), i = T(e => e.document.querySelector(“meta[name=’keywords’]”) )?.content?.replace?.(/s/g, ”); return B({ dominio: n, palabras clave: i, editor: B({ dominio: A.findRootDomain(n) }) }); } }, 3858: (e, t, n) => { nd(t, { Dy: () => r, O$: () => s, i8: () => o }); var i = n(1069); [‘dooh’, ‘app’, ‘site’]; function o(e) { return function(t) { return ( r.reduce( (n, r) => ( s(t, r) && (null != n ? ((0, i.JE)( `${e} especifica tanto ‘${n}’ como ‘${r}’; eliminando este último.` ), elimina t[r]) : (n = r)), n ), nulo ), t ); }; } función s(e, t) { devolver nulo!= e[t] && Claves.objeto(e[t]).longitud > 0; } }, 5973: (e, t, n) => { nd(t, { S: () => o }); var i = n(1069); const r = (0, n(2938).CK)(‘fpdEnrichment’), o = (0, i.Bj)(function() { let e = argumentos.length > 0 && void 0 !== argumentos[0]
? argumentos[0]
: ventana.ubicación.host; si (!r.cookiesAreEnabled()) devuelve e; const t = e.split(‘.’); si (2 === t.length) devuelve e; sea n, o, s = -2; const a = `_rdc${Date.now()}`, d = ‘escribible’; hacer { n = t.slice(s).join(‘.’); let e = nueva Fecha((0, i.vE)() + 1e4).toUTCString(); r.setCookie(a, d, e, ‘Lax’, n, void 0); r.getCookie(a, vacío 0) === d? ((o = !1), r.setCookie( a, ”, ‘Jueves, 01 de enero de 1970 00:00:01 GMT’, void 0, n, void 0 )): ((s += -1), (o = Math.abs(s) { nd(t, { A_: () => s, Gc: () => d, Y6: () => g, Yn: () => c, bz: () => f, u2: () => p, xG: () => u }); var i = n(8128), r = nn(i), o = n(5555); let s = r()({ listo: r().SYNC | r().ASYNC | r().QUEUE }); const a = (0, o.v6)(); s.ready = (() => { const e = s.ready; return function() { intentar { return e.apply(s, argumentos); } finalmente { a.resolve(); } }; })(); const d = a.promesa, c = s.get; constante l = {}; función u(e, t) { let { postInstallAllowed: n = !1 } = argumentos.length > 2 && void 0 !== argumentos[2]
? argumentos[2]
: {}; s( ‘async’, función(i) { i.forEach(e => t(…e)), n && (l[e] =t); }, mi )([]); } función f(e) { for ( var t = argumentos.length, n = new Array(t > 1 ? t – 1 : 0), i = 1; i { t.push(n), e(t); }); } función g(e, t) { retorno ( Object.defineProperties( t, Object.fromEntries(
[‘before’, ‘after’, ‘getHooks’, ‘removeAll’].mapa(t => [
t,
{ get: () => e[t] } ]) ) ), t ); } función p(e) { return g(e, function() { for ( var t = argumentos.length, n = new Array(t), i = 0; i { nd(t, { D4: () => o, GE: () => a, G_: () => r, LM: () => s, s6: () => i }); const i = ‘nativo’, r = ‘vídeo’, o = ‘banner’, s = ‘adpod’, a = [i, r, o]; }, 2449: (e, t, n) => { nd(t, { Bm: () => y, IX: () => C, Nh: () => l, Zj: () => A, gs: () => E, l6: () => p, mT: () => c, nk: () => m, vO: () => v, yl: () => B }); var i = n(1069), r = n(6881), o = n(8969), s = n(9075), a = n(6031), d = n(3005); constante c = []l = Objeto.keys(o.x5).map(e => o.x5[e]), u = { imagen: { ortb: { ver: ‘1.2’, activos: [
{
required: 1,
id: 1,
img: { type: 3, wmin: 100, hmin: 100 }
},
{ required: 1, id: 2, title: { len: 140 } },
{ required: 1, id: 3, data: { type: 1 } },
{ required: 0, id: 4, data: { type: 2 } },
{
required: 0,
id: 5,
img: { type: 1, wmin: 20, hmin: 20 }
}
]
}, imagen: {requerido: !0 }, título: {requerido: !0 }, patrocinado por: {requerido: !0 }, clickUrl: {requerido: !0 }, cuerpo: {requerido: !1 }, icono: {requerido: !1 } } }, f = k(o.h0), g = k(o.jO); función p(e) { return e.native && ‘objeto’ == tipo de e.native; } función h(e) { if ( (e && e.type && (función(e) { if (!e || !Object.keys(u).includes(e)) return (0, i.vV)(`${e} NativeParam no es compatible`), !1; return !0; })(e.type) && (e = u[e.type]), !e || !e.ortb || b(e.ortb)) ) devolver e; } función m(e) { e.forEach(e => { const t = e.nativeParams || e?.mediaTypes?.native; t && (e.nativeParams = h(t)), e.nativeParams && (e.nativeOrtbRequest = e.nativeParams.ortb || (función(e) { if (!e && !(0, i.Qd)(e)) return void (0, i.vV)( ‘El objeto de activos nativos está vacío o no es un objeto: ‘, e ); const t = { ver: ‘1.2’, activos: [] }; for (let n in e) { if (o._B.includes(n)) continuar; if (!o.x5.hasOwnProperty(n)) { (0, i.vV)( `Código de activo nativo no reconocido: ${n}. El activo será ignorado.` ); continuar; } if (‘privacyLink’ === n) { t.privacy = 1; continuar; } constante r = mi[n]; sea s = 0; r.requerido && (0, i.Lm)(r.requerido) && (s = Número(r.requerido)); const a = {id: t.assets.length, requerido: s}; if (n en o.h0) (a.data = { tipo: o.jO[o.h0[n]]}), r.len && (a.data.len = r.len); else if (‘icon’ === n || ‘imagen’ === n) { if (((a.img = { tipo: ‘icon’ === n ? o.oA.ICON : o.oA.MAIN }), r.aspect_ratios) ) if ((0, i.cy)(r.aspect_ratios)) if (r.aspect_ratios.length) { const { min_width: e, altura_mín: t } = r.aspect_ratios[0]; (0, i.Fq)(e) && (0, i.Fq)(t)? ((a.img.wmin = e), (a.img.hmin = t)): (0, i.vV)( ‘image.aspect_ratios min_width o min_height no son válidos: ‘, e, t); const n = r.aspect_ratios .filter( e => e.ratio_width && e.ratio_height ) .map( e => `${e.ratio_width}:${e.ratio_height}` ); n.length > 0 && (a.img.ext = {aspectratios: n}); } else (0, i.vV)( “se pasó image.aspect_ratios, pero está vacío:”, r.aspect_ratios); else (0, i.vV)( “se pasó imagen.aspect_ratios, pero no es una matriz:”, r.aspect_ratios); r.tamaños && (2 === r.tamaños.longitud && (0, i.Fq)(r.tamaños[0]) && (0, i.Fq)(r.tamaños[1]) ? ((a.img.w = r.tallas[0]), (a.img.h = r.tamaños[1]), eliminar a.img.hmin, eliminar a.img.wmin): (0, i.vV)( ‘se pasó image.sizes, pero su valor no es una matriz de números enteros:’, r.sizes )); } más ‘título’ === n? (a.title = { len: r.len || 140 }): ‘ext’ === n && ((a.ext = r), eliminar a.required); t.activos.push(a); } devolver t; })(e.nativeParams)); }); } función b(e) { const t = e.activos; if (!Array.isArray(t) || 0 === t.length) return ( (0, i.vV)( “los activos en mediaTypes.native.ortb no son una matriz o están vacíos. Activos: “, t), !1); const n = t.map(e => e.id); devolver t.length!== nuevo Set(n).size || n.some(e => e !== parseInt(e, 10))? ((0, i.vV)( “cada objeto activo debe tener la propiedad ‘id’, debe ser único y debe ser un número entero”), !1): e.hasOwnProperty(‘eventtrackers’) && !Array.isArray(e.eventtrackers)? ((0, i.vV)( ‘ortb.eventtrackers no es una matriz. Eventtrackers: ‘, e.eventtrackers ), !1) : t.every(e => (función(e) { if (!(0, i.Qd)(e)) return ( (0, i.vV)( ‘el activo debe ser un objeto. Activo proporcionado: ‘, e ), !1 ); if (e.img) { if (!(0, i.Et)(e.img.w) && !(0, i.Et)(e.img.wmin)) return ( (0, i.vV)( “para el activo img debe haber propiedad ‘w’ o ‘wmin'”), !1 ); “para el activo img debe haber la propiedad ‘h’ o ‘hmin'”), !1); } else if (e.title) { if (!(0, i.Et)(e.title.len)) return ( (0, i.vV)( “para el activo de título debe haber la propiedad ‘len’ definida”), !1 } else if (e.data) { if (!(0, i.Et)(e.data.type)) return ( (0, i.vV)( “para la propiedad ‘tipo’ de activo de datos debe ser un número”), !1 ); else if ( e.video && !( Array.isArray(e.video.mimes) && Array.isArray(e.video.protocols) && (0, i.Et)(e.video.minduration) && (0, i.Et)(e.video.maxduration) ) ) return ( (0, i.vV)(‘el recurso de video no está configurado correctamente’), !1 !0; } función y(e) { let { índice: t = rnindex } = argumentos.longitud > 1 && void 0 !== argumentos[1]
? argumentos[1]
: {}; const n = t.getAdUnit(e); si (!n) devuelve !1; let o = n.nativeOrtbRequest; return (function(e, t) { if (!e?.link?.url) return ( (0, i.vV)( “la respuesta nativa no tiene propiedad ‘enlace’. Respuesta Ortb: “, e ), !1 ); let n = t.assets.filter(e => 1 === e.required).map(e => e.id), r = e.assets.map(e => e.id); const o = n.every(e => r.includes(e)); o || (0, i.vV)( `no recibió una oferta con todos los activos requeridos. Identificadores requeridos: ${n}, pero recibió identificadores en respuesta: ${r}` })(e.native?.ortb || S(e.native, o), o); } función v(e, t) { const n = t.native.ortb || R(t.nativo); return ( ‘hacer clic’ === e.action ? (función(e) { let t = argumentos.length > 1 && void 0 !== argumentos[1]
? argumentos[1]
: nulo, { fetchURL: n = iz$ } = argumentos.length > 2 && void 0 !== argumentos[2]
? argumentos[2]
: {}; if (t) { const i = (e.activos || []) .filter(e => e.link) .reduce((e, t) => ((e[t.id] = t.link), e), {}), r = e.link?.clicktrackers || []; sea o = i[t]s = r; o && (s = o.clicktrackers || []), s.forEach(e => n(e)); } más (e.link?.clicktrackers || []).forEach(e => n(e)); })(n, e?.assetId): (función(e) { let { runMarkup: t = e => (0, i.ro)(e), fetchURL: n = iz$ } = argumentos.length > 1 && void 0 !== argumentos[1]
? argumentos[1]
: {}, { [d.Ni]: r = [], [d.fR]: o = [] } = (0, d.$T)(e.eventtrackers || [])[d.OA] || {}; e.imptrackers && (r = r.concat(e.imptrackers)); r.forEach(e => n(e)), (o = o.map(e => “)), e.jstracker && (o = o.concat([e.jstracker])); o.longitud && t(o.join(‘n’)); })(n), e.acción); } función E(e, t) { const n = t?.nativeOrtbRequest, i = e.native?.ortb; if (n && i) { const t = (función(e, t) { const n = {}, i = t?.activos || []; (n.clickUrl = e.link?.url), (n.privacyLink = e.privacy); para (const t de e?.activos || []) { const e = i.find(e => t.id === e.id); t.título? (n.título = t.título.texto): t.img? (norte[e?.img?.type === o.oA.MAIN ? ‘image’ : ‘icon’] = {url: t.img.url, ancho: t.img.w, alto: t.img.h }): t.data && (n[f[g[e?.data?.type]]]= t.datos.valor); } n.impressionTrackers = []; sea r = []; e.imptrackers && n.impressionTrackers.push(…e.imptrackers); para (const t de e?.eventtrackers || []) t.event === d.OA && t.method === d.Ni && n.impressionTrackers.push(t.url), t.event === d.OA && t.method === d.fR && r.push(t.url); (r = r.map(e => “)), e?.jstracker && r.push(e.jstracker); r.length && (n.javascriptTrackers = r.join(‘n’)); devolver n; })(en); Objeto.assign(e.nativo, t); }
[‘rendererUrl’, ‘adTemplate’].forEach(n => { const i = t?.nativeParams?.[n]; i && (e.nativo[n] = O(yo)); }); } función A(e) { let { índice: t = rnindex } = argumentos.longitud > 1 && void 0 !== argumentos[1]
? argumentos[1]
: {}, norte = {}; const i = t.getAdUnit(e), s = null == i?.nativeParams?.ortb && !1 !== i?.nativeParams?.sendTargetingKeys, a = (function(e) { const t = {}; e?.nativeParams?.ext && Object.keys(e.nativeParams.ext).forEach(e => { t[e] = `hb_native_${e}`; }); retorno {…o.x5, …t}; })(i), d = { …e.nativo, …e.nativo.ext }; retorno (eliminar d.ext, Object.keys(d).forEach(t => { const r = a[t]; sea o = O(e.nativo[t]) || O(e?.nativo?.ext?.[t]); if (‘adTemplate’ === t || !r || !o) retorno; sea d = i?.nativeParams?.[t]?.enviarId; if ((‘boolean’ != tipo de d && (d = i?.nativeParams?.ext?.[t]?.sendId), d) ) { o = `${r}:${e.adId}`; } sea c = i?.nativeParams?.[t]?.sendTargetingKeys; ‘booleano’ != tipo de c && (c = i?.nativeParams?.ext?.[t]?.sendTargetingKeys); (‘booleano’ == tipo de c ? c : s) && (n[r] =o); }), norte); } función w(e, t) { let n = argumentos.longitud > 2 && void 0 !== argumentos[2] && argumentos[2]yo = []; retorno (Object.entries(e) .filter(e => { let [i, r] = mi; return ( r && ((!1 === n && ‘ext’ === i) || null == t || t.includes(i)) ); }) .forEach(e => { dejar [r, s] = mi; !1 === n && ‘ext’ === r ? i.push(…w(s, t, !0)) : (n || o.x5.hasOwnProperty(r)) && i.push({ clave: r, valor: O(s) }); }), i ); } función I(e, t, n) { let { índice: d = rnindex } = argumentos.longitud > 3 && void 0 !== argumentos[3]
? argumentos[3]
: {}; const c = { mensaje: ‘assetResponse’, adId: e.adId }; sea l = (0, s.vd)(t).nativo; return ( l ? ((c.native = Object.assign({}, l)), (c.renderer = (0, a.kj)(t)), (c.rendererVersion = a.xh), null != n && (l.assets = l.assets.filter(e => { let { key: t } = e; return n.includes(t); }))) : (l = (function(e, t, n) { const r = { …(0, i.SH)(e.nativo, [‘rendererUrl’, ‘adTemplate’]), activos: w(e.native, n), NativeKeys: o.x5 }; return (e.native.ortb? (r.ortb = e.native.ortb): t.mediaTypes?.native?.ortb && (r.ortb = S(e.native, t.nativeOrtbRequest)), r); })(t, d.getAdUnit(t), n)), Object.assign(c, l)); } const T = Object.fromEntries( Object.entries(o.x5).map(e => { let [t, n] = mi; devolver [n, t]; }) ); función C(e, t) { const n = e.assets.map(e => T[e]); devolver I(e, t, n); } función B(e, t) { return I(e, t, nulo); } función O(e) { return e?.url || mi; } función R(e) { const t = { enlace: {}, rastreadores de eventos: [] }; retorno (Object.entries(e).forEach(e => { let [n, i] = mi; cambiar (n) { case ‘clickUrl’: t.link.url = i; romper; caso ‘clickTrackers’: t.link.clicktrackers = Array.isArray(i)? i : [i]; romper; caso ‘impressionTrackers’: (Array.isArray(i) ? i : [i]).forEach(e => { t.eventtrackers.push({ evento: d.OA, método: d.Ni, url: e }); }); romper; caso ‘javascriptTrackers’: t.jstracker = Array.isArray(i)? yo.unirme(”) : yo; romper; caso ‘privacyLink’: t.privacy = i; } }), t ); } función S(e, t) { const n = { …R(e), activos: [] }; función r(e, r) { sea o = t.activos.find(e); nulo! = o && ((o = (0, i.Go)(o)), r(o), n.assets.push(o)); } retorno ( Object.keys(e) .filter(t => !!e[t]) .forEach(t => { const n = O(e[t]); cambiar (t) { case ‘título’: r( e => null != e.título, e => { e.título = { texto: n }; } ); romper; caso ‘imagen’: caso ‘icono’: const e = ‘imagen’ === t? o.oA.PRINCIPAL: o.oA.ICONO; r(t => null != t.img && t.img.type === e, e => { e.img = { url: n }; } ); romper; predeterminado: t en o.h0 && r( e => null != e.data && e.data.type === o.jO[o.h0[t]], e => { e.data = { valor: n }; } ); } }), norte); } función k(e) { var t = {}; para (var n en e) t[e[n]]= norte; devolver t; } }, 1e3: (e, t, n) => { nd(t, { Cf: () => a, S3: () => r, Tb: () => o, WR: () => s, e4: () => c, pS: () => u, qN: () => d, yB: () => f, zt: () => i }); constante yo = [‘request’, ‘imp’, ‘bidResponse’, ‘response’],
[r, o, s, a] = yo,
[d, c] = [‘default’, ‘pbs’]l = nuevo Conjunto(i); const { registrarOrtbProcessor: u, getProcessors: f } = (función() { const e = {}; return { registrarOrtbProcessor(t) { let { tipo: n, nombre: r, fn: o, prioridad: s = 0, dialectos: a = [d]
} = t; if (!l.has(n)) throw new Error( `El tipo de procesador ORTB debe ser uno de: ${i.join(‘, ‘)}` ); a.forEach(t => { e.hasOwnProperty(t) || (e[t] = {}), mi[t].hasOwnProperty(n) || (mi[t][n] = {}), (mi[t][n][r] = {prioridad: s, fn: o }); }); }, obtenerProcesadores: t => e[t] || {} }; })(); }, 8934: (e, t, n) => { nd(t, { gH: () => se }); var i = n(7873), r = n(1069), o = n(433), s = n(3172), a = n(2449), d = n(8969), c = n(9075), l = n(6031); const { SOLICITUD: u, RESPUESTA: f, NATIVO: g, EVENTO: p } = d.nl, h = {
[u]: function(e, t, n) { (0, c.bw)({ renderFn(t) { e( Object.assign( { mensaje: f, renderer: (0, l.kj)(n), rendererVersion: l.xh }, t ) ); }, resizeFn: b(t.adId, n), opciones: t.options, adId: t.adId, bidResponse: n }); },
[p]: function(e, t, n) { if (null == n) return void (0, r.vV)( `No se puede encontrar el anuncio ‘${t.adId}’ para la solicitud de evento de origen x`); if (n.status !== d.tl.RENDERED) return void (0, r.JE)( `Se recibió una solicitud de evento de origen x sin la solicitud de procesamiento correspondiente para el anuncio ‘${n.adId}’`); devolver (0, c.Uc)(t, n); } }; función m() { window.addEventListener( ‘mensaje’, función(e) { !(función(e) { var t = e.message ? ‘mensaje’ : ‘datos’, n = {}; intente { n = JSON.parse(e[t]); } captura (e) { retorno; } if (n && n.adId && n.message && h.hasOwnProperty(n.message)) (0, c.$A)(n.adId, n.message === d.nl.REQUEST).then(t => { var i, o; h[n.message]( ((i = n.adId), (o = (function(e) { return null == e.origin && 0 === e.ports.length ? function() { const e = ‘No se puede publicar un mensaje en un marco con origen nulo. Actualice las creatividades para usar MessageChannel, consulte https://github.com/prebid/Prebid.js/issues/7870’; throw ((0, r.vV)(e), new Error(e)); }: e.ports.length > 0 función(t) { e.ports[0].postMessage(JSON.stringify(t)); } : función(t) { e.source.postMessage( JSON.stringify(t), e.origin ); }; })(e)), función(e) { for ( var t = argumentos.length, n = new Array(t > 1 ? t – 1 : 0), r = 1; r t.getTargeting(n).includes(e)) ); return t ? t.getSlotElementId() : null; } función u(e) { let t = window.apntag.getTag(e);
[‘div’, ‘iframe’].forEach(e => { let t = d(e + ‘:no([style*=”display: none”])’); if (t) { let e = t.estilo; (e.ancho = a(o)), (e.alto = a(s)); } else (0, r.vV)( `No se puede ubicar el elemento de página coincidente para adUnitCode ${i}. No se puede cambiar el tamaño a las dimensiones del anuncio. Revise la configuración.` ); }); })({ …t, ancho: n, alto: i, adId: e }); }; } Objeto.asignar(h, {
[g]: function(e, t, n) { if (null == n) return void (0, r.vV)( `No se puede encontrar el anuncio para la solicitud de evento de origen x: ‘${t.adId}’`); switch (t.action) { case ‘assetRequest’: (0, c.Hh)(n, () => e((0, a.IX)(t, n))); romper; caso ‘allAssetRequest’: (0, c.Hh)(n, () => e((0, a.yl)(t, n))); romper; predeterminado: (0, c.vW)(t, n, { resizeFn: b(t.adId, n) }), (0, c.Pk)(n); } } }); var y = n(8230), v = n(3272), E = n(6881), A = n(7779), w = n(9214), I = n(3597), T = n(1580), C = n(5555), B = n(5569); const O = ‘__tlpbjs_debugging__’; función R() { return (0, im)().installedModules.includes(‘depuración’); } función S(e) { return new C.U9(t => { (0, TR)(e, B.tp, ‘depuración’, t); }); } función k() { let { ya instalado: e = R, script: t = S } = argumentos.longitud > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}, n = nulo; return function() { return ( null == n && (n = new C.U9((n, o) => { setTimeout(() => { if (e()) n(); else { const e = ‘https://cdn.jsdelivr.net/npm/prebid.js@9.50.0/dist/debugging-standalone.js’; (0, r.OG)( `Módulo de depuración no instalado, cargándolo desde “${e}”…` ), ((0, im)()._installDebugging = !0), t(e) .then(() => { (0, im)()._installDebugging({ DEBUG_KEY: O, gancho: w.A_, config: v.$W, createBid: IO, registrador: (0, r.h0)(‘DEBUG:’) }); }) .then(n, o); } }); }; } const U = (función() { let { cargar: e = k(), gancho: t = (0, w.Yn)(‘requestBids’) } = argumentos.length > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}, n = nulo, i = !1; función r(e) { for ( var t = argumentos.longitud, i = nueva matriz(t > 1 ? t – 1 : 0), r = 1; r e.apply(this, i)); } función o() { t.getHooks({ gancho: r }).remove(), (i = !1); } return { habilitar: función() { i || ((n = e()), t.antes(r, 99), (i = !0)); }, desactivar: o, restablecer: función() { (n = nulo), o(); } }; })(); U.reinicio; v.$W.getConfig(‘depuración’, función(e) { let { depuración: t } = e; t?.enabled ? U.enable() : U.disable(); }); var D = n(2938), _ = n(1445), $ = n(5023), j = n(6894), x = n(687), q = n(6916), N = n(2713), W = n(3895); constante P = nuevo mapa ([
[
‘format’,
e =>
Array.isArray(e) &&
e.length > 0 &&
e.every(e => ‘object’ == typeof e)
],
[‘w’, r.Fq],
[‘h’, r.Fq],
[‘btype’, r.Uu],
[‘battr’, r.Uu],
[‘pos’, r.Fq],
[
‘mimes’,
e =>
Array.isArray(e) &&
e.length > 0 &&
e.every(e => ‘string’ == typeof e)
],
[‘topframe’, e => [1, 0].incluye(e)],
[‘expdir’, r.Uu],
[‘api’, r.Uu],
[‘id’, r.O8],
[‘vcm’, e => [1, 0].incluye(e)]]); var V = n(1371); función M(e, t) { función de retorno() { if (document.prerendering && e()) { const e = this, n = Array.from(argumentos); return new Promise(i => { document.addEventListener( ‘prerenderingchange’, () => { (0, r.fH)( ‘Las subastas se suspendieron mientras la página se estaba prerenderizando’ ), i(t.apply(e, n)); }, { once: !0 } ); }); } return Promise.resolve(t.apply(this, argumentos)); }; } var G = n(7377); const F = (0, im)(), { triggerUserSyncs: H } = y.zt, { ADD_AD_UNITS: L, REQUEST_BIDS: z, SET_TARGETING: J } = d.qY, Q = { bidWon: function(e) { if ( !En .getBidsRequested() .map(e => e.bids.map(e => e.adUnitCode)) .reduce(r.Bq) .filter(r.hj) .includes(e) ) return void (0, r.vV)( ‘La ubicación “‘ + e + ‘” no está definida.’ ); devolver !0; } }; función K(e, t) { sea n = []; return ( (0, r.cy)(e) && (t ? e.length === t : e.length > 0) && (e.every(e => (0, r.Uu)(e, 2))? (n = e): (0, r.Uu)(e, 2) && n.push(e)), n ); } función Y(e, t) { const n = (0, oA)(e, `ortb2Imp.${t}`), i = (0, oA)(e, `mediaTypes.${t}`); si (!n && !i) regresa; constante a = { [V.G_]: W.Zy, [V.D4]: PAG }[t]; a &&
[…a].forEach(n => { dejar [i, a] = norte; const d = (0, oA)(e, `mediaTypes.${t}.${i}`), c = (0, oA)(e, `ortb2Imp.${t}.${i}`); (nulo == d && nulo == c) || (null == d ? (0, sJ)(e, `mediaTypes.${t}.${i}`, c) : null == c ? (0, sJ)(e, `ortb2Imp.${t}.${i}`, d) : ((0, r.JE)( `adUnit ${e.code}: especifica ortb2Imp.${t}.${i} en conflicto y mediaTypes.${t}.${i}, este último será ignorado`, e ), (0, sJ)(e, `mediaTypes.${t}.${i}`, c))); }); } función X(e) { const t = (0, r.Go)(e), n = t.mediaTypes.banner, i = null == n.sizes ? nulo: K(n.tamaños), o = e.ortb2Imp?.banner?.format ?? n?.formato; deja a; if (null != o) { (0, sJ)(t, ‘ortb2Imp.banner.format’, o), (n.format = o); try { a = o .filter(t => { let { w: n, h: i, wratio: o, hratio: s } = t; return null != (n ?? i) && null != (o ?? s) ? ((0, r.JE)( ‘El formato del banner del bloque de anuncios especifica tanto w/h como wratio/hratio’, e ), !1) : (null != n && null != i) || (null != o && null != s }) .map(e => { let { w: t, h: n, wratio: i, hratio: r } = e; return [t ?? i, n ?? r]; }); } catch (t) { (0, r.vV)( `Definición de formato no válida en el bloque de anuncios ${e.code}`, o ); } nulo == un || nulo == yo || (0, r.bD)(i, a) || (0, r.JE)( `El bloque de anuncios ${e.code} tiene tamaños y definiciones de formato contradictorios`, e ); } constante d = a ?? i ?? []c = e.ortb2Imp?.banner?.expdir ?? n.expdir; return ( null != c && ((n.expdir = c), (0, sJ)(t, ‘ortb2Imp.banner.expdir’, c)), d.length > 0 ? ((n.sizes = d), (t.sizes = d)): ((0, r.vV)( ‘Se detectó un objeto mediaTypes.banner sin un campo de tamaños adecuado. Asegúrese de que los tamaños se enumeren como: [[300, 250]…]. Eliminando el objeto mediaTypes.banner no válido de la solicitud.’ ), eliminar t.mediaTypes.banner), Y(t, ‘banner’), t ); } función Z(e) { const t = (0, r.Go)(e), n = t.mediaTypes.video; if (n.playerSize) { let e = ‘número’ == tipo de n.playerSize[0] ? 2: 1; const i = K(n.playerSize, e); i.longitud > 0? (2 === e && (0, r.fH)( “Transformando video.playerSize de [640,480] a [[640,480]]por lo que está en el formato adecuado.” ), (n.playerSize = i), (t.sizes = i)): ((0, r.vV)( ‘Se detectó una configuración incorrecta de mediaTypes.video.playerSize. Especifique solo un conjunto de dimensiones en un formato como: [[640, 480]]. Eliminando la propiedad mediaTypes.video.playerSize no válida de la solicitud.’ ), eliminar t.mediaTypes.video.playerSize); } return (0, W.aP)(t), Y(t, ‘vídeo’), t; } function ee(e) { function t(t) { return ( (0, r.vV)( `Error en adUnit “${e.code}”: ${t}. Eliminando solicitud nativa del bloque de anuncios`, e ), eliminar i.mediaTypes.native, i ); } función n(e) { para (const t de [‘sendTargetingKeys’, ‘types’]) if (o.hasOwnProperty(t)) { const n = e(t); si (n) devuelve n; } } const i = (0, r.Go)(e), o = i.mediaTypes.native; if (o.ortb) { if ( o.ortb.assets?.some( e => !(0, r.Et)(e.id) || e.id t(`las solicitudes nativas ORTB no pueden especificar “${e}”`))) return i; const e = Objeto.claves(d.x5).filtro(e => d.x5[e].includes(‘hb_native_’) ), s = Object.keys(o).filter(t => e.includes(t)); s.length > 0 && ((0, r.vV)( `cuando se usa el formato OpenRTB nativo, no se pueden usar propiedades nativas heredadas. Eliminando claves ${s} de la solicitud.` ), s.forEach(e => eliminar i.mediaTypes.native[e])); } else n( e => `mediaTypes.native.${e} está en desuso, considere usar ORTB nativo en su lugar`); return ( o.image && o.image.sizes && !Array.isArray(o.image.sizes) && ((0, r.vV)( ‘Utilice una matriz de tamaños para el campo nativo.image.sizes. Eliminando la propiedad mediaTypes.native.image.sizes no válida de la solicitud.’ ), elimine i.mediaTypes.native.image.sizes), o.image && o.image.aspect_ratios && !Array.isArray(o.image.aspect_ratios) && ((0, r.vV)( ‘Utilice una variedad de tamaños para el campo nativo.image.aspect_ratios. Eliminando la propiedad mediaTypes.native.image.aspect_ratios no válida de la solicitud.’ ), elimine i.mediaTypes.native.image.aspect_ratios), o.icon && o.icon.sizes && !Array.isArray(o.icon.sizes) && ((0, r.vV)( ‘Utilice una variedad de tamaños para el campo nativo.icon.sizes. Eliminando la propiedad mediaTypes.native.icon.sizes no válida de la solicitud.’ ), elimine i.mediaTypes.native.icon.sizes), i ); } función te(e, t) { sea n = e?.mediaTypes?.[t]?.pos; if (!(0, r.Et)(n) || isNaN(n) || !isFinite(n)) { let n = `El valor de la propiedad ‘pos’ en el bloque de anuncios ${e.code} debe ser de tipo: Número`; (0, r.JE)(n), eliminar e.mediaTypes[t].pos; } devolver mi; } función ne(e) { const t = t => `adUnit.code ‘${e.code}’ ${t}`, n = e.mediaTypes, i = e.bids; devolver nulo == i || (0, r.cy)(i)? nulo == i && nulo == e.ortb2Imp? ((0, r.vV)( t( “no tiene ‘adUnit.bids’ ni ‘adUnit.ortb2Imp’. Eliminando adUnit de la subasta”) ), null): n && 0 !== Object.keys(n).length ? (null == e.ortb2Imp || (null != i && 0 !== i.length) || ((e.bids = [{ bidder: null }]), (0, r.OG)( t( “define ‘adUnit.ortb2Imp’ sin ‘adUnit.bids’; solo será visto por adaptadores S2S” )), e) : ((0, r.vV)( t( “no define un objeto ‘mediaTypes’. Este es un campo obligatorio para la subasta, por lo que este adUnit se ha eliminado.” ) ), null) : ((0, r.vV)( t( “define ‘adUnit.bids’ que no es una matriz. Eliminando adUnit de la subasta” ) ), null); } !(function() { let e = null; try { e = window.sessionStorage; } catch (e) {} if (null !== e) { let t = U, n = null; try { n = e.getItem(O); } catch (e) {} null !== n && t.enable(); } })(), (F.bidderSettings = F.bidderSettings || {}), (F.libLoaded = !0), (F.version = ‘v9.50.0’), (0, r.fH)(‘Prebid.js v9.50.0 cargado’), (F.installedModules = F.installedModules || []), (F.unidadesad = F.unidades || []), (F.triggerUserSyncs = H); const es decir = { validarAdUnit: ne, validarBannerMediaType: X, validarTamaños: K }; Object.assign(es decir, {validarNativeMediaType: ee}), Object.assign(es decir, {validarVideoMediaType: Z}); const re = (0, w.A_)( ‘sincronización’, función (e) { const t = []; return ( e.forEach(e => { if (null == (e = ne(e))) return; const n = e.mediaTypes; let i, r, o; n.banner && ((i = X(e)), n.banner.hasOwnProperty(‘pos’) && (i = te(i, ‘banner’))), n.video && ((r = Z(i || e)), n.video.hasOwnProperty(‘pos’) && (r = te(r, ‘video’))), n.native && (o = ee(r || i || e)); const s = Object.assign({}, i, r, o); }, ‘checkAdUnitSetup’); función oe(e) { const t = En[e]().filter(e => EngetAdUnitCodes().includes(e.adUnitCode) ), n = EngetLastAuctionId(); return t .map(e => e.adUnitCode) .filter(r.hj) .map(e => t.filter(t => t.auctionId === n && t.adUnitCode === e) ) .filter(e => e && e[0] && e[0].adUnitCode) .map(e => ({ [e[0].adUnitCode]: { ofertas: e } })) .reduce((e, t) => Object.assign(e, t), {}); } (F.getAdserverTargetingForAdUnitCodeStr = function(e) { if (((0, r.fH)( ‘Invocando tlpbjs.getAdserverTargetingForAdUnitCodeStr’, argumentos ), e) ) { var t = F.getAdserverTargetingForAdUnitCode(e); return (0, r.$D)(t); } (0, r.OG)( ‘Necesita llamar a getAdserverTargetingForAdUnitCodeStr con adunitCode’ }), (F.getHighestUnusedBidResponseForAdUnitCode = function(e) { if (e) { const t = EngetAllBidsForAdUnitCode(e).filter(A.Yl); return t.length ? t.reduce(N.Vk): {}; } (0, r.OG)( ‘Necesita llamar a getHighestUnusedBidResponseForAdUnitCode con adunitCode’ }), (F.getAdserverTargetingForAdUnitCode = function(e) { return F.getAdserverTargeting(e)[e]; }), (F.getAdserverTargeting = function(e) { return ( (0, r.fH)(‘Invocar tlpbjs.getAdserverTargeting’, argumentos), A.iS.getAllTargeting(e) ); }), (F.getConsentMetadata = function() { return ( (0, r.fH)(‘Invocar tlpbjs.getConsentMetadata’), q.SL.getConsentMeta() }), (F.getNoBids = function() { return ( (0, r.fH)(‘Invocando tlpbjs.getNoBids’, argumentos), oe(‘getNoBids’) ); }), (F.getNoBidsForAdUnitCode = function(e) { return { ofertas: EngetNoBids().filter(t => t.adUnitCode === e) }; }), (F.getBidResponses = function() { return ( (0, r.fH)(‘Invocando tlpbjs.getBidResponses’, argumentos), oe(‘getBidsReceived’) ); }), (F.getBidResponsesForAdUnitCode = function(e) { return { ofertas: EngetBidsReceived().filter(t => t.adUnitCode === e) }; }), (F.setTargetingForGPTAsync = function(e, t) { (0, r.fH)(‘Invocando tlpbjs.setTargetingForGPTAsync’, argumentos), (0, r.II)() ? A.iS.setTargetingForGPT(e, t): (0, r.vV)(‘window.googletag no está definido en página’); }), (F.setTargetingForAst = function(e) { (0, r.fH)(‘Invocando tlpbjs.setTargetingForAn’, argumentos), A.iS.isApntagDefined() ? (A.iS.setTargetingForAst(e), $.Ic(J, A.iS.getAllTargeting())) : (0, r.vV)(‘window.apntag no está definido en la página’); }), (F.renderAd = (0, w.A_)(‘async’, function(e, t, n) { (0, r.fH)(‘Invocar tlpbjs.renderAd’, argumentos), (0, r.OG)(‘Llamar a renderAd con adId:’ + t), (0, c.BS)(e, t, n); })), (F.removeAdUnit = function(e) { if (((0, r.fH)(‘Invocando tlpbjs.removeAdUnit’, argumentos), !e)) return void (F.adUnits = []); sea t; (t = (0, r.cy)(e) ? e : [e]), t.forEach(e => { for (sea t = F.adUnits.length – 1; t >= 0; t–) F.adUnits[t].code === e && F.adUnits.splice(t, 1); }); }), (F.requestBids = (function() { const e = (0, w.A_)( ‘async’, function() { let { bidsBackHandler: e, timeout: t, adUnits: n, adUnitCodes: i, etiquetas: o, subastaId: s, ttlBuffer: a, ortb2: d, métricas: c, aplazar: l } = argumentos.length > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}; $.Ic(z); constante u = t || v.$W.getConfig(‘bidderTimeout’); (0, r.fH)(‘Invocando tlpbjs.requestBids’, argumentos), null == i || Array.isArray(i) || (yo = [i]), i && i.longitud ? (n = n.filter(e => i.includes(e.code))) : (i = n && n.map(e => e.code)), (i = i.filter(r.hj)); const f = { global: (0, r.D9)( {}, v.$W.getAnyConfig(‘ortb2’) || {}, d || {} ), postor: Object.fromEntries( Object.entries(v.$W.getBidderConfig()) .map(e => { let [t, n] = mi; devolver [t, (0, r.Go)(n.ortb2)]; }) .filter(e => { dejar [t, n] = mi; devolver nulo! = n; }) ) }; return (0, xw)(C.U9.resolve(f.global)).then( t => ( (f.global = t), se({ bidsBackHandler: e, timeout: u, adUnits: n, adUnitCodes: i, etiquetas: o, subastaId: s, ttlBuffer: a, ortb2Fragments: f, métricas: c, aplazar: l }) ) ); }, ‘solicitarOfertas’); return (0, w.Y6)( e, M( () => !v.$W.getConfig(‘allowPrerendering’), function() { let t = argumentos.length > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}, n = t.adUnits || Unidades de anuncios F.; return ( (t.adUnits = (0, r.cy)(n) ? n.slice() : [n]), (t.metrics = (0, j.K7)()), t.metrics.checkpoint(‘requestBids’), (t.defer = (0, C.v6)({ promesaFactory: e => new Promise(e) })), e.call(this, t), t.defer.promise ); } ) ); })()); const se = (0, w.A_)( ‘async’, function() { let { bidsBackHandler: e, timeout: t, adUnits: n, ttlBuffer: i, adUnitCodes: o, etiquetas: a, subastaId: d, ortb2Fragments: c, métricas: l, aplazar: u } = argumentos.length > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}; const f = (0, _.pX)(v.$W.getConfig(‘s2sConfig’) || []); función g(t, n, i) { if (‘función’ == tipo de e) intenta { e(t, n, i); } catch (e) { (0, r.vV)(‘Error al ejecutar bidsBackHandler’, null, e); } u.resolve({ ofertas: t, timedOut: n, subastaId: i }); } !(función(e) { e.forEach(e => (0, W.V0)(e)); })(n), (n = (0, j.BO)(l).measureTime(‘requestBids.validate’, () => re(n) )); constante p = {}; if ( (n.forEach(e => { const t = Object.keys(e.mediaTypes || { banner: ‘banner’ }), n = e.bids.map(e => e.bidder), o = _.Ay.bidderRegistry, s = n.filter(e => !f.has(e)); e.adUnitId = (0, r.lk)(); const a = e.ortb2Imp?.ext?.tid; a && (p.hasOwnProperty(e.code) ? (0, r.JE)( `Se proporcionaron varios ortb2Imp.ext.tid distintos para bloques de anuncios gemelos ‘${e.code}’` ): (p[e.code] = a)), nulo == i || e.hasOwnProperty(‘ttlBuffer’) || (e.ttlBuffer = i), s.forEach(n => { const i = o[n]s = i && i.getSpec && i.getSpec(), a = (s && s.supportedMediaTypes) || [‘banner’]; t.algunos(e => a.incluye(e)) || ((0, r.JE)((0, r.bz)(e, n)), (e.bids = e.bids.filter(e => e.bidder !== n))); }); }), n && 0 !== n.length) ) { n.forEach(e => { const t = e.ortb2Imp?.ext?.tid || p[e.code] || (0, r.lk)(); p.hasOwnProperty(e.código) || (pag[e.code] = t), (e.transactionId = t), (0, sJ)(e, ‘ortb2Imp.ext.tid’, t); }); const e = EncreateAuction({ adUnits: n, adUnitCodes: o, devolución de llamada: g, cbTimeout: t, etiquetas: a, subastaId: d, ortb2Fragments: c, métricas: l }); sea i = n.longitud; i > 15 && (0, r.fH)( `La subasta actual ${e.getAuctionId()} contiene ${i} adUnits.`, n ), o.forEach(t => A.iS.setLatestAuctionForAdUnit(t, e.getAuctionId()) ), e.callBids(); } else (0, r.OG)(‘No hay adUnits configurados. No se solicitaron ofertas.’), g(); }, ‘iniciarSubasta’); F.requestBids.before(function(e, t) { function n(e) { for (var t; (t = e.shift()); ) t(); } n(D.s0), n(ae), e.call(this, t); }, 49), (F.addAdUnits = function(e) { (0, r.fH)(‘Invocar tlpbjs.addAdUnits’, argumentos), F.adUnits.push.apply(F.adUnits, (0, r.cy)(e) ? e : [e]), $.Ic(L); }), (F.onEvent = function(e, t, n) { (0, r.fH)(‘Invocando tlpbjs.onEvent’, argumentos), (0, r.fp)(t) ? !n || Q[e].call(nulo, n)? $.on(e, t, n) : (0, r.vV)( ‘La identificación proporcionada no es válida para el evento “‘ + e + ‘” y no se configuró ningún controlador.’ ): (0, r.vV)( ‘El controlador de eventos proporcionado no es una función y no se configuró en el evento “‘ + e + ‘”.’ ); }), (F.offEvent = function(e, t, n) { (0, r.fH)(‘Invocando tlpbjs.offEvent’, argumentos), (n && !Q[e].call(nulo, n)) || $.AU(e, t, n); }), (F.getEvents = function() { return (0, r.fH)(‘Invocar tlpbjs.getEvents’), $.kQ(); }), (F.registerBidAdapter = function(e, t, n) { (0, r.fH)(‘Invocar tlpbjs.registerBidAdapter’, argumentos); try { const i = n ? (0, G.xb)(n): e(); _.Ay.registerBidAdapter(i, t); catch (e) { (0, r.vV)(‘Error al registrar el adaptador del postor: ‘ + e.message } }), (F.registerAnalyticsAdapter = function(e) { (0, r.fH)( ‘Invocando tlpbjs.registerAnalyticsAdapter’, argumentos ); intente { _.Ay.registerAnalyticsAdapter(e); } catch (e) { (0, r.vV)( ‘Error al registrar el adaptador de análisis: ‘ + e.message } }), (F.createBid = function(e) { return ( (0, r.fH)(‘Invocando tlpbjs.createBid’, argumentos), (0, IO)(e) ); }); ae constante = []de = (0, w.A_)( ‘async’, function(e) { e && !(0, r.Im)(e) ? ((0, r.fH)(‘Invocando tlpbjs.enableAnalytics para: ‘, e), _.Ay.enableAnalytics(e)): (0, r.vV)( ‘tlpbjs.enableAnalytics debe llamarse con la opción {}’ ); }, ‘habilitarAnalyticsCb’); función ce(e) { if (‘función’ == tipo de e) intente { e.call(); } catch (e) { (0, r.vV)(‘Error al procesar el comando:’, e.message, e.stack); } else (0, r.vV)( ‘Los comandos escritos en tlpbjs.cmd.push deben estar incluidos en una función’); } function le(e) { e.forEach(function(e) { if (void 0 === e.Call) try { e.call(), (e.Call = !0); } catch (e) { (0, r.vV)(‘Error al procesar el comando:’, ‘prebid.js’, e); } }); } (F.enableAnalytics = function(e) { ae.push(de.bind(this, e)); }), (F.aliasBidder = function(e, t, n) { (0, r.fH)(‘Invocar tlpbjs.aliasBidder’, argumentos), e && t ? _.Ay.aliasBidAdapter(e, t, n) : (0, r.vV)( ‘bidderCode y alias deben pasarse como argumentos’, ‘tlpbjs.aliasBidder’ }), (F.aliasRegistry = _.Ay.aliasRegistry), v.$W.getConfig(‘aliasRegistry’, e => { ‘private’ === e.aliasRegistry && eliminar F.aliasRegistry; }), (F.getAllWinningBids = function() { return EngetAllWinningBids(); }), (F.getAllPrebidWinningBids = function() { return ( (0, r.JE)( ‘getAllPrebidWinningBids puede eliminarse o cambiarse de nombre en una versión futura. Esta función devuelve ofertas que han ganado en prebid y han tenido la orientación establecida pero que no han ganado (¿todavía?) en el servidor de anuncios. Excluye las ofertas que se han presentado.’ ), En .getBidsReceived() .filter(e => e.status === d.tl.BID_TARGETING_SET) }), (F.getHighestCpmBids = function(e) { return A.iS.getWinningBids(e); }), (F.clearAllAuctions = function() { EnclearAllAuctions(); }), (F.markWinningBidAsUsed = function(e) { let t, { adId: n, adUnitCode: i, análisis: o = !1, eventos: s = !1 } = e; i && null == n ? (t = A.iS.getWinningBids(i)) : n ? (t = EngetBidsReceived().filter(e => e.adId === n)) : (0, r.JE)( ‘Uso inadecuado de markWinningBidAsUsed. Necesita un adUnitCode o un adId para funcionar.’ ), t.length > 0 && (o || s ? (0, c.n6)(t[0]): EnaddWinningBid(t[0]), (0, c.qn)(t[0])); }), (F.getConfig = v.$W.getAnyConfig), (F.readConfig = v.$W.readAnyConfig), (F.mergeConfig = v.$W.mergeConfig), (F.mergeBidderConfig = v.$W.mergeBidderConfig), (F.setConfig = v.$W.setConfig), (F.setBidderConfig = v.$W.setBidderConfig), F.que.push(() => m()), (F.processQueue = M( () => (0, im)().delayPrerendering, function() { (F.que.push = F.cmd.push = ce), (0, c.XO()), w.A_.ready(), le(F.que), le(F.cmd); } )), (F.triggerBilling = e => { let { adId: t, adUnitCode: n } = e; En .getAllWinningBids() .filter( e => e.adId === t || (null == t && e.adUnitCode === n) ) .forEach(e => { _.Ay.triggerBilling(e), (0, c.vB)(e); } }); }, 7873: (e, t, n) => { nd(t, { E: () => s, m: () => o }); const i = ventana, r = (i.tlpbjs = i.tlpbjs || {}); función o() { retorno r; } función s(e) { r.installedModules.push(e); } (r.cmd = r.cmd || []),
(r.que = r.que || []), i === ventana && ((i._pbjsGlobals = i._pbjsGlobals || []), i._pbjsGlobals.push(‘tlpbjs’)); }, 7934: (e, t, n) => { nd(t, { EN: () => d, gR: () => s }); var i = n(3272), r = n(1069); función o(e) { let t = argumentos.longitud > 1 && void 0 !== argumentos[1]
? argumentos[1]
: ventana; si (!e) devuelve e; si (/w+:///.exec(e)) devuelve e; sea n = t.ubicación.protocol; intente { n = t.top.location.protocol; } captura (e) {} retorno /^///.exec(e)? norte + mi : `${n}//${e}`; } función s(e) { let { noLeadingWww: t = !1, noPort: n = !1 } = argumentos.length > 1 && void 0 !== argumentos[1]
? argumentos[1]
: {}; prueba {e = nueva URL(o(e)); } captura (e) { retorno; } return ((e = n? e.hostname: e.host), t && e.startsWith(‘www.’) && (e = e.substring(4)), e); } función a(e) { intentar { const t = e.querySelector(“enlace[rel=’canonical’]”); if (null! == t) return t.href; } catch (e) {} return null; } const d = (function(e) { let t, n, i, r = argumentos.length > 1 && void 0 !== argumentos[1]
? argumentos[1]
: ventana; devolver r.arriba !== r ? e : función() { const o = a(r.documento), s = r.ubicación.href; return ( (t === o && s === n) || ((t = o), (n = s), (i = e())), i); }; })( ((c = ventana), función() { const e = []t = (function(e) { try { if (!e.location.ancestorOrigins) return; return e.location.ancestorOrigins; } catch (e) {} })(c), n = i.$W.getConfig(‘maxNestedIframes’); sean d, l, u, f, g = !1, p = 0, h = !1, m = !1, b = !1; hacer { const n = d, i = m; sea o, s = !1, f = nulo; (m = !1), (d = d ? d.padre : c); prueba { o = d.ubicación.href || nulo; } captura (e) { s = !0; } si (s) si (i) { const e = n.context; intente { (f = e.sourceUrl), (l = f), (b = !0), (h = !0), d === c.top && (g = !0), e.canonicalUrl && (u = e.canonicalUrl); } catch (e) {} } else { (0, r.JE)( ‘Intentando acceder al iframe entre dominios. Continuando sin referencia ni ubicación’); intente {const e = n.document.referrer; e && ((f = e), d === c.top && (g = !0)); } captura (e) {} !f && t && t[p – 1] && ((f = t[p – 1]), d === c.top && (b = !0)), f && !h && (l = f); } else { if (o && ((f = o), (l = f), (h = !1), d === c.top)) { g = !0; const e = a(d.documento); e && (u = e); } d.context && d.context.sourceUrl && (m = !0); } e.push(f), p++; } mientras (d !== c.top && p -1 && -1 === E.indexOf(‘?’) && (E = `${E}${y.substring(y.indexOf(‘?’))}`), { alcanzadoTop: g, isAmp: h, numIframes: p – 1, pila: e, topmostLocation: l || null, ubicación: y, canonicalUrl: v, página: E, dominio: s(E) || nulo, ref: f || nulo, heredado: {alcanzadoTop: g, isAmp: h, numIframes: p – 1, pila: e, referente: l || canonicalUrl: v } } }) ); var c; }, 2938: (e, t, n) => { nd(t, { CK: () => b, X0: () => g, qk: () => f, s0: () => p, vM: () => m }); var i = n(1069), r = n(2693), o = n(5569), s = n(5139), a = n(2604), d = n(6811), c = n(3272), l = n(1445), u = n(3441); const f = ‘html5’, g = ‘cookie’; sea p = []; función h() { let { nombre del módulo: e, tipo de módulo: t } = argumentos.longitud > 0 && void 0!== argumentos[0]
? argumentos[0]
: {}, { isAllowed: n = s.io } = argumentos.length > 1 && void 0 !== argumentos[1]
? argumentos[1]
: {}; función r(i, r) { sea s = e; const f = c.$W.getCurrentBidder(); f && t === o.tW && l.Ay.aliasRegistry[f] === e && (s = f); return i({ válido: n(d.Ue, (0, us)(t, s, { [a.Zw]: r })) }); } función h(e, t, n) { if (!n || ‘función’ != tipo de n) return r(e, t); p.push(function() { sea i = r(e, t); n(i); }); } función m(e) { const t = e.charAt(0).toUpperCase() + e.substring(1), n = () => ventana[e]r = función(t) { return h( function(t) { if (t && t.valid) try { return !!n(); } catch (t) { (0, i.vV)(`${e} api deshabilitada`); } return !1; }, f, t ); }; devolver {
[`has${t}`]:r,
[`${e}IsEnabled`]: e => h( function(e) { if (e && e.valid) try { return ( n().setItem(‘prebid.cookieTest’, ‘1’), ‘1’ === n().getItem(‘prebid.cookieTest’) ); } catch (e) { } finalmente { try { n().removeItem(‘prebid.cookieTest’); } catch (e) {} } return !1; },f,e),
[`setDataIn${t}`]: (e, t, i) => h( function(i) { i && i.valid && r() && n().setItem(e, t); }, f, i),
[`getDataFrom${t}`]: (e, t) => h( function(t) { return t && t.valid && r() ? n().getItem(e) : nulo; }, f, t ),
[`removeDataFrom${t}`]: (e, t) => h( function(t) { t && t.valid && r() && n().removeItem(e); }, f, t ) }; } return { setCookie: function(e, t, n, i, r, o) { return h( function(o) { if (o && o.valid) { const o = r && ” !== r ? ` ;domain=${encodeURIComponent(r)}` : ”, s = n && ” !== n ? ` ;expires=${n}` : ”, a = null != i && ‘ninguno’ == i.toLowerCase() ? ‘; Seguro’ : ”; document.cookie = `${e}=${encodeURIComponent( t )}${s}; g, o ); }, getCookie: función(e, t) { return h( función(t) { if (t && t.valid) { let t = window.document.cookie.match( ‘(^|;)\s*’ + e + ‘\s*=\s*([^;]*)\s*(;|$)’ ); volver t ? decodificarURIComponente(t[2]) : nulo; } devolver nulo; }, g, t ); }, cookiesAreEnabled: función(e) { return h( function(e) { return !(!e || !e.valid) && (0, i.GE)(); }, g, e ); }, …m(‘Almacenamiento local’), …m(‘Almacenamiento de sesión’), buscarCookies similares: función(e, t) { return h( función(t) { if (t && t.valid) { const t = []; if ((0, i.N9)()) { const n = document.cookie.split(‘;’); para (; n.longitud; ) { const i = n.pop(); sea r = i.indexOf(‘=’); r=r= 0 && t.push(decodeURIComponent(i.slice(r + 1))); } } devolver t; } }, g, t ); } }; } función m() { let { tipo de módulo: e, nombre de módulo: t, código de oferta: n } = argumentos.longitud > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}; function i() { throw new Error( ‘Invocación no válida para getStorageManager: debe establecerse bidderCode o moduleType + moduleName’); } return ( n ? (((e && e !== o.tW) || t) && i(), (e = o.tW), (t = n)) : (t && e) || i(), h({ moduleType: e, moduleName: t }) ); } función b(e) { return h({ nombre del módulo: e, tipo de módulo: o.tp }); } (0, s.qB)(d.Ue, ‘configuración de acceso al dispositivo’, función() { if (!(0, i.N9)()) return { permitir: !1 }; }), (0, s.qB)(d.Ue, ‘bidderSettings.*.storageAllowed’, función(e) { let t = argumentos.length > 1 && void 0 !== argumentos[1]
? argumentos[1]
: ru; si (y[a.Dk] !== o.tW) retorno; sea n = t.get(e[a.q7]’almacenamiento permitido’); si (n && !0 !== n) { const t = e[a.Zw]; n = Array.isArray(n)? n.algunos(e => e === t) : n === t; } más n = !!n; volver n? anular 0: {permitir: n}; }); }, 7779: (e, t, n) => { nd(t, { Yl: () => w, iS: () => B, uW: () => A }); var i = n(6881), r = n(7863), o = n(2693), s = n(3272), a = n(8969), d = n(5023), c = n(9214), l = n(1371), u = n(2449), f = n(1069), g = n(433), p = norte(2713), h = []; const m = 20, b = ‘targetingControls.allowTargetingKeys’, y = ‘targetingControls.addTargetingKeys’, v = `Sólo se puede configurar uno de “${b}” o “${y}”, E = Object.keys(a.xS).map(e => a.xS[e]); let A = { isActualBid: e => e.getStatusCode() === a.XQ.GOOD, isBidNotExpired: e => e.responseTimestamp + 1e3 * (0, r.cT)(e) > (0, f.vE)(), isUnusedBid: e => e && ((e.status &&![a.tl.RENDERED].incluye(e.status)) || !e.estado) }; función w(e) { return !Object.values(A).some(t => !t(e)); } const I = (0, c.A_)(‘sync’, function(e, t) { let n = argumentos.longitud > 2 && void 0 !== argumentos[2]
? argumentos[2]
: 0, i = argumentos.longitud > 3 && void 0 !== argumentos[3] && argumentos[3]r = argumentos.longitud > 4 && void 0 !== argumentos[4]
? argumentos[4]
: f.Q0; si (!i) { const i = []o = s.$W.getConfig(‘sendBidsControl.dealPrioritization’); sea a = (0, f.$z)(e, ‘adUnitCode’); retorno (Object.keys(a).forEach(e => { let s = []d = (0, f.$z)(a[e]’Código de oferta’); Objeto.keys(d).forEach(e => { s.push(d[e].reducir(t)); }), norte ? ((s = o ? s.sort(T(!0)) : s.sort((e, t) => t.cpm – e.cpm)), i.push(…s.slice(0, n))) : ((s = s.sort(r)), i.push(…s)); }), i ); } devolver e; }); función T() { let e = argumentos.longitud > 0 && void 0 !== argumentos[0] && argumentos[0]; función de retorno (t, n) { retorno vacío 0! == t.adserverTargeting.hb_deal && vacío 0 === n.adserverTargeting.hb_deal? -1: nulo 0 === t.adserverTargeting.hb_deal && nulo 0!== n.adserverTargeting.hb_deal? 1: y? n.cpm – t.cpm : n.adserverTargeting.hb_pb – t.adserverTargeting.hb_pb; }; } función C(e, t) { return (argumentos.longitud > 2 && void 0 !== argumentos[2]
? argumentos[2]
: () => window.googletag.pubads().getSlots())().reduce( (e, n) => { const i = (0, f.fp)(t) && t(n); return ( Object.keys(e) .filter((0, f.fp)(i) ? i : (0, f.iC)(n)) .forEach(t => e[t].push(n)), e); }, Objeto.fromEntries(e.map(e => [e, []])) ); } const B = (función(e) { let t = {}, n = {}; function i(e) { let t = argumentos.longitud > 1 && void 0 !== argumentos[1] && argumentos[1]n = argumentos.longitud > 2 && void 0 !== argumentos[2] && argumentos[2]; const i = E.concat(u.Nh), r = s.$W.getConfig( ‘targetingControls.allowSendAllBidsTargetingKeys’ ), o = r? r.map(e => a.xS[e]) : i; return e.reduce((e, r) => { if (t || (n && r.dealId)) { const t = (function(e, t) { return t.reduce( (t, n) => ( e.adserverTargeting[n] && t.push({
[`${n}_${e.bidderCode}`.substring(0, 20)]: [
e.adserverTargeting[n]
]}), t ),
[]
); })( r, i.filter( e => void 0 !== r.adserverTargeting[e] && (n || -1 !== o.indexOf(e)) ) ); t && e.push({ [r.adUnitCode]: t }); } devolver e; }, []); } función r(t) { return ‘cadena’ == tipo de t? [t]
: (0, f.cy)(t)? t : e.getAdUnitCodes() || []; } función A() { let t = argumentos.longitud > 0 && void 0 !== argumentos[0]
? argumentos[0]
: p.Bq, i = argumentos.longitud > 1 && void 0 !== argumentos[1]
? argumentos[1]
: void 0, r = e.getBidsReceived().reduce((e, t) => { const i = s.$W.getConfig(‘useBidCache’), r = s.$W.getConfig(‘bidCacheFilterFunction’), o = n[t.adUnitCode] === t.auctionId, a = !(i && !o && ‘función’ == tipo de r) || !!r(t); return ( (i || o) && a && (0, gA)(t, ‘video.context’) !== l.LM && w(t) && ((t.latestTargetedAuctionId = n[t.adUnitCode]), e.push(t)), e ); }, []); devolver I(r, t, anular 0, anular 0, anular 0, i); } función B(e, n) { sea i = t.getWinningBids(n, e), r = O(); retorno ( (i = i.map(e => ({
[e.adUnitCode]: Object.keys(e.adserverTargeting) .filter( t => void 0 === e.sendStandardTargeting || e.sendStandardTargeting || -1 === r.indexOf(t) ) .reduce((t, n) => { const i = [e.adserverTargeting[n]], r = { [n.substring(0, m)]: i }; if (n === a.xS.DEAL) { const o = `${n}_${e.bidderCode}`.substring(0, m), s = { [o]: i }; devolver […t, r, s]; } devolver […t, r]; }, []) }))), i ); } función O() { return e .getStandardBidderAdServerTargeting() .map(e => e.key) .concat(E) .filter(f.hj); } retorno ( (t.setLatestAuctionForAdUnit = función (e, t) { norte[e] =t; }), (t.resetPresetTargeting = function(e, t) { if ((0, f.II)()) { const n = r(e); Object.values(C(n, t)).forEach(e => { e.forEach(e => { !(function(e) { h.forEach(t => { e.getTargeting(t) && e.clearTargeting(t); }); })(e); } }); } }), (t.resetPresetTargetingAST = function(e) { r(e).forEach(function(e) { const t = window.apntag.getTag(e); if (t && t.keywords) { const n = Object.keys(t.keywords), i = {}; n.forEach(e => { h.incluye(e.toLowerCase()) ||[e] = t.palabras clave[e]); }), ventana.apntag.modifyTag(e, {palabras clave: i}); } }); }), (t.getAllTargeting = function(t, n, d) { let c = argumentos.length > 3 && void 0 !== argumentos[3]
? argumentos[3]
: p.Vk, l = argumentos.longitud > 4 && void 0 !== argumentos[4]
? argumentos[4]
: f.Q0; re ||= A(c, l); const g = r(t), E = s.$W.getConfig(‘enableSendAllBids’), w = s.$W.getConfig(‘sendBidsControl.bidLimit’), C = (E && (n || w)) || 0, { customKeysByUnit: R, filteredBids: S } = (función(e, t) { const n = []i = {}, r = s.$W.getConfig( ‘targetingControls.alwaysIncludeDeals’ ); return ( t.forEach(t => { const s = e.includes(t.adUnitCode), a = !0 === ouget(t.bidderCode, ‘allowZeroCpmBids’) ? t.cpm >= 0 : t.cpm > 0, d = r && t.dealId; s && (d || a) && (n.push(t), Object.keys(t.adserverTargeting) .filter( (function() { let e = O(); e = e.concat(u.Nh); return function(t) { return -1 === e.indexOf(t); }; })() ) .forEach(e => { const n = e.substring(0, m), r = i[t.adUnitCode] || {}, o = [t.adserverTargeting[e]]; r[n]
? (r[n] =r[n].concat(o).filtro(f.hj)): (r[n] = o), (yo[t.adUnitCode] =r); })); }), { ofertas filtradas: n, customKeysByUnit: i } ); })(g,d); let k = (function(t, n, r) { const o = !1 !== s.$W.getConfig( ‘targetingControls.allBidsCustomTargeting’ ), d = B(t, r) .concat( (function(e) { const t = s.$W.getConfig( ‘targetingControls.alwaysIncludeDeals’ ); return i(e, s.$W.getConfig(‘enableSendAllBids’), t); })(t) ) .concat( (función(t) { función n(e) { return e?.[a.iD.ADSERVER_TARGETING]; } función i(e) { const t = n(e); return Object.keys(t).map(function(e) { return ( (0, f.O8)(t[e]) && (t[e] =t[e].split(‘,’).map(e => e.trim())), (0, f.cy)(t[e]) || (t[e] = [t[e]]), { [e]:t[e] } ); }); } return e .getAdUnits() .filter(e => t.includes(e.code) && n(e)) .reduce((e, t) => { const n = i(t); return n && e.push({ [t.code]: norte }), e; }, []); })(r) ); o && d.push( …(función(e, t) { return e.reduce((e, n) => { const i = Object.assign({}, n), r = t[i.adUnitCode]o = []; retorno ( r && Objeto.keys(r).forEach(e => { e && r[e] && o.push({ [e]:r[e] }); }), e.push({ [i.adUnitCode]: o }), y ); }, []); })(t, n) ); retorno ( d.forEach(e => { !(función(e) { Objeto.keys(e).forEach(t => { e[t].forEach(e => { const t = Object.keys(e); -1 === h.indexOf(t[0]) && (h = t.concat(h)); }); }); })(mi); }), d ); })(I(S, c, C, vacío 0, l), R, g); const U = Objeto.keys(Object.assign({}, a.Zh, a.x5)); let D = s.$W.getConfig(b); const _ = s.$W.getConfig(y); si (nulo! = _ && nulo! = D) arroja un nuevo error (v); (D = null != _ ? U.concat(_) : D || U), Array.isArray(D) && D.length > 0 && (k = (function(e, t) { const n = Object.assign({}, a.xS, a.x5), i = Object.keys(n), r = {}; (0, f.fH)( `allowTargetingKeys – claves permitidas [ ${t
.map(e => n[e]) .join(‘, ‘)} ]` ), e.map(e => { const o = Object.keys(e)[0]s = mi[o].filtro(e => { const o = Objeto.claves(e)[0]s = 0 === i.filtro(e => 0 === o.indexOf(n[e])) .longitud || t.find(e => { const t = n[e]; devolver 0 === o.indexOf(t); }); regresar (r)[o] = !s), s; }); mi[o] =s; }); const o = Objeto.claves(r).filtro(e => r[e]); return ( (0, f.fH)( `allowTargetingKeys – claves eliminadas [ ${o.join(
‘, ‘
)} ]` ), e.filtro(e => e[Object.keys(e)[0]].longitud > 0) ); })(k, D)), (k = (función(e) { sea t = e.map(e => ({
[Object.keys(e)[0]]: y[Object.keys(e)[0]].map(e => ({
[Object.keys(e)[0]]: y[Object.keys(e)[0]].join(‘,’) })) .reduce((e, t) => Object.assign(t, e), {}) })); retorno ( (t = t.reduce(función(e, t) { var n = Objeto.claves(t)[0]; regresar (e[n] = Objeto.asignar({}, e[n]t[n])), mi; }, {})), t ); })(k)); const $ = s.$W.getConfig( ‘targetingControls.auctionKeyMaxChars’ ); return ( $ && ((0, f.fH)( `Se detectó que ‘targetingControls.auctionKeyMaxChars’ estaba activo para esta subasta; establecido con un límite de ${$} caracteres. Ejecutando comprobaciones en las claves de la subasta…` ), (k = (function(e, t) { let n = (0, f.Go)(e), i = Object.keys(n) .map(e => ({ adUnitCode: e, adserverTargeting: n[e]
})) .sort(T()); return i.reduce(function(e, i, r, o) { let s = ((a = i.adserverTargeting), Object.keys(a).reduce(function(e, t) { return ( e + `${t}%3d${encodeURIComponent(a[t])}%26` ); }, ”)); var a; r + 1 === o.longitud && (s = s.slice(0, -3)); sea d = i.adUnitCode, c = s.length; return ( c { k[e] || (k[e] = {}); }), k); }), s.$W.getConfig(‘targetingControls’, function(e) { null != (0, gA)(e, b) && null != (0, gA)(e, y) && (0, f.vV)(v); }), (t.setTargetingForGPT = (0, c.A_)( ‘sync’, function(n, i) { let r = t.getAllTargeting(n), o = Objeto.fromEntries(h.map(e => [e, null])); Object.entries(C(Object.keys(r), i)).forEach(e => { let [t, n] = mi; n.length > 1 && (0, f.JE)( `Se encontraron varios espacios coincidentes: ${t}. La orientación se establecerá en todos los espacios coincidentes, lo que puede dar lugar a impresiones duplicadas si se solicita más de una a GAM. Para resolver esto, asegúrese de que los argumentos para setTargetingForGPTAsync se resuelvan en un único espacio al hacer coincidir explícitamente el slotElementID deseado.` ), n.forEach(e => { Object.keys(r[t]).forEach(e => { sea n = r[t][e]; ‘cadena’ == tipo de n && -1 !== n.indexOf(‘,’) && (n = n.split(‘,’)), (r[t][e] = norte); }), (0, f.OG)( `Intentando establecer el mapa de orientación para el espacio: ${e.getSlotElementId()} con mapa de orientación:`, r[t]
), e.updateTargetingFromMap( Object.assign({}, o, r[t]) ); }); }), Objeto.claves(r).forEach(t => { Objeto.claves(r[t]).forEach(n => { ‘hb_adid’ === n && e.setStatusForBids(r[t][n]a.tl.BID_TARGETING_SET); }); }), t.targetingDone(r), d.Ic(a.qY.SET_TARGETING, r); }, ‘setTargetingForGPT’ )), (t.targetingDone = (0, c.A_)( ‘sync’, function(e) { return e; }, ‘targetingDone’ )), (t.getWinningBids = function(e, t) { let n = arguments.length > 2 && void 0 !== argumentos[2]
? argumentos[2]
: p.Vk, i = argumentos.longitud > 3 && void 0 !== argumentos[3]
? argumentos[3]
: f.Q0; constante s = t || A(n, i), a = r(e); return s .filter(e => a.includes(e.adUnitCode)) .filter(e => !0 === ouget(e.bidderCode, ‘allowZeroCpmBids’) ? e.cpm >= 0 : e.cpm > 0 ) .map(e => e.adUnitCode) .filter(f.hj) .map(e => s .filter(t => (t.adUnitCode === e ? t : null)) .reduce(p.Vk) ); }), (t.setTargetingForAst = function(e) { let n = t.getAllTargeting(e); try { t.resetPresetTargetingAST(e); } catch (e) { (0, f.vV)(‘no se puede restablecer la orientación para AST’ + e); } Object.keys(n).forEach(e => Object.keys(n[e]).forEach(t => { if (((0, f.OG)( `Intentando establecer la orientación para targetId: ${e} clave: ${t} valor: ${n[e][t]}` ), (0, f.O8)(n[e][t]) || (0, f.cy)(n[e][t])) ) { sea i = {}, r = /pt[0-9]/; t.búsqueda(r) { nd(t, { qh: () => u, zt: () => g }); var i = n(1069), r = n(3272), o = n(2938), s = n(5139), a = n(6811), d = n(2604), c = n(5569), l = n(3441); const u = { syncEnabled: !0, filterSettings: { imagen: { postores: ‘*’, filtro: ‘incluir’ } }, syncsPerBidder: 5, syncDelay: 3e3, subastaDelay: 500 }; r.$W.setDefaults({ userSync: (0, i.Go)(u) }); const f = (0, o.CK)(‘usersync’); const g = (función(e) { let t = {}, n = { imagen: []marco flotante: [] }, o = nuevo conjunto(), s = {}, u = {imagen: !0, iframe: !1 }, f = e.config; function g() { if (f.syncEnabled && e.browserSupportsCookies) { intentar { !(function() { if (!u.iframe) return; p(n.iframe, e => { let [t, r] = mi; (0, i.OG)(`Invocando sincronización de usuario de iframe para el postor: ${t}`), (0, i.SG)(r), (function(e, t) { e.image = e.image.filter(e => e[0] !==t); })(norte, t); }); })(), (función() { si (!u.image) regresa; p(n.image, e => { let [t, n] = mi; (0, i.OG)( `Invocando sincronización de usuario de píxeles de imagen para el postor: ${t}` ), (0, iz$)(n); }); })(); } catch (e) { return (0, i.vV)(‘Error al activar sincronizaciones de usuario’, e); } norte = { imagen: []marco flotante: [] }; } } función p(e, t) { (0, i.k4)(e).forEach(t); } función h(e, t) { let n = f.filterSettings; if ( (función(e, t) { if (e.all && e[t]) return ( (0, i.JE)( `Se detectó presencia de “filterSettings.all” y “filterSettings.${t}” en la configuración de userSync. No se pueden mezclar “todos” con las configuraciones “iframe/image”; son mutuamente excluyentes.` ), !1 ); sea n = e.all? e.todos: e[t]r = e.todos ? ‘todos’ :t; si (!n) devuelve !1; let o = n.filtro, s = n.postores; if (o && ‘include’ !== o && ‘exclude’ !== o) return ( (0, i.JE)( `UserSync “filterSettings.${r}.filter” la configuración ‘${o}’ no es una opción válida; use ‘include’ o ‘exclude’.` ), !1 ); if ( ‘*’ !== s && !( Array.isArray(s) && s.length > 0 && s.every(e => (0, i.O8)(e) && ‘*’ !== e) ) ) return ( (0, i.JE)( `Se detectó una configuración no válida en userSync “filterSettings.${r}.bidders”; utilice ‘*’ (para representar todos postores) o una serie de postores.` ), !1 ); devolver !0; })(n, mi) ) { tu[e] = !0; sea i = n.todos? n.todos: n[e]r = ‘*’ === i.postores ? [t] : i.oferentes; const o = { incluir: (e, t) => !e.includes(t), excluir: (e, t) => e.includes(t) }; regresar o[i.filter || ‘include’](r,t); } regresar!u[e]; } return ( r.$W.getConfig(‘userSync’, e => { if (e.userSync) { let t = e.userSync.filterSettings; (0, i.Qd)(t) && (t.image || t.all || (e.userSync.filterSettings.image = { postores: ‘*’, filtro: ‘incluir’ })); } f = Object.assign(f, e.userSync); }), e.regRule(a.Ml, ‘userSync config’, e => { if (!f.syncEnabled) return { permitir: !1, motivo: ‘las sincronizaciones están deshabilitadas’ }; if (e[d.Dk] === c.tW) { const n = e[d.bt]yo = mi[d.iK]; if (!t.canBidderRegisterSync(n, i)) return { permitir: !1, motivo: `${n} las sincronizaciones no están habilitadas para ${i}` }; } }), (t.registerSync = (t, r, u) => o.has(r)? (0, i.OG)( `sincronizaciones ya activadas para “${r}”, ignorando la llamada de RegisterSync`): f.syncEnabled && (0, i.cy)(n[t]) ? r? 0 !== f.syncsPerBidder && Número(s)[r]) >= f.syncsPerBidder ? (0, i.JE)(`Se excedió el número de sincronizaciones de usuarios para “${r}”`): void ( e.isAllowed( a.Ml, (0, ls)(c.tW, r, { [d.bt]:t, [d.e3]: u }) ) && (n[t].empujar([r, u]), (s = (función(e, t) { devolver e[t] ? (mi[t] += 1) : (mi[t] = 1), mi; })(s, r))) ) : (0, i.JE)(‘Se requiere postor para registrar la sincronización’): (0, i.JE)(`Tipo de sincronización de usuario “${t}” no admitido`)), (t.bidderDone = o.add.bind(o)), (t.syncUsers = function() { let e = arguments.length > 0 && void 0 !== argumentos[0]
? argumentos[0]
: 0; si (e) devuelve setTimeout(g, Número(e)); gramo(); }), (t.triggerUserSyncs = () => { f.enableOverride && t.syncUsers(); }), (t.canBidderRegisterSync = (e, t) => !f.filterSettings || !h(e, t)), t ); })( Object.defineProperties( { config: r.$W.getConfig(‘userSync’), isAllowed: s.io, regRule: s.qB }, { browserSupportsCookies: { get: function() { return !(0, i.Vt)() && f.cookiesAreEnabled(); } } } ) ); }, 1069: (e, t, n) => { nd(t, { $D: () => U, $z: () => Ue, Bg: () => Ke, Bj: () => Qe, Bk: () => ge, Bq: () => él, CA: () => K, D4: () => yo, D9: () => Le, Dl: () => Ge, El: () => Ye, Et: () => ne, Ez: () => Y, Fq: () => Nosotros, GE: () => Se, Go: () => nosotros, II: () => ye, Im: () => oe, JE: () => F, Lm: () => re, N9: () => Re, O8: () => ee, OG: () => M, Ot: () => T, PB: () => Je, Q0: () => Ee, Qd: () => ie, SB: () => $e, SG: () => ue, SH: () => De, Tz: () => fe, U6: () => ke, Up: () => Pe, Uu: () => Ve, V: () => Oe, Vt: () => Te, YE: () => P, ZA: () => be, ZK: () => Ze, _s: () => ae, al: () => Ie, bD: () => He, bL: () => k, bz: () => Ne, c$: () => Fe, cD: () => w, cf: () => j, cy: () => te, dp: () => J, fH: () => G, fp: () => Z, gM: () => Ce, h0: () => L, hj: () => pe, hw: () => Q, iC: () => qe, k4: () => Ae, kK: () => _, l4: () => N, l9: () => je, lk: () => S, mM: () => C, mb: () => q, nT: () => Xe, ro: () => le, s0: () => R, t1: () => ve, vE: () => Be, vV: () => H, wD: () => _e, xQ: () => se, y$: () => D, z$: () => ce }); var i = n(3272), r = n(5751), o = n(8969), s = n(5555), a = n(7873), d = ‘Cadena’, c = ‘Función’, l = ‘Número’, u = ‘Objeto’, f = ‘Booleano’, g = Object.prototype.toString; let p, h, m = booleano(window.console), b = booleano(m && window.console.log), y = booleano(m && window.console.info), v = booleano(m && window.console.warn), E = booleano(m && window.console.error); constante A = (0, soy)(); función w(mi) { p = mi; } función I() { nulo != p && p(…argumentos); } const T = (función() { let e; return () => ( (!h || !e || Date.now() – e > 20) && (C.resetWinDimensions(), (e = Date.now())), h ); })(); const C = { checkCookieSupport: Sí, createTrackPixelIframeHtml: function(e) { let t = !(arguments.length > 1 && void 0 !== argumentos[1]) || argumentos[1]n = argumentos.longitud > 2 && void 0 !== argumentos[2]
? argumentos[2]
: ”; si (! e) regresa ”; t &&(e = codificarURI(e)); n &&(n = `sandbox=”${n}”`); devolver “; }, getWindowSelf: N, getWindowTop: q, canAccessWindowTop: V, getWindowLocation: W, insertUserSyncIframe: ue, insertElement: ae, isFn: Z, triggerPixel: ce, logError: H, logWarn: F, logMessage: M, logInfo: G, parseQS: Me, formatQS: function (e) { return Object. teclas ( e ) . mapa (t => Matriz. isArray (e)[t]) ? mi[t].map(e => `${t}[]=${e}`).join(‘&’): `${t}=${e[t]}` ) .join(‘&’); }, deepEqual: Él, resetWinDimensions: function() { const e = V() ? C.getWindowTop() : C.getWindowSelf(); h = { pantalla: { ancho: e.pantalla?.ancho, alto: e.pantalla?.altura, disponibleAncho: e.pantalla?.availWidth, disponibleAltura: e.pantalla?.availHeight, colorDepth: e.pantalla?.colorDepth }, altura interior: e.alturainterior, ancho interior: e.anchointerior, ancho exterior: e.anchoexterior, altura exterior: e.outerHeight, visualViewport: { altura: e.visualViewport?.height, ancho: e.visualViewport?.width }, documento: { documentElement: { clientWidth: e.document?.documentElement?.clientWidth, clientHeight: e.document?.documentElement?.clientHeight, scrollTop: e.document?.documentElement?.scrollTop, scrollLeft: e.document?.documentElement?.scrollLeft }, cuerpo: { scrollTop: document.body?.scrollTop, scrollLeft: document.body?.scrollLeft, clientWidth: document.body?.clientWidth, clientHeight: document.body?.clientHeight } } }; } }; var B, O = ((B = 0), función() { return ++B; }); función R() { retorno ( O() + Math.random() .toString(16) .substr(2) ); } función S(e) { devolver e ? ( e ^ ((ventana && ventana.crypto && ventana.crypto.getRandomValues ? crypto.getRandomValues(nuevo Uint8Array(1))[0] % 16 : 16 * Math.random()) >> (e / 4)) ).toString(16) : ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).reemplazar(/[018]/g, S); } función k(e) { sea t = ”; para (var n en e) e.hasOwnProperty(n) && (t += n + ‘=’ + encodeURIComponent(e[n]) + ‘&’); retorno (t = t.replace(/&$/, ”)), t; } función U(e) { return e && Object.getOwnPropertyNames(e).length > 0 ? Objeto.keys(e) .map(t => `${t}=${encodeURIComponent(e[t])}`) .join(‘&’): ”; } función D(e) { return ‘cadena’ == tipo de e? e .split(/s*,s*/) .map(e => e.match(/^(d+)x(d+)$/i)) .filter(e => e) .map(e => { let [t, n, i] = mi; devolver [parseInt(n, 10), parseInt(i, 10)]; }): Array.isArray(e)? x(e)? [e]
: e.filtro(x) : []; } función _(e) { return D(e).map($); } función $(e) { devolver e[0] + ‘x’ + mi[1]; } función j(e) { retorno { w: e[0]él[1] }; } función x(e) { retorno altura(e) && 2 === e.longitud && !isNaN(e[0]) && !esNaN(e[1]); } función q() { return ventana.top; } función N() { return ventana.self; } función W() { return ventana.ubicación; } función P() { devolver documento; } función V() { intentar { if (C.getWindowTop().location.href) return!0; } captura (e) { retorno !1; } } función M() { J() && b && console.log.apply(console, z(argumentos, ‘MENSAJE:’)); } función G() { J() && y && console.info.apply(console, z(argumentos, ‘INFO:’)); } función F() { J() && v && console.warn.apply(console, z(argumentos, ‘ADVERTENCIA:’)), I(o.qY.AUCTION_DEBUG, { tipo: ‘ADVERTENCIA’, argumentos }); } función H() { J() && E && console.error.apply(console, z(argumentos, ‘ERROR:’)), I(o.qY.AUCTION_DEBUG, { tipo: ‘ERROR’, argumentos }); } función L(e) { función t(t) { función de retorno() { para ( var n = argumentos.longitud, i = nueva matriz (n), r = 0; r { const e = { borde: ‘0px’, hspace: ‘0’, vspace: ‘0’, marginWidth: ‘0’, marginHeight: ‘0’, desplazamiento: ‘no’, frameBorder: ‘0’, enabletransparency: ‘true’ }; función de retorno (t, n) { let i = argumentos.length > 2 && void 0 !== argumentos[2]
? argumentos[2]
: {}; const r = t.createElement(‘iframe’); retorno (Object.assign(r, Object.assign({}, e, n)), Object.assign(r.style, i), r); }; })(); función K() { return Q( documento, { id: R(), ancho: 0, alto: 0, src: ‘about:blank’ }, { display: ‘none’, alto: ‘0px’, ancho: ‘0px’, borde: ‘0px’ }); } función Y(e) { devolverme(W().buscar)[e] || ”; } función X(e, t) { return g.call(e) === ‘[object ‘ + t + ‘]’; } función Z(e) { return X(e, c); } función ee(e) { return X(e, d); } const te = Array.isArray.bind(Array); función ne(e) { return X(e, l); } función es decir (e) { return X(e, u); } función re(e) { return X(e, f); } función oe(e) { return ( !e || (te(e) || ee(e) ? !(e.length > 0) : Object.keys(e).length { const r = function() { e.removeEventListener(‘cargar’, r), e.removeEventListener(‘error’, r), nulo!= n && window.clearTimeout(n), i(); }; e.addEventListener(‘cargar’, r), e.addEventListener(‘error’, r), nulo!= t && (n = ventana.setTimeout(r, t)); } función ce(e, t, n) { const i = nueva Imagen(); t && C.isFn(t) && de(i, n).entonces(t), (i.src = e); } función le(e) { if (!e) retorno; constante t = K(); varn; C.insertElement(t, documento, ‘cuerpo’), (n = t.contentWindow.document).open(), n.write(e), n.close(); } función ue(e, t, n) { let i = C.createTrackPixelIframeHtml( e, !1, ‘permitir scripts permitir-mismo-origen’), r = document.createElement(‘div’); r.innerHTML = i; let o = r.firstChild; t && C.isFn(t) && de(o, n).luego(t), C.insertElement(o, documento, ‘html’, !0); } función fe(e) { let t = argumentos.longitud > 1 && void 0 !== argumentos[1]
? argumentos[1]
: codificarURI; si (!e) devuelve ”; sea n = ‘
‘; devolver (n += ‘
‘), norte; } función ge(e) { return Array.from(e.matchAll(/$({[^}]+})/g)) .map(e => e[1]) .reduce( (e, t) => e.replace(‘$’ + encodeURIComponent(t), ‘$’ + t), encodeURI(e) ); } función pe(e, t, n) { return n.indexOf(e) === t; } función él(e, t) { return e.concat(t); } function me(e, t) { if (e) return t .flatMap(e => e.bids) .find(t => [‘bidId’, ‘adId’, ‘bid_id’].algunos(n => t[n] === mi)); } función be() { return (argumentos.longitud > 0 && void 0 !== argumentos[0]
? argumentos[0]
: A.adUnits ) .map(e => e.bids.map(e => e.bidders).reduce(él, [])) .reducir(él, []) .filter(e => void 0 !== e) .filter(pe); } función ye() { if ( window.googletag && Z(window.googletag.pubads) && Z(window.googletag.pubads().getSlots) ) return !0; } función ve() { if (window.apntag && Z(window.apntag.getTag)) return !0; } const Ee = (e, t) => t.cpm – e.cpm; función Ae(e) { let t = e.length; para (; t > 0; ) { sea n = Math.floor(Math.random() * t); t–; sea i = e[t]; (mi[t] = mi[n]), (mi[n] =yo); } devolver e; } función nosotros(e) { return (0, rQ)(e) || {}; } función Es decir() { intentar { return C.getWindowSelf() !== C.getWindowTop(); } captura (e) { retorno !0; } } función Te() { return /^((?!chrome|android|crios|fxios).)*safari/i.test( navigator.userAgent ); } función Ce(e, t) { si (e) return Object.entries(t).reduce((e, t) => { let [n, i] =t; return e.replace( new RegExp(‘\$\{‘ + n + ‘\}’, ‘g’), i || ” ); }, mi); } función Be() { return nueva Fecha().getTime(); } función Oe() { return ( (ventana.rendimiento && ventana.rendimiento.ahora && ventana.rendimiento.ahora()) || 0 ); } función Re() { return !1 !== i.$W.getConfig(‘deviceAccess’); } función Se() { if (window.navigator.cookieEnabled || document.cookie.length) return !0; } function ke(e, t) { if (t e[t]) .reduce((t, n) => Objeto.asignar(t, { [n]: mi[n] }), {}); } función _e(e) { const t = [‘banner’, ‘native’, ‘video’]norte = [‘instream’, ‘outstream’, ‘adpod’]; return ( !!Object.keys(e).every(e => t.includes(e)) && (!e.video || !e.video.context || n.includes(e.video.context)) ); } función $e(e, t, n) { return e .filter(e => e.code === t) .flatMap(e => e.bids) .filter(e => e.bidder === n) .map(e => e.params || {}); } función je() { return ( ‘1’ === navigator.doNotTrack || ‘1’ === ventana.doNotTrack || ‘1’ === navigator.msDoNotTrack || ‘sí’ === navigator.doNotTrack ); } const xe = (e, t) => e.getAdUnitPath() === t || e.getSlotElementId() === t; función qe(e) { return t => xe(e, t); } función Ne(e, t) { const n = Object.keys(e.mediaTypes || { banner: ‘banner’ }).join( ‘, ‘ ); return `n ${e.code} es un bloque de anuncios ${n}n que contiene postores que no admiten ${n}: ${t}.n Este postor no obtendrá demanda.n `; } const Nosotros = Número.isInteger.bind(Número); function Pe(e, t) { return ‘objeto’ != tipo de e ? {} : t.reduce((n, i, r) => { if (‘función’ == tipo de i) return n; let o = i, s = i.match(/^(.+?)sass(.+?)$/i); s && ((i = s[1]), (o = s[2])); sea a = e[i]; retorno (‘función’ == tipo de t[r + 1] &&(a=t[r + 1](a, n)), anular 0 !== a && (n[o] = a), n); }, {}); } function Ve(e, t) { return te(e) && (!t || e.length === t) && e.every(e => We(e)); } función Yo(e) { return e ? e .replace(/^?/, ”) .split(‘&’) .reduce((e, t) => { let [n, i] = t.split(‘=’); devolver ( /[]$/.prueba(n)? ((n = n.reemplazar(‘[]’, ”)), (e[n] = mi[n] || []), mi[n].push(i)): (e[n] = yo || ”), mi); }, {}) : {}; } function Ge(e, t) { let n = document.createElement(‘a’); t && ‘noDecodeWholeURL’ en t && t.noDecodeWholeURL? (n.href = e) : (n.href = decodeURIComponent(e)); let i = t && ‘decodeSearchAsString’ in t && t.decodeSearchAsString; return { href: n.href, protocolo: (n.protocol || ”).replace(/:$/, ”), nombre de host: n.hostname, puerto: +n.port, nombre de ruta: n.pathname.replace(/^(?!/)/, ‘/’), buscar: i ? n.search: C.parseQS(n.search || ”), hash: (n.hash || ”).replace(/^#/, ”), host: n.host || ventana.ubicación.host }; } función Fe(e) { return ( (e.protocol || ‘http’) + ‘://’ + (e.host || e.hostname + (e.port ? `:${e.port}` : ”)) + (e.pathname || ”) + (e.search? `?${C.formatQS(e.search || ”)}` : ”) + (e.hash? `#${e.hash}` : ”) ); } función He(e, t) { let { checkTypes: n = !1 } = argumentos.length > 2 && void 0 !== argumentos[2]
? argumentos[2]
: {}; si (e === t) devuelve !0; if (‘objeto’!= tipo de e || nulo === e || ‘objeto’!= tipo de t || nulo === t) return !1; const i = Array.isArray(e), r = Array.isArray(t); if (i && r) { if (e.length!== t.length) return!1; for (let i = 0; i < e.length; i++) if (!He(e[i]t[i]{ checkTypes: n })) return !1; devolver !0; } si (i || r) devuelve !1; if (n && e.constructor!== t.constructor) return!1; const o = Objeto.claves(e), s = Objeto.claves(t); if (o.length!== s.length) return!1; for (const i of o) { if (!Object.prototype.hasOwnProperty.call(t, i)) return !1; si (!él(e[i]t[i]{ checkTypes: n })) return !1; } devolver !0; } función Le(e) { for ( sea t = 0; t < (argumentos.longitud <= 1 ? 0 : argumentos.longitud – 1); t++ ) { const n = t + 1 < 1 || argumentos.longitud <= t + 1? vacío 0: argumentos[t + 1]; es decir (n) && ze(e, n); } devolver mi; } función ze(e, t) { if (!ie(e) || !ie(t)) return; const n = Objeto.claves(t); for (sea i = 0; i { mi[r].algunos(e => Él(e, t)) || mi[r].push(t); }) : (mi[r] = […o]): (y[r] =o); } } función Je(e) { let t = argumentos.longitud > 1 && void 0 !== argumentos[1]
? argumentos[1]
: 0, n = función(e, t) { if (Z(Math.imul)) return Math.imul(e, t); var n = (4194303 & e) * (t |= 0); return ( 4290772992 & e && (n += ((4290772992 & e) * t) | 0), 0 | n ); }, i = 3735928559 ^ t, r = 1103547991 ^ t; para (sea t, o = 0; o >> 16), 2246822507) ^ n(r ^ (r >>> 13), 3266489909)), (r = n(r ^ (r >>> 16), 2246822507) ^ n(i ^ (i >>> 13), 3266489909)), (4294967296 * (2097151 & r) + (i >>> 0)).toString() ); } función Qe(e) { let t = argumentos.longitud > 1 && void 0 !== argumentos[1]
? argumentos[1]
: función(e) { return e; }; const n = nuevo Mapa(), i = función() { const i = t.apply(esto, argumentos); return ( n.has(i) || n.set(i, e.apply(this, argumentos)), n.get(i) ); }; retorno (i.clear = n.clear.bind(n)), i; } función Ke(e, t) { Object.entries(t).forEach(t => { let [n, i] =t; devolver e.setAttribute(n, i); }); } función Ye(e, t) { let n = argumentos.longitud > 2 && void 0 !== argumentos[2]
? argumentos[2]
: e => e, i = 0, r = e.longitud && e.longitud – 1; constante o = n(t); para (; r – i > 1; ) { const t = i + Math.round((r – i) / 2); o > n(mi[t]) ? (yo = t) : (r = t); } para (; e.longitud > i && o > n(e[i]); ) yo ++; devolver yo; } const Xe = (función() { let e; return function() { if (void 0 !== e) return e; try { void 0 === window.CompressionStream ? (e = !1): (nueva ventana.CompressionStream(‘gzip’), (e = !0)); } catch (t) { e = !1; } return e; }; })(); función asíncrona Ze(e) { ‘cadena’! = tipo de e && (e = JSON.stringify(e)); const t = nuevo TextEncoder().encode(e), n = nuevo Blob([t]) .stream() .pipeThrough(nueva ventana.CompressionStream(‘gzip’)), i = esperar nueva respuesta(n).blob(), r = esperar i.arrayBuffer(); devolver nuevo Uint8Array(r); } }, 2621: (e, t, n) => { función i(e) { return ( !e?.gdprApplies || !0 === e?.vendorData?.propósito?.consentimiento?.[1]
); } nd(t, { C: () => i }); }, 6894: (e, t, n) => { nd(t, { Ak: () => m, BO: () => g, K7: () => p }); var i = n(3272); const r = ‘métricas de rendimiento’, o = ventana.rendimiento && ventana.rendimiento.ahora? () => ventana.rendimiento.now() : () => Fecha.now(), s = nuevo WeakMap(); función a() { let { ahora: e = o, mkNode: t = l, mkTimer: n = c, mkRenamer: i = e => e, nodos: r = s } = argumentos.longitud > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}; función de retorno() { retorno (función o(s) { let a = argumentos.longitud > 1 && void 0 !== argumentos[1]
? argumentos[1]
: e => ({ paraCada(t) { t(e); } }); a = yo(a); const d = ((c = ‘marcas de tiempo’), función(e) { return s.dfWalk({ visita(t, n) { const i = n[c]; si (i.hasOwnProperty(e)) devuelve yo[e]; } }); }); var c; función l(e, t) { const n = a(e); s.dfWalk({ seguir: (e, t) => t.propagate && (!e || !e.stopPropagation), visita(e, i) { n.forEach(n => { null == e ? (i.metrics[n] = t): (i.grupos.hasOwnProperty(n) || (i.grupos[n] = []), i.grupos[n].push(t)); }); } }); } función u(t) { return n(e, e => l(t, e)); } función f() { let e = {}; return ( s.dfWalk({ visita(t, n) { e = Object.assign( {}, !t || t.includeGroups ? n.groups : null, n.metrics, e ); } }), e ); } const g = { startTiming: u, medidaTime: function(e, t) { return u(e).stopAfter(t)(); }, medidaHookTime: función(e, t, n) { const i = u(e); return n( (function(e) { const t = i.stopBefore(e); return ( (t.bail = e.bail && i.stopBefore(e.bail)), (t.stopTiming = i), (t.untimed = e), t ); })(t) ); }, punto de control: función (t) { s.timestamps[t] = mi(); }, timeSince: function(t, n) { const i = d(t), r = null != i ? mi() – yo : nulo; devolver nulo! = n && l(n, r), r; }, timeBetween: function(e, t, n) { const i = d(e), r = d(t), o = null != i && null != r ? r-i: nulo; devolver nulo! = n && l(n, o), o; }, setMetric: l, getMetrics: f, fork: function() { let { propagate: e = !0, stopPropagation: n = !1, includeGroups: i = !1 } = argumentos.length > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}; retorno o(t([
[
s,
{
propagate: e,
stopPropagation: n,
includeGroups: i
}
]
]), a ); }, unirse: función(e) { let { propagar: t = !0, stopPropagation: n = !1, includeGroups: i = !1 } = argumentos.length > 1 && void 0 !== argumentos[1]
? argumentos[1]
: {}; const o = r.get(e); nulo! = o && o.addParent(s, { propagate: t, stopPropagation: n, includeGroups: i }); }, newMetrics: function() { return o(s.newSibling(), a); }, cambiar nombre con: función(e) { return o(s, e); }, toJSON: () => f() }; devolver r.set(g, s), g; })(t([])); }; } función d(e, t, n) { función de retorno() { t && t(); intente {return e.apply(esto, argumentos); } finalmente { n && n(); } }; } función c(e, t) { const n = e(); sea i = !1; función r() { yo || (t(e() – n), (i = !0)); } return ( (r.stopBefore = e => d(e, r)), (r.stopAfter = e => d(e, null, r)), r ); } función l(e) { return { métricas: {}, marcas de tiempo: {}, grupos: {}, addParent(t, n) { e.push([t, n]); }, newSibling: () => l(e.slice()), dfWalk() { let t, { visit: n, follow: i = () => !0, visitó: r = new Set(), inEdge: o } = arguments.length > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}; if (!r.has(this)) { if ((r.add(this), (t = n(o, this)), null != t)) return t; para (constante [s, a] de e) if ( i(o, a) && ((t = s.dfWalk({ visitar: n, seguir: i, visitar: r, inEdge: a })), null != t) ) return t; } } }; } const u = (() => { const e = function() {}, t = () => ({}), n = { forEach: e }, i = () => null; (i.stopBefore = e => e), (i.stopAfter = e => e); const r = Object.defineProperties( { dfWalk: e, newSibling: () => r, addParent: e }, Objeto.deEntries(
[‘metrics’, ‘timestamps’, ‘groups’].mapa(e => [e, { get: t }]) ) ); return a({ ahora: () => 0, mkNode: () => r, mkRenamer: () => () => n, mkTimer: () => i, nodos: { get: e, set: e } })(); })(); sea f = !0; función g(e) { return (f && e) || tú; } i.$W.getConfig(r, e => { f = !!e[r]; }); const p = (() => { const e = a(); función de retorno() { retorno f ? e() : u; }; })(); función h(e, t) { función de retorno (n, i) { función de retorno (r) { para ( var o = argumentos.longitud, s = nueva matriz (o > 1? o – 1: 0), a = 1; a e.metrics); h(‘addBidResponse.’, (e, t) => t.metrics); }, 5555: (e, t, n) => { nd(t, { U9: () => s, cb: () => a, v6: () => d }); var i = n(43), r = n(7873); const o = (0, rm)().setTimeout ?? iw, s = (0, rm)().¿Promesa?? yo; función a() { let e = argumentos.longitud > 0 && void 0 !== argumentos[0]
? argumentos[0]
: 0; devolver nuevo s(t => { o(t, e); }); } función d() { let e, t, { promesaFactory: n = e => nuevo s(e) } = argumentos.longitud > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}; función i(e) { return t => e(t); } return { promesa: n((n, i) => { (e = n), (t = i); }), resolver: i(e), rechazar: i(t) }; } }, 2713: (e, t, n) => { función i(e, t) { retorno e === t ? 0: mi 0 && void 0 !== argumentos[0]
? argumentos[0]
: mi => mi; devolver (t, n) => i(e(t), e(n)); } función o() { let e = argumentos.longitud > 0 && void 0 !== argumentos[0]
? argumentos[0]
: i; devolver (t, n) => -e(t, n) || 0; } función s() { for ( var e = argumentos.longitud, t = nueva matriz(e), n = 0; n 0 && void 0 !== argumentos[0]
? argumentos[0]
: i; devolver (t, n) => (e(n, t) 0 && void 0 !== argumentos[0]
? argumentos[0]
: i ) ); } nd(t, { Bp: () => a, Bq: () => f, NV: () => r, Vk: () => u }); const c = r(e => e.cpm), l = r(e => e.responseTimestamp), u = d(s(c, o(r(e => e.timeToRespond)))), f = d(s(c, o(l))); d(s(c, l)); }, 6853: (e, t, n) => { nd(t, { H: () => l }); var i = n(5555), r = n(1069); sea o = nulo, s = 0, a = []; función d() { documento.oculto? (o = Date.now()) : ((s += Date.now() – (o ?? 0)), (o = null), a.forEach(e => { let { callback: t, startTime: n, setTimerId: i } = e; return i(c(t, s – n)()); }), (a = [])); } función c(e, t) { const n = s; let i = setTimeout(() => { s === n && null == o ? e() : null != o ? a.push({ devolución de llamada: e, startTime: n, setTimerId(e) { i = e; } }): (i = c(e, s – n)()); }, t); retorno () => yo; } función l() { let { startTime: e = r.vE, ttl: t = () => nulo, monótono: n = !1, slack: o = 5e3 } = argumentos.length > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}; const s = nuevo mapa(), a = []re = []l = norte ? e => d.push(e) : e => d.splice( (0, r.El)(d, e, e => e.expiry), 0, e ); deja tu, f; function g() { if ((f && clearTimeout(f), d.length > 0)) { const e = (0, r.vE)(); (u = Matemáticas.max(e, d[0].expiry + o)), (f = c(() => { const e = (0, r.vE)(); let t = 0; for (const n of d) { if (n.expiry > e) break; a.forEach(e => { try { e(n.item); } catch (e) { (0, r.vV)(e); } }), s.delete(n.item), t++; } d.splice(0, t), (f = nulo), g() }, u – e)); } más f = nulo; } función p(n) { const r = {}, s = h; deja a; constante [d, c] = Object.entries({ inicio: e, delta: t }).map(e => { let t,
[d, c] = mi; función de retorno() { const e = (t = {}); i.U9.resolve(c(n)).entonces(n => { e === t && ((r[d] = n), s === h && null != r.start && null != r.delta && ((a = r.start + r.delta), l(p), (null == f || u > a + o) && g())); }); }; }), p = { elemento: n, actualizar: c, obtener caducidad() { devolver a; } }; devolver d(), c(), p; } sea h = {}; devolver {
[Symbol.iterator]: () => s.keys(), add(e) { !s.has(e) && s.set(e, p(e)); }, borrar() { (d.length = 0), g(), s.clear(), (h = {}); }, toArray: () => Array.from(s.keys()), actualizar() { (d.length = 0), g(); for (const e de s.values()) e.refresh(); }, onExpiry: e => ( a.push(e), () => { const t = a.indexOf(e); t >= 0 && a.splice(t, 1); } ) }; } document.addEventListener(‘cambio de visibilidad’, d); }, 3895: (e, t, n) => { nd(t, { H6: () => a, V0: () => c, Zy: () => d, aP: () => l, vk: () => u }); var i = n(1069), r = n(3272), o = n(9214), s = n(6881); const a = ‘fuera de la corriente’, d = nuevo mapa ([
[
‘mimes’,
e =>
Array.isArray(e) &&
e.length > 0 &&
e.every(e => ‘string’ == typeof e)
],
[‘minduration’, i.Fq],
[‘maxduration’, i.Fq],
[‘startdelay’, i.Fq],
[‘maxseq’, i.Fq],
[‘poddur’, i.Fq],
[‘protocols’, i.Uu],
[‘w’, i.Fq],
[‘h’, i.Fq],
[‘podid’, i.O8],
[‘podseq’, i.Fq],
[‘rqddurs’, i.Uu],
[‘placement’, i.Fq],
[‘plcmt’, i.Fq],
[‘linearity’, i.Fq],
[‘skip’, e => [1, 0].incluye(e)],
[‘skipmin’, i.Fq],
[‘skipafter’, i.Fq],
[‘sequence’, i.Fq],
[‘slotinpod’, i.Fq],
[‘mincpmpersec’, i.Et],
[‘battr’, i.Uu],
[‘maxextended’, i.Fq],
[‘minbitrate’, i.Fq],
[‘maxbitrate’, i.Fq],
[‘boxingallowed’, i.Fq],
[‘playbackmethod’, i.Uu],
[‘playbackend’, i.Fq],
[‘delivery’, i.Uu],
[‘pos’, i.Fq],
[‘api’, i.Uu],
[‘companiontype’, i.Uu],
[‘poddedupe’, i.Uu]
]); función c(e) { const t = e?.mediaTypes?.video; nulo != t && nulo == t.plcmt && (t.context === a || [2, 3, 4].incluye(t.ubicación)? (t.plcmt = 4): t.context!== a &&
[2, 6].includes(t.playbackmethod) && (t.plcmt = 2)); } función l(e, t) { const n = e?.mediaTypes?.video; (0, i.Qd)(n)? nulo! = n && Object.entries(n).forEach(r => { let [o, s] =r; si (!d.tiene(o)) retorno; d.get(o)(s) || (‘función’ == tipo de t ? t(o, s, e): (eliminar n[o](0, i.JE)( `Propiedad no válida en adUnit “${e.code}”: valor no válido para mediaTypes.video.${o} propiedad ORTB. La propiedad ha sido eliminada.` ))); }) : (0, i.JE)( ‘validateOrtbVideoFields: videoParams debe ser un objeto.’ ); } función u(e) { let { índice: t = snindex } = argumentos.length > 1 && void 0 !== argumentos[1]
? argumentos[1]
: {}; const n = t.getMediaTypes(e)?.video, i = n && n?.context, r = n && n?.useCacheKey, o = t.getAdUnit(e); devolver f(e, o, n, i, r); } const f = (0, o.A_)( ‘sync’, function(e, t, n, o, s) { if (n && (s || o !== a)) { const { url: t, useLocal: n } = r.$W.getConfig(‘cache’) || {}; return t || n || !e.vastXml || e.vastUrl ? !(!e.vastUrl && !e.vastXml) : ((0, i.vV)( ‘n Esta oferta contiene solo vastXml y no funcionará cuando no se especifica una URL de caché de oferta previa.n Intente habilitar el caché de oferta previa con tlpbjs.setConfig({ cache: {url: “…”} });n o el caché local con tlpbjs.setConfig({ cache: { useLocal: true }});n ‘ ), !1); } return ( !(o === a && !s) || !!(e.renderer || (t && t.renderer) || n.renderer) }, ‘checkVideoBidSetup’); } } ]); (self.tlpbjsChunk = self.tlpbjsChunk || []).empujar([
[769]{ 8944: (t, e, n) => { nd(e, { M: () => i }); varc = n(1069); función i() { const t = (0, c.Ot)(); prueba {const e = t.innerHeight || t.document.documentElement.clientHeight || t.document.body.clientHeight || 0; retorno { ancho: t.innerWidth || t.document.documentElement.clientWidth || t.document.body.clientWidth || 0, altura: e }; } captura (t) {retorno {}; } } } } ]); (self.tlpbjsChunk = self.tlpbjsChunk || []).empujar([
[139]{ 43: (t, e, n) => { nd(e, { k: () => c, w: () => r }); constante s = 0, l = 1; clase c {#t; #mi; constructor(t) { if (‘función’! = tipo de t) throw new Error(‘el solucionador no es una función’); constante mi = []norte = []; dejar [c, r] = [s, l].map( t => función(l) { if (t === s && ‘función’ == tipo de l?.entonces) l.entonces(c, r); else if (!e.length) for (e.push(t, l); n.length; ) n.shift()(); } ); prueba { t(c, r); } captura (t) { r(t); } (este.#t = e), (este.#e = n); } entonces(t, e) { const n = this.#t; devolver nuevo this.constructor((l, c) => { const r = () => { let r = n[1],
[h, i] = norte[0] === s ? [t, l] : [e, c]; if (‘función’ == tipo de h) { intentar { r = h(r); } captura (t) { return void c(t); } yo = l; } yo(r); }; n.longitud? r() : esto.#e.push(r); }); } catch(t) { return this.then(null, t); } finalmente (t) { let e; devuelve this.then( n => ((e = n), t()), n => ((e = this.constructor.reject(n)), t()) ).then(() => e); } estático #n(t, e, n) { let s = t.length; función l() { e.apply(esto, argumentos), –s this.resolve(t).entonces( t => l(!0, t, e), t => l(!1, t, e) ) ); } carrera estática(t) { return new this((e, n) => { this.#n(t, (t, s) => (t ? e(s) : n(s))); }); } estático todo(t) { return new this((e, n) => { let s = []; esto.#n( t, (t, e, l) => (t ? (s[l] = mi) : n(e)), () => mi(s) ); }); } static allSettled(t) { return new this(e => { let n = []; esto.#n( t, (t, e, s) => (n[s] =t? { estado: ‘cumplido’, valor: e } : { estado: ‘rechazado’, motivo: e }), () => e(n) ); }); } resolución estática(t) { return new this(e => e(t)); } rechazo estático (t) { return new this((e, n) => n(t)); } } función r(t) { let e = argumentos.longitud > 1 && void 0 !== argumentos[1]
? argumentos[1]
: 0; si (e > 0) devuelve setTimeout(t, e); t(); } } } ]); (self.tlpbjsChunk = self.tlpbjsChunk || []).empujar([
[85]{ 4595: (e, t, n) => { nd(t, { G: () => s }); const s = ‘(()=>{“use estricto”;window.render=function({ad:e,adUrl:t,width:n,height:i,instl:d},{mkFrame:r},s){if(!e&&!t)throw{reason:”noAd”,message:”Falta marcado de anuncio o URL”};{if(null==i){const e=s.documento?.cuerpo;[e,e?.parentElement].filter((e=>null!=e?.style)).forEach((e=>e.style.height=”100%”))}const h=s.document,o={ancho:n??”100%”,alto:i??”100%”};if(t&&!e?o.src=t:o.srcdoc=e,h.body.appendChild(r(h,o)),d&&s.frameElement){const e=s.frameElement.style;e.width=n?`${n}px`:”100vw”,e.height=i?`${i}px`:”100vh”}}}})();’; } } ]); (self.tlpbjsChunk = self.tlpbjsChunk || []).empujar([
[109]{ 965: (t, e, n) => { nd(e, { c5: () => o }); var a = n(5555); constante l = 0, c = 1, r = 2; función o(t) { let { apiName: e, apiVersion: n, apiArgs: o = [‘command’, ‘callback’, ‘parameter’, ‘version’]argumentos de devolución de llamada: s = [‘returnValue’, ‘success’]modo: i = l } = t, u = argumentos.longitud > 1 && void 0 !== argumentos[1]
? argumentos[1]
: ventana; const f = {}, d = `${e}Llamar`, p = `${e}Regresar`; función b(t) { const e = ‘cadena’ == tipo de t.data && t.data.includes(p)? JSON.parse(t.datos): t.datos; si (e?.[p]?.callId) { const t = e[p]; f.hasOwnProperty(t.callId) && f[t.callId](…s.mapa(e => t[e])); } } constante [k, m] = (función() { let t, n = u, a = !1; for (; null != n; ) { try { if (‘función’ == tipo de n[e]) { (t = n), (a = !0); romper; } } atrapar (t) {} intentar {si (n.frames[`${e}Locator`]) { t = norte; romper; } } catch (t) {} if (n === u.top) break; n = n.padre; } devolver [t, a]; })(); si (!k) regresa; función g(t) { return ( (t = Object.assign({ versión: n }, t)), o.map(e => [e, t[e]]) ); } función h(t, e, n, a) { const l = ‘función’ == tipo de t; función de retorno (r, o) { if ((a && a(), i !== c)) { (null == o || o ? e : n)(l ? void 0 : r); } l && t.apply(esto, argumentos); }; } sea v; return ( m ? (v = función() { let t = argumentos.longitud > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}; devolver nuevo a.U9((n, a) => { const o = k[e]( …g({ …t, devolución de llamada: t.callback || i === r ? h(t.callback, n, a): void 0 }).map(t => { let [e, n] =t; devolver n; }) ); (i === c || (nulo == t.callback && i === l)) && n(o); }); }) : (u.addEventListener(‘mensaje’, b, !1), (v = función(t) { let e = argumentos.length > 1 && void 0 !== argumentos[1] && argumentos[1]; devolver nuevo a.U9((n, a) => { const l = Math.random().toString(), r = {
[d]: { …Objeto.deEntries( g(t).filtro(t => { dejar [e] =t; devolver ‘devolución de llamada’! == e; }) ), callId: l } }; (F[l] = h( t?.callback, n, a, (e || null == t?.callback) && (() => { eliminar f[l]; }) )), k.postMessage(r, ‘*’), i === c && n(); }); })), Object.assign(v, { isDirect: m, close() { !m && u.removeEventListener(‘mensaje’, b); } }) ); } } } ]); (self.tlpbjsChunk = self.tlpbjsChunk || []).empujar([
[10]{ 3806: (t, n, e) => { ed(n, { yq: () => c }); var o = e(6894), a = e(1069), s = e(7873), i = e(5555), r = e(2604); función c() { let t, n, e, { espacio de nombres: c, displayName: l, consentDataHandler: u, parseConsentData: m, getNullConsent: d, cmpHandlers: f, DEFAULT_CMP: g = ‘iab’, DEFAULT_CONSENT_TIMEOUT: p = 1e4 } = argumentos.length > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}; función C(t) { return `consentManagement.${c} ${t}`; } función D(t, n) { return t( Object.assign({ [`${c}Consent`]: u.getConsentData() }, n) ); } función h() { return n().then(t => { let { error: n } = t; return { error: n, consentData: u.getConsentData() }; }); } función T() { null == t && ((t = (función(t, n) { const e = new WeakSet(); return (0, o.Ak)(t, function(t, o) { return n() .then(n => { let { consentData: s, error: i } = n; !i || (s && e.has(i)) || (e.add(i), (0, a.JE)(i.mensaje, …(i.args || []))), t.call(esto, o); }) .catch(n => { (0, a.vV)( `${n?.message} Cancelando subasta según la configuración de consentManagement.`, …(n?.args || []) ), t.stopTiming(), ‘función’ == tipo de o.bidsBackHandler? o.bidsBackHandler() : (0, a.vV)(‘Error al ejecutar bidsBackHandler’); }); }); })(c, () => n())), (0, sm)().requestBids.before(t, 50), r.U3.before(D), (0, a.fH)( `${l} módulo consentManagement ha sido activado…` )); } función de retorno (o) { si (((o = o?.[c]), !o || ‘objeto’ != tipo de o)) return ( (0, a.JE)( C(‘config no definida, saliendo del módulo de administrador de consentimiento’) ), null != t && ((0, sm)() .requestBids.getHooks({ gancho: t }) .remove(), r.U3.getHooks({ gancho: D }).remove(), (t = null)), {} ); sea b, k; (0, a.O8)(o.cmpApi)? (b = o.cmpApi): ((b = g), (0, a.fH)( C( `config no especificó cmp. Usando la configuración predeterminada del sistema (${g}).` ) )), (0, a.Et)(o.timeout)? (k = o.timeout): ((k = p), (0, a.fH)( C( `config no especificó el tiempo de espera. Usando la configuración predeterminada del sistema (${p}).` ) )); const H = (0, a.Et)(o.actionTimeout)? o.actionTimeout: nulo; sea w; ‘estático’ === b? (0, a.Qd)(o.consentData)? ((e = o.consentData), (k = null), (w = () => new i.U9(t => t(u.setConsentData(m(e)))))) : (0, a.vV)( C( “config with cmpApi: ‘static’ no especificó consentData. No habrá consentimientos disponibles para los adaptadores.” ) ): f.hasOwnProperty(b)? (w = f[b]) : (u.setConsentData(null), (0, a.JE)( `${l} marco CMP (${b}) no es un marco compatible. Abortando el módulo consentManagement y reanudando la subasta.` ), (w = () => i.U9.resolve())); const y = () => (función(t) { let n, { nombre: e, consentDataHandler: o, setupCmp: a, cmpTimeout: s, actionTimeout: i, getNullConsent: r } = t; return ( o.enable(), new Promise((t, c) => { let l, u = !1; function m(a) { null != n && clearTimeout(n), (n = null != a ? setTimeout(() => { const n = o.getConsentData() ?? (u ? l : r()), a = ‘tiempo de espera de espera para ‘ + (u ? ‘acción del usuario en CMP’: ‘CMP para cargar’); o.setConsentData(n), t({ consentData: n, error: new Error(`${e} ${a}`) }); }, a): null } a(función(t) { (l = t), u || ((u = !0), nulo != i && m(i)); }).entonces( () => t({ consentData: o.getConsentData() }), c ), nulo != s && m(s }) .finally(() => { n && clearTimeout(n); }) .catch(t => { throw (o.setConsentData(null), t }) })({ nombre: l, consentDataHandler: u, setupCmp: w, cmpTimeout: k, actionTimeout: H, getNullConsent: d }); return ( (n = (() => { let t; return function() { return ( null == t && (t = y().catch(n => { throw ((t = null), n); })), t ); }; })()), T(), { cmpHandler: b, cmpTimeout: k, actionTimeout: H, staticConsentData: e, loadConsentData: h, requestBidsHook: t } ); }; } } } ]); (self.tlpbjsChunk = self.tlpbjsChunk || []).empujar([
[618]{ 981: (e, t, i) => { id(t, { m: () => h }); var r = i(9466), d = i(1e3), n = i(433), a = i(1069), s = i(5825), b = i(1445), o = i(3272), p = i(3172); varc = i(3323); varl = i(7873); varf = i(1371); var tu = i(3005); constante v = {
[d.S3]: { textPrebid: { fn: function(e, t) { (0, pJ)( e, ‘ext.prebid’, (0, a.D9)( { subastatimestamp: t.auctionStart, segmentación: { includewinners: !0, includebidderkeys: !1 } }, e.ext?.prebid ) ), o.$W.getConfig(‘debug’) && (e.ext.prebid.debug =!0); } }, extPrebidChannel: { fn: function(e) { (0, pJ)( e, ‘ext.prebid.channel’, Object.assign( { nombre: ‘pbjs’, versión: (0, lm)().version }, e.ext?.prebid?.channel ) ); } }, extPrebidAliases: { fn: function(e, t, i) { let { am: r = b.Ay } = argumentos.length > 3 && void 0 !== argumentos[3]
? argumentos[3]
: {}; if (r.aliasRegistro[t.bidderCode]) {const i = r.bidderRegistry[t.bidderCode]; if (!i || !i.getSpec().skipPbsAliasing) { (0, pJ)( e, `ext.prebid.aliases.${t.bidderCode}`, r.aliasRegistry[t.bidderCode]
); const d = o.$W.getConfig(`gvlMapping.${t.bidderCode}`) || i?.getSpec?.().gvlid; d && (0, pJ)( e, `ext.prebid.aliasgvlids.${t.bidderCode}`, d ); } } } } },
[d.Tb]: { params: { fn: cW }, adUnitCode: { fn: function(e, t) { const i = t.adUnitCode; i && (0, pJ)(e, ‘ext.prebid.adunitcode’, i); } } },
[d.WR]: { mediaType: { fn: entonces, prioridad: 99 }, videoCache: { fn: function(e, t) { if (e.mediaType === f.G_) { let { cacheId: i, url: r } = (0, nA)(t, ‘ext.prebid.cache.vastXml’) || {}; if (!i || !r) { const { hb_uuid: e, hb_cache_host: d, hb_cache_path: a } = (0, nA)(t, ‘ext.prebid.targeting’) || {}; e && d && a && ((i = e), (r = `https://${d}${a}?uuid=${e}`)); } i && r && Object.assign(e, { videoCacheKey: i, vastUrl: r }); } }, prioridad: -10 }, bidderCode: { fn(e, t, i) { (e.bidderCode = i.seatbid.seat), (e.adapterCode = (0, nA)(t, ‘ext.prebid.meta.adaptercode’) || i.bidRequest?.bidder || e.bidderCode); } }, pbsBidId: { fn(e, t) { const i = (0, nA)(t, ‘ext.prebid.bidid’); (0, a.O8)(i) && (e.pbsBidId = i); } }, adserverTargeting: { fn(e, t) { const i = (0, nA)(t, ‘ext.prebid.targeting’); (0, a.Qd)(i) && (e.adserverTargeting = i); } }, textPrebidMeta: { fn(e, t) { e.meta = (0, a.D9)( {}, (0, nA)(t, ‘ext.prebid.meta’), e.meta ); } }, pbsWinTrackers: { fn: función(e, t) { (e.eventtrackers = e.eventtrackers || []),
[
[t.burl, u.OA],
[t?.ext?.prebid?.events?.win, u.RO]
].filter(t => { dejar [i, r] =t; return ( i && null == e.eventtrackers.find(e => { let { método: t, evento: d, url: n } = e; return d === r && t === u.Ni && n === i; }) ); }) .forEach(t => { dejar [i, r] =t; e.eventtrackers.push({ método: u.Ni, evento: r, url: i }); }); } } },
[d.Cf]: { serverSideStats: { fn(e, t, i) { Object.entries({ errores: ‘serverErrors’, Responsetimemillis: ‘serverResponseTimeMs’ }).forEach(e => { let [r, d] = mi; const a = (0, nA)( t, `ext.${r}.${i.bidderRequest.bidderCode}`); a && ((i.bidderRequest[d] = a), i.bidRequests.forEach(e => (e[d] = a))); }); } } } }; var g = i(9766); const h = (0, a.Bj)(() => (0, rU)((0, gT)(), v, (0, d.yB)(d.e4))); }, 5825: (e, t, i) => { id(t, { o: () => a, s: () => n }); varr = i(1371), d = i(5561); constante norte = { [r.D4]: ‘pancarta’, [r.s6]: ‘nativo’, [r.G_]: ‘video’ }; función a(e, t, i) { let a = i.mediaType; un || ((a = dXhasOwnProperty(t.mtype) ? dX[t.mtype]
: t.ext?.prebid?.tipo), n.hasOwnProperty(a) || (a = r.D4)), (e.mediaType = a); } }, 3323: (e, t, i) => { id(t, { W: () => d }); varr = i(3172); función d(e, t) { sea i = t.params; i && (0, rJ)(e, `ext.prebid.bidder.${t.bidder}`, i); } } } ]); (self.tlpbjsChunk = self.tlpbjsChunk || []).empujar([
[498]{ 9766: (e, t, r) => { rd(t, { T: () => f, A: () => m }); const n = nuevo mapa débil(); var i = r(1069), s = r(1371); var o = r(3895); var a = r(5561); var d = r(1e3), p = r(3858); constante c = {
[d.S3]: { fpd: { prioridad: 99, fn(e, t) { (0, i.D9)(e, t.ortb2); } }, onlyOneClient: { prioridad: -99, fn: (0, p.i8)(‘Solicitud ORTB’) }, accesorios: { fn(e, t) { Object.assign(e, { id: e.id || (0, i.lk)(), prueba: e.test || 0 }); const r = parseInt(t.timeout, 10); esNaN(r) || (e.tmax = r); } } },
[d.Tb]: { fpd: { prioridad: 99, fn(e, t) { (0, i.D9)(e, t.ortb2Imp); } }, identificación: { fn(e, t) { e.id = t.bidId; } }, banner: { fn: function(e, t, r) { if (r.mediaType && r.mediaType!== s.D4) return; const n = t?.mediaTypes?.banner; si (n) { const r = { topframe: !0 === (0, i.al)() ? 0: 1}; n.sizes && null == t.ortb2Imp?.banner?.format && (r.format = (0, iy$)(n.sizes).map(i.cf)), n.hasOwnProperty(‘pos’) && (r.pos = n.pos), (e.banner = (0, i.D9)(r, e.banner)); } } }, pbadslot: { fn(e) { const t = e.ext?.data?.pbadslot; (t && ‘cadena’ == tipo de t) || eliminar e.ext?.data?.pbadslot; } }, seguro: { fn(e, t) { e.secure = e.secure ?? 1; } } },
[d.WR]: { mediaType: { prioridad: 99, fn: aK }, banner: { fn: (función() { let { createPixel: e = e => (0, i.Tz)(decodeURIComponent(e), i.Bk) } = argumentos.length > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}; función de retorno (t, r) { t.mediaType === s.D4 && (r.adm && r.nurl? (t.ad = e(r.nurl) + r.adm): r.adm? (t.ad = r.adm): r.nurl && (t.adUrl = r.nurl)); }; })() }, accesorios: { fn(e, t, r) { Object.entries({ requestId: r.bidRequest?.bidId, seatBidId: t.id, cpm: t.price, moneda: r.ortbResponse.cur || r.currency, ancho: tw, alto: th, wratio: t.wratio, hratio: t.hratio, dealId: t.dealid, creative_id: t.crid, creativeId: t.crid, burl: t.burl, ttl: t.exp || netRevenue: r.netRevenue }) .filter(e => { let [t, r] = mi; devolver vacío 0! == r; }) .forEach(t => { dejar [r, n] =t; regresar (e[r] = norte); }), e.meta || (e.meta = {}), t.adomain && (e.meta.advertiserDomains = t.adomain), t.ext?.dsa && (e.meta.dsa = t.ext.dsa), t.cat && ((e.meta.primaryCatId = t.cat[0]), (e.meta.secundaryCatIds = t.cat.slice(1))), t.attr && (e.meta.attr = t.attr), t.ext?.eventtrackers && (e.eventtrackers = (e.eventtrackers ?? []).concat(t.ext.eventtrackers)); } } } }; (do[d.Tb].native = { fn: function(e, t, r) { if (r.mediaType && r.mediaType!== s.s6) return; sea n = t.nativeOrtbRequest; n && ((n = Object.assign({}, r.nativeRequest, n)), n.assets?.length ? (e.native = (0, i.D9)( {}, { request: JSON.stringify(n), ver: n.ver }, e.native )): (0, i.JE)( ‘mediaTypes.native está configurado, pero no se especificaron activos. Solicitud nativa omitida.’, t )); } }), (c[d.WR].native = { fn: function(e, t) { if (e.mediaType === s.s6) { let r; if (((r = ‘string’ == typeof t.adm? JSON.parse(t.adm): t.adm), !(0, i.Qd)(r) || !Array.isArray(r.assets))) throw new Error( ‘La respuesta nativa ORTB no contenía activos’); e.nativo = {ortb:r}; } } }), (c[d.Tb].video = { fn: function(e, t, r) { if (r.mediaType && r.mediaType!== s.G_) return; const n = t?.mediaTypes?.video; if (!(0, i.Im)(n)) { const t = Object.fromEntries( Object.entries(n).filter(e => { let [t] = mi; devolver o.Zy.has(t); }) ); if (n.playerSize) { const e = (0, iy$)(n.playerSize).map(i.cf); e.length > 1 && (0, i.JE)( ‘la solicitud de video especifica más de un tamaño de jugador; todos menos el primero serán ignorados’ ), Object.assign(t, e[0]); } e.video = (0, i.D9)(t, e.video); } } }), (c[d.WR].video = { fn: function(e, t, r) { e.mediaType === s.G_ && (r?.imp?.video?.w && r?.imp?.video?.h && ([e.playerWidth, e.playerHeight] = [
r.imp.video.w,
r.imp.video.h
]), t.adm && (e.vastXml = t.adm), t.nurl && (e.vastUrl = t.nurl)); } }); var tu = r(9466); función m() { let { contexto: e = {}, procesadores: t = f, anulaciones: r = {}, imp: s, solicitud: o, bidResponse: a, respuesta: p } = argumentos.length > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}; const c = nuevo mapa débil(); función u(e, i, s, o) { sea a; función de retorno() { retorno ( nulo == a && (a = (función() { let a = s.bind( this, (function(e) { let t = argumentos.length > 1 && void 0 !== argumentos[1]
? argumentos[1]
: {}; if (!n.has(e)) { const t = Objeto.entradas(e); t.sort((e, t) => (e = e[1].prioridad || 0) === (t = t[1].prioridad || 0)? 0 : e > t ? -1: 1), n.set(e, t.map(e => {dejar [t, r] = mi; devolver [t, r.fn]; }) ); } const r = n .get(e) .filter(e => { dejar [r] = mi; devolver !t.hasOwnProperty(r) || t[r]; }) .map(función(e) { dejar [r, n] = mi; devolver t.hasOwnProperty(r)? t[r].bind(esto, n): n; }); función de retorno() { const e = Array.from(argumentos); r.forEach(t => { t.apply(esto, e); }); }; })(t()[e] || {},r[e] || {}) ); return ( i && (a = i.bind(this, a)), function() { intentar { return a.apply(this, argumentos); } catch (e) { o.call(this, e, …arguments); } } ); })()), a.apply(esto, argumentos) ); }; } const m = u( d.Tb, s, function(e, t, r) { const n = {}; return e(n, t, r), n; }, function(e, t, r) { (0, i.vV)( ‘Error al convertir bidRequest a ORTB imp; solicitud omitida.’, { error: e, bidRequest: t, contexto: r } ); } ), l = u( d.S3, o, function(e, t, r, n) { const i = { imp: t }; return e(i, r, n), i }, function(e, t, r, n) { throw ((0, i.vV)(‘Error al convertir a solicitud ORTB’, { error: e, imps: t, bidderRequest: r, contexto: n }), b = u( d.WR, a, function(e, t, r) { const n = {}; return e(n, t, r), n }, function(e, t, r) { (0, i.vV)( ‘Error al convertir ORTB seatbid.bid a bidResponse; oferta omitida.’, { error: e, oferta: t, contexto: r } ); function(e, t, r, n) { const i = { bids: t }; return e(i, r, n), i }, function(e, t, r, n) { throw ((0, i.vV)( ‘Error al convertir de la respuesta ORTB’, { error: e, bidResponses: t, ortbResponse: r, contexto: n } ), e); return { toORTB(t) { let { bidderRequest: r, bidRequests: n, contexto: s = {} } = t; norte = norte || r.ofertas; const o = { req: Object.assign({ bidRequests: n }, e, s), imp: {} }; o.req.impContext = o.imp; const a = n .map(t => { const n = Object.assign( { bidderRequest: r, reqContext: o.req }, e, s ), a = m(t, n); if (null != a) { if (a.hasOwnProperty(‘id’)) return ( Object.assign(n, { bidRequest: t, imp: a }), (o.imp[a.id] = n), a); (0, i.vV)( ‘El imp ORTB convertido no especifica una identificación, ignorando la solicitud de oferta’, t, a ); } }) .filter(Booleano), d = l(a, r, o.req); return (o.req.bidderRequest = r), null != d && c.set(d, o), d; }, deORTB(e) { let { solicitud: t, respuesta: r } = e; constante n = c.get(t); if (null == n) arroja un nuevo error (‘ortbRequest pasada a `fromORTB` debe ser el mismo objeto devuelto por `toORTB`’); función s(e) { let r = argumentos.longitud > 1 && void 0 !== argumentos[1]
? argumentos[1]
: {}; return Object.assign(e, {ortbRequest: t}, r); } const o = Object.fromEntries( (t.imp || []).mapa(e => [e.id, e]) ), a = (r.asientobid || []) .flatMap(e => (e.bid || []).map(t => { if ( o.hasOwnProperty(t.impid) && n.imp.hasOwnProperty(t.impid) ) return b( t, s(n.imp[t.impid]{ diablillo: o[t.impid]oferta de asiento: e, ortbResponse: r }) ); (0, i.vV)( ‘Oferta de asiento de respuesta ORTB[].licitación[].impid no coincide con ningún diablillo solicitado; ignorando la oferta’, t ); }) ) .filtro(Booleano); devolver y(a, r, s(n.req)); } }; } const f = (0, i.Bj)(() => (0, uU)(c, (0, d.yB)(d.qN))); }, 9466: (e, t, r) => { rd(t, { U: () => i }); var norte = r(1e3); function i() { for ( var e = argumentos.length, t = new Array(e), r = 0; r 1? yo(…t):t[0]; devolver Object.fromEntries( n.zt.map(e => [e, Object.assign({}, s[e]oh[e])]) ); } }, 5561: (e, t, r) => { rd(t, { K: () => s, X: () => i }); varn = r(1371); const i = { 1: n.D4, 2: n.G_, 4: n.s6 }; función s(e, t, r) {si (e.mediaType) retorno; constante n = r.mediaType; if (!n && !i.hasOwnProperty(t.mtype)) arroja un nuevo error (‘No se puede determinar el tipo de medio para la respuesta’); e.mediaType = n || i[t.mtype]; } } } ]); (self.tlpbjsChunk = self.tlpbjsChunk || []).empujar([
[225]{ 6743: (n, t, l) => { ld(t, { x4: () => i }); var e = l(7873), r = l(2713); función u(n, t, l) { let r = !(argumentos.longitud > 3 && void 0 !== argumentos[3]) || argumentos[3]; si (t === l) devuelve n; sea u = n; intente { u = (0, em)().convertCurrency(n, t, l); } atrapar (n) { si (!r) lanzar n; } devolverte; } función i() { let n = argumentos.longitud > 0 && void 0 !== argumentos[0]
? argumentos[0]
: norte => [n.cpm, n.currency]t = argumentos.longitud > 1 && void 0 !== argumentos[1]
? argumentos[1]
: (función() { let n = argumentos.longitud > 0 && void 0 !== argumentos[0]
? argumentos[0]
: nulo, t = !( argumentos.longitud > 1 && nulo 0 !== argumentos[1]
) || argumentos[1]l = argumentos.longitud > 2 && void 0 !== argumentos[2]
? argumentos[2]
: tu; función de retorno (e, r) { retorno nulo == n && (n = r), l(e, r, n, t); }; })(); return (0, r.NV)(l => t.apply(null, n(l))); } } } ]); (self.tlpbjsChunk = self.tlpbjsChunk || []).empujar([
[764]{ 2339: (o, n, t) => { función e(o, n) { función de retorno() { const t = document.domain.split(‘.’), e = `_gd${Date.now()}_${n}`; for (sea n, i, s = 0; s e }); } } ]); (self.tlpbjsChunk = self.tlpbjsChunk || []).empujar([
[81]{ 6117: (e, t, n) => { var r = n(7873), s = n(1069), a = n(3172), o = n(3272), c = n(6916), i = n(1e3), p = n(687), d = n(965), l = n(3806); sea u, g, f = {}; const C = 2, m = { iab: function(e) { return new Promise((t, n) => { const r = (0, d.c5)({ apiName: ‘__tcfapi’, apiVersion: C, apiArgs: [‘command’, ‘version’, ‘callback’, ‘parameter’]
}); r || n (nuevo error (‘TCF2 CMP no encontrado’)), r.isDirect? (0, s.fH)( ‘Se puede acceder directamente a la API de CMP detectada, llamándola ahora…’ ): (0, s.fH)( ‘La CMP detectada está fuera del iframe actual donde se encuentra Prebid.js, llamándola ahora…’ ), r({ comando: ‘addEventListener’, callback: function(r, a) { if ((0, s.fH)(‘Recibido una respuesta de CMP’, r), a) ) { intentar { e(b(r)); } capturar (e) {} if ( !1 === r.gdprApplies || ‘tcloaded’ === r.eventStatus || ‘useractioncomplete’ === r.eventStatus ) intentar { c.mW.setConsentData(b(r)), t() } catch (e) { n(e); no se puede registrar la función de devolución de llamada. Verifique la configuración de CMP.’ } }); }); } }; function b(e) { if ( (function() { const t = e && ‘boolean’ == tipo de e.gdprApplies ? e.gdprApplies : u, n = e && e.tcString; return !( ‘boolean’ == typeof t && (!0 !== t || (n && (0, s.O8)(n))) ); })() ) throw Object.assign (nuevo error (‘CMP devolvió un valor inesperado durante el proceso de búsqueda’), { args: [e] } ); devolver D(e); } función D(e) { const t = { cadena de consentimiento: e ? e.tcString: void 0, sellerData: e || void 0, gdprApplies: e && ‘boolean’ == tipo de e.gdprApplies? e.gdprAplica: u }; return (e && e.addtlConsent && (0, s.O8)(e.addtlConsent) && (t.addtlConsent = e.addtlConsent), (t.apiVersion = C), t); } const v = (0, l.yq)({ espacio de nombres: ‘gdpr’, displayName: ‘TCF’, consentDataHandler: c.mW, cmpHandlers: m, parseConsentData: b, getNullConsent: () => D(null) }); o.$W.getConfig(‘consentManagement’, e => (función(e) { return ( (e = e && (e.gdpr || e.usp || e.gpp ? e.gdpr : e)), null != e?.consentData?.getTCData && (e.consentData = e.consentData.getTCData), (u = !0 === e?.defaultGdprScope), (g = !!e?.dsaPlatform), (f = v({ gdpr: e })), f.loadConsentData?.()?.catch?.(() => null) })(e.consentManagement) ), pwbefore(function(e, t) { return e( t.then(e => { const t =); c.mW.getConsentData(); return ( t && (‘boolean’ == tipo de t.gdprApplies && (0, aJ)(e, ‘regs.ext.gdpr’, t.gdprApplies ? 1: 0), (0, aJ)(e, ‘user.ext.consent’, t.consentString)), g && (0, aJ)(e, ‘regs.ext.dsa.dsarequired’, 3), e }) }), (0, i.pS)({ tipo: i.S3, nombre: ‘gdprAddtlConsent’, fn: función(e, t) { const n = t.gdprConsent?.addtlConsent; n && ‘string’ == tipo de n && (0, aJ)( e, ‘user.ext.ConsentedProvidersSettings.consented_providers’, n } }), (0, rE)(‘consentManagementTcf’); } }, mi => { miO(0, [802, 109, 10, 769, 139, 85]() => { return (t = 6117), e((es = t)); var t; }); eO(); } ]); (self.tlpbjsChunk = self.tlpbjsChunk || []).empujar([
[662]{ 6056: (n, t, e) => { var o = e(7873), a = e(1069), s = e(3172), i = e(3272), c = e(1445), r = e(6916), u = e(6894), l = e(9214), f = e(687), g = e(965); constante d = ‘iab’; sean p, m, P = d, v = 50, S = !1; const b = { iab: function(n) { let { onSuccess: t, onError: e } = n; let o = (function() { const n = {}; return { consentDataCallback: (o, a) => { a && o.uspString && (n.usPrivacy = o.uspString), n.usPrivacy ? h(n, { onSuccess: t, onError: e }): e(‘No se puede obtener la cadena de consentimiento USP.’); } }; })(); const s = (0, g.c5)({ apiName: ‘__uspapi’, apiVersion: 1, apiArgs: [‘command’, ‘version’, ‘callback’]
}); if (!s) return e(‘USP CMP no encontrado.’); s.isDirect? (0, a.fH)( ‘Se puede acceder directamente al CMP USP detectado, llamándolo ahora…’ ): (0, a.fH)( ‘El CMP USP detectado está fuera del iframe actual donde se encuentra Prebid.js, llamándolo ahora…’ ); s({ comando: ‘getUSPData’, devolución de llamada: o.consentDataCallback }), s({ comando: ‘registerDeletion’, devolución de llamada: (n, t) => (null == t || t) && c.Ay.callDataDeletionRequest(n) }).catch(n => { (0, a.vV)(‘Error al invocar CMP `registerDeletion`:’, norte); }, estático: función (n) { let { onSuccess: t, onError: e } = n; h(p, {onSuccess: t, onError: e }); } }; función D(n) { sea t = nulo, e = !1; function o(o, a) { if ( (null != t && clearTimeout(t), (e = !0), r.t6.setConsentData(o), null != n) ) { for ( var s = arguments.length, i = new Array(s > 2 ? s – 2 : 0), c = 2; c 1 ? t – 1 : 0), a = 1; a 1 ? s – 1 : 0), c = 1; c 0 && void 0 !== argumentos[0] && argumentos[0]; S || ((0, a.fH)( ‘El módulo USPAPI consentManagement ha sido activado’ + (n ? ” : ` usando valores predeterminados (api: ‘${P}’, tiempo de espera: ${v}ms)`) ), (S = !0), r.t6.enable()), D(); } i.$W.getConfig(‘consentManagement’, n => (function(n) { ((n = n && n.usp) && ‘object’ == typeof n) || (0, a.JE)( ‘consentManagement.usp configuración no definida, usando valores predeterminados’ ), n && (0, a.O8)(n.cmpApi) ? (P = n.cmpApi): ((P = d), (0, a.fH)( `la configuración de consentManagement.usp no especificó cmpApi. Usando la configuración predeterminada del sistema (${d}).` )), n && (0, a.Et)(n.timeout) ? tiempo de espera usando la configuración predeterminada del sistema (50).’ )), ‘static’ === P && ((0, a.Qd)(n.consentData) && (0, a.Qd)(n.consentData.getUSPData) ? (n.consentData.getUSPData.uspString && (p = { usPrivacy: n.consentData.getUSPData.uspString }), (v = 0)) : (0, a.vV)( “consentManagement config with cmpApi: ‘static’ no especificó consentData. No habrá consentimientos disponibles para los adaptadores.” )), U(!0 })(n.consentManagement) ), (0, l.Yn)(‘requestBids’).before(y, 50), fwbefore(function(n, t) { return n( t.then(n => { const t = r.t6.getConsentData(); devolver t && (0, sJ)(n, ‘regs.ext.us_privacy’, t), n }) }), (0, oE)(‘consentManagementUsp’); } }, n => { nO(0, [109, 802, 769, 139, 85]() => { return (t = 6056), n((ns = t)); var t; }); No(); } ]); (self.tlpbjsChunk = self.tlpbjsChunk || []).empujar([
[931]{ 2843: (e, t, o) => { var n = o(7873), r = o(1069), a = o(8044), c = o(7934), i = o(9214), s = o(2938), d = o(5569), l = o(6916); const p = ‘criteo’, g = (0, s.vM)({ moduleType: d.fW, moduleName: p }), u = ‘cto_bidid’, m = ‘cto_bundle’, b = ‘html5’, I = ‘cookie’, y = new Date(0).toString(), f = new Date((0, r.vE)() + 33696e6).toString(); función S(e) { let t = argumentos.longitud > 1 && void 0 !== argumentos[1] && argumentos[1]; const o = (0, r.Dl)(e, { noDecodeWholeURL: !0 }); volver t ? `${o.hostname}`: `${o.protocol}://${o.hostname}${o.port? ‘:’ + o.puerto : ”}/`; } función h(e, t) { return e?.almacenamiento?.tipo === b ? g.getDataFromLocalStorage(t): e?.storage?.type === I? g.getCookie(t) : g.getCookie(t) || g.getDataFromLocalStorage(t); } función C(e, t, o, n) { t && o && (e?.storage?.type === b ? g.setDataInLocalStorage(t, o) : (e?.storage?.type === I || g.setDataInLocalStorage(t, o), v(t, o, f, n, !0))); } función v(e, t, o, n, r) { const a = n.split(‘.’); for (sea n = 0; n { const n = JSON.parse(t); if ( (n.pixels && n.pixels.forEach(t => (función(e, t, o) { o.writeBundleInStorage && o.bundlePropertyName && o.storageKeyName ? (0, a.RD)( o.pixelUrl, { éxito: n => { if (n) { const r = JSON.parse(n); r && r[o.bundlePropertyName] && C( e, o.nombreClaveAlmacenamiento, r[o.bundlePropertyName],t); } }, error: e => { (0, r.vV)( ‘criteoIdSystem: no se puede sincronizar la identificación de usuario’, e ); } }, void 0, {método: ‘GET’, withCredentials: !0 } ): (0, rz$)(o.pixelUrl); })(e, d, t) ), n.acwsUrl) ) { (‘cadena’ == tipo de n.acwsUrl? [n.acwsUrl]
: n.acwsUrl ).forEach(e => (0, rz$)(e)); } else n.paquete && C(e, m, n.paquete, d); si (n.bidId) { C(e, u, n.bidId, d); const t = { criteoId: n.bidId }; Antiguo Testamento); } else v((c = u), ”, y, d, !0), g.removeDataFromLocalStorage(c), o(); var c; }, error: e => { (0, r.vV)(‘criteoIdSystem: no se puede sincronizar la identificación de usuario’, e), o(); } }; (0, a.RD)(f, h, void 0, { método: ‘GET’, contentType: ‘application/json’, withCredentials: !0 }); } const D = { nombre: p, gvlid: 91, decodificar: e => e, getId(e) { let t = (función(e) { return { paquete: h(e, m), dnaBundle: h(e, ‘cto_dna_bundle’), bidId: h(e, u) }; })(e); return {id: t.bidId? {criteoId: t.bidId}: nulo 0, devolución de llamada: o => U(e, t, o) }; }, eids: { criteoId: { fuente: ‘criteo.com’, atype: 1 } } }; (0, i.bz)(‘userId’, D), (0, nE)(‘criteoIdSystem’); } }, mi => { miO(0, [802, 769, 139, 85]() => { return (t = 2843), e((es = t)); var t; }); eO(); } ]); (self.tlpbjsChunk = self.tlpbjsChunk || []).empujar([
[328]{ 1134: (e, t, n) => { nd(t, { Gk: () => M }); var r = n(7873), s = n(9759), i = n(1069), d = n(8969), o = n(1445), a = n(3272), c = n(7377), u = n(5023); const p = { appnexuspsp: { adaptador: ‘prebidServer’, habilitado: !0, punto final: { p1Consent: ‘https://ib.adnxs.com/openrtb2/prebid’, noP1Consent: ‘https://ib.adnxs-simple.com/openrtb2/prebid’ }, syncEndpoint: { p1Consent: ‘https://prebid.adnxs.com/pbs/v1/cookie_sync’, noP1Consent: ‘https://prebid.adnxs-simple.com/pbs/v1/cookie_sync’ }, maxTimeout: 1e3 }, rubicon: { adaptador: ‘prebidServer’, habilitado: !0, punto final: { p1Consent: ‘https://prebid-server.rubiconproject.com/openrtb2/auction’, noP1Consent: ‘https://prebid-server.rubiconproject.com/openrtb2/auction’ }, syncEndpoint: { p1Consent: ‘https://prebid-server.rubiconproject.com/cookie_sync’, noP1Consent: ‘https://prebid-server.rubiconproject.com/cookie_sync’ }, maxTimeout: 500 }, openwrap: { adaptador: ‘prebidServer’, habilitado: !0, punto final: { p1Consent: ‘https://ow.pubmatic.com/openrtb2/auction?source=pbjs’, noP1Consent: ‘https://ow.pubmatic.com/openrtb2/auction?source=pbjs’ }, maxTimeout: 500 } }; var l = n(8044), b = n(9214), f = n(2621), g = n(9766), m = n(3172), h = n(3597), C = n(981), y = n(3323), B = n(5825), v = n(1e3), R = n(6953), q = n(3441), E = n(5569), x = n(5139), O = n(6811), S = n(6743), I = n(2713), j = n(433); función T(e) { let { global: t, postor: n } = e; return Object.fromEntries( Object.entries(n).map(e => { let [n, r] = mi; devolver [n, A(r, (0, i.D9)({}, t, r))]; }) ); } función A(e, t) { return Object.fromEntries( Object.entries(e).map(e => { let [n, r] = mi; constante s = t[n]; return (Array. isArray (r) ?! (0, i. bD) (r, s) && Array. isArray (s) & & (r = s): nulo! = r & & ‘objeto’ == tipo de r && (r = A (r, s));
[n, r]
); }) ); } función P(e, t) { let { global: n, postor: r } = e; const s = (función(e) { let { eids: t, conflictos: n = nuevo Set() } = e; const r = []s = []yo = {}; return ( t.forEach(e => { (!1 === e.bidders ? r : s).push(e); }), s.forEach(e => { let { eid: t, postores: s } = e; n.has(t.source) ? s.forEach(e => { (i[e] = yo[e] || []).push(t); }) : r.push({ eid: t, postores: s }); }), { global: r.map(e => { let { eid: t } = e; return t; }), permisos: r .filter(e => { let { postores: t } = e; return !1 !== t; }) .map(e => { let { eid: t, postores: n } = e; return { fuente: t.source, postores: n }; }), postor: i } ); })( (función(e) { let { global: t, postor: n } = e; const r = []s = {}, d = nuevo Conjunto(); función o(e) { let t = r.find(t => (0, i.bD)(t.eid, e)); return ( null == t && ((t = { eid: e, postores: new Set() }), r.push(t)), null == s[e.source]
? (s[e.source] = t.eid): t.eid === e && d.add(e.fuente), t); } return ( R.Vx.forEach(e => { ((0, jA)(t, e) || []).forEach(e => { o(e).postores = !1; }); }), Object.entries(n).forEach(e => { dejar [t, n] = mi; R.Vx.forEach(e => { ((0, jA)(n, e) || []).forEach(e => { const n = o(e); !1 !== n.postores && n.postores.add(t); }); }); }), { eids: r.map(e => { let { eid: t, postores: n } = e; return { eid: t, postores: n && Array.from(n) }; }), conflictos: d } ); })({ global: n, postor: r }) ); función d(e) { eliminar e?.user?.eids, eliminar e?.user?.ext?.eids; } return ( (n = (0, i.Go)(n)), (r = (0, i.Go)(r)), d(n), Object.values(r).forEach(d), s.global.length && (0, mJ)(n, ‘user.ext.eids’, s.global), t?.length && s.permissions.forEach( e => (e.bidders = e.bidders.filter(e => t.includes(e))) ), s.permissions.length && (0, mJ)(n, ‘ext.prebid.data.eidpermissions’, s.permissions), Object.entries(s.bidder).forEach(e => { let [t, n] = mi; n.longitud && (0, mJ)(r[t]’usuario.ext.eids’, n); }), { global: n, postor: r } ); } función w(e, t) { return nulo == e || 0 === Objeto.claves(e.bidder || {}).longitud? e : ((e = P(e, t)), { …e, postor: T(e) }); }varD = n(1371); constante U = nuevo conjunto ([
‘bidderCode’,
‘bidderRequestId’,
‘uniquePbsTid’,
‘bids’,
‘timeout’
]), $ = (() => { const e = (0, I.Bp)( (0, S.x4)(e => [e.bidfloor, e.bidfloorcur]) ); función de retorno (t) { sea n; for (const r of t) { if (null == r?.bidfloorcur || null == r?.bidfloor) return nulo; norte = nulo == norte? r : mi(norte, r); } devolver norte; }; })(), J = (0, gA)({ procesadores: Cm, contexto: { netRevenue: !0 }, imp(e, t, n) { Object.assign(n, t.pbsData); const r = e(t, n); if ( ((t.bids || []).forEach(e => { e.ortb2Imp && Object.keys(e.ortb2Imp).length > 0 && (0, mJ)(r, `ext.prebid.imp.${e.bidder}`, e.ortb2Imp); }), Object.values(Bs).some(e => r[e])) ) return (r.secure = t.ortb2Imp?.secure ?? 1), r; }, solicitud (e, t, n, r) { if (t.length) { let { s2sBidRequest: s } = r; const i = e(t, n, r); retorno ((i.tmax = Math.floor( s.s2sConfig.timeout ?? Math.min( 0.75 * s.requestBidsTimeout, s.s2sConfig.maxTimeout ?? M.maxTimeout ) )), (i.ext.tmaxmax = i.ext.tmaxmax || s.requestBidsTimeout),
[i.app, i.dooh, i.site].forEach(e => { e && !e.publisher?.id && (0, mJ)(e, ‘publisher.id’, s.s2sConfig.accountId); }), r.transmitTids || (0, mJ)(i, ‘ext.prebid.createtids’, !1), i ); } (0, i.vV)( ‘Solicitud al servidor de oferta previa rechazada debido a tipos de medios no válidos en adUnit.’ ); }, bidResponse(e, t, n) { let r = n.actualBidRequests.get(n.seatbid.seat); null == r && (r = n.actualBidRequests.get(null)), r && Object.assign(n, { bidRequest: r, bidderRequest: n.actualBidderRequests.find( e => e.bidderCode === r.bidder ) }); constante s = e(t, n); return ( (s.requestBidder = r?.bidder), s.native?.ortb && (s.adm = s.native.ortb), (s.requestTimestamp = n.requestTimestamp), { oferta: Object.assign( (0, hO)(d.XQ.GOOD, { src: d.RW.SRC, bidId: r ? r.bidId || r.bid_Id: nulo, ID de transacción: n.adUnit.transactionId, adUnitId: n.adUnit.adUnitId, subastaId: n.bidderRequest.auctionId }), s, { deferRendering: !!n.adUnit.deferBilling, deferBilling: !!n.adUnit.deferBilling } ), adUnit: n.adUnit.code } ); }, anula: {
[v.Tb]: { identificación (e, t, n, r) { t.id = r.impId; }, params(e, t, n, r) { const s = r.s2sBidRequest.s2sConfig.adapterOptions; for (const e de r.actualBidRequests.values()) (0, yW)(t, e, r, r), s && s[e.bidder] && Objeto.asignar (t.ext.prebid.bidder[e.bidder]s[e.bidder]
); }, bidfloor(e, t, n, r) { const s = $( (function*() { for (const t of r.actualBidRequests.values()) { const n = {}; e(n, t, r), rendimiento n; } })() ); nulo! = s && Objeto.assign(t, s); }, extBidfloor(e, t, n, r) { function s(e, t) { null != t && ((0, mJ)(e, ‘ext.bidfloor’, t.bidfloor), (0, mJ)(e, ‘ext.bidfloorcur’, t.bidfloorcur)); } const d = Array.from(r.actualBidRequests.values()).map( n => { const s = (0, i.Go)(t); return e(s, n, r), s; } ); Valores.objeto(D.GE).forEach(e => { s(t[e]$(d.map(t => t[e]?.ext))); }), (t[D.D4]?.formato || []).forEach((e, t) => { s(e, $(d.map(e => e[D.D4].formato[t]?.ext))); }); } },
[v.S3]: { fpd(e, t, n, r) { r.transmitTids && (0, mJ)(t, ‘source.tid’, n.auctionId), (0, i.D9)(t, r.s2sBidRequest.ortb2Fragments?.global), r.s2sBidRequest.s2sConfig.extPrebid && ‘object’ == tipo de r.s2sBidRequest.s2sConfig.extPrebid && (0, mJ)( t, ‘ext.prebid’, (0, i.D9)( t.ext?.prebid || {}, r.s2sBidRequest.s2sConfig.extPrebid ) ), r.getRedactor().ortb2(t); const s = Object.entries( r.s2sBidRequest.ortb2Fragments?.bidder || {} ) .filter(e => { let [t] = mi; const n = r.s2sBidRequest.s2sConfig.bidders; return ( r.s2sBidRequest.s2sConfig.allowUnknownBidderCodes || (n && n.includes(t)) ); }) .map(e => { dejar [t, n] = mi; devolver { postores: [t]configuración: { ortb2: r.getRedactor(t).ortb2(n) } }; }); s.length && (0, mJ)(t, ‘ext.prebid.bidderconfig’, s); }, extPrebidAliases(e, t, n, r) { r.actualBidderRequests.forEach(n => e(t, n, r)); }, sourceExtSchain(e, t, n, r) { let s = t?.ext?.prebid?.schains || []; const i = nuevo Set(s.flatMap(e => e.bidders)); (s = Object.values( s .concat( r.actualBidderRequests .filter(e => !i.has(e.bidderCode)) .map(e => ({ postores: [e.bidderCode]cadena: e?.ofertas?.[0]?.schain })) ) .filter(e => { let { postores: t, schain: n } = e; return t?.length > 0 && n; }) .reduce((e, t) => { let { postores: n, schain: r } = t; const s = JSON.stringify(r); return ( e.hasOwnProperty(s) ||[s] = { postores: nuevo conjunto(), cadena: r }), n.forEach(t => e[s].licitadores.add(t)), e ); }, {}) ).map(e => { let { postores: t, schain: n } = e; return { postores: Array.from(t), schain: n }; })), s.length && (0, mJ)(t, ‘ext.prebid.schains’, s); } },
[v.Cf]: { serverSideStats(e, t, n, r) { r.actualBidderRequests.forEach(s => e(t, n, { …r, bidderRequest: s, bidRequests: s.bids }) ); }, paapiConfigs(e, t, n, r) { const s = Object.values(r.impContext).flatMap(e => (e.paapiConfigs || []).map(t => { const n = e.actualBidderRequests.find( e => e.bidderCode === t.bidder ), r = e.actualBidRequests.get(t.bidder); return { adUnitCode: e.adUnit.code, ortb2: n?.ortb2, ortb2Imp: r?.ortb2Imp, postor: t.bidder, configuración: t.config }; s.longitud > 0 && (t.paapi = s); } } } }); vark = n(6894); const _ = a.$W.getConfig, V = d.RW.SRC; sea N, W = 0; const M = { postores: Object.freeze([]), syncTimeout: 1e3, maxBids: 1, adaptador: ‘prebidServer’, enableUnknownBidderCodes: !1, adaptorOptions: {}, syncUrlModifier: {}, ortbNative: { eventtrackers: [{ event: 1, methods: [1, 2] }]}, maxTimeout: 1500 }; función G(e) { si (!e) retorno; mi = Array.isArray(e)? Y : [e]; const t = nuevo conjunto(); return e.filter(e => { var n; si ( ((n = e),
[‘endpoint’, ‘syncEndpoint’].forEach(e => { si ((0, i.O8)(n[e])) { sea t = n[e]; norte[e] = { p1Consentimiento: t, noP1Consentimiento: t }; } !(0, i.Qd)(n[e]) || (norte[e].p1Consentimiento && n[e].noP1Consentimiento) ||
[‘p1Consent’, ‘noP1Consent’].forEach(t => { norte[e][t] || (0, i.JE)( `s2sConfig.${e}.${t} no definido. La solicitud de PBS se omitirá en algunos escenarios P1.`); }); }), (función(e) { if (e.defaultVendor) { let t = e.defaultVendor, n = Object.keys(e); if (!p[t]) return ( (0, i.vV)( ‘Opción de proveedor predeterminada del servidor de oferta previa incorrecta o no disponible: ‘ + t ), !1 ); Objeto.claves(p[t]).forEach(r => { (M[r] !== y[r] && n.incluye(r)) || (mi[r] =p[t][r]); }); } else null == e.adapter && (e.adapter = ‘prebidServer’); devolver !0; })(e) && (función(e) { para (const t de [‘accountId’, ‘endpoint’]) si (nulo == e[t]) return ((0, i.vV)(t + ‘falta en la configuración de servidor a servidor’), !1); devolver !0; })(e) && e.enabled) ) return ( Array.isArray(e.bidders) && (e.bidders = e.bidders.filter( e => !t.has(e) && (t.add(e), !0) )), !0 ); (0, i.JE)(‘prebidServer: la configuración de s2s está deshabilitada’, e); }); } función F(e, t, n, r, s) { if (N.length === W) return; W++; sea d = {}; const o = _(‘userSync.filterSettings’); if (o) { const { todo: e, iframe: t, imagen: n } = o, r = t || mi, s = norte || mi; r && (d = Object.assign({ iframe: r }, d)), s && (d = Object.assign({ imagen: s }, d)); } const a = { uuid: (0, i.lk)(), postores: e, cuenta: s.accountId, filterSettings: d }; let c = s.userSyncLimit; (0, i.Et)(c) && c > 0 && (a.limit = c), t && ((a.gdpr = t.gdprApplies ? 1 : 0), !1 !== t.gdprApplies && (a.gdpr_consent = t.consentString)), n && (a.us_privacy = n), r && ((a.gpp_sid = r.applicableSections.join()), (a.gpp = r.gppString)), ‘boolean’ == tipo de s.coopSync && (a.coopSync = s.coopSync); const u = JSON.stringify(a); (0, l.RD)( H(s.syncEndpoint, t), e => { try { L((e = JSON.parse(e)).bidder_status, s); } catch (e) { (0, i.vV)(e); } }, u, { contentType: ‘text/plain’, withCredentials: !0 } ); } función L(e, t) { if (0 === e.length) return; constante n = e.shift(); n.no_cookie? (función (e, t, n, r, s) { s.syncUrlModifier && ‘función’ == tipo de s.syncUrlModifier[n] && (t = s.syncUrlModificador[n](mi, t, n)); !(function(e, t, n, r, s) { t ? ‘image’ === e || ‘redirect’ === e ? ((0, i.OG)( `Invocando sincronización de usuario de píxeles de imagen para el postor: “${n}”` ), (0, iz$)(t, r, s)) : ‘iframe’ === e ? ((0, i.OG)( `Invocando sincronización de usuario de iframe para postor: “${n}”` ), (0, i.SG)(t, r, s)) : ((0, i.vV)( `Tipo de sincronización de usuario “${e}” no admitido para el postor: “${n}”` ), r()): ((0, i.vV)(`No hay URL de sincronización para el postor “${n}”: ${t}`), r() })(e, t, n, r, s.syncTimeout); })( n.usersync.type, n.usersync.url, n.bidder, L.bind(null, e, t), t ): L(e, t); } función H(e, t) { const n = (0, fC)(t), r = n ? e.p1Consentimiento: e.noP1Consentimiento; return ( r || (0, i.JE)(‘Falta la URL de consentimiento coincidente cuando gdpr=’ + n), r ); } función Y(e) { sea t, n, r; retorno ( Array.isArray(e) && e.length > 0 && ((t = e[0].gdprConsentimiento), (n = e[0].uspConsentimiento), (r = e[0].gppConsent)), { gdprConsent: t, uspConsent: n, gppConsent: r }); } a.$W.setDefaults({ s2sConfig: M }), _(‘s2sConfig’, e => { let { s2sConfig: t } = e; var n; (n = G((n = t))).length && (N = n); }); const z = (0, b.A_)( ‘async’, function(e, t, n, r) { let { onResponse: s, onError: c, onBid: p, onFledge: l } = r, { gdprConsent: b } = Y(t); const f = (0, i.Go)(e.ad_units), g = f .map(e => e.bids.map(e => e.bidder).filter(i.hj)) .reduce(i.Bq, []) .filter(i.hj), m = e.metrics.measureTime(‘buildRequests’, () => (función(e, t, n, r) { const s = (0, i.vE)(), d = nuevo Set(), c = []u = (0, o.K5)(e.s2sConfig), p = (() => { const e = (0, R.$p)(u), t = {}; return n => null == n ? e : (t.hasOwnProperty(n) || (t[n] = (0, R.$p)((0, qs)(E.tW, n))), t[n]); })(); (n = n.map(e => p().bidRequest(e))).forEach(e => { const r = new Map(); (n.bids = e.bids.map(e => p(e.bidder).bidRequest(e))), e.bids.forEach(n => { null != n.mediaTypes && (0, i.JE)( `El adaptador de servidor Prebid no admite (todavía) Los tipos de medios específicos del postor para la misma configuración de asignación de tamaño de adUnit se ignorarán para adUnit: ${e.code}, bidder: ${n.bidder}` ), r.set(n.bidder, (0, i.D4)(n.bid_id, t)}); let s = e.code, o = 1; `${e.code}-${o}`); d.add(s), c.push({ …e, adUnitCode: e.code, pbsData: { impId: s, actualBidRequests: r, adUnit: e } } }); const l = { …Objeto.deEntries( Objeto.entradas(t[0]).filtro(e => { dejar [t] = mi; devolver !U.tiene(t); }) ), paapi: { habilitado: t.some(e => e.paapi?.enabled) } }; return J.toORTB({ bidderRequest: l, bidRequests: c, contexto: { moneda: a.$W.getConfig(‘currency.adServerCurrency’) || ‘USD’, ttl: e.s2sConfig.defaultTtl || 60, requestTimestamp: s, s2sBidRequest: { …e, ortb2Fragments: w(e.ortb2Fragments, r) }, RequestBidders: r, actualBidderRequests: t, NativeRequest: e.s2sConfig.ortbNative, getRedactor: p, transmitTids: (0, x.io)(O.VJ, u) } }); })(e, t, f, g)), h = { endpointUrl: H(e.s2sConfig.endpoint, b), requestJson: m && JSON.stringify(m), customHeaders: e?.s2sConfig?.customHeaders ?? {} }; if ( (u.Ic(d.qY.BEFORE_PBS_HTTP, h), (0, i.fH)(‘BidRequest: ‘ + h), m && h.requestJson && h.endpointUrl) ) { const t = e.metrics.startTiming(‘net’); n( h.endpointUrl, { éxito: función(n) { let r; t(); try { r = JSON.parse(n); const { ofertas: t, paapi: s } = e.metrics.measureTime( ‘interpretResponse’, () => (función(e, t) { return J.fromORTB({ respuesta: e, solicitud: t }); })(r, m) ); t.forEach(p), s && s.forEach(l); } catch (e) { (0, i.vV)(e); !r || (r.status && r.status.includes(‘Error’)) ? ((0, i.vV)( ‘respuesta de análisis de error: ‘, r ? r.status: ‘JSON no válido’), s(!1, g)) : s(!0, g, r); }, error: function() { t(), c.apply(this } }, h.requestJson, { contentType: ‘text/plain’, withCredentials: !0, navegaciónTopics: (0, x.io)(O.DL, (0, o.K5)(e.s2sConfig)), customHeaders: h.customHeaders } ); } else (0, i.vV)(‘Solicitud de PBS no realizada. Verifique los puntos finales.’); }, ‘procesoPBSRequest’); función K(e, t) { return e?.extPrebid?.returnallbidstatus ? t?.ext?.seatnonbid: nulo 0; } función Q(e) { return e?.ext?.prebid?.analytics?.tags; } o.Ay.registerBidAdapter( new (function() { const e = new sA(‘prebidServer’); return ( (e.callBids = function(e, t, n, r, s) { const p = (e.metrics = (0, k.BO)(t?.[0]?.metrics) .newMetrics() .renameWith(t => [
`adapter.s2s.${t}`,
`adapters.s2s.${e.s2sConfig.defaultVendor}.${t}`
])); (r = p.startTiming(‘total’).stopBefore(r)), t.forEach(e => (0, k.BO)(e.metrics).join(p, { continuePropagation: !1 }) ); let { gdprConsent: l, uspConsent: b, gppConsent: f } = Y(t); if (Array.isArray(N)) { if ( e.s2sConfig && e.s2sConfig.syncEndpoint && H(e.s2sConfig.syncEndpoint, l) ) { const t = (e.s2sConfig.extPrebid && e.s2sConfig.extPrebid.aliases) ?? {}; F( e.s2sConfig.bidders .map(e => o.Ay.aliasRegistry[e] || t[e] || e) .filter((e, t, n) => n.indexOf(e) === t), l, b, f, e.s2sConfig ); } z(e, t, s, { onResponse: function(n, s, i) { n && t.forEach(e => u.Ic(d.qY.BIDDER_DONE, e)); const { asientoNonBidData: c, atagData: g } = (función( e, t ) { return { atagData: Q(t), asientoNonBidData: K(e, t) }; })(e.s2sConfig, i); if ( (c && u.Ic(d.qY.SEAT_NON_BID, { asientononbid: i.ext.seatnonbid, subastaId: t[0].auctionId, postores solicitados: s, respuesta: i, adaptorMetrics: p }), c || g) ) { const e = { asiento sin oferta: c, etiqueta: g, ID de subasta: t[0].auctionId, postores solicitados: s, respuesta: i, adaptorMetrics: p }; u.Ic(d.qY.PBS_ANALYTICS, e); } r(!1), (función(e, t, n, r) { e.forEach(e => { let s = o.Ay.getBidAdapter(e); s && s.registerSyncs && a.$W.runWithBidder( e, s.registerSyncs.bind(s, []t, n, r) ); }); })(s, l, b, f); }, onError(n, s) { const { p1Consentimiento: o = ”, noP1Consentimiento: a = ” } = e?.s2sConfig?.endpoint || {}; o === a ? (0, i.vV)( `Error en la llamada al servidor de oferta previa: ‘${n}’. Punto final: “${o}”}`, s): (0, i.vV)(`Error en la llamada al servidor de oferta previa: ‘${n}’. Puntos finales: p1Consent “${o}”, noP1Consent “${a}”}`, s), t.forEach(e => u.Ic(d.qY.BIDDER_ERROR, { error: s, bidderRequest: e }) ), r(s.timedOut); }, onBid: function(t) { let { adUnit: r, oferta: s } = t; const o = (s.metrics = e.metrics.fork().renameWith()); o.checkpoint(‘addBidResponse’), (null! = s.requestId && null! = s.requestBidder) || e.s2sConfig.allowUnknownBidderCodes? o.measureTime(‘addBidResponse.validate’, () => (0, c.fn)(r, s) )? n(r, s) : n.reject(r, s, d.Tf.INVALID) : ((0, i.JE)( `El adaptador PBS recibió una oferta de un postor desconocido (${s.bidder}), pero ‘s2sConfig.allowUnknownBidderCodes’ no está configurado. Ignorando la oferta.` ), n.reject(r, s, d.Tf.BIDDER_DISALLOWED)); }, onFledge: e => { a.$W.runWithBidder(e.bidder, () => { (0, c.JN)( { subastaId: t[0].auctionId, …e}, {config: e.config}); }); } }); } }), Object.assign(this, { callBids: e.callBids, setBidderCode: e.setBidderCode, tipo: V }) ); })(), ‘prebidServer’ ), (0, rE)(‘prebidServerBidAdapter’); } }, mi => { miO(0, [802, 618, 498, 225, 769, 139, 85]() => { return (t = 1134), e((es = t)); var t; }); eO(); } ]); (self.tlpbjsChunk = self.tlpbjsChunk || []).empujar([
[41]{ 2115: (d, e, n) => { var t = n(7873), s = n(9214), i = n(1069); const o = { nombre: ‘pubProvidedId’, gvlid: n(6916).B1, decode(d) { const e = d ? { pubProvidedId: d } : nulo 0; return ( (0, i.fH)( ‘PubProvidedId: Valor decodificado ‘ + JSON.stringify(e) ), e ); }, getId(d) { const e = (d && d.params) || {}; sea n = []; return ( (0, i.cy)(e.eids) && (n = n.concat(e.eids)), ‘función’ == tipo de e.eidsFunction && (n = n.concat(e.eidsFunction())), { id: n } ); } }; (0, s.bz)(‘userId’, o), (0, tE)(‘pubProvidedIdSystem’); } }, d => { dO(0, [802, 769, 139, 85]() => { return (e = 2115), d((ds = e)); var e; }); hacer(); } ]); (self.tlpbjsChunk = self.tlpbjsChunk || []).empujar([
[496]{ 5862: (e, o, t) => { var n = t(7873), r = t(1069), d = t(9214), i = t(2938), a = t(6916), u = t(5569), c = t(2339); const s = (0, i.vM)({ moduleType: u.fW, moduleName: ‘sharedId’ }), l = ‘cookie’, m = ‘html5’, p = ‘_pubcid_optout’, f = ‘PublisherCommonId’; función g(e, o) { if (o === l) return s.getCookie(e); if (o === m && s.hasLocalStorage()) { const o = s.getDataFromLocalStorage(`${e}_exp`); si (!o) devuelve s.getDataFromLocalStorage(e); if (new Date(o).getTime() – Date.now() > 0) return s.getDataFromLocalStorage(e); } } función b(e, o) { función de retorno(t, n) { o ? v(o, mi, () => { t(n() || mi); })() : t(mi); }; } función v(e) { let o = argumentos.longitud > 1 && void 0 !== argumentos[1]
? argumentos[1]
: ”, t = argumentos.longitud > 2? argumentos[2] : nulo 0; si (!e) regresar; const n = (0, r.Dl)(e); n.search.id = encodeURIComponent(‘pubcid:’ + o); constante d = (0, rc$)(n); función de retorno() { (0, rz$)(d, t); }; } función h() { retorno !!( (s.cookiesAreEnabled() && g(p, l)) || (s.hasLocalStorage() && g(p, m)) ); } const I = { nombre: ‘sharedId’, aliasName: ‘pubCommonId’, gvlid: a.B1, decode(e, o) { if (h()) return void (0, r.fH)(‘Decodificación de PubCommonId: ha optado por no participar’); (0, r.fH)(‘ Valor decodificado PubCommonId ‘ + e); return {pubcid:e}; }, getId: función() { let e = argumentos.length > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}, o = argumentos.longitud > 1? argumentos[1] : vacío 0, t = argumentos.longitud > 2? argumentos[2] : nulo 0; if (h()) return void (0, r.fH)(‘PubCommonId: Ha optado por no participar’); if (o?.coppa) devuelve void (0, r.fH)( ‘PubCommonId: ID no proporcionados para solicitudes de coppa, saliendo de PubCommonId’ ); const { parámetros: { crear: n = !0, pixelUrl: d } = {} } = e; sea yo = t; if (!i) { intentar { ‘objeto’ == tipo de ventana[f] && (i = ventana[f].getId()); } captura (e) {} i || (i = n && (0, r.N9)() ? (0, r.lk)() : nulo 0); } return { id: i, devolución de llamada: b(i, d) }; }, extendId: función() { let e = argumentos.length > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}, o = argumentos.longitud > 1? argumentos[1] : vacío 0, t = argumentos.longitud > 2? argumentos[2] : nulo 0; if (h()) return ( (0, r.fH)(‘PubCommonId: ha optado por no participar’), { id: void 0 } ); if (o?.coppa) devuelve void (0, r.fH)( ‘PubCommonId: ID no proporcionados para solicitudes de coppa, saliendo de PubCommonId’ ); const { parámetros: { extender: n = !1, pixelUrl: d } = {} } = e; if (n) { if (d) { return { devolución de llamada: v(d, t) }; } devolver {identificación: t}; } }, domainOverride: (0, cw)(s, ‘sharedId’), eids: { pubcid(e, o) { const t = { fuente: ‘pubcid.org’, uids: e.map(e => ({ id: e, atype: 1 })) }; return ( null != o?.params?.inserter && (t.inserter = o.params.inserter), t ); } } }; (0, d.bz)(‘userId’, I), (0, nE)(‘sharedIdSystem’); } }, mi => { miO(0, [764, 802, 769, 139, 85]() => { return (o = 5862), e((es = o)); var o; }); eO(); } ]); (self.tlpbjsChunk = self.tlpbjsChunk || []).empujar([
[469]{ 4836: (e, t, n) => { var r = n(7873), o = n(3272), s = n(5023), i = n(1445), a = n(8969), c = n(9214), u = n(1069); const l = nuevo mapa(); función d(e) { let t = argumentos.longitud > 1 && void 0 !== argumentos[1]
? argumentos[1]
:l; constante norte = {}; función r(e) { const t = JSON.stringify([
e.source?.toLowerCase(),
…Object.keys(e)
.filter(e => ![‘uids’, ‘source’].incluye(e)) .sort() .map(t => e[t]) ]); n.hasOwnProperty(t)? norte[t].uids.push(…e.uids) : (n[t] = e); } retorno ( Object.entries(e).forEach(e => { let [n, o] = y; o = Matriz.isArray(o)? o: [o]; constante s = t.get(n); déjame; if (‘pubProvidedId’ === n) i = (0, u.Go)(o); else if (‘función’ == tipo de s) try { (i = s(o)), Array.isArray(i) || (yo = [i]), i.forEach( e => (e.uids = e.uids.filter(e => { let { id: t } = e; return (0, u.O8)(t); })) ), (i = i.filter(e => { let { uids: t } = e; return t?.length > 0; })); } catch (e) { (0, u.vV)(`No se pudo generar EID para “${n}”`, e); } else i = o.map(e => (función(e, t, n) { if (n && e) { let t = {}; t.source = (0, u.fp)(n.getSource) ? n.getSource(e): n.source; const r = (0, u.fp)(n.getValue) ? n.getValue(e): e; if ((0, u.O8)(r)) { const o = { id: r, atype: n.atype }; if ((0, u.fp)(n.getUidExt)) { const t = n.getUidExt(e); t && (o.ext = t); [o]), n.insertor || (0, u.fp)(n.getInserter)) ) { const r = (0, u.fp)(n.getInserter)? n.getInserter(e) : n.inserter; nulo != r && (t.inserter = r); } if (n.matcher || (0, u.fp)(n.getMatcher)) { const r = (0, u.fp)(n.getMatcher) ? n.getMatcher(e) : n.matcher; nulo != r && (t.matcher = r); } if ( (null != n.mm && (t.mm = n.mm), (0, u.fp)(n.getEidExt)) ) { const r = n.getEidExt(e); r && (t.ext = r); } devolver t; } } devolver nulo; })(e, 0, s) ); Array.isArray(i) && i.filter(e => null != e).forEach(r); }), Objeto.valores(n) ); } función f(e) { const t = nuevo Mapa(), n = {}; retorno (Object.entries(e).forEach(e => { let [r, o] = mi; constante s = o(); si (s) { norte[r] = s.idObj[r]; sea e = s.submodule.eids?.[r]; ‘función’ == tipo de e && ((i = e), (e = función() { for ( var e = argumentos.length, t = new Array(e), n = 0; n { let e; return () => (null == e && (e = (0, p.K7)()), e); })(); función F(e) { return V() .fork() .renameWith(t => [`userId.mod.${t}`, `userId.mods.${e}.${t}`]); } función W(e, t) { t = t || e.storageMgr; const n = ‘función’ == tipo de e.submodule.domainOverride? e.submodule.domainOverride(): nulo, r = e.config.storage.name; función de retorno (e, o, s) { t.setCookie(r + (e || ”), o, s, ‘Lax’, n); }; } función G(e, t) { const n = e.config.storage; intentar { const r = nueva Fecha ( Date.now() + 864e5 * n.expires ).toUTCString(), o = (0, u.Qd)(t)? JSON.stringify(t): t; e.enabledStorageTypes.forEach(t => { switch (t) { case $: !(function(e, t, n) { const r = e.config.storage, o = W(e); o(null, t, n), o(‘_cst’, me(), n), ‘number’ == tipo de r.refreshInSeconds && o(‘_last’, new Fecha().toUTCString(), n); })(e, o, r); break; caso j: !(función(e, t, n) { const r = e.config.storage, o = e.storageMgr; o.setDataInLocalStorage(`${r.name}_exp`, n), o.setDataInLocalStorage(`${r.name}_cst`, me()), o.setDataInLocalStorage( r.name, encodeURIComponent(t) ), ‘número’ == tipo de r.refreshInSeconds && o.setDataInLocalStorage( `${r.name}_last`, new Date().toUTCString() })(e, o, r); } captura (e) { (0, u.vV)(e); } } función R(e) { ve(e), e.enabledStorageTypes.forEach(t => { switch (t) { case $: !(function(e) { const t = W(e, U), n = nueva Fecha(Date.now() – 864e5).toUTCString();
[”, ‘_last’, ‘_cst’].forEach(e => { intentar { t(e, ”, n); } captura (e) { (0, u.vV)(e); } }); })(mi); romper; caso j: !(función(e) {
[”, ‘_last’, ‘_exp’, ‘_cst’].forEach(t => { intentar { U.removeDataFromLocalStorage( e.config.storage.name + t ); } catch (e) { (0, u.vV)(e); } }); })(mi); } }); } función B(e) { let t = argumentos.longitud > 1 && void 0 !== argumentos[1]
? argumentos[1]
: nulo 0; constante n = e.config.storage, r = t? `${n.nombre}_${t}` : n.nombre; dejar o; intente { e.enabledStorageTypes.find(t => { switch (t) { case $: o = (function(e, t) { return e.storageMgr.getCookie(t); })(e, r); break; case j: o = (function(e, t) { const n = e.storageMgr, r = e.config.storage, o = n.getDataFromLocalStorage(`${r.name}_exp`); return ” === o? typeof o && ‘{‘ === o.trim().charAt(0) && (o = JSON.parse(o)); } captura (e) { (0, u.vV)(e); } volver o; } función Q(e, t, n) { t = V() .fork() .startTiming(‘userId.callbacks.total’) .stopBefore(t); const r = (0, u.U6)(() => { clearTimeout(x), t(); }, e.length); e.forEach(function(e) { const t = F(e.submodule.name) .startTiming(‘callback’) .stopBefore(r); intente { e.callback(function(r) { r ? (e.config.storage && G(e, r), (e.idObj = e.submodule.decode(r, e.config)), n.refresh(), he(n)): (0, u.fH)( `${k}: ${e.submodule.name} – la identificación de la solicitud respondió con un valor vacío` ), t() }, B.bind(null, e)); } función K(e) { return Object.fromEntries( Object.entries(e) .map(e => { let [t, n] = mi; devolver [t, n()?.idObj?.[t]]; }) .filter(e => { dejar [t, n] = mi; devolver nulo! = n; }) ); } función Y(e, t, n) { const r = {}; return ( e.forEach(e => { const o = n(e), s = (function(e) { if (e.primaryIds) return e.primaryIds; const t = Object.keys(e.eids ?? {}); if (t.length > 1) throw new Error( `ID submódulo ${e.name} puede proporcionar múltiples ID, pero no especifica ‘primaryIds’`); return t; })(o); t(e).forEach(t => { const n = (r)[t] =r[t] ?? []), yo = J[t]?.indexOf(o.nombre) ?? (s.includes(t)? 0: -1), a = n.findIndex(e => { let [t] = mi; devolver t { dejar [t, n] = mi; devolver [
t,
n.map(e => {
let [t, n] = mi; devolver n; }) ]; }) ) ); } función z() { const e = { submódulos: []global: {}, ofertante: {}, combinado: {}, actualizar() { let t = arguments.length > 0 && void 0 !== argumentos[0]
? argumentos[0]
: []; const n = nuevo Set(t.map(e => e.submodule)); (e.submodules = e.submodules .filter(e => !n.has(e.submodule)) .concat(t)), (function() { const t = Y( e.submodules, e => Object.keys(e.idObj ?? {}), e => e.submodule ), n = {}, r = {}; function o(e, t, n) { return function() { para (const { permitido: r, postores: o, módulo: s } de n) { if ( !T.isAllowed( S.yl, (0, Ds)(w.fW, s?.config?.name, { init: !1 }) ) ) continuar;[e]; if (nulo! = i) { if (r) return s; if (t) { const t = e => e .map(e => e.module.submodule.name) .join(‘, ‘); return ( (0, u.JE)( `los módulos de ID de usuario ${t( n )} proporcionan el mismo ID (‘${e}’); ${ s.submodule.name } es la fuente preferida, pero está configurado solo para algunos postores, a diferencia de ${t( n.filter(e => null == e.bidders) )}. Otros postores no verán el “${e}” ID.` , null ); } si (nulo == o) devuelve nulo; } } devolver nulo; }; } Object.entries(t).forEach(e => { dejar [t, s] = mi, yo = !0; constante a = nuevo conjunto(); (s = s.map(e => { let t = null; return ( Array.isArray(e.config.bidders) && e.config.bidders.length > 0 ? ((t = e.config.bidders), t.forEach(e => a.add(e))): (i = !1), { módulo: e, postores: t } ); })), i || (norte[t] = o( t, !0, s.map(e => { let { postores: t, módulo: n } = e; return { permitido: null == t, postores: t, módulo: n }; }) )), a.forEach(e => { (r[e] =r[e] ?? {}), (r[e][t] = o( t, !1, s.map(t => { let { postores: n, módulo: r } = t; return { permitido: n?.includes(e), postores: n, módulo: r }; }) )); }); }); const s = Objeto.valores(r) .concat([n]) .reduce((e, t) => Objeto.assign(e, t), {}); Object.assign(e, { global: n, postor: r, combinado: s }); })(); } }; devolver e; } función X(e) { let { adUnits: t, ortb2Fragments: n } = e; if (((n = n ?? { global: {}, postor: {} }), (función(e) { const { global: t, postor: n } = e, { global: r, postor: o } = C, s = f(r); s.length > 0 && (0, mJ)( t, ‘user.ext.eids’, (t.user?.ext?.eids ?? []).concat(s) ), Object.entries(o).forEach(e => { dejar [t, r] = mi; constante o = f(r); o.length > 0 && (0, mJ)( n, `${t}.user.ext.eids`, (n[t]?.usuario?.ext?.eids ?? []).concat(o) ); }); })(norte),
[t].some(e => !Array.isArray(e) || !e.length)) ) retorno; const r = K(C.global), o = n.global.user?.ext?.eids || []; t.forEach(e => { e.bids && (0, u.cy)(e.bids) && e.bids.forEach(e => { const t = Object.assign({}, r, K(C.bidder[e.bidder] ?? {})), s = o.concat(n.postor?.[e.bidder]?.usuario?.ext?.eids || []); Object.keys(t).length > 0 && (e.userId = t), s.length > 0 && (e.userIdAsEids = s); }); }); } constante Z = {}; déjalo; función te() { let e = argumentos.longitud > 0 && void 0 !== argumentos[0]
? argumentos[0]
: es decir() || []; const t = _ && e.find(e => e.fuente === _); if (t && ‘cadena’ == tipo de t?.uids?.[0]?.id) { const e = t.uids[0].id.reemplazar(/[W_]/g, ”); if (e.length >= 32 && e.length 2 && void 0 !== argumentos[2]
? argumentos[2]
: {}; carrera h.U9([r().catch(() => null), n(L)]).then(() => { X(t), V().join((0, p.BO)(t.metrics), { propagate: !1, includeGroups: !0 }), e.call(this, t); }); }), re = (0, p.Ak)(‘userId’, function(e, t) { X(t), e.call(this, t); }); function oe() { return !!O.gH.getHooks({ gancho: ne }).length; } función se() { return K(C.combinado); } función es decir() { return f(C.combined); } función ae(e) { return es decir().filter(t => t.source === e)[0]; } function ce(e, t, n) { return de().then(() => { let r = {}; if ((0, u.fp)(n)) { (0, u.fH)( `${k} – Obteniendo señal cifrada de una función personalizada: ${n.name} & fuente: ${e} ` ); const t = n(e); r[e] =t? ue(t): nulo; } else { const n = ae(e); (0, u.fH)( `${k} – Obteniendo señal cifrada para eids :${JSON.stringify( n )}` ), (0, u.Im)(n) || (r[n.source] = !0 === t ? ue(n): n.uids[0].identificación); } return ( (0, u.fH)(`${k} – Obteniendo eids cifrados: ${r[e]}`), r[e]
); }); } función ue(e) { let t = argumentos.longitud > 1 && void 0 !== argumentos[1]
? argumentos[1]
: 1, norte = ”; if (1 === t) n = ‘objeto’ == tipo de e? ventana.btoa(JSON.stringify(e)) : ventana.btoa(e); devolver `${t}||${n}`; } función le() { if (!(0, u.II)()) return; window.googletag.secureSignalProviders = window.googletag.secureSignalProviders || []; const e = o.$W.getConfig(‘userSync.encryptedSignalSources’); si (e) { const t = e.registerDelay || 0; setTimeout(() => { e.sources && e.sources.forEach(e => { let { fuente: t, encrypt: n, customFunc: r } = e; t.forEach(e => { window.googletag.secureSignalProviders.push({ id: e, CollectorFunction: () => ce(e, n, r) }); }); }); }, t); } else (0, u.JE)( `${k} – ESP: configuración de encryptedSignalSources no definida en userSync Object`); } función de(e) { return ee(e).then( () => se(), e => e === Z ? Promise.resolve().then(ge) : ((0, u.vV)(‘Error al inicializar el ID de usuario’, e), h.U9.reject(e)) ); } función fe() { let { submoduleNames: e } = argumentos.longitud > 0 && void 0!== argumentos[0]
? argumentos[0]
: {}, t = argumentos.longitud > 1? argumentos[1] : nulo 0; return de({ actualizar: !0, submoduleNames: e }).luego( e => (t && (0, u.fp)(t) && t(), e) ); } función ge() { return de(); } function me() { let e = Número(I.SL.hash); constante t = []; for (; e > 0; ) t.push(String.fromCharCode(255 & e)), (e >>>= 8); return btoa(t.join()); } función ser(e, t) { const n = I.SL.getConsentData(); if (e.config.storage) { sea r, o = B(e), s = !1; if (‘número’ == tipo de e.config.storage.refreshInSeconds) { const t = nueva Fecha(B(e, ‘último’)); s = t && Fecha.now() – t.getTime() > 1e3 * e.config.storage.refreshInSeconds; } if ( !o || s || t || (función(e) { const t = B(e, ‘cst’); return !t || t !== me(); })(e) ) { const t = Object.assign( { enableStorageTypes: e.enabledStorageTypes }, e.config ); r = e.submodule.getId(t, n, o); } else ‘función’ == tipo de e.submodule.extendId && (r = e.submodule.extendId(e.config, n, o)); (0, u.Qd)(r) && (r.id && (G(e, r.id), (o = r.id)), ‘función’ == tipo de r.callback && (e.callback = r.callback)), o && (e.idObj = e.submodule.decode(o, e.config)); } más si (e.config.value) e.idObj = e.config.value; else { const t = e.submodule.getId(e.config, n); (0, u.Qd)(t) && (‘función’ == tipo de t.callback && (e.callback = t.callback), t.id && (e.idObj = e.submodule.decode(t.id, e.config))); } } función he(e) { const t = f(e.combinado); if (t.length && _) { const e = te(t); e && ((0, u.II)() ? window.googletag.pubads().setPublisherProvidedId(e) : ((window.googletag = window.googletag || {}), (window.googletag.cmd = window.googletag.cmd || []), window.googletag.cmd.push(function() { window.googletag.pubads().setPublisherProvidedId(e); }))); } } función pe(e, t) { let n = argumentos.longitud > 2 && void 0 !== argumentos[2] && argumentos[2]; return V() .fork() .measureTime(‘userId.init.modules’, function() { if (!t.length) return []; if ( (t.forEach(e => ve(e)), !(t = t.filter( e => (!e.config.storage || !!e.enabledStorageTypes.length) && T.isAllowed(S.yl, (0, Ds)(w.fW, e.config.name)) )).length) ) return (0, u.JE)(`${k} – no hay módulo de ID configurado`), []; const r = t.reduce( (e, t) => F(t.submodule.name).measureTime(‘init’, () => { try { be(t, n), e.push(t); } catch (e) { (0, u.vV)( `Error en el módulo de ID de usuario ‘${t.submodule.name}’:`, e ); } return e; }),
[]
); devolver e.refresh(r), él(e), r; }); } función ye(e) { return e?.storage?.type?.trim().split(/s*&s*/) || []; } función Es decir(e) { función t(e) { for ( var t = argumentos.longitud, n = nueva matriz(t > 1 ? t – 1 : 0), r = 1; r { if (!e?.name) return t(‘debe especificar “nombre”‘, e); if (e.storage) { if (!e.storage.name || !e.storage.type) return t( ‘debe especificar “almacenamiento.name” y “storage.type”‘, e ); if ( !(function(e) { return ye(e).every(e => we.has(e)); })(e) ) return t(‘invalid “storage.type”‘, e);
[‘expires’, ‘refreshInSeconds’].forEach(n => { sea r = e.almacenamiento[n]; null != r && ‘número’ != tipo de r && ((r = Número(r)), isNaN(r) ? (t( `almacenamiento.${n} debe ser un número y será ignorado`, e ), eliminar e.storage[n]): (e.almacenamiento[n] =r)); }); } devolver !0; }) : (null != e && t(‘debe ser una matriz’, e), []); } const nosotros = nuevo conjunto([j, $]); función ve(e) { if (e.enabledStorageTypes) retorno; const t = ye(e.config); e.enabledStorageTypes = t.filter(t => { switch (t) { case j: return (function(e) { return !( !e.storageMgr.localStorageIsEnabled() || (U.getDataFromLocalStorage(A) && ((0, u.fH)( `${k} – exclusión voluntaria de localStorage encontrado, almacenamiento deshabilitado` ), 1)) ); })(e); case $: return (function(e) { return !( !e.storageMgr.cookiesAreEnabled() || (U.getCookie(A) && ((0, u.fH)( `${k} – cookie de exclusión voluntaria encontrada, almacenamiento deshabilitado` ), 1)) ); })(e } return !1; } función Se(e) { l.clear(), Object.entries( Y( e, e => Object.keys(e.eids || {}), e => e ) ).forEach(e => { let [t, n] = mi; devolver l.set(t, n[0].eids[t]); }); } función De() { Se(q); constante e = Es decir (M); si (!e.longitud) regresa; const t = q.filtro(e => !(H || []).find(t => t.nombre === e.nombre)); H.splice(0, H.length), t .map(t => { const n = (e || []).find( e => e.name && (e.name.toLowerCase() === t.name.toLowerCase() || (t.aliasName && e.name.toLowerCase() === t.aliasName.toLowerCase())) ); return ( n && t.name !== n.name && (n.name = t.name), n ? { submódulo: t, configuración: n, devolución de llamada: void 0, idObj: void 0, StorageMgr: (0, g.vM)({ moduleType: w.fW, moduleName: n.name }) } : null ); }) .filter(e => null !== e) .forEach(e => H.push(e)), H.length && (oe() || (O.gH.getHooks({ gancho: re }).remove(), O.gH.before(ne, 100), i.Ay.callDataDeletionRequest.before(Ee), bQafter(e => e(te()))), (0, u.fH)( `${k} – configuración de sincronización de usuario actualizada para los submódulos ${H.length}: `, H.map(e => e.submodule.name) )); } function Ee(e) { for ( var t = argumentos.length, n = new Array(t > 1 ? t – 1 : 0), r = 1; r { if (‘function’ == typeof e.submodule.onDataDeletionRequest) try { e.submodule.onDataDeletionRequest( e.config, e.idObj, …n ); } catch (t) { (0, u.vV)( `Error al llamar onDataDeletionRequest para el submódulo ID ${e.submodule.name}`, t } R(e }), e.apply(this, n); } function Oe(e) { return function() { return Promise.resolve(e.apply(this, argumentos)); }; } función ke(e) { let { mkDelay: t = h.cb } = argumentos.length > 1 && void 0 !== argumentos[1]
? argumentos[1]
: {}; (_ = nulo 0), (H = []), (METRO = []), (C = z()), (ee = (función() { let { mkDelay: e = h.cb } = argumentos.length > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}; const t = (0, h.v6)(), n = (0, h.v6)(); sea r, o, i = !1; función l(e) { return ( (o = V().fork()), nulo!= r && r.reject(Z), (r = (0, h.v6)()), h.U9.race([e, r.promise]).finalmente( o.startTiming(‘userId.total’) ) ); } sea d = C, f = H; function g(e) { return function() { if (d === C && f === H) return e(…argumentos); }; } función m() { return I.SL.promise.finally( o.startTiming(‘userId.init.consent’) ); } sea b = l( h.U9.all([c.Gc, t.promise]) .entonces(m) .entonces( g(() => { pe(d, f); }) ) .entonces(() => n.promise.finally( o.startTiming(‘userId.callbacks.pending’) ) ) ) .entonces( g(() => { const e = d.submodules.filter(e => (0, u.fp)(e.callback) ); si (e.length) return new h.U9(t => Q(e, t, d)); función de retorno() { let { actualizar: r = !1, nombres de submódulos: o = nulo, listo: c = !1 } = argumentos.longitud > 0 && void 0 !== argumentos[0]
? argumentos[0]
: {}; return ( c && !i && ((i = !0), t.resolve(), L > 0 ? n.resolve() : s.on(a.qY.AUCTION_END, function t() { s.AU(a.qY.AUCTION_END, t), e(N).then(n.resolve); })), r && i && (b = l( b .catch(() => null) .then(m) .then( g(() => { const e = pe( d, f.filter( e => null == o || o.includes(e.submodule.name) ), !0 ).filter(e => null != e.callback); if (e.length) return new h.U9(t => Q(e, t, d)); }) ) )), b); }; })({ mkDelay: t })), nulo != P && P(), (q = []), (P = e.getConfig(‘userSync’, e => { const t = e.userSync; t && ((_ = t.ppid), t.userIds && ((M = t.userIds), (N = (0, u.Et)(t.syncDelay) ? t.syncDelay : E.qh.syncDelay), (L = (0, u.Et)(t.auctionDelay) ? t.auctionDelay: E.qh.auctionDelay), De(), (función(e, t) { if (e) { const n = {}, r = new Map( t.map(e => e.aliasName ? [e.aliasName, e.name] : []
) ); Objeto.keys(e).forEach(t => { const o = (0, u.cy)(e[t]) ? […e[t]].contrarrestar() : []; norte[t] = o.map(e => (r.has(e) ? r.get(e) : e)); }), (J = norte); } más J = {}; C.refresh(), Ver(t); })( t.idPriority, q), sí({ listo: !0 }))); })), ((0, rm)().getUserIds = se), ((0, rm)().getUserIdsAsEids = ie), ((0, rm)().getEncryptedIdsForSource = Oe(ce)), ((0, rm)().registerSignalSources = le), ((0, rm)().refreshUserIds = Oe(fe)), ((0, rm)().getUserIdAsync = Oe(ge)), ((0, rm)().getUserIdAsAidBySource = ae), oe() || O.gH.antes(re, 100); } ke(o.$W), (0, c.xG)( ‘userId’, función(e) { (e.findRootDomain = yS), (q || []).find(t => t.nombre === e.nombre) || (q.push(e), I.o2.register(w.fW, e.name, e.gvlid), De(), ee({ actualizar: !0, submoduleNames: [e.name] })); }, { postInstallAllowed: !0 } ), (0, rE)(‘userId’); } }, mi => { miO(0, [802, 769, 139, 85]() => { return (t = 4836), e((es = t)); var t; }); eO(); } ]); })(), tlpbjs.processQueue(); tlpbjs.config = {}; tlpbjs.config.domain = ventana.ubicación.nombredehost.replace(‘www.’, ”); if (cuenta) { tlpbjs.config.account = cuenta; } más { tlpbjs.config.account = ‘tl’; } tlpbjs.config.debug = window.location.search.indexOf(‘tlpbjs=debug’) > -1; tlpbjs.defineSlot = ventana.googletag.defineSlot; tlpbjs.nativeRender = función(estado) { var ganadores = tlpbjs.getHighestCpmBids([state.divId]); if (tlpbjs.config.debug) console.log(‘tlpbjs: ganadores: ‘ + ganadores.length); for (var i = 0; i { if (a.mediaTypes && a.mediaTypes.banner && a.mediaTypes.banner.sizes) { eliminar a.mediaTypes.banner.sizes; } }); }); ventana.pbjs = ventana.pbjs || ventana.tlpbjs; }); tlpbjs.renderTlDynamicAd = función(estado) { tlpbjs.que.push(función() { if (!tlpbjs.adUnits.find(e => e.code === estado.divId)) { var new_unit = [
{
code: state.divId,
mediaTypes: {
banner: {
sizes: [[1, 1]]} }, ortb2Imp: { text: { prebid: { almacenadorequest: { id: state.storedImp }, …(window.location.search.indexOf(‘tl=test’) > -1 && { almacenadoauctionresponse: { id: ‘test-placement300x250’ } }) } } }, ofertas: [
{
bidder: ‘teal-s2s’
}
]
} ]; tlpbjs.addAdUnits(nueva_unidad); } var otros_eids; if (ventana.owpbjs && ventana.owpbjs.getUserIdsAsEids) { other_eids = ventana.owpbjs.getUserIdsAsEids(); } else if (window.ihowpbjs && window.ihowpbjs.getUserIdsAsEids) { other_eids = window.ihowpbjs.getUserIdsAsEids(); } else if (window.pbjs && window.pbjs.getUserIdsAsEids) { other_eids = window.pbjs.getUserIdsAsEids(); } if (otros_eids && otros_eids.filter) { otros_eids = otros_eids.filter( e => ![‘criteo.com’, tlpbjs.config.domain, ‘pubcid.org’].incluye(e[‘source’]
) ); tlpbjs.mergeConfig({ ortb2: { usuario: { text: { eids: other_eids } } } }); } tlpbjs.tlRequestBids(estado); }); }; tlpbjs.initGam = función(estado) { ventana.googletag = ventana.googletag || {cmd: [] }; window.googletag.cmd.push(function() { if (state.gamSlotId) { state.gamSlot = window.googletag .pubads() .getSlots() .find(element => element.getSlotElementId() === state.divId); if (!state.gamSlot) { if (state.size && Array.isArray(state.size)) { if (!estado.tamaño.incluye(1)) { estado.tamaño = [state.size, [1, 1]]; } } más { estado.tamaño = [[1, 1]]; } state.gamSlot = tlpbjs .defineSlot(state.gamSlotId, state.size, state.divId) .addService(googletag.pubads()); } else { var tamaños = state.gamSlot.getSizes(); si (!tamaños.find(e => e[‘width’] == 1)) { var tamañoArray = [[1, 1]]; tamaños.forEach(e => sizeArray.push([e[‘width’]mi[‘height’]])); state.gamSlot.defineSizeMapping( googletag .sizeMapping() .addSize([0, 0]sizeArray) .build() ); } } } }); }; } función triggerTealReplace(cuenta) { ventana.googletag = ventana.googletag || {cmd: [] }; window.googletag.cmd.push(function() { if (window.location.search.indexOf(‘tl=disable’) > -1) return; var identifier = ‘recovered-ad-slot-‘; var gptDefineSlot = window.googletag.defineSlot; var adCounter = 0; if (!window.tlpbjs || !window.tlpbjs.config) loadTlpbjs(cuenta? cuenta: ‘npg’); función defineSlotOverride(adUnitPath, tamaños, divId) { //solo pasa 0,0 si el nodo principal ya ha recuperado el hijo var div = document.getElementById(divId(divId) = true if ( div.parentNode && div.parentNode.children && div.parentNode.children.forEach ) { div.parentNode.children.forEach(e => { if (e.id.startsWith(identificador)) { vacíoParent = false; } } } var ranura = gptDefineSlot(adUnitPath, vacíoParent? tamaños: [0, 0]dividido); runAuctionForSlot(divId, slot.getSizes()); ranura de retorno; } function runAuctionForSlot(divId, tamaños, isRefresh) { //verificar tamaños – no renderizar si ancho o alto { if (Array.isArray(e) && e[0] > tamaño máximo[0]) { tamaño máximo[0] = mi[0]; } más si (e.ancho > maxSize[0]) { tamaño máximo[0] = e.ancho; } si (Array.isArray(e) && e[1] > tamaño máximo[1]) { tamaño máximo[1] = mi[1]; } más si (e.height > maxSize[1]) { tamaño máximo[1] = e.altura; } }); } si (tamaño máximo[0] <= 2 || Tamaño máximo[1] { if (e.id.startsWith(identificador)) { vacíoParent = false; } }); } if (emptyParent || isRefresh) { slot.innerHTML = ”; if (!isRefresh) slot.id = identificador + adCounter++; if (!tooSmall) { var urlParams = new URLSearchParams(ventana.ubicación.búsqueda); var estado = { divId: slot.id, div: slot, …(urlParams.get(‘tlgamslot’) && { gamSlotId: urlParams.get(‘tlgamslot’) }), tamaño: maxSize }; si (tamaño máximo[0] >= 728) state.storedImp = ‘recuperado728x90’; de lo contrario si (maxSize[0] = 250) state.storedImp = ‘recuperado300x250’; de lo contrario si (maxSize[0] >= 320) state.storedImp = ‘recuperado320x100’; if (state.storedImp) { if (state.gamSlotId) { if (isRefresh) state.gamSlot = window.googletag .pubads() .getSlots() .find( elemento => element.getSlotElementId() === state.divId ); demás window.tlpbjs.initGam(estado); } ventana.tlpbjs.renderTlDynamicAd(estado); observarSlotInView(estado); // inicia el temporizador de actualización } } } } } función observeSlotInView(estado) { var observador = new IntersectionObserver( función(entradas) { entradas.forEach(entrada => { if (entry.isIntersecting) { observador.unobserve(estado.div); // Dejar de observar una vez en la vista setTimeout( () => runAuctionForSlot(state.divId, state.size, true), 30000 ); // Llamada después de 30 segundos } } }, {umbral: 0.1 }); // Se activa cuando al menos el 10% del espacio está a la vista observer.observe(state.div); } window.googletag.defineSlot = defineSlotOverride; window.googletag .pubads() .getSlots() .forEach(e => { runAuctionForSlot(e.getSlotElementId(), e.getSizes()); }); }); }
Saltar al contenido
KANSAS CITY, Missouri (KMIZ)
La Copa Mundial de la FIFA comienza a toda velocidad el martes en Kansas City cuando los actuales campeones del mundo, Argentina, se enfrentan a Argelia.
La FIFA Fan Fest estará abierta el martes de 13:00 a 22:00 horas para que los aficionados disfruten de los partidos de la Copa Mundial y otras festividades.
El festival, ubicado en el Museo y Memorial Nacional de la Primera Guerra Mundial, sirve como centro oficial para los fanáticos de los seis partidos de la Copa Mundial de Kansas City y tiene capacidad para albergar hasta 25.000 personas por día.
Si planeas asistir al FIFA Fan Fest, existen algunas reglas.
- Tu pase debe ser digital para ingresar al recinto.
- Sólo se permiten bolsas transparentes de 12” x 6” x 12” o bolsas pequeñas no transparentes de 4,5” x 6,5”.
- Mantente hidratado. Se permitirán botellas de agua de plástico transparente y se instalarán estaciones de agua alrededor del lugar.
El FIFA Fan Festival es gratuito, aunque la entrada está sujeta a límites de aforo. Los organizadores animan a los aficionados a reservar pases con antelación.
El servicio de transporte Connect K26 estará disponible para los fanáticos en GEHA Stadium y Fan Fest.
Los servicios de transporte Connect KC26 estarán disponibles desde las 10 am hasta la medianoche de lunes a viernes y las personas deben tener su pase de transporte KC26. Los autobuses circularán aproximadamente cada 20 minutos; Los servicios de transporte desde la parada de Lawrence, Kansas circularán aproximadamente cada 30 minutos.
A continuación se muestra un mapa de las paradas del servicio de transporte Connect KC26.

Argentina se enfrentará a Argelia el martes a las 8 pm en el Estadio GEHA y se transmitirá por Fox KQFX.
FIFA Fan Fest transmitirá los dos partidos previos al Argentina vs Argelia. Francia se enfrentará a Senegal a las 14.00 horas, seguido del Iraq vs Senegal a las 17.00 horas.
Todos los partidos de la Copa Mundial se transmitirán en el FIFA Fan Fest durante todo el torneo.
Jazmín Halliburton
Jazsmin Halliburton se unió a ABC 17 News como periodista multimedia en octubre de 2023.
Se graduó del programa de maestría de la Escuela AQ Miller de la Universidad Estatal de Kansas.
SE PARTE DE LA CONVERSACIÓN
ABC 17 News se compromete a proporcionar un foro para una conversación civilizada y constructiva.
Por favor mantenga sus comentarios respetuosos y relevantes. Puede revisar nuestras Normas comunitarias haciendo clic aquí
Si desea compartir una idea para una historia, envíela aquí.






