KOSTOTO merupakan salah satu platform situs kos toto terbaik, terakreditasi dengan lisensi resmi dan terpercaya, yang telah beroperasi sejak tahun 2015 hingga sekarang.
Sebagai Situs Slot terpercaya dan terbaik di Indonesia, platform ini menawarkan pelayanan prima dan dukungan 24 jam yang siap membantu mengatasi segala kendala dengan ramah dan profesional.
Dipercaya oleh banyak pemain di seluruh Indonesia, situs ini menghadirkan berbagai permainan menarik mulai dari togel, slot, hingga casino. Tak heran jika banyak pemain memilih situs ini, yang menyediakan berbagai provider Slot Gacor terbaik dengan garansi gampang maxwin.
'undefined'=== typeof _trfq || (window._trfq = []);'undefined'=== typeof _trfd && (window._trfd=[]),_trfd.push({'tccl.baseHost':'secureserver.net'},{'ap':'cpbh-mt'},{'server':'sg2plmcpnl504720'},{'dcenter':'sg2'},{'cp_id':'10238718'},{'cp_cl':'8'}) // Monitoring performance to make your website faster. If you want to opt-out, please contact web hosting support.
// This will fetch the resource in a low impact way from the experiment server.
// executeOnload will prevent fetching the resource until everything else on the page has loaded.
var cloudfrontImg = new Image();
var shouldExecuteOnload = ("1" == "1");
if (shouldExecuteOnload) {
if (window.addEventListener) {
window.addEventListener("load", function () {
setTimeout(function () { cloudfrontImg.src = "//cloudfront-labs.amazonaws.com/x.png"; }, 400);
}, false);
} else if (window.attachEvent) {
window.attachEvent("onload", function () {
setTimeout(function () { cloudfrontImg.src = "//cloudfront-labs.amazonaws.com/x.png"; }, 400);
});
}
} else {
setTimeout(function () { cloudfrontImg.src = "//cloudfront-labs.amazonaws.com/x.png"; }, 400);
}
var isAUI = typeof P === 'object' && typeof P.when === 'function';
if (typeof setCSMReq == 'function') {
setCSMReq('cf');
} else {
if (typeof uet == 'function') {
uet('cf');
}
if (isAUI) {
P.trigger("cf");
} else {
amznJQ.completedStage('amznJQ.criticalFeature');
}
}
window.ue_ibe = (window.ue_ibe || 0) + 1;
if (window.ue_ibe === 1) {
(function (e, c) { function h(b, a) { f.push([b, a]) } function g(b, a) { if (b) { var c = e.head || e.getElementsByTagName("head")[0] || e.documentElement, d = e.createElement("script"); d.async = "async"; d.src = b; d.setAttribute("crossorigin", "anonymous"); a && a.onerror && (d.onerror = a.onerror); a && a.onload && (d.onload = a.onload); c.insertBefore(d, c.firstChild) } } function k() { ue.uels = g; for (var b = 0; b < f.length; b++) { var a = f[b]; g(a[0], a[1]) } ue.deffered = 1 } var f = []; c.ue && (ue.uels = h, c.ue.attach && c.ue.attach("load", k)) })(document, window);
if (window.ue && window.ue.uels) {
var cel_widgets = [{ "c": "celwidget" }, { "s": "#nav-swmslot > div", "id_gen": function (elem, index) { return 'nav_sitewide_msg'; } }, { "c": "feature" }, { "id": "detail-ilm_div" }];
ue.uels("https://images-fe.ssl-images-amazon.com/images/I/31bJewCvY-L.js");
}
var ue_mbl = ue_csm.ue.exec(function (h, a) {
function s(c) {
b = c || {}; a.AMZNPerformance = b; b.transition = b.transition || {}; b.timing = b.timing || {}; if (a.csa) { var d; b.timing.transitionStart && (d = b.timing.transitionStart); b.timing.processStart && (d = b.timing.processStart); d && (csa("PageTiming")("mark", "nativeTransitionStart", d), csa("PageTiming")("mark", "transitionStart", d)) } h.ue.exec(t, "csm-android-check")() && b.tags instanceof Array && (c = -1 != b.tags.indexOf("usesAppStartTime") || b.transition.type ? !b.transition.type && -1 <
b.tags.indexOf("usesAppStartTime") ? "warm-start" : void 0 : "view-transition", c && (b.transition.type = c)); n = null; "reload" === e._nt && h.ue_orct || "intrapage-transition" === e._nt ? u(b) : "undefined" === typeof e._nt && f && f.timing && f.timing.navigationStart && a.history && "function" === typeof a.History && "object" === typeof a.history && a.history.length && 1 != a.history.length && (b.timing.transitionStart = f.timing.navigationStart); p && e.ssw(q, "" + (b.timing.transitionStart || n || "")); c = b.transition; d = e._nt ? e._nt : void 0; c.subType = d; a.ue &&
a.ue.tag && a.ue.tag("has-AMZNPerformance"); e.isl && a.uex && a.uex("at", "csm-timing"); v()
} function w(c) { a.ue && a.ue.count && a.ue.count("csm-cordova-plugin-failed", 1) } function t() { return a.cordova && a.cordova.platformId && "android" == a.cordova.platformId } function u() {
if (p) { var c = e.ssw(q), a = function () { }, x = e.count || a, a = e.tag || a, k = b.timing.transitionStart, g = c && !c.e && c.val; n = c = g ? +c.val : null; k && g && k > c ? (x("csm.jumpStart.mtsDiff", k - c || 0), a("csm-rld-mts-gt")) : k && g ? a("csm-rld-mts-leq") : g ? k || a("csm-rld-mts-no-new") : a("csm-rld-mts-no-old") } f &&
f.timing && f.timing.navigationStart ? b.timing.transitionStart = f.timing.navigationStart : delete b.timing.transitionStart
} function v() { try { a.P.register("AMZNPerformance", function () { return b }) } catch (c) { } } function r() {
if (!b) return ""; ue_mbl.cnt = null; var c = b.timing, d = b.transition, d = ["mts", l(c.transitionStart), "mps", l(c.processStart), "mtt", d.type, "mtst", d.subType, "mtlt", d.launchType]; a.ue && a.ue.tag && (c.fr_ovr && a.ue.tag("fr_ovr"), c.fcp_ovr && a.ue.tag("fcp_ovr"), d.push("fr_ovr", l(c.fr_ovr), "fcp_ovr", l(c.fcp_ovr)));
for (var c = "", e = 0; e < d.length; e += 2) { var f = d[e], g = d[e + 1]; "undefined" !== typeof g && (c += "&" + f + "=" + g) } return c
} function l(a) { if ("undefined" !== typeof a && "undefined" !== typeof m) return a - m } function y(a, d) { b && (m = d, b.timing.transitionStart = a, b.transition.type = "view-transition", b.transition.subType = "ajax-transition", b.transition.launchType = "normal", ue_mbl.cnt = r) } var e = h.ue || {}, m = h.ue_t0, q = "csm-last-mts", p = 1 === h.ue_sswmts, n, f = a.performance, b; if (a.P && a.P.when && a.P.register) return 1 === a.ue_fnt && (m = a.aPageStart ||
h.ue_t0), a.P.when("CSMPlugin").execute(function (a) { a.buildAMZNPerformance && a.buildAMZNPerformance({ successCallback: s, failCallback: w }) }), { cnt: r, ajax: y }
}, "mobile-timing")(ue_csm, ue_csm.window);
(function (d) { d._uess = function () { var a = ""; screen && screen.width && screen.height && (a += "&sw=" + screen.width + "&sh=" + screen.height); var b = function (a) { var b = document.documentElement["client" + a]; return "CSS1Compat" === document.compatMode && b || document.body["client" + a] || b }, c = b("Width"), b = b("Height"); c && b && (a += "&vw=" + c + "&vh=" + b); return a } })(ue_csm);
(function (a) {
function d(a) { c && c("log", a) } var b = document.ue_backdetect, c = a.csa && a.csa("Errors", { producerId: "csa", logOptions: { ent: "all" } }); a.ue_err.buffer && c && (a.ue_err.buffer.forEach(d), a.ue_err.buffer.push = d); b && b.ue_back && a.ue && (a.ue.bfini = b.ue_back.value); a.uet && a.uet("be"); a.onLdEnd && (window.addEventListener ? window.addEventListener("load", a.onLdEnd, !1) : window.attachEvent && window.attachEvent("onload", a.onLdEnd)); a.ueh && a.ueh(0, window, "load", a.onLd, 1); a.ue && a.ue.tag && (a.ue_furl ? (b = a.ue_furl.replace(/\./g,
"-"), a.ue.tag(b)) : a.ue.tag("nofls"))
})(ue_csm);
(function (g, h) { function d(a, d) { var b = {}; if (!e || !f) try { var c = h.sessionStorage; c ? a && ("undefined" !== typeof d ? c.setItem(a, d) : b.val = c.getItem(a)) : f = 1 } catch (g) { e = 1 } e && (b.e = 1); return b } var b = g.ue || {}, a = "", f, e, c, a = d("csmtid"); f ? a = "NA" : a.e ? a = "ET" : (a = a.val, a || (a = b.oid || "NI", d("csmtid", a)), c = d(b.oid), c.e || (c.val = c.val || 0, d(b.oid, c.val + 1)), b.ssw = d); b.tabid = a })(ue_csm, ue_csm.window);
(function (a) {
var e = { rc: 1, hob: 1, hoe: 1, ntd: 1, rd_: 1, _rd: 1 }; "function" === typeof window.addEventListener && window.addEventListener("pageshow", function (b) {
if (b && b.persisted && (b = +new Date, b = { clickTime: b - 1, pageVisible: b }, "object" === typeof b && "object" === typeof a.ue.markers && "object" === typeof a.ue && "function" === typeof a.uex)) {
if ("function" === typeof a.uet) {
for (var c in a.ue.markers) !a.ue.markers.hasOwnProperty(c) || c in e || a.uet(c, void 0, void 0, b.pageVisible); a.uet("tc", void 0, void 0, b.clickTime); a.uet("ty", void 0,
void 0, b.clickTime + 2)
} (c = document.ue_backdetect) && c.ue_back && (a.ue.bfini = +c.ue_back.value + 1); a.ue.isBFonMshop = !0; a.ue.isBFCache = !0; a.ue.t0 = b.clickTime; a.ue.viz = ["visible:0"]; "function" === typeof a.ue.tag && (a.ue.tag("cacheSourceMemory"), a.ue.tag("history-navigation-page-cache")); c = ue_csm.csa && ue_csm.csa("SPA"); var d = ue_csm.csa && ue_csm.csa("PageTiming"); c && d && (c("newPage", { transitionType: "history-navigation-page-cache" }, { keepPageAttributes: !0 }), d("mark", "transitionStart", b.clickTime)); "function" === typeof a.uex &&
a.uex("ld", void 0, void 0, a.ue.t.ld); delete a.ue.isBFonMshop; delete a.ue.isBFCache
}
})
})(ue_csm);
ue_csm.ue.exec(function (e, f) { var a = e.ue || {}, b = a._wlo, d; if (a.ssw) { d = a.ssw("CSM_previousURL").val; var c = f.location, b = b ? b : c && c.href ? c.href.split("#")[0] : void 0; c = (b || "") === a.ssw("CSM_previousURL").val; !c && b && a.ssw("CSM_previousURL", b); d = c ? "reload" : d ? "intrapage-transition" : "first-view" } else d = "unknown"; a._nt = d }, "NavTypeModule")(ue_csm, window);
ue_csm.ue.exec(function (c, a) { function g(a) { a.run(function (e) { d.tag("csm-feature-" + a.name + ":" + e); d.isl && c.uex("at") }) } if (a.addEventListener) for (var d = c.ue || {}, f = [{ name: "touch-enabled", run: function (b) { var e = function () { a.removeEventListener("touchstart", c, !0); a.removeEventListener("mousemove", d, !0) }, c = function () { b("true"); e() }, d = function () { b("false"); e() }; a.addEventListener("touchstart", c, !0); a.addEventListener("mousemove", d, !0) } }], b = 0; b < f.length; b++)g(f[b]) }, "csm-features")(ue_csm, window);
(function (a, e) { function d(a) { b && b("recordCounter", a.c, a.v) } var c = e.images, b = a.csa && a.csa("Metrics", { producerId: "csa" }); c && c.length && a.ue.count("totalImages", c.length); a.ue.cv.buffer && b && (a.ue.cv.buffer.forEach(d), a.ue.cv.buffer.push = d) })(ue_csm, document);
(function (b) {
function c() { var d = []; a.log && a.log.isStub && a.log.replay(function (a) { e(d, a) }); a.clog && a.clog.isStub && a.clog.replay(function (a) { e(d, a) }); d.length && (a._flhs += 1, n(d), p(d)) } function g() { a.log && a.log.isStub && (a.onflush && a.onflush.replay && a.onflush.replay(function (a) { a[0]() }), a.onunload && a.onunload.replay && a.onunload.replay(function (a) { a[0]() }), c()) } function e(d, b) { var c = b[1], f = b[0], e = {}; a._lpn[c] = (a._lpn[c] || 0) + 1; e[c] = f; d.push(e) } function n(b) {
q && (a._lpn.csm = (a._lpn.csm || 0) + 1, b.push({
csm: {
k: "chk",
f: a._flhs, l: a._lpn, s: "inln"
}
}))
} function p(a) { if (h) a = k(a), b.navigator.sendBeacon(l, a); else { a = k(a); var c = new b[f]; c.open("POST", l, !0); c.setRequestHeader && c.setRequestHeader("Content-type", "text/plain"); c.send(a) } } function k(a) { return JSON.stringify({ rid: b.ue_id, sid: b.ue_sid, mid: b.ue_mid, mkt: b.ue_mkt, sn: b.ue_sn, reqs: a }) } var f = "XMLHttpRequest", q = 1 === b.ue_ddq, a = b.ue, r = b[f] && "withCredentials" in new b[f], h = b.navigator && b.navigator.sendBeacon, l = "//" + b.ue_furl + "/1/batch/1/OE/", m = b.ue_fci_ft || 5E3; a && (r || h) &&
(a._flhs = a._flhs || 0, a._lpn = a._lpn || {}, a.attach && (a.attach("beforeunload", a.exec(g, "fcli-bfu")), a.attach("pagehide", a.exec(g, "fcli-ph"))), m && b.setTimeout(a.exec(c, "fcli-t"), m), a._ffci = a.exec(c))
})(window);
(function (k, c) {
function l(a, b) { return a.filter(function (a) { return a.initiatorType == b }) } function f(a, c) { if (b.t[a]) { var g = b.t[a] - b._t0, e = c.filter(function (a) { return 0 !== a.responseEnd && m(a) < g }), f = l(e, "script"), h = l(e, "link"), k = l(e, "img"), n = e.map(function (a) { return a.name.split("/")[2] }).filter(function (a, b, c) { return a && c.lastIndexOf(a) == b }), q = e.filter(function (a) { return a.duration < p }), s = g - Math.max.apply(null, e.map(m)) < r | 0; "af" == a && (b._afjs = f.length); return a + ":" + [e[d], f[d], h[d], k[d], n[d], q[d], s].join("-") } }
function m(a) { return a.responseEnd - (b._t0 - c.timing.navigationStart) } function n() { var a = c[h]("resource"), d = f("cf", a), g = f("af", a), a = f("ld", a); delete b._rt; b._ld = b.t.ld - b._t0; b._art && b._art(); return [d, g, a].join("_") } var p = 20, r = 50, d = "length", b = k.ue, h = "getEntriesByType"; b._rre = m; b._rt = c && c.timing && c[h] && n
})(ue_csm, window.performance);
(function (c, d) { var b = c.ue, a = d.navigator; b && b.tag && a && (a = a.connection || a.mozConnection || a.webkitConnection) && a.type && b.tag("netInfo:" + a.type) })(ue_csm, window);
(function (c, d) {
function h(a, b) { for (var c = [], d = 0; d < a.length; d++) { var e = a[d], f = b.encode(e); if (e[k]) { var g = b.metaSep, e = e[k], l = b.metaPairSep, h = [], m = void 0; for (m in e) e.hasOwnProperty(m) && h.push(m + "=" + e[m]); e = h.join(l); f += g + e } c.push(f) } return c.join(b.resourceSep) } function s(a) {
var b = a[k] = a[k] || {}; b[t] || (b[t] = c.ue_mid); b[u] || (b[u] = c.ue_sid); b[f] || (b[f] = c.ue_id); b.csm = 1; a = "//" + c.ue_furl + "/1/" + a[v] + "/1/OP/" + a[w] + "/" + a[x] + "/" + h([a], y); if (n) try { n.call(d[p], a) } catch (g) { c.ue.sbf = 1, (new Image).src = a } else (new Image).src =
a
} function q() { g && g.isStub && g.replay(function (a, b, c) { a = a[0]; b = a[k] = a[k] || {}; b[f] = b[f] || c; s(a) }); l.impression = s; g = null } if (!(1 < c.ueinit)) {
var k = "metadata", x = "impressionType", v = "foresterChannel", w = "programGroup", t = "marketplaceId", u = "session", f = "requestId", p = "navigator", l = c.ue || {}, n = d[p] && d[p].sendBeacon, r = function (a, b, c, d) { return { encode: d, resourceSep: a, metaSep: b, metaPairSep: c } }, y = r("", "?", "&", function (a) { return h(a.impressionData, z) }), z = r("/", ":", ",", function (a) {
return a.featureName + ":" + h(a.resources,
A)
}), A = r(",", "@", "|", function (a) { return a.id }), g = l.impression; n ? q() : (l.attach("load", q), l.attach("beforeunload", q)); try { d.P && d.P.register && d.P.register("impression-client", function () { }) } catch (B) { c.ueLogError(B, { logLevel: "WARN" }) }
}
})(ue_csm, window);
var ue_pty = "Detail";
var ue_spty = "Kindle_HW";
var ue_pti = "B0BF75VM4T";
var ue_adb = 4;
var ue_adb_rtla = 1;
ue_csm.ue.exec(function (y, a) {
function t() { if (d && f) { var a; a: { try { a = d.getItem(g); break a } catch (c) { } a = void 0 } if (a) return b = a, !0 } return !1 } function u() { if (a.fetch) fetch(m).then(function (a) { if (!a.ok) throw Error(a.statusText); return a.text ? a.text() : null }).then(function (b) { b ? (-1 < b.indexOf("window.ue_adb_chk = 1") && (a.ue_adb_chk = 1), n()) : h() })["catch"](h); else e.uels(m, { onerror: h, onload: n }) } function h() { b = k; l(); if (f) try { d.setItem(g, b) } catch (a) { } } function n() {
b = 1 === a.ue_adb_chk ? p : k; l(); if (f) try {
d.setItem(g,
b)
} catch (c) { }
} function q() { a.ue_adb_rtla && c && 0 < c.ec && !1 === r && (c.elh = null, ueLogError({ m: "Hit Info", fromOnError: 1 }, { logLevel: "INFO", adb: b }), r = !0) } function l() { e.tag(b); e.isl && a.uex && uex("at", b); s && s.updateCsmHit("adb", b); c && 0 < c.ec ? q() : a.ue_adb_rtla && c && (c.elh = q) } function v() { return b } if (a.ue_adb) {
a.ue_fadb = a.ue_fadb || 10; var e = a.ue, k = "adblk_yes", p = "adblk_no", m = "https://m.media-amazon.com/images/G/01/csm/showads.v2.js?category=ad&adstype=-ad-column-&ad_size=-housead-", b = "adblk_unk", d; a: {
try {
d = a.localStorage;
break a
} catch (z) { } d = void 0
} var g = "csm:adb", c = a.ue_err, s = e.cookie, f = void 0 !== a.localStorage, w = Math.random() > 1 - 1 / a.ue_fadb, r = !1, x = t(); w || !x ? u() : l(); a.ue_isAdb = v; a.ue_isAdb.unk = "adblk_unk"; a.ue_isAdb.no = p; a.ue_isAdb.yes = k
}
}, "adb")(document, window);
(function (c, l, m) {
function h(a) { if (a) try { if (a.id) return "//*[@id='" + a.id + "']"; var b, d = 1, e; for (e = a.previousSibling; e; e = e.previousSibling)e.nodeName === a.nodeName && (d += 1); b = d; var c = a.nodeName; 1 !== b && (c += "[" + b + "]"); a.parentNode && (c = h(a.parentNode) + "/" + c); return c } catch (f) { return "DETACHED" } } function f(a) { if (a && a.getAttribute) return a.getAttribute(k) ? a.getAttribute(k) : f(a.parentElement) } var k = "data-cel-widget", g = !1, d = []; (c.ue || {}).isBF = function () {
try {
var a = JSON.parse(localStorage["csm-bf"] || "[]"), b = 0 <= a.indexOf(c.ue_id);
a.unshift(c.ue_id); a = a.slice(0, 20); localStorage["csm-bf"] = JSON.stringify(a); return b
} catch (d) { return !1 }
}(); c.ue_utils = {
getXPath: h, getFirstAscendingWidget: function (a, b) { c.ue_cel && c.ue_fem ? !0 === g ? b(f(a)) : d.push({ element: a, callback: b }) : b() }, notifyWidgetsLabeled: function () { if (!1 === g) { g = !0; for (var a = f, b = 0; b < d.length; b++)if (d[b].hasOwnProperty("callback") && d[b].hasOwnProperty("element")) { var c = d[b].callback, e = d[b].element; "function" === typeof c && "function" === typeof a && c(a(e)) } d = null } }, extractStringValue: function (a) {
if ("string" ===
typeof a) return a
}
}
})(ue_csm, window, document);
(function (a) {
a.ue_cel || (a.ue_cel = function () {
function m(a, r) { r ? r.r = u : r = { r: u, c: 1 }; D || (!ue_csm.ue_sclog && r.clog && b.clog ? b.clog(a, r.ns || s, r) : r.glog && b.glog ? b.glog(a, r.ns || s, r) : b.log(a, r.ns || s, r)) } function n(a, b) { "function" === typeof p && p("log", { schemaId: t + ".RdCSI.1", eventType: a, clientData: b }, { ent: { page: ["requestId"] } }) } function c() { var a = q.length; if (0 < a) { for (var r = [], c = 0; c < a; c++) { var d = q[c].api; d.ready() ? (d.on({ ts: b.d, ns: s }), g.push(q[c]), m({ k: "mso", n: q[c].name, t: b.d() })) : r.push(q[c]) } q = r } } function f() {
if (!f.executed) {
for (var a =
0; a < g.length; a++)g[a].api.off && g[a].api.off({ ts: b.d, ns: s }); B(); m({ k: "eod", t0: b.t0, t: b.d() }, { c: 1, il: 1 }); f.executed = 1; for (a = 0; a < g.length; a++)q.push(g[a]); g = []; d(v); d(A)
}
} function B(a) { m({ k: "hrt", t: b.d() }, { c: 1, il: 1, n: a }); y = Math.min(w, e * y); z() } function z() { d(A); A = k(function () { B(!0) }, y) } function x() { f.executed || B() } var l = a.window, k = l.setTimeout, d = l.clearTimeout, e = 1.5, w = l.ue_cel_max_hrt || 3E4, t = "robotdetection", q = [], g = [], s = a.ue_cel_ns || "cel", v, A, b = a.ue, F = a.uet, C = a.uex, u = b.rid, D = a.ue_dsbl_cel, h = l.csa, p, y =
l.ue_cel_hrt_int || 3E3, E = l.requestAnimationFrame || function (a) { a() }; h && (p = h("Events", { producerId: t })); if (b.isBF) m({ k: "bft", t: b.d() }); else {
"function" == typeof F && F("bb", "csmCELLSframework", { wb: 1 }); k(c, 0); b.onunload(f); if (b.onflush) b.onflush(x); v = k(f, 6E5); z(); "function" == typeof C && C("ld", "csmCELLSframework", { wb: 1 }); return {
registerModule: function (a, r) { q.push({ name: a, api: r }); m({ k: "mrg", n: a, t: b.d() }); c() }, reset: function (a) {
m({ k: "rst", t0: b.t0, t: b.d() }); q = q.concat(g); g = []; for (var r = q.length, e = 0; e < r; e++)q[e].api.off(),
q[e].api.reset(); u = a || b.rid; c(); d(v); v = k(f, 6E5); f.executed = 0
}, timeout: function (a, b) { return k(function () { E(function () { f.executed || a() }) }, b) }, log: m, csaEventLog: n, off: f
}
}
}())
})(ue_csm);
(function (a) {
a.ue_pdm || !a.ue_cel || a.ue.isBF || (a.ue_pdm = function () {
function m() {
try {
var b = d.screen; if (b) { var c = { w: b.width, aw: b.availWidth, h: b.height, ah: b.availHeight, cd: b.colorDepth, pd: b.pixelDepth }; g && g.w === c.w && g.h === c.h && g.aw === c.aw && g.ah === c.ah && g.pd === c.pd && g.cd === c.cd || (g = c, g.t = t(), g.k = "sci", F(g), D && h("sci", { h: (g.h || "0") + "" })) } var k = e.body || {}, f = e.documentElement || {}, n = {
w: Math.max(k.scrollWidth || 0, k.offsetWidth || 0, f.clientWidth || 0, f.scrollWidth || 0, f.offsetWidth || 0), h: Math.max(k.scrollHeight ||
0, k.offsetHeight || 0, f.clientHeight || 0, f.scrollHeight || 0, f.offsetHeight || 0)
}; s && s.w === n.w && s.h === n.h || (s = n, s.t = t(), s.k = "doi", F(s)); w = a.ue_cel.timeout(m, q); A += 1
} catch (p) { d.ueLogError && ueLogError(p, { attribution: "csm-cel-page-module", logLevel: "WARN" }) }
} function n() { x("ebl", "default", !1) } function c() { x("efo", "default", !0) } function f() { x("ebl", "app", !1) } function B() { x("efo", "app", !0) } function z() { d.setTimeout(function () { e[E] ? x("ebl", "pageviz", !1) : x("efo", "pageviz", !0) }, 0) } function x(a, b, c) {
v !== c && (F({
k: a,
t: t(), s: b
}, { ff: !0 === c ? 0 : 1 }), D && h(a, { t: (t() || "0") + "", s: b })); v = c
} function l() { b.attach && (p && b.attach(y, z, e), G && P.when("mash").execute(function (a) { a && a.addEventListener && (a.addEventListener("appPause", f), a.addEventListener("appResume", B)) }), b.attach("blur", n, d), b.attach("focus", c, d)) } function k() {
b.detach && (p && b.detach(y, z, e), G && P.when("mash").execute(function (a) { a && a.removeEventListener && (a.removeEventListener("appPause", f), a.removeEventListener("appResume", B)) }), b.detach("blur", n, d), b.detach("focus",
c, d))
} var d = a.window, e = a.document, w, t, q, g, s, v = null, A = 0, b = a.ue, F = a.ue_cel.log, C = a.uet, u = a.uex, D = d.csa, h = a.ue_cel.csaEventLog, p = !!b.pageViz, y = p && b.pageViz.event, E = p && b.pageViz.propHid, G = d.P && d.P.when; "function" == typeof C && C("bb", "csmCELLSpdm", { wb: 1 }); return {
on: function (a) { q = a.timespan || 500; t = a.ts; l(); a = d.location; F({ k: "pmd", o: a.origin, p: a.pathname, t: t() }); m(); "function" == typeof u && u("ld", "csmCELLSpdm", { wb: 1 }) }, off: function (a) { clearTimeout(w); k(); b.count && b.count("cel.PDM.TotalExecutions", A) }, ready: function () {
return e.body &&
a.ue_cel && a.ue_cel.log
}, reset: function () { g = s = null }
}
}(), a.ue_cel && a.ue_cel.registerModule("page module", a.ue_pdm))
})(ue_csm);
(function (a) {
a.ue_vpm || !a.ue_cel || a.ue.isBF || (a.ue_vpm = function () {
function m() { var a = z(), b = { w: k.innerWidth, h: k.innerHeight, x: k.pageXOffset, y: k.pageYOffset }; c && c.w == b.w && c.h == b.h && c.x == b.x && c.y == b.y || (b.t = a, b.k = "vpi", c = b, e(c, { clog: 1 }), s && v("vpi", { t: (c.t || "0") + "", h: (c.h || "0") + "", y: (c.y || "0") + "", w: (c.w || "0") + "", x: (c.x || "0") + "" })); f = 0; x = z() - a; l += 1 } function n() { f || (f = a.ue_cel.timeout(m, B)) } var c, f, B, z, x = 0, l = 0, k = a.window, d = a.ue, e = a.ue_cel.log, w = a.uet, t = a.uex, q = d.attach, g = d.detach, s = k.csa, v = a.ue_cel.csaEventLog;
"function" == typeof w && w("bb", "csmCELLSvpm", { wb: 1 }); return { on: function (a) { z = a.ts; B = a.timespan || 100; m(); q && (q("scroll", n), q("resize", n)); "function" == typeof t && t("ld", "csmCELLSvpm", { wb: 1 }) }, off: function (a) { clearTimeout(f); g && (g("scroll", n), g("resize", n)); d.count && (d.count("cel.VPI.TotalExecutions", l), d.count("cel.VPI.TotalExecutionTime", x), d.count("cel.VPI.AverageExecutionTime", x / l)) }, ready: function () { return a.ue_cel && a.ue_cel.log }, reset: function () { c = void 0 }, getVpi: function () { return c } }
}(), a.ue_cel &&
a.ue_cel.registerModule("viewport module", a.ue_vpm))
})(ue_csm);
(function (a) {
if (!a.ue_fem && a.ue_cel && a.ue_utils) {
var m = a.ue || {}, n = a.window, c = n.document; !m.isBF && !a.ue_fem && c.querySelector && n.getComputedStyle && [].forEach && (a.ue_fem = function () {
function f(a, b) { return a > b ? 3 > a - b : 3 > b - a } function B(a, b) {
var c = n.pageXOffset, d = n.pageYOffset, k; a: {
try {
if (a) {
var e = a.getBoundingClientRect(), g, m = 0 === a.offsetWidth && 0 === a.offsetHeight; c: {
for (var h = a.parentNode, p = e.left || 0, w = e.top || 0, q = e.width || 0, s = e.height || 0; h && h !== document.body;) {
var l; d: {
try {
var r = void 0; if (h) var t = h.getBoundingClientRect(),
r = { x: t.left || 0, y: t.top || 0, w: t.width || 0, h: t.height || 0 }; else r = void 0; l = r; break d
} catch (I) { } l = void 0
} var u = window.getComputedStyle(h), v = "hidden" === u.overflow, x = v || "hidden" === u.overflowX, y = v || "hidden" === u.overflowY, z = w + s - 1 < l.y + 1 || w + 1 > l.y + l.h - 1; if ((p + q - 1 < l.x + 1 || p + 1 > l.x + l.w - 1) && x || z && y) { g = !0; break c } h = h.parentNode
} g = !1
} k = { x: e.left + c || 0, y: e.top + d || 0, w: e.width || 0, h: e.height || 0, d: (m || g) | 0 }
} else k = void 0; break a
} catch (J) { } k = void 0
} if (k && !a.cel_b) a.cel_b = k, D({
n: a.getAttribute(A), w: a.cel_b.w, h: a.cel_b.h, d: a.cel_b.d,
x: a.cel_b.x, y: a.cel_b.y, t: b, k: "ewi", cl: a.className
}, { clog: 1 }); else { if (c = k) c = a.cel_b, d = k, c = d.d === c.d && 1 === d.d ? !1 : !(f(c.x, d.x) && f(c.y, d.y) && f(c.w, d.w) && f(c.h, d.h) && c.d === d.d); c && (a.cel_b = k, D({ n: a.getAttribute(A), w: a.cel_b.w, h: a.cel_b.h, d: a.cel_b.d, x: a.cel_b.x, y: a.cel_b.y, t: b, k: "ewi" }, { clog: 1 })) }
} function z(d, e) {
var f; f = d.c ? c.getElementsByClassName(d.c) : d.id ? [c.getElementById(d.id)] : c.querySelectorAll(d.s); d.w = []; for (var g = 0; g < f.length; g++) {
var h = f[g]; if (h) {
if (!h.getAttribute(A)) {
var l = h.getAttribute("cel_widget_id") ||
(d.id_gen || u)(h, g) || h.id; h.setAttribute(A, l)
} d.w.push(h); k(Q, h, e)
}
} !1 === C && (F++, F === b.length && (C = !0, a.ue_utils.notifyWidgetsLabeled()))
} function x(a, b) { h.contains(a) || D({ n: a.getAttribute(A), t: b, k: "ewd" }, { clog: 1 }) } function l(a) { K.length && ue_cel.timeout(function () { if (s) { for (var b = R(), c = !1; R() - b < g && !c;) { for (c = S; 0 < c-- && 0 < K.length;) { var d = K.shift(); T[d.type](d.elem, d.time) } c = 0 === K.length } U++; l(a) } }, 0) } function k(a, b, c) { K.push({ type: a, elem: b, time: c }) } function d(a, c) {
for (var d = 0; d < b.length; d++)for (var e =
b[d].w || [], h = 0; h < e.length; h++)k(a, e[h], c)
} function e() { M || (M = a.ue_cel.timeout(function () { M = null; var c = v(); d(W, c); for (var e = 0; e < b.length; e++)k(X, b[e], c); 0 === b.length && !1 === C && (C = !0, a.ue_utils.notifyWidgetsLabeled()); l(c) }, q)) } function w() { M || N || (N = a.ue_cel.timeout(function () { N = null; var a = v(); d(Q, a); l(a) }, q)) } function t() { return y && E && h && h.contains && h.getBoundingClientRect && v } var q = 50, g = 4.5, s = !1, v, A = "data-cel-widget", b = [], F = 0, C = !1, u = function () { }, D = a.ue_cel.log, h, p, y, E, G = n.MutationObserver || n.WebKitMutationObserver ||
n.MozMutationObserver, r = !!G, H, I, O = "DOMAttrModified", L = "DOMNodeInserted", J = "DOMNodeRemoved", N, M, K = [], U = 0, S = null, W = "removedWidget", X = "updateWidgets", Q = "processWidget", T, V = n.performance || {}, R = V.now && function () { return V.now() } || function () { return Date.now() }; "function" == typeof uet && uet("bb", "csmCELLSfem", { wb: 1 }); return {
on: function (d) {
function k() {
if (t()) {
T = { removedWidget: x, updateWidgets: z, processWidget: B }; if (r) {
var a = { attributes: !0, subtree: !0 }; H = new G(w); I = new G(e); H.observe(h, a); I.observe(h, {
childList: !0,
subtree: !0
}); I.observe(p, a)
} else y.call(h, O, w), y.call(h, L, e), y.call(h, J, e), y.call(p, L, w), y.call(p, J, w); e()
}
} h = c.body; p = c.head; y = h.addEventListener; E = h.removeEventListener; v = d.ts; b = a.cel_widgets || []; S = d.bs || 5; m.deffered ? k() : m.attach && m.attach("load", k); "function" == typeof uex && uex("ld", "csmCELLSfem", { wb: 1 }); s = !0
}, off: function () {
t() && (I && (I.disconnect(), I = null), H && (H.disconnect(), H = null), E.call(h, O, w), E.call(h, L, e), E.call(h, J, e), E.call(p, L, w), E.call(p, J, w)); m.count && m.count("cel.widgets.batchesProcessed",
U); s = !1
}, ready: function () { return a.ue_cel && a.ue_cel.log }, reset: function () { b = a.cel_widgets || [] }
}
}(), a.ue_cel && a.ue_fem && a.ue_cel.registerModule("features module", a.ue_fem))
}
})(ue_csm);
(function (a) {
!a.ue_mcm && a.ue_cel && a.ue_utils && !a.ue.isBF && (a.ue_mcm = function () {
function m(a, d) {
var e = a.srcElement || a.target || {}, f = { k: n, w: (d || {}).ow || (B.body || {}).scrollWidth, h: (d || {}).oh || (B.body || {}).scrollHeight, t: (d || {}).ots || c(), x: a.pageX, y: a.pageY, p: l.getXPath(e), n: e.nodeName }; z && "function" === typeof z.now && a.timeStamp && (f.dt = (d || {}).odt || z.now() - a.timeStamp, f.dt = parseFloat(f.dt.toFixed(2))); a.button && (f.b = a.button); e.href && (f.r = l.extractStringValue(e.href)); e.id && (f.i = e.id); e.className && e.className.split &&
(f.c = e.className.split(/\s+/)); x(f, { c: 1 })
} var n = "mcm", c, f = a.window, B = f.document, z = f.performance, x = a.ue_cel.log, l = a.ue_utils; return { on: function (k) { c = k.ts; a.ue_cel_stub && a.ue_cel_stub.replayModule(n, m); f.addEventListener && f.addEventListener("mousedown", m, !0) }, off: function (a) { f.addEventListener && f.removeEventListener("mousedown", m, !0) }, ready: function () { return a.ue_cel && a.ue_cel.log }, reset: function () { } }
}(), a.ue_cel && a.ue_cel.registerModule("mouse click module", a.ue_mcm))
})(ue_csm);
(function (a) {
a.ue_mmm || !a.ue_cel || a.ue.isBF || (a.ue_mmm = function (m) {
function n(a, b) { var c = { x: a.pageX || a.x || 0, y: a.pageY || a.y || 0, t: l() }; !b && p && (c.t - p.t < B || c.x == p.x && c.y == p.y) || (p = c, u.push(c)) } function c() {
if (u.length) {
F = H.now(); for (var a = 0; a < u.length; a++) {
var c = u[a], d = a; y = u[h]; E = c; var e = void 0; if (!(e = 2 > d)) { e = void 0; a: if (u[d].t - u[d - 1].t > f) e = 0; else { for (e = h + 1; e < d; e++) { var g = y, k = E, l = u[e]; G = (k.x - g.x) * (g.y - l.y) - (g.x - l.x) * (k.y - g.y); if (G * G / ((k.x - g.x) * (k.x - g.x) + (k.y - g.y) * (k.y - g.y)) > z) { e = 0; break a } } e = 1 } e = !e } (r =
e) ? h = d - 1 : D.pop(); D.push(c)
} C = H.now() - F; s = Math.min(s, C); v = Math.max(v, C); A = (A * b + C) / (b + 1); b += 1; q({ k: x, e: D, min: Math.floor(1E3 * s), max: Math.floor(1E3 * v), avg: Math.floor(1E3 * A) }, { c: 1 }); u = []; D = []; h = 0
}
} var f = 100, B = 20, z = 25, x = "mmm1", l, k, d = a.window, e = d.document, w = d.setInterval, t = a.ue, q = a.ue_cel.log, g, s = 1E3, v = 0, A = 0, b = 0, F, C, u = [], D = [], h = 0, p, y, E, G, r, H = m && m.now && m || Date.now && Date || { now: function () { return (new Date).getTime() } }; return {
on: function (a) { l = a.ts; k = a.ns; t.attach && t.attach("mousemove", n, e); g = w(c, 3E3) }, off: function (a) {
k &&
(p && n(p, !0), c()); clearInterval(g); t.detach && t.detach("mousemove", n, e)
}, ready: function () { return a.ue_cel && a.ue_cel.log }, reset: function () { u = []; D = []; h = 0; p = null }
}
}(window.performance), a.ue_cel && a.ue_cel.registerModule("mouse move module", a.ue_mmm))
})(ue_csm);
ue_csm.ue.exec(function (b, c) {
var e = function () { }, f = function () { return { send: function (b, d) { if (d && b) { var a; if (c.XDomainRequest) a = new XDomainRequest, a.onerror = e, a.ontimeout = e, a.onprogress = e, a.onload = e, a.timeout = 0; else if (c.XMLHttpRequest) { if (a = new XMLHttpRequest, !("withCredentials" in a)) throw ""; } else a = void 0; if (!a) throw ""; a.open("POST", b, !0); a.setRequestHeader && a.setRequestHeader("Content-type", "text/plain"); a.send(d) } }, isSupported: !0 } }(), g = function () {
return {
send: function (c, d) {
if (c && d) if (navigator.sendBeacon(c,
d)) b.ue_sbuimp && b.ue && b.ue.ssw && b.ue.ssw("eelsts", "scs"); else throw "";
}, isSupported: !!navigator.sendBeacon && !(c.cordova && c.cordova.platformId && "ios" == c.cordova.platformId)
}
}(); b.ue._ajx = f; b.ue._sBcn = g
}, "Transportation-clients")(ue_csm, window);
ue_csm.ue.exec(function (b, k) {
function B() { for (var a = 0; a < arguments.length; a++) { var c = arguments[a]; try { var g; if (c.isSupported) { var f = u.buildPayload(l, e); g = c.send(K, f) } else throw dummyException; return g } catch (d) { } } a = { m: "All supported clients failed", attribution: "CSMSushiClient_TRANSPORTATION_FAIL", f: "sushi-client.js", logLevel: "ERROR" }; C(a, k.ue_err_chan || "jserr"); b.ue_err.buffer && b.ue_err.buffer.push(a) } function m() {
if (e.length) {
for (var a = 0; a < n.length; a++)n[a](); B(d._sBcn || {}, d._ajx || {}); e = []; h = {}; l =
{}; v = w = r = x = 0
}
} function L() { var a = new Date, c = function (a) { return 10 > a ? "0" + a : a }; return Date.prototype.toISOString ? a.toISOString() : a.getUTCFullYear() + "-" + c(a.getUTCMonth() + 1) + "-" + c(a.getUTCDate()) + "T" + c(a.getUTCHours()) + ":" + c(a.getUTCMinutes()) + ":" + c(a.getUTCSeconds()) + "." + String((a.getUTCMilliseconds() / 1E3).toFixed(3)).slice(2, 5) + "Z" } function y(a) { try { return JSON.stringify(a) } catch (c) { } return null } function D(a, c, g, f) {
var q = !1; f = f || {}; s++; if (s == E) {
var p = {
m: "Max number of Sushi Logs exceeded", f: "sushi-client.js",
logLevel: "ERROR", attribution: "CSMSushiClient_MAX_CALLS"
}; C(p, k.ue_err_chan || "jserr"); b.ue_err.buffer && b.ue_err.buffer.push(p)
} if (p = !(s >= E)) (p = a && -1 < a.constructor.toString().indexOf("Object") && c && -1 < c.constructor.toString().indexOf("String") && g && -1 < g.constructor.toString().indexOf("String")) || M++; p && (d.count && d.count("Event:" + g, 1), a.producerId = a.producerId || c, a.schemaId = a.schemaId || g, a.timestamp = L(), c = Date.now ? Date.now() : +new Date, g = Math.random().toString().substring(2, 12), a.messageId = b.ue_id + "-" +
c + "-" + g, f && !f.ssd && (a.sessionId = a.sessionId || b.ue_sid, a.requestId = a.requestId || b.ue_id, a.obfuscatedMarketplaceId = a.obfuscatedMarketplaceId || b.ue_mid), (c = y(a)) ? (c = c.length, (e.length == N || r + c > O) && m(), r += c, a = { data: u.compressEvent(a) }, e.push(a), (f || {}).n ? 0 === F ? m() : v || (v = k.setTimeout(m, F)) : w || (w = k.setTimeout(m, P)), q = !0) : q = !1); !q && b.ue_int && console.error("Invalid JS Nexus API call"); return q
} function G() {
if (!H) {
for (var a = 0; a < z.length; a++)z[a](); for (a = 0; a < n.length; a++)n[a](); e.length && (b.ue_sbuimp && b.ue &&
b.ue.ssw && (a = y({ dct: l, evt: e }), b.ue.ssw("eeldata", a), b.ue.ssw("eelsts", "unk")), B(d._sBcn || {})); H = !0
}
} function I(a) { z.push(a) } function J(a) { n.push(a) } var E = 1E3, N = 499, O = 524288, t = function () { }, d = b.ue || {}, C = d.log || t, Q = b.uex || t; (b.uet || t)("bb", "ue_sushi_v1", { wb: 1 }); var K = b.ue_surl || "https://unagi-na.amazon.com/1/events/com.amazon.csm.nexusclient.gamma", R = ["messageId", "timestamp"], A = "#", e = [], h = {}, l = {}, r = 0, x = 0, M = 0, s = 0, z = [], n = [], H = !1, v, w, F = void 0 === b.ue_hpsi ? 1E3 : b.ue_hpsi, P = void 0 === b.ue_lpsi ? 1E4 : b.ue_lpsi,
u = function () { function a(a) { h[a] = A + x++; l[h[a]] = a; return h[a] } function c(b) { if (!(b instanceof Function)) { if (b instanceof Array) { for (var f = [], d = b.length, e = 0; e < d; e++)f[e] = c(b[e]); return f } if (b instanceof Object) { f = {}; for (d in b) b.hasOwnProperty(d) && (f[h[d] ? h[d] : a(d)] = -1 === R.indexOf(d) ? c(b[d]) : b[d]); return f } return "string" === typeof b && (b.length > (A + x).length || b.charAt(0) === A) ? h[b] ? h[b] : a(b) : b } } return { compressEvent: c, buildPayload: function () { return y({ cs: { dct: l }, events: e }) } } }(); (function () {
if (d.event && d.event.isStub) {
if (b.ue_sbuimp &&
b.ue && b.ue.ssw) { var a = b.ue.ssw("eelsts").val; if (a && "unk" === a && (a = b.ue.ssw("eeldata").val)) { var c; a: { try { c = JSON.parse(a); break a } catch (g) { } c = null } c && c.evt instanceof Array && c.dct instanceof Object && (e = c.evt, l = c.dct, e && l && (m(), b.ue.ssw("eeldata", "{}"), b.ue.ssw("eelsts", "scs"))) } } d.event.replay(function (a) { a[3] = a[3] || {}; a[3].n = 1; D.apply(this, a) }); d.onSushiUnload.replay(function (a) { I(a[0]) }); d.onSushiFlush.replay(function (a) { J(a[0]) })
}
})(); d.attach("beforeunload", G); d.attach("pagehide", G); d._cmps = u; d.event =
D; d.event.reset = function () { s = 0 }; d.onSushiUnload = I; d.onSushiFlush = J; try { k.P && k.P.register && k.P.register("sushi-client", t) } catch (S) { b.ueLogError(S, { logLevel: "WARN" }) } Q("ld", "ue_sushi_v1", { wb: 1 })
}, "Nxs-JS-Client")(ue_csm, window);
ue_csm.ue_unrt = 1500;
(function (d, b, t) {
function u(a, g) { var c = a.srcElement || a.target || {}, b = { k: v, t: g.t, dt: g.dt, x: a.pageX, y: a.pageY, p: e.getXPath(c), n: c.nodeName }; a.button && (b.b = a.button); c.type && (b.ty = c.type); c.href && (b.r = e.extractStringValue(c.href)); c.id && (b.i = c.id); c.className && c.className.split && (b.c = c.className.split(/\s+/)); h += 1; e.getFirstAscendingWidget(c, function (a) { b.wd = a; d.ue.log(b, r) }) } function w(a) {
if (!x(a.srcElement || a.target)) {
m += 1; n = !0; var g = f = d.ue.d(), c; p && "function" === typeof p.now && a.timeStamp && (c = p.now() -
a.timeStamp, c = parseFloat(c.toFixed(2))); s = b.setTimeout(function () { u(a, { t: g, dt: c }) }, y)
}
} function z(a) { if (a) { var b = a.filter(A); a.length !== b.length && (q = !0, k = d.ue.d(), n && q && (k && f && d.ue.log({ k: B, t: f, m: Math.abs(k - f) }, r), l(), q = !1, k = 0)) } } function A(a) {
if (!a) return !1; var b = "characterData" === a.type ? a.target.parentElement : a.target; if (!b || !b.hasAttributes || !b.attributes) return !1; var c = {
"class": "gw-clock gw-clock-aria s-item-container-height-auto feed-carousel using-mouse kfs-inner-container".split(" "), id: ["dealClock",
"deal_expiry_timer", "timer"], role: ["timer"]
}, d = !1; Object.keys(c).forEach(function (a) { var e = b.attributes[a] ? b.attributes[a].value : ""; (c[a] || "").forEach(function (a) { -1 !== e.indexOf(a) && (d = !0) }) }); return d
} function x(a) {
if (!a) return !1; var b = (e.extractStringValue(a.nodeName) || "").toLowerCase(), c = (e.extractStringValue(a.type) || "").toLowerCase(), d = (e.extractStringValue(a.href) || "").toLowerCase(); a = (e.extractStringValue(a.id) || "").toLowerCase(); var f = "checkbox color date datetime-local email file month number password radio range reset search tel text time url week".split(" ");
if (-1 !== ["select", "textarea", "html"].indexOf(b) || "input" === b && -1 !== f.indexOf(c) || "a" === b && -1 !== d.indexOf("http") || -1 !== ["sitbreaderrightpageturner", "sitbreaderleftpageturner", "sitbreaderpagecontainer"].indexOf(a)) return !0
} function l() { n = !1; f = 0; b.clearTimeout(s) } function C() { b.ue.onunload(function () { ue.count("armored-cxguardrails.unresponsive-clicks.violations", h); ue.count("armored-cxguardrails.unresponsive-clicks.violationRate", h / m * 100 || 0) }) } if (b.MutationObserver && b.addEventListener && Object.keys &&
d && d.ue && d.ue.log && d.ue_unrt && d.ue_utils) { var y = d.ue_unrt, r = "cel", v = "unr_mcm", B = "res_mcm", p = b.performance, e = d.ue_utils, n = !1, f = 0, s = 0, q = !1, k = 0, h = 0, m = 0; b.addEventListener && (b.addEventListener("mousedown", w, !0), b.addEventListener("beforeunload", l, !0), b.addEventListener("visibilitychange", l, !0), b.addEventListener("pagehide", l, !0)); b.ue && b.ue.event && b.ue.onSushiUnload && b.ue.onunload && C(); (new MutationObserver(z)).observe(t, { childList: !0, attributes: !0, characterData: !0, subtree: !0 }) }
})(ue_csm, window, document);
ue_csm.ue.exec(function (g, e) {
if (e.ue_err) {
var f = ""; e.ue_err.errorHandlers || (e.ue_err.errorHandlers = []); e.ue_err.errorHandlers.push({
name: "fctx", handler: function (a) {
if (!a.logLevel || "FATAL" === a.logLevel) if (f = g.getElementsByTagName("html")[0].innerHTML) {
var b = f.indexOf("var ue_t0=ue_t0||+new Date();"); if (-1 !== b) {
var b = f.substr(0, b).split(String.fromCharCode(10)), d = Math.max(b.length - 10 - 1, 0), b = b.slice(d, b.length - 1); a.fcsmln = d + b.length + 1; a.cinfo = a.cinfo || {}; for (var c = 0; c < b.length; c++)a.cinfo[d + c + 1 + ""] =
b[c]
} b = f.split(String.fromCharCode(10)); a.cinfo = a.cinfo || {}; if (!(a.f || void 0 === a.l || a.l in a.cinfo)) for (c = +a.l - 1, d = Math.max(c - 5, 0), c = Math.min(c + 5, b.length - 1); d <= c; d++)a.cinfo[d + 1 + ""] = b[d]
}
}
})
}
}, "fatals-context")(document, window);
(function (m, b) {
function c(k) {
function f(a) { a && "string" === typeof a && (a = (a = a.match(/^(?:https?:)?\/\/(.*?)(\/|$)/i)) && 1 < a.length ? a[1] : null, a && a && ("number" === typeof e[a] ? e[a]++ : e[a] = 1)) } function d(a) { var e = 10, d = +new Date; a && a.timeRemaining ? e = a.timeRemaining() : a = { timeRemaining: function () { return Math.max(0, e - (+new Date - d)) } }; for (var c = b.performance.getEntries(), k = e; g < c.length && k > n;)c[g].name && f(c[g].name), g++, k = a.timeRemaining(); g >= c.length ? h(!0) : l() } function h(a) {
if (!a) {
a = m.scripts; var c; if (a) for (var d =
0; d < a.length; d++)(c = a[d].getAttribute("src")) && "undefined" !== c && f(c)
} 0 < Object.keys(e).length && (p && ue_csm.ue && ue_csm.ue.event && (a = { domains: e, pageType: b.ue_pty || null, subPageType: b.ue_spty || null, pageTypeId: b.ue_pti || null }, ue_csm.ue_sjslob && (a.lob = ue_csm.ue_lob || "0"), ue_csm.ue.event(a, "csm", "csm.CrossOriginDomains.2")), b.ue_ext = e)
} function l() { !0 === k ? d() : b.requestIdleCallback ? b.requestIdleCallback(d) : b.requestAnimationFrame ? b.requestAnimationFrame(d) : b.setTimeout(d, 100) } function c() {
if (b.performance &&
b.performance.getEntries) { var a = b.performance.getEntries(); !a || 0 >= a.length ? h(!1) : l() } else h(!1)
} var e = b.ue_ext || {}; b.ue_ext || c(); return e
} function q() { setTimeout(c, r) } var s = b.ue_dserr || !1, p = !0, n = 1, r = 2E3, g = 0; b.ue_err && s && (b.ue_err.errorHandlers || (b.ue_err.errorHandlers = []), b.ue_err.errorHandlers.push({
name: "ext", handler: function (b) {
if (!b.logLevel || "FATAL" === b.logLevel) {
var f = c(!0), d = [], h; for (h in f) {
var f = h, g = f.match(/amazon(\.com?)?\.\w{2,3}$/i); g && 1 < g.length || -1 !== f.indexOf("amazon-adsystem.com") ||
-1 !== f.indexOf("amazonpay.com") || -1 !== f.indexOf("cloudfront-labs.amazonaws.com") || d.push(h)
} b.ext = d
}
}
})); b.ue && b.ue.isl ? c() : b.ue && ue.attach && ue.attach("load", q)
})(document, window);
var ue_wtc_c = 3;
ue_csm.ue.exec(function (b, e) {
function l() { for (var a = 0; a < f.length; a++)a: for (var d = s.replace(A, f[a]) + g[f[a]] + t, c = arguments, b = 0; b < c.length; b++)try { c[b].send(d); break a } catch (e) { } g = {}; f = []; n = 0; k = p } function u() { B ? l(q) : l(C, q) } function v(a, m, c) {
r++; if (r > w) d.count && 1 == r - w && (d.count("WeblabTriggerThresholdReached", 1), b.ue_int && console.error("Number of max call reached. Data will no longer be send")); else {
var h = c || {}; h && -1 < h.constructor.toString().indexOf(D) && a && -1 < a.constructor.toString().indexOf(x) && m && -1 <
m.constructor.toString().indexOf(x) ? (h = b.ue_id, c && c.rid && (h = c.rid), c = h, a = encodeURIComponent(",wl=" + a + "/" + m), 2E3 > a.length + p ? (2E3 < k + a.length && u(), void 0 === g[c] && (g[c] = "", f.push(c)), g[c] += a, k += a.length, n || (n = e.setTimeout(u, E))) : b.ue_int && console.error("Invalid API call. The input provided is over 2000 chars.")) : d.count && (d.count("WeblabTriggerImproperAPICall", 1), b.ue_int && console.error("Invalid API call. The input provided does not match the API protocol i.e ue.trigger(String, String, Object)."))
}
} function F() {
d.trigger &&
d.trigger.isStub && d.trigger.replay(function (a) { v.apply(this, a) })
} function y() { z || (f.length && l(q), z = !0) } var t = ":1234", s = "//" + b.ue_furl + "/1/remote-weblab-triggers/1/OE/" + b.ue_mid + ":" + b.ue_sid + ":PLCHLDR_RID$s:wl-client-id%3DCSMTriger", A = "PLCHLDR_RID", E = b.wtt || 1E4, p = s.length + t.length, w = b.mwtc || 2E3, G = 1 === e.ue_wtc_c, B = 3 === e.ue_wtc_c, H = e.XMLHttpRequest && "withCredentials" in new e.XMLHttpRequest, x = "String", D = "Object", d = b.ue, g = {}, f = [], k = p, n, z = !1, r = 0, C = function () {
return {
send: function (a) {
if (H) {
var b = new e.XMLHttpRequest;
b.open("GET", a, !0); G && (b.withCredentials = !0); b.send()
} else throw "";
}
}
}(), q = function () { return { send: function (a) { (new Image).src = a } } }(); e.encodeURIComponent && (d.attach && (d.attach("beforeunload", y), d.attach("pagehide", y)), F(), d.trigger = v)
}, "client-wbl-trg")(ue_csm, window);
(function (k, d, h) {
function f(a, c, b) { a && a.indexOf && 0 === a.indexOf("http") && 0 !== a.indexOf("https") && l(s, c, a, b) } function g(a, c, b) { a && a.indexOf && (location.href.split("#")[0] != a && null !== a && "undefined" !== typeof a || l(t, c, a, b)) } function l(a, c, b, e) { m[b] || (e = u && e ? n(e) : "N/A", d.ueLogError && d.ueLogError({ message: a + c + " : " + b, logLevel: v, stack: "N/A" }, { attribution: e }), m[b] = 1, p++) } function e(a, c) { if (a && c) for (var b = 0; b < a.length; b++)try { c(a[b]) } catch (d) { } } function q() {
return d.performance && d.performance.getEntriesByType ?
d.performance.getEntriesByType("resource") : []
} function n(a) { if (a.id) return "//*[@id='" + a.id + "']"; var c; c = 1; var b; for (b = a.previousSibling; b; b = b.previousSibling)b.nodeName == a.nodeName && (c += 1); b = a.nodeName; 1 != c && (b += "[" + c + "]"); a.parentNode && (b = n(a.parentNode) + "/" + b); return b } function w() { var a = h.images; a && a.length && e(a, function (a) { var b = a.getAttribute("src"); f(b, "img", a); g(b, "img", a) }) } function x() { var a = h.scripts; a && a.length && e(a, function (a) { var b = a.getAttribute("src"); f(b, "script", a); g(b, "script", a) }) }
function y() { var a = h.styleSheets; a && a.length && e(a, function (a) { if (a = a.ownerNode) { var b = a.getAttribute("href"); f(b, "style", a); g(b, "style", a) } }) } function z() { if (A) { var a = q(); e(a, function (a) { f(a.name, a.initiatorType) }) } } function B() { e(q(), function (a) { g(a.name, a.initiatorType) }) } function r() { var a; a = d.location && d.location.protocol ? d.location.protocol : void 0; "https:" == a && (z(), w(), x(), y(), B(), p < C && setTimeout(r, D)) } var s = "[CSM] Insecure content detected ", t = "[CSM] Ajax request to same page detected ", v = "WARN",
m = {}, p = 0, D = k.ue_nsip || 1E3, C = 5, A = 1 == k.ue_urt, u = !0; ue_csm.ue_disableNonSecure || (d.performance && d.performance.setResourceTimingBufferSize && d.performance.setResourceTimingBufferSize(300), r())
})(ue_csm, window, document);
var ue_aa_a = "";
if (ue.trigger && (ue_aa_a === "C" || ue_aa_a === "T1")) {
ue.trigger("UEDATA_AA_SERVERSIDE_ASSIGNMENT_CLIENTSIDE_TRIGGER_190249", ue_aa_a);
}
(function (f, b) {
function g() { try { b.PerformanceObserver && "function" === typeof b.PerformanceObserver && (a = new b.PerformanceObserver(function (b) { c(b.getEntries()) }), a.observe(d)) } catch (h) { k() } } function m() { for (var h = d.entryTypes, a = 0; a < h.length; a++)c(b.performance.getEntriesByType(h[a])) } function c(a) {
if (a && Array.isArray(a)) {
for (var c = 0, e = 0; e < a.length; e++) { var d = l.indexOf(a[e].name); if (-1 !== d) { var g = Math.round(b.performance.timing.navigationStart + a[e].startTime); f.uet(n[d], void 0, void 0, g); c++ } } l.length ===
c && k()
}
} function k() { a && a.disconnect && "function" === typeof a.disconnect && a.disconnect() } if ("function" === typeof f.uet && b.performance && "object" === typeof b.performance && b.performance.getEntriesByType && "function" === typeof b.performance.getEntriesByType && b.performance.timing && "object" === typeof b.performance.timing && "number" === typeof b.performance.timing.navigationStart) {
var d = { entryTypes: ["paint"] }, l = ["first-paint", "first-contentful-paint"], n = ["fp", "fcp"], a; try { m(), g() } catch (p) {
f.ueLogError(p, {
logLevel: "ERROR",
attribution: "performanceMetrics"
})
}
}
})(ue_csm, window);
if (window.csa) {
csa("Events")("setEntity", {
page: { pageType: "Detail", subPageType: "Kindle_HW", pageTypeId: "B0BF75VM4T" }
});
}
csa.plugin(function (c) { var m = "transitionStart", n = "pageVisible", e = "PageTiming", t = "visibilitychange", s = "$latency.visible", i = c.global, r = (i.performance || {}).timing, a = ["navigationStart", "unloadEventStart", "unloadEventEnd", "redirectStart", "redirectEnd", "fetchStart", "domainLookupStart", "domainLookupEnd", "connectStart", "connectEnd", "secureConnectionStart", "requestStart", "responseStart", "responseEnd", "domLoading", "domInteractive", "domContentLoadedEventStart", "domContentLoadedEventEnd", "domComplete", "loadEventStart", "loadEventEnd"], u = c.config, o = i.Math, l = o.max, g = o.floor, d = i.document || {}, f = (r || {}).navigationStart, v = f, p = 0, S = null; if (i.Object.keys && [].forEach && !u["KillSwitch." + e]) { if (!r || null === f || f <= 0 || void 0 === f) return c.error("Invalid navigation timing data: " + f); S = new E({ schemaId: "<ns>.PageLatency.6", producerId: "csa" }), "boolean" != typeof d.hidden && "string" != typeof d.visibilityState || !d.removeEventListener ? c.emit(s) : b() ? (c.emit(s), I(n, f)) : c.on(d, t, function e() { b() && (v = c.time(), d.removeEventListener(t, e), I(m, v), I(n, v), c.emit(s)) }), c.once("$unload", h), c.once("$load", h), c.on("$pageTransition", function () { v = c.time() }), c.register(e, { mark: I, instance: function (e) { return new E(e) } }) } function E(e) { var i, r = null, a = e.ent || { page: ["pageType", "subPageType", "requestId"] }, o = e.logger || c("Events", { producerId: e.producerId, lob: u.lob || "0" }); if (!e || !e.producerId || !e.schemaId) return c.error("The producer id and schema Id must be defined for PageLatencyInstance."); function d() { return i || v } function n() { r = c.UUID() } this.mark = function (n, t) { if (null != n) return t = t || c.time(), n === m && (i = t), c.once(s, function () { o("log", { messageId: r, __merge: function (e) { e.markers[n] = function (e, n) { return l(0, n - (e || v)) }(d(), t), e.markerTimestamps[n] = g(t) }, markers: {}, markerTimestamps: {}, navigationStartTimestamp: d() ? new Date(d()).toISOString() : null, schemaId: e.schemaId }, { ent: a }) }), t }, n(), c.on("$beforePageTransition", n) } function I(e, n) { e === m && (v = n); var t = S.mark(e, n); c.emit("$timing:" + e, t) } function h() { if (!p) { for (var e = 0; e < a.length; e++)r[a[e]] && I(a[e], r[a[e]]); p = 1 } } function b() { return !d.hidden || "visible" === d.visibilityState } }); csa.plugin(function (u) { var f, c, l = "length", a = "parentElement", t = "target", i = "getEntriesByName", e = "perf", n = null, r = "_csa_flt", o = "_csa_llt", s = "previousSibling", d = "visuallyLoaded", g = "client", h = "offset", m = "scroll", p = "Width", v = "Height", y = g + p, E = g + v, S = h + p, b = h + v, x = m + p, O = m + v, _ = "_osrc", w = "_elt", L = "_eid", T = 10, I = 5, N = 15, k = 100, B = u.global, H = u.timeout, W = B.Math, Y = W.max, C = W.floor, F = W.ceil, M = B.document || {}, R = M.body || {}, V = M.documentElement || {}, $ = B.performance || {}, P = ($.timing || {}).navigationStart, X = Date.now, D = Object.values || (u.types || {}).ovl, J = u("PageTiming"), j = u("SpeedIndexBuffers"), q = [], Q = [], U = [], z = [], A = [], G = [], K = .1, Z = .1, ee = 0, ne = 0, te = !0, ie = 0, re = 0, oe = 1 == u.config["SpeedIndex.ForceReplay"], ae = 0, fe = 1, ue = 0, ce = {}, le = [], se = 0, de = { buffered: 1 }; function ge(e) { u.global.ue_csa_ss_tag || u.emit("$csmTag:" + e, 0, de) } function he() { for (var e = X(), n = 0; f;) { if (0 !== f[l]) { if (!1 !== f.h(f[0]) && f.shift(), n++, !oe && n % T == 0 && X() - e > I) break } else f = f.n } ee = 0, f && (ee || (!0 === M.hidden ? (oe = 1, he()) : u.timeout(he, 0))) } function me(e, n, t, i, r) { ue = C(e), q = n, Q = t, U = i, G = r; var o = M.createTreeWalker(M.body, NodeFilter.SHOW_TEXT, null, null), a = { w: B.innerWidth, h: B.innerHeight, x: B.pageXOffset, y: B.pageYOffset }; M.body[w] = e, z.push({ w: o, vp: a }), A.push({ img: M.images, iter: 0 }), q.h = pe, (q.n = Q).h = ve, (Q.n = U).h = ye, (U.n = z).h = Ee, (z.n = A).h = Se, (A.n = G).h = be, f = q, he() } function pe(e) { e.m.forEach(function (e) { for (var n = e; n && (e === n || !n[r] || !n[o]);)n[r] || (n[r] = e[r]), n[o] || (n[o] = e[o]), n[w] = n[r] - P, n = n[s] }) } function ve(e) { e.m.forEach(function (e) { var n = e[t]; _ in n || (n[_] = e.oldValue) }) } function ye(n) { n.m.forEach(function (e) { e[t][w] = n.t - P }) } function Ee(e) { for (var n, t = e.vp, i = e.w, r = T; (n = i.nextNode()) && 0 < r;) { r -= 1; var o = (n[a] || {}).nodeName; "SCRIPT" !== o && "STYLE" !== o && "NOSCRIPT" !== o && "BODY" !== o && 0 !== (n.nodeValue || "").trim()[l] && Le(n[a], xe(n), t) } return !n } function Se(e) { for (var n = { w: B.innerWidth, h: B.innerHeight, x: B.pageXOffset, y: B.pageYOffset }, t = T; e.iter < e.img[l] && 0 < t;) { var i, r = e.img[e.iter], o = we(r), a = o && xe(o) || xe(r); o ? (o[w] = a, i = _e(o.querySelector('[aria-posinset="1"] img') || r) || a, r = o) : i = _e(r) || a, re && c < i && (i = a), Le(r, i, n), e.iter += 1, t -= 1 } return e.img[l] <= e.iter } function be(e) { var n = [], i = 0, r = 0, o = ne, t = B.innerHeight || Y(R[O] || 0, R[b] || 0, V[E] || 0, V[O] || 0, V[b] || 0), a = C(e.y / k), f = F((e.y + t) / k); le.slice(a, f).forEach(function (e) { (e.elems || []).forEach(function (e) { e.lt in n || (n[e.lt] = {}), e.id in n[e.lt] || (i += (n[e.lt][e.id] = e).a) }) }), ge("startVL"), D(n).forEach(function (e) { D(e).forEach(function (e) { var n = 1 - r / i, t = Y(e.lt, o); se += n * (t - o), o = t, function (e, n) { var t; for (; K <= 1 && K - .01 <= e;)Te(d + (t = (100 * K).toFixed(0)), n.lt), "50" !== t && "90" !== t || u("Content", { target: n.e })("mark", d + t, P + F(n.lt || 0)), K += Z }((r += e.a) / i, e) }) }), ge("endVL"), ne = e.t - P, G[l] <= 1 && (Te("speedIndex", se), Te(d + "0", ue)), te && (te = !1, Te("atfSpeedIndex", se)) } function xe(e) { for (var n = e[a], t = N; n && 0 < t;) { if (n[w] || 0 === n[w]) return Y(n[w], ue); n = n.parentElement, t -= 1 } } function Oe(e, n) { if (e) { if (!e.indexOf("data:")) return xe(n); var t = $[i](e) || []; if (0 < t[l]) return Y(F(t[0].responseEnd || 0), ue) } } function _e(e) { return Oe(e[_], e) || Oe(e.currentSrc, e) || Oe(e.src, e) } function we(e) { for (var n = 10, t = e.parentElement; t && 0 < n;) { if (t.classList && t.classList.contains("a-carousel-viewport")) return t; t = t.parentElement, n -= 1 } return null } function Le(e, n, t) { if ((n || 0 === n) && !e[L]) { var i = e.getBoundingClientRect(), r = i.width * i.height, o = t.w || Y(R[x] || 0, R[S] || 0, V[y] || 0, V[x] || 0, V[S] || 0) || i.right, a = i.width / 2, f = fe++; if (0 != r && !(a < i.right - o || i.right < a)) { for (var u = { e: e, lt: n, a: r, id: f }, c = C((i.top + t.y) / k), l = F((i.top + t.y + i.height) / k), s = c; s <= l; s++)s in le || (le[s] = { elems: [], lt: 0 }), le[s].elems.push(u); e[L] = f } } } function Te(e, n) { J("mark", e, P + F((ce[e] = n) || 0)) } function Ie(e) { ae || (ge("browserQuite" + e), j("getBuffers", me), ae = 1) } P && D && $[i] ? (ge(e + "Yes"), j("registerListener", function () { re && (clearTimeout(ie), ie = H(Ie.bind(n, "Mut"), 2500)) }), u.once("$unload", function () { oe = 1, Ie("Ud") }), u.once("$load", function () { re = 1, c = X() - P, ie = H(Ie.bind(n, "Ld"), 2500) }), u.once("$timing:functional", Ie.bind(n, "Fn")), j("replayModuleIsLive"), u.register("SpeedIndex", { getMarkers: function (e) { e && e(JSON.parse(JSON.stringify(ce))) } })) : ge(e + "No") }); csa.plugin(function (e) { var m = !!e.config["LCP.elementDedup"], t = !1, n = e("PageTiming"), r = e.global.PerformanceObserver, a = e.global.performance; function i() { return a.timing.navigationStart } function o() { t || function (o) { var l = new r(function (e) { var t = e.getEntries(); if (0 !== t.length) { var n = t[t.length - 1]; if (m && "" !== n.id && n.element && "IMG" === n.element.tagName) { for (var r = {}, a = t[0], i = 0; i < t.length; i++)t[i].id in r || ("" !== t[i].id && (r[t[i].id] = !0), a.startTime < t[i].startTime && (a = t[i])); n = a } l.disconnect(), o({ startTime: n.startTime, renderTime: n.renderTime, loadTime: n.loadTime }) } }); try { l.observe({ type: "largest-contentful-paint", buffered: !0 }) } catch (e) { } }(function (e) { e && (t = !0, n("mark", "largestContentfulPaint", Math.floor(e.startTime + i())), e.renderTime && n("mark", "largestContentfulPaint.render", Math.floor(e.renderTime + i())), e.loadTime && n("mark", "largestContentfulPaint.load", Math.floor(e.loadTime + i()))) }) } r && a && a.timing && (e.once("$unload", o), e.once("$load", o), e.register("LargestContentfulPaint", {})) }); csa.plugin(function (r) { var e = r("Metrics", { producerId: "csa" }), n = r.global.PerformanceObserver; n && (n = new n(function (r) { var t = r.getEntries(); if (0 === t.length || !t[0].processingStart || !t[0].startTime) return; !function (r) { r = r || 0, n.disconnect(), 0 <= r ? e("recordMetric", "firstInputDelay", r) : e("recordMetric", "firstInputDelay.invalid", 1) }(t[0].processingStart - t[0].startTime) }), function () { try { n.observe({ type: "first-input", buffered: !0 }) } catch (r) { } }()) }); csa.plugin(function (d) { var e = "Metrics", g = d.config, f = 0; function r(i) { var c, t, e = i.producerId, r = i.logger, o = r || d("Events", { producerId: e, lob: g.lob || "0" }), s = (i || {}).dimensions || {}, u = {}, n = -1; if (!e && !r) return d.error("Either a producer id or custom logger must be defined"); function a() { n !== f && (c = d.UUID(), t = d.UUID(), u = {}, n = f) } this.recordMetric = function (r, n) { var e = i.logOptions || { ent: { page: ["pageType", "subPageType", "requestId"] } }; e.debugMetric = i.debugMetric, a(), o("log", { messageId: c, schemaId: i.schemaId || "<ns>.Metric.4", metrics: {}, dimensions: s, __merge: function (e) { e.metrics[r] = n } }, e) }, this.recordCounter = function (r, e) { var n = i.logOptions || { ent: { page: ["pageType", "subPageType", "requestId"] } }; if ("string" != typeof r || "number" != typeof e || !isFinite(e)) return d.error("Invalid type given for counter name or counter value: " + r + "/" + e); a(), r in u || (u[r] = {}); var c = u[r]; "f" in c || (c.f = e), c.c = (c.c || 0) + 1, c.s = (c.s || 0) + e, c.l = e, o("log", { messageId: t, schemaId: i.schemaId || "<ns>.InternalCounters.3", c: {}, __merge: function (e) { r in e.c || (e.c[r] = {}), c.fs || (c.fs = 1, e.c[r].f = c.f), 1 < c.c && (e.c[r].s = c.s, e.c[r].l = c.l, e.c[r].c = c.c) } }, n) } } g["KillSwitch." + e] || (new r({ producerId: "csa" }).recordMetric("baselineMetricEvent", 1), d.on("$beforePageTransition", function () { f++ }), d.register(e, { instance: function (e) { return new r(e || {}) } })) }); csa.plugin(function (s) { var n = s.config, r = (s.global.performance || {}).timing, c = (r || {}).navigationStart || s.time(), g = 0; function e() { g += 1 } function i(i) { i = i || {}; var o = s.UUID(), t = g, r = i.producerId, e = i.logger, a = e || s("Events", { producerId: r, lob: n.lob || "0" }); if (!r && !e) return s.error("Either a producer id or custom logger must be defined"); this.mark = function (e, r) { var n = (void 0 === r ? s.time() : r) - c; t !== g && (t = g, o = s.UUID()), a("log", { messageId: o, schemaId: i.schemaId || "<ns>.Timer.1", markers: {}, __merge: function (r) { r.markers[e] = n } }, i.logOptions) } } r && (e(), s.on("$beforePageTransition", e), s.register("Timers", { instance: function (r) { return new i(r || {}) } })) }); csa.plugin(function (t) { var e = "takeRecords", i = "disconnect", n = "function", o = t("Metrics", { producerId: "csa" }), c = t("PageTiming"), a = t.global, u = t.timeout, r = t.on, f = a.PerformanceObserver, m = 0, l = !1, s = 0, d = a.performance, h = a.document, v = null, y = !1, g = t.blank; function p() { l || (l = !0, clearTimeout(v), typeof f[e] === n && f[e](), typeof f[i] === n && f[i](), o("recordMetric", "documentCumulativeLayoutShift", m), c("mark", "cumulativeLayoutShiftLastTimestamp", Math.floor(s + d.timing.navigationStart))) } f && d && d.timing && h && (f = new f(function (t) { v && clearTimeout(v); t.getEntries().forEach(function (t) { t.hadRecentInput || (m += t.value, s < t.startTime && (s = t.startTime)) }), v = u(p, 5e3) }), function () { try { f.observe({ type: "layout-shift", buffered: !0 }), v = u(p, 5e3) } catch (t) { } }(), g = r(h, "click", function (t) { y || (y = !0, o("recordMetric", "documentCumulativeLayoutShiftToFirstInput", m), g()) }), r(h, "visibilitychange", function () { "hidden" === h.visibilityState && p() }), t.once("$unload", p)) }); csa.plugin(function (e) { var t, n = e.global, r = n.PerformanceObserver, c = e("Metrics", { producerId: "csa" }), o = 0, i = 0, a = -1, l = n.Math, f = l.max, u = l.ceil; if (r) { t = new r(function (e) { e.getEntries().forEach(function (e) { var t = e.duration; o += t, i += t, a = f(t, a) }) }); try { t.observe({ type: "longtask", buffered: !0 }) } catch (e) { } t = new r(function (e) { 0 < e.getEntries().length && (i = 0, a = -1) }); try { t.observe({ type: "largest-contentful-paint", buffered: !0 }) } catch (e) { } e.on("$unload", g), e.on("$beforePageTransition", g) } function g() { c("recordMetric", "totalBlockingTime", u(i || 0)), c("recordMetric", "totalBlockingTimeInclLCP", u(o || 0)), c("recordMetric", "maxBlockingTime", u(a || 0)), i = o = 0, a = -1 } }); csa.plugin(function (o) { var e = "CacheDetection", r = "csa-ctoken-", c = o.store, t = o.deleteStored, n = o.config, i = n[e + ".RequestID"], a = n[e + ".Callback"], s = o.global, u = s.document || {}, d = s.Date, l = o("Events"), f = o("Events", { producerId: "csa", lob: n.lob || "0" }); function p(e) { try { var c = u.cookie.match(RegExp("(^| )" + e + "=([^;]+)")); return c && c[2].trim() } catch (e) { } } n["KillSwitch." + e] || (function () { var e = function () { var e = p("cdn-rid"); if (e) return { r: e, s: "cdn" } }() || function () { if (o.store(r + i)) return { r: o.UUID().toUpperCase().replace(/-/g, "").slice(0, 20), s: "device" } }() || {}, c = e.r, n = e.s; if (!!c) { var t = p("session-id"); !function (e, c, n, t) { l("setEntity", { page: { pageSource: "cache", requestId: e, cacheRequestId: i, cacheSource: t }, session: { id: n } }) }(c, 0, t, n), "device" === n && f("log", { schemaId: "<ns>.CacheImpression.2" }, { ent: "all" }), a && a(c, t, n) } }(), c(r + i, d.now() + 36e5), o.once("$load", function () { var n = d.now(); t(function (e, c) { return 0 == e.indexOf(r) && parseInt(c) < n }) })) }); csa.plugin(function (u) { var i, t = "Content", e = "MutationObserver", n = "addedNodes", a = "querySelectorAll", f = "matches", r = "getAttributeNames", o = "getAttribute", s = "dataset", c = "widget", l = "producerId", d = "slotId", h = "iSlotId", g = { ent: { element: 1, page: ["pageType", "subPageType", "requestId"] } }, p = 5, m = u.config[t + ".BubbleUp.SearchDepth"] || 35, y = u.config[t + ".SearchPage"] || 0, v = "csaC", b = v + "Id", E = "logRender", w = {}, I = u.config, O = I[t + ".Selectors"] || [], C = I[t + ".WhitelistedAttributes"] || { href: 1, class: 1 }, N = I[t + ".EnableContentEntities"], S = I["KillSwitch.ContentRendered"], k = u.global, A = k.document || {}, U = A.documentElement, L = k.HTMLElement, R = {}, _ = [], j = function (t, e, n, i) { var o = this, r = u("Events", { producerId: t || "csa", lob: I.lob || "0" }); e.type = e.type || c, o.id = e.id, o.l = r, o.e = e, o.el = n, o.rt = i, o.dlo = g, o.op = W(n, "csaOp"), o.log = function (t, e) { r("log", t, e || g) }, o.entities = function (t) { t(e) }, e.id && r("setEntity", { element: e }) }, x = j.prototype; function D(t) { var e = (t = t || {}).element, n = t.target; return e ? function (t, e) { var n; n = t instanceof L ? K(t) || Y(e[l], t, z, u.time()) : R[t.id] || H(e[l], 0, t, u.time()); return n }(e, t) : n ? M(n) : u.error("No element or target argument provided.") } function M(t) { var e = function (t) { var e = null, n = 0; for (; t && n < m;) { if (n++, P(t, b)) { e = t; break } t = t.parentElement } return e }(t); return e ? K(e) : new j("csa", { id: null }, null, u.time()) } function P(t, e) { if (t && t.dataset) return t.dataset[e] } function T(t, e, n) { _.push({ n: n, e: t, t: e }), B() } function q() { for (var t = u.time(), e = 0; 0 < _.length;) { var n = _.shift(); if (w[n.n](n.e, n.t), ++e % 10 == 0 && u.time() - t > p) break } i = 0, _.length && B() } function B() { i = i || u.raf(q) } function X(t, e, n) { return { n: t, e: e, t: n } } function Y(t, e, n, i) { var o = u.UUID(), r = { id: o }, c = M(e); return e[s][b] = o, n(r, e), c && c.id && (r.parentId = c.id), H(t, e, r, i) } function $(t) { return isNaN(t) ? null : Math.round(t) } function H(t, e, n, i) { N && (n.schemaId = "<ns>.ContentEntity.2"), n.id = n.id || u.UUID(); var o = new j(t, n, e, i); return function (t) { return !S && ((t.op || {}).hasOwnProperty(E) || y) }(o) && function (t, e) { var n = {}, i = u.exec($); t.el && (n = t.el.getBoundingClientRect()), t.log({ schemaId: "<ns>.ContentRender.3", timestamp: e, width: i(n.width), height: i(n.height), positionX: i(n.left + k.pageXOffset), positionY: i(n.top + k.pageYOffset) }) }(o, i), u.emit("$content.register", o), R[n.id] = o } function K(t) { return R[(t[s] || {})[b]] } function W(n, i) { var o = {}; return r in (n = n || {}) && Object.keys(n[s]).forEach(function (t) { if (!t.indexOf(i) && i.length < t.length) { var e = function (t) { return (t[0] || "").toLowerCase() + t.slice(1) }(t.slice(i.length)); o[e] = n[s][t] } }), o } function z(t, e) { r in e && (function (t, e) { var n = W(t, v); Object.keys(n).forEach(function (t) { e[t] = n[t] }) }(e, t), d in t && (t[h] = t[d]), function (e, n) { (e[r]() || []).forEach(function (t) { t in C && (n[t] = e[o](t)) }) }(e, t)) } U && A[a] && k[e] && (O.push({ selector: "*[data-csa-c-type]", entity: z }), O.push({ selector: ".celwidget", entity: function (t, e) { z(t, e), t[d] = t[d] || e[o]("cel_widget_id") || e.id, t.legacyId = e[o]("cel_widget_id") || e.id, t.type = t.type || c } }), w[1] = function (t, e) { t.forEach(function (t) { t[n] && t[n].constructor && "NodeList" === t[n].constructor.name && Array.prototype.forEach.call(t[n], function (t) { _.unshift(X(2, t, e)) }) }) }, w[2] = function (r, c) { a in r && f in r && O.forEach(function (t) { for (var e = t.selector, n = r[f](e), i = r[a](e), o = i.length - 1; 0 <= o; o--)_.unshift(X(3, { e: i[o], s: t }, c)); n && _.unshift(X(3, { e: r, s: t }, c)) }) }, w[3] = function (t, e) { var n = t.e; K(n) || Y("csa", n, t.s.entity, e) }, w[4] = function () { u.register(t, { instance: D }) }, new k[e](function (t) { T(t, u.time(), 1) }).observe(U, { childList: !0, subtree: !0 }), T(U, u.time(), 2), T(null, u.time(), 4), u.on("$content.export", function (e) { Object.keys(e).forEach(function (t) { x[t] = e[t] }) })) }); csa.plugin(function (o) { var i, t = "ContentImpressions", e = "KillSwitch.", n = "IntersectionObserver", r = "getAttribute", s = "dataset", c = "intersectionRatio", a = "csaCId", m = 1e3, l = o.global, f = o.config, u = f[e + t], v = f[e + t + ".ContentViews"], g = ((l.performance || {}).timing || {}).navigationStart || o.time(), d = {}; function h(t) { t && (t.v = 1, function (t) { t.vt = o.time(), t.el.log({ schemaId: "<ns>.ContentView.4", timeToViewed: t.vt - t.el.rt, pageFirstPaintToElementViewed: t.vt - g }) }(t)) } function I(t) { t && !t.it && (t.i = o.time() - t.is > m, function (t) { t.it = o.time(), t.el.log({ schemaId: "<ns>.ContentImpressed.3", timeToImpressed: t.it - t.el.rt, pageFirstPaintToElementImpressed: t.it - g }) }(t)) } !u && l[n] && (i = new l[n](function (t) { var n = o.time(); t.forEach(function (t) { var e = function (t) { if (t && t[r]) return d[t[s][a]] }(t.target); if (e) { o.emit("$content.intersection", { meta: e.el, t: n, e: t }); var i = t.intersectionRect; t.isIntersecting && 0 < i.width && 0 < i.height && (v || e.v || h(e), .5 <= t[c] && !e.is && (e.is = n, e.timer = o.timeout(function () { I(e) }, m))), t[c] < .5 && !e.it && e.timer && (l.clearTimeout(e.timer), e.is = 0, e.timer = 0) } }) }, { threshold: [0, .5, .99] }), o.on("$content.register", function (t) { var e = t.el; e && (d[t.id] = { el: t, v: 0, i: 0, is: 0, vt: 0, it: 0 }, i.observe(e)) })) }); csa.plugin(function (e) { e.config["KillSwitch.ContentLatency"] || e.emit("$content.export", { mark: function (t, n) { var o = this; o.t || (o.t = e("Timers", { logger: o.l, schemaId: "<ns>.ContentLatency.4", logOptions: o.dlo })), o.t("mark", t, n) } }) }); csa.plugin(function (t) { function n(i, e, o) { var c = {}; function r(t, n, e) { t in c && o <= n - c[t].s && (function (n, e, i) { if (!p) return; E(function (t) { T(n, t), t.w[n][e] = a((t.w[n][e] || 0) + i) }) }(t, i, n - c[t].d), c[t].d = n), e || delete c[t] } this.update = function (t, n) { n.isIntersecting && e <= n.intersectionRatio ? function (t, n) { t in c || (c[t] = { s: n, d: n }) }(t, u()) : r(t, u()) }, this.stopAll = function (t) { var n = u(); for (var e in c) r(e, n, t) }, this.reset = function () { var t = u(); for (var n in c) c[n].s = t, c[n].d = t } } var e = t.config, u = t.time, i = "ContentInteractionsSummary", o = e[i + ".FlushInterval"] || 5e3, c = e[i + ".FlushBackoff"] || 1.5, r = t.global, s = t.on, a = Math.floor, f = (r.document || {}).documentElement || {}, l = ((r.performance || {}).timing || {}).responseStart || t.time(), d = o, m = 0, p = !0, v = t.UUID(), g = t("Events", { producerId: "csa", lob: e.lob || "0" }), w = new n("it0", 0, 0), I = new n("it50", .5, 1e3), h = new n("it100", .99, 0), b = {}, A = {}; function $() { w.stopAll(!0), I.stopAll(!0), h.stopAll(!0), S() } function C() { w.reset(), I.reset(), h.reset(), S() } function S() { d && (clearTimeout(m), m = t.timeout($, d), d *= c) } function U(n) { E(function (t) { T(n, t), t.w[n].mc = (t.w[n].mc || 0) + 1 }) } function E(t) { g("log", { messageId: v, schemaId: "<ns>.ContentInteractionsSummary.2", w: {}, __merge: t }, { ent: { page: ["requestId"] } }) } function T(t, n) { t in n.w || (n.w[t] = {}) } e["KillSwitch." + i] || (s("$content.intersection", function (t) { if (t && t.meta && t.e) { var n = t.meta.id; if (n in b) { var e = t.e.boundingClientRect || {}; e.width < 5 || e.height < 5 || (w.update(n, t.e), I.update(n, t.e), h.update(n, t.e), !t.e.isIntersecting || n in A || (A[n] = 1, function (n, e) { E(function (t) { T(n, t), t.w[n].ttfv = a(e) }) }(n, u() - l))) } } }), s("$content.register", function (t) { (t.e || {}).slotId && (b[t.id] = {}, function (e) { E(function (t) { var n = e.id; T(n, t), t.w[n].sid = (e.e || {}).slotId, t.w[n].cid = (e.e || {}).contentId }) }(t)) }), s("$beforePageTransition", function () { $(), C(), v = t.UUID(), S() }), s("$beforeunload", function () { w.stopAll(), I.stopAll(), h.stopAll(), d = null }), s("$visible", function (t) { t ? C() : ($(), clearTimeout(m)), p = t }, { buffered: 1 }), s(f, "click", function (t) { for (var n = t.target, e = 25; n && 0 < e;) { var i = (n.dataset || {}).csaCId; i && U(i), n = n.parentElement, e -= 1 } }, { capture: !0, passive: !0 }), S()) }); csa.plugin(function (d) { var t, o, i = "normal", c = "reload", e = "history", s = "new-tab", n = "ajax", r = 1, a = 2, u = "lastActive", l = "lastInteraction", p = "used", f = "csa-tabbed-browsing", y = "visibilityState", g = "page", v = "experience", b = "request", m = { "back-memory-cache": 1, "tab-switch": 1, "history-navigation-page-cache": 1 }, I = "TabbedBrowsing", T = "<ns>." + I + ".4", h = "visible", w = d.global, x = d.config, S = d("Events", { producerId: "csa", lob: x.lob || "0" }), q = w.location || {}, P = w.document, z = w.JSON, E = ((w.performance || {}).navigation || {}).type, $ = d.store, k = d.on, A = d.storageSupport(), C = !1, O = {}, j = {}, B = {}, J = {}, K = {}, N = !1, R = !1, D = !1, F = 0; function G(i) { try { return z.parse($(f, void 0, { session: i }) || "{}") || {} } catch (i) { d.error('Could not parse storage value for key "' + f + '": ' + i) } return {} } function H(i, e) { $(f, z.stringify(e || {}), { session: i }) } function L(i) { var e = j.tid || i.id, t = O[u] || {}; t.tid === e && (t.pid = i.id, t.ent = K), J = { pid: i.id, tid: e, ent: K, lastInteraction: j[l] || {}, initialized: !0 }, B = { lastActive: t, lastInteraction: O[l] || {}, time: d.time() } } function M(i) { var e = i === s, t = P.referrer, n = !(t && t.length) || !~t.indexOf(q.origin || ""), r = e && n, a = { type: i, toTabId: J.tid, toPageId: J.pid, transitTime: d.time() - O.time || null }; r || function (i, e, t) { var n = i === c, r = e ? O[u] || {} : j, a = O[l] || {}, d = j[l] || {}, o = e ? a : d; t.fromTabId = r.tid, t.fromPageId = r.pid; var s = r.ent || {}; s.rid && (t.fromRequestId = s.rid || null), s.ety && (t.fromExperienceType = s.ety || null), s.esty && (t.fromExperienceSubType = s.esty || null), n || !o.id || o[p] || (t.interactionId = o.id || null, o.sid && (t.interactionSlotId = o.sid || null), a.id === o.id && (a[p] = !0), d.id === o.id && (d[p] = !0)) }(i, e, a), S("log", { navigation: a, schemaId: T }, { ent: { page: ["pageType", "subPageType", "requestId"] } }) } function Q(i) { D = function (i) { return i && i in m }(i.transitionType), function () { O = G(!1), j = G(!0); var i = O[l], e = j[l], t = !1, n = !1; i && e && i.id === e.id && i[p] !== e[p] && (t = !i[p], n = !e[p], e[p] = i[p] = !0, t && H(!1, O), n && H(!0, j)) }(), L(i), N = !0, function (i) { var e, t; e = V(), t = W(), (e || t) && L(i) }(i), F = 1 } function U() { C && !D ? M(n) : (C = !0, M(E === a || D ? e : E === r ? j.initialized ? c : s : j.initialized ? i : s)) } function V() { var i = t, e = {}; return !!(N && i && i.e && i.w) && (i.w("entities", function (i) { e = i || {} }), j[l] = { id: i.e.messageId, sid: e.slotId, used: !(O[l] = { id: i.e.messageId, sid: e.slotId, used: !1 }) }, !(t = null)) } function W() { var i = !1; if (R = P[y] === h, N) { var e = O[u] || {}; i = function (i, e, t, n) { var r = !1, a = i[u]; return R ? a && a.tid === J.tid && a[h] && a.pid === t || (i[u] = { visible: !0, pid: t, tid: e, ent: n }, r = !0) : a && a.tid === J.tid && a[h] && (r = !(a[h] = !1)), r }(O, j.tid || e.tid || J.tid, j.pid || e.pid || J.pid, j.ent || e.ent || J.ent) } return i } x["KillSwitch." + I] || A.local && A.session && z && P && y in P && (o = function () { try { return w.self !== w.top } catch (i) { return !0 } }(), k("$entities.set", function (i) { if (!o && i) { var e = (i[b] || {}).id || (i[g] || {}).requestId, t = (i[v] || {}).experienceType || (i[g] || {}).pageType, n = (i[v] || {}).experienceSubType || (i[g] || {}).subPageType, r = !K.rid && e || !K.ety && t || !K.esty && n; if (K.rid = K.rid || e, K.ety = K.ety || t, K.esty = K.esty || n, r && F) { var a = O[u] || {}; a.tid === j.tid && (a.ent = K, H(!1, O)), j.ent = K, H(!0, j) } } }, { buffered: 1 }), k("$pageChange", function (i) { o || (Q(i), U(), H(!1, B), H(!0, J), j = J, O = B) }, { buffered: 1 }), k("$content.interaction", function (i) { t = i, V() && (H(!1, O), H(!0, j)) }), k(P, "visibilitychange", function () { !o && W() && H(!1, O) }, { capture: !1, passive: !0 })) }); csa.plugin(function (c) { var e = c("Metrics", { producerId: "csa" }); c.on(c.global, "pageshow", function (c) { c && c.persisted && e("recordMetric", "bfCache", 1) }) }); csa.plugin(function (n) { var e, t, i, o, r, a, c, u, f, s, l, d, p, g, m, v, h, b, y = "hasFocus", S = "$app.", T = "avail", $ = "client", w = "document", I = "inner", P = "offset", D = "screen", C = "scroll", E = "Width", F = "Height", O = T + E, q = T + F, x = $ + E, z = $ + F, H = I + E, K = I + F, M = P + E, W = P + F, X = C + E, Y = C + F, j = "up", k = "down", A = "none", B = 20, G = n.config, J = G["KillSwitch.PageInteractionsSummary"], L = n("Events", { producerId: "csa", lob: G.lob || "0" }), N = 1, Q = n.global || {}, R = n.time, U = n.on, V = n.once, Z = Q[w] || {}, _ = Q[D] || {}, nn = Q.Math || {}, en = nn.abs, tn = nn.max, on = nn.ceil, rn = ((Q.performance || {}).timing || {}).responseStart, an = function () { return Z[y]() }, cn = 1, un = 100, fn = {}, sn = 1, ln = 0, dn = 0, pn = k, gn = A; function mn() { c = t = o = r = e, i = d = 0, a = u = f = s = l = 0, pn = k, gn = A, dn = ln = 0, yn(), bn() } function vn() { rn && !o && (c = on((o = p) - rn), sn = 1) } function hn() { var n = m - i; (!t || t && t <= p) && (n && (++a, sn = dn = 1), i = m, n), function () { if (gn = d < m ? k : j, pn !== gn) { var n = en(m - d); B < n && (++l, ln && !dn && ++a, pn = gn, sn = ln = 1, d = m, dn = 0) } else dn = 0, d = m }(), t = p + un } function bn() { u = on(tn(u, m + b)), g && (f = on(tn(f, g + h))), sn = 1 } function yn() { p = R(), g = en(Q.pageXOffset || 0), m = tn(Q.pageYOffset || 0, 0), v = 0 < g || 0 < m, h = Q[H] || 0, b = Q[K] || 0 } function Sn() { yn(), vn(), hn(), bn() } function Tn() { if (r) { var n = on(R() - r); s += n, r = e, sn = 0 < n } } function $n() { r = r || R() } function wn(n, e, t, i) { e[n + E] = on(t || 0), e[n + F] = on(i || 0) } function In(n) { var e = n === fn, t = an(); if (t || sn) { if (!e) { if (!N) return; N = 0, t && Tn() } var i = function () { var n = {}, e = Z.documentElement || {}, t = Z.body || {}; return wn("availableScreen", n, _[O], _[q]), wn(w, n, tn(t[X] || 0, t[M] || 0, e[x] || 0, e[X] || 0, e[M] || 0), tn(t[Y] || 0, t[W] || 0, e[z] || 0, e[Y] || 0, e[W] || 0)), wn(D, n, _.width, _.height), wn("viewport", n, Q[H], Q[K]), n }(), o = function () { var n = { scrollCounts: a, reachedDepth: u, horizontalScrollDistance: f, dwellTime: s, vScrollDirChanges: l }; return "number" == typeof c && (n.clientTimeToFirstScroll = c), n }(); e ? sn = 0 : (mn(), rn = R(), t && (r = rn)), L("log", { activity: o, dimensions: i, schemaId: "<ns>.PageInteractionsSummary.3" }, { ent: { page: ["pageType", "subPageType", "requestId"] } }) } } function Pn() { Tn(), In(fn) } function Dn(n, e) { return function () { cn = e, n() } } function Cn() { an = function () { return cn }, cn && !r && (r = R()) } "function" != typeof Z[y] || J || (mn(), v && vn(), U(Q, C, Sn, { passive: !0 }), U(Q, "blur", Pn), U(Q, "focus", Dn($n, 1)), V(S + "android", Cn), V(S + "ios", Cn), U(S + "pause", Dn(Pn, 0)), U(S + "resume", Dn($n, 1)), U(S + "resign", Dn(Pn, 0)), U(S + "active", Dn($n, 1)), an() && (r = rn || R()), V("$beforeunload", In), U("$beforeunload", In), U("$document.hidden", Pn), U("$beforePageTransition", In), U("$afterPageTransition", function () { sn = N = 1 })) }); csa.plugin(function (e) { var o, n, r = "Navigator", a = "<ns>." + r + ".5", i = e.global, c = e.config, d = i.navigator || {}, t = d.connection || {}, l = i.Math.round, u = e("Events", { producerId: "csa", lob: c.lob || "0" }); function v() { o = { network: { downlink: void 0, downlinkMax: void 0, rtt: void 0, type: void 0, effectiveType: void 0, saveData: void 0 }, language: void 0, doNotTrack: void 0, hardwareConcurrency: void 0, deviceMemory: void 0, cookieEnabled: void 0, webdriver: void 0 }, w(), o.language = d.language || null, o.doNotTrack = function () { switch (d.doNotTrack) { case "1": return "enabled"; case "0": return "disabled"; case "unspecified": return d.doNotTrack; default: return null } }(), o.hardwareConcurrency = "hardwareConcurrency" in d ? l(d.hardwareConcurrency || 0) : null, o.deviceMemory = "deviceMemory" in d ? l(d.deviceMemory || 0) : null, o.cookieEnabled = "cookieEnabled" in d ? d.cookieEnabled : null, o.webdriver = "webdriver" in d ? d.webdriver : null } function k() { u("log", { network: (n = {}, Object.keys(o.network).forEach(function (e) { n[e] = o.network[e] + "" }), n), language: o.language, doNotTrack: o.doNotTrack, hardwareConcurrency: o.hardwareConcurrency, deviceMemory: o.deviceMemory, cookieEnabled: o.cookieEnabled, webdriver: o.webdriver, schemaId: a }, { ent: { page: ["pageType", "subPageType", "requestId"] } }) } function w() { !function (n) { Object.keys(o.network).forEach(function (e) { o.network[e] = n[e] }) }({ downlink: "downlink" in t ? l(t.downlink || 0) : null, downlinkMax: "downlinkMax" in t ? l(t.downlinkMax || 0) : null, rtt: "rtt" in t ? (t.rtt || 0).toFixed() : null, type: t.type || null, effectiveType: t.effectiveType || null, saveData: "saveData" in t ? t.saveData : null }) } function f() { w(), k() } function y() { v(), k() } c["KillSwitch." + r] || (v(), k(), e.on("$afterPageTransition", y), e.on(t, "change", f)) });
if (window.ue && window.ue.uels) {
ue.uels("https://c.amazon-adsystem.com/bao-csm/forensics/a9-tq-forensics-incremental.min.js");
}
ue.exec(function (d, c) {
function g(e, c) { e && ue.tag(e + c); return !!e } function n() {
for (var e = RegExp("^https://(.*\.(images|ssl-images|media)-amazon\.com|" + c.location.hostname + ")/images/", "i"), d = {}, h = 0, k = c.performance.getEntriesByType("resource"), l = !1, b, a, m, f = 0; f < k.length; f++)if (a = k[f], 0 < a.transferSize && a.transferSize >= a.encodedBodySize && (b = e.exec(String(a.name))) && 3 === b.length) {
a: { b = a.serverTiming || []; for (a = 0; a < b.length; a++)if ("provider" === b[a].name) { b = b[a].description; break a } b = void 0 } b && (l || (l = g(b, "_cdn_fr")),
a = d[b] = (d[b] || 0) + 1, a > h && (m = b, h = a))
} g(m, "_cdn_mp")
} d.ue && "function" === typeof d.ue.tag && c.performance && c.location && n()
}, "cdnTagging")(ue_csm, window);
}
(n => { var A; n.RXVM = function (r) { var i = n([1, function (n) { n.u.t[m(n)] = h(n) }, 2, function (n) { n.i[0].t[m(n)] = h(n) }, 3, h, 4, function (n) { var r = h(n), t = h(n), n = h(n); b(n) || (n[t] = r) }, 10, function (n) { n.u.o.push(h(n)) }, 12, function (n) { for (var r = F(n); 0 < r--;)n.v.push(S(n)) }, 30, function (n) { return !h(n) }, 42, function () { }, 43, function (n) { for (var r = F(n); 0 < r--;)n.u.t.push(n.l.pop()) }, 45, a(!0), 44, a(!1), 48, v(0, y), 49, v(1, y), 50, v(2, y), 51, v(-1, y), 52, v(0, _), 53, v(1, _), 54, v(2, _), 55, v(-1, _), 58, function (n) { p(n, x(n)) }, 59, l(!0), 60, l(!1), 64, function (n) { var r = x(n), t = w(n, n.u._); return p(n, r), t }, 65, function (n) { var r = F(n), t = x(n), u = w(n, n.u._); n.u.t[r] = u, p(n, t) }]), o = { 40: function (n, r) { return "__rx_cls" in n ? n.__rx_cls === r.__rx_ref : n instanceof r } }, t = (o[20] = Math.pow, s(16, "+"), s(17, "-"), s(18, "*"), s(19, "/"), s(21, "%"), s(22, "&"), s(23, "|"), s(24, "^"), s(25, "<<"), s(26, ">>"), s(27, ">>>"), s(28, "&&"), s(29, "||"), s(31, ">"), s(33, ">="), s(32, "<"), s(34, "<="), s(35, "=="), s(36, "==="), s(37, "!="), s(38, "!=="), s(39, " in "), n([10, A, 11, null, 14, !0, 15, !1])), u = n([1, function (n) { return n.h }, 17, F, 18, function (n) { n = m(n) | m(n) << 8 | m(n) << 16 | m(n) << 24; return n = 2147483647 < n ? -4294967295 + n - 1 : n }, 19, function (n) { for (var r = [], t = 0; t < 4; t++)r.push(m(n)); return new Float32Array(new Uint8Array(r).buffer)[0] }, 12, S, 13, function (n) { return n.v[F(n)] }, 20, function () { return [] }, 21, function (n) { for (var r = F(n), t = []; 0 < r--;)t.unshift(h(n)); return t }, 22, function () { return {} }, 23, function (n) { for (var r = F(n) / 2, t = {}; 0 < r--;) { var u = h(n); t[h(n)] = u } return t }, 32, function (n) { return n.u.t[F(n)] }, 33, function (n) { return n.i[0].t[F(n)] }, 48, function (n) { var r = h(n), n = h(n); return b(n) ? n : ("function" == typeof (r = n[r]) && (r.__rx_this = n), r) }, 51, function (n) { var r = h(n), t = 0; return b(r) ? r : function () { return { value: r[t], done: !(t++ < r.length) } } }, 50, function (n) { return n.u.o.pop() }, 52, function (n) { return typeof h(n) }]); function e(n) { for (; (r = n).u && r.u._ < r.p.length;) { r = m(n); n.h = f(r, n) } var r } function f(n, r) { var t, u; return n in o ? (t = h(r), u = h(r), o[n](u, t)) : n in i ? i[n](r) : void k("e2:" + n + ":" + r.u._) } function c(n, r) { return { m: n, _: n, t: [], o: [], F: r } } function n(n) { for (var r = {}, t = 0; t < n.length; t += 2)r[n[t]] = n[t + 1]; return r } function a(i) { return function (n) { var r = i ? h(n) : A, t = n.i.pop(), u = A, u = t.F ? t.t[0] : r; return n.l = [], n.u = n.i[n.i.length - 1], d(n, n.u.m), u } } function v(u, i) { return function (n) { var r = h(n), t = u; for (-1 === u && (t = F(n)); 0 < t--;)n.l.push(h(n)); if (n.h = A, r) return i(r, n) } } function l(u) { return function (n) { var r = h(n), t = x(n); (u && r || !r && !u) && p(n, t) } } function s(u, i) { o[u] = function (n, r) { var t = Function("a", "b", "return a" + i + "b"); return (o[u] = t)(n, r) } } function _(n, r) { var t; if (n.__rx_ref && n.S === r) { var u = c(n.__rx_ref, !0); u.t.push({ __rx_cls: n.__rx_ref }), r.i.push(u), r.u = u, d(r, u.m) } else if ("function" == typeof n) { u = r.l.reverse().splice(0), u = Function.prototype.bind.apply(n, [null].concat(u)); try { t = new u, r.l = [] } catch (n) { } } else k("e5:" + n + ":" + r.u._); return t } function y(n, r) { var t; if (n.__rx_ref && n.S === r) { var u = c(n.__rx_ref); u.t.push(n.__rx_this || this), r.i.push(u), r.u = u, d(r, u.m) } else if ("function" == typeof n) { u = r.l.reverse().splice(0); try { t = n.apply(n.__rx_this || this, u), r.l = [] } catch (n) { } } else k("e4:" + n); return t } function h(n) { var r = m(n); return 0 < (128 & r) ? f(127 & r, n) : r in t ? t[r] : r in u ? u[r](n) : void k("e3:" + r) } function w(t, u) { var n = g(function () { var n = c(u), r = n.t; return r.push(this), r.push.apply(r, arguments), t.i.push(n), t.u = n, d(t, n.m), e(t), t.h }); return n.__rx_ref = u, n.S = t, n } function b(n) { return (n === A || null === n) && (r && k("e10" + n), 1) } function d(n, r) { n.g = r % 127 + 37 } function p(n, r) { n.u._ += r } function m(n) { return n.p[n.u._++] ^ n.g } function x(n) { n = m(n) | m(n) << 8; return n = 32767 < n ? -65535 + n - 1 : n } function F(n) { for (var r, t = 0, u = 0, i = n.u._; t += (127 & (r = n.p[i + u] ^ n.g)) * Math.pow(2, 7 * u), u += 1, 0 < (128 & r);); return p(n, u), t } function S(n) { for (var r = F(n), t = ""; 0 < r--;)t += String.fromCharCode(m(n)); return t } function g(n) { return function () { try { return n.apply(this, arguments) } catch (n) { k(n) } } } function k(n) { if (r) throw Error(n) } this.execute = g(function (n, r) { var t, u; return 82 !== n[0] && 88 !== n[1] ? k("e1") : (n = n, t = 3, (u = c(0)).t[0] = (r = r) || {}, u._ = t, d(r = { p: n, h: 0, i: [u], u: u, l: [], v: [], g: 0 }, 0), e(t = r), t) }) } })("undefined" == typeof window ? global : window);
(n => { for (var i = "undefined" == typeof window ? n : window, t = 0, n = "addEventListener", f = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""), u = [], r = i.rx || {}, o = r.c || {}, e = o.rxp || "/rd/uedata", a = o.fi || 5e3, c = {}, d = {}, w = [], v = 0, x = 0; x < f.length; x++)u[f[x]] = x; function y(n, r) { return function () { try { return n.apply(this, arguments) } catch (n) { h(n.message || n, n) } } } function h(n, r) { n = ("" + (n || "")).substring(0, 100), w.push(t), w.push(n.length); for (var i = 0; i < n.length; i++)w.push(n.charCodeAt(i)); if (o.DEBUG) throw r || n; U() } function l(n, r) { r = y(r), n in d || (d[n] = []), d[n].push(r), n in c && r() } function s(n, r) { n in c || (c[n] = r, (d[n] || []).forEach(function (n) { n(r) })) } function m(n) { for (var r = 0, i = 0, t = "", o = 0; o < n.length; o += 1)for (i += 8, r = r << 8 | n[o]; 6 <= i;)t += f[r >> i - 6], r &= 255 >> 8 - (i -= 6); return 0 < i && (t += f[r << 6 - i]), t } function A(n) { for (var r = 0, i = 0, t = [], o = 0; o < n.length && "=" !== n[o]; o += 1)for (i += 6, r = r << 6 | u[n[o]]; 8 <= i;)t.push(r >> i - 8), r &= 255 >> 8 - (i -= 8); return new Uint8Array(t) } function U() { !v && 0 < a && (setTimeout(y(g), a), v = 1) } function g() { if ((v = 0) === w.length) return ""; rx.ep(w, p), w = [] } function p(n) { n = m(new Uint8Array(n)); n = e + "?rid=" + rx.rid + "&sid=" + rx.sid + "&rx=" + n; (new Image).src = n } function b(n) { s("load", n) } function E(n) { b(n), s("unload", n), g() } (i.rx = r).err = h, r.r = y(l), r.e = y(s), r.exec = y, r.p = y(function (n, r) { s("rxm:" + n, r), w.push(255 & n), w = w.concat(r), U() }), r.ex64 = y(function (r, n) { l(n || "init", function () { var n; i.RXVM && (n = A(r), i.$RX || (i.$RX = new i.RXVM), $RX.execute(n, i)) }) }), r.e64 = y(m), r.d64 = y(A), r.erc4 = y(function () { var n = rx.ep4(w); return rx.rid + "#" + m(new Uint8Array(n)) }), s("init", {}), n in i && (i[n]("load", y(b)), i[n]("beforeunload", y(E)), i[n]("pagehide", y(E))) })(window);
rx.ex64("UlgBKT0nV10vcExLUR1kV1dEXCNJQEtCUU0hUU1ASy9KS0ZKSFVJQFFALUZESUlHREZOJ0JRIWhEUU0gQ0lKSlchYURRQCZLSlImVkBRLnBMS1EWF2RXV0RcI0dQQ0NAVyNWUEdRSUAiQEtGV1xVUSFLREhAImRgdghmZ2YjQUxCQFZRInZtZAgXEBMgYWBncGIhQF1ARiZXTEEmVkxBJCQVKCUFJSQnuDMVKSRGBSQkJrgVKSNGV1xVUUoFJRUpLUhWZldcVVFKBSVkImMlXnRARXh0VHVFeHdVdHR3dHR2ZHVJ1UV4d1V0VXZRdURFeX8WHRQHNhoREDQBVXRVdn90cUdVdlV3dHblZHRVdk+kilhVd2QtPiVrQ0FEcGBCYEFEcGBDYEFgQmBBRGBEYENgQWxkLOsldF1eXEteW0teWk5fXllOX15YTl9eV05fY/9O311/V05fW39Xf1d/XF5Xz05ef1dluaBeV05fY/9O311/V3FfXlrKTt9dz2/Kb1Jdf15/V39ez29/V39cf1psfldcf1p/V39cXlfPTl5/V2WWoF5XTl9j/29SXX9df1cQX15Yyk7fXc9OXn9YXlnKTt9dz29/WH9cf1lsfldcf1l/WH9cbm9TWy8qLDd/W8dvyk7fXc9vf1l/XG9/WH9cf1xvf1d/XV5Xz05ef1dl+aByf1tkL20lGDEPlBMyPjA+MwIDPjATMhMxHjIJAzMPlBMyPjcbMzcTMT42EzJzIDN2bWxRWXxcbFBaLjkvKTAofFxwOTI3AT43EzIeEzIfZC69JVR9Q+LhXnvhXnl+f1NPT3J1T3J2Xn9sbpd4fnV+Tk9yd09yeF5/TWJ+T3J5T3J/Xn9+fH5KT3J+Xn/vT3J9X35ue357fkpPcnNef2p+X3x8T3JyfnV+Sk9yfl5/TXV+Tk9ydF97TU1PcnRfe257X35MT3JwT3JxXnx8X3tee2h5bv9+cn1eeXN9FglybnJvdX5NXnVffU1TZClQJbedoAK9mZ2csKyskZaskZW9nI+NdJudlp2trJGUrJGbvZyugZ2skZqskZy9nJ2enamskZ29nAyskZ68nY2YnZ+dqayRkL2ciZ28np+skZGdlp2prJGdvZyulp2trJGXvJ+urqyRl7yfjZi8na69lbyfvZmxnWQoKyS9lKe3kbaXl5eXp7eRtpSXlJekppuEppuYt5W2l5uFnJfW/ZYQOg4LNjoaOxs6OT46CAs3MlJWS1RJT3BeQgs2NRo4Pi45NzxfXlhJQktPNjQ0LD8quzo2OTYqNisbOjc4SVpMMTp7JjurgYKEoIG8sI2UoYKMgIShhIyF39/l8uuhga2hhDE6CRoxCQkWOpyXpLecpKSXlZekppuEppuYt5W2lJuFnJfWvZZoQnFzT0YwLyogJmNCUlNSQ0FFQn9zTldiQU9DR2JFT0YcHCYxKmJCbmJFnJekt5ykpJeSl6qmm4K3lLOWp6aalff6+qaakcbk+fv/5fO3loOUtpK2lZyXkqSaksnJ8+S3l7oUFSgwBSQFLi8kIRcpJ0BVBSQUFSgwBSQFKS8kIRcpJkBVEQUkGbkVKDIFJBUoMwUkMSUUFSgwBSQFKBckFSgyBSQVKDMFJA==", "load");
rx.ex64("UlgBKSAhQUpLQCBTRElQQCBDSUpKVydXXSFAXUBGJCQVKSFoRFFNBSVkJ5gleVNTUGJeVD43PDUmOnJTU1FDUlNWYXJTYnJWU1dTU1RiX1NyV272XWJfUnJXWFJTUcJyVHJRaI2tU1XPQ1LBclByUVNaQ1JTW2FyU2JyW1NYU1NUYl9Tclhu9l1iX1JyWEJSU1rCxkNQw3JVclRyWmiLrWNiXlYhIyAmc1PBclByWlNZU2NiX1BzU3JQREOtrVFTWFNjYl9Qc1NyVURDra1RU1hTY2JfUHNTcllEQ62tUVNYU1FHUWBgYH9TZCZlJb+VpbWWtJWVlpW5gZIChWuVpIWWtJYOhZykhZa0lgKFa5WkhZW0lg6FnKSFlbSWAoVrlaSFlLSWDoWcpIWUtJYUFSghFSgmBSUFJy8kIRcpJ1ZEFSgmBSUUFSghFSgmBSUFJi8kIRcpJlZERxUoJgUl", "load");
rx.ex64("UlgBKS8sUkBHQVdMU0BXI2pHT0BGUSFOQFxWIkxLQUBdakMhQUpLQCBTRElQQCBkV1dEXCN2XEhHSkkgdVdKXVwnV10kJDQ1JCc0JCQmuDMVKSxLRFNMQkRRSlcFJSQhuDMVKS1BSkZQSEBLUQUlZCA2JbK1BgaolJLo9Pnh7+rx//DsuZhkIyglGh2tlxEwPTAAPTARM2QiZyVrcHFMQ3FMQGBBYEFAQHJAcWFAQENAQEJxTERhQ33lTnFMRWFDWEFwcUxCYUJNRSIlIh5lUEFAfUBDQWxPe5G+bE5kLZQlrba3ioW3ioamh6aHhoa0hrenhoaFhoaEt4qCp4W7I4i3ioOnhQ+HtreKhKeEi4HYxvX15v6mloeGm4YhioGnhJsjt4qBpoe3p4Smh4a7hoWHqom2t4qEp4SLgNjU/url6OumloeGm4YhioCnhJsjt4qApoe3p4Smh4a7hoWHqom2t4qEp4SLgdjX9ej//qaWh4abhiGKj6eEmyO3io+mh7enhKaHhruGhYeqib3meKqIZCwFJRQTo5kfPjI1XV9SUm5WX1BKUVOZHz4yNmFOVl9QSlFTZC/hJUhTUm5vARAHAxYHJw4HDwcMFkNmbmQBAwwUAxFjY2NTUm5oBQcWIQ0MFgcaFkJjbmcVBwAFDmNgY178QmBgYk9sU1JubgUHFicaFgcMEQsNDEJgbns1JyAlLj0GBwAXBT0QBwwGBxAHED0LDAQNYVJudTcsLyMxKScmPTAnLCYnMCcwPTUnICUuY2hjU1JubgUHFjIDEAMPBxYHEEJgUGNhY17GaEJhYGJPbFNSb2FCYW5pMRULBBYxCgMGBxBDc2JjT2NkLgYlBgGIHCAnRUJCSV5kSUVLRFgNLBwgJ0NZWEleZElFS0RYDSxkKQ4leX73Y19ZOj09NiEEOjcnO3JTY19YMD86Nj0nBDo3JzvORWNfVzE8NypyVyQoMC0FKQUuBS8FLAUtBSIFIwUgZCtCJbyXl4eWl5SHlqo2ppqQ+vP48eL+t5u2lKyWp6aakvPu8/Wmm5+3lqa2lLebppeXlZeqMpy2lZWWl5WYqraVnJaXlwEPtpSHl7aXl5QGh5e2lKwjaaSmmpfmppuft5aDlLaXt5S3l7oXFSkkVxUoLAUlBSspIUlKREE=", "load");
rx.ex64("UlgBKS81REFBYFNAS1FpTFZRQEtAVyxISlBWQEFKUksiSEpQVkBQVTZXQEhKU0BgU0BLUWlMVlFAS0BXJ1ddLFFMSEB2UURIVS5VQFdDSldIREtGQCZLSlIhQF1ARiRXJCQ0BSQnNCokJjIhKykiRkRVUVBXQCspIlVEVlZMU0AkIbgzFSktQUpGUEhAS1EFJSQgFSkhaERRTQUlJCMrJCw0JSQuMWQpOSV6Y2BdUHFUU3FTcVddUWNgXVBxVFNxU3FYXVJ8ZCg6JVpydn9DQH1zUXRzUXNRd31xQ0B9c1F0c1FzUXh9clxkKwwlua8NspWSk7+RlZyio5+Q4PLxo56XspOymJmSoaOfkuOjnpeyk6Gykr9kKjMlakBxcUxGcUxHYEFcQHFMRGFAQ0tAbWQ1GyVwWmtrVlxrVl16W0Zaa1Zee1paWVpaWMp6UXtZWVLLSlp6UmprV18rLigzelB7WGf6ell6Ul1ba3pVa3pWdxQVKC0VKCEFJQUqJCIkFBUoLRUoIQUlBTUkLSQXFSgsFSghBSUFKSkhSUpEQRcVKCwVKCEFJQUrKSNQS0lKREE=", "load");
rx.ex64("UlgBKSIsSEpQVkBISlNAJ1ddJlZERyFGQExJIVVQVk0mREdWJFckJDQEJCc07SQkJjTaJCQhMiErKSJGRFVRUFdAKykiVURWVkxTQCQguDMVKS1BSkZQSEBLUQUlJCMVKSFoRFFNBSUkLSskKDQlJCsxJCoxZDU6JbStrpKO//r62+j78OrS9+3q+/D77L+bnb+av5mTnrJkNAAlaEBKTXFyTlEwJy8tNCcHNCcsNg4rMTYnLCcwY0dBY0ZjRU9CbmQ3YCVBV/VKY2prR2ljZFpbZmlbZmpKa0plampqWltmaVtmakprSmRhalpbZ20IBAUICh9LallqampZW2dqG1tmakprS2pKakdkNnkkHjQFBTk2W1pCBTk+RVBHU1pHWFRbVlAUNSg0BTk8QVxYUGZBVFhFFTQ0NzQ0NqgkNQU5MEVUUlBtFTQ0MagkNQU5MEVUUlBsFTQJqZEUPhUxkRQ/FTY0NRkJqaoUN6QUPBU3FDw5NTc8Pzc/Pzc+Pzc5PwmTPxQ8QDUHBTkwVEFUWwcUM6QUPxU2pBQ+FTE0MDQEBTkxRkRHQRQzpaEkN6QVNhQ/oSQ3pBUxFD4/NAQFODYUMwc0MzQJqJEUPBU3kSQ1FTM+NQQFODEUOyQ1Dyg1BAU4NhQzpyTdMqakFDwVNxUzNDI0BAU4MRQ7FTIJkz8UOXU1BAU4MBQzpBQ5FTAkNKcFOTdlfBQzJDc/NAQFODAUM6QUORUwPzQHBTk2WFxbFDMHBzQ9NAQFODEUOqck3TIVPTc4pSQ0FDg3PBU3Nz8VNjc+FTE3ORUwCaoUNhQ4MzUFFCcFFCQZFBUpIUBdQEYVKCQFJQU2JCIkFxUoIxUoJAUlBTUpIUlKREEXFSgjFSgkBSUFNykjUEtJSkRB", "load");
rx.ex64("UlgBKSYjVkZXSklJJ1ddJFckJDQHJCc07SQkJjTaJCQhMiErKSJGRFVRUFdAKykiVURWVkxTQCQgFSkhaERRTQUlJCMrJC40JSQpMWQoOiVfRkV5ZRQRETADEBsBORwGARAbEAdUdXZUcVRyeHVZZCsAJbKanperqJSL6v319+793e799uzU8evs/fb96rmYm7mcuZ+VmLRkKg4laH7cY0RDQm5ARE1zck5BMSMgck9DY0JjTkNDQ3ByTkMyck9DY0JiQ2NDbmQ1iiVacEFBfXIfHgZBfXoBFAMXHgMcEB8SFFBxbHBBfXgFGBwUIgUQHAFRcHBzcHBy7GBxQX12AhIDHh0dKFBxTe3uUHPgUHlRc1B5eHFzeXtzeHtze3tN13tQeUdxQEF9chATAlB04FB4UXJwdXBAQX11EhQYHVB042CZduLgUHlRc1F1cHRwQEF9dQEEAhlQfVF0c3rhYHBQenN5UXNzeFFyTe5QclB6d3FBUH5BUH9dFBUpIUBdQEYVKCQFJQU1JCIkFxUoJxUoJAUlBSgpIUlKREEXFSgnFSgkBSUFKikjUEtJSkRB", "load");
/* ◬ */
'undefined'=== typeof _trfq || (window._trfq = []);'undefined'=== typeof _trfd && (window._trfd=[]),_trfd.push({'tccl.baseHost':'secureserver.net'},{'ap':'cpbh-mt'},{'server':'sg2plmcpnl504720'},{'dcenter':'sg2'},{'cp_id':'10238718'},{'cp_cl':'8'}) // Monitoring performance to make your website faster. If you want to opt-out, please contact web hosting support. x server on