Created
December 4, 2013 21:56
-
-
Save colinhicks/7796315 to your computer and use it in GitHub Desktop.
Revisions
-
colinhicks created this gist
Dec 4, 2013 .There are no files selected for viewing
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 charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,1641 @@ window.OB_releaseVer = "131699"; OBR = window.OBR || {}; OBR.i = OBR.i || []; OBR.na = OBR.na || {}; window.OBR$ = function(d) { return document.getElementById(d) }; OBR.c = OBR.c || function() { var d = {}, a = { F: function() { return d }, j: function(a) { d.S = a; d.la = []; d.startTime = (new Date).getTime() }, startTime: function() { return d.startTime }, log: function(a) { var e = ((new Date).getTime() - d.startTime) / 1E3; 1E3 > d.la.length && d.la.push(e + " >" + a) console.log(a); }, printLog: function() { if (d.S.b.cf) window.console.log(d.la.join("\n")); else { var a = d.S.a.Aa(); a && (a.innerHTML = d.la.join("<br>"), a.style.display = "block") } return d.la.join("\n") } }; a.j(OBR); return a }(); OBR.printLog = OBR.c.printLog; OBR.o = function() { this.C = [] }; OBR.o.prototype.add = function(d, a) { var c; "string" === typeof d && "function" === typeof a && (c = {}, c.name = d, c.ue = a, this.C.push(c)) }; OBR.o.prototype.Bb = function(d) { var a, c; OBR.c.log("remove event :" + d); a = 0; for (c = this.C.length; a < c; a += 1) if (this.C[a] && this.C[a].name && this.C[a].name === d) try { this.C.splice(a, 1) } catch (e) { OBR.c.log("rm evnt err: " + e) } }; OBR.o.prototype.k = function(d, a, c) { var e, b, g, f; a = a || []; c = !! c; OBR.c.log("event fire:" + d); e = 0; for (b = this.C.length; e < b; e += 1) if (g = this.C[e].name || "", f = this.C[e].ue, g === d) try { f.apply(this, a) } catch (k) { OBR.c.log("fire evnt *" + d + "* error: " + k) }!0 === c && this.Bb(d) }; OBR.o.prototype.N = function() { this.C = [] }; OBR.a = OBR.a || function() { var d = {}, a = {}, c = document, e = OBR; a.F = function() { d.S = e; return d }; a.j = function(b) { e = b }; a.$ = function() { return function() {} }; a.Se = function() { var b = window.jQuery; return void 0 !== b ? !(/1\.(0|1|2|3|4)\.(0|1)/.test(b.fn.jquery) || /^1\.1/.test(b.fn.jquery) || /^1\.2/.test(b.fn.jquery) || /^1\.3/.test(b.fn.jquery)) : !1 }; a.U = function(b) { return null === b || isNaN(b) ? null : e.n("outbrain_widget_" + b) }; a.Aa = function() { return e.n("ob_holder") }; a.nb = function() { if (!e.n(e.b.Ia)) { var b = e.a.createElement("iframe", e.b.Ia), g = b.style; g.display = "none"; g.width = "1px"; g.height = "1px"; b.src = "about:blank"; (g = a.Aa()) || (g = a.ic()); e.a.mb(b, g) } }; a.ic = function() { if (c.body) return c.body; var b; b = e.a.za("", "", "body", !0); return 0 >= b.length ? c.lastChild : b[0] }; a.createElement = function(b, a, f) { b = c.createElement(b); "string" === typeof a && b.setAttribute("id", a); "string" === typeof f && (b.style.cssText = f); return b }; a.lb = function(b) { if (e.b.Nd === e.b.Nb) try { document.createStyleSheet().cssText = b } catch (a) {} else { var f = c.createElement("style"), d = c.body ? "string" === typeof c.body.style.WebkitAppearance : !1; f.type = "text/css"; c.getElementsByTagName("head")[0].appendChild(f); f[d ? "innerText" : "innerHTML"] = b } }; a.B = function(b, a) { var f = c.createElement("script"); f.type = e.b.uf; f.src = b; f.async = !! a; f.defer = !1; return f }; a.Zg = function(b, a) { var f = e.a.createElement("link", b); f.setAttribute("rel", "stylesheet"); f.setAttribute("type", e.b.ee); a && f.setAttribute("href", a); return f }; a.Wd = function(b) { var a = e.n("ob_iframe"); a && (a.src = b) }; a.Qc = function() { var b; b = isNaN(b) ? 1E5 : b; return Math.floor(Math.random() * b) }; a.eg = function(b, a, f) { return b.replace(a, f) }; a.Ie = function(b, a) { var f = []; f.push('<body onload="'); f.push("var js = document.createElement('script');"); f.push("js.src = '" + b + "';"); "number" === typeof a && f.push("js.onerror = function(){ top.OBR.extern.errorInjectionHandler(" + a + ") };"); f.push("var d = document;d.getElementsByTagName('head')[0].appendChild(js);\">"); f.push("<script type='text/javascript'>"); f.push("window.OBR={extern:{}};"); f.push("OBR.extern.returnedHtmlData=function(json,idx){(top.OBR.extern.returnedHtmlData)&& top.OBR.extern.returnedHtmlData(json,idx); };"); f.push("OBR.extern.returnedIrdData=function(json,idx){(top.OBR.extern.returnedIrdData)&& top.OBR.extern.returnedIrdData (json,idx);};"); f.push("OBR.extern.returnedJsonData=function(json,idx){(top.OBR.extern.returnedJsonData)&& top.OBR.extern.returnedJsonData(json,idx);};"); f.push("OBR.extern.returnedError=function(json){(top.OBR.extern.returnedError)&& top.OBR.extern.returnedError(json);};"); f.push("window.outbrain={};"); f.push("outbrain.returnedIrdJsonData=function(json,idx){(top.outbrain.returnedIrdJsonData) && top.outbrain.returnedIrdJsonData(json,idx); };"); f.push("outbrain.returnedJsonData =function(json,idx){(top.outbrain.returnedJsonData) && top.outbrain.returnedJsonData(json,idx); };"); f.push("outbrain.returnedError=function(json){(top.outbrain.returnedError) && top.outbrain.returnedError(json);};"); f.push("\x3c/script>"); f.push("</body>"); return f.join("") }; a.He = function() { var b; if (b = OBR.n("objsonpp")) if (a.hf()) a.V(b.parentNode) && b.parentNode.removeChild(b); else return OBR.n("objsonpp"); b = document.createElement("iframe"); b.id = "objsonpp"; b.lg && (b.lg = "seamless"); (b.frameElement || b).style.cssText = "width: 0; height: 0; border: 0"; b.src = "javascript:false"; document.body.appendChild(b); return b }; a.Ze = function(b) { var g = a.He(), g = g.contentWindow || g.contentDocument; g.document && (g = g.document); g.open().write(b); g.close() }; a.H = function(b) { var a = e.b.ie, f, c; c = a.getElementsByTagName("head"); try { c && 0 < c.length ? c[0].insertBefore(b, c[0].firstChild) : (f = a.getElementsByTagName("script"), f[0].insertBefore(b, f[0].firstChild)) } catch (d) { e.c.log("Err insertToHead:" + d) } }; a.bf = function(b, g) { var f = a.Ie(g, b); a.qb(f) || a.Ze(f) }; a.bh = function(b) { b = b || OBR; return "function" !== typeof b.o ? (OBR.c.log("namespace.EventManager not function"), null) : new b.o }; a.L = function(b) { return encodeURIComponent(b) }; a.V = function(b) { return null !== b }; a.qf = function() { var b, g, f, c, d; b = document.getElementsByTagName("div"); g = b.length; d = e.b.ad; for (f = 0; f < g; f += 1) if (c = b[f].getAttribute(d), a.qb(c)) return !0; return !1 }; a.pf = function(b) { var g; if (a.pb(b)) return !1; g = b.hb().recMode || ""; b = b.hb().dynamicWidgetLayout || ""; return "1" !== (e.b.jg[g] || "") && "1" !== (e.b.kg[b] || "") || !a.qf() ? !1 : !0 }; a.pb = function(b) { return "undefined" === typeof b || null === b }; a.qb = function(b) { return a.pb(b) || "" === b }; a.za = function(b, g, f, e) { var d, l, m, p, n; l = []; e = !! e; d = a.qb(d) ? !0 : !1; f = c.getElementsByTagName(f || "*"); m = 0; for (p = f.length; m < p; m += 1) n = "class" === b ? f[m].className : f[m].getAttribute(b), null !== n && (!1 === d && (n = n.toLowerCase(), g = g.toLowerCase()), (n = "" === b ? !0 : e ? -1 < n.indexOf(g) : n === g) && l.push(f[m])); return l }; a.dg = function(b) { var a = window; a.detachEvent ? a.detachEvent("onscroll", b) : a.removeEventListener && a.removeEventListener("scroll", b, !1) }; a.u = function(b, a, f) { b.attachEvent ? b.attachEvent("on" + a, function() { f.call(b) }) : b.addEventListener && b.addEventListener(a, f, !1) }; a.mb = function(b, a) { try { a.appendChild(b) } catch (f) { e.c.log("fail insert into Dom:" + f) } }; a.Pa = function(b) { b = e.n(b); !a.pb(b) && a.V(b.parentNode) && b.parentNode.removeChild(b) }; a.insertBefore = function(b, a) { return a.parentNode.insertBefore(b, a) }; a.isArray = function(b) { return b instanceof Array ? !0 : "[object Array]" === Object.prototype.toString.call(b) }; a.Sa = function(b, a) { var f = /htt(p|ps)?:\/\/127\.0\.0\.1(:\d\d\d\d)?$/i; return /htt(p|ps)?:\/\/([\w\-]*|[\w\-]*\.[\w\-]*)\.outbrain\.com(:\d\d\d\d)?$/i.test(b) || f.test(b) ? b : a }; a.Mg = function(b) { b = b.replace(/^(\s*)/g, ""); var a = c.createElement("div"); a.innerHTML = b; return a.childNodes }; a.D = function(b, a) { return b ? b.getAttribute(a) : null }; a.A = function(b, a, f) { b && b.setAttribute(a, f) }; a.Fd = function(b) { b && (b.className += " ob_clicked") }; a.O = function(b, a) { b = b.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]"); var f, c; try { return f = RegExp("[\\?&]" + b + "=([^&#]*)", "i"), c = f.exec(window.location.href), null === c ? a : c[1] } catch (e) { return a } }; a.$d = function(b) { "string" === typeof b && 0 < b.indexOf("#") && (b = b.substr(0, b.lastIndexOf("#"))); return b }; a.Wb = function(b) { var a = e.b.Z + "/strip_default.png"; b.src !== a && (b.alt = "", b.title = "", b.src = a) }; a.me = function() { var b = null, a, f, e = null; if ("string" === typeof window.OB_MP_feed) b = window.OB_MP_feed; else if ((a = c.getElementsByTagName("head")) && 0 < a.length) for (f = a[0].getElementsByTagName("link"), a = 0; a < f.length; a += 1) if (e = f[a], null !== e.type && ("application/rss+xml" === e.type || "application/atom+xml" === e.type) && null !== e.href && "" !== e.href) { b = e.href; break } return b }; a.pc = function(b) { var a = null; b.currentStyle ? a = b.currentStyle.color : window.getComputedStyle && (a = document.defaultView.getComputedStyle(b, null).getPropertyValue("color")); return a }; a.pg = function() { var b = a.Aa(), c, f; a.V(b) && (c = e.a.createElement("span", "ob_a"), a.insertBefore(c, b), c.innerHTML = ".", f = a.pc(c), a.Pa("ob_a"), c = e.a.createElement("a", "ob_a"), c.setAttribute("href", "void(0)"), c.innerHTML = ".", a.insertBefore(c, b), b = a.pc(c), a.Pa("ob_a"), f = "rgb(0, 0, 0)" === f || "#000000" === f ? "#555" : f, a.lb(".ob-tcolor{color:" + f + "} .ob-lcolor{color:" + b + "} .ob-bgtcolor{background-color:" + f + "} .item-link-container:hover .ob-tcolor{border-color:" + f + "}")) }; a.Ee = function() { var b = a.nc("property", "og:url", "meta", "content"); null === b && (b = a.nc("rel", "canonical", "link", "href")); null === b && (b = window.location.href); return b }; a.nc = function(b, c, f, e) { var d = null; b = a.za(b, c, f, !1); null !== b && 0 < b.length && (d = b[0].getAttribute(e)); return d }; a.Xd = function(b) { var c, f, d; f = e.i[b].l("tracking", !1); c = e.b.Ka; b = e.i[b].l("comScoreEnabled", !0); d = e.b.Xb; !1 === f && (!1 === c && !0 === b && !1 === d) && (a.nb(), c = e.n(e.b.Ia)) && (c.src = e.b.Z + "/" + e.b.Oa + "3rd/comScore/comScore.htm", e.b.Xb = !0) }; a.Qe = function() { var b = a.gb(8), c = ""; "string" === typeof window.name && ("" === window.name || -1 < window.name.indexOf("frame")) ? (window.name = b, c = window.name) : c = "string" === typeof window.name && "" !== window.name ? window.name : b; return c }; a.gb = function(b) { var a, f; a = []; b = "number" === typeof b ? b : 8; for (f = 0; f < b; f += 1) a.push("0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz".charAt(Math.floor(61 * Math.random()))); return a.join("") }; a.Ca = function(b) { for (var a in e.na) if (e.na[a].h === b) return e.na[a]; return null }; a.rc = function(b) { var a, f; f = e.i; for (a = 0; a < f.length; a += 1) if (f[a].ja() === b) return f[a]; return null }; a.mf = function(b) { for (var a in b) if (b.hasOwnProperty(a)) return !1; return !0 }; a.aa = function(b, a) { return "function" !== typeof b ? null : "undefined" === typeof a ? b() : b(a) }; a.hf = function() { return "Microsoft Internet Explorer" == navigator.appName }; a.fe = function(b, a) { return b * a }; a.lc = function(b) { if (!b || "" === b) return []; b = b.replace("", "").replace("http://", "").replace("https://", "").replace("www.", "").replace("www2.", "").split("/"); b.pop(); return 0 < b.length ? b : [] }; a.Be = function(b, c) { var f = a.lc(b), e = [], d = ""; if (c >= f.length) d = f.join("."); else { e[0] = f[0]; for (d = 1; d <= c; d += 1) e[d] = f[d]; d = e.join(".") } return d }; a.Me = function() { return "http" + ("https:" === c.location.protocol ? "s" : "") }; a.Ke = function() { var b, e; b = c.getElementById("widgetVersionSync"); null === b && (b = a.createElement("iframe", "widgetVersionSync"), e = a.createElement("div", null, "display:none; height:0px; width:0px; border:none;"), e.appendChild(b), a.ic().appendChild(e)); return b }; a.Rg = function(b) { var c; c = window.OB_releaseVer; isNaN(c) || (isNaN(b) || c >= b) || (b = a.Me() + "://widgets.outbrain.com/external/sync/outbrainjs.html?needToBeVer=" + b.toString(), c = a.Ke(), c.src = b) }; a.Kd = function(b) { b = b.l("widgetVersionSync", 1); isNaN(b) || "" === b || (b = parseInt(b, 10) || 1, a.Rg(b)) }; a.Le = function(b, c) { var f = b.parentNode; return f ? f.tagName.toLowerCase() == c ? f : a.Le(f, c) : !1 }; a.j(OBR); return a }(); OBR.M = function(d, a, c, e, b, g, f, k, h) { var l, m; l = this; m = 0; h = "function" === typeof h ? h : OBR.a.fe; l.start = function() { var p; m += 1; OBR.a.aa(d, m) ? OBR.a.aa(a, m) : (p = OBR.a.aa(k, m)) ? OBR.a.aa(e, m) : (p = m === g && 1E3 !== g) ? OBR.a.aa(e, m) : (OBR.a.aa(c, m), p = f ? h(m, b) : b, setTimeout(function() { l.start() }, p)) }; l.start() }; OBR.ac = OBR.ac || { ef: function() { return "complete" === document.readyState } }; OBR.oe = function() { var d = {}, a = []; d.add = function(c) { a.push(c) }; d.top = function() { return 0 < a.length ? a.shift() : null }; d.Zd = function() { a = [] }; return d }; OBR.b = OBR.b || function() { var d = {}, a = {}, c = OBR, e; a.yd = "opera"; a.Nb = "msie"; a.sd = "firefox"; a.rd = "chrome"; a.Bd = "safari"; a.vd = "mozilla"; a.Yg = "boolean"; a.rh = "string"; a.ih = "object"; a.sh = "undefined"; a.Ia = "ob_iframe"; a.vc = !0; a.Oc = 0; a.Ib = "outbrain_widget_"; a.uf = "text/javascript"; a.ee = "text/css"; a.ie = document; a.zc = "undefined" !== typeof document.createElement("script").async; a.pd = c.a.Qe(); a.bg = document.referrer; a.ag = c.a.L(document.referrer); a.wf = document.location.href; a.gh = c.a.L(a.wf); a.wa = !1; a.Jd = navigator.userAgent.toLowerCase(); a.mh = navigator.platform.toLowerCase(); e = a.Jd; a.Nd = /opera/.test(e) ? a.yd : /msie/.test(e) ? a.Nb : /firefox/.test(e) ? a.sd : /chrome/.test(e) ? a.rd : /safari/.test(e) ? a.Bd : a.vd; a.Ka = !! /(iphone|ipod|symbian|android|windows ce|blackberry|palm|ipad)/.test(e); a.kf = 0; a.jf = function() { return void 0 === window.XMLHttpRequest && void 0 !== ActiveXObject }; a.Wf = window.OB_platformType || null; a.Ma = "number" === typeof a.Wf; a.bd = null; a.cc = null; a.Lg = function() { a.Ma && (a.bd && a.cc) && (a.bd(), a.cc()) }; a.sa = "string" === typeof window.OB_releaseVer ? window.OB_releaseVer : "0"; a.Df = !0 === window.OB_disable_odbl; e = ("https:" === document.location.protocol ? "https" : "http") + "://"; a.Td = "/blogutils/ExcludeRec.action?bocr="; a.jh = "html"; a.Ue = c.a.Sa(c.a.O("wiodb", e + "hpr.outbrain.com"), e + "hpr.outbrain.com"); a.xb = c.a.Sa(c.a.O("wiodb", e + "odb.outbrain.com"), e + "odb.outbrain.com"); a.Ud = "http://storage.outbrain.com/"; a.Z = c.a.Sa(c.a.O("wihost", e + "widgets.outbrain.com"), e + "widgets.outbrain.com"); a.Rf = c.a.Sa(c.a.O("wiout", e + "outbrain.com"), e + "outbrain.com"); a.Nc = e + "log.outbrain.com/"; a.Oa = "nanoWidget/"; a.Sf = a.Ma ? "NANOWDGTLT13" : "NANOWDGT01"; a.Af = a.Z + "/" + a.Oa + a.sa + (a.Ma ? "/moduleLT" : "/module"); a.zf = a.Z + "/" + a.Oa + "3rd"; a.cf = "object" === typeof window.console; a.hd = c.a.$d(c.a.me()); a.gd = null === a.hd ? "" : c.a.L(a.hd); a.Xb = !1; a.Ef = "true" === c.a.O("obdraft", !1) ? "&obDraft=true" : ""; a.Ed = !1 !== c.a.O("obAbtest", !1) ? "&obAbtest=" + c.a.O("obAbtest", "") : ""; a.ed = function(b) { a.Ja = a.Ja || b; return a.Ja }; a.Ja = a.ed("true" === c.a.O("advanceLoader", "false").toLowerCase()); a.Fc = 0; a.ma = null; a.ad = "data-obscrollable"; a.jg = { touch_strip: "1" }; a.kg = { "touch-strip": "1" }; a.F = function() { d.S = c; return d }; return a }(); OBR.d = OBR.d || function() { var d = {}, a, c = {}; d.j = function(c, b) { a = c; d.$f(b) }; d.f = { Wa: "POPUPDESCRIPTION", ua: "WIDGETSTATISTICS", ta: "WHATIS", Va: "FLYTHROUGH", Za: "VIDEOPLUGIN", fa: "POSCUL", Xa: "SCROLL", Ya: "SCROLLEXTERNAL", Ob: "RECINIFRAME" }; d.Ad = function(a, b) { var c = { $g: a, url: b, version: -1, state: 0, $a: null, Yb: this, Pb: null, Yd: function() { if (2 === c.state) c.Dc(); else if (0 === c.state) { var b = OBR.a.B(c.url, !0); c.state = 1; OBR.a.H(b) } }, Dc: function() { c.state = 2; "function" === typeof c.$a && c.$a.call(c.Yb, c.Pb) } }; return c }; d.$f = function(c) { function b(b) { return a.b.Af + "/" + b } function g(b, a) { c[b] || (c[b] = new d.Ad(b, a)) } g(d.f.Wa, b("popupDescription.js")); g(d.f.ua, b("widgetStatistics.js")); g(d.f.ta, b("whatis.js")); g(d.f.Va, b("flyThrough.js")); g(d.f.Za, b("videoPlugin.js")); g(d.f.fa, b("positionCalculation.js")); g(d.f.Ob, b("recInIframe.js")); g(d.f.Xa, b("scroll.js")); g(d.f.Ya, a.b.zf + "/scroll/scrollExternal.js") }; d.Fe = function(a) { return c[a] }; d.w = function(a, b, c, f) { if (a = d.Fe(a)) a.$a = b || OBR.a.$(), a.Yb = c, a.Pb = f, a.Yd() }; d.oc = function(a) { return c[a].state }; d.Q = function(e) { "-1" !== a.b.sa && c[e].Dc() }; d.j(OBR, c); return d }(); OBR.j = OBR.j || void 0; OBR.n = function(d) { return document.getElementById(d) }; OBR.I = OBR.I || function() { var d = {}, a = {}, c, e; a.j = function(b) { c = b = b || OBR; d.oa = new c.o; e = !1 }; a.F = function() { return d }; d.af = function() { var b, a; b = c.a.createElement("iframe", "ob_ping"); b.setAttribute("id", "ob_ping"); b.style.border = "0px"; b.style.width = "0px"; b.style.height = "0px"; b.setAttribute("src", c.b.xb + "/utils/ping.html?r=" + c.a.Qc()); c.a.u(b, "load", function() { c.c.log("ping returned"); c.b.Oc = 2; d.oa.k("success"); c.I.Wc() }); a = c.a.Aa(); null !== a && (c.c.log("ping inserted"), c.a.mb(b, a)) }; d.Vf = function() { c.c.log("ping Wait"); new c.M(function() { return 2 === c.b.Oc }, function() {}, c.a.$(), function() { d.oa.k("fail"); c.I.Wc() }, 50, 200, !1) }; a.Wc = function() { c.a.Pa("ob_ping") }; a.Of = function(b) { d.oa.add("success", b) }; a.Nf = function(b) { d.oa.add("fail", b) }; a.nf = function() { return e }; a.fd = function() { e = !0 }; a.Uf = function() { d.af(); d.Vf() }; a.t = function() { d.oa.N() }; a.j(OBR); return a }(); OBR.ba = OBR.ba || function() { var d, a = {}, c = {}, e; a.j = function(b) { d = b = b || OBR; e = new d.o }; a.F = function() { return c }; c.bb = function(b) { var a, c; a = 0; for (c = b.length; a < c; a += 1) d.a.A(b[a], "data-ob-mark", "true"), e.k("find", [b[a]]) }; c.hc = function() { return d.a.za("class", "OUTBRAIN", "div", !0) }; c.Ae = function(b) { var a, c, e = [], h = []; a = 0; for (c = b.length; a < c; a += 1) if ("string" === typeof b[a].containerId) if (d.n(b[a].containerId)) { var l = d.n(b[a].containerId); "string" === typeof b[a].widgetId && d.a.A(l, "data-widget-id", b[a].widgetId); "string" === typeof b[a].permalink && d.a.A(l, "data-src", b[a].permalink); "boolean" === typeof b[a].advanceLoader && d.a.A(l, "data-advance-loader", b[a].advanceLoader); "boolean" === typeof b[a].dynLoad && d.a.A(l, "data-dynLoad", b[a].dynLoad); "string" === typeof b[a].widgetType && d.a.A(l, "data-widget-type", b[a].widgetType); "string" === typeof b[a].timeout && d.a.A(l, "data-timeout", b[a].timeout); "string" === typeof b[a].fbk && d.a.A(l, "data-fbk", b[a].fbk); h.push(l) } else e.push(b[a]); window.OB_elements = e; return h }; c.Je = function() { var b = []; "object" === typeof window.OB_elements && 0 < window.OB_elements.length && (b = window.OB_elements); return b }; c.Ge = function() { var b = [], a = c.hc(), f, e; f = 0; for (e = a.length; f < e; f += 1) { var h = d.a.D(a[f], "data-ob-mark"); null !== h && "true" === h || !a[f] || b.push(a[f]) } f = c.Je(); if (0 < f.length) for (d.c.log("Array of elements found!"), a = c.Ae(f), f = 0, e = a.length; f < e; f += 1) b.push(a[f]); return b }; a.Xg = function(b) { c.ec(b) }; c.ec = function(b) { if (void 0 === b) { var a = !1; d.c.log("searching for containers"); new d.M(function() { return a }, d.a.$(), function() { a = d.ac.ef(); var b = c.Ge(); a && d.c.log("checking:(" + a + ")"); 0 < b.length && c.bb(b) }, e.k("stopSearch"), 50, 1E3, !1) } else 0 < (b.length || 0) && c.bb(b) }; a.eh = function() { return 0 < c.hc().length }; a.Hf = function(b) { e.add("find", b) }; a.lh = function(b) { e.add("stopSearch", b) }; a.dc = function() { c.ec() }; a.pe = function(b) { var a = [], f, e; d.q.Xe(); f = 0; for (e = d.i.length; f < e; f += 1) { var h = d.a.U(f); null !== h && ("string" === typeof b && d.a.A(h, "data-src", b), d.a.A(h, "data-ob-mark", "false"), a.push(h)) } 0 < a.length && (d.i = [], c.bb(a)) }; a.t = function() { e.N(); d.i = [] }; a.j(OBR); return a }(); OBR.q = OBR.q || function() { var d = {}, a = {}, c; a.j = function(a) { c = a = a || OBR; d.zb = new c.oe; d.wb = new c.o; d.La = !1 }; d.we = function(a) { var b; b = a.Pe(); var d, f = c.a.eg; b = b && "hp" === b ? c.b.Ue + "/utils/get?url=$LNK$SRC&settings=$SET&recs=$REC&widgetJSId=$WID&key=$KEY&idx=$IDX&version=$VER&ref=$REF&apv=$APV&sig=$SIG&format=$FRT&rand=$RND$DRFT$ABTEST" : c.b.xb + "/utils/get?url=$LNK$SRC&settings=$SET&recs=$REC&widgetJSId=$WID&key=$KEY&idx=$IDX&version=$VER&ref=$REF&apv=$APV&sig=$SIG&format=$FRT&rand=$RND$DRFT$ABTEST"; d = a.ja(); b = f(b + ("" !== d && null !== d ? "&fbk=" + d : ""), "$LNK", c.a.L(a.ca())); b = f(b, "$SRC", 0 < c.b.gd.length ? "&srcUrl=" + c.b.gd : ""); b = f(b, "$IDX", a.h); b = f(b, "$SET", !0); b = f(b, "$REC", !0); b = f(b, "$KEY", c.b.Sf); b = f(b, "$WID", a.v()); b = f(b, "$VER", c.b.sa); b = f(b, "$REF", c.b.ag); b = f(b, "$SIG", c.b.pd); b = f(b, "$APV", c.b.wa); b = f(b, "$FRT", a.Ce()); b = f(b, "$RND", c.a.Qc()); b = f(b, "$DRFT", c.b.Ef); return b = f(b, "$ABTEST", c.b.Ed) }; d.kb = function(a, b, g) { g = c.b.Ja && g; var f = b.h; b.s.yg(); g ? c.a.bf(f, a) : (g = c.a.B(a, !0), "" !== b.ja() && c.a.u(g, "error", function() { OBR.extern.errorInjectionHandler(f) }), c.a.H(g)); d.wb.k("onOdbFire_" + f + "_" + b.v(), [b], !0); c.c.log("fire this src " + a) }; d.zg = function(a) { c.b.zc && setTimeout(function() { d.Vc(a.h, a.v()) }, 1E4) }; d.Vc = function(a, b) { c.a.Pa("ob_odbCall_" + a + b) }; a.k = function() { if (!0 !== d.La && !0 === c.I.nf()) { d.La = !0; var a = d.zb.top(), b; a ? (c.c.log("fire odb for " + a.ca()), b = d.we(a), d.kb(b, a, !0), d.zg(a)) : d.La = !1 } }; a.Lf = function(a, b) { d.wb.add("onOdbFire_" + a.h + "_" + a.v(), b) }; a.Gb = function(a, b) { d.La = !1; d.Vc(a, b) }; a.og = function(a) { !0 === a && (OBR.b.wa = a) }; a.Xe = function() { OBR.b.wa = !1 }; a.Tc = function(e) { d.zb.add(e); c.c.log("register odb for " + e.ca()); a.k() }; a.Od = function(c) { a.Gb(c.h, c.v()); a.k() }; a.t = function() { d.zb.Zd(); d.wb.N() }; a.F = function() { d.S = c; return d }; a.j(OBR); return a }(); OBR.g = OBR.g || function() { function d() { c.c.log("ping fail") } function a() { c.c.log("ping success"); c.I.fd(); c.display.Gf(b.Id); c.q.k() } var c, e = {}, b = {}, g; b.tb = "manualDataReady"; b.sb = "manualClickReady"; e.j = function(b) { c = b = b || OBR; g = new c.o }; e.F = function() { return b }; b.Id = function(a) { c.c.log("rec " + a + " was rendered"); var e = c.i[a]; e.Y(!0); e.s.Bg(); 0 === a && c.a.pg(); b.sf(e) && b.ng(e); c.a.Kd(e); c.display.$e(e) }; b.Ne = function(b) { return Math.floor(Math.random() * b) + 1 }; b.sf = function(a) { var e = c.b.Ka, d = a.l("tracking", !1); if (!a.l("widgetStatistics", !1) || e || d) return !1; a = a.l("wsSampling", 0); return 0 === a ? !0 : b.Ne(a) === a }; b.ng = function(b) { 2 === c.d.oc(c.d.f.ua) && 2 === c.d.oc(c.d.f.fa) ? c.p.Rb(b.h) : c.d.w(c.d.f.fa, function() { c.d.w(c.d.f.ua, function() { c.p.Rb(b.h) }, this) }, this) }; b.Qg = function(a) { c.c.log("widget was found"); a = c.Ua.Hd(a); 0 === a.h && b.Pd(); !0 === a.ff() ? c.c.log("Dynamic loader - stop odb!") : c.q.Tc(a) }; e.Jc = function(a, d) { var h = "NA", l = a && a.response ? a.response : null, m; if (m = c.a.Ca(d)) if (g.k("onmManualOdbReturned_" + d, [l, d ]), m.W()) return; l && (l.request && l.request.widgetJsId) && (h = l.request.widgetJsId); c.q.Gb(d, h); m && (l && l.documents) && (m.Y(!0), e.gc(b.tb, d, h, a)); c.q.k() }; e.Mf = function(b, a) { g.add("onmManualOdbReturned_" + b, a) }; e.gc = function(b, a, c, e) { b = b + a + c; g.k(b, [e.response.documents, a]); g.Bb(b) }; e.Gc = function(a, d) { if (null !== a) { var h = 0, l = a.permalink, m = a.widgetId, p = a.widgetType, n = a.fbk, q = a.timeout; l && "string" === typeof l && (m && "string" === typeof m) && (c.c.log("manual Odb call"), h = e.xf(l), e.Na(b.tb + h + m, d), l = c.Ua.Zb(h, l, m, !1, p, n, q, !0), l.vg(), c.na[h] = l, g.k("onmManualOdbCall", [l, b.tb]), c.I.fd(), c.q.Tc(l)) } }; e.Na = function(b, a) { g.add(b, a) }; e.Qf = function(b) { g.add("onmManualOdbCall", b) }; e.xf = function(b) { var a = 0, e = c.b; null === e.ma && (e.ma = 0 < c.i.length ? c.i[0].ca() : null); e.ma === b ? a = e.Fc + 1 : e.ma = b; return e.Fc = a }; e.Ec = function(a, e) { var d = OBR.n(c.b.Ia); c.a.V(d) && c.a.V(d.parentNode) && d.parentNode.removeChild(d); c.a.nb(); "function" === typeof e && g.add(b.sb, e); if (null !== a && (d = a.link) && "string" === typeof d) { c.c.log("manual Click"); if (null !== d.match(/http:\/\/.+outbrain.com/i)) c.a.Wd(d + "&noRedirect=true"); else throw "Wrong redirect link: " + d; g.k(b.sb); g.Bb(b.sb) } }; b.rf = function(a) { return b.yc(a) || a.l("stopWidget", !1) }; b.yc = function(b) { return b.l("stopRater", !1) }; b.Pd = function() { c.I.Of(a); c.I.Nf(d); c.b.Df || c.b.zc ? (c.c.log("async - no ping"), a()) : c.I.Uf() }; e.yb = function(a, d) { var h, l; OBR.c.log("HTML returned"); (h = c.i[d]) ? (h.s.xg(), h.W() || (h.setData(a), l = h.v(), b.rf(h) || b.tf(h.Ba()) || (c.q.og(a.response.settings.apv), e.of(h) ? e.ea(d) : e.Re(h), l && g.k("odbRtn_" + l, [h]))), e.se(h)) : c.c.log("odbHtmlReturned : Widget not found") }; b.tf = function(b) { var a = !1; null !== b.match(/(<\/?met|<\/?scr)/i) && (a = !0, c.c.log("SECURITY")); return a }; e.se = function(a) { b.yc(a) || (c.q.Gb(a.h, a.v()), c.q.k()) }; e.of = function(b) { var a = !0; if (b.Cc() || b.wc()) a = !1; return a }; e.Re = function(b) { var a = b.h; b.Cc() ? c.d.w(c.d.f.Za, function() { c.Ta.de(a) }, this) : b.wc() && c.display.Ye(b) }; e.ea = function(b) { c.display.ea(c.i[b]); c.c.log("HTML - Render"); e.Xf(b) }; e.Xf = function(b) { c.a.Xd(b) }; e.Rc = function(b, a) { c.a.Fd(a); var e = c.a.D(a, "data-redirect"); null !== e && (a.href = e); return !0 }; e.Sc = function(b) { c.p && c.p.Mc(); c.ba.pe(b); return !0 }; e.t = function() { g.N() }; e.Zc = function() { //debugger; c.ba.Hf(b.Qg); c.b.Ma ? c.b.Lg() : c.ba.dc() }; e.Sd = function(b, a, e) { if (confirm("Removing this recommendation will remove it permanently for this section and will refresh the recommendations.\n Are you sure you want to remove this recommendation?")) { var d = "https://my.outbrain.com/manage/"; c.c.log("isAd = " + e + " type = " + typeof e); d = !1 === e ? d + ("add-zapped-document?publisherId=" + a + "&docUrl=" + c.a.L(b)) : d + ("add-rule?publisherId=" + a + "&ruleValue=" + c.a.L(b) + "&ruleType=" + e); b = c.a.B(d, !0); c.a.H(b) } }; e.Rd = function(b) { confirm("Removing this recommendation will remove it permanently for this section and will refresh the recommendations.\n Are you sure you want to remove this recommendation?") && (b = c.a.B(c.b.xb + c.b.Td + b + "&index=1&templateIndex=1&sig=" + c.b.pd, !0), c.a.H(b)) }; e.ig = function(b) { b && (b.ob_exclude_resp && b.ob_exclude_resp.code && 1 !== b.ob_exclude_resp.code) && e.Sc() }; e.Uc = function(b, a) { if (a && "function" === typeof a) { var e = "odbRtn_" + b; g.add(e, a); var d = c.Jb.sc(b); d && d.df() && g.k(e, [d]) } }; e.xe = function(b) { return (b = c.Jb.sc(b)) ? b.G("tcr", -1) : null }; e.hg = function() { c.ba.dc() }; e.N = function() { c.p && c.p.Mc(); c.display.t(); c.q.t(); c.I.t(); this.t(); c.ba.t(); c.ha && c.ha.t(); c.b.wa = !1 }; e.cg = function() { this.N(); this.Zc() }; e.j(OBR); return e }(); OBR.display = OBR.display || function() { var d, a = {}, c; a.j = function(a) { d = a = a || OBR; c = new d.o }; a.tc = function(a, b) { var c = d.a.Mg(a), f = d.a.U(b.h); f && (c && 0 < c.length) && (f.innerHTML = "", d.a.mb(c[0], f), d.c.log("element inserted")) }; a.kh = function(a) { c.add("beforeRender", a) }; a.Gf = function(a) { c.add("afterRender", a) }; a.$e = function(a) { d.a.pf(a) && OBR.d.w(OBR.d.f.Xa, function(b) { OBR.scroll.yf(b) }, this, a) }; a.Ye = function(c) { OBR.d.w(OBR.d.f.fa, d.a.$(), this); OBR.d.w(OBR.d.f.Va, function() { a.te(c) }, this) }; a.te = function(e) { a.tc(OBR.ya.Ve(e), e); OBR.ya.j(); c.k("afterRender", [e.h]) }; a.ea = function(e) { d.c.log("HTML - render widget with " + e.Ba()); a.tc(e.Ba(), e); e.Y(!0); c.k("afterRender", [e.h]) }; a.t = function() { c.N() }; a.j(OBR); return a }(); OBR.md = OBR.md || function(d) { var a = {}, c = {}, e = {}, b = "", g = null, f = null, k = !1, h = 0, l = "html", m = !1, p = 4E3, n = "nano", q = !1, s = !1, r = {}, t = new OBR.o; a.Wg = 0; a.Vg = 1E3; a.Ug = 2; a.h = d; a.xa = ""; a.tg = function(b, a) { t.add("onInjectError_" + b.h, a) }; a.re = function(b) { t.k("onInjectError_" + b, [b], !0) }; a.s = { Lc: -1, Kc: -1, Yc: -1, Ea: function() { var b = []; b.push(a.s.Lc); b.push(a.s.Kc); b.push(a.s.Yc); return b }, yg: function() { a.s.Lc = (new Date).getTime() }, xg: function() { a.s.Kc = (new Date).getTime() }, Bg: function() { a.s.Yc = (new Date).getTime() } }; a.ne = { slow: 7E3, normal: 5E3, fast: 3E3, qa: 5 }; a.setData = function(a) { a && a.response && (a = a.response, a.request && (e = a.request), a.settings && (c = a.settings), a.html && (b = a.html), m = !0) }; a.hb = function() { return c }; a.l = function(b, a) { var e; e = c[b]; return "undefined" !== typeof e && null !== e ? e : a }; a.G = function(b, a) { var c = e[b]; return c ? c : a }; a.Ba = function() { return b }; a.v = function() { return g }; a.Gg = function(b) { g = "string" === typeof b ? b : "NA" }; a.vg = function() { l = "japi" }; a.Ce = function() { return l }; a.oh = function(b) { h = b }; a.ah = function() { return h }; a.ca = function() { return f }; a.Ag = function(b) { f = b }; a.ff = function() { return k }; a.rg = function(b) { k = "true" === b || !0 === b }; a.wc = function() { return "flyThrough" === a.l("displayMode", "") }; a.Cc = function() { return "video" === a.l("displayMode", "") }; a.fh = function() { return "recInIframe" === a.l("displayMode", "") }; a.df = function() { return m }; a.Pe = function() { return n }; a.Hg = function(b) { "string" === typeof b && (n = b.toLowerCase()) }; a.Eg = function(b) { "string" === typeof b && "" !== b && (a.xa = b) }; a.gf = function() { return !isNaN(parseInt(a.xa, 10)) }; a.ja = function() { var b; b = parseInt(a.xa, 10); return a.gf() && "number" === typeof b && 0 <= b && 10 > b ? OBR.a.Be(f, b) : a.xa }; a.W = function() { return q }; a.Y = function(b) { "boolean" === typeof b && (q = b) }; a.dh = function() { return "hp" === n }; a.m = function() { return r }; a.sg = function() { var b = { timeout: 0, pa: null, ab: 0, Ub: !1, Ff: !1, Na: "", Ha: !1, Eb: !1, Ab: !1, va: !1, od: "NA", reason: 0, ob: !0 }; "object" === typeof b && (r = b) }; a.lf = function() { return s }; a.mc = function() { return p }; a.ug = function(b) { p = a.ne[b] || 6E3 }; a.wg = function(b) { "boolean" === typeof b && (s = b) }; return a }; OBR.Ua = OBR.Ua || function() { var d = OBR, a = {}, c = new d.o; a.Zb = function(a, b, g, f, k, h, l, m) { a = new d.md(a); a.Ag(b); a.Gg(g); a.rg(f); a.Hg(k); a.Eg(h); a.ug(l); "boolean" === typeof m && a.wg(m); c.k("onWidgetCreate", [a]); return a }; a.Hd = function(c) { var b = d.a.D(c, "data-src"), g = d.a.D(c, "data-widget-id"), f = d.a.D(c, "data-widget-type"), k = d.a.D(c, "data-timeout"), h = d.a.D(c, "data-fbk"), l = d.a.D(c, "data-advance-loader"), m = d.a.D(c, "data-dynLoad"); d.a.A(c, "data-dynLoad", ""); d.b.ed("true" === (l || "").toLowerCase()); null === b && (b = d.a.Ee()); l = 0 === d.i.length && d.b.ma === b ? 1 : d.i.length; b = a.Zb(l, b, g, m, f, h, k, !1); d.i[l] = b; 0 === l && (g = d.a.createElement("div", "ob_holder"), g.style.display = "none", d.a.insertBefore(g, c), d.a.nb()); c.id = d.b.Ib + l; return b }; a.Pf = function(a) { c.add("onWidgetCreate", a) }; return a }(); OBR.Jb = OBR.Jb || function() { var d = OBR; return { sc: function(a) { var c, e, b; if (d.i) for (e = d.i.length, c = 0; c < e; c += 1) if ((b = d.i[c]) && b.v() === a) return b; return null } } }(); OBR.ha = OBR.ha || function() { var d = {}, a = OBR, c = {}, e = new a.o; c.ke = function(b) { b.sg(); "" !== b.ja() && (b.tg(b, function() { d.Te(b.h) }), OBR.q.Lf(b, function() { c.Fg(b) }), OBR.g.Uc(b.v(), d.Kf)) }; c.Fg = function(b) { var a; a = b.m(); a.timeout = b.mc(); a.Ha || (a.pa = setTimeout(function() { c.Vd(b) }, a.timeout)) }; d.Kf = function(b) { var a = b.m(); a.Ff = !0; b.l("ispartialrecs", !1) && (clearTimeout(a.pa), a.reason = 3, a.Ab = !0, c.eb(b)) }; d.If = function(b, d) { var f; b && (b.settings && !0 === b.settings.ispartialrecs) && (f = a.a.Ca(d), clearTimeout(f.m().pa), c.Xc(f)) }; c.Jf = function(b, c) { b.m().Na = c; a.g.Mf(b.h, d.If) }; a.Ua.Pf(c.ke); a.g.Qf(c.Jf); d.Tb = function(b, d) { var f, e, h; b && b.response && (f = b.response, OBR.c.log("Cdn response returned"), (e = c.qc(d)) ? (a.q.Od(e), h = e.m(), h.rb = b, f.request && (h.od = f.request.widgetJsId || "NA"), h.Ub = (new Date).getTime(), h.Ha && !h.va ? (h.Ha = !1, c.jb(e)) : h.Eb && !h.va ? (h.Eb = !1, c.jb(e)) : h.Ab && !h.va && (h.Ab = !1, c.jb(e))) : a.c.log("Editorial Widget : Widget not found")) }; c.jb = function(b) { var a = b.m(); a.va = !0; c.Xc(b); d.ud(b); clearTimeout(b.m().pa); a.reason = 0; a.ob = !0 }; c.qc = function(b) { var c = a.i[b]; return c ? c : a.a.Ca(b) }; c.rc = function(b) { return (b = a.a.rc(b)) ? b : a.a.Ca("fbk") }; c.Vd = function(b) { var a = b.m(); b.W() || (a.reason = 1, a.Eb = !0, c.eb(b)) }; c.Xc = function(b) { var c = b.m(); b.W() && !b.l("ispartialrecs", !1) ? c.ob = !1 : (b.lf() ? a.g.gc(c.Na, b.h, c.od, c.rb) : (b.setData(c.rb), OBR.g.ea(b.h)), b.Y(!0)) }; d.ud = function(b) { var c, d, e; d = b.m(); a.a.mf(b.hb()) && b.setData(d.rb); e = "" !== b.ca() ? a.a.L(b.ca()) : window.location.href; c = b.l("irdfb", ""); "" !== c && (c += "&reason=" + d.reason || "", c = c + ("&url=" + e || "") + ("&at=" + (b.m().Ub - b.m().ab) || ""), c += "&to=" + b.mc() || "", c += "&ir=" + (d.ob ? 1 : 0) || "", b = OBR.a.B(c, !1), OBR.a.H(b)) }; c.eb = function(b) { if (0 === b.m().ab) { var d = c.ve(b); c.kb(d, b); a.c.log("CDN call: cdnCall") } }; c.ve = function(b) { var c; c = a.b.Ud; b = b.ja() + "_" + b.v() + "_" + b.h; return c + b }; d.Te = function(b) { b = c.qc(b); var a; b && (a = b.m(), clearTimeout(a.pa), a.Ha = !0, a.reason = 2, c.eb(b)) }; c.kb = function(b, c) { var d = a.a.B(b, !1); c.m().ab = (new Date).getTime(); a.a.H(d); a.c.log("fire this src " + b) }; d.t = function() { e.N() }; d.F = function() { return c }; return d }(); OBR.extern = OBR.extern || function() { var d = OBR; return { getStat: function() { d.p.$c() }, showDescription: function(a, c) { d.d.w(OBR.d.f.Wa, function() { OBR.Pc.vf(a, c) }, this) }, returnedHtmlData: function(a, c) { d.g.yb(a, c) }, returnedIrdData: function(a, c) { d.ha.Tb(a, c) }, returnedJsonData: function(a, c) { d.g.Jc(a, c) }, returnedError: function(a) { OBR.c.log("Call made using extern class"); d.c.log("Callback error" + a) }, callRecs: function(a, c) { OBR.c.log("Call made using extern class"); d.g.Gc(a, c) }, callClick: function(a, c) { OBR.c.log("Call made using extern class"); d.g.Ec(a, c) }, callWhatIs: function(a, c, d, b, g, f) { OBR.d.w(OBR.d.f.ta, function() { OBR.Hb.Sb(a, c, d, b, g, f) }, this); return !1 }, recClicked: function(a, c) { OBR.c.log("Call made using extern class"); d.g.Rc(a, c) }, imageError: function(a) { OBR.c.log("Call made using extern class"); d.a.Wb(a) }, showRecInIframe: function(a, c, e, b, g) { d.d.w(d.d.f.Ob, function() { d.nh.ph(a, c, e, b, g) }, this) }, errorInjectionHandler: function(a) { OBR.i[a].re(a) }, reloadWidget: function() { OBR.c.log("reload widget"); d.g.cg() }, researchWidget: function() { OBR.c.log("research widget"); d.g.hg() }, cancelRecommendation: function(a) { OBR.c.log("cancel recommendation with bocr " + a); d.g.Rd(a) }, cancelRecs: function(a, c, e) { OBR.c.log("cancel recommendation by doc url " + a + " publisher id = " + c + " isAd = " + e); d.g.Sd(a, c, e) }, refreshWidget: function(a) { OBR.c.log("refresh widget"); d.g.Sc(a) }, getCountOfRecs: function(a) { return d.g.xe(a) }, onOdbReturn: function(a, c) { d.g.Uc(a, c) }, closeCard: function() { d.ya.ae() }, closeModal: function() { try { d.modal.hideModal() } catch (a) {} }, scrollLoad: function() { try { OBR.d.Q(OBR.d.f.Ya) } catch (a) {} } } }(); window.outbrain = window.outbrain || {}; window.outbrain.returnedHtmlData = function(d, a) { OBR.g.yb(d, a) }; window.outbrain.returnedIrdJsonData = function(d, a) { OBR.ha.Tb(d, a) }; window.outbrain.returnedJsonData = function(d, a) { OBR.g.Jc(d, a) }; window.outbrain.returnedError = function(d) { OBR.c.log("Callback error" + d) }; window.outbrain.callRecs = function(d, a) { OBR.g.Gc(d, a) }; window.outbrain.callClick = function(d, a) { OBR.g.Ec(d, a) }; window.outbrain.callWhatIs = function(d, a, c, e, b, g) { OBR.d.w(OBR.d.f.ta, function() { OBR.Hb.Sb(d, a, c, e, b, g) }, this) }; window.outbrain.recClicked = function(d, a) { OBR.g.Rc(d, a) }; window.outbrain.imageError = function(d) { OBR.a.Wb(d) }; window.outbrain.closeModal = function() { try { OBR.modal.hideModal() } catch (d) {} }; window.outbrain_rater = window.outbrain_rater || {}; window.outbrain_rater.returnedHtmlData = function(d, a) { OBR.g.yb(d, a) }; window.outbrain_rater.returnedCancelOdbData = function(d) { OBR.g.ig(d) }; !0 === OBR.b.vc && (OBR.c.log("Widget Start!"), OBR.b.vc = !1, "boolean" === typeof window.OB_PASSIVE_MODE && !0 === window.OB_PASSIVE_MODE ? OBR.c.log("passive") : OBR.g.Zc());