Last active
September 15, 2016 13:30
-
-
Save zhihaohowardyao/deedfbd90a2a30a625e43d73362720ee to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(function() { | |
var window = this; | |
var a = this; | |
var b = function(c, e) { | |
var d = parseFloat(c); | |
return isNaN(d) || 1 < d || 0 > d ? e : d | |
}, | |
f = function(c, e) { | |
var d = parseInt(c, 10); | |
return isNaN(d) ? e : d | |
}, | |
g = /^([\w-]+\.)*([\w-]{2,})(\:[0-9]+)?$/, | |
h = function(c, e) { | |
if (!c) return e; | |
var d = c.match(g); | |
return d ? d[0] : e | |
}; | |
var k = b("0.02", 0), | |
l = b("0", 0); | |
var m = b("0", 0), | |
n = b("0.001", 0), | |
p = f("1500", 1500), | |
q = b("0.01", 0), | |
r = b("1", 0), | |
t = b("0.5", 0), | |
u = b("", .001), | |
v = f("", 200), | |
w = b("0.01", 0), | |
x = /^true$/.test("") ? | |
!0 : !1, | |
y = b("0", 0), | |
z = b("0.01", 0), | |
B = b("0.1", 0), | |
C = b("0.01", 0), | |
D = b("1", 0), | |
E = b("", .001), | |
F = b("0", 0), | |
aa = b("0.1", 0), | |
ba = b("0.0001", 0), | |
G = f("95", 0), | |
ca = f("95", 0), | |
H = b("0", | |
0), | |
da = b("0", 0), | |
ea = b("0.1", 0), | |
fa = b("0.001", 0), | |
ga = b("0.05", 0), | |
ha = b("1", 0), | |
ia = b("0.05", 0), | |
ja = b("0.001", 0), | |
ka = b("0.05", 0), | |
la = b("0", 0), | |
ma = b("0.001", 0), | |
na = b("0", | |
0), | |
oa = b("0.001", 0), | |
pa = b("0.00001", 0), | |
qa = b("0.5", 0), | |
ra = b("0.05", 0), | |
sa = b("0.95", 0), | |
ta = b("0.01", 0), | |
ua = b("0.001", 0), | |
va = b("0.01", 0), | |
wa = b("0.001", 0), | |
xa = b("0.01", 0), | |
I = b("0.001", | |
0); | |
var ya = /^true$/.test("false") ? !0 : !1; | |
var J = function(c, e) { | |
if (!(1E-4 > Math.random())) { | |
var d = Math.random(); | |
if (d < e) { | |
var za = window; | |
try { | |
var A = new Uint32Array(1); | |
za.crypto.getRandomValues(A); | |
d = A[0] / 65536 / 65536 | |
} catch (Ba) { | |
d = Math.random() | |
} | |
return c[Math.floor(d * c.length)] | |
} | |
} | |
return null | |
}; | |
var K = function() { | |
return a.googletag || (a.googletag = {}) | |
}, | |
L = function(c, e) { | |
var d = K(); | |
d.hasOwnProperty(c) || (d[c] = e) | |
}; | |
var M = {}; | |
M["#1#"] = h("", "pagead2.googlesyndication.com"); | |
M["#2#"] = h("", "pubads.g.doubleclick.net"); | |
M["#3#"] = h("", "securepubads.g.doubleclick.net"); | |
M["#6#"] = function(c) { | |
try { | |
for (var e = null; e != c; e = c, c = c.parent) switch (c.location.protocol) { | |
case "https:": | |
return !0; | |
case "http:": | |
case "file:": | |
return !1 | |
} | |
} catch (d) {} | |
return !0 | |
}(window); | |
M["#7#"] = k; | |
M["#10#"] = m; | |
M["#11#"] = n; | |
M["#13#"] = p; | |
M["#16#"] = q; | |
M["#17#"] = r; | |
M["#18#"] = t; | |
M["#20#"] = l; | |
M["#23#"] = u; | |
M["#24#"] = v; | |
M["#27#"] = w; | |
M["#28#"] = y; | |
M["#29#"] = z; | |
M["#31#"] = B; | |
M["#33#"] = h("", "pagead2.googlesyndication.com"); | |
M["#34#"] = D; | |
M["#36#"] = x; | |
M["#37#"] = C; | |
M["#38#"] = E; | |
M["#39#"] = ""; | |
M["#40#"] = F; | |
M["#45#"] = aa; | |
M["#46#"] = ya; | |
M["#47#"] = ba; | |
M["#49#"] = (new Date).getTime(); | |
M["#53#"] = ""; | |
M["#54#"] = da; | |
M["#55#"] = ea; | |
M["#56#"] = fa; | |
M["#57#"] = ga; | |
M["#58#"] = ha; | |
M["#59#"] = ia; | |
M["#60#"] = ja; | |
M["#61#"] = ka; | |
M["#62#"] = la; | |
M["#63#"] = ma; | |
M["#64#"] = na; | |
M["#65#"] = oa; | |
M["#66#"] = pa; | |
M["#67#"] = qa; | |
M["#68#"] = ra; | |
M["#69#"] = sa; | |
M["#70#"] = ta; | |
M["#71#"] = ua; | |
M["#72#"] = va; | |
M["#73#"] = wa; | |
M["#74#"] = xa; | |
M["#75#"] = ""; | |
M["#76#"] = ""; | |
L("_vars_", M); | |
L("getVersion", function() { | |
return "94" | |
}); | |
var Aa = {}; | |
var N = K(), | |
O = (N.fifWin || window).document; | |
L("cmd", []); | |
if ("function" == function(c) { | |
var e = typeof c; | |
if ("object" == e) | |
if (c) { | |
if (c instanceof Array) return "array"; | |
if (c instanceof Object) return e; | |
var d = Object.prototype.toString.call(c); | |
if ("[object Window]" == d) return "object"; | |
if ("[object Array]" == d || "number" == typeof c.length && "undefined" != typeof c.splice && "undefined" != typeof c.propertyIsEnumerable && !c.propertyIsEnumerable("splice")) return "array"; | |
if ("[object Function]" == d || "undefined" != typeof c.call && "undefined" != typeof c.propertyIsEnumerable && !c.propertyIsEnumerable("call")) return "function" | |
} else return "null"; | |
else if ("function" == e && "undefined" == typeof c.call) return "object"; | |
return e | |
}(N.evalScripts)) N.evalScripts(); | |
else { | |
var P = ca || "94", | |
Q = "", | |
R, S = "partner.googleadservices.com", | |
T = Aa["#6#"] || K()._vars_["#6#"] ? "https:" : "http:"; | |
G && H && (R = J([G, P], 2 * H), R == G ? M["#53#"] = "108809094" : R == P && (M["#53#"] = "108809093", Q = "?v=" + G)); | |
if (!R && I) { | |
var U = J(["108809156", "108809157", "108809158"], 3 * I); | |
if (U) | |
if (M["#75#"] = U, "108809156" == U) Q = "?v=" + P; | |
else if ("108809157" == U) S = "www.googletagservices.com"; | |
else if ("108809158" == U) var V = M["#46#"] && | |
!M["#6#"], | |
S = V ? M["#2#"] : M["#3#"], | |
T = V ? "http:" : "https:" | |
} | |
var W = T + "//" + S + "/gpt/pubads_impl_" + (R || P) + ".js" + Q; | |
var W = "https://rawgit.com/zhihaohowardyao/deedfbd90a2a30a625e43d73362720ee/raw/75b9317cd1361c5601c7dc3b778b10042e65c7fb/pubads_impl_95.js" + Q; | |
M["#76#"] = W; | |
var X = O.currentScript; | |
if (!("complete" == O.readyState || "loaded" == O.readyState || X && X.async)) { | |
var Y = "gpt-impl-" + Math.random(); | |
try { | |
O.write('<script id="' + Y + '" src="' + W + '">\x3c/script>'), N._syncTagged_ = !0 | |
} catch (c) {} | |
O.getElementById(Y) && (N._loadStarted_ = !0) | |
} | |
if (!N._loadStarted_) { | |
var Z = O.createElement("script"); | |
Z.src = W; | |
Z.async = !0; | |
(O.head || O.body || O.documentElement).appendChild(Z); | |
N._loadStarted_ = !0 | |
} | |
}; | |
}).call(this.googletag && googletag.fifWin ? googletag.fifWin.parent : this) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(function() { | |
var window = this, | |
document = this.document; | |
var k, q = this, | |
r = function(a) { | |
return void 0 !== a | |
}, | |
aa = function() {}, | |
ba = function() { | |
throw Error("unimplemented abstract method"); | |
}, | |
ca = function(a) { | |
var b = typeof a; | |
if ("object" == b) | |
if (a) { | |
if (a instanceof Array) return "array"; | |
if (a instanceof Object) return b; | |
var c = Object.prototype.toString.call(a); | |
if ("[object Window]" == c) return "object"; | |
if ("[object Array]" == c || "number" == typeof a.length && "undefined" != typeof a.splice && "undefined" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable("splice")) return "array"; | |
if ("[object Function]" == | |
c || "undefined" != typeof a.call && "undefined" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable("call")) return "function" | |
} else return "null"; | |
else if ("function" == b && "undefined" == typeof a.call) return "object"; | |
return b | |
}, | |
t = function(a) { | |
return "array" == ca(a) | |
}, | |
da = function(a) { | |
var b = ca(a); | |
return "array" == b || "object" == b && "number" == typeof a.length | |
}, | |
w = function(a) { | |
return "string" == typeof a | |
}, | |
ea = function(a) { | |
return "boolean" == typeof a | |
}, | |
x = function(a) { | |
return "number" == typeof a | |
}, | |
fa = function(a) { | |
return "function" == ca(a) | |
}, | |
y = | |
function(a) { | |
var b = typeof a; | |
return "object" == b && null != a || "function" == b | |
}, | |
ga = "closure_uid_" + (1E9 * Math.random() >>> 0), | |
ha = 0, | |
ia = function(a, b, c) { | |
return a.call.apply(a.bind, arguments) | |
}, | |
ja = function(a, b, c) { | |
if (!a) throw Error(); | |
if (2 < arguments.length) { | |
var d = Array.prototype.slice.call(arguments, 2); | |
return function() { | |
var c = Array.prototype.slice.call(arguments); | |
Array.prototype.unshift.apply(c, d); | |
return a.apply(b, c) | |
} | |
} | |
return function() { | |
return a.apply(b, arguments) | |
} | |
}, | |
z = function(a, b, c) { | |
z = Function.prototype.bind && -1 != Function.prototype.bind.toString().indexOf("native code") ? | |
ia : ja; | |
return z.apply(null, arguments) | |
}, | |
ka = function(a, b) { | |
var c = a.split("."), | |
d = q; | |
c[0] in d || !d.execScript || d.execScript("var " + c[0]); | |
for (var e; c.length && (e = c.shift());) !c.length && r(b) ? d[e] = b : d[e] ? d = d[e] : d = d[e] = {} | |
}, | |
A = function(a, b) { | |
function c() {} | |
c.prototype = b.prototype; | |
a.Ca = b.prototype; | |
a.prototype = new c; | |
a.prototype.constructor = a; | |
a.Ib = function(a, c, f) { | |
for (var d = Array(arguments.length - 2), e = 2; e < arguments.length; e++) d[e - 2] = arguments[e]; | |
return b.prototype[c].apply(a, d) | |
} | |
}; | |
var la = function() { | |
return q.googletag || (q.googletag = {}) | |
}, | |
B = function(a, b) { | |
var c = la(); | |
c.hasOwnProperty(a) || (c[a] = b) | |
}, | |
ma = function(a, b) { | |
a.addEventListener ? a.addEventListener("load", b, !1) : a.attachEvent && a.attachEvent("onload", b) | |
}, | |
na = function(a, b) { | |
a.addEventListener ? a.addEventListener("beforeunload", b, !1) : a.attachEvent && a.attachEvent("onbeforeunload", b) | |
}; | |
var oa = function(a, b) { | |
this.l = a; | |
this.j = b || [] | |
}; | |
oa.prototype.getMessageId = function() { | |
return this.l | |
}; | |
oa.prototype.getMessageArgs = function() { | |
return this.j | |
}; | |
var pa = function(a, b, c, d, e) { | |
this.l = new Date; | |
this.v = d || null; | |
this.u = c || null; | |
this.m = a; | |
this.o = b; | |
this.j = e || null | |
}; | |
k = pa.prototype; | |
k.getSlot = function() { | |
return this.v | |
}; | |
k.getService = function() { | |
return this.u | |
}; | |
k.getLevel = function() { | |
return this.m | |
}; | |
k.getTimestamp = function() { | |
return this.l | |
}; | |
k.getMessage = function() { | |
return this.o | |
}; | |
k.getReference = function() { | |
return this.j | |
}; | |
var qa = ["Debug", "Info", "Warning", "Error", "Fatal"]; | |
pa.prototype.toString = function() { | |
var a = this.l.toTimeString() + ": " + qa[this.m] + ": " + this.o; | |
this.j && (a += " Duration: " + (this.l.getTime() - this.j.getTimestamp().getTime()) + "ms."); | |
return a | |
}; | |
var ra = function() { | |
this.l = [] | |
}; | |
ra.prototype.getAllEvents = function() { | |
return this.l | |
}; | |
ra.prototype.getEventsByService = function(a) { | |
return sa(this, function(b) { | |
return b.getService() === a | |
}) | |
}; | |
ra.prototype.getEventsBySlot = function(a) { | |
return sa(this, function(b) { | |
return b.getSlot() === a | |
}) | |
}; | |
ra.prototype.getEventsByLevel = function(a) { | |
return sa(this, function(b) { | |
return b.getLevel() >= a | |
}) | |
}; | |
var sa = function(a, b) { | |
for (var c = [], d = 0; d < a.l.length; ++d) b(a.l[d]) && c.push(a.l[d]); | |
return c | |
}; | |
ra.prototype.log = function(a, b, c, d, e) { | |
a = new pa(a, b, c, d, e); | |
this.l.push(a); | |
return a | |
}; | |
ra.prototype.info = function(a, b, c, d) { | |
return this.log(1, a, b, c, d) | |
}; | |
ra.prototype.j = function(a, b, c, d) { | |
return this.log(2, a, b, c, d) | |
}; | |
ra.prototype.error = function(a, b, c, d) { | |
return this.log(3, a, b, c, d) | |
}; | |
var ta = function() { | |
var a = la(); | |
return a.debug_log || (a.debug_log = new ra) | |
}; | |
B("getEventLog", ta); | |
var C = function(a) { | |
return function() { | |
return new oa(a, []) | |
} | |
}, | |
E = function(a) { | |
return function(b) { | |
return new oa(a, [b]) | |
} | |
}, | |
ua = function(a) { | |
return function(b, c) { | |
return new oa(a, [b, c]) | |
} | |
}, | |
va = function(a) { | |
return function(b, c, d) { | |
return new oa(a, [b, c, d]) | |
} | |
}, | |
xa = function(a) { | |
return "[" + wa(a, function(a) { | |
return w(a) ? "'" + a + "'" : t(a) ? xa(a) : String(a) | |
}).join(", ") + "]" | |
}, | |
ya = C(1), | |
za = E(2), | |
Aa = E(3), | |
Ba = E(4), | |
Ca = E(5), | |
Da = E(6), | |
Ea = C(8), | |
Fa = va(9), | |
Ga = va(10), | |
Ha = ua(12), | |
Ia = E(13), | |
Ja = E(14), | |
Ka = C(16), | |
La = va(17), | |
Ma = C(19), | |
Na = E(20), | |
Oa = E(21), | |
Pa = ua(22), | |
Qa = ua(23), | |
Ra = E(26), | |
Sa = E(27), | |
Ta = E(28), | |
Ua = E(30), | |
Va = ua(31), | |
Wa = C(34), | |
Xa = E(35), | |
Ya = va(36), | |
Za = va(37), | |
$a = C(38), | |
ab = E(39), | |
bb = ua(40), | |
cb = C(42), | |
db = ua(43), | |
eb = C(44), | |
fb = C(45), | |
gb = E(46), | |
hb = E(47), | |
ib = E(48), | |
jb = C(49), | |
kb = C(50), | |
lb = C(52), | |
mb = ua(53), | |
nb = ua(54), | |
ob = E(55), | |
pb = ua(57), | |
qb = va(58), | |
rb = E(59), | |
sb = E(60), | |
tb = ua(61), | |
ub = ua(62), | |
vb = E(63), | |
wb = ua(64), | |
xb = E(65), | |
yb = C(66), | |
zb = C(67), | |
Ab = C(68), | |
Bb = C(69), | |
Cb = C(70), | |
Db = C(71), | |
Eb = C(72), | |
Fb = E(74), | |
Gb = E(75), | |
Hb = va(77), | |
Ib = E(78), | |
Jb = C(79), | |
Kb = E(80), | |
Lb = ua(82), | |
Mb = ua(84), | |
Nb = E(85), | |
Ob = C(87), | |
Pb = va(88), | |
Qb = E(90), | |
Rb = E(92), | |
Sb = E(93), | |
Tb = E(94), | |
Ub = E(95), | |
F = function(a, b) { | |
var c = xa(b), | |
c = c.substring(1, c.length - 1); | |
return new oa(96, [a, c]) | |
}, | |
Vb = E(97), | |
Wb = E(98), | |
Xb = E(99), | |
Yb = E(100), | |
Zb = ua(101); | |
var $b = function(a) { | |
if (Error.captureStackTrace) Error.captureStackTrace(this, $b); | |
else { | |
var b = Error().stack; | |
b && (this.stack = b) | |
} | |
a && (this.message = String(a)) | |
}; | |
A($b, Error); | |
$b.prototype.name = "CustomError"; | |
var ac; | |
var bc = function(a) { | |
return /^[\s\xa0]*$/.test(a) | |
}, | |
cc = function(a) { | |
return a.replace(/^[\s\xa0]+|[\s\xa0]+$/g, "") | |
}, | |
kc = function(a) { | |
if (!dc.test(a)) return a; - 1 != a.indexOf("&") && (a = a.replace(ec, "&")); - 1 != a.indexOf("<") && (a = a.replace(fc, "<")); - 1 != a.indexOf(">") && (a = a.replace(gc, ">")); - 1 != a.indexOf('"') && (a = a.replace(hc, """)); - 1 != a.indexOf("'") && (a = a.replace(ic, "'")); - 1 != a.indexOf("\x00") && (a = a.replace(jc, "�")); | |
return a | |
}, | |
ec = /&/g, | |
fc = /</g, | |
gc = />/g, | |
hc = /"/g, | |
ic = /'/g, | |
jc = /\x00/g, | |
dc = /[\x00&<>"']/, | |
nc = function(a) { | |
return -1 != a.indexOf("&") ? "document" in q ? lc(a) : mc(a) : a | |
}, | |
lc = function(a) { | |
var b = { | |
"&": "&", | |
"<": "<", | |
">": ">", | |
""": '"' | |
}, | |
c; | |
c = q.document.createElement("div"); | |
return a.replace(oc, function(a, e) { | |
var d = b[a]; | |
if (d) return d; | |
if ("#" == e.charAt(0)) { | |
var g = Number("0" + e.substr(1)); | |
isNaN(g) || (d = String.fromCharCode(g)) | |
} | |
d || (c.innerHTML = a + " ", d = c.firstChild.nodeValue.slice(0, -1)); | |
return b[a] = d | |
}) | |
}, | |
mc = function(a) { | |
return a.replace(/&([^;]+);/g, function(a, c) { | |
switch (c) { | |
case "amp": | |
return "&"; | |
case "lt": | |
return "<"; | |
case "gt": | |
return ">"; | |
case "quot": | |
return '"'; | |
default: | |
if ("#" == c.charAt(0)) { | |
var b = Number("0" + c.substr(1)); | |
if (!isNaN(b)) return String.fromCharCode(b) | |
} | |
return a | |
} | |
}) | |
}, | |
oc = /&([^;\s<&]+);?/g, | |
pc = { | |
"\x00": "\\0", | |
"\b": "\\b", | |
"\f": "\\f", | |
"\n": "\\n", | |
"\r": "\\r", | |
"\t": "\\t", | |
"\x0B": "\\x0B", | |
'"': '\\"', | |
"\\": "\\\\", | |
"<": "<" | |
}, | |
qc = { | |
"'": "\\'" | |
}, | |
rc = function(a) { | |
a = String(a); | |
for (var b = ['"'], c = 0; c < a.length; c++) { | |
var d = a.charAt(c), | |
e = d.charCodeAt(0), | |
f = c + 1, | |
g; | |
if (!(g = pc[d])) { | |
if (!(31 < e && 127 > e)) | |
if (d in qc) d = qc[d]; | |
else if (d in pc) d = qc[d] = pc[d]; | |
else { | |
g = | |
d.charCodeAt(0); | |
if (31 < g && 127 > g) e = d; | |
else { | |
if (256 > g) { | |
if (e = "\\x", 16 > g || 256 < g) e += "0" | |
} else e = "\\u", 4096 > g && (e += "0"); | |
e += g.toString(16).toUpperCase() | |
} | |
d = qc[d] = e | |
} | |
g = d | |
} | |
b[f] = g | |
} | |
b.push('"'); | |
return b.join("") | |
}, | |
sc = function(a) { | |
return null == a ? "" : String(a) | |
}, | |
tc = function(a, b) { | |
return a < b ? -1 : a > b ? 1 : 0 | |
}; | |
var uc = function(a, b) { | |
if (w(a)) return w(b) && 1 == b.length ? a.indexOf(b, 0) : -1; | |
for (var c = 0; c < a.length; c++) | |
if (c in a && a[c] === b) return c; | |
return -1 | |
}, | |
G = function(a, b, c) { | |
for (var d = a.length, e = w(a) ? a.split("") : a, f = 0; f < d; f++) f in e && b.call(c, e[f], f, a) | |
}, | |
vc = function(a, b) { | |
for (var c = a.length, d = [], e = 0, f = w(a) ? a.split("") : a, g = 0; g < c; g++) | |
if (g in f) { | |
var h = f[g]; | |
b.call(void 0, h, g, a) && (d[e++] = h) | |
} | |
return d | |
}, | |
wa = function(a, b, c) { | |
for (var d = a.length, e = Array(d), f = w(a) ? a.split("") : a, g = 0; g < d; g++) g in f && (e[g] = b.call(c, f[g], g, a)); | |
return e | |
}, | |
wc = function(a, b) { | |
var c = 0; | |
G(a, function(d, e) { | |
c = b.call(void 0, c, d, e, a) | |
}); | |
return c | |
}, | |
xc = function(a, b) { | |
for (var c = a.length, d = w(a) ? a.split("") : a, e = 0; e < c; e++) | |
if (e in d && b.call(void 0, d[e], e, a)) return !0; | |
return !1 | |
}, | |
zc = function(a, b) { | |
var c = yc(a, b, void 0); | |
return 0 > c ? null : w(a) ? a.charAt(c) : a[c] | |
}, | |
yc = function(a, b, c) { | |
for (var d = a.length, e = w(a) ? a.split("") : a, f = 0; f < d; f++) | |
if (f in e && b.call(c, e[f], f, a)) return f; | |
return -1 | |
}, | |
Ac = function(a, b) { | |
return 0 <= uc(a, b) | |
}, | |
Bc = function(a, b) { | |
Ac(a, b) || a.push(b) | |
}, | |
Cc = function(a, b) { | |
var c = uc(a, | |
b); | |
0 <= c && Array.prototype.splice.call(a, c, 1) | |
}, | |
Dc = function(a) { | |
return Array.prototype.concat.apply(Array.prototype, arguments) | |
}, | |
Ec = function(a) { | |
var b = a.length; | |
if (0 < b) { | |
for (var c = Array(b), d = 0; d < b; d++) c[d] = a[d]; | |
return c | |
} | |
return [] | |
}, | |
Fc = function(a, b, c) { | |
return 2 >= arguments.length ? Array.prototype.slice.call(a, b) : Array.prototype.slice.call(a, b, c) | |
}, | |
Gc = function(a) { | |
for (var b = {}, c = 0, d = 0; d < a.length;) { | |
var e = a[d++], | |
f; | |
f = e; | |
f = y(f) ? "o" + (f[ga] || (f[ga] = ++ha)) : (typeof f).charAt(0) + f; | |
Object.prototype.hasOwnProperty.call(b, f) || | |
(b[f] = !0, a[c++] = e) | |
} | |
a.length = c | |
}, | |
Ic = function(a, b) { | |
a.sort(b || Hc) | |
}, | |
Kc = function(a) { | |
for (var b = Jc, c = Array(a.length), d = 0; d < a.length; d++) c[d] = { | |
index: d, | |
value: a[d] | |
}; | |
var e = b || Hc; | |
Ic(c, function(a, b) { | |
return e(a.value, b.value) || a.index - b.index | |
}); | |
for (d = 0; d < a.length; d++) a[d] = c[d].value | |
}, | |
Hc = function(a, b) { | |
return a > b ? 1 : a < b ? -1 : 0 | |
}, | |
Lc = function(a, b) { | |
for (var c = {}, d = 0; d < a.length; d++) { | |
var e = a[d], | |
f = b.call(void 0, e, d, a); | |
r(f) && (c[f] || (c[f] = [])).push(e) | |
} | |
return c | |
}; | |
var Mc = function(a, b) { | |
for (var c in a) b.call(void 0, a[c], c, a) | |
}, | |
Nc = function(a, b) { | |
for (var c in a) | |
if (b.call(void 0, a[c], c, a)) return !0; | |
return !1 | |
}, | |
Oc = function(a, b) { | |
return null !== a && b in a | |
}, | |
Pc = function(a, b) { | |
for (var c in a) | |
if (a[c] == b) return !0; | |
return !1 | |
}, | |
Qc = function(a) { | |
for (var b in a) return !1; | |
return !0 | |
}, | |
Rc = function(a, b) { | |
b in a && delete a[b] | |
}, | |
Sc = function(a) { | |
var b = {}, | |
c; | |
for (c in a) b[c] = a[c]; | |
return b | |
}, | |
Tc = function(a) { | |
var b = {}, | |
c; | |
for (c in a) b[a[c]] = c; | |
return b | |
}, | |
Uc = "constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" "), | |
Vc = function(a, b) { | |
for (var c, d, e = 1; e < arguments.length; e++) { | |
d = arguments[e]; | |
for (c in d) a[c] = d[c]; | |
for (var f = 0; f < Uc.length; f++) c = Uc[f], Object.prototype.hasOwnProperty.call(d, c) && (a[c] = d[c]) | |
} | |
}; | |
var Wc; | |
a: { | |
var Xc = q.navigator; | |
if (Xc) { | |
var Yc = Xc.userAgent; | |
if (Yc) { | |
Wc = Yc; | |
break a | |
} | |
} | |
Wc = "" | |
} | |
var H = function(a) { | |
return -1 != Wc.indexOf(a) | |
}; | |
var Zc = function() { | |
return H("Trident") || H("MSIE") | |
}, | |
$c = function() { | |
return (H("Chrome") || H("CriOS")) && !H("Edge") | |
}; | |
var bd = function() { | |
this.xa = ""; | |
this.Na = ad | |
}; | |
bd.prototype.Ia = !0; | |
bd.prototype.wa = function() { | |
return this.xa | |
}; | |
var cd = /^(?:(?:https?|mailto|ftp):|[^&:/?#]*(?:[/?#]|$))/i, | |
ad = {}, | |
dd = function(a) { | |
var b = new bd; | |
b.xa = a; | |
return b | |
}; | |
dd("about:blank"); | |
var fd = function() { | |
this.Oa = ed | |
}; | |
fd.prototype.Ia = !0; | |
fd.prototype.wa = function() { | |
return "" | |
}; | |
var ed = {}; | |
var gd = function(a) { | |
gd[" "](a); | |
return a | |
}; | |
gd[" "] = aa; | |
var hd = function(a, b) { | |
try { | |
return gd(a[b]), !0 | |
} catch (c) {} | |
return !1 | |
}, | |
jd = function(a, b) { | |
var c = id; | |
return Object.prototype.hasOwnProperty.call(c, a) ? c[a] : c[a] = b(a) | |
}; | |
var kd = function(a) { | |
try { | |
return !!a && null != a.location.href && hd(a, "foo") | |
} catch (b) { | |
return !1 | |
} | |
}, | |
ld = function(a, b) { | |
var c = a.createElement("script"); | |
c.src = b; | |
var d = a.getElementsByTagName("script")[0]; | |
d && d.parentNode && d.parentNode.insertBefore(c, d) | |
}, | |
md = function(a, b) { | |
var c = a.createElement("link"); | |
c.rel = "prefetch"; | |
var d; | |
b instanceof fd ? b instanceof fd && b.constructor === fd && b.Oa === ed ? d = "" : (ca(b), d = "type_error:TrustedResourceUrl") : b instanceof bd ? b instanceof bd && b.constructor === bd && b.Na === ad ? d = b.xa : (ca(b), d = "type_error:SafeUrl") : | |
(d = b, d instanceof bd || (d = d.Ia ? d.wa() : String(d), cd.test(d) || (d = "about:invalid#zClosurez"), d = dd(d)), d = d.wa()); | |
c.href = d; | |
(d = a.getElementsByTagName("head")[0]) && d.appendChild(c) | |
}, | |
nd = function(a, b) { | |
if (!(1E-4 > Math.random())) { | |
var c = Math.random(); | |
if (c < b) { | |
var d = window; | |
try { | |
var e = new Uint32Array(1); | |
d.crypto.getRandomValues(e); | |
c = e[0] / 65536 / 65536 | |
} catch (f) { | |
c = Math.random() | |
} | |
return a[Math.floor(c * a.length)] | |
} | |
} | |
return null | |
}, | |
I = function(a, b, c) { | |
for (var d in a) Object.prototype.hasOwnProperty.call(a, d) && b.call(c, a[d], d, a) | |
}, | |
od = function(a) { | |
var b = 0; | |
I(a, function() { | |
b++ | |
}); | |
return b | |
}, | |
pd = function(a) { | |
var b = []; | |
I(a, function(a) { | |
b.push(a) | |
}); | |
return b | |
}, | |
qd = function(a) { | |
var b = a.length; | |
if (0 == b) return 0; | |
for (var c = 305419896, d = 0; d < b; d++) c ^= (c << 5) + (c >> 2) + a.charCodeAt(d) & 4294967295; | |
return 0 < c ? c : 4294967296 + c | |
}, | |
rd = function(a) { | |
try { | |
for (var b = null; b != a; b = a, a = a.parent) switch (a.location.protocol) { | |
case "https:": | |
return !0; | |
case "http:": | |
case "file:": | |
return !1 | |
} | |
} catch (c) {} | |
return !0 | |
}, | |
sd = function(a) { | |
if (!a) return ""; | |
var b = /.*[&#?]google_debug(=[^&]*)?(&.*)?$/; | |
try { | |
var c = b.exec(decodeURIComponent(a)); | |
if (c) return c[1] && 1 < c[1].length ? c[1].substring(1) : "true" | |
} catch (d) {} | |
return "" | |
}; | |
var td = function(a, b, c, d, e, f) { | |
var g = ""; | |
a && (g += a + ":"); | |
c && (g += "//", b && (g += b + "@"), g += c, d && (g += ":" + d)); | |
e && (g += e); | |
f && (g += "?" + f); | |
return g | |
}, | |
ud = /^(?:([^:/?#.]+):)?(?:\/\/(?:([^/?#]*)@)?([^/#?]*?)(?::([0-9]+))?(?=[/#?]|$))?([^?#]+)?(?:\?([^#]*))?(?:#([\s\S]*))?$/, | |
vd = function(a) { | |
return a ? decodeURI(a) : a | |
}, | |
wd = /#|$/, | |
xd = function(a, b) { | |
var c = a.search(wd), | |
d; | |
a: { | |
d = 0; | |
for (var e = b.length; 0 <= (d = a.indexOf(b, d)) && d < c;) { | |
var f = a.charCodeAt(d - 1); | |
if (38 == f || 63 == f) | |
if (f = a.charCodeAt(d + e), !f || 61 == f || 38 == f || 35 == f) break a; | |
d += e + 1 | |
} | |
d = -1 | |
} | |
if (0 > | |
d) return null; | |
e = a.indexOf("&", d); | |
if (0 > e || e > c) e = c; | |
d += b.length + 1; | |
return decodeURIComponent(a.substr(d, e - d).replace(/\+/g, " ")) | |
}; | |
var yd = function(a) { | |
if (a = /[-\w]+\.[-\w]+$/.exec(a)) { | |
a = a[0].toLowerCase(); | |
for (var b = 0, c = 0; c < a.length; ++c) b = 31 * b + a.charCodeAt(c) >>> 0; | |
switch (b) { | |
case 1967261364: | |
return 0; | |
case 3147493546: | |
return 1; | |
case 1567346461: | |
return 2; | |
case 2183041838: | |
return 3; | |
case 763236279: | |
return 4; | |
case 1342279801: | |
return 5; | |
case 526831769: | |
return 6; | |
case 352806002: | |
return 7; | |
case 2755048925: | |
return 8; | |
case 3306848407: | |
return 9; | |
case 2207000920: | |
return 10; | |
case 484037040: | |
return 11; | |
case 3506871055: | |
return 12; | |
case 672143848: | |
return 13; | |
case 2528751226: | |
return 14; | |
case 2744854768: | |
return 15; | |
case 3703278665: | |
return 16; | |
case 2014749173: | |
return 17; | |
case 133063824: | |
return 18; | |
case 2749334602: | |
return 19; | |
case 3131239845: | |
return 20; | |
case 2074086763: | |
return 21; | |
case 795772493: | |
return 22; | |
case 290857819: | |
return 23; | |
case 3035947606: | |
return 24; | |
case 2983138003: | |
return 25; | |
case 2197138676: | |
return 26; | |
case 4216016165: | |
return 27; | |
case 239803524: | |
return 28; | |
case 975993579: | |
return 29; | |
case 1794940339: | |
return 30; | |
case 1314429186: | |
return 31; | |
case 1643618937: | |
return 32; | |
case 497159982: | |
return 33 | |
} | |
} | |
return -1 | |
}, | |
zd = | |
function(a) { | |
if (!a.length) return 0; | |
for (var b = [], c = 0; 33 >= c; c++) b[c] = 0; | |
for (c = a.length - 1; 0 <= c; c--) { | |
var d = yd(a[c]); | |
0 <= d && (b[33 - d] = 1) | |
} | |
return parseInt(b.join(""), 2) | |
}; | |
var Ad = function(a, b) { | |
this.j = a; | |
this.l = b | |
}, | |
Bd = function(a, b, c) { | |
this.url = a; | |
this.Da = b; | |
this.Ka = !!c; | |
this.depth = x(void 0) ? void 0 : null | |
}, | |
Dd = function(a) { | |
a = (this.l = a || q) || q; | |
this.m = a.top == a ? 1 : kd(a.top) ? 2 : 3; | |
3 != this.m && Date.parse(q.top.document.lastModified); | |
this.j = Cd(this.l) | |
}, | |
Ed = function(a, b) { | |
for (var c, d = 0, e = (c = a.j[Math.max(a.j.length - 1, 0)].url || null) && vd(c.match(ud)[3] || null), f = Math.min(b.length, 26), g = 0; g < f; g++) | |
if (c = null != b[g] && vd(b[g].match(ud)[3] || null) || "", d *= 4, c) | |
if (e && c == e) d += 3; | |
else { | |
var h; | |
a: { | |
h = b[g]; | |
for (var l = [/^https?:\/\/(secure)?pubads\.g\.doubleclick\.net(\:\d+)?($|(\/.*))/i, /^https?:\/\/(googleads|adx)\.g\.doubleclick\.net(\:\d+)?($|(\/.*))/i, /^https?:\/\/(?!adx)ad.*\.doubleclick\.net(\:\d+)?($|(\/.*))/i, /^https?:\/\/(tpc|pagead2).googlesyndication\.com(\:\d+)?($|(\/.*))/i, /^https?:\/\/www.googletagservices\.com(\:\d+)?($|(\/.*))/i], m = 0; m < l.length; ++m) | |
if (l[m].test(h)) { | |
h = !0; | |
break a | |
} | |
h = !1 | |
} | |
h ? d += 2 : c && 0 <= yd(c) && (d += 1) | |
} | |
return d | |
}, | |
Cd = function(a) { | |
var b = a || q, | |
c = [], | |
d, e = null; | |
do { | |
var f = b; | |
kd(f) ? (d = f.location.href, | |
e = f.document && f.document.referrer || null) : (d = e, e = null); | |
c.push(new Bd(d || "", f)); | |
try { | |
b = f.parent | |
} catch (g) { | |
b = null | |
} | |
} while (b && f != b); | |
b = 0; | |
for (f = c.length - 1; b <= f; ++b) c[b].depth = f - b; | |
f = a || q; | |
if (f.location && f.location.ancestorOrigins && f.location.ancestorOrigins.length == c.length - 1) | |
for (b = 1; b < c.length; ++b) a = c[b], a.url || (a.url = f.location.ancestorOrigins[b - 1] || "", a.Ka = !0); | |
return c | |
}; | |
var Fd = function(a, b, c) { | |
a.addEventListener ? a.addEventListener(b, c, !1) : a.attachEvent && a.attachEvent("on" + b, c) | |
}, | |
Gd = function(a, b, c) { | |
a.removeEventListener ? a.removeEventListener(b, c, !1) : a.detachEvent && a.detachEvent("on" + b, c) | |
}; | |
var Hd = function(a, b, c, d, e) { | |
this.v = c || 4E3; | |
this.m = a || "&"; | |
this.w = b || ",$"; | |
this.o = r(d) ? d : "trn"; | |
this.B = e || null; | |
this.u = !1; | |
this.l = {}; | |
this.A = 0; | |
this.j = [] | |
}, | |
Id = function(a, b) { | |
var c = {}; | |
c[a] = b; | |
return [c] | |
}, | |
Jd = function(a, b, c, d) { | |
a.j.push(b); | |
a.l[b] = Id(c, d) | |
}, | |
Md = function(a, b, c, d) { | |
b = b + "//" + c + d; | |
var e = Kd(a) - d.length - 0; | |
if (0 > e) return ""; | |
a.j.sort(function(a, b) { | |
return a - b | |
}); | |
d = null; | |
c = ""; | |
for (var f = 0; f < a.j.length; f++) | |
for (var g = a.j[f], h = a.l[g], l = 0; l < h.length; l++) { | |
if (!e) { | |
d = null == d ? g : d; | |
break | |
} | |
var m = Ld(h[l], a.m, a.w); | |
if (m) { | |
m = c + m; | |
if (e >= | |
m.length) { | |
e -= m.length; | |
b += m; | |
c = a.m; | |
break | |
} else a.u && (c = e, m[c - 1] == a.m && --c, b += m.substr(0, c), c = a.m, e = 0); | |
d = null == d ? g : d | |
} | |
} | |
f = ""; | |
a.o && null != d && (f = c + a.o + "=" + (a.B || d)); | |
return b + f + "" | |
}, | |
Kd = function(a) { | |
if (!a.o) return a.v; | |
var b = 1, | |
c; | |
for (c in a.l) b = c.length > b ? c.length : b; | |
return a.v - a.o.length - b - a.m.length - 1 | |
}, | |
Ld = function(a, b, c, d, e) { | |
var f = []; | |
I(a, function(a, h) { | |
var g = Nd(a, b, c, d, e); | |
g && f.push(h + "=" + g) | |
}); | |
return f.join(b) | |
}, | |
Nd = function(a, b, c, d, e) { | |
if (null == a) return ""; | |
b = b || "&"; | |
c = c || ",$"; | |
"string" == typeof c && (c = c.split("")); | |
if (a instanceof Array) { | |
if (d = d || 0, d < c.length) { | |
for (var f = [], g = 0; g < a.length; g++) f.push(Nd(a[g], b, c, d + 1, e)); | |
return f.join(c[d]) | |
} | |
} else if ("object" == typeof a) return e = e || 0, 2 > e ? encodeURIComponent(Ld(a, b, c, d, e + 1)) : "..."; | |
return encodeURIComponent(String(a)) | |
}; | |
var Pd = function(a, b, c, d) { | |
try { | |
var e; | |
c instanceof Hd ? e = c : (e = new Hd, I(c, function(a, b) { | |
var c = e, | |
d = c.A++, | |
f = Id(b, a); | |
c.j.push(d); | |
c.l[d] = f | |
})); | |
if (Math.random() < (d || a.j)) { | |
var f = Md(e, a.o, a.l, a.m + b + "&"); | |
Od(q, f) | |
} | |
} catch (g) {} | |
}, | |
Od = function(a, b) { | |
a.google_image_requests || (a.google_image_requests = []); | |
var c = a.document.createElement("img"); | |
c.src = b; | |
a.google_image_requests.push(c) | |
}; | |
var Qd = function(a, b, c) { | |
this.l = a; | |
this.u = b; | |
this.m = c; | |
this.o = this.j | |
}, | |
Rd = function(a, b, c) { | |
this.message = a; | |
this.j = b || ""; | |
this.l = c || -1 | |
}, | |
Td = function(a, b) { | |
var c; | |
try { | |
c = b() | |
} catch (f) { | |
var d = a.m; | |
try { | |
var e = Sd(f), | |
d = a.o.call(a, "osd::adp::reg", e, void 0, void 0) | |
} catch (g) { | |
a.j("pAR", g) | |
} | |
if (!d) throw f; | |
} finally {} | |
return c | |
}, | |
Vd = function(a) { | |
var b = Ud; | |
return function() { | |
for (var c = [], d = 0; d < arguments.length; ++d) c[d] = arguments[d]; | |
return Td(b, function() { | |
return a.apply(void 0, c) | |
}) | |
} | |
}; | |
Qd.prototype.j = function(a, b, c, d, e) { | |
try { | |
var f = e || this.u, | |
g = new Hd; | |
g.u = !0; | |
Jd(g, 1, "context", a); | |
b instanceof Rd || (b = Sd(b)); | |
Jd(g, 2, "msg", b.message.substring(0, 512)); | |
b.j && Jd(g, 3, "file", b.j); | |
0 < b.l && Jd(g, 4, "line", b.l.toString()); | |
b = {}; | |
if (d) try { | |
d(b) | |
} catch (u) {} | |
d = [b]; | |
g.j.push(5); | |
g.l[5] = d; | |
var h, l = Cd(), | |
m = new Bd(q.location.href, q, !1), | |
n = l.length - 1; | |
for (d = n; 0 <= d; --d) { | |
var p = l[d]; | |
if (p.url && !p.Ka) { | |
m = p; | |
break | |
} | |
} | |
var p = null, | |
v = l.length && l[n].url; | |
0 != m.depth && v && (p = l[n]); | |
h = new Ad(m, p); | |
h.l && Jd(g, 6, "top", h.l.url || ""); | |
Jd(g, 7, "url", | |
h.j.url || ""); | |
Pd(this.l, f, g, c) | |
} catch (u) { | |
try { | |
Pd(this.l, f, { | |
context: "ecmserr", | |
rctx: a, | |
msg: Wd(u), | |
url: h.j.url | |
}, c) | |
} catch (D) {} | |
} | |
return this.m | |
}; | |
var Sd = function(a) { | |
return new Rd(Wd(a), a.fileName, a.lineNumber) | |
}, | |
Wd = function(a) { | |
var b = a.toString(); | |
a.name && -1 == b.indexOf(a.name) && (b += ": " + a.name); | |
a.message && -1 == b.indexOf(a.message) && (b += ": " + a.message); | |
a.stack && (b = Xd(a.stack, b)); | |
return b | |
}, | |
Xd = function(a, b) { | |
try { | |
-1 == a.indexOf(b) && (a = b + "\n" + a); | |
for (var c; a != c;) c = a, a = a.replace(/((https?:\/..*\/)[^\/:]*:\d+(?:.|\n)*)\2/, "$1"); | |
return a.replace(/\n */g, "\n") | |
} catch (d) { | |
return b | |
} | |
}; | |
var Yd = function(a) { | |
return function() { | |
return a | |
} | |
}, | |
Zd = function(a) { | |
var b = arguments, | |
c = b.length; | |
return function() { | |
for (var a = 0; a < c; a++) | |
if (!b[a].apply(this, arguments)) return !1; | |
return !0 | |
} | |
}, | |
$d = function(a, b) { | |
b && (a = z(a, b)); | |
var c = null, | |
d = !1, | |
e = [], | |
f = function() { | |
c = null; | |
d && (d = !1, g()) | |
}, | |
g = function() { | |
c = q.setTimeout(f, 200); | |
a.apply(null, e) | |
}; | |
return function(a) { | |
e = arguments; | |
c ? d = !0 : g() | |
} | |
}; | |
var ae = function(a, b, c) { | |
if ("" == b) return; | |
if (!c) { | |
a.l[b] = !0; | |
return | |
} | |
a.j.hasOwnProperty(c) && (a.j[c] = b) | |
}, | |
be = function(a, b) { | |
return a.j.hasOwnProperty(b) ? a.j[b] : "" | |
}, | |
de = function() { | |
var a = ce, | |
b = []; | |
I(a.l, function(a, d) { | |
b.push(d) | |
}); | |
I(a.j, function(a) { | |
"" != a && b.push(a) | |
}); | |
return b | |
}; | |
var ee = function(a) { | |
return x(a) && isFinite(a) && 0 == a % 1 && 0 <= a | |
}, | |
ge = function() { | |
return fe().replace(/[^a-zA-Z0-9]/g, function(a) { | |
return "&#" + a.charCodeAt() + ";" | |
}) | |
}, | |
he = function() { | |
return J("#6#") ? "https:" : "http:" | |
}, | |
ie = function(a) { | |
var b = a.split("/"); | |
return "/" == a.charAt(0) && 2 <= b.length ? b[1] : "/" != a.charAt(0) && 1 <= b.length ? b[0] : "" | |
}, | |
je = function(a) { | |
var b = [], | |
b = wa(a, function(a) { | |
return ie(a.getAdUnitPath()) | |
}); | |
Gc(b); | |
return b | |
}, | |
ke = {}, | |
J = function(a) { | |
return ke[a] || la()._vars_[a] | |
}; | |
var le = null, | |
me = function(a) { | |
for (var b = window, c = 0, d = b, e = 0; b && b != b.parent;) | |
if (b = b.parent, e++, kd(b)) d = b, c = e; | |
else if (a) break; | |
return { | |
Da: d, | |
level: c | |
} | |
}; | |
var ne = document, | |
K = window; | |
var oe = function() { | |
return H("iPhone") && !H("iPod") && !H("iPad") | |
}; | |
var pe = H("Opera"), | |
L = Zc(), | |
qe = H("Edge"), | |
re = qe || L, | |
se = H("Gecko") && !(-1 != Wc.toLowerCase().indexOf("webkit") && !H("Edge")) && !(H("Trident") || H("MSIE")) && !H("Edge"), | |
te = -1 != Wc.toLowerCase().indexOf("webkit") && !H("Edge"), | |
ue = function() { | |
var a = q.document; | |
return a ? a.documentMode : void 0 | |
}, | |
ve; | |
a: { | |
var we = "", | |
xe = function() { | |
var a = Wc; | |
if (se) return /rv\:([^\);]+)(\)|;)/.exec(a); | |
if (qe) return /Edge\/([\d\.]+)/.exec(a); | |
if (L) return /\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(a); | |
if (te) return /WebKit\/(\S+)/.exec(a); | |
if (pe) return /(?:Version)[ \/]?(\S+)/.exec(a) | |
}(); | |
xe && (we = xe ? xe[1] : ""); | |
if (L) { | |
var ye = ue(); | |
if (null != ye && ye > parseFloat(we)) { | |
ve = String(ye); | |
break a | |
} | |
} | |
ve = we | |
} | |
var ze = ve, | |
id = {}, | |
Ae = function(a) { | |
return jd(a, function() { | |
for (var b = 0, c = cc(String(ze)).split("."), d = cc(String(a)).split("."), e = Math.max(c.length, d.length), f = 0; 0 == b && f < e; f++) { | |
var g = c[f] || "", | |
h = d[f] || ""; | |
do { | |
g = /(\d*)(\D*)(.*)/.exec(g) || ["", "", "", ""]; | |
h = /(\d*)(\D*)(.*)/.exec(h) || ["", "", "", ""]; | |
if (0 == g[0].length && 0 == h[0].length) break; | |
b = tc(0 == g[1].length ? 0 : parseInt(g[1], 10), 0 == h[1].length ? 0 : parseInt(h[1], 10)) || tc(0 == g[2].length, 0 == h[2].length) || tc(g[2], h[2]); | |
g = g[3]; | |
h = h[3] | |
} while (0 == b) | |
} | |
return 0 <= b | |
}) | |
}, | |
Be = q.document, | |
Ce = Be && L ? ue() || ("CSS1Compat" == Be.compatMode ? parseInt(ze, 10) : 5) : void 0; | |
var De = function(a, b) { | |
this.x = r(a) ? a : 0; | |
this.y = r(b) ? b : 0 | |
}; | |
De.prototype.ceil = function() { | |
this.x = Math.ceil(this.x); | |
this.y = Math.ceil(this.y); | |
return this | |
}; | |
De.prototype.floor = function() { | |
this.x = Math.floor(this.x); | |
this.y = Math.floor(this.y); | |
return this | |
}; | |
De.prototype.round = function() { | |
this.x = Math.round(this.x); | |
this.y = Math.round(this.y); | |
return this | |
}; | |
var Ee = function(a, b) { | |
this.width = a; | |
this.height = b | |
}; | |
k = Ee.prototype; | |
k.Pa = function() { | |
return this.width * this.height | |
}; | |
k.isEmpty = function() { | |
return !this.Pa() | |
}; | |
k.ceil = function() { | |
this.width = Math.ceil(this.width); | |
this.height = Math.ceil(this.height); | |
return this | |
}; | |
k.floor = function() { | |
this.width = Math.floor(this.width); | |
this.height = Math.floor(this.height); | |
return this | |
}; | |
k.round = function() { | |
this.width = Math.round(this.width); | |
this.height = Math.round(this.height); | |
return this | |
}; | |
var Fe = !L || 9 <= Number(Ce), | |
Ge = !se && !L || L && 9 <= Number(Ce) || se && Ae("1.9.1"); | |
L && Ae("9"); | |
var He = L || pe || te; | |
var Ke = function(a) { | |
return a ? new Ie(Je(a)) : ac || (ac = new Ie) | |
}, | |
Le = function(a) { | |
var b = document; | |
return w(a) ? b.getElementById(a) : a | |
}, | |
Ne = function(a, b) { | |
Mc(b, function(b, d) { | |
"style" == d ? a.style.cssText = b : "class" == d ? a.className = b : "for" == d ? a.htmlFor = b : Me.hasOwnProperty(d) ? a.setAttribute(Me[d], b) : 0 == d.lastIndexOf("aria-", 0) || 0 == d.lastIndexOf("data-", 0) ? a.setAttribute(d, b) : a[d] = b | |
}) | |
}, | |
Me = { | |
cellpadding: "cellPadding", | |
cellspacing: "cellSpacing", | |
colspan: "colSpan", | |
frameborder: "frameBorder", | |
height: "height", | |
maxlength: "maxLength", | |
nonce: "nonce", | |
role: "role", | |
rowspan: "rowSpan", | |
type: "type", | |
usemap: "useMap", | |
valign: "vAlign", | |
width: "width" | |
}, | |
Oe = function(a) { | |
a = a.document; | |
a = "CSS1Compat" == a.compatMode ? a.documentElement : a.body; | |
return new Ee(a.clientWidth, a.clientHeight) | |
}, | |
Pe = function(a) { | |
return a.scrollingElement ? a.scrollingElement : te || "CSS1Compat" != a.compatMode ? a.body || a.documentElement : a.documentElement | |
}, | |
Qe = function(a) { | |
return a.parentWindow || a.defaultView | |
}, | |
Se = function(a, b, c) { | |
function d(c) { | |
c && b.appendChild(w(c) ? a.createTextNode(c) : c) | |
} | |
for (var e = | |
2; e < c.length; e++) { | |
var f = c[e]; | |
!da(f) || y(f) && 0 < f.nodeType ? d(f) : G(Re(f) ? Ec(f) : f, d) | |
} | |
}, | |
Te = function(a) { | |
return Ge && void 0 != a.children ? a.children : vc(a.childNodes, function(a) { | |
return 1 == a.nodeType | |
}) | |
}, | |
Je = function(a) { | |
return 9 == a.nodeType ? a : a.ownerDocument || a.document | |
}, | |
Re = function(a) { | |
if (a && "number" == typeof a.length) { | |
if (y(a)) return "function" == typeof a.item || "string" == typeof a.item; | |
if (fa(a)) return "function" == typeof a.item | |
} | |
return !1 | |
}, | |
Ie = function(a) { | |
this.j = a || q.document || document | |
}; | |
Ie.prototype.l = function(a, b, c) { | |
var d = this.j, | |
e = arguments, | |
f = String(e[0]), | |
g = e[1]; | |
if (!Fe && g && (g.name || g.type)) { | |
f = ["<", f]; | |
g.name && f.push(' name="', kc(g.name), '"'); | |
if (g.type) { | |
f.push(' type="', kc(g.type), '"'); | |
var h = {}; | |
Vc(h, g); | |
delete h.type; | |
g = h | |
} | |
f.push(">"); | |
f = f.join("") | |
} | |
f = d.createElement(f); | |
g && (w(g) ? f.className = g : t(g) ? f.className = g.join(" ") : Ne(f, g)); | |
2 < e.length && Se(d, f, e); | |
return f | |
}; | |
var Ue = function(a, b, c, d) { | |
this.top = a; | |
this.right = b; | |
this.bottom = c; | |
this.left = d | |
}, | |
Ve = function(a) { | |
return new Ue(a.top, a.right, a.bottom, a.left) | |
}; | |
Ue.prototype.ceil = function() { | |
this.top = Math.ceil(this.top); | |
this.right = Math.ceil(this.right); | |
this.bottom = Math.ceil(this.bottom); | |
this.left = Math.ceil(this.left); | |
return this | |
}; | |
Ue.prototype.floor = function() { | |
this.top = Math.floor(this.top); | |
this.right = Math.floor(this.right); | |
this.bottom = Math.floor(this.bottom); | |
this.left = Math.floor(this.left); | |
return this | |
}; | |
Ue.prototype.round = function() { | |
this.top = Math.round(this.top); | |
this.right = Math.round(this.right); | |
this.bottom = Math.round(this.bottom); | |
this.left = Math.round(this.left); | |
return this | |
}; | |
var We = function(a, b, c, d) { | |
this.left = a; | |
this.top = b; | |
this.width = c; | |
this.height = d | |
}, | |
Xe = function(a) { | |
return new Ue(a.top, a.left + a.width, a.top + a.height, a.left) | |
}, | |
Ye = function(a) { | |
return new We(a.left, a.top, a.right - a.left, a.bottom - a.top) | |
}, | |
Ze = function(a, b) { | |
var c = Math.max(a.left, b.left), | |
d = Math.min(a.left + a.width, b.left + b.width); | |
if (c <= d) { | |
var e = Math.max(a.top, b.top), | |
f = Math.min(a.top + a.height, b.top + b.height); | |
if (e <= f) return new We(c, e, d - c, f - e) | |
} | |
return null | |
}; | |
We.prototype.ceil = function() { | |
this.left = Math.ceil(this.left); | |
this.top = Math.ceil(this.top); | |
this.width = Math.ceil(this.width); | |
this.height = Math.ceil(this.height); | |
return this | |
}; | |
We.prototype.floor = function() { | |
this.left = Math.floor(this.left); | |
this.top = Math.floor(this.top); | |
this.width = Math.floor(this.width); | |
this.height = Math.floor(this.height); | |
return this | |
}; | |
We.prototype.round = function() { | |
this.left = Math.round(this.left); | |
this.top = Math.round(this.top); | |
this.width = Math.round(this.width); | |
this.height = Math.round(this.height); | |
return this | |
}; | |
var $e = function(a, b) { | |
var c = Je(a); | |
return c.defaultView && c.defaultView.getComputedStyle && (c = c.defaultView.getComputedStyle(a, null)) ? c[b] || c.getPropertyValue(b) || "" : "" | |
}, | |
af = function(a, b) { | |
return $e(a, b) || (a.currentStyle ? a.currentStyle[b] : null) || a.style && a.style[b] | |
}, | |
bf = function(a) { | |
var b; | |
try { | |
b = a.getBoundingClientRect() | |
} catch (c) { | |
return { | |
left: 0, | |
top: 0, | |
right: 0, | |
bottom: 0 | |
} | |
} | |
L && a.ownerDocument.body && (a = a.ownerDocument, b.left -= a.documentElement.clientLeft + a.body.clientLeft, b.top -= a.documentElement.clientTop + a.body.clientTop); | |
return b | |
}, | |
cf = function(a) { | |
if (L && !(8 <= Number(Ce))) return a.offsetParent; | |
var b = Je(a), | |
c = af(a, "position"), | |
d = "fixed" == c || "absolute" == c; | |
for (a = a.parentNode; a && a != b; a = a.parentNode) | |
if (11 == a.nodeType && a.host && (a = a.host), c = af(a, "position"), d = d && "static" == c && a != b.documentElement && a != b.body, !d && (a.scrollWidth > a.clientWidth || a.scrollHeight > a.clientHeight || "fixed" == c || "absolute" == c || "relative" == c)) return a; | |
return null | |
}, | |
df = function(a) { | |
var b = Je(a), | |
c = new De(0, 0), | |
d; | |
d = b ? Je(b) : document; | |
d = !L || 9 <= Number(Ce) || "CSS1Compat" == | |
Ke(d).j.compatMode ? d.documentElement : d.body; | |
if (a == d) return c; | |
a = bf(a); | |
d = Ke(b).j; | |
b = Pe(d); | |
d = Qe(d); | |
b = L && Ae("10") && d.pageYOffset != b.scrollTop ? new De(b.scrollLeft, b.scrollTop) : new De(d.pageXOffset || b.scrollLeft, d.pageYOffset || b.scrollTop); | |
c.x = a.left + b.x; | |
c.y = a.top + b.y; | |
return c | |
}, | |
ef = function(a) { | |
"number" == typeof a && (a = Math.round(a) + "px"); | |
return a | |
}, | |
ff = function(a) { | |
var b = a.offsetWidth, | |
c = a.offsetHeight, | |
d = te && !b && !c; | |
return r(b) && !d || !a.getBoundingClientRect ? new Ee(b, c) : (a = bf(a), new Ee(a.right - a.left, a.bottom - a.top)) | |
}; | |
var gf = Object.prototype.hasOwnProperty, | |
hf = function(a, b) { | |
for (var c in a) gf.call(a, c) && b.call(void 0, a[c], c, a) | |
}, | |
kf = function() { | |
var a = jf(); | |
"google_onload_fired" in a || (a.google_onload_fired = !1, Fd(a, "load", function() { | |
a.google_onload_fired = !0 | |
})) | |
}, | |
lf = function(a, b) { | |
var c = b - 8; | |
if (a.length > b) { | |
var d = a.lastIndexOf("&", c); - 1 !== d ? a = a.substring(0, d) : (a = a.substring(0, c), a = a.replace(/%\w?$/, "")); | |
a += "&trunc=1" | |
} | |
return a | |
}, | |
mf = !!window.google_async_iframe_id, | |
nf = mf && window.parent || window, | |
jf = function() { | |
if (mf && !kd(nf)) { | |
var a = | |
"." + ne.domain; | |
try { | |
for (; 2 < a.split(".").length && !kd(nf);) ne.domain = a = a.substr(a.indexOf(".") + 1), nf = window.parent | |
} catch (b) {} | |
kd(nf) || (nf = window) | |
} | |
return nf | |
}, | |
of = function() { | |
var a, b, c = window.ActiveXObject; | |
if (navigator.plugins && navigator.mimeTypes.length) { | |
if ((a = navigator.plugins["Shockwave Flash"]) && a.description) return a.description.replace(/([a-zA-Z]|\s)+/, "").replace(/(\s)+r/, ".") | |
} else { | |
if (navigator.userAgent && 0 <= navigator.userAgent.indexOf("Windows CE")) { | |
b = 3; | |
for (a = 1; a;) try { | |
a = new c("ShockwaveFlash.ShockwaveFlash." + | |
(b + 1)), b++ | |
} catch (d) { | |
a = null | |
} | |
return b.toString() | |
} | |
if (Zc()) { | |
a = null; | |
try { | |
a = new c("ShockwaveFlash.ShockwaveFlash.7") | |
} catch (d) { | |
b = 0; | |
try { | |
a = new c("ShockwaveFlash.ShockwaveFlash.6"), b = 6, a.AllowScriptAccess = "always" | |
} catch (e) { | |
if (6 === b) return b.toString() | |
} | |
try { | |
a = new c("ShockwaveFlash.ShockwaveFlash") | |
} catch (e) {} | |
} | |
if (a) return b = a.GetVariable("$version").split(" ")[1], b.replace(/,/g, ".") | |
} | |
} | |
return "0" | |
}; | |
var Ud; | |
Ud = new Qd(new function() { | |
this.o = "http:" === K.location.protocol ? "http:" : "https:"; | |
this.l = "pagead2.googlesyndication.com"; | |
this.m = "/pagead/gen_204?id="; | |
this.j = .01 | |
}, "jserror", !0); | |
var pf = /Trident|MSIE/, | |
qf = /rv:11|Trident\/[78]/, | |
sf = function() { | |
var a = rf; | |
return q.google_osd_loaded ? !1 : (ld(q.document, a), q.google_osd_loaded = !0) | |
}, | |
uf = function(a, b) { | |
tf() ? Fd(a, "readystatechange", function(c) { | |
a && "complete" == a.readyState && b(c) | |
}) : Fd(a, "load", b) | |
}, | |
vf = function() { | |
var a = (jf() || q).google_osd_amcb; | |
return fa(a) ? a : null | |
}, | |
tf = function() { | |
var a = q.navigator; | |
return (a = a && a.userAgent) ? pf.test(a) && !qf.test(a) : !1 | |
}; | |
var wf = function(a) { | |
a = a || q; | |
var b = a.context; | |
if (!b) try { | |
b = a.parent.context | |
} catch (c) {} | |
try { | |
if (b && "pageViewId" in b && "canonicalUrl" in b) return b | |
} catch (c) {} | |
return null | |
}, | |
xf = function() { | |
var a = wf(); | |
return a && a.initialIntersection ? a.initialIntersection : null | |
}, | |
yf = function() { | |
var a = xf(); | |
return a && y(a.rootBounds) ? new Ee(a.rootBounds.width, a.rootBounds.height) : null | |
}, | |
zf = function() { | |
var a = xf(); | |
return a && y(a.rootBounds) ? new De(a.rootBounds.left + a.boundingClientRect.left, a.rootBounds.top + a.boundingClientRect.top) : null | |
}; | |
var Cf = function() { | |
var a = Af, | |
b = Bf; | |
if (!(window && Math.random && navigator)) return -1; | |
if (window.__google_ad_urls) { | |
var c = window.__google_ad_urls; | |
try { | |
if (c && c.getOseId()) return c.getOseId() | |
} catch (e) {} | |
} | |
if (!window.__google_ad_urls_id) { | |
var c = window.google_enable_ose, | |
d; | |
!0 === c ? d = 2 : !1 !== c && (d = nd([0], a), null == d && ((d = nd([2], b)) || (d = 3))); | |
if (!d) return 0; | |
window.__google_ad_urls_id = d | |
} | |
return window.__google_ad_urls_id | |
}, | |
Df = function() { | |
var a = 0; | |
!r(q.postMessage) && (a |= 1); | |
return a | |
}; | |
var Ef = function(a, b) { | |
this.o = a; | |
this.l = b && b.l ? b.l : []; | |
this.m = b && b.m ? b.m : 0; | |
this.u = b ? b.u : ""; | |
this.j = b && b.j ? b.j : []; | |
if (b) { | |
var c; | |
for (c = 0; c < this.l.length; ++c) this.l[c].push("true"); | |
for (c = 0; c < this.j.length; ++c) this.j[c].Ja = !0 | |
} | |
}, | |
rf = "", | |
Bf = 0, | |
Af = 0, | |
Ff = function(a, b) { | |
var c = a.l, | |
d = a.o.google_ad_request_done; | |
d && (d = d.orig_callback || d, a.o.google_ad_request_done = function(a) { | |
if (a && 0 < a.length) { | |
var e = 1 < a.length ? a[1].url : null, | |
g = a[0].log_info || null, | |
h = a[0].activeview_url || null, | |
l = a[0].activeview_js_enabled || null, | |
m = a[0].activeview_js_immediate_enabled || | |
null, | |
n = a[0].activeview_js_tos_enabled || null, | |
p = a[0].activeview_cid || null, | |
v = a[0].activeview_metadata || null, | |
u = a[0].image_url || "", | |
D = a[0].type || null; | |
c.push([b, nc(a[0].url), e, g, null, h, l, m, n, p, v, nc(u), D]) | |
} | |
d(a) | |
}, a.o.google_ad_request_done.orig_callback = d) | |
}, | |
Hf = function(a, b, c, d) { | |
var e = a.l, | |
f = d || 0, | |
g = b.document; | |
if (0 < e.length) | |
for (var h = g.getElementsByTagName("a"), l = 0; l < h.length; l++) | |
for (var m = 0; m < e.length; m++) | |
if (0 <= h[l].href.indexOf(e[m][1])) { | |
var n = h[l].parentNode; | |
if (e[m][2]) | |
for (var p = n, v = 0; 4 > v; v++) { | |
if (0 <= p.innerHTML.indexOf(e[m][2])) { | |
n = | |
p; | |
break | |
} | |
p = p.parentNode | |
} | |
Gf(e[m], n, f, c); | |
e.splice(m, 1); | |
break | |
} | |
if (0 < e.length) | |
for (n = g.getElementsByTagName("embed"), l = 0; l < n.length; l++) | |
for (m = 0; m < e.length; m++) | |
if (p = e[m][12], h = e[m][11], "flash" == p && h && (p = n[l], p.src == h)) { | |
var u = p; | |
0 == u.getBoundingClientRect().height && u.parentElement && "OBJECT" == u.parentElement.tagName && (u = u.parentElement); | |
Gf(e[m], u, f, c); | |
e.splice(m, 1); | |
break | |
} | |
if (0 < e.length) | |
for (g = g.getElementsByTagName("param"), l = 0; l < g.length; l++) | |
for (m = 0; m < e.length; m++) | |
if (p = e[m][12], h = e[m][11], "flash" == p && h && (n = g[l], | |
"movie" == n.name && n.value == h)) { | |
n.parentNode && "OBJECT" == n.parentNode.tagName && (u = n.parentNode); | |
if (!u) break; | |
Gf(e[m], u, f, c); | |
e.splice(m, 1); | |
break | |
} | |
if (l = 0 < e.length) le || (le = me(!0).Da), l = b != le; | |
if (l) try { | |
Hf(a, b.parent, c, d) | |
} catch (D) {} | |
for (l = 0; l < e.length; ++l) a = e[l], "true" == a[6] && If("osd2", a[3]), "true" == a[7] && If("osdim", a[3]) | |
}, | |
Gf = function(a, b, c, d) { | |
d(b, a[0], c, !0, a[3], void 0, a[5], "true" == a[6], "true" == a[7], "true" == a[13], "true" == a[8], a[9], a[10]) | |
}, | |
If = function(a, b) { | |
if (a && b) { | |
var c = ["//"]; | |
c.push("pagead2.googlesyndication.com"); | |
c.push("/activeview"); | |
c.push("?id=" + a); | |
c.push("&r=j"); | |
c.push("&avi=" + b); | |
Od(q, c.join("")) | |
} | |
}; | |
k = Ef.prototype; | |
k.getNewBlocks = function(a, b) { | |
b && Hf(this, this.o, a, 1); | |
for (var c = this.j.length, d = 0; d < c; d++) { | |
var e = this.j[d]; | |
!e.m && e.j && (a(e.j, e.o, e.v, e.l, "", void 0, "", !1, !1, e.Ja, !1, "", "", e.u), e.m = !0) | |
} | |
b && ((jf() || q).google_osd_amcb = a) | |
}; | |
k.setupOse = function(a) { | |
if (this.getOseId()) return this.getOseId(); | |
var b = Cf(); | |
if (!b) return 0; | |
this.m = b; | |
this.u = String(a || 0); | |
return this.getOseId() | |
}; | |
k.getOseId = function() { | |
return window && Math.random && navigator ? this.m : -1 | |
}; | |
k.getCorrelator = function() { | |
return this.u | |
}; | |
k.numBlocks = function() { | |
return this.l.length + this.j.length | |
}; | |
k.registerAdBlock = function(a, b, c, d, e, f, g) { | |
if ((e = vf()) && d) e(d, a, b, !0, "", void 0, "", !1, !1, !1, !1, "", "", g); | |
else { | |
if ("js" == c) Ff(this, a); | |
else { | |
var h = new Jf(a, b, d, g); | |
this.j.push(h); | |
d && uf(d, Vd(function() { | |
h.l = !0 | |
})) | |
} | |
sf() && kf() | |
} | |
}; | |
k.unloadAdBlock = function(a, b) { | |
r(window.Goog_Osd_UnloadAdBlock) && window.Goog_Osd_UnloadAdBlock(a, b) | |
}; | |
var Kf = function() { | |
var a = jf(), | |
b = a.__google_ad_urls; | |
if (!b) return a.__google_ad_urls = new Ef(a); | |
try { | |
if (0 <= b.getOseId()) return b | |
} catch (c) {} | |
return a.__google_ad_urls = new Ef(a, b) | |
}, | |
Jf = function(a, b, c, d) { | |
this.o = a; | |
this.v = b; | |
this.j = c; | |
this.Ja = this.m = this.l = !1; | |
this.u = d || aa | |
}; | |
ka("Goog_AdSense_getAdAdapterInstance", Kf); | |
ka("Goog_AdSense_OsdAdapter", Ef); | |
ka("Goog_AdSense_OsdAdapter.prototype.numBlocks", Ef.prototype.numBlocks); | |
ka("Goog_AdSense_OsdAdapter.prototype.getNewBlocks", Ef.prototype.getNewBlocks); | |
ka("Goog_AdSense_OsdAdapter.prototype.getOseId", Ef.prototype.getOseId); | |
ka("Goog_AdSense_OsdAdapter.prototype.getCorrelator", Ef.prototype.getCorrelator); | |
ka("Goog_AdSense_OsdAdapter.prototype.setupOse", Ef.prototype.setupOse); | |
ka("Goog_AdSense_OsdAdapter.prototype.registerAdBlock", Ef.prototype.registerAdBlock); | |
ka("Goog_AdSense_OsdAdapter.prototype.unloadAdBlock", Ef.prototype.unloadAdBlock); | |
var M = q.googletag._vars_, | |
Lf = M["#7#"], | |
Mf = M["#20#"], | |
rf = Md(new Hd, M["#6#"] ? "https:" : "http:", M["#1#"], "/pagead/osd.js"), | |
Bf = Lf, | |
Af = Mf; | |
var Nf = function(a) { | |
var b = "//tpc.googlesyndication.com/safeframe/1-0-4/html/container.html", | |
c; | |
c = a; | |
for (var d = 0; c != c.parent;) d++, c = c.parent; | |
(c = d) && (b += "?n=" + c); | |
return (rd(a) ? "https:" : "http:") + b | |
}; | |
var Of = !1, | |
Pf = "", | |
Qf = function(a) { | |
a = a.match(/[\d]+/g); | |
if (!a) return ""; | |
a.length = 3; | |
return a.join(".") | |
}; | |
(function() { | |
if (navigator.plugins && navigator.plugins.length) { | |
var a = navigator.plugins["Shockwave Flash"]; | |
if (a && (Of = !0, a.description)) { | |
Pf = Qf(a.description); | |
return | |
} | |
if (navigator.plugins["Shockwave Flash 2.0"]) { | |
Of = !0; | |
Pf = "2.0.0.11"; | |
return | |
} | |
} | |
if (navigator.mimeTypes && navigator.mimeTypes.length && (a = navigator.mimeTypes["application/x-shockwave-flash"], Of = !(!a || !a.enabledPlugin))) { | |
Pf = Qf(a.enabledPlugin.description); | |
return | |
} | |
try { | |
var b = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7"); | |
Of = !0; | |
Pf = Qf(b.GetVariable("$version")); | |
return | |
} catch (c) {} | |
try { | |
b = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6"); | |
Of = !0; | |
Pf = "6.0.21"; | |
return | |
} catch (c) {} | |
try { | |
b = new ActiveXObject("ShockwaveFlash.ShockwaveFlash"), Of = !0, Pf = Qf(b.GetVariable("$version")) | |
} catch (c) {} | |
})(); | |
var Rf = Of, | |
Sf = Pf; | |
var Tf = H("Firefox"), | |
Uf = oe() || H("iPod"), | |
Vf = H("iPad"), | |
Wf = H("Android") && !($c() || H("Firefox") || H("Opera") || H("Silk")), | |
Xf = $c(), | |
Yf = H("Safari") && !($c() || H("Coast") || H("Opera") || H("Edge") || H("Silk") || H("Android")) && !(oe() || H("iPad") || H("iPod")); | |
var Zf = function(a) { | |
return (a = a.exec(Wc)) ? a[1] : "" | |
}; | |
(function() { | |
if (Tf) return Zf(/Firefox\/([0-9.]+)/); | |
if (L || qe || pe) return ze; | |
if (Xf) return Zf(/Chrome\/([0-9.]+)/); | |
if (Yf && !(oe() || H("iPad") || H("iPod"))) return Zf(/Version\/([0-9.]+)/); | |
if (Uf || Vf) { | |
var a = /Version\/(\S+).*Mobile\/(\S+)/.exec(Wc); | |
if (a) return a[1] + "." + a[2] | |
} else if (Wf) return (a = Zf(/Android\s+([0-9.]+)/)) ? a : Zf(/Version\/([0-9.]+)/); | |
return "" | |
})(); | |
var $f = function(a, b, c) { | |
b = b || K; | |
a && b.top != b && (b = b.top); | |
try { | |
return b.document && !b.document.body ? new Ee(-1, -1) : c ? (new Ee(b.innerWidth, b.innerHeight)).round() : Oe(b || window).round() | |
} catch (d) { | |
return new Ee(-12245933, -12245933) | |
} | |
}; | |
var ag = function(a) { | |
return !!a && a.top == a | |
}, | |
bg = function(a, b, c, d) { | |
c = c || a.google_ad_width; | |
d = d || a.google_ad_height; | |
if (ag(a)) return !1; | |
var e = b.documentElement; | |
if (c && d) { | |
var f = 1, | |
g = 1; | |
a.innerHeight ? (f = a.innerWidth, g = a.innerHeight) : e && e.clientHeight ? (f = e.clientWidth, g = e.clientHeight) : b.body && (f = b.body.clientWidth, g = b.body.clientHeight); | |
if (g > 2 * d || f > 2 * c) return !1 | |
} | |
return !0 | |
}, | |
cg = function(a, b) { | |
var c = {}; | |
c.rb = me(!1).Da; | |
var d; | |
var e = c.rb; | |
d = e.location.href; | |
if (e == e.top) d = { | |
url: d, | |
La: !0 | |
}; | |
else { | |
var f = !1, | |
g = e.document; | |
g && g.referrer && | |
(d = g.referrer, e.parent == e.top && (f = !0)); | |
(e = e.location.ancestorOrigins) && (e = e[e.length - 1]) && -1 == d.indexOf(e) && (f = !1, d = e); | |
d = { | |
url: d, | |
La: f | |
} | |
} | |
c.sb = d; | |
c.bb = bg(jf(), b, a.google_ad_width, a.google_ad_height); | |
d = c.bb; | |
f = c.sb.La; | |
e = jf(); | |
e = e.top == e ? 0 : kd(e.top) ? 1 : 2; | |
g = 4; | |
d || 1 != e ? d || 2 != e ? d && 1 == e ? g = 7 : d && 2 == e && (g = 8) : g = 6 : g = 5; | |
f && (g |= 16); | |
c.ab = "" + g; | |
return c | |
}; | |
var eg = function(a, b) { | |
var c = a.getPassbackPageUrl(); | |
if ("" != c) return c; | |
c = b[N(a)]; | |
return null != c ? dg(c) : null | |
}, | |
fg = function(a) { | |
var b = a; | |
"about:blank" != a && (b = b.replace(/</g, "%3C").replace(/>/g, "%3E").replace(/"/g, "%22").replace(/'/g, "%27"), /^https?:\/\//.test(b) || (b = "unknown:" + b)); | |
return b | |
}, | |
gg = /\+/g, | |
hg = function(a) { | |
var b = M["#6#"]; | |
return a || b ? "https://" + M["#3#"] : "http://" + M["#2#"] | |
}, | |
ig = function() { | |
var a = navigator.userAgent, | |
b = a.indexOf("MSIE "); | |
return -1 == b ? 0 : parseFloat(a.substring(b + 5, a.indexOf(";", b))) | |
}, | |
jg = function() { | |
var a = | |
Wc; | |
return null != a && -1 != a.indexOf("MSIE ") && -1 == a.indexOf("IEMobile") | |
}, | |
lg = function(a, b) { | |
var c = 0, | |
d = []; | |
a && (d.push(a.getAdUnitPath()), d.push(kg(a)), d.push(a.getSlotElementId())); | |
if (b) { | |
var e; | |
e = []; | |
for (var f = 0, g = b; g && 25 > f; g = g.parentNode, ++f) e.push(9 !== g.nodeType && g.id || ""); | |
(e = e.join()) && d.push(e) | |
} | |
0 < d.length && (c = qd(d.join(":"))); | |
return c.toString() | |
}, | |
mg = function(a, b) { | |
if (null == b) return a; | |
var c = a.indexOf("google_preview=", a.lastIndexOf("?")), | |
d = a.indexOf("&", c); - 1 == d && (d = a.length - 1, --c); | |
return a.substring(0, | |
c) + a.substring(d + 1, a.length) | |
}, | |
ng = { | |
VISIBLE: "visible", | |
HIDDEN: "hidden", | |
PRERENDER: "prerender", | |
yb: "other" | |
}, | |
og = function(a) { | |
a = a || document; | |
a = a.webkitVisibilityState || a.mozVisibilityState || a.visibilityState || "visible"; | |
return Pc(ng, a) ? a : "other" | |
}, | |
pg = !(!q.JSON || !q.JSON.parse) && (!L || Ae(10)) && (!pe || Ae(12)); | |
var ce = new function() { | |
this.l = {}; | |
this.j = {}; | |
for (var a = [], b = 0, c = a.length; b < c; ++b) this.j[a[b]] = "" | |
}, | |
qg = [], | |
rg = !1, | |
O = function(a, b, c, d, e) { | |
c = c || []; | |
a = new sg(a); | |
d || (tg(a, b, c), e && b && be(a.l, a.m) && !rg && (d = od(a.j), rg = Math.random() * b * d < J("#37#"))); | |
qg.push(a); | |
return a | |
}, | |
sg = function(a) { | |
var b = ce; | |
this.j = a; | |
this.l = b; | |
this.m = "exp" + (this[ga] || (this[ga] = ++ha)); | |
this.l.j[this.m] = "" | |
}, | |
tg = function(a, b, c) { | |
if (Zd.apply(a, c)()) { | |
var d = pd(a.j); | |
c = a.l; | |
b *= d.length; | |
if ((a = a.m) ? c.j.hasOwnProperty(a) && "" == c.j[a] : 1) { | |
var e; | |
b: { | |
try { | |
var f = window.top.location.hash; | |
if (f) { | |
var g = f.match(/\bdeid=([\d,]+)/); | |
e = g && g[1] || ""; | |
break b | |
} | |
} catch (h) {} | |
e = "" | |
}(d = (e = (e = e.match(new RegExp("\\b(" + d.join("|") + ")\\b"))) && e[0] || null) ? e : nd(d, b)) && ae(c, d, a) | |
} | |
} | |
}, | |
vg = function() { | |
var a = ug, | |
b = be(a.l, a.m); | |
return b ? Tc(a.j)[b] || "" : "" | |
}, | |
P = function(a, b) { | |
return Oc(a.j, b) ? a.j[b] == be(a.l, a.m) : !1 | |
}, | |
wg = function(a, b) { | |
Oc(a.j, b) && ae(a.l, a.j[b], a.m) | |
}, | |
xg = function(a) { | |
for (var b = 0; b < qg.length; ++b) { | |
var c = qg[b], | |
d = Tc(c.j)[a]; | |
if (null != d) { | |
wg(c, d); | |
return | |
} | |
} | |
ae(ce, a) | |
}, | |
yg = function() { | |
return Yd(!!la().fifWin) | |
}; | |
O({ | |
control: "108809009", | |
experiment: "108809010" | |
}, M["#18#"], [Yd(Ac(["prerender"], og(void 0)))]); | |
O({ | |
branch_1: "108809028", | |
branch_2: "108809029" | |
}, M["#27#"]); | |
var zg = O({ | |
control: "108809097", | |
experiment: "108809098" | |
}, M["#54#"], [Yd(M["#46#"])]), | |
Ag = O({ | |
control: "108809030", | |
experiment: "108809031" | |
}, M["#28#"], [function(a) { | |
return function() { | |
return !a.apply(this, arguments) | |
} | |
}(Yd(M["#46#"]))]); | |
M["#46#"] || P(Ag, "experiment") || P(Ag, "control") || xg("108809080"); | |
O({ | |
control: "108809103", | |
osd_registration: "108809104", | |
dom_content_loaded: "108809105", | |
iframe_onload: "108809106", | |
creative_element_loaded: "108809107", | |
creative_element_hybrid: "108809108", | |
listener_registration: "108809109" | |
}, M["#56#"]); | |
var Bg = O({ | |
control: "108809111", | |
experiment: "108809112" | |
}, M["#59#"]), | |
Cg = O({ | |
control: "108809113", | |
xhr_post: "108809114", | |
xhr_get: "108809151" | |
}, M["#60#"], [Yd(pg)]), | |
Dg = O({ | |
control: "108809115", | |
experiment: "108809116" | |
}, M["#61#"]), | |
Eg = O({ | |
control: "108809117", | |
experiment: "108809118" | |
}, 0, [], !0), | |
Fg = O({ | |
control: "108809124", | |
experiment: "108809125" | |
}, M["#63#"]), | |
Gg = O({ | |
control: "108809126", | |
experiment: "108809127" | |
}, M["#64#"], [yg()]), | |
Hg = O({ | |
control: "108809132", | |
experiment: "108809133" | |
}, M["#65#"]), | |
ug = O({ | |
control: "108809134", | |
experiment: "108809135" | |
}, | |
M["#67#"]), | |
Ig = O({ | |
control: "108809145", | |
experiment: "108809146" | |
}, 0, [], !0), | |
Jg = O({ | |
control: "108809136", | |
experiment: "108809137" | |
}, M["#68#"]), | |
Kg = M["#69#"], | |
Lg = O({ | |
control: "108809138", | |
experiment: "108809139" | |
}, .5 >= Kg ? Kg : 0, [yg()]), | |
Mg = M["#69#"], | |
Ng = O({ | |
control: "108809140", | |
experiment: "108809141" | |
}, .5 >= Mg ? 0 : 1 - Mg, [yg()]), | |
Og = O({ | |
control: "108809142", | |
experiment: "108809143" | |
}, 0, [], !0); | |
O({ | |
experiment: "108809144" | |
}, M["#37#"], [], !1, !0); | |
var Pg = M["#71#"], | |
Qg = O({ | |
control: "108809147", | |
experiment: "108809148" | |
}, .5 >= Pg ? Pg : 0), | |
Rg = O({ | |
control: "108809149", | |
experiment: "108809150" | |
}, M["#72#"]), | |
Sg = O({ | |
impl_init: "108809152", | |
ad_engine_init: "108809153", | |
fetch_ads: "108809154", | |
disabled: "108809155" | |
}, M["#74#"]), | |
Tg = .5 >= M["#69#"], | |
Ug = yg()() && (Tg ? P(Lg, "experiment") : !P(Ng, "experiment")); | |
B("getVersion", function() { | |
return "95" | |
}); | |
var Wg = function(a) { | |
this.l = a; | |
this.j = Vg + "/pagead/gen_204?id=" + encodeURIComponent(a) | |
}, | |
Xg = [], | |
Vg = J("#6#") ? "https://" + J("#33#") : "http://" + J("#33#"), | |
Yg = function(a, b, c) { | |
b && b.match(/^\w+$/) && c && (a.j += "&" + b + "=" + encodeURIComponent(c)) | |
}, | |
Zg = function(a, b) { | |
if (!r(b) || 0 > b || 1 < b) b = J("#23#"); | |
Math.random() < b && a.l && a.j && Od(window, a.j) | |
}, | |
$g = function(a) { | |
Yg(a, "vrg", "95"); | |
var b = je(Xg); | |
0 < b.length && (3 >= b.length || (b = Fc(b, 0, 3), b.push("__extra__")), Yg(a, "nw_id", b.join(","))); | |
Yg(a, "nslots", Xg.length.toString()); | |
b = de(); | |
0 < b.length && | |
Yg(a, "eid", b.join()); | |
Yg(a, "pub_url", document.URL) | |
}; | |
var ah = J("#38#"), | |
bh = function(a, b) { | |
var c = { | |
methodId: a | |
}; | |
b.name && (c.name = b.name); | |
b.message && (c.message = b.message.substring(0, 512)); | |
b.fileName && (c.fileName = b.fileName); | |
b.lineNumber && (c.lineNumber = b.lineNumber); | |
b.stack && (c.stack = Xd(b.stack, "")); | |
return c | |
}, | |
Q = function(a, b) { | |
ch(a, b, void 0); | |
throw b; | |
}, | |
ch = function(a, b, c) { | |
if (!b.eb) try { | |
b.eb = !0; | |
var d = ah; | |
r(c) && 0 <= c && 1 >= c && (d = c); | |
var e = bh(a, b), | |
f = new Wg("gpt_exception"); | |
try { | |
$g(f) | |
} catch (g) {} | |
I(e, function(a, b) { | |
Yg(f, b, a) | |
}); | |
Zg(f, d) | |
} catch (g) {} | |
}; | |
var dh = function() { | |
this.l = this.j = 0 | |
}; | |
dh.prototype.push = function(a) { | |
try { | |
for (var b = ta(), c = 0; c < arguments.length; ++c) try { | |
fa(arguments[c]) && (arguments[c](), this.j++) | |
} catch (d) { | |
this.l++, window.console && window.console.error("Exception in queued GPT command", d), b.error(Ua(String(d.message))) | |
} | |
b.info(Va(String(this.j), String(this.l))); | |
return this.j | |
} catch (d) { | |
Q(1001, d) | |
} | |
}; | |
var eh = function() { | |
try { | |
var a = la().cmd; | |
if (!a || t(a)) { | |
var b = la().cmd = new dh; | |
a && 0 < a.length && b.push.apply(b, a) | |
} | |
} catch (c) { | |
Q(1002, c) | |
} | |
}; | |
(function() { | |
function a(a) { | |
this.t = {}; | |
this.tick = function(a, b, c) { | |
this.t[a] = [void 0 != c ? c : (new Date).getTime(), b]; | |
if (void 0 == c) try { | |
window.console.timeStamp("CSI/" + a) | |
} catch (l) {} | |
}; | |
this.tick("start", null, a) | |
} | |
var b, c; | |
window.performance && (c = (b = window.performance.timing) && b.responseStart); | |
var d = 0 < c ? new a(c) : new a; | |
window.GPT_jstiming = { | |
Timer: a, | |
load: d | |
}; | |
b && (b = b.navigationStart, 0 < b && c >= b && (window.GPT_jstiming.srt = c - b)); | |
try { | |
c = null, window.chrome && window.chrome.csi && (c = Math.floor(window.chrome.csi().pageT)), null == c && | |
window.gtbExternal && (c = window.gtbExternal.pageT()), null == c && window.external && (c = window.external.pageT), c && (window.GPT_jstiming.pt = c) | |
} catch (e) {} | |
})(); | |
if (window.GPT_jstiming) { | |
window.GPT_jstiming.Ea = {}; | |
window.GPT_jstiming.ob = 1; | |
var fh = function(a, b, c) { | |
var d = a.t[b], | |
e = a.t.start; | |
if (d && (e || c)) return d = a.t[b][0], void 0 != c ? e = c : e = e[0], Math.round(d - e) | |
}; | |
window.GPT_jstiming.getTick = fh; | |
var gh = function(a, b, c) { | |
var d = ""; | |
window.GPT_jstiming.srt && (d += "&srt=" + window.GPT_jstiming.srt); | |
window.GPT_jstiming.pt && (d += "&tbsrt=" + window.GPT_jstiming.pt); | |
try { | |
window.external && window.external.tran ? d += "&tran=" + window.external.tran : window.gtbExternal && window.gtbExternal.tran ? d += | |
"&tran=" + window.gtbExternal.tran() : window.chrome && window.chrome.csi && (d += "&tran=" + window.chrome.csi().tran) | |
} catch (p) {} | |
var e = window.chrome; | |
if (e && (e = e.loadTimes)) { | |
e().wasFetchedViaSpdy && (d += "&p=s"); | |
if (e().wasNpnNegotiated) { | |
var d = d + "&npn=1", | |
f = e().npnNegotiatedProtocol; | |
f && (d += "&npnv=" + (encodeURIComponent || escape)(f)) | |
} | |
e().wasAlternateProtocolAvailable && (d += "&apa=1") | |
} | |
var g = a.t, | |
h = g.start, | |
e = [], | |
f = [], | |
l; | |
for (l in g) | |
if ("start" != l && 0 != l.indexOf("_")) { | |
var m = g[l][1]; | |
m ? g[m] && f.push(l + "." + fh(a, l, g[m][0])) : h && e.push(l + | |
"." + fh(a, l)) | |
} | |
if (b) | |
for (var n in b) d += "&" + n + "=" + b[n]; | |
(b = c) || (b = "https:" == document.location.protocol ? "https://csi.gstatic.com/csi" : "http://csi.gstatic.com/csi"); | |
return [b, "?v=3", "&s=" + (window.GPT_jstiming.sn || "gpt") + "&action=", a.name, f.length ? "&it=" + f.join(",") : "", d, "&rt=", e.join(",")].join("") | |
}, | |
hh = function(a, b, c) { | |
a = gh(a, b, c); | |
if (!a) return ""; | |
b = new Image; | |
var d = window.GPT_jstiming.ob++; | |
window.GPT_jstiming.Ea[d] = b; | |
b.onload = b.onerror = function() { | |
window.GPT_jstiming && delete window.GPT_jstiming.Ea[d] | |
}; | |
b.src = | |
a; | |
b = null; | |
return a | |
}; | |
window.GPT_jstiming.report = function(a, b, c) { | |
if ("prerender" == document.webkitVisibilityState) { | |
var d = !1, | |
e = function() { | |
if (!d) { | |
b ? b.prerender = "1" : b = { | |
prerender: "1" | |
}; | |
var f; | |
"prerender" == document.webkitVisibilityState ? f = !1 : (hh(a, b, c), f = !0); | |
f && (d = !0, document.removeEventListener("webkitvisibilitychange", e, !1)) | |
} | |
}; | |
document.addEventListener("webkitvisibilitychange", e, !1); | |
return "" | |
} | |
return hh(a, b, c) | |
} | |
}; | |
var ih = function() { | |
this.l = this.l; | |
this.m = this.m | |
}; | |
ih.prototype.l = !1; | |
ih.prototype.u = function() { | |
if (this.m) | |
for (; this.m.length;) this.m.shift()() | |
}; | |
var jh = function(a) { | |
return /^\s*$/.test(a) ? !1 : /^[\],:{}\s\u2028\u2029]*$/.test(a.replace(/\\["\\\/bfnrtu]/g, "@").replace(/(?:"[^"\\\n\r\u2028\u2029\x00-\x08\x0a-\x1f]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)[\s\u2028\u2029]*(?=:|,|]|}|$)/g, "]").replace(/(?:^|:|,)(?:[\s\u2028\u2029]*\[)+/g, "")) | |
}, | |
kh = function(a) { | |
a = String(a); | |
if (jh(a)) try { | |
return eval("(" + a + ")") | |
} catch (b) {} | |
throw Error("Invalid JSON string: " + a); | |
}, | |
nh = function(a) { | |
var b = []; | |
lh(new mh, a, b); | |
return b.join("") | |
}, | |
mh = function() {}, | |
lh = function(a, | |
b, c) { | |
if (null == b) c.push("null"); | |
else { | |
if ("object" == typeof b) { | |
if (t(b)) { | |
var d = b; | |
b = d.length; | |
c.push("["); | |
for (var e = "", f = 0; f < b; f++) c.push(e), lh(a, d[f], c), e = ","; | |
c.push("]"); | |
return | |
} | |
if (b instanceof String || b instanceof Number || b instanceof Boolean) b = b.valueOf(); | |
else { | |
c.push("{"); | |
e = ""; | |
for (d in b) Object.prototype.hasOwnProperty.call(b, d) && (f = b[d], "function" != typeof f && (c.push(e), oh(d, c), c.push(":"), lh(a, f, c), e = ",")); | |
c.push("}"); | |
return | |
} | |
} | |
switch (typeof b) { | |
case "string": | |
oh(b, c); | |
break; | |
case "number": | |
c.push(isFinite(b) && | |
!isNaN(b) ? String(b) : "null"); | |
break; | |
case "boolean": | |
c.push(String(b)); | |
break; | |
case "function": | |
c.push("null"); | |
break; | |
default: | |
throw Error("Unknown type: " + typeof b); | |
} | |
} | |
}, | |
ph = { | |
'"': '\\"', | |
"\\": "\\\\", | |
"/": "\\/", | |
"\b": "\\b", | |
"\f": "\\f", | |
"\n": "\\n", | |
"\r": "\\r", | |
"\t": "\\t", | |
"\x0B": "\\u000b" | |
}, | |
qh = /\uffff/.test("\uffff") ? /[\\\"\x00-\x1f\x7f-\uffff]/g : /[\\\"\x00-\x1f\x7f-\xff]/g, | |
oh = function(a, b) { | |
b.push('"', a.replace(qh, function(a) { | |
var b = ph[a]; | |
b || (b = "\\u" + (a.charCodeAt(0) | 65536).toString(16).substr(1), ph[a] = b); | |
return b | |
}), '"') | |
}; | |
var rh = function(a, b, c, d, e) { | |
ih.call(this); | |
this.w = a; | |
this.status = 1; | |
this.o = b; | |
this.A = c; | |
this.G = d; | |
this.ka = !!e; | |
this.v = Math.random(); | |
this.B = {}; | |
this.j = null; | |
this.C = z(this.H, this) | |
}; | |
A(rh, ih); | |
rh.prototype.H = function(a) { | |
if (a.origin === this.A && (this.ka || a.source == this.o)) { | |
var b = null; | |
try { | |
b = kh(a.data) | |
} catch (c) {} | |
if (y(b) && (a = b.i, b.c === this.w && a != this.v && (2 !== this.status && (this.status = 2, sh(this), this.j && (this.j(), this.j = null)), a = b.s, b = b.p, w(a) && (w(b) || y(b)) && this.B.hasOwnProperty(a)))) this.B[a](b) | |
} | |
}; | |
var sh = function(a) { | |
var b = {}; | |
b.c = a.w; | |
b.i = a.v; | |
a.o.postMessage(nh(b), a.A) | |
}; | |
rh.prototype.D = function() { | |
if (1 === this.status) { | |
try { | |
this.o.postMessage && sh(this) | |
} catch (a) {} | |
window.setTimeout(z(this.D, this), 50) | |
} | |
}; | |
rh.prototype.connect = function(a) { | |
a && (this.j = a); | |
Fd(window, "message", this.C); | |
this.G && this.D() | |
}; | |
var th = function(a, b, c) { | |
a.B[b] = c | |
}, | |
uh = function(a, b, c) { | |
var d = {}; | |
d.c = a.w; | |
d.i = a.v; | |
d.s = b; | |
d.p = c; | |
a.o.postMessage(nh(d), a.A) | |
}; | |
rh.prototype.u = function() { | |
this.status = 3; | |
Gd(window, "message", this.C); | |
rh.Ca.u.call(this) | |
}; | |
se || te || L && Ae(11); | |
var vh = function() { | |
this.j = [] | |
}, | |
xh = function(a, b, c, d, e) { | |
a.j.push(new wh(b, c, d, e)) | |
}, | |
yh = function(a, b, c, d) { | |
xh(a, b, c, d + "px", void 0) | |
}, | |
wh = function(a, b, c, d) { | |
this.m = a; | |
this.j = (this.l = r(d) && a.style && a.style.getPropertyPriority) ? String(b).replace(/([A-Z])/g, "-$1").toLowerCase() : b; | |
this.o = this.l ? a.style.getPropertyValue(this.j) : a.style[this.j]; | |
this.u = this.l ? a.style.getPropertyPriority(this.j) : null; | |
this.l ? (a.style.removeProperty(this.j), a.style.setProperty(this.j, c, d)) : a.style[this.j] = c | |
}; | |
var zh = function(a) { | |
this.m = a; | |
this.u = null; | |
this.D = this.status = 0; | |
this.l = null; | |
this.T = "sfchannel" + a | |
}; | |
var Ah = function(a, b, c, d, e, f) { | |
this.m = Ve(a); | |
this.l = Ve(b); | |
this.o = c; | |
this.j = Ve(d); | |
this.u = e; | |
this.v = f | |
}, | |
Bh = function(a, b) { | |
var c = window.screenX || window.screenLeft || 0, | |
d = window.screenY || window.screenTop || 0, | |
e = window.outerWidth || document.documentElement.clientWidth || 0, | |
f = window.outerHeight || document.documentElement.clientHeight || 0, | |
c = b ? new Ue(d, e + c, f + d, c) : new Ue(d, e - c, f - d, c), | |
d = df(a); | |
if ("none" != af(a, "display")) e = ff(a); | |
else { | |
var e = a.style, | |
f = e.display, | |
g = e.visibility, | |
h = e.position; | |
e.visibility = "hidden"; | |
e.position = "absolute"; | |
e.display = "inline"; | |
var l = ff(a); | |
e.display = f; | |
e.position = h; | |
e.visibility = g; | |
e = l | |
} | |
var d = new We(d.x, d.y, e.width, e.height), | |
e = Xe(d), | |
f = String(af(a, "zIndex")), | |
m; | |
if (b) { | |
g = window; | |
h = g.document; | |
try { | |
var n, p = g.document; | |
n = "CSS1Compat" == p.compatMode ? p.documentElement : p.body; | |
m = new Ee(n.clientWidth, n.clientHeight) | |
} catch (sn) { | |
m = new Ee(-12245933, -12245933) | |
} | |
m = new Ee(Math.max(m.width, Math.max(h.body.scrollWidth, h.documentElement.scrollWidth)), Math.max(m.height, Math.max(h.body.scrollHeight, h.documentElement.scrollHeight))); | |
m = | |
new Ue(0, m.width, m.height, 0); | |
if (a) { | |
n = new Ue(0, Infinity, Infinity, 0); | |
g = Ke(a); | |
p = g.j.body; | |
g = g.j.documentElement; | |
h = cf(a); | |
for (l = 0; h && 100 > l; h = cf(h), l++) { | |
var v = $e(h, "overflow") || (h.currentStyle ? h.currentStyle.overflow : null) || h.style && h.style.overflow; | |
if (L && 0 == h.clientWidth || te && 0 == h.clientHeight && h == p || h == p || h == g || "hidden" != v) break; | |
else { | |
var v = df(h), | |
u = new De(h.clientLeft, h.clientTop); | |
v.x += u.x; | |
v.y += u.y; | |
n.top = Math.max(n.top, v.y); | |
n.right = Math.min(n.right, v.x + h.clientWidth); | |
n.bottom = Math.min(n.bottom, v.y + h.clientHeight); | |
n.left = Math.max(n.left, v.x) | |
} | |
} | |
n = 0 <= n.top && 0 <= n.left && n.bottom > n.top && n.right > n.left ? n : null | |
} else n = null; | |
m = n ? Xe(Ze(Ye(m), Ye(n))) : m | |
} else { | |
m = new Ue(0, Infinity, Infinity, 0); | |
n = Ke(a); | |
g = n.j.body; | |
h = n.j.documentElement; | |
p = Pe(n.j); | |
for (l = a; l = cf(l);) L && 0 == l.clientWidth || te && 0 == l.clientHeight && l == g || l == g || l == h || "visible" == af(l, "overflow") || (v = df(l), u = new De(l.clientLeft, l.clientTop), v.x += u.x, v.y += u.y, m.top = Math.max(m.top, v.y), m.right = Math.min(m.right, v.x + l.clientWidth), m.bottom = Math.min(m.bottom, v.y + l.clientHeight), | |
m.left = Math.max(m.left, v.x)); | |
g = p.scrollLeft; | |
p = p.scrollTop; | |
m.left = Math.max(m.left, g); | |
m.top = Math.max(m.top, p); | |
n = Oe(Qe(n.j) || window); | |
m.right = Math.min(m.right, g + n.width); | |
m.bottom = Math.min(m.bottom, p + n.height); | |
m = 0 <= m.top && 0 <= m.left && m.bottom > m.top && m.right > m.left ? m : null | |
} | |
var D; | |
null != m && (D = Ze(Ye(m), d)); | |
m = (n = (n = null != D && (0 != D.width || D.left + D.width != m.left && D.left != m.right)) && (0 != D.height || D.top + D.height != m.top && D.top != m.bottom)) ? new Ue(Math.max(e.top - m.top, 0), Math.max(m.right - e.right, 0), Math.max(m.bottom - | |
e.bottom, 0), Math.max(e.left - m.left, 0)) : new Ue(0, 0, 0, 0); | |
p = n = 0; | |
D && !(new Ee(D.width, D.height)).isEmpty() && (n = D.width / d.width, p = D.height / d.height); | |
return new Ah(c, e, f, m, n, p) | |
}, | |
Ch = function(a) { | |
return nh({ | |
windowCoords_t: a.m.top, | |
windowCoords_r: a.m.right, | |
windowCoords_b: a.m.bottom, | |
windowCoords_l: a.m.left, | |
frameCoords_t: a.l.top, | |
frameCoords_r: a.l.right, | |
frameCoords_b: a.l.bottom, | |
frameCoords_l: a.l.left, | |
styleZIndex: a.o, | |
allowedExpansion_t: a.j.top, | |
allowedExpansion_r: a.j.right, | |
allowedExpansion_b: a.j.bottom, | |
allowedExpansion_l: a.j.left, | |
xInView: a.u, | |
yInView: a.v | |
}) | |
}; | |
var Dh = function() { | |
this.j = { | |
shared: { | |
sf_ver: "1-0-4", | |
ck_on: navigator.cookieEnabled ? 1 : 0, | |
flash_ver: Rf ? Sf : "0" | |
} | |
} | |
}; | |
var Eh = function(a, b) { | |
this.ma = a; | |
this.na = b | |
}; | |
var Fh = function(a, b, c, d, e, f) { | |
var g = new Dh; | |
this.o = a; | |
this.j = b; | |
this.l = c; | |
this.permissions = d; | |
this.m = g; | |
this.u = e; | |
this.ka = f | |
}; | |
var Gh = function(a) { | |
this.j = a | |
}; | |
Gh.prototype.l = ba; | |
var Hh = function(a, b) { | |
this.j = a; | |
this.version = b | |
}; | |
A(Hh, Gh); | |
Hh.prototype.l = function() { | |
return nh({ | |
uid: this.j, | |
version: this.version | |
}) | |
}; | |
var Ih = function(a, b, c) { | |
this.j = a; | |
this.o = b; | |
this.m = c | |
}; | |
A(Ih, Gh); | |
Ih.prototype.l = function() { | |
return nh({ | |
uid: this.j, | |
initialWidth: this.o, | |
initialHeight: this.m | |
}) | |
}; | |
var Jh = function(a, b) { | |
this.j = a; | |
this.m = b | |
}; | |
A(Jh, Gh); | |
Jh.prototype.l = function() { | |
return nh({ | |
uid: this.j, | |
description: this.m | |
}) | |
}; | |
var Kh = function(a, b, c) { | |
this.j = a; | |
this.m = b; | |
this.push = c | |
}; | |
A(Kh, Gh); | |
Kh.prototype.l = function() { | |
return nh({ | |
uid: this.j, | |
expand_t: this.m.top, | |
expand_r: this.m.right, | |
expand_b: this.m.bottom, | |
expand_l: this.m.left, | |
push: this.push | |
}) | |
}; | |
var Lh = function(a) { | |
this.j = a | |
}; | |
A(Lh, Gh); | |
Lh.prototype.l = function() { | |
return nh({ | |
uid: this.j | |
}) | |
}; | |
var Mh = function(a, b) { | |
this.j = a; | |
this.o = b | |
}; | |
A(Mh, Gh); | |
Mh.prototype.l = function() { | |
var a = { | |
uid: this.j, | |
newGeometry: Ch(this.o) | |
}; | |
return nh(a) | |
}; | |
var Nh = function(a, b, c, d, e) { | |
Mh.call(this, a, c); | |
this.u = b; | |
this.m = d; | |
this.push = e | |
}; | |
A(Nh, Mh); | |
Nh.prototype.l = function() { | |
var a = { | |
uid: this.j, | |
success: this.u, | |
newGeometry: Ch(this.o), | |
expand_t: this.m.top, | |
expand_r: this.m.right, | |
expand_b: this.m.bottom, | |
expand_l: this.m.left, | |
push: this.push | |
}; | |
return nh(a) | |
}; | |
var Oh = function(a, b, c) { | |
this.j = a; | |
this.width = b; | |
this.height = c | |
}; | |
A(Oh, Gh); | |
Oh.prototype.l = function() { | |
return nh({ | |
uid: this.j, | |
width: this.width, | |
height: this.height | |
}) | |
}; | |
var Ph = 1, | |
Qh = !1, | |
Th = function(a) { | |
zh.call(this, Ph++); | |
this.A = a.ib; | |
this.B = 1 == a.size; | |
this.I = new Eh(a.permissions.ma && !this.B, a.permissions.na && !this.B); | |
this.v = a.za; | |
this.P = window.location.protocol + "//" + window.location.host; | |
this.R = !!a.ka; | |
this.N = window.location.protocol + "//tpc.googlesyndication.com"; | |
this.J = !!a.Sa; | |
this.U = a.sandbox || !1; | |
this.o = new vh; | |
Rh(this, a.za, a.size); | |
this.C = a.Ua || !1; | |
this.u = this.L = Bh(a.za, this.C); | |
this.j = Sh(this, a.Za, a.content, a.size, a.$a); | |
this.H = z(this.O, this); | |
this.G = -1; | |
this.w = 0; | |
this.l = new rh(this.T, | |
this.j.contentWindow, this.N, !1); | |
th(this.l, "init_done", z(this.cb, this)); | |
th(this.l, "register_done", z(this.nb, this)); | |
th(this.l, "report_error", z(this.pb, this)); | |
th(this.l, "expand_request", z(this.Ta, this)); | |
th(this.l, "collapse_request", z(this.Ra, this)); | |
th(this.l, "creative_geometry_update", z(this.M, this)); | |
this.l.connect(z(this.lb, this)); | |
if (a.Ma) { | |
var b = z(function() { | |
var c; | |
a: { | |
try { | |
if (this.j.contentWindow.frames.google_pubads_beacon_iframe) { | |
c = !0; | |
break a | |
} | |
} catch (d) {} | |
c = !1 | |
} | |
c || (a.Ma(), Gd(this.j, "load", b)) | |
}, this); | |
Fd(this.j, | |
"load", b) | |
} | |
}; | |
A(Th, zh); | |
var Rh = function(a, b, c) { | |
a.B ? (b.style.width = ef("100%"), b.style.height = ef("auto")) : (b.style.width = ef(c.width), b.style.height = ef(c.height)) | |
}, | |
Sh = function(a, b, c, d, e) { | |
var f = Ke(a.v); | |
c = "1-0-4;" + c.length + ";" + c; | |
var g; | |
g = new Fh(a.m, a.P, a.L, a.I, a.B, a.R); | |
var h = g.o, | |
l = g.j, | |
m = Ch(g.l), | |
n; | |
n = g.permissions; | |
n = nh({ | |
expandByOverlay: n.ma, | |
expandByPush: n.na, | |
readCookie: !1, | |
writeCookie: !1 | |
}); | |
g = { | |
uid: h, | |
hostPeerName: l, | |
initialGeometry: m, | |
permissions: n, | |
metadata: nh(g.m.j), | |
reportCreativeGeometry: g.u, | |
isDifferentSourceWindow: g.ka | |
}; | |
g = nh(g); | |
c += | |
g; | |
a.J && d instanceof Ee && (g = Ke(a.v), Qh || (ld(g.j, "//pagead2.googlesyndication.com/pagead/expansion_embed.js?source=safeframe"), Qh = !0), g = Qe(g.j), g.google_eas_queue = g.google_eas_queue || [], g.google_eas_queue.push({ | |
a: b, | |
b: g.location.protocol + "//tpc.googlesyndication.com", | |
c: d.width, | |
d: d.height, | |
e: "sf-gdn-exp-" + a.m, | |
f: void 0, | |
g: void 0, | |
h: void 0, | |
i: void 0 | |
})); | |
a.B ? (h = g = 0, d = "min-width:100%") : (g = d.width, h = d.height, d = ""); | |
m = Qe(f.j); | |
l = Nf(m); | |
a.J && (m = sd(m.location.href), l += "#" + [0 < m.length ? "google_debug" + (m ? "=" + m : "") + "&" : | |
"", "xpc=", "sf-gdn-exp-" + a.m, "&p=", encodeURIComponent(q.document.location.protocol), "//", encodeURIComponent(q.document.location.host) | |
].join("")); | |
b = { | |
id: b, | |
title: e || "", | |
name: c, | |
src: l, | |
scrolling: "no", | |
marginWidth: "0", | |
marginHeight: "0", | |
width: String(g), | |
height: String(h), | |
"data-is-safeframe": "true" | |
}; | |
e = L && !Ae(9) ? "javascript:\"<html><body style='background:transparent'></body></html>\"" : "about:blank"; | |
e = { | |
frameborder: 0, | |
style: "border:0;vertical-align:bottom;" + (d || ""), | |
allowTransparency: "true", | |
src: e | |
}; | |
b && Vc(e, b); | |
f = f.l("IFRAME", | |
e); | |
a.U && (f.sandbox = "allow-same-origin allow-forms allow-popups allow-scripts allow-pointer-lock allow-popups-to-escape-sandbox"); | |
a.v.appendChild(f); | |
return f | |
}; | |
k = Th.prototype; | |
k.lb = function() { | |
Fd(window, "resize", this.H); | |
Fd(window, "scroll", this.H) | |
}; | |
k.cb = function(a) { | |
try { | |
if (0 != this.status) throw Error("Container already initialized"); | |
if (!w(a)) throw Error("Could not parse serialized message"); | |
var b, c = kh(a); | |
if (!(y(c) && x(c.uid) && w(c.version))) throw Error("Cannot parse JSON message"); | |
b = new Hh(c.uid, c.version); | |
if (this.m != b.j || "1-0-4" != b.version) throw Error("Wrong source container"); | |
this.status = 1 | |
} catch (d) { | |
this.A.error("Invalid INITIALIZE_DONE message. Reason: " + d.message) | |
} | |
}; | |
k.nb = function(a) { | |
try { | |
if (1 != this.status) throw Error("Container not initialized"); | |
if (!w(a)) throw Error("Could not parse serialized message"); | |
var b = kh(a); | |
if (!(y(b) && x(b.uid) && x(b.initialWidth) && x(b.initialHeight))) throw Error("Cannot parse JSON message"); | |
if (this.m != (new Ih(b.uid, b.initialWidth, b.initialHeight)).j) throw Error("Wrong source container"); | |
this.status = 2 | |
} catch (c) { | |
this.A.error("Invalid REGISTER_DONE message. Reason: " + c.message) | |
} | |
}; | |
k.pb = function(a) { | |
try { | |
if (!w(a)) throw Error("Could not parse serialized message"); | |
var b, c = kh(a); | |
if (!(y(c) && x(c.uid) && w(c.description))) throw Error("Cannot parse JSON message"); | |
b = new Jh(c.uid, c.description); | |
if (this.m != b.j) throw Error("Wrong source container"); | |
this.A.info("Ext reported an error. Description: " + b.m) | |
} catch (d) { | |
this.A.error("Invalid REPORT_ERROR message. Reason: " + d.message) | |
} | |
}; | |
k.Ta = function(a) { | |
try { | |
if (2 != this.status) throw Error("Container is not registered"); | |
if (0 != this.D) throw Error("Container is not collapsed"); | |
if (!w(a)) throw Error("Could not parse serialized message"); | |
var b, c = kh(a); | |
if (!(y(c) && x(c.uid) && x(c.expand_t) && x(c.expand_r) && x(c.expand_b) && x(c.expand_l) && ea(c.push))) throw Error("Cannot parse JSON message"); | |
b = new Kh(c.uid, new Ue(c.expand_t, c.expand_r, c.expand_b, c.expand_l), c.push); | |
if (this.m != b.j) throw Error("Wrong source container"); | |
if (!(0 <= b.m.top && 0 <= b.m.left && | |
0 <= b.m.bottom && 0 <= b.m.right)) throw Error("Invalid expansion amounts"); | |
var d; | |
if (d = b.push && this.I.na || !b.push && this.I.ma) { | |
var e = b.m, | |
f = b.push, | |
g = this.u = Bh(this.j, this.C); | |
if (e.top <= g.j.top && e.right <= g.j.right && e.bottom <= g.j.bottom && e.left <= g.j.left) { | |
if (!f) | |
for (var h = this.j.parentNode; h && h.style; h = h.parentNode) xh(this.o, h, "overflowX", "visible", "important"), xh(this.o, h, "overflowY", "visible", "important"); | |
var l = this.u.l, | |
m = this.u.l, | |
n = Xe(new We(0, 0, l.right - l.left, m.bottom - m.top)); | |
y(e) ? (n.top -= e.top, n.right += | |
e.right, n.bottom += e.bottom, n.left -= e.left) : (n.top -= e, n.right += Number(void 0), n.bottom += Number(void 0), n.left -= Number(void 0)); | |
xh(this.o, this.v, "position", "relative"); | |
xh(this.o, this.j, "position", "absolute"); | |
f ? (yh(this.o, this.v, "width", n.right - n.left), yh(this.o, this.v, "height", n.bottom - n.top)) : xh(this.o, this.j, "zIndex", "10000"); | |
yh(this.o, this.j, "width", n.right - n.left); | |
yh(this.o, this.j, "height", n.bottom - n.top); | |
yh(this.o, this.j, "left", n.left); | |
yh(this.o, this.j, "top", n.top); | |
this.D = 2; | |
this.u = Bh(this.j, this.C); | |
d = !0 | |
} else d = !1 | |
} | |
a = d; | |
uh(this.l, "expand_response", (new Nh(this.m, a, this.u, b.m, b.push)).l()); | |
if (!a) throw Error("Viewport or document body not large enough to expand into."); | |
} catch (p) { | |
this.A.error("Invalid EXPAND_REQUEST message. Reason: " + p.message) | |
} | |
}; | |
k.Ra = function(a) { | |
try { | |
if (2 != this.status) throw Error("Container is not registered"); | |
if (2 != this.D) throw Error("Container is not expanded"); | |
if (!w(a)) throw Error("Could not parse serialized message"); | |
var b = kh(a); | |
if (!y(b) || !x(b.uid)) throw Error("Cannot parse JSON message"); | |
if (this.m != (new Lh(b.uid)).j) throw Error("Wrong source container"); | |
Uh(this); | |
uh(this.l, "collapse_response", (new Mh(this.m, this.u)).l()) | |
} catch (c) { | |
this.A.error("Invalid COLLAPSE_REQUEST message. Reason: " + c.message) | |
} | |
}; | |
var Uh = function(a) { | |
for (var b = a.o, c = b.j.length - 1; 0 <= c; c--) { | |
var d = b.j[c]; | |
d.l ? (d.m.style.removeProperty(d.j), d.m.style.setProperty(d.j, d.o, d.u)) : d.m.style[d.j] = d.o | |
} | |
b.j.length = 0; | |
a.D = 0; | |
a.j && (a.u = Bh(a.j, a.C)) | |
}; | |
Th.prototype.O = function() { | |
if (1 == this.status || 2 == this.status) switch (this.w) { | |
case 0: | |
Vh(this); | |
this.G = window.setTimeout(z(this.K, this), 1E3); | |
this.w = 1; | |
break; | |
case 1: | |
this.w = 2; | |
break; | |
case 2: | |
this.w = 2 | |
} | |
}; | |
Th.prototype.M = function(a) { | |
try { | |
if (!w(a)) throw Error("Could not parse serialized message"); | |
var b, c = kh(a); | |
if (!(y(c) && x(c.uid) && x(c.width) && x(c.height))) throw Error("Cannot parse JSON message"); | |
b = new Oh(c.uid, c.width, c.height); | |
if (this.m != b.j) throw Error("Wrong source container"); | |
this.B ? this.j.height = String(b.height) : this.A.error("Got CreativeGeometryUpdate message in non-fluidcontainer. The container is not resized.") | |
} catch (d) { | |
this.A.error("Invalid CREATIVE_GEOMETRY_UPDATE message. Reason: " + d.message) | |
} | |
}; | |
Th.prototype.K = function() { | |
if (1 == this.status || 2 == this.status) switch (this.w) { | |
case 1: | |
this.w = 0; | |
break; | |
case 2: | |
Vh(this), this.G = window.setTimeout(z(this.K, this), 1E3), this.w = 1 | |
} | |
}; | |
var Vh = function(a) { | |
a.u = Bh(a.j, a.C); | |
uh(a.l, "geometry_update", (new Mh(a.m, a.u)).l()) | |
}, | |
Wh = function(a) { | |
if (100 != a.status) { | |
2 == a.D && Uh(a); | |
window.clearTimeout(a.G); | |
a.G = -1; | |
a.w = 3; | |
if (a.l) { | |
var b = a.l; | |
b.l || (b.l = !0, b.u()); | |
a.l = null | |
} | |
Gd(window, "resize", a.H); | |
Gd(window, "scroll", a.H); | |
if (b = a.j) { | |
var b = a.v, | |
c; | |
a: { | |
c = a.j; | |
var d; | |
if (He && !(L && Ae("9") && !Ae("10") && q.SVGElement && c instanceof q.SVGElement) && (d = c.parentElement)) { | |
c = d; | |
break a | |
} | |
d = c.parentNode; | |
c = y(d) && 1 == d.nodeType ? d : null | |
} | |
b = b == c | |
} | |
b && a.v.removeChild(a.j); | |
a.j = null; | |
a.v = null; | |
a.status = 100 | |
} | |
}; | |
var Xh = function(a, b, c, d, e) { | |
this.advertiserId = a; | |
this.campaignId = b; | |
this.creativeId = c; | |
this.labelIds = d; | |
this.lineItemId = e | |
}; | |
var Yh = function(a) { | |
var b = ta(), | |
c = {}; | |
if (!a || !y(a)) return null; | |
var d = !1; | |
I(a, function(e, f) { | |
switch (f) { | |
case "allowOverlayExpansion": | |
ea(e) ? c.allowOverlayExpansion = a.allowOverlayExpansion : (b.error(Zb("allowOverlayExpansion", a.allowOverlayExpansion), null, this), d = !0); | |
break; | |
case "allowPushExpansion": | |
ea(e) ? c.allowPushExpansion = a.allowPushExpansion : (b.error(Zb("allowPushExpansion", a.allowPushExpansion), null, this), d = !0); | |
break; | |
case "sandbox": | |
!0 === e ? c.sandbox = a.sandbox : (b.error(Zb("sandbox", a.sandbox), null, this), | |
d = !0); | |
break; | |
default: | |
b.j(Yb(f), null, this) | |
} | |
}); | |
return d ? null : c | |
}, | |
Zh = function(a) { | |
for (var b = {}, c = 0; c < a.length; ++c) I(a[c], function(a, c) { | |
b[c] = a | |
}); | |
return b | |
}; | |
var $h = { | |
Gb: "slotRenderEnded", | |
xb: "impressionViewable", | |
Hb: "slotVisibilityChanged", | |
Fb: "slotOnload" | |
}, | |
ai = function(a, b, c, d, e, f, g, h, l) { | |
this.slot = a; | |
this.isEmpty = b; | |
this.size = c; | |
this.advertiserId = d; | |
this.campaignId = e; | |
this.creativeId = f; | |
this.labelIds = g; | |
this.lineItemId = h; | |
this.serviceName = l; | |
this.slotContentChanged = !0 | |
}, | |
ci = function(a) { | |
var b = bi().getName(); | |
this.slot = a; | |
this.serviceName = b | |
}, | |
di = function(a, b, c) { | |
this.slot = a; | |
this.serviceName = b; | |
this.inViewPercentage = c | |
}, | |
ei = function(a, b) { | |
this.slot = a; | |
this.serviceName = b | |
}; | |
var fi = function() { | |
this.Z = []; | |
this.ba = {}; | |
this.l = !1; | |
this.B = {}; | |
this.log = ta(); | |
this.log.info(Xa(this.getName()), this) | |
}; | |
k = fi.prototype; | |
k.getName = function() { | |
return "unknown" | |
}; | |
k.getVersion = function() { | |
return "unversioned" | |
}; | |
k.getSlots = function() { | |
return this.Z | |
}; | |
k.getSlotIdMap = function() { | |
return this.ba | |
}; | |
k.enable = function() { | |
if (this.l) this.log.info($a(), this); | |
else try { | |
this.sa(), this.l = !0 | |
} catch (a) { | |
ch(1402, a), this.log.error(ab(String(a)), this) | |
} | |
}; | |
k.Ba = function(a) { | |
this.Z.push(a); | |
this.ba[N(a)] = a; | |
this.log.info(bb(this.getName(), a.getAdUnitPath()), this, a) | |
}; | |
k.sa = ba; | |
k.ha = ba; | |
k.addEventListener = function(a, b) { | |
try { | |
if (!fa(b) || !w(a)) { | |
var c = F("Service.addEventListener", [a, b]); | |
this.log.j(c, this); | |
return this | |
} | |
if (!Pc($h, a)) return this.log.j(Sb(a), this), this; | |
t(this.B[a]) || (this.B[a] = []); | |
this.B[a].push(b); | |
var d = new Wg("gpt_callback_usage"); | |
Yg(d, "type", a); | |
$g(d); | |
Zg(d); | |
return this | |
} catch (e) { | |
Q(1401, e) | |
} | |
}; | |
var gi = function(a, b, c) { | |
b = a.B[b]; | |
t(b) && G(b, function(a) { | |
try { | |
a(c) | |
} catch (g) { | |
a = g && w(g.name) ? g.name : null; | |
var b = g && w(g.message) ? g.message : null, | |
d = ""; | |
a && b ? d = a + ": " + b : a ? d = a : b && (d = b); | |
this.log.j(Rb(d), this) | |
} | |
}, a) | |
}; | |
var hi = { | |
vb: "loader_loaded_instant", | |
wb: "loader_loaded_instant_nw", | |
Eb: "_start_pubads_load_period", | |
Cb: "pubads_load_period", | |
Db: "impl_loaded_instant", | |
zb: "page_load_time", | |
Ab: "page_load_time_nw", | |
Bb: "page_unload_time", | |
ub: "exr" | |
}, | |
ii = { | |
start_ad_fetch_period: !0, | |
start_ad_render_period: !0 | |
}, | |
ji = { | |
pubads_load_period: "_start_pubads_load_period" | |
}, | |
ki = { | |
ad_fetch_period: "start_ad_fetch_period", | |
ad_render_period: "start_ad_render_period" | |
}, | |
li = function() { | |
this.o = !1; | |
q.GPT_jstiming && q.GPT_jstiming.load && ("http:" == q.location.protocol || | |
"https:" == q.location.protocol) && rg && (this.o = !0); | |
this.W = (new Date).getTime() + "_" + Math.random(); | |
this.u = this.m = this.L = null; | |
this.K = this.I = this.H = !1; | |
this.B = window.GPT_jstiming.getTick(window.GPT_jstiming.load, "start", 0); | |
this.l = window.GPT_jstiming.load; | |
this.l.name = "global"; | |
if (!window.performance || !window.performance.timing) { | |
var a = J("#49#"); | |
this.B = a; | |
this.l.tick("start", void 0, a) | |
} | |
this.j = {}; | |
this.C = 500; | |
this.G = []; | |
this.D = {}; | |
this.J = !1; | |
this.V = this.U = 0; | |
this.w = !1; | |
this.v = {}; | |
this.A = {}; | |
this.N = this.R = this.O = this.P = this.M = | |
this.T = 0 | |
}, | |
mi = null, | |
R = function() { | |
return mi || ni() | |
}, | |
ni = function() { | |
var a = window, | |
b = new li; | |
mi = b; | |
if (!b.o) return b; | |
oi(b); | |
pi(b); | |
la().fifWin && "complete" == document.readyState ? a.performance && a.performance.timing && qi(b, a.performance.timing.loadEventStart) : ma(a, function() { | |
qi(b) | |
}); | |
na(a, function() { | |
ri(b, "page_unload_time"); | |
si(b, !0) | |
}); | |
ti(b, "v95"); | |
return b | |
}, | |
pi = function(a) { | |
I(hi, function(a) { | |
this.j[a] = !1 | |
}, a) | |
}, | |
ui = function(a, b, c, d) { | |
a.l || (a.l = new q.GPT_jstiming.Timer(a.B), a.l.name = "global"); | |
var e = "_" == b[0]; | |
if (c || e || window.performance && | |
window.performance.timing) a.l.tick(b, c, d), e || (a.I = !0); | |
a.J || si(a) | |
}, | |
vi = function(a, b, c, d, e) { | |
c ? a.u || (a.u = new q.GPT_jstiming.Timer(a.B), a.u.name = "ad_events_psbk") : a.m || (a.m = new q.GPT_jstiming.Timer(a.B), a.m.name = "ad_events"); | |
var f = "_" == b.charAt(0); | |
c ? (a.u.tick(b, d, e), f || (a.K = !0)) : (a.m.tick(b, d, e), f || (a.H = !0)) | |
}, | |
ri = function(a, b, c) { | |
try { | |
a.o && (ui(a, b, ji[b], c), a.j[b] = !0) | |
} catch (d) { | |
Q(2601, d) | |
} | |
}, | |
wi = function(a, b, c, d) { | |
try { | |
if (b = b + "." + c, c = "_" + b) ui(a, c, void 0, 0), ui(a, b, c, d) | |
} catch (e) { | |
Q(2601, e) | |
} | |
}, | |
xi = function(a, b, c, d) { | |
if (a.o && | |
!(1E3 < c)) { | |
var e = ki[b], | |
f = e; | |
e && (f += "." + c); | |
c = b + ("." + c); | |
f && a.D.hasOwnProperty("_" + f) && (f = "_" + f, vi(a, f, d || !1, void 0, a.D[f] + a.B), delete a.D[f]); | |
vi(a, c, d || !1, f); | |
d = d ? a.u : a.m; | |
ii.hasOwnProperty(b) && (b = window.GPT_jstiming.getTick(d, c), a.D["_" + c] = b) | |
} | |
}, | |
yi = function(a) { | |
a.j.loader_loaded_instant && !a.j.loader_loaded_instant_nw && ri(a, "loader_loaded_instant_nw", a.U); | |
a.j.page_load_time && !a.j.page_load_time_nw && ri(a, "page_load_time_nw", a.V) | |
}, | |
oi = function(a) { | |
window.setTimeout(z(function() { | |
try { | |
var a = si(this), | |
c; | |
if (this.o) { | |
var d = | |
zi(), | |
e = !1; | |
this.m && this.H && (Ai(this, this.v), q.GPT_jstiming.report(this.m, this.v, d), this.m = null, this.H = !1, this.v = {}, e = !0); | |
this.u && this.K && (Ai(this, this.A), q.GPT_jstiming.report(this.u, this.A, d), this.u = null, this.K = !1, this.A = {}, e = !0); | |
c = e | |
} else c = !1; | |
if (a || c) this.C = 32E3 < 2 * this.C ? 32E3 : 2 * this.C; | |
oi(this) | |
} catch (f) { | |
Q(2602, f) | |
} | |
}, a), a.C) | |
}, | |
zi = function() { | |
return "https:" == q.location.protocol ? "https://www.google.com/csi" : "http://csi.gstatic.com/csi" | |
}, | |
Bi = function(a) { | |
var b = null != a.l && a.I && (a.j.page_load_time || "complete" == | |
document.readyState) && a.j.loader_loaded_instant; | |
b && I(hi, function(a) { | |
var c = ji[a]; | |
c && (b = b && this.j[a] == this.j[c]) | |
}, a); | |
return b | |
}, | |
si = function(a, b) { | |
if (!a.o) return !1; | |
var c = zi(), | |
d = !1; | |
if (a.l && (b || Bi(a))) { | |
b ? ti(a, "page_unload") : ti(a, "page_load"); | |
d = {}; | |
if (!a.J || b) d.count_of_slots = a.T, d.count_of_requested_slots = a.P, d.count_of_rendered_slots = a.O, d.count_of_requests = a.R, d.count_of_refreshes_called = a.N, d.count_of_passback = a.M; | |
Ai(a, d); | |
q.GPT_jstiming.report(a.l, d, c); | |
a.J = !0; | |
a.I = !1; | |
a.l = null; | |
d = !0 | |
} | |
return d | |
}, | |
Ai = function(a, | |
b) { | |
b.vrg = "95"; | |
b.pl_id = a.W; | |
a.G.length && (b.e = a.G.join()) | |
}, | |
ti = function(a, b) { | |
0 < b.length && Bc(a.G, b) | |
}, | |
Ci = function(a, b) { | |
null === a.L && ((a.L = b) ? ti(a, "sra") : ti(a, "non-sra")) | |
}, | |
Di = function(a, b, c, d) { | |
a.o && (d ? (a.A[b] = a.A[b] || [], a.A[b].push(c)) : (a.v[b] = a.v[b] || [], a.v[b].push(c))) | |
}, | |
Ei = function(a, b) { | |
switch (b) { | |
case "count_of_slots": | |
++a.T; | |
break; | |
case "count_of_requested_slots": | |
++a.P; | |
break; | |
case "count_of_rendered_slots": | |
++a.O; | |
break; | |
case "count_of_requests": | |
++a.R; | |
break; | |
case "count_of_refreshes_called": | |
++a.N; | |
break; | |
case "count_of_passback": | |
++a.M | |
} | |
}, | |
qi = function(a, b) { | |
ri(a, "page_load_time", b); | |
a.w ? ri(a, "page_load_time_nw", b) : a.V = b || (new Date).getTime() | |
}, | |
Fi = function(a) { | |
ri(a, "loader_loaded_instant"); | |
a.w ? ri(a, "loader_loaded_instant_nw") : a.U = (new Date).getTime() | |
}, | |
Gi = function() { | |
var a = R(); | |
ri(a, "_start_pubads_load_period") | |
}, | |
Hi = function(a) { | |
ri(a, "impl_loaded_instant"); | |
ri(a, "pubads_load_period") | |
}, | |
Ii = function() { | |
var a = R(); | |
a.j.exr || ri(a, "exr") | |
}, | |
Ji = function(a, b, c, d) { | |
xi(a, "start_ad_fetch_period", b, c); | |
d && I(d, function(a, d) { | |
Di(this, d, b + "_" + a, c) | |
}, a); | |
Ei(a, "count_of_requests") | |
}, | |
Ki = function(a, b, c, d) { | |
xi(a, "start_ad_render_period", b, c); | |
d && I(d, function(a, d) { | |
Di(this, d, b + "_" + a, c) | |
}, a) | |
}, | |
Li = function(a, b, c) { | |
if (a.o) { | |
var d = la().fifWin || window; | |
d.performance && d.performance.getEntriesByName && (b = d.performance.getEntriesByName(b)[0]) && (wi(a, "rt_st", c, b.startTime), wi(a, "rt_fs", c, b.fetchStart), 0 < b.responseStart && (wi(a, "rt_dns", c, b.domainLookupEnd - b.domainLookupStart), wi(a, "rt_tcp", c, b.connectEnd - b.connectStart), b.secureConnectionStart && wi(a, "rt_ssl", c, b.connectEnd - b.secureConnectionStart), | |
wi(a, "rt_rtt", c, b.responseStart - b.fetchStart), wi(a, "rt_tft", c, b.responseEnd - b.responseStart)), wi(a, "rt_duration", c, b.duration)) | |
} | |
}; | |
var Mi = function() { | |
this.j = {}; | |
this.m = !1; | |
this.l = ta(); | |
this.u = this.l.info(Ea()); | |
ma(window, z(Mi.prototype.o, this)) | |
}, | |
Ni = function(a, b) { | |
var c = null; | |
b in a.j && (c = a.j[b]); | |
return c | |
}, | |
Pi = function() { | |
var a = Oi(); | |
I(a.j, function(a, c) { | |
a.enable(); | |
ti(R(), c) | |
}) | |
}; | |
Mi.prototype.o = function() { | |
try { | |
this.m = !0, this.l.info(ya(), null, null, this.u) | |
} catch (a) { | |
Q(1802, a) | |
} | |
}; | |
var Oi = function() { | |
var a = la(); | |
return a.service_manager_instance || (a.service_manager_instance = new Mi) | |
}; | |
B("enableServices", function() { | |
try { | |
Pi() | |
} catch (a) { | |
Q(1801, a) | |
} | |
}); | |
var Qi = function(a) { | |
var b = t(a) && 2 == a.length && ee(a[0]) && ee(a[1]); | |
a = w(a) && "fluid" == a; | |
return b || a | |
}, | |
Si = function(a) { | |
return t(a) ? new Ri(a[0], a[1]) : a | |
}, | |
Ti = function(a) { | |
var b = t(a) && 1 < a.length && x(a[0]) && x(a[1]); | |
a = w(a) && "fluid" == a; | |
return b || a | |
}; | |
var Ri = function(a, b) { | |
this.l = a; | |
this.j = b | |
}; | |
Ri.prototype.getWidth = function() { | |
return this.l | |
}; | |
Ri.prototype.getHeight = function() { | |
return this.j | |
}; | |
var Ui = function(a) { | |
var b = []; | |
if (Ti(a)) b.push(Si(a)); | |
else if (t(a)) | |
for (var c = 0; c < a.length; ++c) { | |
var d = a[c]; | |
Ti(d) && b.push(Si(d)) | |
} | |
return b | |
}; | |
var Vi = function(a, b) { | |
this.l = a; | |
this.j = b | |
}; | |
var Wi = function(a) { | |
this.j = a | |
}, | |
Xi = function(a, b) { | |
var c = zc(a.j, function(a) { | |
a = a.l; | |
return a.width <= b.width && a.height <= b.height | |
}); | |
return null == c ? null : c.j | |
}, | |
Yi = function(a) { | |
if (!t(a) || 2 != a.length) throw Error("Each mapping entry has to be an array of size 2"); | |
var b; | |
b = a[0]; | |
if (!Qi(b) || "fluid" == b) throw Error("Size has to be an array of two non-negative integers"); | |
b = new Ee(b[0], b[1]); | |
if (t(a[1]) && 0 == a[1].length) a = []; | |
else if (a = Ui(a[1]), 0 == a.length) throw Error("At least one slot size must be present"); | |
return new Vi(b, | |
a) | |
}; | |
var Zi = function(a, b, c) { | |
this.l = a; | |
this.j = x(b) ? b : 0; | |
this.m = this.l + "_" + this.j; | |
this.o = c || "gpt_unit_" + this.m | |
}; | |
k = Zi.prototype; | |
k.getId = function() { | |
return this.m | |
}; | |
k.getAdUnitPath = function() { | |
return this.l | |
}; | |
k.getName = function() { | |
return this.l | |
}; | |
k.getInstance = function() { | |
return this.j | |
}; | |
k.toString = Zi.prototype.getId; | |
k.getDomId = function() { | |
return this.o | |
}; | |
var aj = function(a, b, c, d) { | |
this.D = a; | |
this.hb = Ui(c); | |
this.V = null; | |
this.o = new Zi(a, b, d); | |
this.u = []; | |
this.H = {}; | |
this.J = null; | |
this.j = ta(); | |
this.j.info(za(this.o.toString()), null, this); | |
this.ra = this.B = this.da = this.A = null; | |
this.$ = this.ba = ""; | |
this.R = !0; | |
this.w = {}; | |
this.M = []; | |
this.la = !1; | |
this.ca = this.aa = null; | |
this.Z = 0; | |
this.W = -1; | |
this.fa = 0; | |
this.m = !1; | |
this.fb = ++$i; | |
this.L = {}; | |
this.pa = ""; | |
this.P = !1; | |
this.K = null; | |
this.O = !1; | |
this.C = null; | |
this.jb = $d(function() { | |
null !== this.C && this.visibilityChanged(this.C) | |
}, this); | |
this.X = ie(this.D); | |
this.Y = | |
""; | |
this.I = this.v = null; | |
this.Ha = !1; | |
this.l = null; | |
this.oa = this.U = this.T = 0; | |
this.G = this.N = !1 | |
}, | |
bj = 0, | |
$i = 0; | |
k = aj.prototype; | |
k.getPassbackPageUrl = function() { | |
return this.pa | |
}; | |
k.set = function(a, b) { | |
try { | |
if (!w(a) || !b) return this.j.j(F("Slot.set", [a, b]), null, this), this; | |
var c = this.getAdUnitPath(); | |
this.H[a] = b; | |
this.A || this.B ? this.j.j(Ga(a, String(b), c), null, this) : this.j.info(Fa(a, String(b), c), null, this); | |
return this | |
} catch (d) { | |
Q(201, d) | |
} | |
}; | |
k.get = function(a) { | |
try { | |
return w(a) ? this.H.hasOwnProperty(a) ? this.H[a] : null : (this.j.j(F("Slot.get", [a]), null, this), null) | |
} catch (b) { | |
Q(202, b) | |
} | |
}; | |
k.getAttributeKeys = function() { | |
try { | |
var a = []; | |
I(this.H, function(b, c) { | |
a.push(c) | |
}); | |
return a | |
} catch (b) { | |
Q(203, b) | |
} | |
}; | |
k.addService = function(a) { | |
try { | |
var b = Oi(); | |
if (!Pc(b.j, a)) return this.j.j(Tb(this.o.toString()), null, this), this; | |
for (b = 0; b < this.u.length; ++b) | |
if (a == this.u[b]) return this.j.j(Ha(a.getName(), this.o.toString()), a, this), this; | |
this.u.push(a); | |
a.Ba(this); | |
return this | |
} catch (c) { | |
Q(204, c) | |
} | |
}; | |
k.getName = function() { | |
return this.D | |
}; | |
k.getAdUnitPath = function() { | |
try { | |
return this.D | |
} catch (a) { | |
Q(215, a) | |
} | |
}; | |
k.getInstance = function() { | |
return this.getSlotId().getInstance() | |
}; | |
k.getSlotElementId = function() { | |
return this.o.getDomId() | |
}; | |
k.getSlotId = function() { | |
return this.o | |
}; | |
k.getServices = function() { | |
return this.u | |
}; | |
k.getSizes = function(a, b) { | |
return x(a) && x(b) && this.V ? Xi(this.V, new Ee(a, b)) : this.hb | |
}; | |
var N = function(a) { | |
// return a.D + "_" + a.o.getInstance() | |
return '8264/aw-chowhound/articles' + "_" + a.o.getInstance() | |
}; | |
aj.prototype.defineSizeMapping = function(a) { | |
try { | |
if (!t(a)) throw Error("Size mapping has to be an array"); | |
var b = wa(a, Yi); | |
this.V = new Wi(b) | |
} catch (c) { | |
ch(205, c), this.j.j(Ia(c.message), null, this) | |
} | |
return this | |
}; | |
var cj = function(a) { | |
var b = window, | |
c = null; | |
b.top == b && (b = Oe(window), c = a.getSizes(b.width, b.height)); | |
null == c && (c = a.getSizes()); | |
return wa(c, function(a) { | |
return w(a) ? a : [a.getWidth(), a.getHeight()] | |
}) | |
}, | |
kg = function(a) { | |
var b = [], | |
c = !1; | |
G(cj(a), function(a) { | |
t(a) ? b.push(a.join("x")) : "fluid" == a ? c = !0 : b.push(a) | |
}); | |
c && b.unshift("320x50"); | |
return b.join("|") | |
}; | |
k = aj.prototype; | |
k.hasWrapperDiv = function() { | |
return !!document.getElementById(this.o.getDomId()) | |
}; | |
k.setClickUrl = function(a) { | |
try { | |
if (!w(a)) return this.j.j(F("Slot.setClickUrl", [a]), null, this), this; | |
this.$ = a; | |
return this | |
} catch (b) { | |
Q(206, b) | |
} | |
}; | |
k.getClickUrl = function() { | |
return this.$ | |
}; | |
k.setForceSafeFrame = function(a) { | |
try { | |
if (!ea(a)) return this.j.j(F("Slot.setForceSafeFrame", [a]), null, this), this; | |
this.K = a; | |
return this | |
} catch (b) { | |
Q(216, b) | |
} | |
}; | |
k.setCategoryExclusion = function(a) { | |
try { | |
return w(a) && !bc(sc(a)) ? (Bc(this.M, a), this.j.info(Ja(a), null, this)) : this.j.j(F("Slot.setCategoryExclusion", [a]), null, this), this | |
} catch (b) { | |
Q(207, b) | |
} | |
}; | |
k.clearCategoryExclusions = function() { | |
try { | |
return this.j.info(Ka(), null, this), this.M = [], this | |
} catch (a) { | |
Q(208, a) | |
} | |
}; | |
k.getCategoryExclusions = function() { | |
try { | |
return Ec(this.M) | |
} catch (a) { | |
Q(209, a) | |
} | |
}; | |
k.setTargeting = function(a, b) { | |
try { | |
var c = []; | |
t(b) ? c = b : b && c.push(b.toString()); | |
w(a) ? (this.j.info(La(a, c.join(), this.getAdUnitPath()), null, this), this.w[a] = c) : this.j.j(F("Slot.setTargeting", [a, b]), null, this); | |
return this | |
} catch (d) { | |
Q(210, d) | |
} | |
}; | |
k.clearTargeting = function() { | |
try { | |
return this.j.info(Ma(), null, this), this.w = {}, this | |
} catch (a) { | |
Q(211, a) | |
} | |
}; | |
k.getTargetingMap = function() { | |
return Sc(this.w) | |
}; | |
k.getTargeting = function(a) { | |
try { | |
return w(a) ? this.w.hasOwnProperty(a) ? Ec(this.w[a]) : [] : (this.j.j(F("Slot.getTargeting", [a]), null, this), []) | |
} catch (b) { | |
Q(212, b) | |
} | |
}; | |
k.getTargetingKeys = function() { | |
try { | |
var a = []; | |
I(this.w, function(b, c) { | |
a.push(c) | |
}); | |
return a | |
} catch (b) { | |
Q(213, b) | |
} | |
}; | |
k.ta = function(a) { | |
this.la = a | |
}; | |
k.getOutOfPage = function() { | |
return this.la | |
}; | |
k.getAudExtId = function() { | |
return this.Z | |
}; | |
k.gtfcd = function() { | |
return this.W | |
}; | |
k.setCollapseEmptyDiv = function(a, b) { | |
try { | |
if (!ea(a) || b && !ea(b)) return this.j.j(F("Slot.setCollapseEmptyDiv", vc([a, b], r)), null, this), this; | |
this.ca = (this.aa = a) && !!b; | |
b && !a && this.j.j(Na(this.o.toString()), null, this); | |
return this | |
} catch (c) { | |
Q(214, c) | |
} | |
}; | |
k.getCollapseEmptyDiv = function() { | |
return this.aa | |
}; | |
k.getDivStartsCollapsed = function() { | |
return this.ca | |
}; | |
var dj = function(a, b) { | |
if (!a.hasWrapperDiv()) return a.j.error(Oa(a.o.toString()), null, a), !1; | |
var c = q.document, | |
d = a.o.getDomId(), | |
c = c && c.getElementById(d); | |
if (!c) return a.j.error(Pa(d, a.o.toString()), null, a), !1; | |
d = a.J; | |
return w(d) && 0 < d.length ? (a.renderStarted(), c.innerHTML = d, a.renderEnded(b), !0) : !1 | |
}, | |
ej = function(a) { | |
a.U = ++bj; | |
return a.U | |
}, | |
fj = function(a, b) { | |
var c = null, | |
d = !0, | |
e = null, | |
f = null, | |
g = null, | |
h = null, | |
l = null; | |
y(b) && (d = b._empty_, d || (c = [b._width_, b._height_], 0 == b._is_afc_ && b._creative_ids_ && b._adgroup2_ids_ && (g = b._creative_ids_[0], | |
l = b._adgroup2_ids_[0]), b._advertiser_ids_ && (e = b._advertiser_ids_[0]), b._campaign_ids_ && (f = b._campaign_ids_[0]), b._label_ids_ && b._label_ids_[0] && (h = w(b._label_ids_[0]) ? b._label_ids_[0].split("|") : [b._label_ids_[0]]))); | |
return new ai(a, d, c, e, f, g, h, l, "publisher_ads") | |
}, | |
gj = function(a) { | |
return new ai(a, !0, null, null, null, null, null, null, "publisher_ads") | |
}; | |
k = aj.prototype; | |
k.fetchStarted = function(a) { | |
this.A || Ei(R(), "count_of_requested_slots"); | |
this.A = this.j.info(Aa(this.getAdUnitPath()), null, this); | |
this.ba = a; | |
this.T++ | |
}; | |
k.getContentUrl = function() { | |
return this.ba | |
}; | |
k.fetchEnded = function() { | |
this.da = this.j.info(Ba(this.getAdUnitPath()), null, this, this.A) | |
}; | |
k.renderStarted = function() { | |
this.B = this.j.info(Ca(this.getAdUnitPath()), null, this) | |
}; | |
k.getResponseInformation = function() { | |
var a = new Wg("gpt_getresponseinfo"); | |
$g(a); | |
Zg(a, M["#23#"]); | |
return this.I | |
}; | |
k.renderEnded = function(a) { | |
a.isEmpty ? this.I = null : this.I = new Xh(a.advertiserId, a.campaignId, a.creativeId, a.labelIds, a.lineItemId); | |
this.ra || Ei(R(), "count_of_rendered_slots"); | |
this.ra = this.j.info(Da(this.getAdUnitPath()), null, this, this.B); | |
G(this.u, function(b) { | |
if (b.getName() == a.serviceName) { | |
var c; | |
if (c = !a.slotContentChanged) c = b.B.slotRenderEnded, c = !!c && 0 < c.length; | |
c && (c = new Wg("slot_render_ended_false_positive"), $g(c), Zg(c)); | |
gi(b, "slotRenderEnded", a) | |
} | |
}) | |
}; | |
k.loaded = function() { | |
var a = bi(), | |
b = new ei(this, a.getName()); | |
gi(a, "slotOnload", b); | |
a = R(); | |
xi(a, "ad_render_period", this.U, this.m) | |
}; | |
k.impressionViewable = function() { | |
hj(this, "impressionViewable", new ci(this)) | |
}; | |
var ij = function(a) { | |
a.O = !1; | |
a.C = null; | |
a.I = null; | |
a.N = !1; | |
a.l = null | |
}; | |
k = aj.prototype; | |
k.Wa = function(a, b) { | |
a && !this.O && (this.impressionViewable(), this.O = !0); | |
var c = this.C; | |
this.C = Math.floor(b); | |
c !== this.C && this.jb() | |
}; | |
k.visibilityChanged = function(a) { | |
a = new di(this, bi().getName(), a); | |
hj(this, "slotVisibilityChanged", a) | |
}; | |
k.setFirstLook = function(a) { | |
if (!ea(a)) return this.j.j(F("Slot.setFirstLook", [a]), null, this), this; | |
this.fa = a ? 1 : 2; | |
return this | |
}; | |
k.getFirstLook = function() { | |
return this.fa | |
}; | |
k.getDefinedId = function() { | |
return this.fb | |
}; | |
var jj = function(a) { | |
var b = [], | |
c = a.getTargetingMap(); | |
I(c, function(a, c) { | |
for (var d = [], e = 0; e < a.length; ++e) d.push(encodeURIComponent(a[e])); | |
b.push(encodeURIComponent(c) + "=" + d.join(",")) | |
}); | |
a = a.getCategoryExclusions(); | |
if (0 < a.length && !("excl_cat" in c)) { | |
for (var c = [], d = 0; d < a.length; ++d) c.push(encodeURIComponent(a[d])); | |
b.push(encodeURIComponent("excl_cat") + "=" + c.join(",")) | |
} | |
return b.join("&") | |
}; | |
aj.prototype.gb = function() { | |
return this.T | |
}; | |
aj.prototype.getEscapedQemQueryId = function() { | |
return this.l && this.l._qqid_ || "" | |
}; | |
var kj = function(a) { | |
return a.l ? a.l._is_afc_ ? a.l._is_afc_ : !1 : null | |
}, | |
hj = function(a, b, c) { | |
G(a.u, function(a) { | |
a.getName() == c.serviceName && gi(a, b, c) | |
}) | |
}; | |
aj.prototype.setSafeFrameConfig = function(a) { | |
try { | |
if (a && y(a)) { | |
var b = Yh(a); | |
b && (this.L = b) | |
} else this.j.error(F("Slot.setSafeFrameConfig", [a]), null, this); | |
return this | |
} catch (c) { | |
Q(217, c) | |
} | |
}; | |
var S = function(a) { | |
return "google_ads_iframe_" + N(a) | |
// return "google_ads_iframe_" + '8264/aw-chowhound/articles' | |
}; | |
var lj = { | |
google_ad_channel: "channel", | |
google_ad_host: "host", | |
google_ad_host_channel: "h_ch", | |
google_ad_host_tier_id: "ht_id", | |
google_ad_section: "region", | |
google_ad_type: "ad_type", | |
google_adtest: "adtest", | |
google_available_width: "avail_w", | |
google_allow_expandable_ads: "ea", | |
google_alternate_ad_url: "alternate_ad_url", | |
google_alternate_color: "alt_color", | |
google_city: "gcs", | |
google_color_bg: "color_bg", | |
google_color_border: "color_border", | |
google_color_line: "color_line", | |
google_color_link: "color_link", | |
google_color_text: "color_text", | |
google_color_url: "color_url", | |
google_contents: "contents", | |
google_country: "gl", | |
google_cpm: "cpm", | |
google_cust_age: "cust_age", | |
google_cust_ch: "cust_ch", | |
google_cust_gender: "cust_gender", | |
google_cust_id: "cust_id", | |
google_cust_interests: "cust_interests", | |
google_cust_job: "cust_job", | |
google_cust_l: "cust_l", | |
google_cust_lh: "cust_lh", | |
google_cust_u_url: "cust_u_url", | |
google_disable_video_autoplay: "disable_video_autoplay", | |
google_ed: "ed", | |
google_encoding: "oe", | |
google_flash_version: "flash", | |
google_font_face: "f", | |
google_font_size: "fs", | |
google_hints: "hints", | |
google_is_split_slot: "spl", | |
google_kw: "kw", | |
google_kw_type: "kw_type", | |
google_language: "hl", | |
google_page_url: "url", | |
google_pgb_reactive: "pra", | |
google_region: "gr", | |
google_reuse_colors: "reuse_colors", | |
google_responsive_formats: "resp_fmts", | |
google_safe: "adsafe", | |
google_safe_for_responsive_override: "sfro", | |
google_tag_info: "gut", | |
google_ui_features: "ui", | |
google_video_doc_id: "video_doc_id", | |
google_video_product_type: "video_product_type", | |
google_webgl_support: "wgl" | |
}, | |
mj = { | |
google_ad_block: "ad_block", | |
google_ad_client: "client", | |
google_ad_format: "format", | |
google_ad_output: "output", | |
google_ad_callback: "callback", | |
google_ad_height: "h", | |
google_ad_slot: "slotname", | |
google_ad_unit_key: "adk", | |
google_ad_dom_fingerprint: "adf", | |
google_ad_width: "w", | |
google_analytics_url_parameters: "aup", | |
google_auto_format: "afmt", | |
google_captcha_token: "captok", | |
google_content_recommendation_ui_type: "crui", | |
google_ctr_threshold: "ctr_t", | |
google_cust_criteria: "cust_params", | |
google_delay_requests_count: "drc", | |
google_delay_requests_delay: "drd", | |
google_image_size: "image_size", | |
google_last_modified_time: "lmt", | |
google_loeid: "loeid", | |
google_max_num_ads: "num_ads", | |
google_max_radlink_len: "max_radlink_len", | |
google_mtl: "mtl", | |
google_nofo: "nofo", | |
google_enable_content_recommendations: "ecr", | |
google_infinite_scroll_slot_type: "ifsl", | |
google_num_radlinks: "num_radlinks", | |
google_num_radlinks_per_unit: "num_radlinks_per_unit", | |
google_reactive_plaf: "plaf", | |
google_reactive_plat: "plat", | |
google_reactive_sra_channels: "plach", | |
google_only_ads_with_video: "only_ads_with_video", | |
google_rl_dest_url: "rl_dest_url", | |
google_rl_filtering: "rl_filtering", | |
google_rl_mode: "rl_mode", | |
google_rt: "rt", | |
google_source_type: "src_type", | |
google_sui: "sui", | |
google_skip: "skip", | |
google_tag_for_child_directed_treatment: "tfcd", | |
google_tag_origin: "to", | |
google_tdsma: "tdsma", | |
google_tfs: "tfs", | |
google_tl: "tl" | |
}, | |
nj = { | |
google_core_dbp: "dbp", | |
google_lact: "lact", | |
google_only_pyv_ads: "pyv", | |
google_only_userchoice_ads: "uc", | |
google_scs: "scs", | |
google_targeting: "targeting", | |
google_with_pyv_ads: "withpyv", | |
google_previous_watch: "p_w", | |
google_previous_searches: "p_s", | |
google_video_url_to_fetch: "durl", | |
google_yt_pt: "yt_pt", | |
google_yt_up: "yt_up" | |
}; | |
var oj = function(a) { | |
this.j = {}; | |
this.l = a | |
}, | |
pj = function(a, b, c, d) { | |
b && (c || (c = ""), "google_gl" == b ? b = "google_country" : "google_region" == b && (b = "google_section"), b in a.l && ("undefined" == typeof d || d || !a.j[b]) && (a.j[b] = c)) | |
}, | |
qj = function(a, b) { | |
I(b.j, function(a, b) { | |
this.j[b] || (this.j[b] = a) | |
}, a) | |
}, | |
rj = function(a) { | |
var b = new oj(a.l); | |
b.j = Sc(a.j); | |
delete b.j.google_page_url; | |
return b | |
}, | |
dg = function(a) { | |
return a.j.google_page_url | |
}; | |
oj.prototype.ga = function() { | |
var a = []; | |
I(this.j, function(b, c) { | |
var d = lj[c] || mj[c] || nj[c] || null; | |
d && b && a.push(d + "=" + encodeURIComponent(b)) | |
}); | |
return a.join("&") | |
}; | |
var tj = function(a, b, c, d) { | |
var e = sj(a, rj(b), c, d); | |
a = sj(a, b, c, d); | |
b = []; | |
e[0] && 0 < e[0].length && b.push(e[0].join("&")); | |
a[1] && 0 < a[1].length && b.push("sps=" + a[1].join("|")); | |
return b.join("&") | |
}, | |
sj = function(a, b, c, d) { | |
var e = [], | |
f = [], | |
g = b.j; | |
I(d, function(b, d) { | |
if (b) { | |
var h = ""; | |
null != g[d] && (h = encodeURIComponent(g[d])); | |
for (var l = [], p = -1, v = -1, u = 0; u < a.length; ++u) { | |
var D = N(a[u]); | |
++p; | |
null == c[D] ? l.push("") : (D = c[D].j, null != D[d] ? (l.push(encodeURIComponent(encodeURIComponent(D[d]))), v = p) : l.push("")) | |
} | |
if (0 <= v) { | |
p = []; | |
p.push(encodeURIComponent(h)); | |
for (u = 0; u <= v; ++u) p.push(l[u]); | |
f.push(b + "," + p.join(",")) | |
} else h && e.push(b + "=" + h) | |
} | |
}); | |
b = []; | |
b.push(e); | |
b.push(f); | |
return b | |
}, | |
uj = function(a, b) { | |
var c; | |
a: { | |
c = a.navigator; | |
var d = c.userAgent, | |
e = c.platform, | |
f = /WebKit\/(\d+)/, | |
g = /rv\:(\d+\.\d+)/, | |
h = /rv\:1\.8([^.]|\.0)/; | |
if (/Win|Mac|Linux|iPad|iPod|iPhone/.test(e) && !/^Opera/.test(d) && (f = (f.exec(d) || [0, 0])[1], g = (g.exec(d) || [0, 0])[1], /Win/.test(e) && /Trident/.test(d) && 11 <= b.documentMode || !f && "Gecko" === c.product && 27 <= g && !h.test(d) || 536 <= f)) { | |
c = !0; | |
break a | |
} | |
c = !1 | |
} | |
d = bg(a, a.document, | |
500, 300); | |
e = {}; | |
if (!c || d) e.ea = "0"; | |
return e | |
}; | |
var vj = function(a) { | |
this.j = {}; | |
this.A = {}; | |
this.m = {}; | |
this.C = []; | |
this.M = a; | |
this.o = new oj(a); | |
this.u = {}; | |
this.D = {}; | |
this.v = {}; | |
this.I = {}; | |
this.L = this.B = ""; | |
this.l = !1; | |
this.J = -1; | |
this.K = 0; | |
this.H = this.w = !1; | |
this.G = {} | |
}, | |
wj = function(a, b) { | |
var c = N(b); | |
if (a.j[c]) return a.j[c]; | |
a.j[c] = b; | |
a.A[b.getAdUnitPath()] || (a.A[b.getAdUnitPath()] = []); | |
return a.A[b.getAdUnitPath()][b.getInstance()] = b | |
}, | |
yj = function(a) { | |
return vc(xj(a), function(a) { | |
return !a.A | |
}) | |
}, | |
zj = function(a, b) { | |
for (var c = 0; c < b.length; c++) { | |
var d = b[c]; | |
N(d) in a.j && ij(d) | |
} | |
}, | |
Aj = function(a) { | |
a = | |
vc(xj(a), function(a) { | |
return !!a.A && !a.da | |
}); | |
return wa(a, function(a) { | |
return [a.getAdUnitPath(), a.getSlotId().getInstance()] | |
}) | |
}, | |
Bj = function(a, b) { | |
return !(N(b) in a.I) | |
}, | |
Cj = function(a) { | |
var b = 0; | |
I(a.j, function() { | |
b++ | |
}); | |
return b | |
}; | |
vj.prototype.toString = function() { | |
var a = "[AdData:", | |
b = []; | |
I(this.j, function(a) { | |
b.push(a.toString()) | |
}); | |
I(this.m, function(a, d) { | |
b.push("[" + d + "," + a + "]") | |
}); | |
a += b.join(); | |
return a + "]" | |
}; | |
var xj = function(a) { | |
var b = []; | |
I(a.j, function(a) { | |
b.push(a) | |
}); | |
return b | |
}, | |
Dj = function(a, b) { | |
var c = b || xj(a), | |
c = wa(c, function(a) { | |
return a.X | |
}); | |
Gc(c); | |
return c | |
}, | |
Ej = function(a) { | |
var b = []; | |
I(a.m, function(a, d) { | |
b.push(encodeURIComponent(d) + "=" + encodeURIComponent(a)) | |
}); | |
0 < a.C.length && ("excl_cat" in a.m || b.push(encodeURIComponent("excl_cat") + "=" + encodeURIComponent(a.C.join(",")))); | |
return b.join("&") | |
}, | |
Fj = function(a, b) { | |
var c = a.v[N(b)], | |
d; | |
if (c) | |
if (c) try { | |
var e = window.top, | |
f = new De(0, 0), | |
g, h = Je(c); | |
g = h ? Qe(h) : window; | |
if (hd(g, "parent")) { | |
do { | |
var l; | |
if (g == e) l = df(c); | |
else { | |
var m = bf(c); | |
l = new De(m.left, m.top) | |
} | |
h = l; | |
f.x += h.x; | |
f.y += h.y | |
} while (g && g != e && g != g.parent && (c = g.frameElement) && (g = g.parent)) | |
} | |
d = f | |
} catch (n) { | |
d = new De(-12245933, -12245933) | |
} else d = null; | |
else d = null; | |
return d | |
}, | |
Gj = function(a) { | |
for (var b = [], c = 0; c < a.length; ++c) b.push(kg(a[c])); | |
return b.join() | |
}, | |
Hj = function(a) { | |
for (var b = [], c = !1, d = 0; d < a.length; ++d) { | |
var e = a[d].getFirstLook(); | |
0 != e && (c = !0); | |
b.push(e) | |
} | |
return c ? b.join() : void 0 | |
}; | |
var Ij = function() { | |
this.l = (this.j = !!be(Sg.l, Sg.m)) ? !P(Sg, "disabled") : Math.random() < J("#34#") | |
}, | |
Jj = function(a) { | |
var b = Ij.getInstance(); | |
if (b.l && (!b.j || P(Sg, a))) | |
if (b.l = !1, b = document, a = Nf(b ? Qe(b) : window), oe() || H("iPad") || H("iPod") || !(Xf || se || re && Ae(11))) { | |
var c = la().fifWin, | |
c = c && c.document || b, | |
b = c.createElement("iframe"); | |
b.src = a; | |
b.style.visibility = "hidden"; | |
b.style.display = "none"; | |
a = c.getElementsByTagName("script"); | |
0 < a.length && (a = a[a.length - 1], a.parentNode && a.parentNode.insertBefore(b, a.nextSibling)) | |
} else md(b, | |
a) | |
}, | |
Kj = function() { | |
Ij.getInstance(); | |
var a = J("#57#"); | |
Math.random() < a && md(document, hg(!0) + "/static/glade.js") | |
}; | |
Ij.getInstance = function() { | |
return Ij.j ? Ij.j : Ij.j = new Ij | |
}; | |
var Lj = function() { | |
this.j = []; | |
this.G = !1; | |
this.w = ""; | |
this.H = "json_html"; | |
this.u = "fif"; | |
this.l = 1; | |
this.D = !1; | |
this.v = ""; | |
this.m = []; | |
this.persistentRoadblocksOnly = !1; | |
this.videoPodNumber = this.videoPodPosition = NaN; | |
this.B = this.C = ""; | |
this.A = !1; | |
this.videoStreamCorrelator = NaN; | |
this.o = 0 | |
}; | |
var Oj = function(a) { | |
this.u = document; | |
this.j = a || 0; | |
this.l = Mj(this, "__gads="); | |
this.v = this.o = !1; | |
Nj(this) | |
}, | |
Pj = function(a, b) { | |
if (b._cookies_ && b._cookies_.length && (a.m = b._cookies_[0], null != a.m && (a.l = a.m._value_, null != a.m && a.l))) { | |
var c = new Date; | |
c.setTime(1E3 * a.m._expires_); | |
a.u.cookie = "__gads=" + a.l + "; expires=" + c.toGMTString() + "; path=" + a.m._path_ + "; domain=." + a.m._domain_ | |
} | |
}, | |
Nj = function(a) { | |
if (!a.l && !a.v && 1 != a.j) { | |
a.u.cookie = "GoogleAdServingTest=Good"; | |
var b = "Good" == Mj(a, "GoogleAdServingTest="); | |
if (b) { | |
var c = new Date; | |
c.setTime((new Date).valueOf() + -1); | |
a.u.cookie = "GoogleAdServingTest=; expires=" + c.toGMTString() | |
} | |
a.o = b; | |
a.v = !0 | |
} | |
}, | |
Mj = function(a, b) { | |
var c = a.u.cookie, | |
d = c.indexOf(b), | |
e = ""; - 1 != d && (d += b.length, e = c.indexOf(";", d), -1 == e && (e = c.length), e = c.substring(d, e)); | |
return e | |
}, | |
Qj = null, | |
Rj = function(a) { | |
null == Qj && (Qj = new Oj(a)); | |
return Qj | |
}; | |
var Sj = function(a, b) { | |
var c; | |
c = M["#6#"] ? "https://" + M["#33#"] : "http://" + M["#33#"]; | |
if (!b || 0 > b || 1 < b) b = 0; | |
this.m = Math.random() < b; | |
this.l = a; | |
this.j = c + "/pagead/gen_204?id=" + encodeURIComponent(a) | |
}, | |
T = function(a, b, c) { | |
b && b.match(/^\w+$/) && c && (a.j += "&" + b + "=" + encodeURIComponent(c)) | |
}, | |
Tj = function(a, b) { | |
T(a, "vrg", "95"); | |
var c = document, | |
d = Dj(b); | |
0 < d.length && (3 >= d.length || (d = Fc(d, 0, 3), d.push("__extra__")), T(a, "nw_id", d.join(","))); | |
T(a, "nslots", Cj(b).toString()); | |
d = de(); | |
0 < d.length && T(a, "eid", d.join()); | |
T(a, "pub_url", c.URL) | |
}, | |
Uj = function(a) { | |
a.m && a.l && a.j && Od(window, a.j) | |
}; | |
var Vj = function() { | |
this.j = {}; | |
var a = ne.URL; | |
null == U(this, "target_platform") && (this.j.target_platform = "DESKTOP"); | |
for (var b = this.j, a = a.split("?"), a = a[a.length - 1].split("&"), c = 0; c < a.length; c++) { | |
var d = a[c].split("="); | |
if (d[0]) { | |
var e = d[0].toLowerCase(); | |
if ("google_domain_reset_url" != e) try { | |
var f; | |
if (1 < d.length) { | |
var g = d[1]; | |
f = window.decodeURIComponent ? decodeURIComponent(g.replace(gg, " ")) : unescape(g) | |
} else f = ""; | |
b[e] = f | |
} catch (h) {} | |
} | |
} | |
}, | |
U = function(a, b) { | |
return null == b ? null : a.j[b] | |
}; | |
var Wj = function(a, b, c, d, e) { | |
this.j = b; | |
this.u = c; | |
this.m = d; | |
this.mode = a; | |
this.l = e; | |
this.o = ""; | |
this.D = lj; | |
this.v = []; | |
this.C = [] | |
}, | |
Xj = { | |
x: -9, | |
y: -9 | |
}; | |
Wj.prototype.ga = function(a, b) { | |
var c = b || window; | |
if (!t(a)) return ""; | |
if ("sra" == this.mode) 0 == a.length && (a = xj(this.j)); | |
else { | |
if (0 == a.length) return ""; | |
1 < a.length && (a = [a[0]]) | |
} | |
this.A(); | |
this.B(a, c); | |
return this.o | |
}; | |
Wj.prototype.B = function(a, b) { | |
var c = b || window; | |
try { | |
var d, e, f; | |
"prerender" == og(document) ? (e = "108809008", f = M["#17#"]) : (e = "108809007", f = M["#16#"]); | |
d = nd([e], f); | |
V(this, "eid", (d ? Dc(this.l.m, d) : this.l.m).join()) | |
} catch (D) {} | |
this.m && 0 !== this.m.j && V(this, "co", this.m.j); | |
d = this.j.J; - 1 !== d && V(this, "tfcd", d); | |
1 === this.j.K && V(this, "kfa", 1); | |
V(this, "sc", M["#6#"] ? 1 : 0); | |
window.postMessage && V(this, "sfv", "1-0-4"); | |
if ("sra" == this.mode) { | |
Yj(this, a); | |
Zj(this); | |
d = []; | |
for (e = 0; e < a.length; ++e) d.push(jj(a[e])); | |
e = d.join("|"); | |
e.length == d.length - | |
1 && (e = null); | |
V(this, "prev_scp", e) | |
} else d = a[0].gtfcd(), -1 !== d && V(this, "tfcd", d), d = a[0], V(this, "iu", d.getAdUnitPath()), V(this, "sz", kg(d)), Ac(cj(d), "fluid") && V(this, "fluid", "height"), (e = d.getFirstLook()) && V(this, "fl", e), e = ak(d.K, this.j.H), "1" == e && V(this, "fsf", e), e = d.T, 0 < e && V(this, "rc", e), d.getClickUrl() && V(this, "click", d.getClickUrl()), d.getOutOfPage() && V(this, "ists", "1"), Bj(this.j, d) || V(this, "logonly", "1"), Zj(this), d = a[0], e = jj(d), V(this, "scp", e), d = d.getAudExtId(), 0 < d && V(this, "audextid", d); | |
d = 1 != this.l.l; | |
e = a[0].m; | |
f = this.j.u; | |
if (null != dg(this.j.o)) f = !0; | |
else { | |
for (var g = !1, h = 0; h < a.length && !g; h++) g = null != eg(a[h], f); | |
f = g | |
} | |
var g = this.l.D, | |
h = 3 == this.l.l, | |
l = M["#46#"], | |
m = 0; | |
d && (m |= 1); | |
e && (m |= 2); | |
f && (m |= 4); | |
g && (m |= 8); | |
h && (m |= 16); | |
l && (m |= 32); | |
d = m; | |
0 < d && V(this, "eri", d); | |
"prerender" == og() && V(this, "d_imp", 1); | |
d = c.document; | |
var j = 'ptype=articles&loggedin=0&env=production&vguid=3bad3720-78ff-11e6-98e9-83cf67566ac1&ybot=mpu_top%3A300x250%3A275%2Cmpu_plus_top%3A300x250%3A275&seg=300003%2Cnidoik%2C240000%2C240002%2C240003%2C240004%2C240001%2C240005%2C240006%2C240007%2C240008%2C240009%2C240011%2C240012%2C240013%2C240014%2C240017%2C240015%2C240016%2C116600%2C116613%2C116607&aolbid=3687814_275%2C3687815_100%2C3687813_190%2C3687812_145'; | |
// V(this, "cust_params", Ej(this.j)); | |
V(this, "cust_params", j); | |
this.m && 1 != this.m.j && (V(this, "cookie", this.m.l), this.m.o && V(this, "cookie_enabled", "1")); | |
(e = this.j.B) && V(this, "uule", e); | |
this.m && 1 != this.m.j && (d = (dg(this.j.o) || (ag(c) ? d.URL : d.referrer)) != | |
d.URL ? d.domain : "") && V(this, "cdm", d); | |
null != U(this.u, "google_preview") && V(this, "gct", U(this.u, "google_preview")); | |
this.j.w && (V(this, "is_amp", "1"), d = wf(), V(this, "amp_v", d && d.mode ? +d.mode.version || null : null)); | |
this.w(new Date, a, c); | |
d = {}; | |
d.u_tz = -(new Date).getTimezoneOffset(); | |
var n; | |
try { | |
n = K.history.length | |
} catch (D) { | |
n = 0 | |
} | |
// d.u_his = n; | |
d.u_his = 3; | |
d.u_java = !!K.navigator && "unknown" !== typeof K.navigator.javaEnabled && !!K.navigator.javaEnabled && K.navigator.javaEnabled(); | |
K.screen && (d.u_h = K.screen.height, d.u_w = K.screen.width, d.u_ah = | |
K.screen.availHeight, d.u_aw = K.screen.availWidth, d.u_cd = K.screen.colorDepth); | |
K.navigator && K.navigator.plugins && (d.u_nplug = K.navigator.plugins.length); | |
K.navigator && K.navigator.mimeTypes && (d.u_nmime = K.navigator.mimeTypes.length); | |
bk(this, d); | |
q.devicePixelRatio && W(this, "u_sd", Number(q.devicePixelRatio.toFixed(3))); | |
var p; | |
try { | |
p = of() | |
} catch (D) { | |
p = "0" | |
} | |
W(this, "flash", p); | |
n = c || window; | |
e = n.document; | |
p = "sra" == this.mode ? dg(this.j.o) : eg(a[0], this.j.u) || dg(this.j.o); | |
d = mg(e.URL, U(this.u, "google_preview")); | |
g = mg(e.referrer, | |
U(this.u, "google_preview")); | |
h = new Dd(n); | |
e = h.j[Math.max(h.j.length - 1, 0)].url; | |
f = h.j[0].depth; | |
if (null != f && 0 < f && (V(this, "nhd", f), n.location.ancestorOrigins)) { | |
for (var l = [], m = Math.min(h.j.length, 27), v = 1; v < m; v++) h.j[v] && h.j[v].url && (l[v - 1] = h.j[v].url); | |
l = Ed(h, l.reverse()); | |
V(this, "iag", l); | |
h = h.j; | |
l = []; | |
for (m = h.length - 1; 0 < m; m--)(v = h[m]) && null != v.url && l.push(vd(v.url.match(ud)[3] || null)); | |
h = zd(l); | |
0 < h && V(this, "mdo", h) | |
} | |
var u; | |
null != p ? (u = d, ag(n) || (g = "", e && (e = vd(e.match(ud)[3] || null)))) : p = d; | |
// V(this, "url", p); | |
V(this, "url", 'http://www.chowhound.com/food-news'); | |
null != u && | |
u != p && V(this, "loc", u); | |
this.j.w && (g = (u = wf()) ? u.referrer : null); | |
V(this, "ref", g); | |
null != f && 0 < f && V(this, "top", e); | |
n = c || window; | |
u = n.document; | |
(p = u.scripts) && V(this, "dssz", p.length); | |
n = new Dd(n); | |
if (p = n.l.document && n.l.document.scripts ? n.l.document.scripts : []) { | |
d = []; | |
for (e = p.length - 1; 0 <= e && 26 > d.length;) p[e].src && d.unshift(p[e].src), e--; | |
p = Ed(n, d) | |
} else p = 0; | |
// V(this, "icsg", p); | |
V(this, "icsg", 0); | |
if (n = n.l.document && n.l.document.scripts ? n.l.document.scripts : []) { | |
p = []; | |
for (d = n.length - 1; 0 <= d; d--)(e = n[d]) && null != e.src && p.push(vd(e.src.match(ud)[3] || | |
null)); | |
n = zd(p) | |
} else n = 0; | |
0 < n && V(this, "mso", n); | |
n = Error(); | |
n.stack && (p = n.stack, d = p.split(/\r\n|\r|\n/).length, "Error" == p.slice(0, 5) && d--, p = d - 10, 0 > p && (p = 0, d = new Sj("gpt_negative_stack_trace", M["#23#"]), Tj(d, this.j), T(d, "stackTrace", n.stack), Uj(d)), V(this, "std", p)); | |
u.currentScript && u.currentScript.text && V(this, "csl", u.currentScript.text.length); | |
if (Math.random() < J("#73#") && ag(c)) { | |
u = 0; | |
n = la(); | |
u |= !!n._syncTagged_ << 0; | |
n = (c || window).navigator.connection; | |
u |= (!!n && "cellular" == n.type && .5 > n.downlinkMax) << 1; | |
a: { | |
c = c.document.getElementsByTagName("script"); | |
for (n = 1; n < c.length; n++) | |
if (-1 < c[n].src.indexOf("/tag/js/gpt.js") && -1 < c[n - 1].innerHTML.indexOf("/tag/js/gpt.js")) { | |
c = !0; | |
break a | |
} | |
c = !1 | |
} | |
V(this, "cdw", u | c << 2) | |
} | |
V(this, "vrg", "95"); | |
V(this, "vrp", "95") | |
}; | |
var ck = function(a, b) { | |
for (var c = b.length, d = [], e = [], f = 0; f < c; f++) { | |
var g = Fj(a.j, b[f]) || Xj; | |
d.push(Math.round(g.x)); | |
e.push(Math.round(g.y)) | |
} | |
// V(a, "adxs", d.join(",")); | |
// V(a, "adys", e.join(",")) | |
}, | |
dk = function(a, b) { | |
for (var c = b.length, d = [], e = 0; e < c; e++) { | |
var f = lg(b[e]); | |
b[e].Y = f; | |
d.push(f) | |
} | |
V(a, "adks", d.join(",")) | |
}, | |
bk = function(a, b) { | |
I(b, function(a, b) { | |
W(this, b, a) | |
}, a) | |
}, | |
Zj = function(a) { | |
a.m && 1 == a.m.j || V(a, "ppid", a.j.L) | |
}; | |
Wj.prototype.w = function(a, b, c) { | |
var d = c.document; | |
V(this, "lmt", (Date.parse(d.lastModified) / 1E3).toString()); | |
W(this, "dt", a.getTime()); | |
if (d.body) { | |
a = d.body.scrollHeight; | |
var e = d.body.clientHeight; | |
e && a && V(this, "cc", Math.round(100 * e / a).toString()) | |
} | |
a = U(this.u, "deb"); | |
null != a && V(this, "deb", a); | |
a = U(this.u, "haonly"); | |
null != a && V(this, "haonly", a); | |
a = uj(c, d); | |
hf(a, z(function(a, b) { | |
V(this, b, a) | |
}, this)); | |
d = cg(c, d).ab || null; | |
null != d && V(this, "frm", d); | |
if (d = (this.j.w ? yf() : null) || $f(!0, c)) V(this, "biw", d.width), V(this, "bih", d.height); | |
!ag(c) && (c = $f(!1, c)) && (V(this, "isw", c.width), V(this, "ish", c.height)); | |
this.l.o && V(this, "oid", this.l.o); | |
if ("sra" == this.mode) P(ug, "experiment") && ck(this, b), dk(this, b); | |
else { | |
if (c = (this.j.w ? zf() : null) || Fj(this.j, b[0])) V(this, "adx", Math.round(c.x)), V(this, "ady", Math.round(c.y)); | |
c = b[0].Y || lg(b[0], this.j.D[N(b[0])]); | |
V(this, "adk", c) | |
} | |
c = Df(); | |
0 < c && V(this, "osd", c); | |
c = this.j.o; | |
d = ""; | |
"sra" == this.mode ? d = tj(b, c, this.j.u, this.D) : (b = this.j.u[N(b[0])], null == b ? b = c : qj(b, c), b = rj(b), d = b.ga()); | |
d && (this.o += "&" + d) | |
}; | |
Wj.prototype.A = function() { | |
var a = !1, | |
b = M["#46#"]; | |
this.j.B || (a = b ? !P(zg, "experiment") : P(Ag, "control")); | |
this.o = hg(!a) + "/gampad/ads?"; | |
W(this, "gdfp_req", 1); | |
V(this, "correlator", this.l.w); | |
W(this, "output", this.l.H); | |
W(this, "callback", this.l.v); | |
W(this, "impl", this.l.u); | |
this.l.persistentRoadblocksOnly && V(this, "per_only", 1); | |
"sra" == this.mode && V(this, "json_a", 1) | |
}; | |
var Yj = function(a, b) { | |
for (var c = b.length, d = 0; d < c; d++) ek(a, b[d].getAdUnitPath()); | |
// V(a, "iu_parts", a.v.join()); | |
V(a, "iu_parts", "8264,aw-chowhound,articles"); | |
// V(a, "enc_prev_ius", a.C.join()); | |
V(a, "enc_prev_ius", '0/1/2,0/1/2,0/1/2,0/1/2,0/1/2'); | |
V(a, "prev_iu_szs", Gj(b)); | |
xc(b, function(a) { | |
return Ac(cj(a), "fluid") | |
}) && (c = wa(b, function(a) { | |
return Ac(cj(a), "fluid") ? "height" : "0" | |
}).join(), V(a, "fluid", c)); | |
(c = Hj(b)) && V(a, "fla", c); | |
c = wa(b, function(a) { | |
return ak(a.K, this.j.H) | |
}, a).join(); | |
0 <= c.indexOf("1") && V(a, "fsfs", c); | |
c = wa(b, Function.prototype.call, aj.prototype.gb); | |
0 < xc(c, function(a) { | |
return 0 < a | |
}) && V(a, "rcs", c.join()); | |
(c = fk(b)) && V(a, "ists", c); | |
var e = {}; | |
G(b, function(a) { | |
(a = a.getClickUrl()) && (e[a] = (e[a] || 0) + 1) | |
}); | |
if (!Qc(e)) { | |
var c = new Wg("gpt_sra_setclickurl"), | |
f = []; | |
I(e, function(a, b) { | |
f.push(b.length + ":" + a) | |
}); | |
Yg(c, "lenfreqs", f.join()); | |
$g(c); | |
Zg(c, J("#58#")) | |
} | |
}, | |
ak = function(a, b) { | |
return (null === a ? b : a) ? "1" : "0" | |
}, | |
V = function(a, b, c) { | |
null != c && W(a, b, encodeURIComponent("" + c)) | |
}, | |
W = function(a, b, c) { | |
null != c && "" != c && (a.o = "?" != a.o.charAt(a.o.length - 1) ? a.o + ("&" + b + "=" + c) : a.o + (b + "=" + c)) | |
}, | |
ek = function(a, b) { | |
var c = ""; | |
if ("" != b) { | |
for (var c = b.split("/"), | |
d = 0; d < c.length; d++) | |
if ("" != c[d]) { | |
for (var e = !1, f = 0; f < a.v.length; f++) | |
if (c[d] == a.v[f]) { | |
e = !0; | |
break | |
} | |
e || a.v.push(c[d]) | |
} | |
d = ""; | |
for (e = 0; e < c.length; e++) { | |
if (0 < e) d += "/"; | |
else if ("" == c[0]) continue; | |
for (f = 0; f < a.v.length; f++) | |
if (c[e] == a.v[f]) { | |
d += f; | |
break | |
} | |
} | |
c = d | |
} | |
a.C.push(c) | |
}, | |
fk = function(a) { | |
if (!a.length) return 0; | |
for (var b = "", c = 0; c < a.length; ++c) b += a[c].getOutOfPage() ? "1" : "0"; | |
return parseInt(b, 2) | |
}; | |
var gk = function(a) { | |
this.S = a | |
}, | |
hk = { | |
google_persistent_state: !0, | |
google_persistent_state_async: !0 | |
}, | |
ik = {}, | |
jk = { | |
14: "gaGlobal", | |
8: "google_prev_ad_formats_by_region", | |
9: "google_prev_ad_slotnames_by_region" | |
}; | |
var kk = navigator, | |
lk = function() { | |
try { | |
return kk.javaEnabled() | |
} catch (a) { | |
return !1 | |
} | |
}, | |
mk = function(a) { | |
var b = 1, | |
c, d; | |
if (void 0 != a && "" != a) | |
for (b = 0, d = a.length - 1; 0 <= d; d--) c = a.charCodeAt(d), b = (b << 6 & 268435455) + c + (c << 14), c = b & 266338304, b = 0 != c ? b ^ c >> 21 : b; | |
return b | |
}, | |
nk = function(a, b) { | |
if (!a || "none" == a) return 1; | |
a = String(a); | |
"auto" == a && (a = b, "www." == a.substring(0, 4) && (a = a.substring(4, a.length))); | |
return mk(a.toLowerCase()) | |
}, | |
ok = /^\s*_ga=\s*1\.(\d+)[^.]*\.(.*?)\s*$/, | |
pk = /^[^=]+=\s*GA1\.(\d+)[^.]*\.(.*?)\s*$/; | |
var qk = function(a, b, c, d, e) { | |
Wj.call(this, a, b, c, d, e) | |
}; | |
A(qk, Wj); | |
qk.prototype.w = function(a, b, c) { | |
0 < navigator.userAgent.indexOf("MSIE ") && pj(this.j.o, "google_encoding", document.charset, !1); | |
Wj.prototype.w.call(this, a, b, c); | |
V(this, "ifi", b[0].oa); | |
c == c.top ? c = 0 : (a = [], a.push(c.document.URL), c.name && a.push(c.name), c = $f(!1, c, !1), a.push(c.width.toString()), a.push(c.height.toString()), c = qd(a.join(""))); | |
0 != c && V(this, "ifk", c.toString()) | |
}; | |
qk.prototype.B = function(a) { | |
var b = a[0], | |
c = window; | |
c.google_unique_id ? ++c.google_unique_id : c.google_unique_id = 1; | |
b.oa = c.google_unique_id; | |
this.l.A ? (W(this, "hxva", 1), V(this, "cmsid", this.l.B), V(this, "vid", this.l.C)) : window.google_test_extended_pageview && W(this, "hxva", 1); | |
isNaN(this.l.videoPodNumber) || W(this, "pod", this.l.videoPodNumber); | |
isNaN(this.l.videoPodPosition) || W(this, "ppos", this.l.videoPodPosition); | |
isNaN(this.l.videoStreamCorrelator) || W(this, "scor", this.l.videoStreamCorrelator); | |
Wj.prototype.B.call(this, | |
a); | |
a = window; | |
var d; | |
var b = a.document.domain, | |
c = a.document.cookie, | |
e = a.history.length, | |
f = a.screen, | |
g = a.document.referrer; | |
if (wf()) d = jf().gaGlobal || {}; | |
else { | |
var h = Math.round((new Date).getTime() / 1E3), | |
l = window.google_analytics_domain_name, | |
b = "undefined" == typeof l ? nk("auto", b) : nk(l, b), | |
m = -1 < c.indexOf("__utma=" + b + "."), | |
n = -1 < c.indexOf("__utmb=" + b), | |
p; | |
b: { | |
if ((l = wf(window)) && y(l.master)) { | |
var l = l.master, | |
v = "google_persistent_state_async"; | |
p = {} | |
} else { | |
l = jf(); | |
v = hk.google_persistent_state ? "google_persistent_state" : mf ? "google_persistent_state_async" : | |
"google_persistent_state"; | |
if (ik[v]) { | |
p = ik[v]; | |
break b | |
} | |
"google_persistent_state_async" == v ? p = {} : p = l | |
} | |
var u = l[v]; | |
p = null != u && "object" == typeof u && null != u.S && "object" == typeof u.S ? ik[v] = u : l[v] = ik[v] = new gk(p) | |
} | |
var l = {}, | |
v = jk[14] || "google_ps_14", | |
u = p.S, | |
D = u[v]; | |
void 0 === D ? u[v] = l : l = D; | |
p = l || (p.S[jk[14] || "google_ps_14"] = {}); | |
l = !1; | |
if (m) g = c.split("__utma=" + b + ".")[1].split(";")[0].split("."), n ? p.sid = g[3] + "" : p.sid || (p.sid = h + ""), p.vid = g[0] + "." + g[1], p.from_cookie = !0; | |
else { | |
p.sid || (p.sid = h + ""); | |
if (!p.vid) { | |
l = !0; | |
n = Math.round(2147483647 * | |
Math.random()); | |
m = [kk.appName, kk.version, kk.language ? kk.language : kk.browserLanguage, kk.platform, kk.userAgent, lk() ? 1 : 0].join(""); | |
f ? m += f.width + "x" + f.height + f.colorDepth : window.java && window.java.awt && (f = window.java.awt.Toolkit.getDefaultToolkit().getScreenSize(), m += f.screen.width + "x" + f.screen.height); | |
m = m + c + (g || ""); | |
for (g = m.length; 0 < e;) m += e-- ^ g++; | |
p.vid = (n ^ mk(m) & 2147483647) + "." + h | |
} | |
p.from_cookie = !1 | |
} | |
if (!p.cid) { | |
b: { | |
h = 999; | |
if (g = window.google_analytics_domain_name) g = 0 == g.indexOf(".") ? g.substr(1) : g, h = ("" + g).split(".").length; | |
g = 999; | |
c = c.split(";"); | |
for (f = 0; f < c.length; f++) | |
if (e = ok.exec(c[f]) || pk.exec(c[f])) { | |
if (e[1] == h) { | |
d = e[2]; | |
break b | |
} | |
e[1] < g && (g = e[1], d = e[2]) | |
} | |
} | |
l && d && -1 != d.search(/^\d+\.\d+$/) ? p.vid = d : d != p.vid && (p.cid = d) | |
} | |
p.dh = b; | |
p.hid || (p.hid = Math.round(2147483647 * Math.random())); | |
d = p | |
} | |
W(this, "ga_vid", d.vid); | |
W(this, "ga_sid", d.sid); | |
W(this, "ga_hid", d.hid); | |
W(this, "ga_fc", d.from_cookie); | |
V(this, "ga_wpids", a.google_analytics_uacct) | |
}; | |
var rk = function() {}; | |
rk.prototype.j = ba; | |
var sk, tk = function() {}; | |
A(tk, rk); | |
tk.prototype.j = function() { | |
var a; | |
a: { | |
if (!this.l && "undefined" == typeof XMLHttpRequest && "undefined" != typeof ActiveXObject) { | |
for (var b = ["MSXML2.XMLHTTP.6.0", "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"], c = 0; c < b.length; c++) { | |
var d = b[c]; | |
try { | |
new ActiveXObject(d); | |
a = this.l = d; | |
break a | |
} catch (e) {} | |
} | |
throw Error("Could not create ActiveXObject. ActiveX might be disabled, or MSXML might not be installed"); | |
} | |
a = this.l | |
} | |
return a ? new ActiveXObject(a) : new XMLHttpRequest | |
}; | |
sk = new tk; | |
var uk = function(a, b, c) { | |
this.o = c; | |
this.m = a; | |
this.u = b; | |
this.l = 0; | |
this.j = null | |
}; | |
uk.prototype.get = function() { | |
var a; | |
0 < this.l ? (this.l--, a = this.j, this.j = a.next, a.next = null) : a = this.m(); | |
return a | |
}; | |
var vk = function(a, b) { | |
a.u(b); | |
a.l < a.o && (a.l++, b.next = a.j, a.j = b) | |
}; | |
var wk = function(a) { | |
q.setTimeout(function() { | |
throw a; | |
}, 0) | |
}, | |
zk = function(a, b) { | |
var c = a; | |
b && (c = z(a, b)); | |
!fa(q.setImmediate) || q.Window && q.Window.prototype && !H("Edge") && q.Window.prototype.setImmediate == q.setImmediate ? (xk || (xk = yk()), xk(c)) : q.setImmediate(c) | |
}, | |
xk, yk = function() { | |
var a = q.MessageChannel; | |
"undefined" === typeof a && "undefined" !== typeof window && window.postMessage && window.addEventListener && !H("Presto") && (a = function() { | |
var a = document.createElement("IFRAME"); | |
a.style.display = "none"; | |
a.src = ""; | |
document.documentElement.appendChild(a); | |
var b = a.contentWindow, | |
a = b.document; | |
a.open(); | |
a.write(""); | |
a.close(); | |
var c = "callImmediate" + Math.random(), | |
d = "file:" == b.location.protocol ? "*" : b.location.protocol + "//" + b.location.host, | |
a = z(function(a) { | |
if (("*" == d || a.origin == d) && a.data == c) this.port1.onmessage() | |
}, this); | |
b.addEventListener("message", a, !1); | |
this.port1 = {}; | |
this.port2 = { | |
postMessage: function() { | |
b.postMessage(c, d) | |
} | |
} | |
}); | |
if ("undefined" !== typeof a && !Zc()) { | |
var b = new a, | |
c = {}, | |
d = c; | |
b.port1.onmessage = function() { | |
if (r(c.next)) { | |
c = c.next; | |
var a = c.Fa; | |
c.Fa = null; | |
a() | |
} | |
}; | |
return function(a) { | |
d.next = { | |
Fa: a | |
}; | |
d = d.next; | |
b.port2.postMessage(0) | |
} | |
} | |
return "undefined" !== typeof document && "onreadystatechange" in document.createElement("SCRIPT") ? function(a) { | |
var b = document.createElement("SCRIPT"); | |
b.onreadystatechange = function() { | |
b.onreadystatechange = null; | |
b.parentNode.removeChild(b); | |
b = null; | |
a(); | |
a = null | |
}; | |
document.documentElement.appendChild(b) | |
} : function(a) { | |
q.setTimeout(a, 0) | |
} | |
}; | |
var Bk = new uk(function() { | |
return new Ak | |
}, function(a) { | |
a.reset() | |
}, 100), | |
Dk = function() { | |
var a = Ck, | |
b = null; | |
a.j && (b = a.j, a.j = a.j.next, a.j || (a.l = null), b.next = null); | |
return b | |
}, | |
Ak = function() { | |
this.next = this.l = this.j = null | |
}; | |
Ak.prototype.set = function(a, b) { | |
this.j = a; | |
this.l = b; | |
this.next = null | |
}; | |
Ak.prototype.reset = function() { | |
this.next = this.l = this.j = null | |
}; | |
var Hk = function(a, b) { | |
Ek || Fk(); | |
Gk || (Ek(), Gk = !0); | |
var c = Ck, | |
d = Bk.get(); | |
d.set(a, b); | |
c.l ? c.l.next = d : c.j = d; | |
c.l = d | |
}, | |
Ek, Fk = function() { | |
if (q.Promise && q.Promise.resolve) { | |
var a = q.Promise.resolve(void 0); | |
Ek = function() { | |
a.then(Ik) | |
} | |
} else Ek = function() { | |
zk(Ik) | |
} | |
}, | |
Gk = !1, | |
Ck = new function() { | |
this.l = this.j = null | |
}, | |
Ik = function() { | |
for (var a; a = Dk();) { | |
try { | |
a.j.call(a.l) | |
} catch (b) { | |
wk(b) | |
} | |
vk(Bk, a) | |
} | |
Gk = !1 | |
}; | |
var Kk = function(a, b) { | |
this.j = 0; | |
this.w = void 0; | |
this.m = this.l = this.u = null; | |
this.o = this.v = !1; | |
if (a != aa) try { | |
var c = this; | |
a.call(b, function(a) { | |
Jk(c, 2, a) | |
}, function(a) { | |
Jk(c, 3, a) | |
}) | |
} catch (d) { | |
Jk(this, 3, d) | |
} | |
}, | |
Lk = function() { | |
this.next = this.m = this.l = this.o = this.j = null; | |
this.u = !1 | |
}; | |
Lk.prototype.reset = function() { | |
this.m = this.l = this.o = this.j = null; | |
this.u = !1 | |
}; | |
var Mk = new uk(function() { | |
return new Lk | |
}, function(a) { | |
a.reset() | |
}, 100), | |
Nk = function(a, b, c) { | |
var d = Mk.get(); | |
d.o = a; | |
d.l = b; | |
d.m = c; | |
return d | |
}; | |
Kk.prototype.then = function(a, b, c) { | |
return Ok(this, fa(a) ? a : null, fa(b) ? b : null, c) | |
}; | |
Kk.prototype.then = Kk.prototype.then; | |
Kk.prototype.$goog_Thenable = !0; | |
var Qk = function(a, b) { | |
a.l || 2 != a.j && 3 != a.j || Pk(a); | |
a.m ? a.m.next = b : a.l = b; | |
a.m = b | |
}, | |
Ok = function(a, b, c, d) { | |
var e = Nk(null, null, null); | |
e.j = new Kk(function(a, g) { | |
e.o = b ? function(c) { | |
try { | |
var e = b.call(d, c); | |
a(e) | |
} catch (m) { | |
g(m) | |
} | |
} : a; | |
e.l = c ? function(b) { | |
try { | |
var e = c.call(d, b); | |
a(e) | |
} catch (m) { | |
g(m) | |
} | |
} : g | |
}); | |
e.j.u = a; | |
Qk(a, e); | |
return e.j | |
}; | |
Kk.prototype.B = function(a) { | |
this.j = 0; | |
Jk(this, 2, a) | |
}; | |
Kk.prototype.C = function(a) { | |
this.j = 0; | |
Jk(this, 3, a) | |
}; | |
var Jk = function(a, b, c) { | |
if (0 == a.j) { | |
a === c && (b = 3, c = new TypeError("Promise cannot resolve to itself")); | |
a.j = 1; | |
var d; | |
a: { | |
var e = c, | |
f = a.B, | |
g = a.C; | |
if (e instanceof Kk) Qk(e, Nk(f || aa, g || null, a)), d = !0; | |
else { | |
var h; | |
if (e) try { | |
h = !!e.$goog_Thenable | |
} catch (m) { | |
h = !1 | |
} else h = !1; | |
if (h) e.then(f, g, a), d = !0; | |
else { | |
if (y(e)) try { | |
var l = e.then; | |
if (fa(l)) { | |
Rk(e, l, f, g, a); | |
d = !0; | |
break a | |
} | |
} catch (m) { | |
g.call(a, m); | |
d = !0; | |
break a | |
} | |
d = !1 | |
} | |
} | |
} | |
d || (a.w = c, a.j = b, a.u = null, Pk(a), 3 != b || Sk(a, c)) | |
} | |
}, | |
Rk = function(a, b, c, d, e) { | |
var f = !1, | |
g = function(a) { | |
f || (f = !0, c.call(e, a)) | |
}, | |
h = | |
function(a) { | |
f || (f = !0, d.call(e, a)) | |
}; | |
try { | |
b.call(a, g, h) | |
} catch (l) { | |
h(l) | |
} | |
}, | |
Pk = function(a) { | |
a.v || (a.v = !0, Hk(a.A, a)) | |
}, | |
Tk = function(a) { | |
var b = null; | |
a.l && (b = a.l, a.l = b.next, b.next = null); | |
a.l || (a.m = null); | |
return b | |
}; | |
Kk.prototype.A = function() { | |
for (var a; a = Tk(this);) { | |
var b = this.j, | |
c = this.w; | |
if (3 == b && a.l && !a.u) { | |
var d; | |
for (d = this; d && d.o; d = d.u) d.o = !1 | |
} | |
if (a.j) a.j.u = null, Uk(a, b, c); | |
else try { | |
a.u ? a.o.call(a.m) : Uk(a, b, c) | |
} catch (e) { | |
Vk.call(null, e) | |
} | |
vk(Mk, a) | |
} | |
this.v = !1 | |
}; | |
var Uk = function(a, b, c) { | |
2 == b ? a.o.call(a.m, c) : a.l && a.l.call(a.m, c) | |
}, | |
Sk = function(a, b) { | |
a.o = !0; | |
Hk(function() { | |
a.o && Vk.call(null, b) | |
}) | |
}, | |
Vk = wk; | |
var Zk = function(a, b, c, d) { | |
return new Kk(function(e, f) { | |
var g = d || {}, | |
h, l = g.tb ? g.tb.j() : sk.j(); | |
try { | |
l.open(a, b, !0) | |
} catch (p) { | |
f(new Wk("Error opening XHR: " + p.message, b)) | |
} | |
l.onreadystatechange = function() { | |
if (4 == l.readyState) { | |
q.clearTimeout(h); | |
var a; | |
a: switch (l.status) { | |
case 200: | |
case 201: | |
case 202: | |
case 204: | |
case 206: | |
case 304: | |
case 1223: | |
a = !0; | |
break a; | |
default: | |
a = !1 | |
}!a && (a = 0 === l.status) && (a = b.match(ud)[1] || null, !a && q.self && q.self.location && (a = q.self.location.protocol, a = a.substr(0, a.length - 1)), a = a ? a.toLowerCase() : "", a = !("http" == a || "https" == a || "" == a)); | |
a ? e(l) : f(new Xk(l.status, b)) | |
} | |
}; | |
l.onerror = function() { | |
f(new Wk("Network error", b)) | |
}; | |
var m; | |
if (g.headers) { | |
for (var n in g.headers) m = g.headers[n], null != m && l.setRequestHeader(n, m); | |
m = g.headers["Content-Type"] | |
} | |
n = q.FormData && c instanceof q.FormData; | |
"POST" != a || void 0 !== m || n || l.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8"); | |
g.withCredentials && (l.withCredentials = g.withCredentials); | |
g.responseType && (l.responseType = g.responseType); | |
g.kb && l.overrideMimeType(g.kb); | |
0 < g.qb && (h = q.setTimeout(function() { | |
l.onreadystatechange = aa; | |
l.abort(); | |
f(new Yk(b)) | |
}, g.qb)); | |
try { | |
l.send(c) | |
} catch (p) { | |
l.onreadystatechange = aa, q.clearTimeout(h), f(new Wk("Error sending XHR: " + p.message, b)) | |
} | |
}) | |
}, | |
Wk = function(a, b) { | |
$b.call(this, a + ", url=" + b); | |
this.url = b | |
}; | |
A(Wk, $b); | |
Wk.prototype.name = "XhrError"; | |
var Xk = function(a, b) { | |
Wk.call(this, "Request Failed, status=" + a, b); | |
this.status = a | |
}; | |
A(Xk, Wk); | |
Xk.prototype.name = "XhrHttpError"; | |
var Yk = function(a) { | |
Wk.call(this, "Request timed out", a) | |
}; | |
A(Yk, Wk); | |
Yk.prototype.name = "XhrTimeoutError"; | |
var $k = function() {}; | |
A($k, rk); | |
$k.prototype.j = function() { | |
var a = new XMLHttpRequest; | |
if ("withCredentials" in a) return a; | |
if ("undefined" != typeof XDomainRequest) return new al; | |
throw Error("Unsupported browser"); | |
}; | |
var al = function() { | |
this.j = new XDomainRequest; | |
this.readyState = 0; | |
this.onreadystatechange = null; | |
this.responseText = ""; | |
this.status = -1; | |
this.statusText = null; | |
this.j.onload = z(this.Va, this); | |
this.j.onerror = z(this.Ga, this); | |
this.j.onprogress = z(this.Xa, this); | |
this.j.ontimeout = z(this.Ya, this) | |
}; | |
k = al.prototype; | |
k.open = function(a, b, c) { | |
if (null != c && !c) throw Error("Only async requests are supported."); | |
this.j.open(a, b) | |
}; | |
k.send = function(a) { | |
if (a) | |
if ("string" == typeof a) this.j.send(a); | |
else throw Error("Only string data is supported"); | |
else this.j.send() | |
}; | |
k.abort = function() { | |
this.j.abort() | |
}; | |
k.setRequestHeader = function() {}; | |
k.Va = function() { | |
this.status = 200; | |
this.responseText = this.j.responseText; | |
bl(this, 4) | |
}; | |
k.Ga = function() { | |
this.status = 500; | |
this.responseText = ""; | |
bl(this, 4) | |
}; | |
k.Ya = function() { | |
this.Ga() | |
}; | |
k.Xa = function() { | |
this.status = 200; | |
bl(this, 1) | |
}; | |
var bl = function(a, b) { | |
a.readyState = b; | |
if (a.onreadystatechange) a.onreadystatechange() | |
}; | |
var cl = function(a) { | |
if (a = Le(a)) a.innerHTML = "" | |
}, | |
dl = function(a, b) { | |
var c = Le(a); | |
c && (c.style.display = b ? "" : "none") | |
}, | |
el = function(a, b, c, d, e, f) { | |
f = (f || document).createElement("iframe"); | |
f.id = b; | |
f.title = c; | |
f.name = b; | |
t(e) ? null != e[0] && null != e[1] && (f.width = String(e[0]), f.height = String(e[1])) : (f.width = "100%", f.height = "0"); | |
f.vspace = "0"; | |
f.hspace = "0"; | |
f.allowTransparency = "true"; | |
f.scrolling = "no"; | |
f.marginWidth = "0"; | |
f.marginHeight = "0"; | |
f.frameBorder = "0"; | |
f.style.border = "0"; | |
f.style.verticalAlign = "bottom"; | |
d && (f.style.visibility = | |
"hidden", f.style.display = "none"); | |
f.src = "javascript:\"<html><body style='background:transparent'></body></html>\""; | |
a.appendChild(f); | |
return f | |
}, | |
fl = function(a, b) { | |
if (0 != ig()) { | |
var c = a.getElementById(b); | |
c && "hidden" == c.style.visibility && "none" == c.style.display && c.parentNode.removeChild(c) | |
} | |
}, | |
il = function(a, b, c, d, e, f, g, h) { | |
var l = gl, | |
m; | |
t(d) ? m = new Ee(d[0], d[1]) : m = 1; | |
(d = Ug || P(Dg, "experiment")) && h && Ii(); | |
return new Th({ | |
za: a, | |
Za: b, | |
$a: l, | |
content: hl(c), | |
size: m, | |
ib: { | |
info: function() {}, | |
j: function() {}, | |
error: function() {} | |
}, | |
Sa: !d || | |
h, | |
Ma: e, | |
sandbox: r(f.sandbox) ? f.sandbox : !1, | |
permissions: { | |
ma: r(f.allowOverlayExpansion) ? f.allowOverlayExpansion : !g, | |
na: r(f.allowPushExpansion) ? f.allowPushExpansion : !1 | |
}, | |
Ua: P(Hg, "experiment"), | |
ka: !!la().fifWin | |
}) | |
}, | |
ll = function(a, b, c) { | |
c && (b = hl(b, "<script>var inDapIF=true;\x3c/script>\n")); | |
if (0 != ig()) { | |
var d; | |
try { | |
d = !!a.contentWindow.document | |
} catch (u) { | |
d = !1 | |
} | |
if (d) { | |
var e = b, | |
f = jl(); | |
try { | |
var g = window.frames[a.name]; | |
if (6 < parseInt(ig(), 10) || 0 > e.indexOf("http://" + M["#1#"] + "/pagead/inject_object_div.js")) { | |
var h; | |
b: { | |
a = e; | |
b = document; | |
var l = ig(), | |
m; | |
if (!(m = 0 == l || isNaN(l) || 7 > l || 9 < l || b.documentMode && 10 <= b.documentMode)) { | |
var n = navigator.userAgent.match(/Trident\/([0-9]+.[0-9]+)/); | |
m = 6 <= (n ? parseFloat(n[1]) : 0) | |
} | |
if (!m) | |
for (l = 0; l < a.length; ++l) | |
if (127 < a.charCodeAt(l)) { | |
h = !0; | |
break b | |
} | |
h = !1 | |
} | |
if (h) { | |
var p = unescape(encodeURIComponent(e)), | |
v = Math.floor(p.length / 2); | |
a = []; | |
for (h = 0; h < v; ++h) a[h] = String.fromCharCode(256 * p.charCodeAt(2 * h + 1) + p.charCodeAt(2 * h)); | |
1 == p.length % 2 && (a[v] = p.charAt(p.length - 1)); | |
e = a.join("") | |
} | |
g.contents = e; | |
g.location.replace("javascript:window.contents") | |
} else g.contents = | |
e, g.location.replace("javascript:document.write(window.contents);document.close();") | |
} catch (u) {} finally { | |
kl(f) | |
} | |
} else { | |
p = b; | |
g = jl(); | |
try { | |
e = "google-ad-content-" + (Math.floor(2147483648 * Math.random()).toString(36) + Math.abs(Math.floor(2147483648 * Math.random()) ^ +new Date).toString(36)), window[e] = p, p = 'var adContent = window.parent["' + e + '"];window.parent["' + e + '"] = null;document.write(adContent);', p = 6 == ig() ? "window.onload = function() {document.write(\\'<sc\\' + \\'ript type=\"text/javascript\">document.domain = \"" + | |
document.domain + '";' + p + "<\\/scr\\' + \\'ipt>\\');document.close(); };" : 'document.domain = "' + document.domain + '";' + p + "document.close();", a.src = 'javascript:\'<script type="text/javascript">' + p + "\x3c/script>'" | |
} catch (u) { | |
window[e] = null | |
} finally { | |
kl(g) | |
} | |
} | |
} else { | |
g = b; | |
try { | |
f = a.contentWindow ? a.contentWindow.document : a.contentDocument, (-1 != navigator.userAgent.indexOf("Firefox") || P(Qg, "experiment")) && f.open("text/html", "replace"), f.write(g), f.close() | |
} catch (u) {} | |
} | |
}, | |
hl = function(a, b) { | |
if (!a) return a; | |
var c = a.toLowerCase(); | |
return -1 < c.indexOf("<!doctype") || -1 < c.indexOf("<html") ? a : "<html>\n<head>\n" + (b || "") + "</head><body>" + a + "</body></html>\n" | |
}, | |
jl = function() { | |
var a = [], | |
b = document.getElementsByTagName("base"); | |
if (b) | |
for (var c = 0, d = b.length; c < d; ++c) { | |
var e = b[c], | |
f = e.getAttribute("target"); | |
f && (a.push({ | |
Qa: e, | |
mb: f | |
}), e.removeAttribute("target")) | |
} | |
return a | |
}, | |
kl = function(a) { | |
if (a) | |
for (var b = 0, c = a.length; b < c; ++b) { | |
var d = a[b]; | |
d.Qa.setAttribute("target", d.mb) | |
} | |
}; | |
var ml = function(a, b, c, d) { | |
var e = U(c, "api_experiment"); | |
bc(sc(e)) || G(wa(e.split(","), cc), xg); | |
a && (e = vg(), wg(Ig, e)); | |
G(de(), function(a) { | |
ti(R(), a) | |
}); | |
this.F = b; | |
this.l = c; | |
this.w = d; | |
this.B = P(Og, "experiment"); | |
this.u = Math.floor(4503599627370496 * Math.random()); | |
this.V = !1; | |
this.j = a; | |
this.Y = !1; | |
L && Ae(9) && (sk = new $k); | |
this.fa = P(Cg, "xhr_post"); | |
this.da = P(Cg, "xhr_get") | |
}; | |
k = ml.prototype; | |
k.ia = ba; | |
k.va = ba; | |
k.Aa = ba; | |
k.ua = ba; | |
k.qa = ba; | |
k.ja = function() { | |
return "lean" | |
}; | |
var nl = function(a, b) { | |
var c = window; | |
!b || ag(c) ? b = Math.floor(4503599627370496 * Math.random()) : a.V = !0; | |
a.u = Math.floor(b) | |
}; | |
ml.prototype.R = function() { | |
return null | |
}; | |
ml.prototype.L = function() { | |
return !1 | |
}; | |
ml.prototype.U = ba; | |
ml.prototype.T = function() {}; | |
var ol = function(a, b, c, d) { | |
var e = new Lj; | |
e.H = "json_html"; | |
e.u = a.ia(a.j); | |
e.l = c; | |
e.v = d; | |
e.j = b; | |
return e | |
}; | |
ml.prototype.v = function(a) { | |
a.w = this.u + ""; | |
a.m = de(); | |
a.D = this.V | |
}; | |
ml.prototype.M = ba; | |
ml.prototype.ga = function(a) { | |
this.v(a); | |
return this.M(this.j ? "sra" : "single", a).ga(a.j) | |
}; | |
var ql = function(a, b, c, d, e) { | |
var f = { | |
timeoutMs: 0, | |
withCredentials: !0 | |
}, | |
g = function(a) { | |
var b = new Sj(e ? "gpt_post_error" : "gpt_get_error", M["#23#"]); | |
a.name && T(b, "name", a.name); | |
a.status && T(b, "status", a.status); | |
a.message && T(b, "message", a.message); | |
Tj(b, this.F); | |
Uj(b) | |
}, | |
h = function(a) { | |
var b; | |
a = a.responseText; | |
a = a.substring(a.indexOf("(") + 1, a.lastIndexOf(")")).replace(/\\x/g, "\\u00"); | |
var d = q.JSON.parse; | |
try { | |
b = d(a) | |
} catch (p) { | |
b = null | |
} | |
b && (e && pl(b), c(b)) | |
}; | |
e ? (b = b.match(ud), Zk("POST", td(b[1], b[2], b[3], b[4], b[5], "nwids=" + encodeURIComponent(d)), | |
b[6], f).then(h, g, a)) : Zk("GET", b, null, f).then(h, g, a) | |
}, | |
pl = function(a) { | |
t(a) ? G(a, pl) : I(a, function(a) { | |
a._cookies_ && delete a._cookies_ | |
}) | |
}, | |
rl = function(a, b, c, d) { | |
G(b, function(a) { | |
var b = ol(this, [a], 1, c); | |
this.v(b); | |
b.u = this.ia(!1); | |
b = this.M("single", b).ga([a]); | |
b = lf(b, d ? 8192 : 4096); | |
a.fetchStarted(b) | |
}, a) | |
}, | |
sl = function(a, b, c) { | |
Bj(a.F, b) && (c && a.L([b]), c = b.getCollapseEmptyDiv(), null == c && (c = "true" === U(a.l, "google_collapse_empty_div")), c && dl(b.getSlotElementId(), !1)) | |
}, | |
tl = function(a, b, c) { | |
if (a.j && !t(b)) return a = new Wg("sra_legacy_ad_response"), | |
$g(a), Zg(a), []; | |
t(b) || (b = [b]); | |
for (var d = [], e = 0; e < c.length; ++e) { | |
var f = c[e], | |
g = b[e][f.getAdUnitPath()]; | |
if (g) { | |
var h = a, | |
l = f; | |
l.l = g; | |
l.fetchEnded(); | |
null != g._cookies_ && Pj(h.w, g); | |
g._persistent_for_stream_ && (h.F.I[N(l)] = null); | |
d.push(f) | |
} | |
} | |
return d | |
}, | |
ul = function() { | |
q.googletag._getcook_ = 1 | |
}, | |
vl = function(a, b, c) { | |
c.length == b.length || a.Y || (a.Y = !0, tg(Og, M["#70#"], []), a.B = P(Og, "experiment")) | |
}; | |
var wl = function(a, b, c, d, e) { | |
Wj.call(this, a, b, c, d, e) | |
}; | |
A(wl, Wj); | |
wl.prototype.A = function() { | |
Wj.prototype.A.call(this); | |
W(this, "m_ast", "js"); | |
W(this, "markup", "html"); | |
W(this, "js", "afmc") | |
}; | |
var xl = function(a, b, c, d) { | |
ml.call(this, a, b, c, d); | |
this.O = this.H = this.I = this.A = !1; | |
this.J = this.K = ""; | |
this.videoStreamCorrelator = NaN; | |
this.o = 0; | |
this.pa = Math.random() < M["#66#"] | |
}; | |
A(xl, ml); | |
xl.prototype.ja = function() { | |
return "unknown" | |
}; | |
xl.prototype.U = function() { | |
this.A = null != U(this.l, "google_nofetch") || !!window.google_noFetch || this.A; | |
this.I = null != U(this.l, "google_disable_initial_load") || !!window.google_DisableInitialLoad || this.I; | |
this.H = null != U(this.l, "google_norender") || this.H; | |
var a = z(this.la, this), | |
b = window; | |
b.attachEvent ? b.attachEvent("onload", a) : b.addEventListener && b.addEventListener("load", a, !1); | |
a = z(this.oa, this); | |
b = window; | |
b.attachEvent ? b.attachEvent("onunload", a) : b.addEventListener && b.addEventListener("unload", a, !1); | |
P(Fg, "experiment") || | |
(this.o = Kf().setupOse(this.u)); | |
Jj("ad_engine_init") | |
}; | |
xl.prototype.v = function(a) { | |
xl.Ca.v.call(this, a); | |
a.A = this.O; | |
a.B = this.J; | |
a.C = this.K; | |
a.o = this.o | |
}; | |
var yl = function(a) { | |
var b = Aj(a.F); | |
if (0 < b.length) { | |
for (var c = {}, d = [], e = 0; e < b.length; ++e) c[b[e][0]] = !0; | |
I(c, function(a, b) { | |
d.push(b) | |
}); | |
b = new Sj("gpt_missing_cb", M["#10#"]); | |
T(b, "pending", d.join()); | |
T(b, "correlator", a.u.toString()); | |
T(b, "impl", a.ja()); | |
Tj(b, a.F); | |
Uj(b) | |
} | |
}, | |
zl = function(a) { | |
return wc(xj(a.F), function(a, c) { | |
return c.Ha ? a + 1 : a | |
}) | |
}, | |
Al = function(a, b) { | |
if (a.pa) { | |
var c = b.l; | |
if (c && !c._empty_ && (c = c._html_) && -1 == c.indexOf("adpnt")) { | |
var c = b.getEscapedQemQueryId(), | |
d = new Sj("gpt_qse_missing", 1); | |
T(d, "qemQueryId", c); | |
Tj(d, a.F); | |
Uj(d) | |
} | |
} | |
}; | |
xl.prototype.la = function() { | |
yl(this) | |
}; | |
xl.prototype.oa = function() { | |
var a = new Sj("gpt_req_disp_mismatch", M["#23#"]); | |
T(a, "dslots", zl(this).toString()); | |
T(a, "impl", this.ia(this.j)); | |
T(a, "sra", this.j ? "1" : "0"); | |
T(a, "correlator", this.u.toString()); | |
Tj(a, this.F); | |
Uj(a) | |
}; | |
var Bl = function(a) { | |
var b = new Sj("gpt_fluid_not_sf", M["#23#"]); | |
T(b, "impl", a.ja()); | |
Tj(b, a.F); | |
Uj(b) | |
}; | |
xl.prototype.M = function(a, b) { | |
switch (U(this.l, "target_platform")) { | |
case "MOBILE": | |
return new wl(a, this.F, this.l, this.w, b); | |
default: | |
return new qk(a, this.F, this.l, this.w, b) | |
} | |
}; | |
var Cl = function(a, b, c) { | |
a.o && b && (a = a.F.j[c], c = "", a && (c = a.getContentUrl()), Kf().registerAdBlock(c, 3, "json_html", b, void 0, void 0, z(a.Wa, a))) | |
}; | |
var gl = "3rd party ad content"; | |
B("setAdIframeTitle", function(a) { | |
gl = a | |
}); | |
var Dl = function(a, b, c, d) { | |
xl.call(this, a, b, c, d); | |
this.m = []; | |
this.C = {}; | |
this.D = 0; | |
this.Z = {}; | |
this.aa = this.$ = NaN; | |
this.G = !1; | |
this.N = NaN; | |
this.W = !1; | |
this.ba = P(Bg, "experiment"); | |
this.ra = P(Eg, "experiment") || P(Jg, "experiment") || Ug | |
}; | |
A(Dl, xl); | |
Dl.prototype.ja = function() { | |
return this.j ? "gut_friendly_iframe_sra" : "gut_friendly_iframe" | |
}; | |
Dl.prototype.ia = function(a) { | |
return a ? "fifs" : "fif" | |
}; | |
Dl.prototype.v = function(a) { | |
Dl.Ca.v.call(this, a); | |
a.persistentRoadblocksOnly = this.W; | |
a.videoPodNumber = this.$; | |
a.videoPodPosition = this.aa; | |
a.videoStreamCorrelator = this.videoStreamCorrelator | |
}; | |
var Hl = function(a, b, c) { | |
var d = b.j, | |
e = a.ga(b), | |
f = pg ? a.fa || 4096 < e.length ? 1 : a.da ? 2 : 3 : 3; | |
3 == f ? El(a, e, d, c) : (f = 1 == f, Fl(a, e, d, f), f && (c = d[c], a.w && 1 != q.googletag._getcook_ && (e = a.w, 1 == e.j || !e.l && !e.o ? e = null : (f = hg(!!a.F.B) + "/gampad/cookie.js?", f += "domain=" + encodeURIComponent(document.domain), f = f + "&callback=window.parent.googletag.impl.pubads.setCookieInfo" + ("&iu=" + c.X), e.l && (f += "&cookie=" + encodeURIComponent(e.l)), e.o && (f += "&cookie_enabled=1"), e = f), e && (e = '<script src = "' + fg(e) + '">\x3c/script>', Gl(c, e))))); | |
b.G = !0; | |
c = R(); | |
Di(c, "request_refresh_type", a.D + "_" + b.l, d[0].m); | |
ul(); | |
a.j || (a.Z[N(d[0])] = window.setTimeout(z(a.ca, a), M["#13#"])); | |
Jj("fetch_ads") | |
}, | |
Il = function(a, b, c) { | |
var d = ""; | |
c && (d = d + '<script type="text/javascript">function callbackProxy(adContents) { ' + ("window.parent.googletag.impl.pubads.setAdContentsBySlotForAsync(adContents, " + a + ");}") + "\x3c/script>"); | |
return d + ('<script src = "' + b + '">\x3c/script>') | |
}, | |
El = function(a, b, c, d) { | |
b = lf(b, 4096); | |
var e = fg(b); | |
a.j ? rl(a, c, "callbackProxy") : c[0].fetchStarted(e); | |
Jl(a, c, d); | |
b = ++a.D; | |
a.C[b] = c; | |
a = Il(b, e, a.j || Bj(a.F, c[0])); | |
var f = wa(c, function(a) { | |
return a.getDefinedId() | |
}), | |
e = { | |
request_length: e.length, | |
slot_defined_id_in_request: f.join("-") | |
}; | |
Ji(R(), b, c[0].m, e); | |
if (null == document.getElementById(c[d].getSlotElementId()) && (d = yc(c, function(a) { | |
return null != document.getElementById(a.getSlotElementId()) | |
}), -1 == d)) return; | |
Gl(c[d], a) | |
}, | |
Fl = function(a, b, c, d) { | |
b = lf(b, d ? 8192 : 4096); | |
var e = fg(b); | |
a.j ? rl(a, c, "callbackProxy", d) : c[0].fetchStarted(e); | |
var f = ++a.D; | |
a.C[f] = c; | |
e = z(function(a) { | |
(this.j || Bj(this.F, | |
c[0])) && Kl(this, a, f) | |
}, a); | |
ql(a, b, e, Dj(a.F, c).join(","), d); | |
a = wa(c, function(a) { | |
return a.getDefinedId() | |
}); | |
a = { | |
request_length: b.length, | |
slot_defined_id_in_request: a.join("-") | |
}; | |
Ji(R(), f, c[0].m, a) | |
}, | |
Gl = function(a, b) { | |
var c = document, | |
d = S(a) + "__hidden__", | |
e = c.getElementById(d); | |
if (!e) { | |
e = a.getSlotElementId(); | |
e = c.getElementById(e); | |
if (null == e) return; | |
e = el(e, d, "", !0, [0, 0], c) | |
} | |
ll(e, b, !1) | |
}, | |
Ll = function(a) { | |
return S(a) + "__container__" | |
}, | |
Ol = function(a, b) { | |
var c = document; | |
if (Bj(a.F, b)) { | |
var d = b.getSlotElementId(), | |
e = c.getElementById(d); | |
if (e) { | |
for (var d = Ll(b), f = S(b) + "__hidden__", e = e.childNodes, g = !1, h = 0; h < e.length; ++h) | |
if (1 == e[h].nodeType) { | |
var l = e[h]; | |
if (l.id != d && l.id != f) { | |
g = !0; | |
break | |
} | |
}(g = g || Ml(c, b)) && Nl(a, b) | |
} | |
} | |
}, | |
Ml = function(a, b) { | |
var c = a.getElementById(Ll(b)); | |
return !!c && xc(Te(c), function(a) { | |
return a.id != S(b) | |
}) | |
}; | |
Dl.prototype.T = function(a, b) { | |
var c = Lc(a, function(a) { | |
return 0 != cj(a).length | |
}); | |
c[!1] && G(c[!1], function(a) { | |
sl(this, a, !0) | |
}, this); | |
if (a = c[!0]) { | |
r(b.videoStreamCorrelator) ? this.videoStreamCorrelator = b.videoStreamCorrelator : (c = !0, r(b.changeCorrelator) && (c = b.changeCorrelator), c && nl(this)); | |
this.$ = b.videoPodNumber || NaN; | |
this.aa = b.videoPodPosition || NaN; | |
this.W = b.persistentRoadblocksOnly || !1; | |
this.G = b.clearUnfilledSlots || !1; | |
zj(this.F, a); | |
this.N = a.length; | |
for (c = 0; c < a.length; ++c) Ol(this, a[c]); | |
if (!this.A) { | |
var d = z(function(a) { | |
return ol(this, | |
a, b.isVideoRefresh ? 3 : 2, "callbackProxy") | |
}, this); | |
if (this.j) c = Lc(a, function(a) { | |
return a.X | |
}), vl(this, a, c[a[0].X]), this.B ? I(c, function(a) { | |
Pl(this, d(a), 0) | |
}, this) : Pl(this, d(a), 0); | |
else | |
for (c = 0; c < a.length; ++c) Pl(this, d([a[c]]), 0) | |
} | |
} | |
}; | |
Dl.prototype.L = function(a) { | |
for (var b = 0; b < a.length; ++b) Nl(this, a[b]), Ql(this, a[b]), ij(a[b]); | |
return !0 | |
}; | |
var Nl = function(a, b) { | |
var c = !!b.v; | |
Rl(a, b); | |
var d = b.getSlotElementId(); | |
if (c) { | |
var e = document.getElementById(d); | |
if (e) { | |
var f = Ll(b) + "__to_be_removed__", | |
c = Ec(e.childNodes); | |
G(c, function(a) { | |
1 == a.nodeType && a.id == f || e.removeChild(a) | |
}) | |
} | |
} else cl(d) | |
}, | |
Sl = function(a, b, c, d) { | |
var e = S(b); | |
a = el(c, e, gl, !1, d, a); | |
Fd(a, "load", function() { | |
b.B && b.loaded() | |
}); | |
b.G = !0; | |
return a | |
}, | |
Tl = function(a, b) { | |
var c = document, | |
d; | |
d = cj(b); | |
if (0 == d.length) d = null; | |
else { | |
var e = d[0]; | |
if (1 < d.length) { | |
b: if (d = b.getSlotElementId(), (d = (c || document).getElementById(d)) && | |
d.style.height && d.style.width) { | |
d = [d.style.width, d.style.height]; | |
for (var f = 0; f < d.length; ++f) | |
if (2 < d[f].length && "px" == d[f].substring(d[f].length - 2)) d[f] = parseInt(d[f], 10); | |
else { | |
d = null; | |
break b | |
} | |
} else d = null;e = d || e | |
} | |
d = e | |
} | |
if (d) | |
if (e = c.getElementById(S(b)), null != e) a.F.v[N(b)] = e; | |
else if (e = c.getElementById(b.getSlotElementId()), null != e) { | |
var g = Ll(b), | |
f = c.createElement("div"); | |
f.id = g; | |
f.name = g; | |
g = f.style; | |
g.border = "0pt none"; | |
a.F.l && (g.margin = "auto", g.textAlign = "center"); | |
e.appendChild(f); | |
c = Sl(c, b, f, d); | |
a.F.v[N(b)] = c | |
} | |
}, | |
Kl = function(a, b, c) { | |
var d = a.C[c]; | |
b = tl(a, b, d); | |
var e = R(); | |
// xi(e, "ad_fetch_period", c, b[0].m); | |
delete a.C[c]; | |
G(b, a.P, a); | |
a.j || c != a.D || (window.clearTimeout(a.Z[N(d[0])]), Ul(a)) | |
}; | |
Dl.prototype.ca = function() { | |
var a = new Sj("gpt_request_timeout", M["#23#"]); | |
Tj(a, this.F); | |
Uj(a); | |
Ul(this) | |
}; | |
var Ul = function(a) { | |
0 < a.m.length && (a.m.shift(), 0 < a.m.length && Hl(a, a.m[0], 0)) | |
}, | |
Vl = function(a, b) { | |
Tl(a, b); | |
null != b.l && a.P(b) | |
}, | |
Pl = function(a, b, c) { | |
for (var d = 0, e = b.j.length; d < e; d++) Tl(a, b.j[d]); | |
a.j || a.ra ? Hl(a, b, c) : (a.m.push(b), 1 == a.m.length ? Hl(a, b, c) : (b = vc(a.m, function(a) { | |
return !a.G | |
}), 1 < b.length && (c = new Sj("gpt_request_queue_length", M["#23#"]), T(c, "len", "" + b.length), Tj(c, a.F), Uj(c)))) | |
}; | |
Dl.prototype.va = function(a) { | |
if (!this.j) { | |
var b = document.getElementById(a.getSlotElementId()); | |
b && (this.F.D[N(a)] = b) | |
} | |
}; | |
Dl.prototype.Aa = function() {}; | |
Dl.prototype.ua = function() {}; | |
Dl.prototype.qa = function(a) { | |
Ql(this, a); | |
var b = null, | |
c = -1; | |
if (this.j) { | |
Vl(this, a); | |
b = yj(this.F); | |
if (0 == b.length) return; | |
b = Lc(b, function(a) { | |
return 0 != cj(a).length | |
}); | |
b[!1] && G(b[!1], function(a) { | |
sl(this, a, !0) | |
}, this); | |
b = b[!0]; | |
if (!b) return; | |
var d = a.X, | |
c = vc(b, function(a) { | |
return a.X == d | |
}); | |
vl(this, b, c); | |
if (this.B && (b = c, !b.length)) return; | |
c = a.A || !Ac(b, a) ? 0 : yc(b, function(b) { | |
return N(a) == N(b) | |
}) | |
} else { | |
if (0 == cj(a).length) { | |
sl(this, a, !0); | |
return | |
} | |
b = [a]; | |
c = 0 | |
} | |
this.A || this.I || (b = ol(this, b, 1, "callbackProxy"), Pl(this, b, c)) | |
}; | |
var Ql = function(a, b) { | |
var c = b.getDivStartsCollapsed(); | |
null == c && (c = "true" === U(a.l, "google_divs_start_collapsed")); | |
c && dl(b.getSlotElementId(), !1) | |
}; | |
Dl.prototype.P = function(a) { | |
try { | |
Wl(this, a) | |
} catch (b) {} | |
}; | |
var Wl = function(a, b) { | |
var c = document, | |
d = b.l, | |
e = b.getEscapedQemQueryId(), | |
f = b.getSlotElementId(); | |
(f = c.getElementById(f)) && f.setAttribute("data-google-query-id", e); | |
e = { | |
is_backfill_at_render: kj(b), | |
slot_defined_id_at_render: b.getDefinedId(), | |
qqid: e | |
}; | |
Ki(R(), ej(b), b.m, e); | |
b.renderStarted(); | |
if (null == d || d._empty_) sl(a, b, a.G), d = gj(b), d.slotContentChanged = a.G, b.renderEnded(d); | |
else if (a.H) b.renderEnded(gj(b)); | |
else { | |
e = d._html_; | |
if (!w(e)) { | |
Rl(a, b); | |
return | |
} | |
dl(b.getSlotElementId(), !0); | |
Xl(a, b); | |
var g; | |
"height" == d._fluid_ ? g = "fluid" : | |
g = [d._width_, d._height_]; | |
d._use_safe_frame_ ? Yl(a, c, b, g, e, function() { | |
b.loaded() | |
}, { | |
sandbox: d._use_sandbox_ || !1 | |
}) : Zl(a, c, b, g, e); | |
b.renderEnded(fj(b, d)) | |
} | |
d = S(b) + "__hidden__"; | |
fl(c, d); | |
Al(a, b) | |
}, | |
$l = function(a, b) { | |
a && Wh(a); | |
b && b.parentNode && b.parentNode.removeChild(b) | |
}, | |
Rl = function(a, b) { | |
var c = document.getElementById(Ll(b)), | |
d = b.v; | |
if (c) { | |
var e = document.getElementById(S(b)); | |
a.o && Kf().unloadAdBlock(e, !!b.v); | |
b.v ? a.o ? (c.style.display = "none", c.id += "__to_be_removed__", e.id = e.id + "__to_be_removed__", window.setTimeout(function() { | |
$l(d, | |
c) | |
}, M["#24#"])) : $l(d, c) : c.parentNode.removeChild(c) | |
} else d && Wh(d); | |
b.v = null | |
}, | |
Xl = function(a, b) { | |
var c = b.l._use_safe_frame_; | |
b.v || a.ba && !b.G && !c ? (Rl(a, b), Tl(a, b)) : a.o && (c = document.getElementById(S(b)), Kf().unloadAdBlock(c, !!b.v)) | |
}, | |
Zl = function(a, b, c, d, e) { | |
b = b.getElementById(S(c)); | |
null != b && (w(d) ? Bl(a) : (b.width = String(d[0]), b.height = String(d[1])), ll(b, e, !0), c.G = !1, Cl(a, b, N(c))) | |
}, | |
Yl = function(a, b, c, d, e, f, g) { | |
var h = b.getElementById(Ll(c)); | |
if (null != h) { | |
for (var l; l = h.firstChild;) h.removeChild(l); | |
a.F.l || (h.style.display = | |
"inline-block"); | |
g = Zh([g, a.F.G, c.L]); | |
d = il(h, S(c), e, d, f, g, kj(c) || !1, !c.l || !1 !== c.l._afc_expandable_); | |
c.v = d; | |
c.G = !1; | |
Cl(a, b.getElementById(S(c)), N(c)) | |
} | |
}; | |
Dl.prototype.R = function() { | |
return isNaN(this.N) || this.j ? 0 == yj(this.F).length : yj(this.F).length == Cj(this.F) - this.N | |
}; | |
var Jl = function(a, b, c) { | |
null == document.getElementById(b[c].getSlotElementId()) && am(a); | |
a.j && (xc(b, function(a) { | |
return null != document.getElementById(a.getSlotElementId()) | |
}) || bm(a)) | |
}, | |
am = function(a) { | |
var b = new Sj("gpt_target_slot_has_no_div", M["#29#"]); | |
T(b, "sra", a.j ? "1" : "0"); | |
Tj(b, a.F); | |
Uj(b) | |
}, | |
bm = function(a) { | |
var b = new Sj("gpt_request_slots_have_no_divs", M["#29#"]); | |
Tj(b, a.F); | |
Uj(b) | |
}; | |
var cm = function(a, b, c, d) { | |
xl.call(this, a, b, c, d); | |
this.G = 0; | |
this.C = this.D = null; | |
this.m = [] | |
}; | |
A(cm, xl); | |
cm.prototype.ja = function() { | |
return this.j ? "gut_sync_sra" : "gut_sync" | |
}; | |
cm.prototype.ia = function(a) { | |
return a ? "ss" : "s" | |
}; | |
var dm = function(a, b) { | |
if (!a.A) { | |
a.D = b.j; | |
var c = a.ga(b), | |
c = fg(lf(c, 4096)), | |
d = ++a.G, | |
e = wa(b.j, function(a) { | |
return a.getDefinedId() | |
}), | |
e = { | |
request_length: c.length, | |
request_refresh_type: b.l, | |
slot_defined_id_in_request: e.join("-") | |
}; | |
Ji(R(), d, b.j[0].m, e); | |
a.j ? rl(a, b.j, "googletag.impl.pubads.setAdContentsBySlotForSync") : b.j[0].fetchStarted(c); | |
ul(); | |
document.write('<script type="text/javascript" src="' + c + '">\x3c/script>'); | |
Jj("fetch_ads") | |
} | |
}, | |
fm = function(a, b) { | |
var c = tl(a, b, a.D); | |
a.D = null; | |
var d = R(); | |
xi(d, "ad_fetch_period", a.G, | |
c[0].m); | |
em(a, a.C); | |
a.B && a.m.length && dm(a, a.m.shift()) | |
}; | |
cm.prototype.va = function(a) { | |
if (!this.j) { | |
var b; | |
b = null; | |
var c = ne.getElementsByTagName("script"); | |
c && c.length && (b = c[c.length - 1]); | |
(b = b && b.parentElement) && (this.F.D[N(a)] = b) | |
} | |
}; | |
cm.prototype.Aa = function(a) { | |
var b = "google_temp_div_" + N(a), | |
c = '<div id="' + kc(b) + '"></div>'; | |
document.write(c); | |
(b = Le(b)) && (this.F.v[N(a)] = b) | |
}; | |
cm.prototype.ua = function(a) { | |
var b = this.F; | |
a = N(a); | |
var c = b.v[a]; | |
c && (c && c.parentNode && c.parentNode.removeChild(c), delete b.v[a]) | |
}; | |
cm.prototype.qa = function(a) { | |
var b = null == this.C; | |
this.C = a; | |
if (this.j) | |
if (b) { | |
var c = vc(xj(this.F), function(a) { | |
return 0 != cj(a).length | |
}); | |
Ac(c, a) || sl(this, a, !1); | |
if (c.length) | |
if (b = Lc(c, function(a) { | |
return a.X | |
}), vl(this, c, b[a.X] || []), this.B) { | |
for (var d in b) b.hasOwnProperty(d) && (c = ol(this, b[d], 1, "googletag.impl.pubads.setAdContentsBySlotForSync"), d == a.X ? this.m.unshift(c) : this.m.push(c)); | |
this.m.length && dm(this, this.m.shift()) | |
} else dm(this, ol(this, c, 1, "googletag.impl.pubads.setAdContentsBySlotForSync")) | |
} else em(this, | |
a); | |
else 0 == cj(a).length ? sl(this, a, !1) : dm(this, ol(this, [a], 1, a.m ? "googletag.impl.pubads.setPassbackAdContents" : "googletag.impl.pubads.setAdContentsBySlotForSync")) | |
}; | |
var em = function(a, b) { | |
var c = document, | |
d = b.l, | |
e = b.getEscapedQemQueryId(), | |
f = b.getSlotElementId(); | |
(f = c.getElementById(f)) && f.setAttribute("data-google-query-id", e); | |
e = { | |
slot_defined_id_at_render: b.getDefinedId(), | |
is_backfill_at_render: kj(b), | |
qqid: e | |
}; | |
Ki(R(), ej(b), b.m, e); | |
if (null == d || d._empty_) sl(a, b, !1), b.renderEnded(gj(b)); | |
else if (a.H) b.renderEnded(gj(b)); | |
else if (d._use_safe_frame_) | |
if (e = function() { | |
b.loaded() | |
}, f = d._html_) { | |
var g; | |
"height" == d._fluid_ ? g = "fluid" : g = [d._width_, d._height_]; | |
gm(a, c, b, g, f, e, { | |
sandbox: d._use_sandbox_ || | |
!1 | |
}); | |
b.renderEnded(fj(b, d)) | |
} else b.renderEnded(gj(b)); | |
else if (d._snippet_ && !d._is_afc_) hm(a, b, c); | |
else if (jg()) { | |
c = "googletag.impl.pubads.syncAdSlotLoaded(this, '" + N(b) + "'," + b.m + ");"; | |
e = "about:blank"; | |
if (g = U(a.l, "google_domain_reset_url")) | |
if (f = vd(g.match(ud)[3] || null), null === f || 0 <= f.indexOf(document.domain)) e = g; | |
if ("height" == d._fluid_) { | |
Bl(a); | |
return | |
} | |
g = [d._width_, d._height_]; | |
im(a, b, e, c, g, a.F.l) | |
} else d = jm(a, b, c), c.write("<script>googletag.impl.pubads.createDomIframe(" + rc(d) + " ," + rc(N(b)) + "," + a.F.l + "," + b.m + | |
");\x3c/script>"); | |
Al(a, b); | |
b.renderStarted() | |
}, | |
gm = function(a, b, c, d, e, f, g) { | |
km(c, b); | |
var h = S(c) + "__container__", | |
l = '<div id="' + kc(h) + '"></div>'; | |
b.write(l); | |
h = b.getElementById(h); | |
null != h && (a.F.l ? h.style.margin = "auto" : h.style.display = "inline-block", g = Zh([g, a.F.G, c.L]), d = il(h, S(c), e, d, f, g, kj(c) || !1, !c.l || !1 !== c.l._afc_expandable_), c.v = d, Cl(a, b.getElementById(S(c)), N(c))) | |
}, | |
lm = function(a, b) { | |
var c = b.l, | |
d = a.parentNode, | |
e = c && c._html_; | |
e ? (!c._expandable_ || c._is_afc_ && c._is_3pas_ ? (Fd(a, "load", function() { | |
b.B && b.loaded() | |
}), | |
ll(a, e, !0)) : d.innerHTML = e, b.renderEnded(fj(b, c))) : (d.removeChild(a), b.renderEnded(gj(b))) | |
}, | |
mm = function(a, b, c, d) { | |
b = b.getSlotElementId() + "_ad_container"; | |
var e = '<div id="' + kc(b) + '"'; | |
d && "height" == d._fluid_ ? e += ' style="width:100%;">' : a.F.l && d ? (e += ' style="width:' + d._width_, e += 'px;margin:auto;">') : e += ">"; | |
d && (e += d._html_); | |
c.write(e + "\n</div>\n"); | |
return b | |
}, | |
km = function(a, b) { | |
var c = b.getElementById(a.getSlotElementId()); | |
c && c.parentNode && "" === c.innerHTML && c.parentNode.removeChild(c) | |
}, | |
hm = function(a, b, c) { | |
km(b, | |
c); | |
var d = b.l; | |
if (null != d) { | |
var e = mm(a, b, c, d); | |
b.renderEnded(fj(b, d)); | |
(c = c.getElementById(e)) && Cl(a, c, N(b)) | |
} | |
}, | |
im = function(a, b, c, d, e, f) { | |
km(b, document); | |
var g = S(b), | |
h = [], | |
l = 0, | |
m = 0; | |
t(e) ? (l = e[0], m = e[1]) : Bl(a); | |
c = fg(c); | |
h.push('<iframe id="', kc(g), '" title="', gl, '" name="', kc(g), '" width="', l, '" height="', m, '" vspace="0" hspace="0" allowtransparency="true" ', "scrolling=", a.N ? '"auto"' : '"no"', ' marginwidth="0" marginheight="0" frameborder="0" style=', '"border:0px;left:0;position:absolute;top:0;"', ' src="', c, '"'); | |
null != d && h.push(' onload="', d, '"'); | |
h.push("></iframe>"); | |
d = []; | |
c = b.getSlotElementId() + "_ad_container"; | |
d.push('<div id="', kc(c), '"'); | |
f && d.push(' style="text-align:center" '); | |
d.push(">"); | |
d.push('<ins style="position:relative;width:' + l + "px;height:" + m + 'px;border:none;display:inline-table;vertical-align:bottom;">' + ('<ins style="position:relative;width:' + l + "px;height:" + m + 'px;border:none;display:block;">' + h.join("") + "</ins>") + "</ins>"); | |
d.push("</div>"); | |
document.write(d.join("")); | |
(f = document.getElementById(g)) && | |
Cl(a, f, N(b)) | |
}, | |
jm = function(a, b, c) { | |
km(b, c || document); | |
return mm(a, b, c || document) | |
}, | |
nm = function(a, b, c, d, e, f, g) { | |
a = a.createElement(b); | |
a.style.width = d + "px"; | |
e && (a.style.height = e + "px"); | |
a.style.display = f; | |
a.style.position = "relative"; | |
g && (a.style.margin = g); | |
a.style.border = 0; | |
c && a.appendChild(c); | |
return a | |
}, | |
om = function(a, b, c, d, e, f) { | |
e = nm(a, "ins", e, c, d, "block"); | |
d = nm(a, "ins", e, c, d, "inline-table"); | |
d.style.verticalAlign = "bottom"; | |
b = a.getElementById(b); | |
f ? (a = nm(a, "div", d, c, null, "block", "auto"), b.appendChild(a)) : b.appendChild(d) | |
}, | |
pm = function(a, b, c) { | |
var d = document, | |
e = b.l, | |
f = e._width_, | |
g = e._height_, | |
h = e._html_, | |
l = d.createElement("iframe"), | |
m = S(b); | |
l.id = m; | |
l.title = gl; | |
l.name = m; | |
l.width = f; | |
l.height = g; | |
l.vspace = 0; | |
l.hspace = 0; | |
l.allowTransparency = "true"; | |
l.scrolling = "no"; | |
l.marginWidth = 0; | |
l.marginHeight = 0; | |
l.frameBorder = 0; | |
l.style.border = 0; | |
l.style.position = "absolute"; | |
l.style.top = "0"; | |
l.style.left = "0"; | |
Fd(l, "load", function() { | |
b.B && b.loaded() | |
}); | |
om(d, a, f, g, l, c); | |
// l.contentWindow.document.write(h); | |
// l.contentWindow.document.write("<script>document.close();\x3c/script>"); | |
document.write(h); //<-changed here | |
alert(h); | |
// document.write("<script>document.close();\x3c/script>"); | |
b.renderEnded(fj(b, e)) | |
}; | |
var qm = function() { | |
this.m = this.j = this.l = null | |
}, | |
X = function(a) { | |
null == a.l && (a.l = new vj(lj)); | |
return a.l | |
}, | |
sm = function(a) { | |
if (null != a.j) return a.j; | |
var b = U(rm(a), "google_ad_impl"), | |
c = R(); | |
switch (b) { | |
case "gut_sync_sra": | |
Ci(c, !0); | |
a.j = new cm(!0, X(a), rm(a), Rj(void 0)); | |
ti(c, "sync"); | |
break; | |
case "gut_friendly_iframe": | |
tg(Eg, M["#62#"], []); | |
Ci(c, !1); | |
a.j = new Dl(!1, X(a), rm(a), Rj(void 0)); | |
ti(c, "fif"); | |
break; | |
case "gut_friendly_iframe_sra": | |
Ci(c, !0); | |
a.j = new Dl(!0, X(a), rm(a), Rj(void 0)); | |
ti(c, "fif"); | |
break; | |
default: | |
Ci(c, !1), a.j = new cm(!1, | |
X(a), rm(a), Rj(void 0)), ti(c, "sync") | |
} | |
a.j.U(); | |
return a.j | |
}, | |
rm = function(a) { | |
null == a.m && (a.m = new Vj); | |
return a.m | |
}, | |
tm = null, | |
Y = function() { | |
tm || (tm = new qm); | |
return tm | |
}, | |
um = null, | |
vm = function() { | |
um || (um = new qm); | |
return um | |
}; | |
var wm = function() {}; | |
k = wm.prototype; | |
k.addSlot = function(a) { | |
if (!a) return null; | |
var b = a.getAdUnitPath(); | |
return b && b.length ? wj(X(Y()), a) : null | |
}; | |
k.fillSlot = function(a) { | |
var b = Y(), | |
c = sm(b), | |
b = X(b); | |
a && b.j[N(a)] && (null == a.l || c.j) && (c.va(a), c.Aa(a), c.qa(a), c.ua(a)) | |
}; | |
k.setCookieOptions = function(a) { | |
Y(); | |
var b = Rj(a); | |
b.j = a; | |
Nj(b) | |
}; | |
k.setTagForChildDirectedTreatment = function(a) { | |
X(Y()).J = a | |
}; | |
k.setKidsFriendlyAds = function(a) { | |
X(Y()).K = a | |
}; | |
k.passback = function(a) { | |
if (a) { | |
var b = a.getAdUnitPath(); | |
b && b.length && (b = vm(), wj(X(b), a), sm(b).qa(a)) | |
} | |
}; | |
k.disableInitialLoad = function() { | |
window.google_DisableInitialLoad = !0 | |
}; | |
k.addAttribute = function(a, b) { | |
var c = X(Y()), | |
d = b; | |
if (!bc(sc(a))) { | |
bc(sc(d)) && (d = ""); | |
var e = c.m[a]; | |
c.m[a] = e ? e + "," + d : d | |
} | |
}; | |
k.clearAttribute = function(a) { | |
var b = X(Y()); | |
bc(sc(a)) || b.m[a] && delete b.m[a] | |
}; | |
k.addPageCategoryExclusion = function(a) { | |
var b = X(Y()); | |
bc(sc(a)) || Bc(b.C, a) | |
}; | |
k.clearPageCategoryExclusions = function() { | |
X(Y()).C = [] | |
}; | |
k.addAdSensePageAttribute = function(a, b) { | |
var c = X(Y()); | |
pj(c.o, a, b) | |
}; | |
k.addAdSenseSlotAttribute = function(a, b, c) { | |
var d = X(Y()); | |
a && d.j[N(a)] && (a = N(a), null == d.u[a] && (d.u[a] = new oj(d.M)), pj(d.u[a], b, c)) | |
}; | |
k.enableSingleRequest = function() { | |
var a = rm(Y()); | |
null == U(a, "google_ad_impl") && (a.j.google_ad_impl = "gut_sync_sra") | |
}; | |
k.collapseEmptyDivs = function(a) { | |
var b = rm(Y()); | |
b.j.google_collapse_empty_div = "true"; | |
a && (b.j.google_divs_start_collapsed = "true") | |
}; | |
k.enableAsyncRendering = function() { | |
var a = rm(Y()); | |
null == U(a, "google_ad_impl") && (a.j.google_ad_impl = "gut_friendly_iframe") | |
}; | |
k.enableAsyncSingleRequest = function() { | |
var a = rm(Y()); | |
null == U(a, "google_ad_impl") && (a.j.google_ad_impl = "gut_friendly_iframe_sra") | |
}; | |
k.setVideoContentInformation = function(a, b) { | |
var c = sm(Y()); | |
c.O = !0; | |
c.K = a; | |
c.J = b; | |
c.videoStreamCorrelator = Math.floor(4503599627370496 * Math.random()) | |
}; | |
k.getVideoContentInformation = function() { | |
var a = sm(Y()); | |
return { | |
cmsid: a.J, | |
vid: a.K | |
} | |
}; | |
k.getVideoStreamCorrelator = function() { | |
return sm(Y()).videoStreamCorrelator | |
}; | |
k.refresh = function(a, b) { | |
var c = Y(), | |
d = sm(c), | |
c = X(c), | |
c = null != a ? xm(a) : xj(c); | |
0 == c.length || d.T(c, b) | |
}; | |
k.destroySlots = function(a) { | |
var b = X(Y()); | |
this.clearSlotContents(a); | |
for (var c = 0; c < a.length; ++c) | |
if (b.j[N(a[c])]) { | |
var d = a[c].getAdUnitPath(); | |
Rc(b.j, N(a[c])); | |
Rc(b.A[d], a[c].getInstance()); | |
Qc(b.A[d]) && Rc(b.A, d) | |
} | |
}; | |
k.getCorrelator = function() { | |
return sm(Y()).u + "" | |
}; | |
k.setCorrelator = function(a) { | |
nl(sm(Y()), a) | |
}; | |
k.setMobilePlatform = function() { | |
rm(Y()).j.target_platform = "MOBILE" | |
}; | |
k.setApiExperiment = function(a) { | |
xg(a) | |
}; | |
k.isAdRequestFinished = function() { | |
return sm(Y()).R() | |
}; | |
k.isSlotAPersistentRoadblock = function(a) { | |
return a ? !Bj(X(Y()), a) : !1 | |
}; | |
k.clearNoRefreshState = function() { | |
X(Y()).I = {} | |
}; | |
k.clearSlotContents = function(a) { | |
var b = Y(), | |
c = sm(b), | |
b = X(b); | |
a = a ? xm(a) : xj(b); | |
return c.L(a) | |
}; | |
var ym = function(a) { | |
X(Y()).H = a | |
}, | |
zm = function(a) { | |
X(Y()).G = a | |
}; | |
wm.prototype.setLocation = function(a) { | |
X(Y()).B = a | |
}; | |
wm.prototype.setPublisherProvidedId = function(a) { | |
X(Y()).L = a | |
}; | |
wm.prototype.getVersion = function() { | |
return "95" | |
}; | |
wm.prototype.setCenterAds = function(a) { | |
X(Y()).l = a | |
}; | |
var xm = function(a) { | |
var b = X(Y()); | |
return vc(a, function(a) { | |
return !!b.j[N(a)] | |
}) | |
}, | |
Am = null, | |
Bm = function(a, b) { | |
var c; | |
c = q.googletag || (q.googletag = {}); | |
c = c.impl || (c.impl = {}); | |
c = c.pubads || (c.pubads = {}); | |
c[a] || (c[a] = b) | |
}; | |
Bm("createDomIframe", function(a, b, c, d) { | |
try { | |
var e; | |
e = d ? vm() : Y(); | |
var f = sm(e), | |
g; | |
if (g = X(e).j[b]) { | |
pm(a, g, c); | |
var h = document.getElementById(S(g)); | |
h && Cl(f, h, b) | |
} | |
} catch (l) { | |
Q(2401, l) | |
} | |
}); | |
Bm("setAdContentsBySlotForSync", function(a) { | |
try { | |
fm(sm(Y()), a) | |
} catch (b) { | |
Q(2403, b) | |
} | |
}); | |
Bm("setPassbackAdContents", function(a) { | |
try { | |
fm(sm(vm()), a) | |
} catch (b) { | |
Q(2404, b) | |
} | |
}); | |
Bm("setAdContentsBySlotForAsync", function(a, b) { | |
try { | |
Kl(sm(Y()), a, b) | |
} catch (c) { | |
Q(2405, c) | |
} | |
}); | |
Bm("syncAdSlotLoaded", function(a, b, c) { | |
try { | |
var d = sm(c ? vm() : Y()); | |
if (b) { | |
var e = d.F.j[b]; | |
e && !e.N && (e.N = !0, lm(a, e)) | |
} | |
} catch (f) { | |
Q(2407, f) | |
} | |
}); | |
Bm("setCookieInfo", function(a) { | |
try { | |
var b; | |
Y(); | |
b = Rj(void 0); | |
Pj(b, a) | |
} catch (c) { | |
Q(2408, c) | |
} | |
}); | |
var Cm = null, | |
Dm = se || te && !Yf || pe || "function" == typeof q.btoa; | |
var Em = { | |
adsense_ad_format: "google_ad_format", | |
adsense_ad_types: "google_ad_type", | |
adsense_allow_expandable_ads: "google_allow_expandable_ads", | |
adsense_background_color: "google_color_bg", | |
adsense_bid: "google_bid", | |
adsense_border_color: "google_color_border", | |
adsense_channel_ids: "google_ad_channel", | |
adsense_content_section: "google_ad_section", | |
adsense_cpm: "google_cpm", | |
adsense_ed: "google_ed", | |
adsense_encoding: "google_encoding", | |
adsense_family_safe: "google_safe", | |
adsense_feedback: "google_feedback", | |
adsense_flash_version: "google_flash_version", | |
adsense_font_face: "google_font_face", | |
adsense_font_size: "google_font_size", | |
adsense_hints: "google_hints", | |
adsense_host: "google_ad_host", | |
adsense_host_channel: "google_ad_host_channel", | |
adsense_host_tier_id: "google_ad_host_tier_id", | |
adsense_keyword_type: "google_kw_type", | |
adsense_keywords: "google_kw", | |
adsense_line_color: "google_line_color", | |
adsense_link_color: "google_color_link", | |
adsense_relevant_content: "google_contents", | |
adsense_reuse_colors: "google_reuse_colors", | |
adsense_targeting: "google_targeting", | |
adsense_targeting_types: "google_targeting", | |
adsense_test_mode: "google_adtest", | |
adsense_text_color: "google_color_text", | |
adsense_ui_features: "google_ui_features", | |
adsense_ui_version: "google_ui_version", | |
adsense_url_color: "google_color_url", | |
alternate_ad_iframe_color: "google_alternate_color", | |
alternate_ad_url: "google_alternate_ad_url", | |
demographic_age: "google_cust_age", | |
demographic_ch: "google_cust_ch", | |
demographic_gender: "google_cust_gender", | |
demographic_interests: "google_cust_interests", | |
demographic_job: "google_cust_job", | |
demographic_l: "google_cust_l", | |
demographic_lh: "google_cust_lh", | |
demographic_u_url: "google_cust_u_url", | |
demographic_unique_id: "google_cust_id", | |
document_language: "google_language", | |
geography_override_city: "google_city", | |
geography_override_country: "google_country", | |
geography_override_region: "google_region", | |
page_url: "google_page_url" | |
}; | |
var Fm = J("#36#"); | |
var Hm = function(a, b, c) { | |
var d = Gm++; | |
this.j = new aj(a, d, b); | |
this.j.m = !0; | |
this.j.addService(c); | |
this.l = c | |
}, | |
Gm = 1; | |
k = Hm.prototype; | |
k.setClickUrl = function(a) { | |
try { | |
return this.j.setClickUrl(a), this | |
} catch (b) { | |
Q(1202, b) | |
} | |
}; | |
k.setTargeting = function(a, b) { | |
try { | |
return this.j.setTargeting(a, b), this | |
} catch (c) { | |
Q(1204, c) | |
} | |
}; | |
k.updateTargetingFromMap = function(a) { | |
try { | |
var b = this.j.getTargetingMap(); | |
if (!a || w(a) || "number" == typeof a) return ta().error(F("PassbackSlot.updateTargetingFromMap", [a])), this; | |
try { | |
return I(a, function(a, b) { | |
this.setTargeting(b, a) | |
}, this), this | |
} catch (c) { | |
return this.j.w = Sc(b), ta().error(F("PassbackSlot.updateTargetingFromMap", [a])), this | |
} | |
} catch (c) { | |
Q(1208, c) | |
} | |
}; | |
k.setAudExtId = function(a) { | |
try { | |
return ee(a) && (this.j.Z = a), this | |
} catch (b) { | |
Q(1205, b) | |
} | |
}; | |
k.setTagForChildDirectedTreatment = function(a) { | |
try { | |
if (0 === a || 1 === a) this.j.W = a; | |
return this | |
} catch (b) { | |
Q(1203, b) | |
} | |
}; | |
k.display = function() { | |
try { | |
Im(this.l, this.j) | |
} catch (a) { | |
Q(1201, a) | |
} | |
}; | |
k.setForceSafeFrame = function(a) { | |
this.j.setForceSafeFrame(a); | |
return this | |
}; | |
k.set = function(a, b) { | |
try { | |
if (!w(a) || !b || "page_url" != a) return this; | |
var c = this.j; | |
c.m && (c.pa = "" + b) | |
} catch (d) { | |
Q(1206, d) | |
} | |
return this | |
}; | |
k.get = function(a) { | |
try { | |
return w(a) && "page_url" == a ? this.j.getPassbackPageUrl() : null | |
} catch (b) { | |
Q(1207, b) | |
} | |
}; | |
k.ta = function(a) { | |
this.j.ta(a) | |
}; | |
var Jm = function(a, b) { | |
this.j = a; | |
this.l = b || { | |
changeCorrelator: !0 | |
} | |
}, | |
Z = function() { | |
fi.call(this); | |
this.A = !1; | |
this.j = null; | |
this.R = 0; | |
this.J = -1; | |
this.V = 0; | |
this.I = {}; | |
this.u = {}; | |
this.M = []; | |
this.W = this.L = ""; | |
this.v = this.T = this.aa = this.$ = !1; | |
this.m = Fm ? !1 : !0; | |
this.P = Fm; | |
this.N = this.H = !1; | |
this.o = []; | |
this.G = []; | |
this.C = []; | |
this.ca = {}; | |
this.O = !1; | |
this.D = -1; | |
this.da = this.fa = ""; | |
this.w = []; | |
this.K = this.U = !1; | |
this.Y = {}; | |
null !== xd(window.location.href, "google_force_sra") && this.w.push("108809056"); | |
var a = J("#53#"); | |
a && this.forceExperiment(a); | |
a = | |
nd(["108809055", "108809056", "108809057"], 3 * J("#47#")); | |
bc(sc(a)) || this.forceExperiment(a); | |
(a = J("#75#")) && this.forceExperiment(a); | |
Ac(this.w, "108809056") && (this.v = !0) | |
}; | |
A(Z, fi); | |
k = Z.prototype; | |
k.set = function(a, b) { | |
try { | |
if (!(w(a) && 0 < a.length)) return this.log.j(F("PubAdsService.set", [a, b]), this, null), this; | |
this.I[a] = b; | |
this.log.info(Ya(a, String(b), this.getName()), this, null); | |
return this | |
} catch (c) { | |
Q(21, c) | |
} | |
}; | |
k.get = function(a) { | |
try { | |
return this.I[a] | |
} catch (b) { | |
Q(22, b) | |
} | |
}; | |
k.getAttributeKeys = function() { | |
try { | |
var a = []; | |
I(this.I, function(b, c) { | |
a.push(c) | |
}); | |
return a | |
} catch (b) { | |
Q(23, b) | |
} | |
}; | |
k.display = function(a, b, c, d) { | |
try { | |
this.enable(); | |
var e = c ? Km(a, b, c) : Km(a, b); | |
e.addService(this); | |
d && e.setClickUrl(d); | |
Lm(e.getSlotId().getDomId()) | |
} catch (f) { | |
Q(24, f) | |
} | |
}; | |
k.sa = function() { | |
this.A || (Gi(), 0 < this.o.length ? Mm(this) : zk(this.ya, this)); | |
this.A = !0 | |
}; | |
k.ya = function() { | |
this.A || Gi(); | |
this.A = !0; | |
this.j || Mm(this) | |
}; | |
k.getName = function() { | |
return "publisher_ads" | |
}; | |
var Mm = function(a) { | |
if (!a.j) try { | |
var b = R(); | |
Hi(b); | |
var c = J("#76#"); | |
Li(b, c, "impl"); | |
window.google_noFetch = !1; | |
window.google_DisableInitialLoad = !1; | |
a.j = Am || (Am = new wm); | |
a.log.info(ib("GPT"), a); | |
a.j.setCookieOptions(a.R); | |
a.j.setTagForChildDirectedTreatment(a.J); | |
a.j.setKidsFriendlyAds(a.V); | |
G(a.w, function(a) { | |
this.j.setApiExperiment(a) | |
}, a); | |
a.j.setCenterAds(a.P); | |
Fm && (a.v = !1, a.j.setMobilePlatform()); | |
a.H && a.j.collapseEmptyDivs(a.N); | |
Nm(a); | |
if (0 < a.o.length) | |
for (var d = 0; d < a.o.length; ++d) a.ha(a.o[d]); | |
if (0 < a.G.length) | |
for (d = | |
0; d < a.G.length; ++d) Im(a, a.G[d]); | |
a.U && (X(Y()).w = !0); | |
ym(a.K); | |
zm(a.Y); | |
B("pubadsReady", !0) | |
} catch (e) { | |
ch(3001, e) | |
} | |
}; | |
Z.prototype.Ba = function(a) { | |
this.m || (a.R = !1); | |
P(Rg, "experiment") && (a.m || Om(this, a)); | |
fi.prototype.Ba.call(this, a) | |
}; | |
Z.prototype.ha = function(a) { | |
if (Oi().m && !this.m) this.log.error(lb(), this); | |
else if (this.A && this.ya(), this.j) { | |
if (Pm(this), Om(this, a)) | |
if (this.log.info(kb()), this.j.fillSlot(a), this.ca[a.getAdUnitPath()] = !0, this.j) | |
for (a = 0; a < this.C.length; a++) { | |
var b = this.C[a]; | |
b.j[0].getAdUnitPath() in this.ca && (this.refresh(b.j, b.l), Array.prototype.splice.call(this.C, a, 1), a--) | |
} else this.log.error(jb(), this) | |
} else if (this.m || this.A && 0 == this.o.length) { | |
for (var b = !1, c = 0; c < this.o.length; ++c) a === this.o[c] && (b = !0); | |
b || (this.log.info(mb(a.getAdUnitPath(), | |
"GPT"), this, a), this.o.push(a)) | |
} else this.log.error(ob(a.getAdUnitPath()), this, a) | |
}; | |
var Om = function(a, b) { | |
if (a.j && null == a.j.addSlot(b)) return a.log.error(Wb(b.getAdUnitPath()), a, b), !1; | |
if (a.j) | |
for (var c = b.getAttributeKeys(), d = 0; d < c.length; ++d) c[d] in Em ? a.j.addAdSenseSlotAttribute(b, Em[c[d]], String(b.get(c[d]))) : a.log.j(qb(String(c[d]), String(b.get(c[d])), b.getAdUnitPath()), a, b); | |
return !0 | |
}, | |
Nm = function(a) { | |
if (!a.aa && a.j) { | |
a.aa = !0; | |
if (a.v) { | |
a.m ? a.j.enableAsyncSingleRequest() : a.j.enableSingleRequest(); | |
Pm(a); | |
for (var b = a.getSlots(), c = 0; c < b.length; ++c) Om(a, b[c]) | |
} else a.m && a.j.enableAsyncRendering(); | |
a.T && a.j.disableInitialLoad(); | |
Qm(a); | |
Rm(a) | |
} | |
}, | |
Pm = function(a) { | |
if (!a.$ && a.j) { | |
a.$ = !0; | |
for (var b = a.getAttributeKeys(), c = 0; c < b.length; ++c) b[c] in Em ? a.j.addAdSensePageAttribute(Em[b[c]], String(a.get(b[c]))) : a.log.j(pb(String(b[c]), String(a.get(b[c]))), a); | |
a.j.addAdSensePageAttribute("google_tag_info", "v2"); | |
I(a.u, function(a, b) { | |
if (t(a)) | |
for (var c = 0; c < a.length; ++c) this.j.addAttribute(b, a[c]) | |
}, a); | |
G(a.M, function(a) { | |
this.j.addPageCategoryExclusion(a) | |
}, a); | |
a.j.setPublisherProvidedId(a.W); | |
a.L && a.j.setLocation(a.L) | |
} | |
}; | |
k = Z.prototype; | |
k.setCookieOptions = function(a) { | |
try { | |
if (!x(a) || !ee(a)) return this.log.j(rb(String(a)), this), this; | |
this.R = a; | |
this.j && this.j.setCookieOptions(a); | |
return this | |
} catch (b) { | |
Q(17, b) | |
} | |
}; | |
k.setTagForChildDirectedTreatment = function(a) { | |
try { | |
if (0 !== a && 1 !== a) return this.log.j(Qb(String(a)), this), this; | |
this.J = a; | |
this.j && this.j.setTagForChildDirectedTreatment(a); | |
return this | |
} catch (b) { | |
Q(18, b) | |
} | |
}; | |
k.clearTagForChildDirectedTreatment = function() { | |
try { | |
return this.J = -1, this.j && this.j.setTagForChildDirectedTreatment(-1), this | |
} catch (a) { | |
Q(19, a) | |
} | |
}; | |
k.setKidsFriendlyAds = function(a) { | |
try { | |
if (0 !== a && 1 !== a) return this.log.j(Vb(String(a)), this), this; | |
this.V = a; | |
this.j && this.j.setKidsFriendlyAds(a); | |
return this | |
} catch (b) { | |
Q(18, b) | |
} | |
}; | |
k.setTargeting = function(a, b) { | |
try { | |
var c = null; | |
w(b) ? c = [b] : t(b) ? c = b : da(b) && (c = Ec(b)); | |
var d = c ? c.join() : String(b); | |
if (!w(a) || bc(sc(a)) || !c) return this.log.j(F("PubAdsService.setTargeting", [a, b]), this), this; | |
this.u[a] = c; | |
this.log.info(Pb(a, d, this.getName()), this); | |
if (this.j) | |
for (this.j.clearAttribute(a), d = 0; d < c.length; ++d) this.j.addAttribute(a, c[d]); | |
return this | |
} catch (e) { | |
Q(1, e) | |
} | |
}; | |
k.clearTargeting = function(a) { | |
try { | |
if (!w(a) || bc(sc(a))) return this.log.j(F("PubAdsService.clearTargeting", [a]), this), this; | |
if (!this.u[a]) return this.log.j(Mb(a, this.getName()), this), this; | |
delete this.u[a]; | |
this.log.info(Lb(a, this.getName()), this); | |
this.j && this.j.clearAttribute(a); | |
return this | |
} catch (b) { | |
Q(2, b) | |
} | |
}; | |
k.getTargeting = function(a) { | |
try { | |
return w(a) ? Object.prototype.hasOwnProperty.call(this.u, a) ? Ec(this.u[a]) : [] : (this.log.j(F("PubAdsService.getTargeting", [a]), this), []) | |
} catch (b) { | |
Q(38, b) | |
} | |
}; | |
k.getTargetingKeys = function() { | |
try { | |
var a = []; | |
I(this.u, function(b, c) { | |
a.push(c) | |
}); | |
return a | |
} catch (b) { | |
Q(39, b) | |
} | |
}; | |
k.setCategoryExclusion = function(a) { | |
try { | |
if (!w(a) || bc(sc(a))) return this.log.j(F("PubAdsService.setCategoryExclusion", [a]), this), this; | |
Bc(this.M, a); | |
this.log.info(Nb(a), this); | |
this.j && this.j.addPageCategoryExclusion(a); | |
return this | |
} catch (b) { | |
Q(3, b) | |
} | |
}; | |
k.clearCategoryExclusions = function() { | |
try { | |
return this.M = [], this.log.info(Ob(), this), this.j && this.j.clearPageCategoryExclusions(), this | |
} catch (a) { | |
Q(4, a) | |
} | |
}; | |
k.disableInitialLoad = function() { | |
try { | |
this.j ? this.log.j(tb("disableInitialLoad", "pubads"), this) : this.T = !0 | |
} catch (a) { | |
Q(5, a) | |
} | |
}; | |
k.enableSingleRequest = function() { | |
try { | |
return this.l && !this.v ? this.log.j(sb("enableSingleRequest"), this) : Ac(this.w, "108809057") || Ac(this.w, "108809056") || (this.log.info(vb("single request"), this), this.v = !0), this.v | |
} catch (a) { | |
Q(6, a) | |
} | |
}; | |
k.enableAsyncRendering = function() { | |
try { | |
return this.l && !this.m ? this.log.j(sb("enableAsyncRendering"), this) : (this.log.info(vb("asynchronous rendering"), this), this.m = !0), this.m | |
} catch (a) { | |
Q(7, a) | |
} | |
}; | |
k.enableSyncRendering = function() { | |
try { | |
if (this.l && this.m) this.log.j(sb("enableSyncRendering"), this); | |
else { | |
this.log.info(vb("synchronous rendering"), this); | |
this.m = !1; | |
for (var a = this.getSlots(), b = 0; b < a.length; ++b) a[b].R = !1 | |
} | |
return !this.m | |
} catch (c) { | |
Q(8, c) | |
} | |
}; | |
k.setCentering = function(a) { | |
try { | |
this.log.info(wb("centering", String(a)), this), this.P = a | |
} catch (b) { | |
Q(9, b) | |
} | |
}; | |
k.setPublisherProvidedId = function(a) { | |
try { | |
return this.l ? this.log.j(ub("setPublisherProvidedId", a), this) : (this.log.info(wb("PPID", a), this), this.W = a), this | |
} catch (b) { | |
Q(20, b) | |
} | |
}; | |
k.definePassback = function(a, b) { | |
try { | |
if (!w(a) || 0 >= a.length || !b) return this.log.error(F("PubAdsService.definePassback", [a, b])), null; | |
var c = ie(a), | |
d = R(); | |
Ei(d, "count_of_passback"); | |
d.w || (d.w = !0, ti(d, "n" + c)); | |
yi(d); | |
return new Hm(a, b, this) | |
} catch (e) { | |
Q(10, e) | |
} | |
}; | |
k.defineOutOfPagePassback = function(a) { | |
try { | |
var b = this.definePassback(a, [1, 1]); | |
b.ta(!0); | |
return b | |
} catch (c) { | |
Q(35, c) | |
} | |
}; | |
var Im = function(a, b) { | |
a.ya(); | |
a.j ? a.j.passback(b) : (a.log.info(nb(b.getAdUnitPath(), "GPT"), a, b), a.G.push(b)) | |
}; | |
Z.prototype.refresh = function(a, b) { | |
try { | |
if (a && !t(a) || b && (!y(b) || b.changeCorrelator && !ea(b.changeCorrelator))) this.log.j(F("PubAdsService.refresh", vc([a, b], r)), this); | |
else { | |
var c = null; | |
if (a && (c = Sm(this, a), !c.length)) { | |
this.log.j(F("PubAdsService.refresh", vc([a, b], r)), this); | |
return | |
} | |
if (this.j) { | |
this.log.info(Cb(), this); | |
var d = !0; | |
r(b) && r(b.changeCorrelator) && (d = b.changeCorrelator); | |
Ei(R(), "count_of_refreshes_called"); | |
this.j.refresh(c, { | |
changeCorrelator: d | |
}) | |
} else this.v ? (this.log.info(Bb(), this), c ? Bc(this.C, new Jm(c, | |
b)) : Bc(this.C, new Jm(this.getSlots(), b))) : this.log.j(yb(), this) | |
} | |
} catch (e) { | |
Q(11, e) | |
} | |
}; | |
Z.prototype.enableVideoAds = function() { | |
try { | |
this.O = !0, Qm(this) | |
} catch (a) { | |
Q(12, a) | |
} | |
}; | |
Z.prototype.setVideoContent = function(a, b) { | |
try { | |
this.O = !0, this.fa = a, this.da = b, Qm(this) | |
} catch (c) { | |
Q(13, c) | |
} | |
}; | |
Z.prototype.getVideoContent = function() { | |
try { | |
return this.j ? this.j.getVideoContentInformation() : null | |
} catch (a) { | |
Q(30, a) | |
} | |
}; | |
var Qm = function(a) { | |
a.O && a.j && a.j.setVideoContentInformation(a.fa, a.da) | |
}, | |
Rm = function(a) { | |
a.j && a.j.setCorrelator(-1 == a.D ? void 0 : a.D) | |
}; | |
k = Z.prototype; | |
k.getCorrelator = function() { | |
try { | |
return 0 == this.getSlots().length ? "not_available" : this.j ? this.j.getCorrelator() : "not_loaded" | |
} catch (a) { | |
Q(27, a) | |
} | |
}; | |
k.setCorrelator = function(a) { | |
try { | |
if (ag(window)) return this; | |
if (!ee(a) || 0 === a) return this.log.j(Ub(String(a)), this), this; | |
this.D = a; | |
Rm(this); | |
return this | |
} catch (b) { | |
Q(28, b) | |
} | |
}; | |
k.updateCorrelator = function() { | |
try { | |
return this.D = -1, Rm(this), this | |
} catch (a) { | |
Q(25, a) | |
} | |
}; | |
k.isAdRequestFinished = function() { | |
try { | |
return this.j ? this.j.isAdRequestFinished() : !1 | |
} catch (a) { | |
Q(29, a) | |
} | |
}; | |
k.collapseEmptyDivs = function(a) { | |
try { | |
return this.H ? this.log.j(Jb(), this) : this.l ? this.log.j(sb("collapseEmptyDivs"), this) : (this.N = !!a, this.log.info(Ib(String(this.N)), this), this.H = !0), this.H | |
} catch (b) { | |
Q(14, b) | |
} | |
}; | |
k.clear = function(a) { | |
try { | |
if (!this.j) return this.log.j(Ab(), this), !1; | |
var b = null; | |
if (a && (b = Sm(this, a), 0 == b.length)) return this.log.j(F("PubAdsService.clear", vc([a], r)), this), !1; | |
this.log.info(Db(), this); | |
return this.j.clearSlotContents(b) | |
} catch (c) { | |
Q(15, c) | |
} | |
}; | |
k.setLocation = function(a, b, c) { | |
try { | |
var d = "role:1 producer:12"; | |
if (r(b)) { | |
if (!x(a)) return this.log.j(Gb("Latitude")), this; | |
if (!x(b)) return this.log.j(Gb("Longitude")), this; | |
d += " latlng{ latitude_e7: " + Math.round(1E7 * a) + " longitude_e7: " + Math.round(1E7 * b) + "}"; | |
if (r(c)) { | |
if (isNaN(c)) return this.log.j(Gb("Radius")), this; | |
d += " radius:" + Math.round(c) | |
} | |
} else { | |
if (50 < a.length) { | |
var e = a.substring(0, 50); | |
this.log.j(Hb(String(a), "50", e)); | |
a = e | |
} | |
d += ' loc:"' + a + '"' | |
} | |
var e = d, | |
f; | |
if (Dm) f = q.btoa(e); | |
else { | |
d = []; | |
for (b = a = 0; b < e.length; b++) { | |
for (var g = | |
e.charCodeAt(b); 255 < g;) d[a++] = g & 255, g >>= 8; | |
d[a++] = g | |
} | |
if (!Cm) | |
for (Cm = {}, g = 0; 65 > g; g++) Cm[g] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(g); | |
g = Cm; | |
e = []; | |
for (a = 0; a < d.length; a += 3) { | |
var h = d[a], | |
l = a + 1 < d.length, | |
m = l ? d[a + 1] : 0, | |
n = a + 2 < d.length, | |
p = n ? d[a + 2] : 0; | |
b = h >> 2; | |
c = (h & 3) << 4 | m >> 4; | |
var v = (m & 15) << 2 | p >> 6, | |
u = p & 63; | |
n || (u = 64, l || (v = 64)); | |
e.push(g[b], g[c], g[v], g[u]) | |
} | |
f = e.join("") | |
} | |
this.L = "a " + f; | |
return this | |
} catch (D) { | |
Q(16, D) | |
} | |
}; | |
k.getVersion = function() { | |
return this.j ? this.j.getVersion() : void 0 | |
}; | |
k.forceExperiment = function(a) { | |
this.l ? this.log.j(ub("forceExperiment", a), this) : this.w.push(a) | |
}; | |
var bi = function() { | |
try { | |
var a = Oi(), | |
b = Ni(a, "publisher_ads"); | |
if (!b) { | |
var c = b = new Z; | |
a.j[c.getName()] = c | |
} | |
return b | |
} catch (d) { | |
Q(26, d) | |
} | |
}, | |
Sm = function(a, b) { | |
for (var c = [], d = 0; d < b.length; ++d) { | |
var e = b[d]; | |
e instanceof aj ? e.P || c.push(e) : a.log.j(Kb(String(d)), a) | |
} | |
return c | |
}; | |
Z.prototype.markAsAmp = function() { | |
this.U = !0; | |
this.j && (X(Y()).w = !0) | |
}; | |
Z.prototype.setSafeFrameConfig = function(a) { | |
try { | |
if (a && y(a)) { | |
var b = Yh(a); | |
b && (this.Y = b) | |
} else this.log.error(F("PubAdsService.setSafeFrameConfig", [a]), this); | |
return this | |
} catch (c) { | |
Q(37, c) | |
} | |
}; | |
var Tm = function(a, b) { | |
var c = a.getSlots(), | |
d = vc(c, function(a) { | |
return Ac(b, a) | |
}); | |
0 != d.length && (a.j ? a.j.destroySlots(d) : G(d, function(a) { | |
Cc(this.o, a) | |
}, a), G(d, function(a) { | |
Cc(c, a) | |
})) | |
}; | |
Z.prototype.setForceSafeFrame = function(a) { | |
try { | |
if (!ea(a)) return this.log.j(Fb(String(a)), this), this; | |
this.K = a; | |
this.j && ym(this.K); | |
return this | |
} catch (b) { | |
Q(36, b) | |
} | |
}; | |
Z.prototype.enableChromeInterventionSignals = function() { | |
ke["#73#"] = 1 | |
}; | |
Z.prototype.markAsGladeControl = function() { | |
this.forceExperiment("108809101") | |
}; | |
Z.prototype.markAsGladeOptOut = function() { | |
this.forceExperiment("108809110") | |
}; | |
B("pubads", bi); | |
var Um = function() { | |
this.j = {}; | |
this.m = {}; | |
this.l = {}; | |
this.o = ta() | |
}, | |
Vm = function(a, b, c, d) { | |
if (!w(b) || 0 >= b.length || !c) return null; | |
b in a.j || (a.j[b] = [], a.m[b] = 0); | |
c = new aj(b, a.m[b], c, d); | |
a.m[b]++; | |
d = c.getSlotId().getDomId(); | |
if (a.l[d]) return a.o.error(Ta(d)), null; | |
a.j[b].push(c); | |
a.l[c.getSlotId().getDomId()] = c; | |
Xg.push(c); | |
a = je([c])[0]; | |
b = R(); | |
Ei(b, "count_of_slots"); | |
b.w || (b.w = !0, ti(b, "n" + a)); | |
yi(b); | |
return c | |
}, | |
Wm = function(a) { | |
var b = []; | |
Mc(a.j, function(a) { | |
G(a, function(a) { | |
b.push(a) | |
}) | |
}); | |
return b | |
}, | |
Xm = function(a, b) { | |
G(b, function(a) { | |
a.P = !0; | |
a.j.info(Xb(a.o.toString()), null, a); | |
var b = a.getAdUnitPath(); | |
Cc(this.j[b], a); | |
0 == this.j[b].length && Rc(this.j, b); | |
Rc(this.l, a.getSlotId().getDomId()); | |
Cc(Xg, a) | |
}, a) | |
}, | |
Ym = function(a, b) { | |
if (b && !t(b)) return a.o.j(F("googletag.destroySlots", [b])), !1; | |
var c; | |
b ? (Gc(b), c = vc(b, function(a) { | |
return a instanceof aj && !a.P | |
})) : c = Wm(a); | |
if (!c || 0 == c.length) return !1; | |
Tm(bi(), c); | |
Xm(a, c); | |
return !0 | |
}; | |
Um.prototype.u = function(a, b) { | |
var c = b || 0, | |
d = w(a) && this.j[a] || []; | |
return 0 <= c && c < d.length && (d = d[c], d.getSlotId().getInstance() == c) ? d : null | |
}; | |
var Zm = function(a, b) { | |
return Nc(a.j, function(a) { | |
return Ac(a, b) | |
}) | |
}, | |
$m = function() { | |
var a = la(); | |
return a.slot_manager_instance || (a.slot_manager_instance = new Um) | |
}, | |
Km = function(a, b, c) { | |
try { | |
var d = $m(); | |
return d && Vm(d, a, b, c) | |
} catch (e) { | |
Q(802, e) | |
} | |
}; | |
B("defineOutOfPageSlot", function(a, b) { | |
try { | |
var c = $m(); | |
if (!c) return null; | |
var d = Vm(c, a, [1, 1], b); | |
return d ? (d.ta(!0), d) : null | |
} catch (e) { | |
Q(801, e) | |
} | |
}); | |
B("defineSlot", Km); | |
B("defineUnit", Km); | |
B("destroySlots", function(a) { | |
try { | |
var b = $m(); | |
return !(!b || !Ym(b, a)) | |
} catch (c) { | |
Q(803, c) | |
} | |
}); | |
B("getSlots", function() { | |
try { | |
return Wm($m()) | |
} catch (a) { | |
Q(804, a) | |
} | |
}); | |
Um.prototype.find = Um.prototype.u; | |
Um.getInstance = $m; | |
var Lm = function(a) { | |
try { | |
var b = ta(); | |
if (w(a)) { | |
var c, d = $m(); | |
if (c = d.l[a] ? d.l[a] : null) | |
if (c.Ha = !0, c.R && !c.hasWrapperDiv()) c.j.j(Qa(c.D, c.o.getDomId()), null, c); | |
else | |
for (a = 0; a < c.u.length; ++a) c.u[a].l && c.u[a].ha(c); | |
else b.error(Sa(String(a))) | |
} else b.error(Ra(String(a))) | |
} catch (e) { | |
Q(2201, e) | |
} | |
}; | |
B("display", Lm); | |
var an = function() { | |
fi.call(this); | |
this.G = !0; | |
this.m = this.A = !1; | |
this.H = 0; | |
this.D = this.C = void 0; | |
this.I = this.w = !1; | |
this.v = {}; | |
this.j = {}; | |
this.o = !1; | |
this.u = {} | |
}; | |
A(an, fi); | |
k = an.prototype; | |
k.set = function(a, b) { | |
w(a) && 0 < a.length ? (this.u[a] = b, this.log.info(Ya(a, String(b), this.getName()), this, null)) : this.log.j(Za(String(a), String(b), this.getName()), this, null); | |
return this | |
}; | |
k.get = function(a) { | |
return this.u[a] | |
}; | |
k.getAttributeKeys = function() { | |
var a = []; | |
I(this.u, function(b, c) { | |
a.push(c) | |
}); | |
return a | |
}; | |
k.display = function(a, b, c, d) { | |
this.enable(); | |
a = c ? Km(a, b, c) : Km(a, b); | |
a.addService(this); | |
d && a.setClickUrl(d); | |
Lm(a.getSlotId().getDomId()) | |
}; | |
k.sa = function() { | |
if (this.G) { | |
if (!this.I) { | |
var a = document, | |
b = fe(); | |
try { | |
this.log.info(gb("GPT CompanionAds"), this), ld(a, b), this.I = !0 | |
} catch (c) { | |
ch(414, c), this.log.error(hb("GPT CompanionAds"), this) | |
} | |
} | |
} else this.w || (q.document.write('<script type="text/javascript" src="' + ge() + '">\x3c/script>'), this.w = !0) | |
}; | |
k.enableSyncLoading = function() { | |
try { | |
this.G = !1 | |
} catch (a) { | |
Q(402, a) | |
} | |
}; | |
k.setRefreshUnfilledSlots = function(a) { | |
try { | |
ea(a) && (this.A = a) | |
} catch (b) { | |
Q(403, b) | |
} | |
}; | |
k.setClearUnfilledSlots = function(a) { | |
try { | |
ea(a) && (this.m = a) | |
} catch (b) { | |
Q(412, b) | |
} | |
}; | |
k.notifyUnfilledSlots = function(a) { | |
try { | |
if (this.A) bn(this, cn(this, a)); | |
else if (this.m) { | |
var b = cn(this, a), | |
c = bi(); | |
if (c.l) | |
for (c.clear(b), a = 0; a < b.length; ++a) { | |
var d = new ai(b[a], !0, null, null, null, null, null, null, c.getName()); | |
gi(c, "slotRenderEnded", d) | |
} else this.log.error(db("PubAds", "clear")) | |
} | |
} catch (e) { | |
Q(413, e) | |
} | |
}; | |
k.isRoadblockingSupported = function() { | |
var a = bi(); | |
if (!a.l) return !1; | |
var a = a.getSlots(), | |
b = this.getSlots(); | |
if (a.length != b.length) return !1; | |
for (var c = 0; c < b.length; ++c) { | |
for (var d = !1, e = 0; e < a.length; ++e) | |
if (b[c] === a[e]) { | |
d = !0; | |
break | |
} | |
if (!d) return !1 | |
} | |
return !0 | |
}; | |
k.refreshAllSlots = function() { | |
try { | |
this.A && bn(this, null) | |
} catch (a) { | |
Q(404, a) | |
} | |
}; | |
k.setVideoSession = function(a, b, c, d) { | |
try { | |
this.H = a, this.C = b, this.D = c, this.o = d | |
} catch (e) { | |
Q(405, e) | |
} | |
}; | |
k.getDisplayAdsCorrelator = function() { | |
try { | |
return bi().getCorrelator() | |
} catch (a) { | |
Q(406, a) | |
} | |
}; | |
k.getVideoStreamCorrelator = function() { | |
try { | |
var a; | |
var b = bi(); | |
if (b.j) { | |
var c = b.j.getVideoStreamCorrelator(); | |
a = isNaN(c) ? 0 : c | |
} else a = 0; | |
return a | |
} catch (d) { | |
Q(407, d) | |
} | |
}; | |
var bn = function(a, b) { | |
var c = bi(); | |
if (c.l) { | |
if (a.o) { | |
if (!a.isRoadblockingSupported()) { | |
a.log.j(cb()); | |
return | |
} | |
c.j ? (c.log.info(Eb(), c), c.j.clearNoRefreshState()) : c.log.j(zb(), c); | |
c.clear() | |
} | |
var d = { | |
isVideoRefresh: !0 | |
}; | |
r(a.H) && (d.videoStreamCorrelator = a.H); | |
a.C && (d.videoPodNumber = a.C); | |
a.D && (d.videoPodPosition = a.D); | |
a.o && (d.persistentRoadblocksOnly = a.o); | |
a.m && (d.clearUnfilledSlots = a.m); | |
a: if (b && !t(b) || d.videoStreamCorrelator && !x(d.videoStreamCorrelator) || d.videoPodNumber && !x(d.videoPodNumber) || d.videoPodPosition && !x(d.videoPodPosition) || | |
d.persistentRoadblocksOnly && !ea(d.persistentRoadblocksOnly) || d.clearUnfilledSlots && !ea(d.clearUnfilledSlots)) c.log.j(F("PubAdsService.internalVideoRefresh", vc([b, d], r)), c); | |
else | |
if (c.j) { | |
var e = null; | |
if (b && (e = Sm(c, b), !e.length)) { | |
c.log.error(xb("internalVideoRefresh"), c); | |
break a | |
} | |
c.log.info(Cb(), c); | |
c.j.refresh(e, d) | |
} else c.log.j(yb(), c) | |
} else a.log.error(db("PubAds", "refresh")) | |
}; | |
an.prototype.isSlotAPersistentRoadblock = function(a) { | |
try { | |
var b = bi(); | |
if (b.l && Zm($m(), a)) return b.j ? b.j.isSlotAPersistentRoadblock(a) : !1; | |
this.log.error(eb()); | |
return !1 | |
} catch (c) { | |
Q(408, c) | |
} | |
}; | |
var cn = function(a, b) { | |
for (var c = a.getSlotIdMap(), d = [], e = 0; e < b.length; ++e) { | |
var f = b[e]; | |
Oc(c, f) ? d.push(c[f]) : a.log.j(fb(), a) | |
} | |
return d | |
}; | |
an.prototype.getName = function() { | |
return "companion_ads" | |
}; | |
var fe = function() { | |
return he() + "//pagead2.googlesyndication.com/pagead/show_companion_ad.js" | |
}; | |
an.prototype.onImplementationLoaded = function() { | |
try { | |
this.log.info(ib("GPT CompanionAds"), this), this.w = !0 | |
} catch (a) { | |
Q(409, a) | |
} | |
}; | |
var dn = function(a, b) { | |
var c = b && b.getSlotId().getId(); | |
if (c && c in a.v && b.hasWrapperDiv() && a.l && !a.isSlotAPersistentRoadblock(b)) { | |
b.J = a.v[c]; | |
var d = null; | |
a.j.hasOwnProperty(c) && (d = a.j[c], delete a.j[c]); | |
c = new ai(b, !1, d, null, null, null, null, null, a.getName()); | |
return dj(b, c) | |
} | |
return !1 | |
}; | |
an.prototype.ha = function(a) { | |
dn(this, a) | |
}; | |
an.prototype.fillSlot = function(a, b, c, d) { | |
try { | |
return Zm($m(), a) && w(b) && 0 < b.length ? (this.v[a.getSlotId().getId()] = b, null != c && null != d && (this.j[a.getSlotId().getId()] = [c, d]), dn(this, a)) : !1 | |
} catch (e) { | |
Q(410, e) | |
} | |
}; | |
an.prototype.slotRenderEnded = function(a, b, c) { | |
try { | |
var d = null; | |
null != b && null != c && (d = [b, c]); | |
var e = new ai(a, !1, d, null, null, null, null, null, this.getName()); | |
gi(this, "slotRenderEnded", e) | |
} catch (f) { | |
Q(411, f) | |
} | |
}; | |
B("companionAds", function() { | |
try { | |
var a = Oi(), | |
b = Ni(a, "companion_ads"); | |
if (!b) { | |
var c = b = new an; | |
a.j[c.getName()] = c | |
} | |
return b | |
} catch (d) { | |
Q(401, d) | |
} | |
}); | |
var en = function() { | |
fi.call(this); | |
this.j = {}; | |
this.m = {} | |
}; | |
A(en, fi); | |
k = en.prototype; | |
k.getName = function() { | |
return "content" | |
}; | |
k.set = function(a, b) { | |
w(a) && 0 < a.length ? (this.j[a] = b, this.log.info(Ya(a, String(b), this.getName()), this, null)) : this.log.j(Za(String(a), String(b), this.getName()), this, null); | |
return this | |
}; | |
k.get = function(a) { | |
return this.j[a] | |
}; | |
k.getAttributeKeys = function() { | |
var a = []; | |
I(this.j, function(b, c) { | |
a.push(c) | |
}); | |
return a | |
}; | |
k.display = function(a, b, c, d) { | |
this.enable(); | |
a = c ? Km(a, b, c) : Km(a, b); | |
a.addService(this); | |
d && a.setClickUrl(d); | |
Lm(a.getSlotId().getDomId()) | |
}; | |
var fn = function(a, b) { | |
var c = b && b.getSlotId().getId(); | |
c in a.m && a.l && b.hasWrapperDiv() && !b.B && (b.J = a.m[c], c = new ai(b, !1, null, null, null, null, null, null, a.getName()), dj(b, c)) | |
}; | |
en.prototype.sa = function() { | |
for (var a = this.getSlots(), b = 0; b < a.length; ++b) fn(this, a[b]) | |
}; | |
en.prototype.ha = function(a) { | |
fn(this, a) | |
}; | |
en.prototype.setContent = function(a, b) { | |
try { | |
Zm($m(), a) && w(b) && 0 < b.length && (this.m[a.getSlotId().getId()] = b, fn(this, a)) | |
} catch (c) { | |
Q(602, c) | |
} | |
}; | |
B("content", function() { | |
try { | |
var a = Oi(), | |
b = Ni(a, "content"); | |
if (!b) { | |
var c = b = new en; | |
a.j[c.getName()] = c | |
} | |
return b | |
} catch (d) { | |
Q(601, d) | |
} | |
}); | |
var gn = null, | |
hn = !1, | |
jn = !1, | |
kn = function() { | |
if (!jn) { | |
var a = he() + "//publisherconsole.appspot.com/js/loader.js"; | |
ld(document, a); | |
jn = !0 | |
} | |
}, | |
ln = function() { | |
var a = window, | |
b = document; | |
if (la()._pubconsole_disable_) return !1; | |
var c; | |
c = document.cookie.split("google_pubconsole="); | |
if (c = 2 == c.length ? c[1].split(";")[0] : "") | |
if (c = c.split("|"), 0 < c.length && ("1" == c[0] || "0" == c[0])) return !0; | |
Oi(); | |
c = !1; | |
try { | |
c = a.top.document.URL === b.URL | |
} catch (d) {} | |
a = c ? b.URL : b.referrer; | |
return null !== xd(a, "google_debug") || null !== xd(a, "dfpdeb") || null !== xd(a, "google_console") || | |
null !== xd(a, "google_force_console") || null !== xd(a, "googfc") | |
}, | |
nn = function() { | |
try { | |
ln() && kn(), mn() | |
} catch (a) { | |
Q(2002, a) | |
} | |
}, | |
mn = function() { | |
Fd(window, "message", function(a) { | |
a.source == window && "gpt_open_pubconsole" == a.data.type && (a = a.data.slotDomId) && on(a) | |
}) | |
}, | |
on = function(a) { | |
window.googletag && window.googletag.console ? window.googletag.console.openConsole(a) : (a && (gn = a), hn = !0, kn()) | |
}; | |
"complete" === document.readyState ? nn() : ma(window, nn); | |
B("disablePublisherConsole", function() { | |
try { | |
la()._pubconsole_disable_ = !0 | |
} catch (a) { | |
Q(2001, a) | |
} | |
}); | |
B("onPubConsoleJsLoad", function() { | |
hn && (window.googletag.console.openConsole(gn), gn = null, hn = !1) | |
}); | |
B("openConsole", on); | |
var pn = function() { | |
this.j = []; | |
this.m = !1; | |
this.l = ta() | |
}; | |
pn.prototype.addSize = function(a, b) { | |
try { | |
var c; | |
if (!(c = !Qi(a) || "fluid" == a)) { | |
var d; | |
if (!(d = Qi(b))) { | |
var e; | |
if (e = t(b)) a: { | |
for (var f = b.length, g = w(b) ? b.split("") : b, h = 0; h < f; h++) | |
if (h in g && !Qi.call(void 0, g[h])) { | |
e = !1; | |
break a | |
} | |
e = !0 | |
} | |
d = e | |
} | |
c = !d | |
} | |
if (c) return this.m = !0, this.l.j(F("SizeMappingBuilder.addSize", [a, b])), this; | |
this.j.push([a, b]); | |
return this | |
} catch (l) { | |
Q(1601, l) | |
} | |
}; | |
pn.prototype.build = function() { | |
try { | |
if (this.m) return this.l.j(Wa()), null; | |
Kc(this.j); | |
return this.j | |
} catch (a) { | |
Q(1602, a) | |
} | |
}; | |
var Jc = function(a, b) { | |
var c; | |
a: { | |
c = b[0]; | |
for (var d = a[0], e = Hc, f = Math.min(c.length, d.length), g = 0; g < f; g++) { | |
var h = e(c[g], d[g]); | |
if (0 != h) { | |
c = h; | |
break a | |
} | |
} | |
c = Hc(c.length, d.length) | |
} | |
return c | |
}; | |
B("sizeMapping", function() { | |
try { | |
return new pn | |
} catch (a) { | |
Q(1603, a) | |
} | |
}); | |
function qn() { | |
G(document.getElementsByTagName("script"), function(a) { | |
var b = a.src; | |
b && (0 <= b.indexOf("/tag/js/gpt.js") || 0 <= b.indexOf("/tag/js/gpt_mobile.js")) && a.innerHTML && !a.googletag_executed && (a.googletag_executed = !0, eval(a.innerHTML)) | |
}) | |
} | |
function rn() { | |
try { | |
sd(window.location.href) && (rg = !0, ke["#38#"] = 1); | |
var a = R(); | |
B("apiReady", !0); | |
!Ug && !P(Gg, "experiment") || "complete" == document.readyState ? eh() : ma(window, function() { | |
window.setTimeout(function() { | |
eh() | |
}, 0) | |
}); | |
qn(); | |
Jj("impl_init"); | |
Kj(); | |
Fi(a); | |
var b = he() + "//www.googletagservices.com"; | |
Li(a, b + "/tag/js/gpt.js", "gpt"); | |
Li(a, b + "/tag/js/gpt_mobile.js", "gpt") | |
} catch (c) { | |
Q(2801, c) | |
} | |
} | |
window.googletag.evalScripts ? window.googletag.evalScripts() : (B("evalScripts", function() { | |
qn() | |
}), rn()); | |
}).call(this.googletag && googletag.fifWin ? googletag.fifWin.parent : this) | |
googleAds = []; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function splitIndexSlots() { | |
for (var e = new Array, t = new Array, i = 0; i < index_slots.length; i++) { | |
var n = index_slots[i].split("_"), | |
s = n.shift(), | |
o = s, | |
d = n.join("_"); | |
o == public_key ? e.push(d) : o == pmp_key && t.push(d) | |
} | |
return [e, t] | |
} | |
function isSameSlot(e, t) { | |
return e = e.split("_"), t = t.split("_"), e.pop() == t.pop() && e.pop() == t.pop() | |
} | |
function cygnus_index_judge(e) { | |
window.index_slots = []; | |
for (var t = {}, i = "^(?:" + public_key + "|" + pmp_key + ")_(?:T([0-9])_)?(.*)_.*$", n = new RegExp(i), s = [], o = 0; o < e.length; o++) | |
if (e[o].split("_")[0] !== pmp_key) { | |
var d = n.exec(e[o]); | |
if ("undefined" != typeof d && null !== d) { | |
var a, r; | |
if (a = d[1], r = d[2], "undefined" != typeof a && null !== a || (a = 0), t[r] = t[r] || {}, "undefined" == typeof t[r].tier || t[r].tier < a) { | |
t[r].tier = a; | |
var _ = e[o]; | |
if (a > 0) { | |
var p = e[o].split("_"), | |
l = p.shift(), | |
g = p.join("_"); | |
p.shift(); | |
var u = p.join("_"); | |
_ = l + "_" + u, _IndexRequestData.targetIDToBid[u] = _IndexRequestData.targetIDToBid[g] | |
} | |
t[r].target = _ | |
} | |
} | |
} else s.push(e[o]); | |
var c = []; | |
for (var h in t) t.hasOwnProperty(h) !== !1 && c.push(t[h].target); | |
return c.concat(s) | |
} | |
function cygnus_augment_slots() { | |
for (var e = cygnus_index_safe_args.slots, t = e.length, i = 0; t > i; i++) { | |
var n = e[i]; | |
n.siteID = cygnus_index_safe_args.siteID; | |
var s = "T1_" + n.id; | |
e.push({ | |
id: s, | |
width: n.width, | |
height: n.height, | |
siteID: tierone2tiertwo[cygnus_index_safe_args.siteID] | |
}) | |
} | |
cygnus_index_safe_args.slots.push({ | |
id: "SQPS", | |
width: 300, | |
height: 250, | |
siteID: cygnus_x1_args.SQPS_siteID | |
}), cygnus_index_safe_args.default_slots = cygnus_x1_args.default_slots, cygnus_index_safe_args.default_bins = cygnus_x1_args.default_bins, cygnus_index_safe_args.default_adcodes = cygnus_x1_args.default_adcodes | |
} | |
function cygnus_index_parse_res(e) { | |
try { | |
if (window.index_slots = [], e) { | |
if ("object" != typeof _IndexRequestData || "object" != typeof _IndexRequestData.impIDToSlotID || "undefined" == typeof _IndexRequestData.impIDToSlotID[e.id]) return; | |
var t, i = 0; | |
"object" == typeof _IndexRequestData.reqOptions && "object" == typeof _IndexRequestData.reqOptions[e.id] && ("function" == typeof _IndexRequestData.reqOptions[e.id].callback && (t = _IndexRequestData.reqOptions[e.id].callback), "number" == typeof _IndexRequestData.reqOptions[e.id].targetMode && (i = _IndexRequestData.reqOptions[e.id].targetMode)), _IndexRequestData.lastRequestID = e.id; | |
for (var n = [], s = "undefined" == typeof e.seatbid ? 0 : e.seatbid.length, o = 0; s > o; o++) | |
for (var d = 0; d < e.seatbid[o].bid.length; d++) { | |
var a = e.seatbid[o].bid[d]; | |
if ("object" == typeof a.ext && "string" == typeof a.ext.pricelevel && "undefined" != typeof _IndexRequestData.impIDToSlotID[e.id][a.impid]) { | |
var r = _IndexRequestData.impIDToSlotID[e.id][a.impid]; | |
"undefined" == typeof index_slots && (index_slots = []), "undefined" == typeof _IndexRequestData.targetIDToBid && (_IndexRequestData.targetIDToBid = {}); | |
var _, p; | |
"string" == typeof a.ext.dealid ? (_ = 1 === i ? r + a.ext.pricelevel : r + "_" + a.ext.dealid, p = pmp_key + "_") : (_ = r + a.ext.pricelevel, p = public_key + "_"), index_slots.push(p + _), void 0 === _IndexRequestData.targetIDToBid[_] ? _IndexRequestData.targetIDToBid[_] = [a.adm] : _IndexRequestData.targetIDToBid[_].push(a.adm); | |
var l = {}; | |
l.impressionID = a.impid, "undefined" != typeof a.ext.dealid && (l.dealID = a.ext.dealid), l.bid = a.price, l.slotID = r, l.priceLevel = a.ext.pricelevel, l.target = p + _, n.push(l) | |
} | |
} | |
"function" == typeof t && (0 === n.length ? t(e.id) : t(e.id, n)); | |
var g = cygnus_index_sqps(), | |
u = 1; | |
if (0 > g && (u = 0), u) { | |
var c = Math.random(); | |
c < cygnus_index_stats.sampling.defaults && cygnus_index_prepare_defaults(g) | |
} | |
window.index_slots = cygnus_index_judge(index_slots) | |
} | |
} catch (h) {} | |
"undefined" == typeof index_slots && (index_slots = []), cygnus_index_set_targets() | |
} | |
function headertag_render(e, t, i) { | |
for (var n = i, s = t, o = s.split(","), d = 0; d < o.length; d++) { | |
var a = o[d].split("_"); | |
a[0] == n && window.top.index_render(e, o[d]) | |
} | |
} | |
function index_render_default(e, t) { | |
var i = "CasaleArgs = new Object();\nCasaleArgs.version = " + t.version + ';\nCasaleArgs.adUnits = "' + t.adUnits + '";\nCasaleArgs.casaleID = ' + t.casaleID + ";\n"; | |
e.write("<scr"+"ipt type='text/javascript'>" + i + "</scr"+"ipt><scr"+"ipt type='text/javascript' src='" + t.tag + "'></scr"+"ipt>") | |
} | |
function index_render(e, t) { | |
if (index_activated_defaults.hasOwnProperty(public_key + "_" + t)) { | |
var i = index_activated_defaults[pmp_key + "_" + t]; | |
return index_render_default(e, i) | |
} | |
"undefined" == typeof index_demand && (index_demand = {}); | |
for (var n = t.split("_"), s = n[0], o = 0; o < index_slots_render.length; o++) | |
if ("string" == typeof index_slots_render[o][public_key + "_" + t]) { | |
t = index_slots_render[o][public_key + "_" + t]; | |
var d = t.split("_"); | |
t = d[1] + "_" + d[2] + "_" + d[3], s = d[1] + "_" + d[2] | |
} | |
try { | |
var a = _IndexRequestData.targetIDToBid[t].pop(); | |
null != a ? (e.write(a), index_demand[s] = 1, delete index_no_demand[s]) : index_headertag_lightspeed.analytics.send_null_creative_alert(cygnus_index_safe_args.site_id, location.href, [t], index_headertag_lightspeed.correlator) | |
} catch (r) {} | |
} | |
function index_headertag_lightspeed_index_start() { | |
function e(e) { | |
var t = d[e]; | |
return "string" == typeof t ? t : "\\u" + ("0000" + e.charCodeAt(0).toString(16)).slice(-4) | |
} | |
function t(t) { | |
return o.lastIndex = 0, o.test(t) ? t.replace(o, e) : t | |
} | |
function i(e, t) { | |
if (this.initialized = !1, "number" != typeof e || e % 1 !== 0 || 0 > e) throw "Invalid Site ID"; | |
if (this.siteID = e, this.impressions = [], this._parseFnName = void 0, top === self ? (this.sitePage = location.href, this.topframe = 1) : (this.sitePage = document.referrer, this.topframe = 0), "undefined" != typeof t) { | |
if ("function" != typeof t) throw "Invalid jsonp target function"; | |
this._parseFnName = "cygnus_index_safe_args.parseFn" | |
} | |
"undefined" == typeof _IndexRequestData.requestCounter ? _IndexRequestData.requestCounter = Math.floor(256 * Math.random()) : _IndexRequestData.requestCounter = (_IndexRequestData.requestCounter + 1) % 256, this.requestID = String((new Date).getTime() % 2592e3 * 256 + _IndexRequestData.requestCounter + 256), this.initialized = !0 | |
} | |
function n(e, t) { | |
if (t) { | |
var i = document.createElement("script"); | |
i.setAttribute("src", e), i.setAttribute("type", "text/javascript"); | |
var n = document.getElementsByTagName("script")[0]; | |
n.parentNode && n.parentNode.insertBefore(i, n) | |
} else document.write('<scr'+'ipt src="' + e + '"></scr'+ 'ipt>') | |
} | |
index_headertag_lightspeed.cygnus_refresh_done = !1; | |
var s = index_headertag_lightspeed.url_param_overwrite("ix_timeout", 500, Number); | |
window.setTimeout(function() { | |
index_headertag_lightspeed.cygnus_refresh_done || (index_headertag_lightspeed.cygnus_refresh_done = !0, index_headertag_lightspeed.analytics.stop_timer("INDX"), index_headertag_lightspeed.end_refresh("INDX")) | |
}, s), secondary_request && (cygnus_index_safe_args.embedMode = 1), secondary_request = 1, "undefined" == typeof index_no_demand && (index_no_demand = {}), index_slots_render = [], index_slots_add = [], targetID_to_slotID = [], index_activated_defaults = {}, cygnus_index_safe_args.parseFn = cygnus_index_parse_res; | |
var o = /[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g, | |
d = { | |
"\b": "\\b", | |
" ": "\\t", | |
"\n": "\\n", | |
"\f": "\\f", | |
"\r": "\\r", | |
'"': '\\"', | |
"\\": "\\\\" | |
}; | |
i.prototype.serialize = function() { | |
// var e = '{"id":' + this.requestID + ',"site":{"page":"' + t(this.sitePage) + '"'; | |
var e = '{"id":' + this.requestID + ',"site":{"page":"http://www.chowhound.com/food-news"'; | |
// "string" == typeof document.referrer && (e += ',"ref":"' + t(document.referrer) + '"'), e += '},"imp":['; | |
e += ',"ref":"http://www.chowhound.com/food-news"', e += '},"imp":['; | |
for (var i = 0; i < this.impressions.length; i++) { | |
var n = this.impressions[i], | |
s = []; | |
e += '{"id":"' + n.id + '", "banner":{"w":' + n.w + ',"h":' + n.h + ',"topframe":' + String(this.topframe) + "}", "number" == typeof n.bidfloor && (e += ',"bidfloor":' + n.bidfloor, "string" == typeof n.bidfloorcur && (e += ',"bidfloorcur":"' + t(n.bidfloorcur) + '"')), "string" != typeof n.slotID || n.slotID.match(/^\s*$/) || s.push('"sid":"' + t(n.slotID) + '"'), "number" == typeof n.siteID && s.push('"siteID":' + n.siteID), s.length > 0 && (e += ',"ext": {' + s.join() + "}"), e += i + 1 == this.impressions.length ? "}" : "}," | |
} | |
return e += "]}" | |
}, i.prototype.setPageOverride = function(e) { | |
return "string" != typeof e || e.match(/^\s*$/) ? !1 : (this.sitePage = e, !0) | |
}, i.prototype.addImpression = function(e, t, i, n, s, o) { | |
var d = { | |
id: String(this.impressions.length + 1) | |
}; | |
if ("number" != typeof e || 1 >= e) return null; | |
if ("number" != typeof t || 1 >= t) return null; | |
if (("string" == typeof s || "number" == typeof s) && String(s).length <= 50 && (d.slotID = String(s)), d.w = e, d.h = t, void 0 != i && "number" != typeof i) return null; | |
if ("number" == typeof i) { | |
if (0 > i) return null; | |
if (d.bidfloor = i, void 0 != n && "string" != typeof n) return null; | |
d.bidfloorcur = n | |
} | |
if ("undefined" != typeof o) { | |
if (!("number" == typeof o && o % 1 === 0 && o >= 0)) return null; | |
d.siteID = o | |
} | |
return this.impressions.push(d), d.id | |
}, i.prototype.sendRequestAsync = function() { | |
if (0 != this.impressions.length && this.initialized === !0) { | |
var e = encodeURIComponent(this.serialize()), | |
t = "https:" === window.location.protocol ? "https://as-sec.casalemedia.com" : "http://as.casalemedia.com"; | |
return t += "/cygnus?v=7&fn=cygnus_index_parse_res&s=" + this.siteID + "&r=" + e, n(t, cygnus_index_safe_args.embedMode), this.requestID | |
} | |
}; | |
try { | |
if ("undefined" == typeof cygnus_index_safe_args || "undefined" == typeof cygnus_index_safe_args.siteID || "undefined" == typeof cygnus_index_safe_args.slots) return; | |
"undefined" == typeof _IndexRequestData && (_IndexRequestData = {}, _IndexRequestData.impIDToSlotID = {}, _IndexRequestData.reqOptions = {}); | |
var a = new i(cygnus_index_safe_args.siteID, cygnus_index_safe_args.parseFn); | |
cygnus_index_safe_args.url && "string" == typeof cygnus_index_safe_args.url && a.setPageOverride(cygnus_index_safe_args.url), _IndexRequestData.impIDToSlotID[a.requestID] = {}, _IndexRequestData.reqOptions[a.requestID] = {}; | |
var r, _; | |
"undefined" != typeof index_demand; | |
for (var p = 0; p < cygnus_index_safe_args.slots.length; p++) { | |
if (r = cygnus_index_safe_args.slots[p], "undefined" != typeof index_demand && "SQPS" != r.id && !(r.id in index_demand)) { | |
var l = 0; | |
if ("undefined" == typeof index_no_demand[r.id] && "SQPS" != r.id) index_no_demand[r.id] = Date.now(); | |
else { | |
var g = Date.now() - index_no_demand[r.id]; | |
g > 15e3 && (l = 1) | |
} | |
if (!l) continue; | |
index_no_demand[r.id] = Date.now() | |
} | |
_ = a.addImpression(r.width, r.height, r.bidfloor, r.bidfloorcur, r.id, r.siteID), _ && (_IndexRequestData.impIDToSlotID[a.requestID][_] = String(r.id)) | |
} | |
return "number" == typeof cygnus_index_safe_args.targetMode && (_IndexRequestData.reqOptions[a.requestID].targetMode = cygnus_index_safe_args.targetMode), "function" == typeof cygnus_index_safe_args.callback && (_IndexRequestData.reqOptions[a.requestID].callback = cygnus_index_safe_args.callback), a.sendRequestAsync() | |
} catch (u) {} | |
} | |
function getSlotInfo(e) { | |
for (var t = 0; t < cygnus_index_safe_args.slots.length; t++) { | |
var i = cygnus_index_safe_args.slots[t]; | |
if (i.id == e) return i | |
} | |
} | |
function cygnus_index_prepare_defaults(e) { | |
for (var t = {}, i = 0; i < cygnus_index_safe_args.default_slots.length; i++) | |
for (var n = cygnus_index_safe_args.default_slots[i], s = 0; s < index_slots.length; s++) { | |
var o = new RegExp("^[OP]_" + n + "_.*$"); | |
if (o.test(index_slots[s])) { | |
var d = index_slots[s].split("_"); | |
d[0], d[d.length - 1]; | |
t[n] = 1 | |
} | |
} | |
for (var i = 0; i < cygnus_index_safe_args.default_slots.length; i++) { | |
var n = cygnus_index_safe_args.default_slots[i]; | |
if (!(n in t)) { | |
var a = cygnus_index_safe_args.default_bins[e], | |
r = cygnus_copy(cygnus_index_safe_args.default_adcodes[a]), | |
_ = getSlotInfo(n), | |
p = _.width + "x" + _.height, | |
l = cygnus_index_adunits[p]; | |
if ("undefined" != typeof l) { | |
r.adUnits = String(l); | |
var g = public_key + "_" + n + "_" + r.pricelevel; | |
index_slot_to_size[g] = p, index_slots.push(g), index_activated_defaults[g] = r | |
} | |
} | |
} | |
} | |
function cygnus_copy(e) { | |
var t = new Object; | |
for (var i in e) e.hasOwnProperty(i) && (t[i] = e[i]); | |
return t | |
} | |
function cygnus_index_sqps() { | |
function e(e) { | |
var t = e.split("_"); | |
if ("SQPS" == t[1]) return Number(t[2]) | |
} | |
var t = -1; | |
cygnus_index_safe_args.sqps_slot = ""; | |
for (var i = 0; i < index_slots.length && (t = e(index_slots[i]), cygnus_index_safe_args.sqps_slot = index_slots[i], "undefined" == typeof t); i++); | |
if ("undefined" == typeof t || 0 > t) return -1; | |
var n = -1; | |
for (var s in cygnus_index_safe_args.default_bins) cygnus_index_safe_args.default_bins.hasOwnProperty(s) && t > s && s > n && (n = s); | |
return n >= 0 ? n : -2 | |
} | |
function save_targets() { | |
for (var e = new Array, t = new Array, i = 0; i < index_slots.length; i++) { | |
var n = index_slots[i].split("_"), | |
s = n.shift(), | |
o = s, | |
d = n.join("_"); | |
o == public_key ? e.push(d) : o == pmp_key && t.push(d) | |
} | |
e.length > 0 && index_headertag_lightspeed.analytics.save_targets("INDX", public_key, e), t.length > 0 && index_headertag_lightspeed.analytics.save_targets("INDX", pmp_key, t) | |
} | |
function cygnus_index_set_targets() { | |
save_targets(); | |
index_headertag_lightspeed.analytics.stop_timer("INDX"); | |
index_headertag_lightspeed.cygnus_refresh_done || (index_headertag_lightspeed.cygnus_refresh_done = !0, index_headertag_lightspeed.end_refresh("INDX")) | |
} | |
function cygnus_index_set_div_based_targeting(e, t, i) { | |
for (var n = 0; n < e.length; n++) { | |
var s = e[n].split("_"), | |
o = s[0], | |
d = cygnus_index_safe_args.gpt_divs[o]; | |
if ("undefined" != typeof d) | |
for (var a = 0; a < d.length; a++) { | |
var r = d[a], | |
_ = i[r]; | |
if ("undefined" != typeof _) { | |
var p = _.getTargeting(t); | |
p.push(e[n]), _.setTargeting(t, p) | |
} | |
} | |
} | |
} | |
function cygnus_index_get_slot_size(e) { | |
for (var t = 0; t < cygnus_index_safe_args.slots.length; t++) { | |
var i = cygnus_index_safe_args.slots[t]; | |
if (i.id === e) return [i.width, i.height] | |
} | |
return [null, null] | |
} | |
function cygnus_index_get_dfp_sizes(e) { | |
for (var t = e.getSizes(), i = [], n = 0; n < t.length; n++) i.push([t[n].l, t[n].j]); | |
return i | |
} | |
function cygnus_index_set_key_based_targeting(e, t, i) { | |
var n = cygnus_index_safe_args.gpt_keymatch; | |
for (var s in n) | |
if (n.hasOwnProperty(s) === !0) { | |
var o = n[s]; | |
for (var d in i) | |
if (i.hasOwnProperty(d) === !0) { | |
var a = i[d], | |
r = a.getTargeting(s), | |
_ = cygnus_index_get_dfp_sizes(a); | |
if (o.hasOwnProperty(r)) | |
for (var p = o[r], l = 0; l < p.length; l++) | |
for (var g = 0; g < e.length; g++) { | |
var u = e[g].split("_"), | |
c = u[0]; | |
if (p[l] == c) | |
for (var h = cygnus_index_get_slot_size(c), f = 0; f < _.length; f++) { | |
var m = _[f]; | |
if (m[0] == h[0] && m[1] == h[1]) { | |
var y = a.getTargeting(t); | |
y.push(e[g]), a.setTargeting(t, y) | |
} | |
} | |
} | |
} | |
} | |
} | |
function getUniqueIdentifierStr() { | |
return getIncrementalInteger() + Math.random().toString(16).substr(2) | |
} | |
function parseJPTResponse(e) { | |
// var t = JSON.parse(e.substring(9, e.length - 2)), | |
var i = parseInt(e.result.cpm, 10); | |
// if (i /= 1e4, "undefined" != typeof window.appnexus_custom_pricelevels && window.appnexus_custom_pricelevels.length > 0 && (i = price_flooring(i)), i > 0) { | |
var n = getUniqueIdentifierStr(); | |
// index_headertag_lightspeed.appnexus_bid_responses[t.callback_uid] = { | |
index_headertag_lightspeed.appnexus_bid_responses[e.callback_uid] = { | |
hb_bidder: "appnexus", | |
hb_adid: n, | |
hb_pb: i, | |
hb_size: e.result.width + "x" + e.result.height | |
}, index_headertag_lightspeed.appnexus_ads[n] = { | |
width: e.result.width, | |
height: e.result.height, | |
adUrl: e.result.ad, | |
creative_id: e.result.creative_id | |
} | |
// } | |
// decrementAPNXRequestCount() | |
} | |
function appNexus_renderAd(e, t) { | |
if (e && t) try { | |
var i = index_headertag_lightspeed.appnexus_ads[t]; | |
if (i) { | |
var n = i.height, | |
s = i.width, | |
o = i.adUrl, | |
d = i.ad; | |
d ? (e.write(d), e.close(), e.defaultView && e.defaultView.frameElement && (e.defaultView.frameElement.width = s, e.defaultView.frameElement.height = n)) : o && (e.write('<IFRAME SRC="' + o + '" FRAMEBORDER="0" SCROLLING="no" MARGINHEIGHT="0" MARGINWIDTH="0" TOPMARGIN="0" LEFTMARGIN="0" ALLOWTRANSPARENCY="true" WIDTH="' + s + '" HEIGHT="' + n + '"></IFRAME>'), e.close(), e.defaultView && e.defaultView.frameElement && (e.defaultView.frameElement.width = s, e.defaultView.frameElement.height = n)) | |
} | |
} catch (a) {} | |
} | |
function decrementAPNXRequestCount() { | |
if (index_headertag_lightspeed.apnx_request_count--, 0 === index_headertag_lightspeed.apnx_request_count) { | |
if (index_headertag_lightspeed.apnx_refresh_done) return; | |
index_headertag_lightspeed.apnx_refresh_done = !0, index_headertag_lightspeed.end_refresh("APNX") | |
} | |
} | |
function JPTTimeoutHandler(e) { | |
decrementAPNXRequestCount() | |
} | |
function parseGPTSingleSizeArray(e) { | |
return !Array.isArray(e) || 2 !== e.length || isNaN(e[0]) || isNaN(e[1]) ? void 0 : e[0] + "x" + e[1] | |
} | |
function parseSizesInput(e) { | |
var t = []; | |
if (Array.isArray(e)) { | |
var i = e.length; | |
if (i > 0) | |
if (2 === i && "number" == typeof e[0] && "number" == typeof e[1]) t.push(parseGPTSingleSizeArray(e)); | |
else | |
for (var n = 0; i > n; n++) t.push(parseGPTSingleSizeArray(e[n])) | |
} | |
return t | |
} | |
function tryAppendQueryString(e, t) { | |
return t ? "&" + e + "=" + encodeURIComponent(t) : "" | |
} | |
function getTopWindowUrl() { | |
try { | |
return window.top.location.href | |
} catch (e) { | |
return window.location.href | |
} | |
} | |
function sendJPTRequest(e) { | |
var t = new XMLHttpRequest; | |
t.onreadystatechange = function() { | |
4 === t.readyState && (200 == t.status ? parseJPTResponse(t.responseText) : decrementAPNXRequestCount()) | |
}, t.open("GET", e, !0), t.timeout = index_headertag_lightspeed.url_param_overwrite("ix_timeout", 500, Number), t.ontimeout = JPTTimeoutHandler, t.withCredentials = !0, t.send() | |
} | |
function price_flooring(e) { | |
for (var t = window.appnexus_custom_pricelevels, i = 0; i < t.length; i++) { | |
if (e < t[i].cpm) { | |
var n = 1 / t[i].granularity; | |
return (Math.floor(e * n) / n).toFixed(2) | |
} | |
if (i === t.length - 1) { | |
var n = 1 / t[i].granularity; | |
return Math.min(t[i].cpm, Math.floor(e * n) / n).toFixed(2) | |
} | |
} | |
}! function() { | |
function e() { | |
this.hooks = {}, this.session_hooks = {}, this.request_counter = 0, this.post_hooks_count = {}, this.post_hooks_completed_count = {}, this.correlator = {}, this.slot_targeting_hooks = [], this.dynacounter = {}, this.DEFAULT_NAMESPACE = "initial-load", this.registered_bidders = [], this.bidder_complete = {} | |
} | |
function t(e) { | |
return "function" == typeof e | |
} | |
window.console = window.console || { | |
log: function() {}, | |
debug: function() {} | |
}, e.prototype.url_param_overwrite = function(e, t, i) { | |
var n = (location.search.split(e + "=")[1] || "").split("&")[0]; | |
return void 0 === n || "" === n || void 0 !== i && isNaN(i(n)) ? void 0 !== t ? t : void 0 : (void 0 !== i && (n = i(n)), n) | |
}, e.prototype.register_bidder = function(e) { | |
this.registered_bidders.push(e) | |
}, e.prototype.add_pre_refresh_hook = function(e, i, n, s) { | |
if ("undefined" == typeof s && (s = this.DEFAULT_NAMESPACE), t(i)) { | |
this.hooks[s] = this.hooks[s] || {}; | |
var o = this.hooks[s]; | |
o[e] = o[e] || {}, o[e].pre_refresh = o[e].pre_refresh || [], i.oneshot = !!n, o[e].pre_refresh.push(i) | |
} | |
}, e.prototype.add_post_refresh_hook = function(e, i, n, s) { | |
if ("undefined" == typeof s && (s = this.DEFAULT_NAMESPACE), t(i)) { | |
this.hooks[s] = this.hooks[s] || {}; | |
var o = this.hooks[s]; | |
this.post_hooks_count[s] = this.post_hooks_count[s] || 0, o[e] = o[e] || {}, o[e].post_refresh = o[e].post_refresh || [], i.oneshot = !!n, o[e].post_refresh.push(i), this.post_hooks_count[s]++ | |
} | |
}, e.prototype.add_session_start_hook = function(e, i, n) { | |
"undefined" == typeof n && (n = this.DEFAULT_NAMESPACE), t(e) && (e.oneshot = !!i, this.session_hooks[n] = this.session_hooks[n] || { | |
start: [], | |
finish: [] | |
}, this.session_hooks[n].start.push(e)) | |
}, e.prototype.add_session_end_hook = function(e, i, n) { | |
"undefined" == typeof n && (n = this.DEFAULT_NAMESPACE), t(e) && (e.oneshot = !!i, this.session_hooks[n] = this.session_hooks[n] || { | |
start: [], | |
finish: [] | |
}, this.session_hooks[n].finish.push(e)) | |
}, e.prototype.dynacounter_set = function(e, t, i) { | |
"undefined" == typeof i && (i = this.DEFAULT_NAMESPACE), this.dynacounter[i] = this.dynacounter[i] || {}; | |
var n = this.dynacounter[i]; | |
n[e] = this.dynacounter[e] || {}, n[e].enabled = !0, n[e].maxads = t, n[e].numads = 0 | |
}, e.prototype.dynacounter_enable = function(e, t) { | |
"undefined" == typeof t && (t = this.DEFAULT_NAMESPACE), this.dynacounter_set(e, 0, t) | |
}, e.prototype.dynacounter_stall = function(e, t, i) { | |
"undefined" == typeof i && (i = this.DEFAULT_NAMESPACE), this.dynacounter[i] = this.dynacounter[i] || {}; | |
var n = this.dynacounter[i]; | |
n[e] = n[e] || {}, n[e].enabled = !0, n[e].maxads += t | |
}, e.prototype.dynacounter_tick = function(e, t) { | |
"undefined" == typeof t && (t = this.DEFAULT_NAMESPACE); | |
var i = this.dynacounter[t] || {}; | |
i[e].numads++, i[e].numads === i[e].maxads && (i[e].enabled = !1, i[e].maxads = 0, i[e].numads = 0, this.end_refresh(e, t)) | |
}, e.prototype.end_refresh = function(e, t) { | |
"undefined" == typeof t && (t = this.DEFAULT_NAMESPACE); | |
var i = this.session_hooks[t], | |
n = this.hooks[t]; | |
if (this.bidder_complete[t][e] = !0, n.hasOwnProperty(e)) { | |
var s = n[e].post_refresh; | |
if ("undefined" != typeof s) | |
for (var o = 0; o < s.length; o++) s[o](this.correlator[t][o]), s[o].oneshot && s.splice(o, 1) | |
} | |
for (var d = !0, o = 0; o < this.registered_bidders.length; o++) { | |
var e = this.registered_bidders[o]; | |
d &= this.bidder_complete[t][e] | |
} | |
if (d) { | |
var a = []; | |
this.bidder_complete[t] = {}; | |
for (var o = 0; o < i.finish.length; o++) { | |
var r = i.finish[o]; | |
r(), i.finish[o].oneshot || a.push(i.finish[o]) | |
} | |
i.finish = a | |
} | |
}, e.prototype.refresh = function(e) { | |
if (0 == index_headertag_lightspeed.cygnus_refresh_done) return !0; | |
"undefined" == typeof e && (e = this.DEFAULT_NAMESPACE), this.bidder_complete[e] = {}, this.post_hooks_completed_count[e] = 0, this.session_hooks[e] = this.session_hooks[e] || { | |
start: [], | |
finish: [] | |
}; | |
for (var t = this.session_hooks[e], i = 0; i < t.start.length; i++) { | |
var n = t.start[i]; | |
n(), t.start[i].oneshot && t.start.splice(i, 1) | |
} | |
var s = this.hooks[e]; | |
for (var o in s) | |
if (s.hasOwnProperty(o)) { | |
var d = s[o].pre_refresh; | |
if ("undefined" != typeof d) | |
for (var i = 0; i < d.length; i++) try { | |
this.correlator[e] = this.correlator[e] || {}, this.correlator[e][i] = d[i](), d[i].oneshot && d.splice(i, 1) | |
} catch (a) {} | |
} | |
}, e.prototype.add_slot_targeting_hook = function(e) { | |
this.slot_targeting_hooks.push(e) | |
}, e.prototype.set_slot_targeting = function(e) { | |
for (var t = 0; t < this.slot_targeting_hooks.length; t++) this.slot_targeting_hooks[t](e) | |
}, e.prototype.generate_request_id = function() { | |
var e = String((new Date).getTime() % 2592e3 * 256 + this.request_counter + 256); | |
return this.request_counter++, e | |
}, e.prototype.is_mobile = function() { | |
var e = navigator.userAgent || navigator.vendor || window.opera; | |
return !(!/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(e) && !/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(e.substr(0, 4))) | |
}, window.ix_ls_names = [], window.index_headertag_lightspeed = new e | |
}(), | |
function() { | |
function e() { | |
this.timers = {}, this.requestIDs = [], this.sessions = {}, this.targets = {} | |
} | |
e.prototype.latest_request_id = function() { | |
return this.requestIDs.length > 0 ? this.requestIDs[this.requestIDs.length - 1] : void 0 | |
}, e.prototype.start_session = function(e) { | |
"undefined" == typeof e && "undefined" != typeof window.index_headertag_lightspeed && "undefined" != typeof window.index_headertag_lightspeed.generate_request_id && (e = index_headertag_lightspeed.generate_request_id()), this.requestIDs.push(e), this.sessions[e] = { | |
started: Date.now(), | |
ended: -1 | |
}, this.timers[e] = {} | |
}, e.prototype.end_session = function(e) { | |
"undefined" == typeof e && (e = this.latest_request_id), this.sessions[e].ended = Date.now() | |
}, e.prototype.is_valid_request_id = function(e) { | |
return "undefined" == typeof e ? !1 : "undefined" == typeof this.timers[e] ? !1 : "undefined" != typeof this.sessions[e] | |
}, e.prototype.start_timer = function(e) { | |
var t = this.latest_request_id(); | |
if (this.is_valid_request_id(t)) { | |
var i = Date.now(); | |
this.timers[t][e] = { | |
started: i | |
} | |
} | |
}, e.prototype.peek_timer = function(e) { | |
var t = this.latest_request_id(); | |
if (this.is_valid_request_id(t)) { | |
var i = this.timers[t][e] ? this.timers[t][e].started : void 0; | |
if ("undefined" != typeof i) { | |
var n = this.timers[t][e] ? this.timers[t][e].ended : Date.now(); | |
return n - i | |
} | |
} | |
}, e.prototype.check_timer = function(e) { | |
var t = this.latest_request_id(); | |
if (this.is_valid_request_id(t)) { | |
var i = this.timers[t][e] ? this.timers[t][e].started : void 0; | |
if ("undefined" != typeof i) return Date.now() - i | |
} | |
}, e.prototype.stop_timer = function(e) { | |
var t = this.latest_request_id(); | |
if (this.is_valid_request_id(t)) { | |
var i = this.timers[t][e] ? this.timers[t][e].started : void 0; | |
if ("undefined" != typeof i) { | |
var n = this.timers[t][e].ended; | |
return "undefined" == typeof n ? (n = Date.now(), this.timers[t][e].ended = n, n - i) : n - i | |
} | |
} | |
}, e.prototype.save_targets = function(e, t, i) { | |
var n = this.latest_request_id(); | |
this.is_valid_request_id(n) && (this.targets[n] = this.targets[n] || {}, this.targets[n][e] = this.targets[n][e] || {}, this.targets[n][e][t] = i) | |
}, e.prototype.send_null_creative_alert = function(e, t, i, n) { | |
var s = "RT", | |
o = (this.latest_request_id(), "?type=" + s + "&r=" + n + "&blank=" + JSON.stringify(i) + "&s=" + e + "&u=" + encodeURIComponent(t)), | |
d = new String; | |
d += "http:" === location.protocol ? "http://as" : "https://as-sec", d += ".casalemedia.com/headerstats" + o; | |
var a = new Image; | |
a.src = d | |
}, e.prototype.create_report_query = function(e, t, i, n) { | |
var s = "RT", | |
o = this.latest_request_id(), | |
d = this.sessions[o].started, | |
a = this.sessions[o].ended || -1; | |
if (this.is_valid_request_id(o)) { | |
for (var r = "?type=" + s + "&r=" + n + "&t0=" + d + "&t1=" + a, _ = this.timers[n], p = this.targets[n] || {}, l = 0; l < i.length; l++) { | |
var g = i[l]; | |
if ("undefined" != typeof _[g]) { | |
var u = _[g].started || -1, | |
c = _[g].ended || -1, | |
h = c - u; | |
h = h > 0 ? h : -1; | |
var f = -1, | |
m = 0; | |
if (r += "&" + g + ".t=" + h + "&" + g + ".ts=" + f + "&" + g + ".to=" + m, "undefined" != typeof p && p.hasOwnProperty(g)) | |
for (var y in p[g]) { | |
var b = p[g][y], | |
x = ""; | |
if (b instanceof Array) { | |
for (var w = 0; w < b.length - 1; w++) x += b[w] + ","; | |
x += b[b.length - 1] | |
} else x = b; | |
r += "&" + g + ".p.pl." + y + "=" + x | |
} | |
} | |
} | |
return r + "&s=" + e + "&u=" + encodeURIComponent(t) | |
} | |
}, e.prototype.send_report = function(e, t, i) { | |
var n = new String; | |
n += "http:" === location.protocol ? "http://as" : "https://as-sec", n += ".casalemedia.com/headerstats" + this.create_report_query(e, location.href, t, i); | |
var s = new Image; | |
s.src = n | |
}; | |
var t = new e; | |
"undefined" != typeof window.index_headertag_lightspeed ? index_headertag_lightspeed.analytics = t : window.index_headertag_lightspeed = { | |
analytics: t | |
} | |
}(), /.*/.test(location.href) && !index_headertag_lightspeed.is_mobile() && (window.cygnus_index_safe_args = { | |
name: "cygnus", | |
embedMode: 1, | |
siteID: 171217, | |
slots: [{ | |
id: "1", | |
width: 728, | |
height: 90, | |
siteID: 171217 | |
}, { | |
id: "2", | |
width: 970, | |
height: 250, | |
siteID: 174541 | |
}, { | |
id: "3", | |
width: 300, | |
height: 250, | |
siteID: 174542 | |
}, { | |
id: "4", | |
width: 300, | |
height: 600, | |
siteID: 174543 | |
}, { | |
id: "5", | |
width: 728, | |
height: 90, | |
siteID: 174544 | |
}, { | |
id: "6", | |
width: 300, | |
height: 250, | |
siteID: 174545 | |
}], | |
gpt_divs: { | |
1: ["leader_plus_top", "leader_top"], | |
2: ["leader_plus_top"], | |
3: ["mpu_plus_top", "mpu_top"], | |
4: ["mpu_plus_top"], | |
5: ["leader_bottom"], | |
6: ["mpu_bottom"] | |
} | |
}, window.adtech_placement_config = { | |
name: "aol", | |
placement: [{ | |
id: "3687812", | |
size_id: "170" | |
}, { | |
id: "3687813", | |
size_id: "170" | |
}, { | |
id: "3687814", | |
size_id: "225" | |
}, { | |
id: "3687815", | |
size_id: "225" | |
}], | |
rounding: { | |
grain: "0.05", | |
precision: "2" | |
} | |
}, window.appnexus_config = [{ | |
code: "leader_plus_top", | |
sizes: [ | |
[728, 90] | |
], | |
placementId: "5757336" | |
}, { | |
code: "leader_top", | |
sizes: [ | |
[728, 90] | |
], | |
placementId: "5757336" | |
}, { | |
code: "mpu_plus_top", | |
sizes: [ | |
[300, 250] | |
], | |
placementId: "5757339" | |
}, { | |
code: "mpu_top", | |
sizes: [ | |
[300, 250] | |
], | |
placementId: "5757339" | |
}, { | |
code: "leader_bottom", | |
sizes: [ | |
[728, 90] | |
], | |
placementId: "5757338" | |
}, { | |
code: "mpu_bottom", | |
sizes: [ | |
[300, 250] | |
], | |
placementId: "5757340" | |
}], window.appnexus_custom_pricelevels = [{ | |
cpm: 20, | |
granularity: .05 | |
}], window.ls_ybot_active_config = { | |
name: "ybot", | |
async: "true", | |
site_code: "8abd", | |
slots: [{ | |
id: "mpu_plus_top", | |
ybot_id: "mpu_plus_top", | |
sizes: [ | |
[300, 250], | |
[300, 600] | |
] | |
}, { | |
id: "mpu_bottom", | |
ybot_id: "mpu_bottom", | |
sizes: [ | |
[300, 250] | |
] | |
}, { | |
id: "leader_plus_top", | |
ybot_id: "leader_plus_top", | |
sizes: [ | |
[728, 90] | |
] | |
}, { | |
id: "mpu_top", | |
ybot_id: "mpu_top", | |
sizes: [ | |
[300, 250] | |
] | |
}] | |
}, window.ybot_config_function = function() { | |
yieldbot.pub("8abd"), yieldbot.enableAsync(), yieldbot.defineSlot("mpu_plus_top"), yieldbot.defineSlot("mpu_bottom"), yieldbot.defineSlot("leader_plus_top"), yieldbot.defineSlot("mpu_top"), yieldbot.go() | |
}), !index_headertag_lightspeed.is_mobile() && (window.cygnus_index_safe_args = { ///.*\.chowhound\.com(\/(search(\/|\?|#).*?|search|food-news|recipes|restaurants|home-cooking|cookware|food-media|kosher|coffee-tea|tag|general-discussion|markets|not-about-food|wine|restaurant-chains|spirits|events|beer|services|cheese|entertaining|gardening|vegetarian-vegan|diets|packaged-foods|bbq-smoking-grilling|hotels-vacations|crowdfunding|health|feedback|post))?(\/+(\?.*|#.*|$))?$/.test(location.href) && | |
name: "cygnus", | |
embedMode: 1, | |
siteID: 171217, | |
slots: [{ | |
id: "1", | |
width: 728, | |
height: 90, | |
siteID: 171217 | |
}, { | |
id: "2", | |
width: 970, | |
height: 250, | |
siteID: 174541 | |
}, { | |
id: "3", | |
width: 300, | |
height: 250, | |
siteID: 174542 | |
}, { | |
id: "4", | |
width: 300, | |
height: 600, | |
siteID: 174543 | |
}, { | |
id: "5", | |
width: 728, | |
height: 90, | |
siteID: 174544 | |
}, { | |
id: "6", | |
width: 300, | |
height: 250, | |
siteID: 174545 | |
}], | |
gpt_divs: { | |
1: ["leader_plus_top", "leader_top"], | |
2: ["leader_plus_top"], | |
3: ["mpu_plus_top", "mpu_top"], | |
4: ["mpu_plus_top"], | |
5: ["leader_bottom"], | |
6: ["mpu_bottom"] | |
} | |
}, window.adtech_placement_config = { | |
name: "aol", | |
placement: [{ | |
id: "3687812", | |
size_id: "170" | |
}, { | |
id: "3687813", | |
size_id: "170" | |
}, { | |
id: "3687814", | |
size_id: "225" | |
}, { | |
id: "3687815", | |
size_id: "225" | |
}], | |
rounding: { | |
grain: "0.05", | |
precision: "2" | |
} | |
}, window.appnexus_config = [{ | |
code: "leader_plus_top", | |
sizes: [ | |
[728, 90] | |
], | |
placementId: "5757336" | |
}, { | |
code: "mpu_plus_top", | |
sizes: [ | |
[300, 250] | |
], | |
placementId: "5757339" | |
}, { | |
code: "leader_bottom", | |
sizes: [ | |
[728, 90] | |
], | |
placementId: "5757338" | |
}, { | |
code: "mpu_bottom", | |
sizes: [ | |
[300, 250] | |
], | |
placementId: "5757340" | |
}], window.appnexus_custom_pricelevels = [{ | |
cpm: 20, | |
granularity: .05 | |
}], window.ls_ybot_active_config = { | |
name: "ybot", | |
async: "true", | |
site_code: "8abd", | |
slots: [{ | |
id: "mpu_plus_top", | |
ybot_id: "mpu_plus_top", | |
sizes: [ | |
[300, 250], | |
[300, 600] | |
] | |
}, { | |
id: "mpu_bottom", | |
ybot_id: "mpu_bottom", | |
sizes: [ | |
[300, 250] | |
] | |
}, { | |
id: "leader_plus_top", | |
ybot_id: "leader_plus_top", | |
sizes: [ | |
[728, 90] | |
] | |
}, { | |
id: "mpu_top", | |
ybot_id: "mpu_top", | |
sizes: [ | |
[300, 250] | |
] | |
}] | |
}, window.ybot_config_function = function() { | |
yieldbot.pub("8abd"), yieldbot.enableAsync(), yieldbot.defineSlot("mpu_plus_top"), yieldbot.defineSlot("mpu_bottom"), yieldbot.defineSlot("leader_plus_top"), yieldbot.defineSlot("mpu_top"), yieldbot.go() | |
}), /\/(pictures)/.test(location.href) && !index_headertag_lightspeed.is_mobile() && (window.cygnus_index_safe_args = { | |
name: "cygnus", | |
embedMode: 1, | |
siteID: 171217, | |
slots: [{ | |
id: "1", | |
width: 728, | |
height: 90, | |
siteID: 171217 | |
}, { | |
id: "2", | |
width: 970, | |
height: 250, | |
siteID: 174541 | |
}, { | |
id: "3", | |
width: 300, | |
height: 250, | |
siteID: 174542 | |
}, { | |
id: "5", | |
width: 728, | |
height: 90, | |
siteID: 174544 | |
}, { | |
id: "6", | |
width: 300, | |
height: 250, | |
siteID: 174545 | |
}], | |
gpt_divs: { | |
1: ["leader_plus_top", "leader_top"], | |
2: ["leader_plus_top"], | |
3: ["mpu_top"], | |
5: ["leader_bottom"], | |
6: ["mpu_bottom"] | |
} | |
}, window.adtech_placement_config = { | |
name: "aol", | |
placement: [{ | |
id: "3687812", | |
size_id: "170" | |
}, { | |
id: "3687813", | |
size_id: "170" | |
}, { | |
id: "3687814", | |
size_id: "225" | |
}, { | |
id: "3687815", | |
size_id: "225" | |
}], | |
rounding: { | |
grain: "0.05", | |
precision: "2" | |
} | |
}, window.appnexus_config = [{ | |
code: "leader_top", | |
sizes: [ | |
[728, 90] | |
], | |
placementId: "5757336" | |
}, { | |
code: "mpu_top", | |
sizes: [ | |
[300, 250] | |
], | |
placementId: "5757339" | |
}, { | |
code: "leader_bottom", | |
sizes: [ | |
[728, 90] | |
], | |
placementId: "5757338" | |
}, { | |
code: "mpu_bottom", | |
sizes: [ | |
[300, 250] | |
], | |
placementId: "5757340" | |
}], window.appnexus_custom_pricelevels = [{ | |
cpm: 20, | |
granularity: .05 | |
}], window.ls_ybot_active_config = { | |
name: "ybot", | |
async: "true", | |
site_code: "8abd", | |
slots: [{ | |
id: "leader_plus_top", | |
ybot_id: "leader_plus_top", | |
sizes: [ | |
[728, 90] | |
] | |
}, { | |
id: "mpu_top", | |
ybot_id: "mpu_top", | |
sizes: [ | |
[300, 250] | |
] | |
}, { | |
id: "mpu_bottom", | |
ybot_id: "mpu_bottom", | |
sizes: [ | |
[300, 250] | |
] | |
}] | |
}, window.ybot_config_function = function() { | |
yieldbot.pub("8abd"), yieldbot.enableAsync(), yieldbot.defineSlot("leader_plus_top"), yieldbot.defineSlot("mpu_top"), yieldbot.defineSlot("mpu_bottom"), yieldbot.go() | |
}), /\/(browse|about|faq|guidelines|latest)/.test(location.href) && !index_headertag_lightspeed.is_mobile() && (window.cygnus_index_safe_args = { | |
name: "cygnus", | |
embedMode: 1, | |
siteID: 171217, | |
slots: [], | |
gpt_divs: {} | |
}, window.adtech_placement_config = { | |
name: "aol", | |
placement: [], | |
rounding: { | |
grain: "0.05", | |
precision: "2" | |
} | |
}, window.appnexus_config = [], window.appnexus_custom_pricelevels = [{ | |
cpm: 20, | |
granularity: .05 | |
}], window.ls_ybot_active_config = { | |
name: "ybot", | |
async: "true", | |
site_code: "8abd", | |
slots: [] | |
}, window.ybot_config_function = function() { | |
yieldbot.pub("8abd"), yieldbot.enableAsync(), yieldbot.go() | |
}), /.*/.test(location.href) && index_headertag_lightspeed.is_mobile() && (window.cygnus_index_safe_args = { | |
name: "cygnus", | |
embedMode: 1, | |
siteID: 174546, | |
slots: [{ | |
id: "7", | |
width: 320, | |
height: 50, | |
siteID: 174546 | |
}], | |
gpt_divs: { | |
7: ["mobile_banner_top"] | |
} | |
}, window.adtech_placement_config = { | |
name: "aol", | |
placement: [{ | |
id: "3466541", | |
size_id: "3055" | |
}], | |
rounding: { | |
grain: "0.05", | |
precision: "2" | |
} | |
}, window.appnexus_config = [{ | |
code: "mobile_banner_top", | |
sizes: [ | |
[320, 50] | |
], | |
placementId: "5757341" | |
}], window.appnexus_custom_pricelevels = [{ | |
cpm: 20, | |
granularity: .05 | |
}], window.ls_ybot_active_config = { | |
name: "ybot", | |
async: "true", | |
site_code: "c7ed", | |
slots: [{ | |
id: "mobile_banner_top", | |
ybot_id: "mobile_banner_top", | |
sizes: [ | |
[320, 50] | |
] | |
}, { | |
id: "mobile_flex_bottom", | |
ybot_id: "mobile_flex_bottom", | |
sizes: [ | |
[300, 250] | |
] | |
}] | |
}, window.ybot_config_function = function() { | |
yieldbot.pub("c7ed"), yieldbot.enableAsync(), yieldbot.defineSlot("mobile_banner_top"), yieldbot.defineSlot("mobile_flex_bottom"), yieldbot.go() | |
}), /.*\.chowhound\.com\/(recipes.*)/.test(location.href) && index_headertag_lightspeed.is_mobile() && (window.cygnus_index_safe_args = { | |
name: "cygnus", | |
embedMode: 1, | |
siteID: 174546, | |
slots: [{ | |
id: "7", | |
width: 320, | |
height: 50, | |
siteID: 174546 | |
}, { | |
id: "8", | |
width: 320, | |
height: 50, | |
siteID: 174547 | |
}, { | |
id: "9", | |
width: 300, | |
height: 250, | |
siteID: 174548 | |
}, { | |
id: "12", | |
width: 320, | |
height: 50, | |
siteID: 174551 | |
}, { | |
id: "13", | |
width: 300, | |
height: 250, | |
siteID: 174552 | |
}], | |
gpt_divs: { | |
7: ["mobile_banner_top"], | |
8: ["mobile_flex_0"], | |
9: ["mobile_flex_0"], | |
12: ["mobile_flex_bottom"], | |
13: ["mobile_flex_bottom"] | |
} | |
}, window.adtech_placement_config = { | |
name: "aol", | |
placement: [{ | |
id: "3466541", | |
size_id: "3055" | |
}, { | |
id: "3466542", | |
size_id: "170" | |
}], | |
rounding: { | |
grain: "0.05", | |
precision: "2" | |
} | |
}, window.appnexus_config = [{ | |
code: "mobile_banner_top", | |
sizes: [ | |
[320, 50] | |
], | |
placementId: "5757341" | |
}, { | |
code: "mobile_flex_0", | |
sizes: [ | |
[300, 250] | |
], | |
placementId: "5757342" | |
}, { | |
code: "mobile_flex_bottom", | |
sizes: [ | |
[300, 250] | |
], | |
placementId: "5757342" | |
}], window.appnexus_custom_pricelevels = [{ | |
cpm: 20, | |
granularity: .05 | |
}], window.ls_ybot_active_config = { | |
name: "ybot", | |
async: "true", | |
site_code: "c7ed", | |
slots: [{ | |
id: "mobile_banner_top", | |
ybot_id: "mobile_banner_top", | |
sizes: [ | |
[320, 50] | |
] | |
}, { | |
id: "mobile_flex_bottom", | |
ybot_id: "mobile_flex_bottom", | |
sizes: [ | |
[300, 250] | |
] | |
}] | |
}, window.ybot_config_function = function() { | |
yieldbot.pub("c7ed"), yieldbot.enableAsync(), yieldbot.defineSlot("mobile_banner_top"), yieldbot.defineSlot("mobile_flex_bottom"), yieldbot.go() | |
}), /.*\.chowhound\.com\/(((profile|post)\/.*)|(pictures\/.+)|(search(\/|\?|#))|(search))/.test(location.href) && index_headertag_lightspeed.is_mobile() && (window.cygnus_index_safe_args = { | |
name: "cygnus", | |
embedMode: 1, | |
siteID: 174546, | |
slots: [{ | |
id: "7", | |
width: 320, | |
height: 50, | |
siteID: 174546 | |
}, { | |
id: "12", | |
width: 320, | |
height: 50, | |
siteID: 174551 | |
}, { | |
id: "13", | |
width: 300, | |
height: 250, | |
siteID: 174552 | |
}], | |
gpt_divs: { | |
7: ["mobile_banner_top"], | |
12: ["mobile_flex_bottom"], | |
13: ["mobile_flex_bottom"] | |
} | |
}, window.adtech_placement_config = { | |
name: "aol", | |
placement: [{ | |
id: "3466541", | |
size_id: "3055" | |
}, { | |
id: "3466542", | |
size_id: "170" | |
}], | |
rounding: { | |
grain: "0.05", | |
precision: "2" | |
} | |
}, window.appnexus_config = [{ | |
code: "mobile_banner_top", | |
sizes: [ | |
[320, 50] | |
], | |
placementId: "5757341" | |
}, { | |
code: "mobile_flex_bottom", | |
sizes: [ | |
[300, 250] | |
], | |
placementId: "5757342" | |
}], window.appnexus_custom_pricelevels = [{ | |
cpm: 20, | |
granularity: .05 | |
}], window.ls_ybot_active_config = { | |
name: "ybot", | |
async: "true", | |
site_code: "c7ed", | |
slots: [{ | |
id: "mobile_banner_top", | |
ybot_id: "mobile_banner_top", | |
sizes: [ | |
[320, 50] | |
] | |
}, { | |
id: "mobile_flex_bottom", | |
ybot_id: "mobile_flex_bottom", | |
sizes: [ | |
[300, 250] | |
] | |
}] | |
}, window.ybot_config_function = function() { | |
yieldbot.pub("c7ed"), yieldbot.enableAsync(), yieldbot.defineSlot("mobile_banner_top"), yieldbot.defineSlot("mobile_flex_bottom"), yieldbot.go() | |
}), /.*\.chowhound\.com\/((pictures|pictures\?page.+)(\/+(\?.*|#.*|$))?$)/.test(location.href) && index_headertag_lightspeed.is_mobile() && (window.cygnus_index_safe_args = { | |
name: "cygnus", | |
embedMode: 1, | |
siteID: 174546, | |
slots: [{ | |
id: "7", | |
width: 320, | |
height: 50, | |
siteID: 174546 | |
}, { | |
id: "8", | |
width: 320, | |
height: 50, | |
siteID: 174547 | |
}, { | |
id: "9", | |
width: 300, | |
height: 250, | |
siteID: 174548 | |
}, { | |
id: "10", | |
width: 320, | |
height: 50, | |
siteID: 174549 | |
}, { | |
id: "11", | |
width: 300, | |
height: 250, | |
siteID: 174550 | |
}], | |
gpt_divs: { | |
7: ["mobile_banner_top"], | |
8: ["mobile_flex_0"], | |
9: ["mobile_flex_0"], | |
10: ["mobile_flex_1"], | |
11: ["mobile_flex_1"] | |
} | |
}, window.adtech_placement_config = { | |
name: "aol", | |
placement: [{ | |
id: "3466541", | |
size_id: "3055" | |
}, { | |
id: "3466542", | |
size_id: "170" | |
}], | |
rounding: { | |
grain: "0.05", | |
precision: "2" | |
} | |
}, window.appnexus_config = [{ | |
code: "mobile_banner_top", | |
sizes: [ | |
[320, 50] | |
], | |
placementId: "5757341" | |
}, { | |
code: "mobile_flex_0", | |
sizes: [ | |
[320, 50] | |
], | |
placementId: "5757341" | |
}, { | |
code: "mobile_flex_1", | |
sizes: [ | |
[300, 250] | |
], | |
placementId: "5757342" | |
}], window.appnexus_custom_pricelevels = [{ | |
cpm: 20, | |
granularity: .05 | |
}], window.ls_ybot_active_config = { | |
name: "ybot", | |
async: "true", | |
site_code: "c7ed", | |
slots: [{ | |
id: "mobile_banner_top", | |
ybot_id: "mobile_banner_top", | |
sizes: [ | |
[320, 50] | |
] | |
}] | |
}, window.ybot_config_function = function() { | |
yieldbot.pub("c7ed"), yieldbot.enableAsync(), yieldbot.defineSlot("mobile_banner_top"), yieldbot.go() | |
}), /.*\.chowhound\.com\/(browse|food-news|faq|about|guidelines)/.test(location.href) && index_headertag_lightspeed.is_mobile() && (window.cygnus_index_safe_args = { | |
name: "cygnus", | |
embedMode: 1, | |
siteID: 174546, | |
slots: [{ | |
id: "7", | |
width: 320, | |
height: 50, | |
siteID: 174546 | |
}, { | |
id: "12", | |
width: 320, | |
height: 50, | |
siteID: 174551 | |
}, { | |
id: "13", | |
width: 300, | |
height: 250, | |
siteID: 174552 | |
}], | |
gpt_divs: { | |
7: ["mobile_banner_top"], | |
12: ["mobile_flex_bottom"], | |
13: ["mobile_flex_bottom"] | |
} | |
}, window.adtech_placement_config = { | |
name: "aol", | |
placement: [{ | |
id: "3466541", | |
size_id: "3055" | |
}, { | |
id: "3466542", | |
size_id: "170" | |
}], | |
rounding: { | |
grain: "0.05", | |
precision: "2" | |
} | |
}, window.appnexus_config = [{ | |
code: "mobile_banner_top", | |
sizes: [ | |
[320, 50] | |
], | |
placementId: "5757341" | |
}, { | |
code: "mobile_flex_bottom", | |
sizes: [ | |
[300, 250] | |
], | |
placementId: "5757342" | |
}], window.appnexus_custom_pricelevels = [{ | |
cpm: 20, | |
granularity: .05 | |
}], window.ls_ybot_active_config = { | |
name: "ybot", | |
async: "true", | |
site_code: "c7ed", | |
slots: [{ | |
id: "mobile_banner_top", | |
ybot_id: "mobile_banner_top", | |
sizes: [ | |
[320, 50] | |
] | |
}, { | |
id: "mobile_flex_bottom", | |
ybot_id: "mobile_flex_bottom", | |
sizes: [ | |
[300, 250] | |
] | |
}] | |
}, window.ybot_config_function = function() { | |
yieldbot.pub("c7ed"), yieldbot.enableAsync(), yieldbot.defineSlot("mobile_banner_top"), yieldbot.defineSlot("mobile_flex_bottom"), yieldbot.go() | |
}), /.*\.chowhound\.com\/(latest|guidelines|about|faq|newsletters)/.test(location.href) && index_headertag_lightspeed.is_mobile() && (window.cygnus_index_safe_args = { | |
name: "cygnus", | |
embedMode: 1, | |
siteID: 174546, | |
slots: [], | |
gpt_divs: {} | |
}, window.adtech_placement_config = { | |
name: "aol", | |
placement: [], | |
rounding: { | |
grain: "0.05", | |
precision: "2" | |
} | |
}, window.appnexus_config = [], window.appnexus_custom_pricelevels = [{ | |
cpm: 20, | |
granularity: .05 | |
}], window.ls_ybot_active_config = { | |
name: "ybot", | |
async: "true", | |
site_code: "c7ed", | |
slots: [] | |
}, window.ybot_config_function = function() { | |
yieldbot.pub("c7ed"), yieldbot.enableAsync(), yieldbot.go() | |
}), index_headertag_lightspeed.register_bidder("INDX"), window.googletag = window.googletag || {}, googletag.cmd = googletag.cmd || []; | |
var cygnus_tid = 4, | |
public_key = "IOM", | |
pmp_key = "IPM", | |
cygnus_index_stats = { | |
sampling: { | |
defaults: 1 | |
} | |
}, | |
cygnus_index_adunits = { | |
"728x90": 2, | |
"120x600": 3, | |
"300x250": 4, | |
"160x600": 5, | |
"336x280": 6, | |
"234x60": 7, | |
"300x600": 8, | |
"300x50": 9, | |
"320x50": 10, | |
"970x250": 12, | |
"300x1050": 13, | |
"970x90": 14, | |
"180x150": 15 | |
}, | |
tierone2tiertwo = { | |
160242: 164103 | |
}, | |
secondary_request = 0, | |
index_slot_to_size = {}; | |
index_headertag_lightspeed.add_slot_targeting_hook(function(e) { | |
window.index_slots = window.index_slots || []; | |
var t = splitIndexSlots(), //return two index_slots arrays grouped by publicKey and pmp_key | |
i = t[0], // Public key index_slots | |
n = t[1]; | |
if (Array.isArray(e) && "undefined" != typeof cygnus_index_safe_args.gpt_divs) { | |
for (var s = {}, o = 0; o < e.length; o++) { | |
var d = e[o].getSlotElementId(); // return e[o][o] == "leader_plus_top"... | |
"undefined" != typeof d.split("-")[1] && d.split("-")[1].length > 2 && (d = d.split("-")[0]), d = d.replace(/[0-9]/g, ""), s[d] = e[o], e[o].getTargeting(public_key).length > 0 && e[o].setTargeting(public_key, ""), e[o].getTargeting(pmp_key).length > 0 && e[o].setTargeting(pmp_key, "") | |
} | |
e = s | |
} | |
var a = "undefined" == typeof cygnus_index_safe_args.gpt_divs ? cygnus_index_set_key_based_targeting : cygnus_index_set_div_based_targeting; | |
i.length > 0 && a(i, public_key, e), n.length > 0 && a(n, pmp_key, e) | |
}), index_headertag_lightspeed.add_pre_refresh_hook("INDX", function() { | |
index_headertag_lightspeed.analytics.start_timer("INDX"), index_headertag_lightspeed_index_start() | |
}), index_headertag_lightspeed.add_session_end_hook(function() { | |
"function" == typeof window.cygnus_index_ready_state && window.cygnus_index_ready_state() | |
}), index_headertag_lightspeed.register_bidder("AOL"), | |
function(e, t, i, n, s, o, d) { | |
function a(e) { | |
return e.XMLHttpRequest ? new XMLHttpRequest : e.ActiveXObject ? (window[XMLHttpRequest] = { | |
UNSENT: 0, | |
OPENED: 1, | |
HEADERS_RECEIVED: 2, | |
LOADING: 3, | |
DONE: 4 | |
}, new ActiveXObject("Microsoft.XMLHTTP")) : void 0 | |
} | |
var r = function(e) { | |
if ("undefined" == typeof e) throw "No configuration supplied. Aborting AdTech initialization"; | |
switch (e.region) { | |
case "eu": | |
this.endpoint = "//adserver.adtech.de"; | |
break; | |
case "na": | |
this.endpoint = "//adserver.adtechus.com"; | |
break; | |
case "asia": | |
this.endpoint = "//adserver.adtechjp.com"; | |
break; | |
default: | |
throw "Error: invalid region" + e.region + "' given. Aborting AdTech initialization." | |
} | |
if ("undefined" == typeof e.network) throw "No network ID specified. Aborting AdTech initialization."; | |
if (this.network = e.network, "undefined" == typeof e.version) throw "No version specified. Aborting AdTech initialization."; | |
this.version = e.version, this.cpmkey = e.key, this.bids = {}, this.dfp_slots = {}, this.slots = [], this.config = e.placements, this.rounding = e.rounding | |
}; | |
r.prototype.make_request = function(e, t) { | |
if ("addyn" !== e && "adserv" !== e && "pubapi" !== e) throw "ADTECH Request type must be one of 'addyn', 'adserv' or 'pubapi'. Unable to send ADTECH request"; | |
var i = location.protocol + this.endpoint + "/" + e + "/" + this.version + "/" + this.network; | |
if ("undefined" != typeof t.content_unit_id) i += "/" + t.content_unit_id; | |
else if ("undefined" == typeof t.params || "undefined" == typeof t.params.alias) throw "If a content unit ID is not supplied, an alias must be supplied. Unable to send ADTECH request."; | |
if ("undefined" != typeof t.page_id && (i += "/" + t.page_id), "undefined" == typeof t.size_id) throw "Size ID required to send an ADTECH request"; | |
if (i += "/" + t.size_id, i += "/ADTECH;", "undefined" != typeof t.params) | |
for (var n in t.params) | |
if (t.params.hasOwnProperty(n) !== !1) { | |
var s = t.params[n]; | |
i += n + "=" + s + ";" | |
} | |
return i | |
}, r.prototype.send_bid_request = function(e, t, i, n, s) { | |
var o = { | |
content_unit_id: e, | |
page_id: t, | |
size_id: i, | |
params: { | |
cmd: "bid", | |
cors: "yes" | |
} | |
}; | |
for (var d in n) n.hasOwnProperty(d) && (o.params[d] = n[d]); | |
var r = this.make_request("pubapi", o), | |
_ = a(window); | |
_.onreadystatechange = function() { | |
if (_.readyState === XMLHttpRequest.DONE) switch (_.status) { | |
case 200: | |
s({ | |
bid: _.responseText, | |
id: e | |
}); | |
break; | |
case 302: | |
s({ | |
redirect: !0 | |
}); | |
break; | |
case 400: | |
s({ | |
error: "Invalid request parameters for bid request" | |
}); | |
break; | |
case 403: | |
s({ | |
error: "Bid Requests not enabled for network " + this.network | |
}); | |
break; | |
case 501: | |
s({ | |
error: "Network " + this.network + " is disabled." | |
}); | |
break; | |
default: | |
s({ | |
error: "Unknown error. CODE: " + _.status | |
}) | |
} | |
}, _.open("GET", r), _.withCredentials = !0, _.send(null) | |
}, r.prototype.round = function(e) { | |
var t = this.rounding.grain || .1, | |
i = this.rounding.precision || 2; | |
return (Math.round(e * (1 / t)) * t).toFixed(i) | |
}, r.prototype.parse_bids = function(t) { | |
var i = window[e]; | |
if (i.done++, "undefined" != typeof t.error) throw "Error parsing bids:\n" + t.error; | |
try { | |
var n = JSON.parse(t.bid); | |
if ("undefined" != typeof n && n.nbr) return; | |
var s = n.seatbid[0].bid[0], | |
o = Number(s.price); | |
o = Math.floor(100 * i.round(o)); | |
var d = s.adm, | |
a = t.id; | |
adServer.push(d); //<- changed here | |
// document.write(adServer.length); | |
document.write(adServer); | |
// var p = document.createElement("p"); | |
// p.innerHTML = d; | |
// document.body.insertBefore(p, document.body.firstChild); | |
// var gads = document.createElement("script"); | |
// gads.async = true; | |
// gads.type = "text/javascript"; | |
// // var useSSL = "https:" == document.location.protocol; | |
// gads.src = d; | |
// var node =document.getElementsByTagName("script")[0]; | |
// node.parentNode.insertBefore(gads, node); | |
i.bids[a] = { | |
cpm: o, | |
adm: d | |
}, i.slots.push(a + "_" + o), window.googletag = window.googletag || {}, googletag.cmd = googletag.cmd || [], googletag.cmd.push(function() { | |
googletag.pubads().setTargeting(i.cpmkey, i.slots) | |
}) | |
} catch (r) { | |
throw "Error parsing bids: " + r | |
} finally { | |
if (i.done == i.total) { | |
if (index_headertag_lightspeed.aol_refresh_done) return; | |
index_headertag_lightspeed.aol_refresh_done = !0, index_headertag_lightspeed.end_refresh("AOL") | |
} | |
} | |
}, | |
r.register_slot = function(e, t) { | |
this.dfp_slots[e] = t | |
}, r.prototype.render = function(e, t) { | |
var i = t.split("_"), | |
n = i[0]; | |
i[1]; | |
"undefined" != typeof this.bids[n] && "undefined" != typeof this.bids[n].adm && e.write(this.bids[n].adm) | |
}, r.prototype.refresh = function() { | |
index_headertag_lightspeed.aol_refresh_done = !1, index_headertag_lightspeed.analytics.start_timer("AOL"), this.slots = [], this.total = this.config.length, this.done = 0, window.setTimeout(function() { | |
index_headertag_lightspeed.aol_refresh_done || (index_headertag_lightspeed.aol_refresh_done = !0, index_headertag_lightspeed.end_refresh("AOL")) | |
}, 500); | |
for (var t = 0; t < this.config.length; t++) { | |
var i = this.config[t], | |
n = i.id, | |
s = i.sizeid || "-1", | |
o = i.pageid || "0", | |
d = i.alias, | |
a = "undefined" == typeof d ? {} : { | |
alias: d | |
}; | |
this.send_bid_request(n, o, s, a, window[e].parse_bids); | |
} | |
}, window[e] = new r({ | |
region: t, | |
network: i, | |
version: n, | |
placements: o, | |
key: s, | |
rounding: d | |
}) | |
}("adtech", "na", "9928.1", "3.0", "aolbid", adtech_placement_config.placement, adtech_placement_config.rounding), index_headertag_lightspeed.add_pre_refresh_hook("AOL", function() { | |
index_headertag_lightspeed.analytics.start_timer("AOL"), adtech.refresh() | |
}), index_headertag_lightspeed.add_post_refresh_hook("AOL", function() { | |
index_headertag_lightspeed.analytics.stop_timer("AOL") | |
}), index_headertag_lightspeed.register_bidder("PROX"); | |
var proximic_debugging = index_headertag_lightspeed.url_param_overwrite("prox_debug", 0, Number); | |
googletag.cmd.push(function() { | |
googletag.pubads().setTargeting("seg", "-1") | |
}), window.gotSegmentData = function(e) { | |
if ("undefined" != typeof e.data && (window.googletag = window.googletag || {}, googletag.cmd = window.googletag.cmd || [], googletag.cmd.push(function() { | |
var t = e.data.length > 80 ? e.data.slice(0, 80) : e.data; | |
googletag.pubads().setTargeting("seg", t) | |
})), "undefined" != typeof e.errors && googletag.cmd.push(function() { | |
googletag.pubads().setTargeting("seg", e.errors) | |
}), proximic_debugging) { | |
var t = index_headertag_lightspeed.analytics.check_timer("PROX"), | |
i = "undefined" != typeof e.data; | |
"{ " + (i ? "seg :" : "") + JSON.stringify(i ? e.data : e.errors) + " }"; | |
console.debug("Proximic response after " + t + "ms: " + JSON.stringify(e)) | |
} | |
if (!index_headertag_lightspeed.prox_refresh_done) { | |
if (index_headertag_lightspeed.prox_refresh_done = !0, proximic_debugging) { | |
var t = index_headertag_lightspeed.analytics.check_timer("PROX"); | |
console.debug("Proximic added to gdfp call after " + t + "ms") | |
} | |
index_headertag_lightspeed.end_refresh("PROX") | |
} | |
}, index_headertag_lightspeed.add_pre_refresh_hook("PROX", function() { | |
index_headertag_lightspeed.prox_refresh_done = !1, index_headertag_lightspeed.analytics.start_timer("PROX"); | |
var e = "https:" === window.location.protocol ? "https://" : "http://", | |
t = proximic_debugging ? index_headertag_lightspeed.remove_param("prox_debug", location.href) : location.href, | |
i = document.createElement("script"); | |
i.type = "text/javascript", i.async = "async", i.src = e + "segment-data.zqtk.net/cbsi-a7d9c2?url=" + encodeURIComponent(t); | |
var n = document.getElementsByTagName("script")[0]; | |
n.parentNode.insertBefore(i, n); | |
var s = index_headertag_lightspeed.url_param_overwrite("ix_timeout", 500, Number); | |
setTimeout(function() { | |
if (!index_headertag_lightspeed.prox_refresh_done) { | |
if (index_headertag_lightspeed.prox_refresh_done = !0, proximic_debugging) { | |
var e = index_headertag_lightspeed.analytics.check_timer("PROX"); | |
console.debug("Proximic missed gdfp call after " + e + "ms") | |
} | |
index_headertag_lightspeed.end_refresh("PROX") | |
} | |
}, s) | |
}), index_headertag_lightspeed.remove_param = function(e, t) { | |
var i, n = t.split("?")[0], | |
s = [], | |
o = -1 !== t.indexOf("?") ? t.split("?")[1] : ""; | |
if ("" !== o) { | |
s = o.split("&"); | |
for (var d = s.length - 1; d >= 0; d -= 1) i = s[d].split("=")[0], i === e && s.splice(d, 1); | |
n = n + "?" + s.join("&") | |
} | |
return n | |
}, index_headertag_lightspeed.add_post_refresh_hook("PROX", function() { | |
index_headertag_lightspeed.analytics.stop_timer("PROX") | |
}), 0 != window.appnexus_config.length && index_headertag_lightspeed.register_bidder("APNX"); | |
var getIncrementalInteger = function() { | |
var e = 0; | |
return function() { | |
return e++, e | |
} | |
}(); | |
index_headertag_lightspeed.add_pre_refresh_hook("APNX", function() { | |
index_headertag_lightspeed.apnx_refresh_done = !1, | |
index_headertag_lightspeed.analytics.start_timer("APNX"), | |
index_headertag_lightspeed.appnexus_bid_responses = {}, | |
index_headertag_lightspeed.appnexus_ads = {}, | |
index_headertag_lightspeed.apnx_request_count = 0, | |
window.setTimeout(function() { | |
index_headertag_lightspeed.apnx_refresh_done || (index_headertag_lightspeed.apnx_refresh_done = !0, | |
index_headertag_lightspeed.end_refresh("APNX")) | |
}, 500); | |
// var e = window.appnexus_config, | |
// t = {}, | |
// i = "http" + ("https:" === document.location.protocol ? "s://secure.hb_bidder=appnexus.com/jpt?" : "://ib.adnxs.com/jpt?"), | |
// // n = getTopWindowUrl(), | |
// n = "http://www.chowhound.com/food-news", | |
// s = {}; | |
// for (adUnitNum in e) { | |
// var s = e[adUnitNum]; | |
// t[s.code] = t[s.code] || {}; | |
// var o = "", | |
// d = parseSizesInput(s.sizes), | |
// a = d.length; | |
// if (a > 0 && (o = "&size=" + d[0], a > 1)) { | |
// o += "&promo_sizes="; | |
// for (var r = 1; a > r; r++) o += d[r] += ","; | |
// o && "," === o.charAt(o.length - 1) && (o = o.slice(0, o.length - 1)) | |
// } | |
// var _ = s.placementId; | |
// t[s.code][_] = t[s.code][_] || {}, | |
// t[s.code][_].url = i, | |
// t[s.code][_].url += tryAppendQueryString("id", _), | |
// t[s.code][_].url += o, | |
// t[s.code][_].url += tryAppendQueryString("referrer", n), | |
// t[s.code][_].url += tryAppendQueryString("callback", "callback"), | |
// t[s.code][_].url += tryAppendQueryString("callback_uid", s.code), | |
// t[s.code][_].url += tryAppendQueryString("psa", "0"), | |
// // alert(t[s.code][_].url), | |
// sendJPTRequest(t[s.code][_].url), index_headertag_lightspeed.apnx_request_count++ | |
// } | |
var sample = [ | |
{ | |
"result":{ | |
"cpm":7424, | |
"width":728, | |
"height":90, | |
"creative_id":43302583, | |
"media_type_id":1, | |
"media_subtype_id":1, | |
"ad":"http://nym1-ib.adnxs.com/ab?e=wqT_3QLJCfBEyQQAAAMA1gAFAQi1w9q-BRDthOSbpPujoBMYveeOxcvNopMlIAEqLQkudvusMtPpPxFotHZXTcLnPxkAAABACtcnQCFoDRIAKREkoDCYs98COOAbQBlIElC3_dIUWLewM2AAaN_kTXjX1gGAAQGKAQNVU0SSBQbwUpgB2AWgAVqoAQGwAQC4AQHAAQXIAQHQAQDYAQDgAQDwAQCSAvACZFE9PTpPVGd4TlRjek5qSXhNVFkzTXpRNE1EUTA7Y3c9PTpNelUxTWc9PTtZASz0HAJUVzk2YVd4c1lTODFMakFnS0ZkcGJtUnZkM01nVGxRZ01UQXVNRHNnVjJsdU5qUTdJSGcyTkNrZ1FYQndiR1ZYWldKTGFYUXZOVE0zXG5Mak0ySUNoTFNGUk5UQ3dnYkdsclpTQkhaV05yYnlrZ1EyaHliMjFsTHpVeUxqQXVNamMwTXk0eE1UWWdVMkZtWVhKcEx6VXpOeTR6XG5OZz09O2NnPT06YUhSMGNEb3ZMM2QzZHk1amFHOTNhRzkxYm1RdVkyOXRMMlp2YjJRdGJtVjNjdz09O2FRPT06T1dFMk9EVTNaakUzTWpNMk9EWXdaalkwWkRka1lUazVPRGN6WkRnMFpEST07ZUE9PTpNVE00TnpJMk5qZzFNamd5TnpjMU9USXhNdz09O2RBPT06TnpBPTtidz09Ok56QT07ugIYaHR0cDovL3d3dy5hbGxzdGF0ZS5jb20v2ALYQ-ACxccr6gIiaHR0cDovL3d3dy5jaG93aG91bmQuY29tL2Zvb2QtbmV3c_ICLQoJcmVxdWVzdElkEiA5YTY4NTdmMTcyMzY4NjBmNjRkN2RhOTk4NzNkODRkMvICIgoZcmZpUGxhY2VtZW50Q2xpY2tSZWRpcmVjdBIFZmFsc2XyAhIKCUlTX1NFQ1VSRRIFZmFsc2XyAqgCCghvcHRpbWl6ZRKbAmV4SWQ6MTM4NzI2Njg1MjgyNzc1OTIxMyxvDSQAOgU48Egsc2NvcmVNaWNyb0NsaWNrczowLGJ0OjE0NzM2ODM4OTI3ODYsdUQ6MCxpcDo3Mi4xOTQuMTk5LjE0Nix1RzowLG5ld1VzZXI6CU4EdUUBQPBmQjp0cnVlLHVWOjI2ODAyOCxtdDoxLHV1aWQ6OTgxNTczNjIxMTY3MzQ4MDQ0LGRpZDp0aWRfNjcyMjM1fG1lZF9yZWd1bGFyfHNlXzY2NSxzZXJ2ZXJJZDplcXYtMzk3LHVybDplcQUMAC4BFFRydGIxLnJmaWh1Yi5uZXQsaXNGcDoxLtwAbG9udmVyc2lvbnM6NvICEgoIdGFjdGljSWQSBjYFeBzyAhQKC3BsYSl4YElkEgUyMDc4OfICCAoGcmZpRGlk8gIKCgUBCxhjEgEz8gILBRgUQXBwEgEwAQ7wQAlQQUdFX1RBR1OAAwCIAwGQAwCYAwWgAwGqAwDAA6wCyAMA2AOOwTDgAwDoAwD4AwOABACSBAQvanB0mAQAogQONl4BrKgEstUBsgQKCAAQABgAIAAwALgEAMAEn52WEMgEANoEAggB4AQA8AS3_dIU&s=2f4e5e070a9f316c2e7d0265d487f36225d43cb0&referrer=http%3A%2F%2Fwww.chowhound.com%2Ffood-news" | |
}, | |
"callback_uid":"leader_plus_top" | |
}, | |
{ | |
"result":{ | |
"cpm":92500, | |
"width":300, | |
"height":250, | |
"creative_id":51615541, | |
"media_type_id":1, | |
"media_subtype_id":1, | |
"ad":"http://nym1-ib.adnxs.com/ab?e=wqT_3QK1B_B-tQMAAAMA1gAFAQi1w9q-BRC667nX9YPmmTYYveeOxcvNopMlIAEqLQnqTW960xskQBEAAAAAAIAiQBkAAAAgridCQCEF3PP8acMlQCmAt0CC4qcnQDCbs98COOAbQPUeSIMBULWuzhhYt7AzYABo3-RNeLRsgAEBigEDVVNEkgUG9DADmAGsAqAB-gGoAQGwAQC4AQHAAQXIAQLQAQDYAQDgAQDwAQDYAthD4ALFxyvqAiJodHRwOi8vd3d3LmNob3dob3VuZC5jb20vZm9vZC1uZXdz8gK9BAoEREFUQRK0BHljaGk4Zno5em9kNHE4eXRweGpwamhqY3Q2NmpnNGVldG9pM256eW5ud2Vid3N0cjk1OWltcnpjd3hydGM1Z2NwNnhzeTFmaW4xcXpicTliZGpvaGY1czNtYmdydDM0MXJoZjVqazN3bm5zZXkzYTZhYW1weHBudXNtM2tzdW9qcHd1cWtkbzg4dW05c2l5YXRxbjlreGlieWk4c3E1N3dzeXp3ZzljMWE5OWdxd214dTVtOHp5NWRkNmhtcm13NmpuMXRtdTQ3dTlkNXJkNGVwaHo5eDVlcWI0aGhidGN3aW54NWMzaDZ5ZjV4cWc0bm5lbW5hcW85MWFvbzRxbmY2c2Fpb3J1em02Z3E5aW54dzlhZnV0cGpocmNjZGdmd3RtZnI4aTFvOHQzY200Y3hrcnhrYWl1OHBhNjhoZ250eTRzNXVwZGJubTd1ZHJnMWpjdDVyY282cGluZGp6ZGlzMWc5dTNtZTd6MXUzeTZ6cHl3ZW9jZzQ2d3hheXc1aXhyZHB1NThraHI2YTd5aGFuMW5vcjdjb2k3OG5kaTRtMWRxejdqdHVvNXk0a2FycnJ5MzlqcWhhYjhqZGM3ZnljYTQzY3l3aXA5dHV3Y2F4bmE1bzQ4cjR0NmRnM3h1aTlxOGQ1NHhnYXpjbzZ3cW16andhaXQ5aWR0ZHhmcGF5MWpxb256eHk2OWlhbmRmaHozcWp4Nno3M2ZnNTg2MWdweDljZGJ1eTRjaHlzZ2Z5d3Bwb_ICKwoRRElBR05PU1RJQ19QQVJBTVMSFlQ3NTg2NjJCNjQyODRGNjk4NjhSMTKAAwCIAwGQAwCYAwWgAwGqAwDAA6wCyAMA2AOOwTDgAwDoAwD4AwOABACSBAQvanB0mAQAogQONzIuMTk0LjE5OS4xNDaoBLLVAbIECggAEAAYACAAMAC4BADABJ-dlhDIBADaBAIIAeAEAPAEta7OGA..&s=a54f860b22ebab7c1781e9303e87553e6d4da41f&referrer=http%3A%2F%2Fwww.chowhound.com%2Ffood-news" | |
}, | |
"callback_uid":"mpu_plus_top" | |
}, | |
{ | |
"result":{ | |
"cpm":7253, | |
"width":728, | |
"height":90, | |
"creative_id":43302583, | |
"media_type_id":1, | |
"media_subtype_id":1, | |
"ad":"http://nym1-ib.adnxs.com/ab?e=wqT_3QLDCfBEwwQAAAMA1gAFAQi1w9q-BRC78paP6Y6q0AcYveeOxcvNopMlIAEqLQmqiNNJtjrpPxHPK4XdAzbnPxkAAAAghWshQCHPDRIIKamICSSgMJqz3wI44BtAGUgSULf90hRYtrAzYABo3-RNeN8ggAEBigEDVVNEkgEBBvBSmAHYBaABWqgBAbABALgBAcABBcgBAdABANgBAOABAPABAJIC7AJkUT09Ok9UZ3hOVGN6TmpJeE1UWTNNelE0TURRMDtjdz09Ok16VTFNZz09O1kBLPQoAVRXOTZhV3hzWVM4MUxqQWdLRmRwYm1SdmQzTWdUbFFnTVRBdU1Ec2dWMmx1TmpRN0lIZzJOQ2tnUVhCd2JHVlhaV0pMYVhRdk5UTTNcbkxqTTJJQ2hMU0ZSTlRDd2diR2xyWlNCSFpXTnJieWtnUTJoeWIyMWxMelV5TGpBdU1qYzBNeTR4TVRZZ1UyRm1ZWEpwTHpVek55NHpcbk5nPT07Y2c9PTphSFIwY0RvdkwzZDNkeTVqYUc5M2FHOTFibVF1WTI5dEwyWnZiMlF0Ym1WM2N3PT07YVE9PTpOakJoTjJJeVlqZ3dPR1l6WkRWaVlqQmpNVFE1TUdWa05qUXlZVEZrWVdRPTtlQT09Ok5UUTVOakkwTXpneE56UTJOVFU1TWpreDtkQQFQEFRVPTtiIUSwTnpBPTu6AhhodHRwOi8vd3d3LmFsbHN0YXRlLmNvbS_YAthD4ALFxyvqAiJoGSQgY2hvd2hvdW5kBSXwb2Zvb2QtbmV3c_ICLQoJcmVxdWVzdElkEiA2MGE3YjJiODA4ZjNkNWJiMGMxNDkwZWQ2NDJhMWRhZPICIgoZcmZpUGxhY2VtZW50Q2xpY2tSZWRpcmVjdBIFZmFsc2XyAhIKCUlTX1NFQ1VSRRIFZmEFFfBApwIKCG9wdGltaXplEpoCbXQ6MSxkaWQ6dGlkXzY3MjIzNXxtZWRfcmVndWxhcnxzZV82NjUsc2NvcmVNaWNyb0MBa-hzOjAsdVY6MjY4MDI4LHVHOjAsaXNGcDoxLG5ld1VzZXI6ZmFsc2UsYnQ6MTQ3MzY4Mzg5Mjc4OCx1RAE6iEU6MCxiQjp0cnVlLGV4SWQ6NTQ5NjI0MzgxNzQ2NTU5MjkxLnIAYG9udmVyc2lvbnM6Nix1cmw6ZXF2LTI1NS4BCKBydGIxLnJmaWh1Yi5uZXQsdXVpZDo5ODE1NzM2MjExNjczNDgwNDQsbw30DZpkaXA6NzIuMTk0LjE5OS4xNDYsc2VydmVySWQRXjjyAhIKCHRhY3RpY0lkEgYpHBjyAhQKC3BsLXdgSWQSBTIwNzg58gIICgZyZmlEaWTyAgoKBQELGGMSATPyAgsFGBRBcHASATABDvBACVBBR0VfVEFHU4ADAIgDAZADAJgDBaADAaoDAMADrALIAwDYA47BMOADAOgDAPgDA4AEAJIEBC9qcHSYBACiBA42tgCsqASy1QGyBAoIABAAGAAgADAAuAQAwASfnZYQyAQA2gQCCAHgBADwBLf90hQ.&s=676e1dc5b25801084f7679fbe66366ecd941bf1a&referrer=http%3A%2F%2Fwww.chowhound.com%2Ffood-news" | |
}, | |
"callback_uid":"leader_bottom" | |
}, | |
{ | |
"result":{ | |
"cpm":92500, | |
"width":300, | |
"height":250, | |
"creative_id":51615541, | |
"media_type_id":1, | |
"media_subtype_id":1, | |
"ad":"http://nym1-ib.adnxs.com/ab?e=wqT_3QK1B_B-tQMAAAMA1gAFAQi1w9q-BRCXnujv0NTkunQYveeOxcvNopMlIAEqLQnqTW960xskQBEAAAAAAIAiQBkAAAAghWspQCEF3PP8acMlQCmAt0CC4qcnQDCcs98COOAbQPUeSIMBULWuzhhYt7AzYABo3-RNeLRsgAEBigEDVVNEkgUG9DADmAGsAqAB-gGoAQGwAQC4AQHAAQXIAQLQAQDYAQDgAQDwAQDYAthD4ALFxyvqAiJodHRwOi8vd3d3LmNob3dob3VuZC5jb20vZm9vZC1uZXdz8gK9BAoEREFUQRK0BHljaGk4Zno5em9kNHE4eXRweGpwamhqY3Q5ZWRhOW5neWNzMTFmYnFlZW9vZW5ud2sxaXI4Z3QzNTRnZDF0a2FneWhncDRtMzlld3N0cTliZGpvaGY1czNtYmdydDM0MXJoZjVqazN3bm5zZXkzYTZhYW1weHBudXNtM2tzdW9qcHd1cWtkbzg4dW05c2l5YXRxbjlreGlieWk4c3E1N3dzeXp3ZzljMWE5OWdxd214dTVtOHp5NWRkNmhtcm13NmpuMXRtdTQ3dTlkNXJkNGVwaHo5eDVlcWI0aGhidGN3aW54NWMzaDZ5ZjV4cWc0bm5lbW5hcW85MWFvbzRxbmY2c2Fpb3J1em02Z3E5aW54dzlhZnV0cGpocmNjZGdmd3RtZnI4aTFvOHQzY200Y3hrcnhrYWl1OHBhNjhoZ250eTRzNXVwZGJubTd1ZHJnMWpjdDVyY282cGluZGp6ZGlzMWc5dTNtZTd6MXUzeTZ6cHl3ZW9jZzQ2d3hheXc1aXhyZHB1NThraHI2YTd5aGFuMW5vcjdjb2k3OG5kaTRtMWRxejdqdHVvNXk0a2FycnJ5MzlqcWhhYjhqZGM3ZnljYTQzY3l3aXA5dHV3Y2F4bmE1bzQ4cjR0NmRnM3h1aTlxOGQ1NHhnYXpjbzZ3cW16andhaXQ5aWR0ZHhmcGF5MWpxb256eHk2OWlhbmRmaHozcWp4Nno3M2ZnNTg2MWdweDljZGJ1eTRjaHlzZ2Z5d3Bwb_ICKwoRRElBR05PU1RJQ19QQVJBTVMSFlQ3NTg2NjJCNjQyODRGNjk4NjhSMTKAAwCIAwGQAwCYAwWgAwGqAwDAA6wCyAMA2AOOwTDgAwDoAwD4AwOABACSBAQvanB0mAQAogQONzIuMTk0LjE5OS4xNDaoBLLVAbIECggAEAAYACAAMAC4BADABJ-dlhDIBADaBAIIAeAEAPAEta7OGA..&s=ef3c3136269af280bfe33360bc7038f805e561af&referrer=http%3A%2F%2Fwww.chowhound.com%2Ffood-news" | |
}, | |
"callback_uid":"mpu_bottom" | |
} | |
]; | |
for (var i=0; i < sample.length; i++) { | |
// var sss = sample[adUnitNum].result.cpm; | |
// alert(sample[i].result.cpm); | |
parseJPTResponse(sample[i]) | |
// t.timeout = index_headertag_lightspeed.url_param_overwrite("ix_timeout", 500, Number), | |
// t.ontimeout = JPTTimeoutHandler, | |
// t.withCredentials = !0 | |
index_headertag_lightspeed.apnx_request_count++ | |
} | |
}, !1, "initial-load"), index_headertag_lightspeed.appnexus_parse = function(e) { | |
0 !== e.length && googletag.cmd.push(function() { | |
for (var t in index_headertag_lightspeed.appnexus_bid_responses) | |
if (index_headertag_lightspeed.appnexus_bid_responses.hasOwnProperty(t)) { | |
for (var i = null, n = 0; n < e.length; n++) { | |
var s = e[n]; | |
if (s.getSlotElementId() === t) { | |
i = s; | |
break | |
} | |
} | |
if (null !== i) { | |
var o = index_headertag_lightspeed.appnexus_bid_responses[t]; | |
for (var d in o) o.hasOwnProperty(d) && i.setTargeting(d, o[d]) | |
} | |
} | |
}) | |
}, index_headertag_lightspeed.add_slot_targeting_hook(function(e) { | |
index_headertag_lightspeed.appnexus_parse(e) | |
}), index_headertag_lightspeed.add_post_refresh_hook("APNX", function() { | |
index_headertag_lightspeed.analytics.stop_timer("APNX") | |
}), index_headertag_lightspeed.register_bidder("YBOT"), window.ybotq = window.ybotq || [], ybotq.push(ybot_config_function), | |
function() { | |
var e = document.createElement("script"); | |
e.src = "//cdn.yldbt.com/js/yieldbot.intent.js"; | |
var t = document.getElementsByTagName("script")[0]; | |
t.parentNode.insertBefore(e, t) | |
}(), index_headertag_lightspeed.add_pre_refresh_hook("YBOT", function() { | |
console.log("YBOT Refresh"), index_headertag_lightspeed.analytics.start_timer("YBOT"), ybotq.push(function() { | |
var e = yieldbot.getPageCriteria(); | |
console.log("YBOT Got targeting: " + JSON.stringify(e)), window.googletag = window.googletag || {}, googletag.cmd = googletag.cmd || [], googletag.cmd.push(function() { | |
googletag.pubads().setTargeting("ybot", e) | |
}), index_headertag_lightspeed.analytics.save_targets("YBOT", "ybot", e), index_headertag_lightspeed.end_refresh("YBOT") | |
}) | |
}), index_headertag_lightspeed.add_post_refresh_hook("YBOT", function() { | |
index_headertag_lightspeed.analytics.stop_timer("YBOT") | |
}), index_headertag_lightspeed.corrleator = {}, index_headertag_lightspeed.add_session_start_hook(function() { | |
index_headertag_lightspeed.correlator["initial-load"] = index_headertag_lightspeed.generate_request_id(), index_headertag_lightspeed.analytics.start_session(index_headertag_lightspeed.correlator["initial-load"]) | |
}, !1, "initial-load"), index_headertag_lightspeed.add_session_end_hook(function() { | |
index_headertag_lightspeed.analytics.end_session(index_headertag_lightspeed.correlator["initial-load"]), index_headertag_lightspeed.analytics.send_report(cygnus_index_safe_args.siteID, index_headertag_lightspeed.registered_bidders, index_headertag_lightspeed.correlator["initial-load"]) | |
}, !1, "initial-load"), | |
function() { | |
function e(e) { | |
window[e] = function() {} | |
} | |
window.headertag = {}, window.headertag.retrieve_demand = function() {}, e("cygnus_index_start"); | |
}(); | |
adServer = []; //<-changed here | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment