1<!doctype html><html lang="en"><head><meta charset="utf-8"/><title>discovery+</title><link rel="preconnect" href="https://assets.adobedtm.com" crossorigin/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="facebook-domain-verification" content="ojihpqe4tghv3x7xh1ojorbdz14ov9"/>
1<script>window.NREUM || (NREUM = {}); 2NREUM.init = { 3 distributed_tracing: { enabled: true }, 4 privacy: { cookies_enabled: true }, 5 ajax: { deny_list: ["bam.nr-data.net"] }, 6}; 7let licenseKey = "NRJS-9651707c3001e0c37f1"; 8// Enterprise credentials 9let applicationID = "1120109453"; 10let agentID = "1120109453"; 11const prodHostNames = ["www.discoveryplus.in", "discoveryplus.in"]; 12const isProd = prodHostNames.includes(window.location.hostname); 13if (isProd) { 14 //Release credentials 15 agentID = "1120106581"; 16 applicationID = "1120106581"; 17} 18 19NREUM.loader_config = { 20 accountID: "3582066", 21 trustKey: "2006878", 22 agentID: agentID, 23 licenseKey: licenseKey, 24 applicationID: applicationID, 25}; 26NREUM.info = { 27 beacon: "bam.nr-data.net", 28 errorBeacon: "bam.nr-data.net", 29 licenseKey: licenseKey, 30 applicationID: applicationID, 31 sa: 1, 32}; 33window.NREUM || (NREUM = {}), 34 (() => { 35 var e, 36 t, 37 r = { 38 8122: (e, t, r) => { 39 "use strict"; 40 r.d(t, { a: () => i }); 41 var n = r(944); 42 function i(e, t) { 43 try { 44 if (!e || "object" != typeof e) return (0, n.R)(3); 45 if (!t || "object" != typeof t) return (0, n.R)(4); 46 const r = Object.create( 47 Object.getPrototypeOf(t), 48 Object.getOwnPropertyDescriptors(t) 49 ), 50 o = 0 === Object.keys(r).length ? e : r; 51 for (let a in o) 52 if (void 0 !== e[a]) 53 try { 54 if (null === e[a]) { 55 r[a] = null; 56 continue; 57 } 58 Array.isArray(e[a]) && Array.isArray(t[a]) 59 ? (r[a] = Array.from(new Set([...e[a], ...t[a]]))) 60 : "object" == typeof e[a] && "object" == typeof t[a] 61 ? (r[a] = i(e[a], t[a])) 62 : (r[a] = e[a]); 63 } catch (e) { 64 (0, n.R)(1, e); 65 } 66 return r; 67 } catch (e) { 68 (0, n.R)(2, e); 69 } 70 } 71 }, 72 2555: (e, t, r) => { 73 "use strict"; 74 r.d(t, { Vp: () => c, fn: () => s, x1: () => u }); 75 var n = r(384), 76 i = r(8122); 77 const o = { 78 beacon: n.NT.beacon, 79 errorBeacon: n.NT.errorBeacon, 80 licenseKey: void 0, 81 applicationID: void 0, 82 sa: void 0, 83 queueTime: void 0, 84 applicationTime: void 0, 85 ttGuid: void 0, 86 user: void 0, 87 account: void 0, 88 product: void 0, 89 extra: void 0, 90 jsAttributes: {}, 91 userAttributes: void 0, 92 atts: void 0, 93 transactionName: void 0, 94 tNamePlain: void 0, 95 }, 96 a = {}; 97 function s(e) { 98 try { 99 const t = c(e); 100 return !!t.licenseKey && !!t.errorBeacon && !!t.applicationID; 101 } catch (e) { 102 return !1; 103 } 104 } 105 function c(e) { 106 if (!e) 107 throw new Error("All info objects require an agent identifier!"); 108 if (!a[e]) throw new Error("Info for ".concat(e, " was never set")); 109 return a[e]; 110 } 111 function u(e, t) { 112 if (!e) 113 throw new Error("All info objects require an agent identifier!"); 114 a[e] = (0, i.a)(t, o); 115 const r = (0, n.nY)(e); 116 r && (r.info = a[e]); 117 } 118 }, 119 9417: (e, t, r) => { 120 "use strict"; 121 r.d(t, { D0: () => h, gD: () => g, xN: () => p }); 122 var n = r(3333); 123 const i = (e) => { 124 if (!e || "string" != typeof e) return !1; 125 try { 126 document.createDocumentFragment().querySelector(e); 127 } catch { 128 return !1; 129 } 130 return !0; 131 }; 132 var o = r(2614), 133 a = r(944), 134 s = r(384), 135 c = r(8122); 136 const u = "[data-nr-mask]", 137 d = () => { 138 const e = { 139 feature_flags: [], 140 experimental: { marks: !1, measures: !1, resources: !1 }, 141 mask_selector: "*", 142 block_selector: "[data-nr-block]", 143 mask_input_options: { 144 color: !1, 145 date: !1, 146 "datetime-local": !1, 147 email: !1, 148 month: !1, 149 number: !1, 150 range: !1, 151 search: !1, 152 tel: !1, 153 text: !1, 154 time: !1, 155 url: !1, 156 week: !1, 157 textarea: !1, 158 select: !1, 159 password: !0, 160 }, 161 }; 162 return { 163 ajax: { 164 deny_list: void 0, 165 block_internal: !0, 166 enabled: !0, 167 autoStart: !0, 168 }, 169 distributed_tracing: { 170 enabled: void 0, 171 exclude_newrelic_header: void 0, 172 cors_use_newrelic_header: void 0, 173 cors_use_tracecontext_headers: void 0, 174 allowed_origins: void 0, 175 }, 176 get feature_flags() { 177 return e.feature_flags; 178 }, 179 set feature_flags(t) { 180 e.feature_flags = t; 181 }, 182 generic_events: { enabled: !0, autoStart: !0 }, 183 harvest: { interval: 30 }, 184 jserrors: { enabled: !0, autoStart: !0 }, 185 logging: { enabled: !0, autoStart: !0 }, 186 metrics: { enabled: !0, autoStart: !0 }, 187 obfuscate: void 0, 188 page_action: { enabled: !0 }, 189 page_view_event: { enabled: !0, autoStart: !0 }, 190 page_view_timing: { enabled: !0, autoStart: !0 }, 191 performance: { 192 get capture_marks() { 193 return ( 194 e.feature_flags.includes(n.$v.MARKS) || 195 e.experimental.marks 196 ); 197 }, 198 set capture_marks(t) { 199 e.experimental.marks = t; 200 }, 201 get capture_measures() { 202 return ( 203 e.feature_flags.includes(n.$v.MEASURES) || 204 e.experimental.measures 205 ); 206 }, 207 set capture_measures(t) { 208 e.experimental.measures = t; 209 }, 210 capture_detail: !0, 211 resources: { 212 get enabled() { 213 return ( 214 e.feature_flags.includes(n.$v.RESOURCES) || 215 e.experimental.resources 216 ); 217 }, 218 set enabled(t) { 219 e.experimental.resources = t; 220 }, 221 asset_types: [], 222 first_party_domains: [], 223 ignore_newrelic: !0, 224 }, 225 }, 226 privacy: { cookies_enabled: !0 }, 227 proxy: { assets: void 0, beacon: void 0 }, 228 session: { expiresMs: o.wk, inactiveMs: o.BB }, 229 session_replay: { 230 autoStart: !0, 231 enabled: !1, 232 preload: !1, 233 sampling_rate: 10, 234 error_sampling_rate: 100, 235 collect_fonts: !1, 236 inline_images: !1, 237 fix_stylesheets: !0, 238 mask_all_inputs: !0, 239 get mask_text_selector() { 240 return e.mask_selector; 241 }, 242 set mask_text_selector(t) { 243 i(t) 244 ? (e.mask_selector = "".concat(t, ",").concat(u)) 245 : "" === t || null === t 246 ? (e.mask_selector = u) 247 : (0, a.R)(5, t); 248 }, 249 get block_class() { 250 return "nr-block"; 251 }, 252 get ignore_class() { 253 return "nr-ignore"; 254 }, 255 get mask_text_class() { 256 return "nr-mask"; 257 }, 258 get block_selector() { 259 return e.block_selector; 260 }, 261 set block_selector(t) { 262 i(t) 263 ? (e.block_selector += ",".concat(t)) 264 : "" !== t && (0, a.R)(6, t); 265 }, 266 get mask_input_options() { 267 return e.mask_input_options; 268 }, 269 set mask_input_options(t) { 270 t && "object" == typeof t 271 ? (e.mask_input_options = { ...t, password: !0 }) 272 : (0, a.R)(7, t); 273 }, 274 }, 275 session_trace: { enabled: !0, autoStart: !0 }, 276 soft_navigations: { enabled: !0, autoStart: !0 }, 277 spa: { enabled: !0, autoStart: !0 }, 278 ssl: void 0, 279 user_actions: { 280 enabled: !0, 281 elementAttributes: ["id", "className", "tagName", "type"], 282 }, 283 }; 284 }, 285 l = {}, 286 f = "All configuration objects require an agent identifier!"; 287 function h(e) { 288 if (!e) throw new Error(f); 289 if (!l[e]) 290 throw new Error("Configuration for ".concat(e, " was never set")); 291 return l[e]; 292 } 293 function p(e, t) { 294 if (!e) throw new Error(f); 295 l[e] = (0, c.a)(t, d()); 296 const r = (0, s.nY)(e); 297 r && (r.init = l[e]); 298 } 299 function g(e, t) { 300 if (!e) throw new Error(f); 301 var r = h(e); 302 if (r) { 303 for (var n = t.split("."), i = 0; i < n.length - 1; i++) 304 if ("object" != typeof (r = r[n[i]])) return; 305 r = r[n[n.length - 1]]; 306 } 307 return r; 308 } 309 }, 310 5603: (e, t, r) => { 311 "use strict"; 312 r.d(t, { a: () => c, o: () => s }); 313 var n = r(384), 314 i = r(8122); 315 const o = { 316 accountID: void 0, 317 trustKey: void 0, 318 agentID: void 0, 319 licenseKey: void 0, 320 applicationID: void 0, 321 xpid: void 0, 322 }, 323 a = {}; 324 function s(e) { 325 if (!e) 326 throw new Error( 327 "All loader-config objects require an agent identifier!" 328 ); 329 if (!a[e]) 330 throw new Error("LoaderConfig for ".concat(e, " was never set")); 331 return a[e]; 332 } 333 function c(e, t) { 334 if (!e) 335 throw new Error( 336 "All loader-config objects require an agent identifier!" 337 ); 338 a[e] = (0, i.a)(t, o); 339 const r = (0, n.nY)(e); 340 r && (r.loader_config = a[e]); 341 } 342 }, 343 3371: (e, t, r) => { 344 "use strict"; 345 r.d(t, { V: () => f, f: () => l }); 346 var n = r(8122), 347 i = r(384), 348 o = r(6154), 349 a = r(9324); 350 let s = 0; 351 const c = { 352 buildEnv: a.F3, 353 distMethod: a.Xs, 354 version: a.xv, 355 originTime: o.WN, 356 }, 357 u = { 358 customTransaction: void 0, 359 disabled: !1, 360 isolatedBacklog: !1, 361 loaderType: void 0, 362 maxBytes: 3e4, 363 onerror: void 0, 364 ptid: void 0, 365 releaseIds: {}, 366 appMetadata: {}, 367 session: void 0, 368 denyList: void 0, 369 timeKeeper: void 0, 370 obfuscator: void 0, 371 harvester: void 0, 372 }, 373 d = {}; 374 function l(e) { 375 if (!e) 376 throw new Error( 377 "All runtime objects require an agent identifier!" 378 ); 379 if (!d[e]) 380 throw new Error("Runtime for ".concat(e, " was never set")); 381 return d[e]; 382 } 383 function f(e, t) { 384 if (!e) 385 throw new Error( 386 "All runtime objects require an agent identifier!" 387 ); 388 (d[e] = { ...(0, n.a)(t, u), ...c }), 389 Object.hasOwnProperty.call(d[e], "harvestCount") || 390 Object.defineProperty(d[e], "harvestCount", { get: () => ++s }); 391 const r = (0, i.nY)(e); 392 r && (r.runtime = d[e]); 393 } 394 }, 395 9324: (e, t, r) => { 396 "use strict"; 397 r.d(t, { F3: () => i, Xs: () => o, Yq: () => a, xv: () => n }); 398 const n = "1.284.1", 399 i = "PROD", 400 o = "CDN", 401 a = "^2.0.0-alpha.18"; 402 }, 403 6154: (e, t, r) => { 404 "use strict"; 405 r.d(t, { 406 A4: () => s, 407 OF: () => d, 408 RI: () => i, 409 WN: () => h,
410 bv: () => o, 411 gm: () => a, 412 lR: () => f, 413 m: () => u, 414 mw: () => c, 415 sb: () => l, 416 }); 417 var n = r(1863); 418 const i = "undefined" != typeof window && !!window.document, 419 o = 420 "undefined" != typeof WorkerGlobalScope && 421 (("undefined" != typeof self && 422 self instanceof WorkerGlobalScope && 423 self.navigator instanceof WorkerNavigator) || 424 ("undefined" != typeof globalThis && 425 globalThis instanceof WorkerGlobalScope && 426 globalThis.navigator instanceof WorkerNavigator)), 427 a = i 428 ? window 429 : "undefined" != typeof WorkerGlobalScope && 430 (("undefined" != typeof self && 431 self instanceof WorkerGlobalScope && 432 self) || 433 ("undefined" != typeof globalThis && 434 globalThis instanceof WorkerGlobalScope && 435 globalThis)), 436 s = "complete" === a?.document?.readyState, 437 c = Boolean("hidden" === a?.document?.visibilityState), 438 u = "" + a?.location, 439 d = /iPad|iPhone|iPod/.test(a.navigator?.userAgent), 440 l = d && "undefined" == typeof SharedWorker, 441 f = (() => { 442 const e = a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/); 443 return Array.isArray(e) && e.length >= 2 ? +e[1] : 0; 444 })(), 445 h = Date.now() - (0, n.t)(); 446 }, 447 7295: (e, t, r) => { 448 "use strict"; 449 r.d(t, { Xv: () => a, gX: () => i, iW: () => o }); 450 var n = []; 451 function i(e) { 452 if (!e || o(e)) return !1; 453 if (0 === n.length) return !0; 454 for (var t = 0; t < n.length; t++) { 455 var r = n[t]; 456 if ("*" === r.hostname) return !1; 457 if (s(r.hostname, e.hostname) && c(r.pathname, e.pathname)) 458 return !1; 459 } 460 return !0; 461 } 462 function o(e) { 463 return void 0 === e.hostname; 464 } 465 function a(e) { 466 if (((n = []), e && e.length)) 467 for (var t = 0; t < e.length; t++) { 468 let r = e[t]; 469 if (!r) continue; 470 0 === r.indexOf("http://") 471 ? (r = r.substring(7)) 472 : 0 === r.indexOf("https://") && (r = r.substring(8)); 473 const i = r.indexOf("/"); 474 let o, a; 475 i > 0 476 ? ((o = r.substring(0, i)), (a = r.substring(i))) 477 : ((o = r), (a = "")); 478 let [s] = o.split(":"); 479 n.push({ hostname: s, pathname: a }); 480 } 481 } 482 function s(e, t) { 483 return ( 484 !(e.length > t.length) && t.indexOf(e) === t.length - e.length 485 ); 486 } 487 function c(e, t) { 488 return ( 489 0 === e.indexOf("/") && (e = e.substring(1)), 490 0 === t.indexOf("/") && (t = t.substring(1)), 491 "" === e || e === t 492 ); 493 } 494 }, 495 1687: (e, t, r) => { 496 "use strict"; 497 r.d(t, { Ak: () => c, Ze: () => l, x3: () => u }); 498 var n = r(7836), 499 i = r(3606), 500 o = r(860), 501 a = r(2646); 502 const s = {}; 503 function c(e, t) { 504 const r = { staged: !1, priority: o.P3[t] || 0 }; 505 d(e), s[e].get(t) || s[e].set(t, r); 506 } 507 function u(e, t) { 508 e && 509 s[e] && 510 (s[e].get(t) && s[e].delete(t), h(e, t, !1), s[e].size && f(e)); 511 } 512 function d(e) { 513 if (!e) throw new Error("agentIdentifier required"); 514 s[e] || (s[e] = new Map()); 515 } 516 function l(e = "", t = "feature", r = !1) { 517 if ((d(e), !e || !s[e].get(t) || r)) return h(e, t); 518 (s[e].get(t).staged = !0), f(e); 519 } 520 function f(e) { 521 const t = Array.from(s[e]); 522 t.every(([e, t]) => t.staged) && 523 (t.sort((e, t) => e[1].priority - t[1].priority), 524 t.forEach(([t]) => { 525 s[e].delete(t), h(e, t); 526 })); 527 } 528 function h(e, t, r = !0) { 529 const o = e ? n.ee.get(e) : n.ee, 530 s = i.i.handlers; 531 if (!o.aborted && o.backlog && s) { 532 if (r) { 533 const e = o.backlog[t], 534 r = s[t]; 535 if (r) { 536 for (let t = 0; e && t < e.length; ++t) p(e[t], r); 537 Object.entries(r).forEach(([e, t]) => { 538 Object.values(t || {}
538).forEach((t) => { 539 t[0]?.on && 540 t[0]?.context() instanceof a.y && 541 t[0].on(e, t[1]); 542 }); 543 }); 544 } 545 } 546 o.isolatedBacklog || delete s[t], 547 (o.backlog[t] = null), 548 o.emit("drain-" + t, []); 549 } 550 } 551 function p(e, t) { 552 var r = e[1]; 553 Object.values(t[r] || {}).forEach((t) => { 554 var r = e[0]; 555 if (t[0] === r) { 556 var n = t[1], 557 i = e[3], 558 o = e[2]; 559 n.apply(i, o); 560 } 561 }); 562 } 563 }, 564 7836: (e, t, r) => { 565 "use strict"; 566 r.d(t, { P: () => c, ee: () => u }); 567 var n = r(384), 568 i = r(8990), 569 o = r(3371), 570 a = r(2646), 571 s = r(5607); 572 const c = "nr@context:".concat(s.W), 573 u = (function e(t, r) { 574 var n = {}, 575 s = {}, 576 d = {}, 577 l = !1; 578 try { 579 l = 16 === r.length && (0, o.f)(r).isolatedBacklog; 580 } catch (e) {} 581 var f = { 582 on: p, 583 addEventListener: p, 584 removeEventListener: function (e, t) { 585 var r = n[e]; 586 if (!r) return; 587 for (var i = 0; i < r.length; i++) 588 r[i] === t && r.splice(i, 1); 589 }, 590 emit: function (e, r, n, i, o) { 591 !1 !== o && (o = !0); 592 if (u.aborted && !i) return; 593 t && o && t.emit(e, r, n); 594 for (var a = h(n), c = g(e), d = c.length, l = 0; l < d; l++) 595 c[l].apply(a, r); 596 var p = v()[s[e]]; 597 p && p.push([f, e, r, a]); 598 return a; 599 }, 600 get: m, 601 listeners: g, 602 context: h, 603 buffer: function (e, t) { 604 const r = v(); 605 if (((t = t || "feature"), f.aborted)) return; 606 Object.entries(e || {}).forEach(([e, n]) => { 607 (s[n] = t), t in r || (r[t] = []); 608 }); 609 }, 610 abort: function () { 611 (f._aborted = !0), 612 Object.keys(f.backlog).forEach((e) => { 613 delete f.backlog[e]; 614 }); 615 }, 616 isBuffering: function (e) { 617 return !!v()[s[e]]; 618 }, 619 debugId: r, 620 backlog: l 621 ? {} 622 : t && "object" == typeof t.backlog 623 ? t.backlog 624 : {}, 625 isolatedBacklog: l, 626 }; 627 return ( 628 Object.defineProperty(f, "aborted", { 629 get: () => { 630 let e = f._aborted || !1; 631 return e || (t && (e = t.aborted), e); 632 }, 633 }), 634 f 635 ); 636 function h(e) { 637 return e && e instanceof a.y 638 ? e 639 : e 640 ? (0, i.I)(e, c, () => new a.y(c)) 641 : new a.y(c); 642 } 643 function p(e, t) { 644 n[e] = g(e).concat(t); 645 } 646 function g(e) { 647 return n[e] || []; 648 } 649 function m(t) { 650 return (d[t] = d[t] || e(f, t)); 651 } 652 function v() { 653 return f.backlog; 654 } 655 })(void 0, "globalEE"), 656 d = (0, n.Zm)(); 657 d.ee || (d.ee = u); 658 }, 659 2646: (e, t, r) => { 660 "use strict"; 661 r.d(t, { y: () => n }); 662 class n { 663 constructor(e) { 664 this.contextId = e; 665 } 666 } 667 }, 668 9908: (e, t, r) => { 669 "use strict"; 670 r.d(t, { d: () => n, p: () => i }); 671 var n = r(7836).ee.get("handle"); 672 function i(e, t, r, i, o) { 673 o 674 ? (o.buffer([e], i), o.emit(e, t, r)) 675 : (n.buffer([e], i), n.emit(e, t, r)); 676 } 677 }, 678 3606: (e, t, r) => { 679 "use strict"; 680 r.d(t, { i: () => o }); 681 var n = r(9908); 682 o.on = a; 683 var i = (o.handlers = {}); 684 function o(e, t, r, o) { 685 a(o || n.d, i, e, t, r); 686 } 687 function a(e, t, r, i, o) { 688 o || (o = "feature"), e || (e = n.d); 689 var a = (t[o] = t[o] || {}); 690 (a[r] = a[r] || []).push([e, i]); 691 } 692 }, 693 3878: (e, t, r) => { 694 "use strict"; 695 function n(e, t) { 696 return { capture: e, passive: !1, signal: t }; 697 } 698 function i(e, t, r = !1, i) { 699 window.addEventListener(e, t, n(r, i)); 700 } 701 function o(e, t, r = !1, i) { 702 document.addEventListener(e, t, n(r, i)); 703 } 704 r.d(t, { DD: () => o, jT: () => n, sp: () => i }); 705 }, 706 5607: (e, t, r) => { 707 "use strict"; 708 r.d(t, { W: () => n }); 709 const n = (0, r(9566).bz)(); 710 }, 711 9566: (e, t, r) => { 712 "use strict"; 713 r.d(t, { LA: () => s, ZF: () => c, bz: () => a, el: () => u }); 714 var n = r(6154); 715 const i = "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx"; 716 function o(e, t) { 717 return e ? 15 & e[t] : (16 * Math.random()) | 0; 718 } 719 function a() { 720 const e = n.gm?.crypto || n.gm?.msCrypto; 721 let t, 722 r = 0; 723 return ( 724 e && 725 e.getRandomValues && 726 (t = e.getRandomValues(new Uint8Array(30))), 727 i 728 .split("") 729 .map((e) => 730 "x" === e 731 ? o(t, r++).toString(16) 732 : "y" === e 733 ? ((3 & o()) | 8).toString(16) 734 : e 735 ) 736 .join("") 737 ); 738 } 739 function s(e) { 740 const t = n.gm?.crypto || n.gm?.msCrypto; 741 let r, 742 i = 0; 743 t && 744 t.getRandomValues && 745 (r = t.getRandomValues(new Uint8Array(e))); 746 const a = []; 747 for (var s = 0; s < e; s++) a.push(o(r, i++).toString(16)); 748 return a.join(""); 749 } 750 function c() { 751 return s(16); 752 } 753 function u() { 754 return s(32); 755 } 756 }, 757 2614: (e, t, r) => { 758 "use strict"; 759 r.d(t, { 760 BB: () => a, 761 H3: () => n, 762 g: () => u, 763 iL: () => c, 764 tS: () => s, 765 uh: () => i, 766 wk: () => o, 767 }); 768 const n = "NRBA", 769 i = "SESSION", 770 o = 144e5, 771 a = 18e5, 772 s = { 773 STARTED: "session-started", 774 PAUSE: "session-pause", 775 RESET: "session-reset", 776 RESUME: "session-resume", 777 UPDATE: "session-update", 778 }, 779 c = { SAME_TAB: "same-tab", CROSS_TAB: "cross-tab" }, 780 u = { OFF: 0, FULL: 1, ERROR: 2 }; 781 }, 782 1863: (e, t, r) => { 783 "use strict"; 784 function n() { 785 return Math.floor(performance.now()); 786 } 787 r.d(t, { t: () => n }); 788 }, 789 7485: (e, t, r) => { 790 "use strict"; 791 r.d(t, { D: () => i }); 792 var n = r(6154); 793 function i(e) { 794 if (0 === (e || "").indexOf("data:")) return { protocol: "data" }; 795 try { 796 const t = new URL(e, location.href), 797 r = { 798 port: t.port, 799 hostname: t.hostname, 800 pathname: t.pathname, 801 search: t.search, 802 protocol: t.protocol.slice(0, t.protocol.indexOf(":")), 803 sameOrigin: 804 t.protocol === n.gm?.location?.protocol && 805 t.host === n.gm?.location?.host, 806 }; 807 return ( 808 (r.port && "" !== r.port) || 809 ("http:" === t.protocol && (r.port = "80"), 810 "https:" === t.protocol && (r.port = "443")), 811 r.pathname && "" !== r.pathname 812 ? r.pathname.startsWith("/") || 813 (r.pathname = "/".concat(r.pathname)) 814 : (r.pathname = "/"), 815 r 816 ); 817 } catch (e) { 818 return {}; 819 } 820 } 821 }, 822 944: (e, t, r) => { 823 "use strict"; 824 function n(e, t) { 825 "function" == typeof console.debug && 826 console.debug( 827 "New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat( 828 e 829 ), 830 t 831 ); 832 } 833 r.d(t, { R: () => n }); 834 }, 835 5284: (e, t, r) => { 836 "use strict"; 837 r.d(t, { t: () => c, B: () => s }); 838 var n = r(7836), 839 i = r(6154); 840 const o = "newrelic"; 841 const a = new Set(), 842 s = {}; 843 function c(e, t) { 844 const r = n.ee.get(t); 845 (s[t] ??= {}), 846 e && 847 "object" == typeof e && 848 (a.has(t) || 849 (r.emit("rumresp", [e]), 850 (s[t] = e), 851 a.add(t), 852 (function (e = {}) { 853 try { 854 i.gm.dispatchEvent(new CustomEvent(o, { detail: e })); 855 } catch (e) {} 856 })({ loaded: !0 }))); 857 } 858 }, 859 8990: (e, t, r) => { 860 "use strict"; 861 r.d(t, { I: () => i }); 862 var n = Object.prototype.hasOwnProperty; 863 function i(e, t, r) { 864 if (n.call(e, t)) return e[t]; 865 var i = r(); 866 if (Object.defineProperty && Object.keys) 867 try { 868 return ( 869 Object.defineProperty(e, t, { 870 value: i, 871 writable: !0, 872 enumerable: !1, 873 }), 874 i 875 ); 876 } catch (e) {} 877 return (e[t] = i), i; 878 } 879 }, 880 6389: (e, t, r) => { 881 "use strict"; 882 function n(e, t = 500, r = {}) { 883 const n = r?.leading || !1; 884 let i; 885 return (...r) => { 886 n && 887 void 0 === i && 888 (e.apply(this, r), 889 (i = setTimeout(() => { 890 i = clearTimeout(i); 891 }, t))), 892 n || 893 (clearTimeout(i), 894 (i = setTimeout(() => { 895 e.apply(this, r); 896 }, t))); 897 }; 898 } 899 function i(e) { 900 let t = !1; 901 return (...r) => { 902 t || ((t = !0), e.apply(this, r)); 903 }; 904 } 905 r.d(t, { J: () => i, s: () => n }); 906 }, 907 3304: (e, t, r) => { 908 "use strict"; 909 r.d(t, { A: () => o }); 910 var n = r(7836); 911 const i = () => { 912 const e = new WeakSet(); 913 return (t, r) => { 914 if ("object" == typeof r && null !== r) { 915 if (e.has(r)) return; 916 e.add(r); 917 } 918 return r; 919 }; 920 }; 921 function o(e) { 922 try { 923 return JSON.stringify(e, i()) ?? ""; 924 } catch (e) { 925 try { 926 n.ee.emit("internal-error", [e]); 927 } catch (e) {} 928 return ""; 929 } 930 } 931 }, 932 5289: (e, t, r) => { 933 "use strict"; 934 r.d(t, { GG: () => o, sB: () => a }); 935 var n = r(3878); 936 function i() { 937 return ( 938 "undefined" == typeof document || 939 "complete" === document.readyState 940 ); 941 } 942 function o(e, t) { 943 if (i()) return e(); 944 (0, n.sp)("load", e, t); 945 } 946 function a(e) { 947 if (i()) return e(); 948 (0, n.DD)("DOMContentLoaded", e); 949 } 950 }, 951 384: (e, t, r) => { 952 "use strict"; 953 r.d(t, { 954 NT: () => o, 955 US: () => d, 956 Zm: () => a, 957 bQ: () => c, 958 dV: () => s, 959 nY: () => u, 960 pV: () => l, 961 }); 962 var n = r(6154), 963 i = r(1863); 964 const o = { 965 beacon: "bam.nr-data.net", 966 errorBeacon: "bam.nr-data.net", 967 }; 968 function a() { 969 return ( 970 n.gm.NREUM || (n.gm.NREUM = {}),
971 void 0 === n.gm.newrelic && (n.gm.newrelic = n.gm.NREUM), 972 n.gm.NREUM 973 ); 974 } 975 function s() { 976 let e = a(); 977 return ( 978 e.o || 979 (e.o = { 980 ST: n.gm.setTimeout, 981 SI: n.gm.setImmediate, 982 CT: n.gm.clearTimeout, 983 XHR: n.gm.XMLHttpRequest, 984 REQ: n.gm.Request, 985 EV: n.gm.Event, 986 PR: n.gm.Promise, 987 MO: n.gm.MutationObserver, 988 FETCH: n.gm.fetch, 989 WS: n.gm.WebSocket, 990 }), 991 e 992 ); 993 } 994 function c(e, t) { 995 let r = a(); 996 (r.initializedAgents ??= {}), 997 (t.initializedAt = { ms: (0, i.t)(), date: new Date() }), 998 (r.initializedAgents[e] = t); 999 } 1000 function u(e) { 1001 let t = a(); 1002 return t.initializedAgents?.[e]; 1003 } 1004 function d(e, t) { 1005 a()[e] = t; 1006 } 1007 function l() { 1008 return ( 1009 (function () { 1010 let e = a(); 1011 const t = e.info || {}; 1012 e.info = { beacon: o.beacon, errorBeacon: o.errorBeacon, ...t }; 1013 })(), 1014 (function () { 1015 let e = a(); 1016 const t = e.init || {}; 1017 e.init = { ...t }; 1018 })(), 1019 s(), 1020 (function () { 1021 let e = a(); 1022 const t = e.loader_config || {}; 1023 e.loader_config = { ...t }; 1024 })(), 1025 a() 1026 ); 1027 } 1028 }, 1029 2843: (e, t, r) => { 1030 "use strict"; 1031 r.d(t, { u: () => i }); 1032 var n = r(3878); 1033 function i(e, t = !1, r, i) { 1034 (0, n.DD)( 1035 "visibilitychange", 1036 function () { 1037 if (t) 1038 return void ("hidden" === document.visibilityState && e()); 1039 e(document.visibilityState); 1040 }, 1041 r, 1042 i 1043 ); 1044 } 1045 }, 1046 8139: (e, t, r) => { 1047 "use strict"; 1048 r.d(t, { u: () => f }); 1049 var n = r(7836), 1050 i = r(3434), 1051 o = r(8990), 1052 a = r(6154); 1053 const s = {}, 1054 c = a.gm.XMLHttpRequest, 1055 u = "addEventListener", 1056 d = "removeEventListener", 1057 l = "nr@wrapped:".concat(n.P); 1058 function f(e) { 1059 var t = (function (e) { 1060 return (e || n.ee).get("events"); 1061 })(e); 1062 if (s[t.debugId]++) return t; 1063 s[t.debugId] = 1; 1064 var r = (0, i.YM)(t, !0); 1065 function f(e) { 1066 r.inPlace(e, [u, d], "-", p); 1067 } 1068 function p(e, t) { 1069 return e[1]; 1070 } 1071 return ( 1072 "getPrototypeOf" in Object && 1073 (a.RI && h(document, f), c && h(c.prototype, f), h(a.gm, f)), 1074 t.on(u + "-start", function (e, t) { 1075 var n = e[1]; 1076 if ( 1077 null !== n && 1078 ("function" == typeof n || "object" == typeof n) 1079 ) { 1080 var i = (0, o.I)(n, l, function () { 1081 var e = { 1082 object: function () { 1083 if ("function" != typeof n.handleEvent) return; 1084 return n.handleEvent.apply(n, arguments); 1085 }, 1086 function: n, 1087 }[typeof n]; 1088 return e ? r(e, "fn-", null, e.name || "anonymous") : n; 1089 }); 1090 this.wrapped = e[1] = i; 1091 } 1092 }), 1093 t.on(d + "-start", function (e) { 1094 e[1] = this.wrapped || e[1]; 1095 }), 1096 t 1097 ); 1098 } 1099 function h(e, t, ...r) { 1100 let n = e; 1101 for ( 1102 ; 1103 "object" == typeof n && 1104 !Object.prototype.hasOwnProperty.call(n, u); 1105 1106 ) 1107 n = Object.getPrototypeOf(n); 1108 n && t(n, ...r); 1109 } 1110 }, 1111 3434: (e, t, r) => { 1112 "use strict"; 1113 r.d(t, { Jt: () => o, YM: () => c }); 1114 var n = r(7836), 1115 i = r(5607); 1116 const o = "nr@original:".concat(i.W); 1117 var a = Object.prototype.hasOwnProperty, 1118 s = !1; 1119 function c(e, t) { 1120 return ( 1121 e || (e = n.ee), 1122 (r.inPlace = function (e, t, n, i, o) { 1123 n || (n = ""); 1124 const a = "-" === n.charAt(0); 1125 for (let s = 0; s < t.length; s++) { 1126 const c = t[s], 1127 u = e[c]; 1128 d(u) || (e[c] = r(u, a ? c + n : n, i, c, o)); 1129 } 1130 }), 1131 (r.flag = o), 1132 r 1133 ); 1134 function r(t, r, n, s, c) { 1135 return d(t) 1136 ? t 1137 : (r || (r = ""), 1138 (nrWrapper[o] = t), 1139 (function (e, t, r) { 1140 if (Object.defineProperty && Object.keys) 1141 try { 1142 return ( 1143 Object.keys(e).forEach(function (r) { 1144 Object.defineProperty(t, r, { 1145 get: function () { 1146 return e[r]; 1147 }, 1148 set: function (t) { 1149 return (e[r] = t), t; 1150 }, 1151 }); 1152 }), 1153 t 1154 ); 1155 } catch (e) { 1156 u([e], r); 1157 } 1158 for (var n in e) a.call(e, n) && (t[n] = e[n]); 1159 })(t, nrWrapper, e), 1160 nrWrapper); 1161 function nrWrapper() { 1162 var o, a, d, l; 1163 try { 1164 (a = this), 1165 (o = [...arguments]), 1166 (d = "function" == typeof n ? n(o, a) : n || {}); 1167 } catch (t) { 1168 u([t, "", [o, a, s], d], e); 1169 } 1170 i(r + "start", [o, a, s], d, c); 1171 try { 1172 return (l = t.apply(a, o)); 1173 } catch (e) { 1174 throw (i(r + "err", [o, a, e], d, c), e); 1175 } finally { 1176 i(r + "end", [o, a, l], d, c); 1177 } 1178 } 1179 } 1180 function i(r, n, i, o) { 1181 if (!s || t) { 1182 var a = s; 1183 s = !0; 1184 try { 1185 e.emit(r, n, i, t, o); 1186 } catch (t) { 1187 u([t, r, n, i], e); 1188 } 1189 s = a; 1190 } 1191 } 1192 } 1193 function u(e, t) { 1194 t || (t = n.ee); 1195 try { 1196 t.emit("internal-error", e); 1197 } catch (e) {} 1198 } 1199 function d(e) { 1200 return !(e && "function" == typeof e && e.apply && !e[o]); 1201 } 1202 }, 1203 9414: (e, t, r) => { 1204 "use strict"; 1205 r.d(t, { J: () => c }); 1206 var n = r(7836), 1207 i = r(2646), 1208 o = r(944), 1209 a = r(3434); 1210 const s = new Map(); 1211 function c(e, t, r, c) { 1212 if ( 1213 "object" != typeof t || 1214 !t || 1215 "string" != typeof r || 1216 !r || 1217 "function" != typeof t[r] 1218 ) 1219 return (0, o.R)(29); 1220 const u = (function (e) { 1221 return (e || n.ee).get("logger"); 1222 })(e), 1223 d = (0, a.YM)(u), 1224 l = new i.y(n.P); 1225 (l.level = c.level), (l.customAttributes = c.customAttributes); 1226 const f = t[r]?.[a.Jt] || t[r]; 1227 return ( 1228 s.set(f, l), d.inPlace(t, [r], "wrap-logger-", () => s.get(f)), u 1229 ); 1230 } 1231 }, 1232 9300: (e, t, r) => { 1233 "use strict"; 1234 r.d(t, { T: () => n }); 1235 const n = r(860).K7.ajax; 1236 }, 1237 3333: (e, t, r) => { 1238 "use strict"; 1239 r.d(t, { 1240 $v: () => u, 1241 TZ: () => n, 1242 Zp: () => i, 1243 kd: () => c, 1244 mq: () => s, 1245 nf: () => a, 1246 qN: () => o, 1247 }); 1248 const n = r(860).K7.genericEvents, 1249 i = ["auxclick", "click", "copy", "keydown", "paste", "scrollend"], 1250 o = ["focus", "blur"], 1251 a = 4, 1252 s = 1e3, 1253 c = ["PageAction", "UserAction", "BrowserPerformance"], 1254 u = { 1255 MARKS: "experimental.marks", 1256 MEASURES: "experimental.measures", 1257 RESOURCES: "experimental.resources", 1258 }; 1259 }, 1260 6774: (e, t, r) => { 1261 "use strict"; 1262 r.d(t, { T: () => n }); 1263 const n = r(860).K7.jserrors; 1264 }, 1265 993: (e, t, r) => { 1266 "use strict"; 1267 r.d(t, { A$: () => o, ET: () => a, TZ: () => s, p_: () => i }); 1268 var n = r(860); 1269 const i = { 1270 ERROR: "ERROR", 1271 WARN: "WARN", 1272 INFO: "INFO", 1273 DEBUG: "DEBUG", 1274 TRACE: "TRACE", 1275 }, 1276 o = { OFF: 0, ERROR: 1, WARN: 2, INFO: 3, DEBUG: 4, TRACE: 5 }, 1277 a = "log", 1278 s = n.K7.logging; 1279 }, 1280 3785: (e, t, r) => { 1281 "use strict"; 1282 r.d(t, { R: () => c, b: () => u }); 1283 var n = r(9908), 1284 i = r(1863), 1285 o = r(860), 1286 a = r(8154), 1287 s = r(993); 1288 function c(e, t, r = {}, c = s.p_.INFO) { 1289 (0, n.p)( 1290 a.xV, 1291 ["API/logging/".concat(c.toLowerCase(), "/called")], 1292 void 0, 1293 o.K7.metrics, 1294 e 1295 ), 1296 (0, n.p)(s.ET, [(0, i.t)(), t, r, c], void 0, o.K7.logging, e); 1297 } 1298 function u(e) { 1299 return ( 1300 "string" == typeof e && 1301 Object.values(s.p_).some((t) => t === e.toUpperCase().trim()) 1302 ); 1303 } 1304 }, 1305 8154: (e, t, r) => { 1306 "use strict"; 1307 r.d(t, { 1308 z_: () => o, 1309 XG: () => s, 1310 TZ: () => n, 1311 rs: () => i, 1312 xV: () => a, 1313 }); 1314 r(6154), r(9566), r(384); 1315 const n = r(860).K7.metrics, 1316 i = "sm", 1317 o = "cm", 1318 a = "storeSupportabilityMetrics", 1319 s = "storeEventMetrics"; 1320 }, 1321 6630: (e, t, r) => { 1322 "use strict"; 1323 r.d(t, { T: () => n }); 1324 const n = r(860).K7.pageViewEvent; 1325 }, 1326 782: (e, t, r) => { 1327 "use strict"; 1328 r.d(t, { T: () => n }); 1329 const n = r(860).K7.pageViewTiming; 1330 }, 1331 6344: (e, t, r) => { 1332 "use strict"; 1333 r.d(t, { 1334 BB: () => d, 1335 G4: () => o, 1336 Qb: () => l, 1337 TZ: () => i, 1338 Ug: () => a, 1339 _s: () => s, 1340 bc: () => u, 1341 yP: () => c, 1342 }); 1343 var n = r(2614); 1344 const i = r(860).K7.sessionReplay, 1345 o = { 1346 RECORD: "recordReplay", 1347 PAUSE: "pauseReplay", 1348 REPLAY_RUNNING: "replayRunning", 1349 ERROR_DURING_REPLAY: "errorDuringReplay", 1350 }, 1351 a = 0.12, 1352 s = { 1353 DomContentLoaded: 0, 1354 Load: 1, 1355 FullSnapshot: 2, 1356 IncrementalSnapshot: 3, 1357 Meta: 4, 1358 Custom: 5, 1359 },
1360 c = { [n.g.ERROR]: 15e3, [n.g.FULL]: 3e5, [n.g.OFF]: 0 }, 1361 u = { 1362 RESET: { message: "Session was reset", sm: "Reset" }, 1363 IMPORT: { message: "Recorder failed to import", sm: "Import" }, 1364 TOO_MANY: { message: "429: Too Many Requests", sm: "Too-Many" }, 1365 TOO_BIG: { message: "Payload was too large", sm: "Too-Big" }, 1366 CROSS_TAB: { 1367 message: "Session Entity was set to OFF on another tab", 1368 sm: "Cross-Tab", 1369 }, 1370 ENTITLEMENTS: { 1371 message: 1372 "Session Replay is not allowed and will not be started", 1373 sm: "Entitlement", 1374 }, 1375 }, 1376 d = 5e3, 1377 l = { API: "api" }; 1378 }, 1379 5270: (e, t, r) => { 1380 "use strict"; 1381 r.d(t, { Aw: () => c, CT: () => u, SR: () => s }); 1382 var n = r(384), 1383 i = r(9417), 1384 o = r(7767), 1385 a = r(6154); 1386 function s(e) { 1387 return ( 1388 !!(0, n.dV)().o.MO && 1389 (0, o.V)(e) && 1390 !0 === (0, i.gD)(e, "session_trace.enabled") 1391 ); 1392 } 1393 function c(e) { 1394 return !0 === (0, i.gD)(e, "session_replay.preload") && s(e); 1395 } 1396 function u(e, t) { 1397 const r = t.correctAbsoluteTimestamp(e); 1398 return { 1399 originalTimestamp: e, 1400 correctedTimestamp: r, 1401 timestampDiff: e - r, 1402 originTime: a.WN, 1403 correctedOriginTime: t.correctedOriginTime, 1404 originTimeDiff: Math.floor(a.WN - t.correctedOriginTime), 1405 }; 1406 } 1407 }, 1408 3738: (e, t, r) => { 1409 "use strict"; 1410 r.d(t, { 1411 He: () => i, 1412 Kp: () => s, 1413 Lc: () => u, 1414 Rz: () => d, 1415 TZ: () => n, 1416 bD: () => o, 1417 d3: () => a, 1418 jx: () => l, 1419 uP: () => c, 1420 }); 1421 const n = r(860).K7.sessionTrace, 1422 i = "bstResource", 1423 o = "resource", 1424 a = "-start", 1425 s = "-end", 1426 c = "fn" + a, 1427 u = "fn" + s, 1428 d = "pushState", 1429 l = 1e3; 1430 }, 1431 3962: (e, t, r) => { 1432 "use strict"; 1433 r.d(t, { 1434 AM: () => o, 1435 O2: () => c, 1436 Qu: () => u, 1437 TZ: () => s, 1438 ih: () => d, 1439 pP: () => a, 1440 tC: () => i, 1441 }); 1442 var n = r(860); 1443 const i = ["click", "keydown", "submit", "popstate"], 1444 o = "api", 1445 a = "initialPageLoad", 1446 s = n.K7.softNav, 1447 c = { INITIAL_PAGE_LOAD: "", ROUTE_CHANGE: 1, UNSPECIFIED: 2 }, 1448 u = { INTERACTION: 1, AJAX: 2, CUSTOM_END: 3, CUSTOM_TRACER: 4 }, 1449 d = { IP: "in progress", FIN: "finished", CAN: "cancelled" }; 1450 }, 1451 7378: (e, t, r) => { 1452 "use strict"; 1453 r.d(t, { 1454 $p: () => x, 1455 BR: () => b, 1456 Kp: () => R, 1457 L3: () => y, 1458 Lc: () => c, 1459 NC: () => o, 1460 SG: () => d, 1461 TZ: () => i, 1462 U6: () => p, 1463 UT: () => m, 1464 d3: () => w, 1465 dT: () => f, 1466 e5: () => A, 1467 gx: () => v, 1468 l9: () => l, 1469 oW: () => h, 1470 op: () => g, 1471 rw: () => u, 1472 tH: () => T, 1473 uP: () => s, 1474 wW: () => E, 1475 xq: () => a, 1476 }); 1477 var n = r(384); 1478 const i = r(860).K7.spa, 1479 o = ["click", "submit", "keypress", "keydown", "keyup", "change"], 1480 a = 999, 1481 s = "fn-start", 1482 c = "fn-end", 1483 u = "cb-start", 1484 d = "api-ixn-", 1485 l = "remaining", 1486 f = "interaction", 1487 h = "spaNode", 1488 p = "jsonpNode", 1489 g = "fetch-start", 1490 m = "fetch-done", 1491 v = "fetch-body-", 1492 b = "jsonp-end", 1493 y = (0, n.dV)().o.ST, 1494 w = "-start", 1495 R = "-end", 1496 x = "-body", 1497 E = "cb" + R, 1498 A = "jsTime", 1499 T = "fetch"; 1500 }, 1501 4234: (e, t, r) => { 1502 "use strict"; 1503 r.d(t, { W: () => o }); 1504 var n = r(7836), 1505 i = r(1687); 1506 class o { 1507 constructor(e, t) { 1508 (this.agentIdentifier = e), 1509 (this.ee = n.ee.get(e)), 1510 (this.featureName = t), 1511 (this.blocked = !1); 1512 } 1513 deregisterDrain() { 1514 (0, i.x3)(this.agentIdentifier, this.featureName); 1515 } 1516 } 1517 }, 1518 7767: (e, t, r) => { 1519 "use strict"; 1520 r.d(t, { V: () => o }); 1521 var n = r(9417), 1522 i = r(6154); 1523 const o = (e) => 1524 i.RI && !0 === (0, n.gD)(e, "privacy.cookies_enabled"); 1525 }, 1526 8969: (e, t, r) => { 1527 "use strict"; 1528 r.d(t, { j: () => O }); 1529 var n = r(860), 1530 i = r(2555), 1531 o = r(3371), 1532 a = r(9908), 1533 s = r(7836), 1534 c = r(1687), 1535 u = r(5289), 1536 d = r(6154), 1537 l = r(944), 1538 f = r(8154), 1539 h = r(384), 1540 p = r(6344); 1541 const g = [ 1542 "setErrorHandler", 1543 "finished", 1544 "addToTrace", 1545 "addRelease",
1546 "recordCustomEvent", 1547 "addPageAction", 1548 "setCurrentRouteName", 1549 "setPageViewName", 1550 "setCustomAttribute", 1551 "interaction", 1552 "noticeError", 1553 "setUserId", 1554 "setApplicationVersion", 1555 "start", 1556 p.G4.RECORD, 1557 p.G4.PAUSE, 1558 "log", 1559 "wrapLogger", 1560 ], 1561 m = ["setErrorHandler", "finished", "addToTrace", "addRelease"]; 1562 var v = r(1863), 1563 b = r(2614), 1564 y = r(993), 1565 w = r(3785), 1566 R = r(9414); 1567 function x() { 1568 const e = (0, h.pV)(); 1569 g.forEach((t) => { 1570 e[t] = (...r) => 1571 (function (t, ...r) { 1572 let n = []; 1573 return ( 1574 Object.values(e.initializedAgents).forEach((e) => { 1575 e && e.api 1576 ? e.exposed && e.api[t] && n.push(e.api[t](...r)) 1577 : (0, l.R)(38, t); 1578 }), 1579 n.length > 1 ? n : n[0] 1580 ); 1581 })(t, ...r); 1582 }); 1583 } 1584 const E = {}; 1585 var A = r(9417), 1586 T = r(5603), 1587 N = r(5284); 1588 const S = (e) => { 1589 const t = e.startsWith("http"); 1590 (e += "/"), (r.p = t ? e : "https://" + e); 1591 }; 1592 let _ = !1; 1593 function O(e, t = {}, g, O) { 1594 let { 1595 init: I, 1596 info: P, 1597 loader_config: j, 1598 runtime: C = {}, 1599 exposed: k = !0, 1600 } = t; 1601 C.loaderType = g; 1602 const L = (0, h.pV)(); 1603 P || ((I = L.init), (P = L.info), (j = L.loader_config)), 1604 (0, A.xN)(e.agentIdentifier, I || {}), 1605 (0, T.a)(e.agentIdentifier, j || {}), 1606 (P.jsAttributes ??= {}), 1607 d.bv && (P.jsAttributes.isWorker = !0), 1608 (0, i.x1)(e.agentIdentifier, P); 1609 const H = (0, A.D0)(e.agentIdentifier), 1610 M = [P.beacon, P.errorBeacon]; 1611 _ || 1612 (H.proxy.assets && (S(H.proxy.assets), M.push(H.proxy.assets)), 1613 H.proxy.beacon && M.push(H.proxy.beacon), 1614 x(), 1615 (0, h.US)("activatedFeatures", N.B), 1616 (e.runSoftNavOverSpa &&= 1617 !0 === H.soft_navigations.enabled && 1618 H.feature_flags.includes("soft_nav"))), 1619 (C.denyList = [ 1620 ...(H.ajax.deny_list || []), 1621 ...(H.ajax.block_internal ? M : []), 1622 ]), 1623 (C.ptid = e.agentIdentifier), 1624 (0, o.V)(e.agentIdentifier, C), 1625 (e.ee = s.ee.get(e.agentIdentifier)), 1626 void 0 === e.api && 1627 (e.api = (function (e, t, h = !1) { 1628 t || (0, c.Ak)(e, "api"); 1629 const g = {}; 1630 var x = s.ee.get(e), 1631 A = x.get("tracer"); 1632 (E[e] = b.g.OFF), 1633 x.on(p.G4.REPLAY_RUNNING, (t) => { 1634 E[e] = t; 1635 }); 1636 var T = "api-", 1637 N = T + "ixn-"; 1638 function S(t, r, n, o) { 1639 const a = (0, i.Vp)(e); 1640 return ( 1641 null === r 1642 ? delete a.jsAttributes[t] 1643 : (0, i.x1)(e, { 1644 ...a, 1645 jsAttributes: { ...a.jsAttributes, [t]: r }, 1646 }), 1647 I(T, n, !0, o || null === r ? "session" : void 0)(t, r) 1648 ); 1649 } 1650 function _() {} 1651 (g.log = function ( 1652 e, 1653 { customAttributes: t = {}, level: r = y.p_.INFO } = {} 1654 ) { 1655 (0, a.p)(f.xV, ["API/log/called"], void 0, n.K7.metrics, x), 1656 (0, w.R)(x, e, t, r); 1657 }), 1658 (g.wrapLogger = ( 1659 e, 1660 t, 1661 { customAttributes: r = {}, level: i = y.p_.INFO } = {} 1662 ) => { 1663 (0, a.p)( 1664 f.xV, 1665 ["API/wrapLogger/called"], 1666 void 0, 1667 n.K7.metrics, 1668 x 1669 ), 1670 (0, R.J)(x, e, t, { customAttributes: r, level: i }); 1671 }), 1672 m.forEach((e) => { 1673 g[e] = I(T, e, !0, "api"); 1674 }), 1675 (g.addPageAction = I( 1676 T, 1677 "addPageAction", 1678 !0, 1679 n.K7.genericEvents 1680 )),
1681 (g.recordCustomEvent = I( 1682 T, 1683 "recordCustomEvent", 1684 !0, 1685 n.K7.genericEvents 1686 )), 1687 (g.setPageViewName = function (t, r) { 1688 if ("string" == typeof t) 1689 return ( 1690 "/" !== t.charAt(0) && (t = "/" + t), 1691 ((0, o.f)(e).customTransaction = 1692 (r || "http://custom.transaction") + t), 1693 I(T, "setPageViewName", !0)() 1694 ); 1695 }), 1696 (g.setCustomAttribute = function (e, t, r = !1) { 1697 if ("string" == typeof e) { 1698 if ( 1699 ["string", "number", "boolean"].includes(typeof t) || 1700 null === t 1701 ) 1702 return S(e, t, "setCustomAttribute", r); 1703 (0, l.R)(40, typeof t); 1704 } else (0, l.R)(39, typeof e); 1705 }), 1706 (g.setUserId = function (e) { 1707 if ("string" == typeof e || null === e) 1708 return S("enduser.id", e, "setUserId", !0); 1709 (0, l.R)(41, typeof e); 1710 }), 1711 (g.setApplicationVersion = function (e) { 1712 if ("string" == typeof e || null === e) 1713 return S( 1714 "application.version", 1715 e, 1716 "setApplicationVersion", 1717 !1 1718 ); 1719 (0, l.R)(42, typeof e); 1720 }), 1721 (g.start = () => { 1722 try { 1723 (0, a.p)( 1724 f.xV, 1725 ["API/start/called"], 1726 void 0, 1727 n.K7.metrics, 1728 x 1729 ), 1730 x.emit("manual-start-all"); 1731 } catch (e) { 1732 (0, l.R)(23, e); 1733 } 1734 }), 1735 (g[p.G4.RECORD] = function () { 1736 (0, a.p)( 1737 f.xV, 1738 ["API/recordReplay/called"], 1739 void 0, 1740 n.K7.metrics, 1741 x 1742 ), 1743 (0, a.p)( 1744 p.G4.RECORD, 1745 [], 1746 void 0, 1747 n.K7.sessionReplay, 1748 x 1749 ); 1750 }), 1751 (g[p.G4.PAUSE] = function () { 1752 (0, a.p)( 1753 f.xV, 1754 ["API/pauseReplay/called"], 1755 void 0, 1756 n.K7.metrics, 1757 x 1758 ), 1759 (0, a.p)(p.G4.PAUSE, [], void 0, n.K7.sessionReplay, x); 1760 }), 1761 (g.interaction = function (e) { 1762 return new _().get("object" == typeof e ? e : {}); 1763 }); 1764 const O = (_.prototype = { 1765 createTracer: function (e, t) { 1766 var r = {}, 1767 i = this, 1768 o = "function" == typeof t; 1769 return ( 1770 (0, a.p)( 1771 f.xV, 1772 ["API/createTracer/called"], 1773 void 0, 1774 n.K7.metrics, 1775 x 1776 ), 1777 h || 1778 (0, a.p)( 1779 N + "tracer", 1780 [(0, v.t)(), e, r], 1781 i, 1782 n.K7.spa, 1783 x 1784 ), 1785 function () { 1786 if ( 1787 (A.emit( 1788 (o ? "" : "no-") + "fn-start", 1789 [(0, v.t)(), i, o], 1790 r 1791 ), 1792 o) 1793 ) 1794 try { 1795 return t.apply(this, arguments); 1796 } catch (e) { 1797 const t = "string" == typeof e ? new Error(e) : e; 1798 throw ( 1799 (A.emit("fn-err", [arguments, this, t], r), t) 1800 ); 1801 } finally { 1802 A.emit("fn-end", [(0, v.t)()], r); 1803 } 1804 } 1805 ); 1806 }, 1807 }); 1808 function I(e, t, r, i) { 1809 return function () { 1810 return ( 1811 (0, a.p)( 1812 f.xV, 1813 ["API/" + t + "/called"], 1814 void 0, 1815 n.K7.metrics, 1816 x 1817 ), 1818 i && 1819 (0, a.p)( 1820 e + t, 1821 [r ? (0, v.t)() : performance.now(), ...arguments], 1822 r ? null : this, 1823 i, 1824 x 1825 ), 1826 r ? void 0 : this 1827 ); 1828 }; 1829 } 1830 function P() { 1831 r.e(478) 1832 .then(r.bind(r, 8778)) 1833 .then(({ setAPI: t }) => { 1834 t(e), (0, c.Ze)(e, "api"); 1835 }) 1836 .catch((e) => { 1837 (0, l.R)(27, e), x.abort(); 1838 }); 1839 } 1840 return ( 1841 [ 1842 "actionText", 1843 "setName", 1844 "setAttribute", 1845 "save", 1846 "ignore", 1847 "onEnd", 1848 "getContext", 1849 "end", 1850 "get", 1851 ].forEach((e) => { 1852 O[e] = I(N, e, void 0, h ? n.K7.softNav : n.K7.spa); 1853 }), 1854 (g.setCurrentRouteName = h 1855 ? I(N, "routeName", void 0, n.K7.softNav) 1856 : I(T, "routeName", !0, n.K7.spa)), 1857 (g.noticeError = function (t, r) { 1858 "string" == typeof t && (t = new Error(t)), 1859 (0, a.p)( 1860 f.xV, 1861 ["API/noticeError/called"], 1862 void 0, 1863 n.K7.metrics, 1864 x 1865 ), 1866 (0, a.p)( 1867 "err", 1868 [t, (0, v.t)(), !1, r, !!E[e]], 1869 void 0, 1870 n.K7.jserrors, 1871 x 1872 ); 1873 }), 1874 d.RI ? (0, u.GG)(() => P(), !0) : P(), 1875 g 1876 ); 1877 })(e.agentIdentifier, O, e.runSoftNavOverSpa)), 1878 void 0 === e.exposed && (e.exposed = k), 1879 (_ = !0); 1880 } 1881 }, 1882 8374: (e, t, r) => { 1883 r.nc = (() => { 1884 try { 1885 return document?.currentScript?.nonce; 1886 } catch (e) {} 1887 return ""; 1888 })(); 1889 }, 1890 860: (e, t, r) => { 1891 "use strict"; 1892 r.d(t, { 1893 $J: () => u, 1894 K7: () => s, 1895 P3: () => c, 1896 XX: () => i, 1897 qY: () => n, 1898 v4: () => a, 1899 }); 1900 const n = "events", 1901 i = "jserrors", 1902 o = "browser/blobs", 1903 a = "rum", 1904 s = { 1905 ajax: "ajax", 1906 genericEvents: "generic_events",
1907 jserrors: i, 1908 logging: "logging", 1909 metrics: "metrics", 1910 pageAction: "page_action", 1911 pageViewEvent: "page_view_event", 1912 pageViewTiming: "page_view_timing", 1913 sessionReplay: "session_replay", 1914 sessionTrace: "session_trace", 1915 softNav: "soft_navigations", 1916 spa: "spa", 1917 }, 1918 c = { 1919 [s.pageViewEvent]: 1, 1920 [s.pageViewTiming]: 2, 1921 [s.metrics]: 3, 1922 [s.jserrors]: 4, 1923 [s.spa]: 5, 1924 [s.ajax]: 6, 1925 [s.sessionTrace]: 7, 1926 [s.softNav]: 8, 1927 [s.sessionReplay]: 9, 1928 [s.logging]: 10, 1929 [s.genericEvents]: 11, 1930 }, 1931 u = { 1932 [s.pageViewEvent]: a, 1933 [s.pageViewTiming]: n, 1934 [s.ajax]: n, 1935 [s.spa]: n, 1936 [s.softNav]: n, 1937 [s.metrics]: i, 1938 [s.jserrors]: i, 1939 [s.sessionTrace]: o, 1940 [s.sessionReplay]: o, 1941 [s.logging]: "browser/logs", 1942 [s.genericEvents]: "ins", 1943 }; 1944 }, 1945 }, 1946 n = {}; 1947 function i(e) { 1948 var t = n[e]; 1949 if (void 0 !== t) return t.exports; 1950 var o = (n[e] = { exports: {} }); 1951 return r[e](o, o.exports, i), o.exports; 1952 } 1953 (i.m = r), 1954 (i.d = (e, t) => { 1955 for (var r in t) 1956 i.o(t, r) && 1957 !i.o(e, r) && 1958 Object.defineProperty(e, r, { enumerable: !0, get: t[r] }); 1959 }), 1960 (i.f = {}), 1961 (i.e = (e) => 1962 Promise.all(Object.keys(i.f).reduce((t, r) => (i.f[r](e, t), t), []))), 1963 (i.u = (e) => 1964 ({ 212: "nr-spa-compressor", 249: "nr-spa-recorder", 478: "nr-spa" })[ 1965 e 1966 ] + "-1.284.1.min.js"), 1967 (i.o = (e, t) => Object.prototype.hasOwnProperty.call(e, t)), 1968 (e = {}), 1969 (t = "NRBA-1.284.1.PROD:"), 1970 (i.l = (r, n, o, a) => { 1971 if (e[r]) e[r].push(n); 1972 else { 1973 var s, c; 1974 if (void 0 !== o) 1975 for ( 1976 var u = document.getElementsByTagName("script"), d = 0; 1977 d < u.length; 1978 d++ 1979 ) { 1980 var l = u[d]; 1981 if ( 1982 l.getAttribute("src") == r || 1983 l.getAttribute("data-webpack") == t + o 1984 ) { 1985 s = l; 1986 break; 1987 } 1988 } 1989 if (!s) { 1990 c = !0; 1991 var f = { 1992 478: "sha512-VWXyHiJymB8Fhqc5jWlZ1CWrtlNWMPhm+PNnjWX1CfW9gQedReF5MFo3k8skdB5TlR837ofwtBeSzIE69RbCwQ==", 1993 249: "sha512-e1fXm1ZkMilKv1yUjmoJw7TU5bCKK/7Xaa/Ta9opkyurmkWtIKPd4CMfU2dRHGr9+brXynQnY3wwY838aQPhVw==", 1994 212: "sha512-zX52gEnN9DOzLrxU+zqxDl8R/t9rkdZavljSVjdAYS3BNoZH304PhVRnFEdwyYNCN9QcuGDBMMJ8U6XYtxAL0g==", 1995 }; 1996 ((s = document.createElement("script")).charset = "utf-8"), 1997 (s.timeout = 120), 1998 i.nc && s.setAttribute("nonce", i.nc), 1999 s.setAttribute("data-webpack", t + o), 2000 (s.src = r), 2001 0 !== s.src.indexOf(window.location.origin + "/") && 2002 (s.crossOrigin = "anonymous"), 2003 f[a] && (s.integrity = f[a]); 2004 } 2005 e[r] = [n]; 2006 var h = (t, n) => { 2007 (s.onerror = s.onload = null), clearTimeout(p); 2008 var i = e[r]; 2009 if ( 2010 (delete e[r], 2011 s.parentNode && s.parentNode.removeChild(s), 2012 i && i.forEach((e) => e(n)), 2013 t) 2014 ) 2015 return t(n); 2016 }, 2017 p = setTimeout( 2018 h.bind(null, void 0, { type: "timeout", target: s }), 2019 12e4 2020 ); 2021 (s.onerror = h.bind(null, s.onerror)), 2022 (s.onload = h.bind(null, s.onload)), 2023 c && document.head.appendChild(s); 2024 } 2025 }), 2026 (i.r = (e) => { 2027 "undefined" != typeof Symbol && 2028 Symbol.toStringTag && 2029 Object.defineProperty(e, Symbol.toStringTag, { value: "Module" }), 2030 Object.defineProperty(e, "__esModule", { value: !0 }); 2031 }), 2032 (i.p = "https://js-agent.newrelic.com/"), 2033 (() => { 2034 var e = { 38: 0, 788: 0 }; 2035 i.f.j = (t, r) => { 2036 var n = i.o(e, t) ? e[t] : void 0; 2037 if (0 !== n)
2038 if (n) r.push(n[2]); 2039 else { 2040 var o = new Promise((r, i) => (n = e[t] = [r, i])); 2041 r.push((n[2] = o)); 2042 var a = i.p + i.u(t), 2043 s = new Error(); 2044 i.l( 2045 a, 2046 (r) => { 2047 if (i.o(e, t) && (0 !== (n = e[t]) && (e[t] = void 0), n)) { 2048 var o = r && ("load" === r.type ? "missing" : r.type), 2049 a = r && r.target && r.target.src; 2050 (s.message = 2051 "Loading chunk " + 2052 t + 2053 " failed.\n(" + 2054 o + 2055 ": " + 2056 a + 2057 ")"), 2058 (s.name = "ChunkLoadError"), 2059 (s.type = o), 2060 (s.request = a), 2061 n[1](s); 2062 } 2063 }, 2064 "chunk-" + t, 2065 t 2066 ); 2067 } 2068 }; 2069 var t = (t, r) => { 2070 var n, 2071 o, 2072 [a, s, c] = r, 2073 u = 0; 2074 if (a.some((t) => 0 !== e[t])) { 2075 for (n in s) i.o(s, n) && (i.m[n] = s[n]); 2076 if (c) c(i); 2077 } 2078 for (t && t(r); u < a.length; u++) 2079 (o = a[u]), i.o(e, o) && e[o] && e[o][0](), (e[o] = 0); 2080 }, 2081 r = (self["webpackChunk:NRBA-1.284.1.PROD"] = 2082 self["webpackChunk:NRBA-1.284.1.PROD"] || []); 2083 r.forEach(t.bind(null, 0)), (r.push = t.bind(null, r.push.bind(r))); 2084 })(), 2085 (() => { 2086 "use strict"; 2087 i(8374); 2088 var e = i(944), 2089 t = i(6344), 2090 r = i(9566); 2091 class n { 2092 agentIdentifier; 2093 constructor() { 2094 this.agentIdentifier = (0, r.LA)(16); 2095 } 2096 #e(t, ...r) { 2097 if ("function" == typeof this.api?.[t]) return this.api[t](...r); 2098 (0, e.R)(35, t); 2099 } 2100 addPageAction(e, t) { 2101 return this.#e("addPageAction", e, t); 2102 } 2103 recordCustomEvent(e, t) { 2104 return this.#e("recordCustomEvent", e, t); 2105 } 2106 setPageViewName(e, t) { 2107 return this.#e("setPageViewName", e, t); 2108 } 2109 setCustomAttribute(e, t, r) { 2110 return this.#e("setCustomAttribute", e, t, r); 2111 } 2112 noticeError(e, t) { 2113 return this.#e("noticeError", e, t); 2114 } 2115 setUserId(e) { 2116 return this.#e("setUserId", e); 2117 } 2118 setApplicationVersion(e) { 2119 return this.#e("setApplicationVersion", e); 2120 } 2121 setErrorHandler(e) { 2122 return this.#e("setErrorHandler", e); 2123 } 2124 addRelease(e, t) { 2125 return this.#e("addRelease", e, t); 2126 } 2127 log(e, t) { 2128 return this.#e("log", e, t); 2129 } 2130 } 2131 class o extends n { 2132 #e(t, ...r) { 2133 if ("function" == typeof this.api?.[t]) return this.api[t](...r); 2134 (0, e.R)(35, t); 2135 } 2136 start() { 2137 return this.#e("start"); 2138 } 2139 finished(e) { 2140 return this.#e("finished", e); 2141 } 2142 recordReplay() { 2143 return this.#e(t.G4.RECORD); 2144 } 2145 pauseReplay() { 2146 return this.#e(t.G4.PAUSE); 2147 } 2148 addToTrace(e) { 2149 return this.#e("addToTrace", e); 2150 } 2151 setCurrentRouteName(e) { 2152 return this.#e("setCurrentRouteName", e); 2153 } 2154 interaction() { 2155 return this.#e("interaction"); 2156 } 2157 wrapLogger(e, t, r) { 2158 return this.#e("wrapLogger", e, t, r); 2159 } 2160 } 2161 var a = i(860), 2162 s = i(9417); 2163 const c = Object.values(a.K7); 2164 function u(e) { 2165 const t = {}; 2166 return ( 2167 c.forEach((r) => { 2168 t[r] = (function (e, t) { 2169 return !0 === (0, s.gD)(t, "".concat(e, ".enabled")); 2170 })(r, e); 2171 }), 2172 t 2173 ); 2174 } 2175 var d = i(8969); 2176 var l = i(1687), 2177 f = i(4234), 2178 h = i(5289), 2179 p = i(6154), 2180 g = i(5270), 2181 m = i(7767), 2182 v = i(6389); 2183 class b extends f.W { 2184 constructor(e, t, r = !0) { 2185 super(e.agentIdentifier, t), 2186 (this.auto = r), 2187 (this.abortHandler = void 0), 2188 (this.featAggregate = void 0), 2189 (this.onAggregateImported = void 0), 2190 !1 === e.init[this.featureName].autoStart && (this.auto = !1), 2191 this.auto 2192 ? (0, l.Ak)(e.agentIdentifier, t) 2193 : this.ee.on( 2194 "manual-start-all", 2195 (0, v.J)(() => { 2196 (0, l.Ak)(e.agentIdentifier, this.featureName), 2197 (this.auto = !0), 2198 this.importAggregator(e); 2199 }) 2200 ); 2201 } 2202 importAggregator(t, r = {}) { 2203 if (this.featAggregate || !this.auto) return; 2204 let n; 2205 this.onAggregateImported = new Promise((e) => { 2206 n = e; 2207 }); 2208 const o = async () => { 2209 let o; 2210 try { 2211 if ((0, m.V)(this.agentIdentifier)) { 2212 const { setupAgentSession: e } = await i 2213 .e(478) 2214 .then(i.bind(i, 6526)); 2215 o = e(t); 2216 } 2217 } catch (t) { 2218 (0, e.R)(20, t), 2219 this.ee.emit("internal-error", [t]), 2220 this.featureName === a.K7.sessionReplay && 2221 this.abortHandler?.(); 2222 } 2223 try { 2224 if (!this.#t(this.featureName, o)) 2225 return ( 2226 (0, l.Ze)(this.agentIdentifier, this.featureName), 2227 void n(!1) 2228 ); 2229 const { lazyFeatureLoader: e } = await i 2230 .e(478) 2231 .then(i.bind(i, 6103)), 2232 { Aggregate: a } = await e(this.featureName, "aggregate"); 2233 (this.featAggregate = new a(t, r)), 2234 t.runtime.harvester.initializedAggregates.push( 2235 this.featAggregate 2236 ), 2237 n(!0); 2238 } catch (t) { 2239 (0, e.R)(34, t), 2240 this.abortHandler?.(), 2241 (0, l.Ze)(this.agentIdentifier, this.featureName, !0), 2242 n(!1), 2243 this.ee && this.ee.abort(); 2244 } 2245 }; 2246 p.RI ? (0, h.GG)(() => o(), !0) : o(); 2247 } 2248 #t(e, t) { 2249 switch (e) { 2250 case a.K7.sessionReplay: 2251 return (0, g.SR)(this.agentIdentifier) && !!t; 2252 case a.K7.sessionTrace: 2253 return !!t; 2254 default: 2255 return !0; 2256 } 2257 } 2258 } 2259 var y = i(6630); 2260 class w extends b { 2261 static featureName = y.T; 2262 constructor(e, t = !0) { 2263 super(e, y.T, t), this.importAggregator(e); 2264 } 2265 } 2266 var R = i(384); 2267 var x = i(9908), 2268 E = i(2843), 2269 A = i(3878), 2270 T = i(782), 2271 N = i(1863); 2272 class S extends b { 2273 static featureName = T.T; 2274 constructor(e, t = !0) { 2275 super(e, T.T, t), 2276 p.RI && 2277 ((0, E.u)( 2278 () => 2279 (0, x.p)("docHidden", [(0, N.t)()], void 0, T.T, this.ee), 2280 !0 2281 ), 2282 (0, A.sp)("pagehide", () => 2283 (0, x.p)("winPagehide", [(0, N.t)()], void 0, T.T, this.ee) 2284 ), 2285 this.importAggregator(e)); 2286 } 2287 } 2288 var _ = i(8154); 2289 class O extends b { 2290 static featureName = _.TZ; 2291 constructor(e, t = !0) { 2292 super(e, _.TZ, t), 2293 p.RI && 2294 document.addEventListener("securitypolicyviolation", (e) => { 2295 (0, x.p)( 2296 _.xV, 2297 ["Generic/CSPViolation/Detected"], 2298 void 0, 2299 this.featureName, 2300 this.ee 2301 ); 2302 }), 2303 this.importAggregator(e); 2304 } 2305 } 2306 var I = i(6774), 2307 P = i(3304); 2308 class j { 2309 constructor(e, t, r, n, i) { 2310 (this.name = "UncaughtError"), 2311 (this.message = "string" == typeof e ? e : (0, P.A)(e)), 2312 (this.sourceURL = t), 2313 (this.line = r), 2314 (this.column = n), 2315 (this.__newrelic = i); 2316 } 2317 } 2318 function C(e) { 2319 return H(e) 2320 ? e 2321 : new j( 2322 void 0 !== e?.message ? e.message : e, 2323 e?.filename || e?.sourceURL, 2324 e?.lineno || e?.line, 2325 e?.colno || e?.col, 2326 e?.__newrelic 2327 ); 2328 } 2329 function k(e) { 2330 const t = "Unhandled Promise Rejection: "; 2331 if (!e?.reason) return; 2332 if (H(e.reason)) { 2333 try { 2334 e.reason.message.startsWith(t) || 2335 (e.reason.message = t + e.reason.message); 2336 } catch (e) {} 2337 return C(e.reason); 2338 } 2339 const r = C(e.reason); 2340 return ( 2341 (r.message || "").startsWith(t) || (r.message = t + r.message), r 2342 ); 2343 } 2344 function L(e) { 2345 if ( 2346 e.error instanceof SyntaxError && 2347 !/:\d+$/.test(e.error.stack?.trim()) 2348 ) { 2349 const t = new j( 2350 e.message, 2351 e.filename, 2352 e.lineno, 2353 e.colno, 2354 e.error.__newrelic 2355 ); 2356 return (t.name = SyntaxError.name), t; 2357 } 2358 return H(e.error) ? e.error : C(e); 2359 } 2360 function H(e) { 2361 return e instanceof Error && !!e.stack; 2362 } 2363 class M extends b { 2364 static featureName = I.T; 2365 #r = !1; 2366 constructor(e, r = !0) { 2367 super(e, I.T, r); 2368 try { 2369 this.removeOnAbort = new AbortController(); 2370 } catch (e) {} 2371 this.ee.on("internal-error", (e, t) => { 2372 this.abortHandler && 2373 (0, x.p)( 2374 "ierr", 2375 [C(e), (0, N.t)(), !0, {}, this.#r, t], 2376 void 0, 2377 this.featureName, 2378 this.ee 2379 ); 2380 }), 2381 this.ee.on(t.G4.REPLAY_RUNNING, (e) => { 2382 this.#r = e; 2383 }), 2384 p.gm.addEventListener( 2385 "unhandledrejection", 2386 (e) => { 2387 this.abortHandler && 2388 (0, x.p)( 2389 "err", 2390 [ 2391 k(e), 2392 (0, N.t)(), 2393 !1, 2394 { unhandledPromiseRejection: 1 }, 2395 this.#r, 2396 ], 2397 void 0, 2398 this.featureName, 2399 this.ee 2400 ); 2401 }, 2402 (0, A.jT)(!1, this.removeOnAbort?.signal) 2403 ), 2404 p.gm.addEventListener( 2405 "error", 2406 (e) => { 2407 this.abortHandler && 2408 (0, x.p)( 2409 "err", 2410 [L(e), (0, N.t)(), !1, {}, this.#r], 2411 void 0, 2412 this.featureName, 2413 this.ee 2414 ); 2415 }, 2416 (0, A.jT)(!1, this.removeOnAbort?.signal) 2417 ), 2418 (this.abortHandler = this.#n), 2419 this.importAggregator(e); 2420 } 2421 #n() { 2422 this.removeOnAbort?.abort(), (this.abortHandler = void 0); 2423 } 2424 } 2425 var D = i(8990); 2426 let K = 1; 2427 const U = "nr@id"; 2428 function V(e) { 2429 const t = typeof e; 2430 return !e || ("object" !== t && "function" !== t) 2431 ? -1 2432 : e === p.gm 2433 ? 0 2434 : (0, D.I)(e, U, function () { 2435 return K++; 2436 }); 2437 } 2438 function G(e) { 2439 if ("string" == typeof e && e.length) return e.length; 2440 if ("object" == typeof e) { 2441 if ( 2442 "undefined" != typeof ArrayBuffer && 2443 e instanceof ArrayBuffer && 2444 e.byteLength 2445 ) 2446 return e.byteLength; 2447 if ("undefined" != typeof Blob && e instanceof Blob && e.size) 2448 return e.size; 2449 if (!("undefined" != typeof FormData && e instanceof FormData)) 2450 try { 2451 return (0, P.A)(e).length; 2452 } catch (e) { 2453 return; 2454 } 2455 } 2456 } 2457 var F = i(8139), 2458 B = i(7836), 2459 W = i(3434); 2460 const z = {}, 2461 q = ["open", "send"]; 2462 function Z(t) { 2463 var r = t || B.ee; 2464 const n = (function (e) { 2465 return (e || B.ee).get("xhr"); 2466 })(r); 2467 if (void 0 === p.gm.XMLHttpRequest) return n; 2468 if (z[n.debugId]++) return n; 2469 (z[n.debugId] = 1), (0, F.u)(r); 2470 var i = (0, W.YM)(n), 2471 o = p.gm.XMLHttpRequest, 2472 a = p.gm.MutationObserver, 2473 s = p.gm.Promise, 2474 c = p.gm.setInterval, 2475 u = "readystatechange", 2476 d = [ 2477 "onload", 2478 "onerror", 2479 "onabort", 2480 "onloadstart", 2481 "onloadend", 2482 "onprogress", 2483 "ontimeout", 2484 ], 2485 l = [], 2486 f = (p.gm.XMLHttpRequest = function (t) { 2487 const r = new o(t), 2488 a = n.context(r); 2489 try { 2490 n.emit("new-xhr", [r], a), 2491 r.addEventListener( 2492 u, 2493 ((s = a), 2494 function () { 2495 var e = this; 2496 e.readyState > 3 && 2497 !s.resolved && 2498 ((s.resolved = !0), n.emit("xhr-resolved", [], e)), 2499 i.inPlace(e, d, "fn-", y); 2500 }), 2501 (0, A.jT)(!1) 2502 ); 2503 } catch (t) { 2504 (0, e.R)(15, t); 2505 try { 2506 n.emit("internal-error", [t]); 2507 } catch (e) {} 2508 } 2509 var s; 2510 return r; 2511 }); 2512 function h(e, t) { 2513 i.inPlace(t, ["onreadystatechange"], "fn-", y); 2514 } 2515 if ( 2516 ((function (e, t) { 2517 for (var r in e) t[r] = e[r]; 2518 })(o, f), 2519 (f.prototype = o.prototype), 2520 i.inPlace(f.prototype, q, "-xhr-", y), 2521 n.on("send-xhr-start", function (e, t) { 2522 h(e, t), 2523 (function (e) { 2524 l.push(e), 2525 a && (g ? g.then(b) : c ? c(b) : ((m = -m), (v.data = m))); 2526 })(t); 2527 }), 2528 n.on("open-xhr-start", h), 2529 a) 2530 ) { 2531 var g = s && s.resolve(); 2532 if (!c && !s) { 2533 var m = 1, 2534 v = document.createTextNode(m); 2535 new a(b).observe(v, { characterData: !0 }); 2536 } 2537 } else 2538 r.on("fn-end", function (e) { 2539 (e[0] && e[0].type === u) || b(); 2540 }); 2541 function b() { 2542 for (var e = 0; e < l.length; e++) h(0, l[e]); 2543 l.length && (l = []); 2544 } 2545 function y(e, t) { 2546 return t; 2547 } 2548 return n; 2549 } 2550 var Y = "fetch-", 2551 J = Y + "body-", 2552 X = ["arrayBuffer", "blob", "json", "text", "formData"], 2553 Q = p.gm.Request, 2554 ee = p.gm.Response, 2555
2555 te = "prototype"; 2556 const re = {}; 2557 function ne(e) { 2558 const t = (function (e) { 2559 return (e || B.ee).get("fetch"); 2560 })(e); 2561 if (!(Q && ee && p.gm.fetch)) return t; 2562 if (re[t.debugId]++) return t; 2563 function r(e, r, n) { 2564 var i = e[r]; 2565 "function" == typeof i && 2566 (e[r] = function () { 2567 var e, 2568 r = [...arguments], 2569 o = {}; 2570 t.emit(n + "before-start", [r], o), 2571 o[B.P] && o[B.P].dt && (e = o[B.P].dt); 2572 var a = i.apply(this, r); 2573 return ( 2574 t.emit(n + "start", [r, e], a), 2575 a.then( 2576 function (e) { 2577 return t.emit(n + "end", [null, e], a), e; 2578 }, 2579 function (e) { 2580 throw (t.emit(n + "end", [e], a), e); 2581 } 2582 ) 2583 ); 2584 }); 2585 } 2586 return ( 2587 (re[t.debugId] = 1), 2588 X.forEach((e) => { 2589 r(Q[te], e, J), r(ee[te], e, J); 2590 }), 2591 r(p.gm, "fetch", Y), 2592 t.on(Y + "end", function (e, r) { 2593 var n = this; 2594 if (r) { 2595 var i = r.headers.get("content-length"); 2596 null !== i && (n.rxSize = i), t.emit(Y + "done", [null, r], n); 2597 } else t.emit(Y + "done", [e], n); 2598 }), 2599 t 2600 ); 2601 } 2602 var ie = i(7485), 2603 oe = i(5603); 2604 class ae { 2605 constructor(e) { 2606 this.agentIdentifier = e; 2607 } 2608 generateTracePayload(e) { 2609 if (!this.shouldGenerateTrace(e)) return null; 2610 var t = (0, oe.o)(this.agentIdentifier); 2611 if (!t) return null; 2612 var n = (t.accountID || "").toString() || null, 2613 i = (t.agentID || "").toString() || null, 2614 o = (t.trustKey || "").toString() || null; 2615 if (!n || !i) return null; 2616 var a = (0, r.ZF)(), 2617 s = (0, r.el)(), 2618 c = Date.now(), 2619 u = { spanId: a, traceId: s, timestamp: c }; 2620 return ( 2621 (e.sameOrigin || 2622 (this.isAllowedOrigin(e) && 2623 this.useTraceContextHeadersForCors())) && 2624 ((u.traceContextParentHeader = 2625 this.generateTraceContextParentHeader(a, s)), 2626 (u.traceContextStateHeader = 2627 this.generateTraceContextStateHeader(a, c, n, i, o))), 2628 ((e.sameOrigin && !this.excludeNewrelicHeader()) || 2629 (!e.sameOrigin && 2630 this.isAllowedOrigin(e) && 2631 this.useNewrelicHeaderForCors())) && 2632 (u.newrelicHeader = this.generateTraceHeader(a, s, c, n, i, o)), 2633 u 2634 ); 2635 } 2636 generateTraceContextParentHeader(e, t) { 2637 return "00-" + t + "-" + e + "-01"; 2638 } 2639 generateTraceContextStateHeader(e, t, r, n, i) { 2640 return i + "@nr=0-1-" + r + "-" + n + "-" + e + "----" + t; 2641 } 2642 generateTraceHeader(e, t, r, n, i, o) { 2643 if (!("function" == typeof p.gm?.btoa)) return null; 2644 var a = { 2645 v: [0, 1], 2646 d: { ty: "Browser", ac: n, ap: i, id: e, tr: t, ti: r }, 2647 }; 2648 return o && n !== o && (a.d.tk = o), btoa((0, P.A)(a)); 2649 } 2650 shouldGenerateTrace(e) { 2651 return this.isDtEnabled() && this.isAllowedOrigin(e); 2652 } 2653 isAllowedOrigin(e) { 2654 var t = !1, 2655 r = {}; 2656 if ( 2657 ((0, s.gD)(this.agentIdentifier, "distributed_tracing") && 2658 (r = (0, s.D0)(this.agentIdentifier).distributed_tracing), 2659 e.sameOrigin) 2660 ) 2661 t = !0; 2662 else if (r.allowed_origins instanceof Array) 2663 for (var n = 0; n < r.allowed_origins.length; n++) { 2664 var i = (0, ie.D)(r.allowed_origins[n]); 2665 if ( 2666 e.hostname === i.hostname && 2667 e.protocol === i.protocol && 2668 e.port === i.port 2669 ) { 2670 t = !0; 2671 break; 2672 } 2673 } 2674 return t; 2675 } 2676 isDtEnabled() { 2677 var e = (0, s.gD)(this.agentIdentifier, "distributed_tracing"); 2678 return !!e && !!e.enabled; 2679 } 2680 excludeNewrelicHeader() { 2681 var e = (0, s.gD)(this.agentIdentifier, "distributed_tracing"); 2682 return !!e && !!e.exclude_newrelic_header; 2683 } 2684 useNewrelicHeaderForCors() { 2685 var e = (0, s.gD)(this.agentIdentifier, "distributed_tracing"); 2686 return !!e && !1 !== e.cors_use_newrelic_header; 2687 } 2688 useTraceContextHeadersForCors() { 2689 var e = (0, s.gD)(this.agentIdentifier, "distributed_tracing"); 2690 return !!e && !!e.cors_use_tracecontext_headers; 2691 } 2692 } 2693 var se = i(9300), 2694 ce = i(7295), 2695 ue = ["load", "error", "abort", "timeout"], 2696 de = ue.length, 2697 le = (0, R.dV)().o.REQ, 2698 fe = (0, R.dV)().o.XHR; 2699 const he = "X-NewRelic-App-Data"; 2700 class pe extends b { 2701 static featureName = se.T; 2702 constructor(e, t = !0) { 2703 super(e, se.T, t), 2704 (this.dt = new ae(e.agentIdentifier)), 2705 (this.handler = (e, t, r, n) => (0, x.p)(e, t, r, n, this.ee)); 2706 try { 2707 const e = { 2708 xmlhttprequest: "xhr", 2709 fetch: "fetch", 2710 beacon: "beacon", 2711 }; 2712 p.gm?.performance?.getEntriesByType("resource").forEach((t) => { 2713 if (t.initiatorType in e && 0 !== t.responseStatus) { 2714 const r = { status: t.responseStatus }, 2715 n = { 2716 rxSize: t.transferSize, 2717 duration: Math.floor(t.duration), 2718 cbTime: 0, 2719 }; 2720 ge(r, t.name), 2721 this.handler( 2722 "xhr", 2723 [r, n, t.startTime, t.responseEnd, e[t.initiatorType]], 2724 void 0, 2725 a.K7.ajax 2726 ); 2727 } 2728 }); 2729 } catch (e) {} 2730 ne(this.ee), 2731 Z(this.ee), 2732 (function (e, t, r, n) { 2733 function i(e) { 2734 var t = this; 2735 (t.totalCbs = 0), 2736 (t.called = 0), 2737 (t.cbTime = 0), 2738 (t.end = R), 2739 (t.ended = !1), 2740 (t.xhrGuids = {}), 2741 (t.lastSize = null),
2742 (t.loadCaptureCalled = !1), 2743 (t.params = this.params || {}), 2744 (t.metrics = this.metrics || {}), 2745 e.addEventListener( 2746 "load", 2747 function (r) { 2748 E(t, e); 2749 }, 2750 (0, A.jT)(!1) 2751 ), 2752 p.lR || 2753 e.addEventListener( 2754 "progress", 2755 function (e) { 2756 t.lastSize = e.loaded; 2757 }, 2758 (0, A.jT)(!1) 2759 ); 2760 } 2761 function o(e) { 2762 (this.params = { method: e[0] }), 2763 ge(this, e[1]), 2764 (this.metrics = {}); 2765 } 2766 function s(t, r) { 2767 e.loader_config.xpid && 2768 this.sameOrigin && 2769 r.setRequestHeader("X-NewRelic-ID", e.loader_config.xpid); 2770 var i = n.generateTracePayload(this.parsedOrigin); 2771 if (i) { 2772 var o = !1; 2773 i.newrelicHeader && 2774 (r.setRequestHeader("newrelic", i.newrelicHeader), 2775 (o = !0)), 2776 i.traceContextParentHeader && 2777 (r.setRequestHeader( 2778 "traceparent", 2779 i.traceContextParentHeader 2780 ), 2781 i.traceContextStateHeader && 2782 r.setRequestHeader( 2783 "tracestate", 2784 i.traceContextStateHeader 2785 ), 2786 (o = !0)), 2787 o && (this.dt = i); 2788 } 2789 } 2790 function c(e, r) { 2791 var n = this.metrics, 2792 i = e[0], 2793 o = this; 2794 if (n && i) { 2795 var a = G(i); 2796 a && (n.txSize = a); 2797 } 2798 (this.startTime = (0, N.t)()), 2799 (this.body = i), 2800 (this.listener = function (e) { 2801 try { 2802 "abort" !== e.type || 2803 o.loadCaptureCalled || 2804 (o.params.aborted = !0), 2805 ("load" !== e.type || 2806 (o.called === o.totalCbs && 2807 (o.onloadCalled || 2808 "function" != typeof r.onload) && 2809 "function" == typeof o.end)) && 2810 o.end(r); 2811 } catch (e) { 2812 try { 2813 t.emit("internal-error", [e]); 2814 } catch (e) {} 2815 } 2816 }); 2817 for (var s = 0; s < de; s++) 2818 r.addEventListener(ue[s], this.listener, (0, A.jT)(!1)); 2819 } 2820 function u(e, t, r) { 2821 (this.cbTime += e), 2822 t ? (this.onloadCalled = !0) : (this.called += 1), 2823 this.called !== this.totalCbs || 2824 (!this.onloadCalled && "function" == typeof r.onload) || 2825 "function" != typeof this.end || 2826 this.end(r); 2827 } 2828 function d(e, t) { 2829 var r = "" + V(e) + !!t; 2830 this.xhrGuids && 2831 !this.xhrGuids[r] && 2832 ((this.xhrGuids[r] = !0), (this.totalCbs += 1)); 2833 } 2834 function l(e, t) { 2835 var r = "" + V(e) + !!t; 2836 this.xhrGuids && 2837 this.xhrGuids[r] && 2838 (delete this.xhrGuids[r], (this.totalCbs -= 1)); 2839 } 2840 function f() { 2841 this.endTime = (0, N.t)(); 2842 } 2843 function h(e, r) { 2844 r instanceof fe && 2845 "load" === e[0] && 2846 t.emit("xhr-load-added", [e[1], e[2]], r); 2847 } 2848 function g(e, r) { 2849 r instanceof fe && 2850 "load" === e[0] && 2851 t.emit("xhr-load-removed", [e[1], e[2]], r); 2852 } 2853 function m(e, t, r) { 2854 t instanceof fe && 2855 ("onload" === r && (this.onload = !0), 2856 ("load" === (e[0] && e[0].type) || this.onload) && 2857 (this.xhrCbStart = (0, N.t)())); 2858 } 2859 function v(e, r) { 2860 this.xhrCbStart && 2861 t.emit( 2862 "xhr-cb-time", 2863 [(0, N.t)() - this.xhrCbStart, this.onload, r], 2864 r 2865 ); 2866 } 2867 function b(e) { 2868 var t, 2869 r = e[1] || {}; 2870 if ( 2871 ("string" == typeof e[0] 2872 ? 0 === (t = e[0]).length && 2873 p.RI && 2874 (t = "" + p.gm.location.href) 2875 : e[0] && e[0].url 2876 ? (t = e[0].url) 2877 : p.gm?.URL && e[0] && e[0] instanceof URL 2878 ? (t = e[0].href) 2879 : "function" == typeof e[0].toString && 2880 (t = e[0].toString()), 2881 "string" == typeof t && 0 !== t.length) 2882 ) { 2883 t && 2884 ((this.parsedOrigin = (0, ie.D)(t)), 2885 (this.sameOrigin = this.parsedOrigin.sameOrigin)); 2886 var i = n.generateTracePayload(this.parsedOrigin); 2887 if (i && (i.newrelicHeader || i.traceContextParentHeader)) 2888 if (e[0] && e[0].headers) 2889 s(e[0].headers, i) && (this.dt = i); 2890 else { 2891 var o = {}; 2892 for (var a in r) o[a] = r[a]; 2893 (o.headers = new Headers(r.headers || {})), 2894 s(o.headers, i) && (this.dt = i), 2895 e.length > 1 ? (e[1] = o) : e.push(o); 2896 } 2897 } 2898 function s(e, t) { 2899 var r = !1; 2900 return ( 2901 t.newrelicHeader && 2902 (e.set("newrelic", t.newrelicHeader), (r = !0)), 2903 t.traceContextParentHeader && 2904 (e.set("traceparent", t.traceContextParentHeader), 2905 t.traceContextStateHeader && 2906 e.set("tracestate", t.traceContextStateHeader), 2907 (r = !0)), 2908 r 2909 ); 2910 } 2911 } 2912 function y(e, t) { 2913 (this.params = {}), 2914 (this.metrics = {}), 2915 (this.startTime = (0, N.t)()), 2916 (this.dt = t), 2917 e.length >= 1 && (this.target = e[0]), 2918 e.length >= 2 && (this.opts = e[1]); 2919 var r, 2920 n = this.opts || {}, 2921 i = this.target; 2922 "string" == typeof i 2923 ? (r = i) 2924 : "object" == typeof i && i instanceof le 2925 ? (r = i.url) 2926 : p.gm?.URL && 2927 "object" == typeof i && 2928 i instanceof URL && 2929 (r = i.href), 2930 ge(this, r); 2931 var o = ( 2932 "" + 2933 ((i && i instanceof le && i.method) || n.method || "GET") 2934 ).toUpperCase(); 2935 (this.params.method = o), 2936 (this.body = n.body), 2937 (this.txSize = G(n.body) || 0); 2938 } 2939 function w(e, t) { 2940 if ( 2941 ((this.endTime = (0, N.t)()), 2942 this.params || (this.params = {}), 2943 (0, ce.iW)(this.params)) 2944 ) 2945 return; 2946 let n; 2947 (this.params.status = t ? t.status : 0), 2948 "string" == typeof this.rxSize && 2949 this.rxSize.length > 0 && 2950 (n = +this.rxSize); 2951 const i = { 2952 txSize: this.txSize, 2953 rxSize: n, 2954 duration: (0, N.t)() - this.startTime, 2955 }; 2956 r( 2957 "xhr", 2958 [this.params, i, this.startTime, this.endTime, "fetch"], 2959 this, 2960 a.K7.ajax 2961 ); 2962 } 2963 function R(e) { 2964 const t = this.params, 2965 n = this.metrics; 2966 if (!this.ended) { 2967 this.ended = !0; 2968 for (let t = 0; t < de; t++) 2969 e.removeEventListener(ue[t], this.listener, !1); 2970 t.aborted || 2971 (0, ce.iW)(t) || 2972 ((n.duration = (0, N.t)() - this.startTime), 2973 this.loadCaptureCalled || 4 !== e.readyState 2974 ? null == t.status && (t.status = 0) 2975 : E(this, e), 2976 (n.cbTime = this.cbTime), 2977 r( 2978 "xhr", 2979 [t, n, this.startTime, this.endTime, "xhr"], 2980 this, 2981 a.K7.ajax 2982 )); 2983 } 2984 } 2985 function E(e, r) { 2986 e.params.status = r.status; 2987 var n = (function (e, t) { 2988 var r = e.responseType; 2989 return "json" === r && null !== t 2990 ? t 2991 : "arraybuffer" === r || "blob" === r || "json" === r 2992 ? G(e.response) 2993 : "text" === r || "" === r || void 0 === r 2994 ? G(e.responseText) 2995 : void 0; 2996 })(r, e.lastSize); 2997 if ( 2998 (n && (e.metrics.rxSize = n), 2999 e.sameOrigin && r.getAllResponseHeaders().indexOf(he) >= 0) 3000 ) { 3001 var i = r.getResponseHeader(he); 3002 i && 3003 ((0, x.p)( 3004 _.rs, 3005 ["Ajax/CrossApplicationTracing/Header/Seen"], 3006 void 0, 3007 a.K7.metrics, 3008 t 3009 ), 3010 (e.params.cat = i.split(", ").pop())); 3011 } 3012 e.loadCaptureCalled = !0; 3013 } 3014 t.on("new-xhr", i), 3015 t.on("open-xhr-start", o), 3016 t.on("open-xhr-end", s), 3017 t.on("send-xhr-start", c), 3018 t.on("xhr-cb-time", u), 3019 t.on("xhr-load-added", d), 3020 t.on("xhr-load-removed", l), 3021 t.on("xhr-resolved", f), 3022 t.on("addEventListener-end", h), 3023 t.on("removeEventListener-end", g), 3024 t.on("fn-end", v), 3025 t.on("fetch-before-start", b), 3026 t.on("fetch-start", y), 3027 t.on("fn-start", m), 3028 t.on("fetch-done", w); 3029 })(e, this.ee, this.handler, this.dt), 3030 this.importAggregator(e); 3031 } 3032 } 3033 function ge(e, t) { 3034 var r = (0, ie.D)(t), 3035 n = e.params || e; 3036 (n.hostname = r.hostname), 3037 (n.port = r.port), 3038 (n.protocol = r.protocol), 3039 (n.host = r.hostname + ":" + r.port), 3040 (n.pathname = r.pathname), 3041 (e.parsedOrigin = r),
3042 (e.sameOrigin = r.sameOrigin); 3043 } 3044 const me = {}, 3045 ve = ["pushState", "replaceState"]; 3046 function be(e) { 3047 const t = (function (e) { 3048 return (e || B.ee).get("history"); 3049 })(e); 3050 return ( 3051 !p.RI || 3052 me[t.debugId]++ || 3053 ((me[t.debugId] = 1), 3054 (0, W.YM)(t).inPlace(window.history, ve, "-")), 3055 t 3056 ); 3057 } 3058 var ye = i(3738); 3059 const { 3060 He: we, 3061 bD: Re, 3062 d3: xe, 3063 Kp: Ee, 3064 TZ: Ae, 3065 Lc: Te, 3066 uP: Ne, 3067 Rz: Se, 3068 } = ye; 3069 class _e extends b { 3070 static featureName = Ae; 3071 constructor(e, t = !0) { 3072 super(e, Ae, t); 3073 if (!(0, m.V)(this.agentIdentifier)) 3074 return void this.deregisterDrain(); 3075 const r = this.ee; 3076 let n; 3077 be(r), 3078 (this.eventsEE = (0, F.u)(r)), 3079 this.eventsEE.on(Ne, function (e, t) { 3080 this.bstStart = (0, N.t)(); 3081 }), 3082 this.eventsEE.on(Te, function (e, t) { 3083 (0, x.p)( 3084 "bst", 3085 [e[0], t, this.bstStart, (0, N.t)()], 3086 void 0, 3087 a.K7.sessionTrace, 3088 r 3089 ); 3090 }), 3091 r.on(Se + xe, function (e) { 3092 (this.time = (0, N.t)()), 3093 (this.startPath = location.pathname + location.hash); 3094 }), 3095 r.on(Se + Ee, function (e) { 3096 (0, x.p)( 3097 "bstHist", 3098 [ 3099 location.pathname + location.hash, 3100 this.startPath, 3101 this.time, 3102 ], 3103 void 0, 3104 a.K7.sessionTrace, 3105 r 3106 ); 3107 }); 3108 try { 3109 (n = new PerformanceObserver((e) => { 3110 const t = e.getEntries(); 3111 (0, x.p)(we, [t], void 0, a.K7.sessionTrace, r); 3112 })), 3113 n.observe({ type: Re, buffered: !0 }); 3114 } catch (e) {} 3115 this.importAggregator(e, { resourceObserver: n }); 3116 } 3117 } 3118 var Oe = i(2614); 3119 class Ie extends b { 3120 static featureName = t.TZ; 3121 #i; 3122 #o; 3123 constructor(e, r = !0) { 3124 let n; 3125 super(e, t.TZ, r), (this.replayRunning = !1), (this.#o = e); 3126 try { 3127 n = JSON.parse( 3128 localStorage.getItem("".concat(Oe.H3, "_").concat(Oe.uh)) 3129 ); 3130 } catch (e) {} 3131 (0, g.SR)(e.agentIdentifier) && 3132 this.ee.on(t.G4.RECORD, () => this.#a()), 3133 this.#s(n) 3134 ? ((this.#i = n?.sessionReplayMode), this.#c()) 3135 : this.importAggregator(e), 3136 this.ee.on("err", (e) => { 3137 this.replayRunning && 3138 ((this.errorNoticed = !0), 3139 (0, x.p)( 3140 t.G4.ERROR_DURING_REPLAY, 3141 [e], 3142 void 0, 3143 this.featureName, 3144 this.ee 3145 )); 3146 }), 3147 this.ee.on(t.G4.REPLAY_RUNNING, (e) => { 3148 this.replayRunning = e; 3149 }); 3150 } 3151 #s(e) { 3152 return ( 3153 (e && 3154 (e.sessionReplayMode === Oe.g.FULL || 3155 e.sessionReplayMode === Oe.g.ERROR)) || 3156 (0, g.Aw)(this.agentIdentifier) 3157 ); 3158 } 3159 #u = !1; 3160 async #c(e) { 3161 if (!this.#u) { 3162 this.#u = !0; 3163 try { 3164 const { Recorder: t } = await Promise.all([ 3165 i.e(478), 3166 i.e(249), 3167 ]).then(i.bind(i, 8589)); 3168 (this.recorder ??= new t({ 3169 mode: this.#i, 3170 agentIdentifier: this.agentIdentifier, 3171 trigger: e, 3172 ee: this.ee, 3173 agentRef: this.#o, 3174 })), 3175 this.recorder.startRecording(), 3176 (this.abortHandler = this.recorder.stopRecording); 3177 } catch (e) {} 3178 this.importAggregator(this.#o, { 3179 recorder: this.recorder, 3180 errorNoticed: this.errorNoticed, 3181 }); 3182 } 3183 } 3184 #a() { 3185 this.featAggregate 3186 ? this.featAggregate.mode !== Oe.g.FULL && 3187 this.featAggregate.initializeRecording(Oe.g.FULL, !0) 3188 : ((this.#i = Oe.g.FULL), 3189 this.#c(t.Qb.API), 3190 this.recorder && 3191 this.recorder.parent.mode !== Oe.g.FULL && 3192 ((this.recorder.parent.mode = Oe.g.FULL), 3193 this.recorder.stopRecording(), 3194 this.recorder.startRecording(), 3195 (this.abortHandler = this.recorder.stopRecording))); 3196 } 3197 } 3198 var Pe = i(3962); 3199 class je extends b { 3200 static featureName = Pe.TZ; 3201 constructor(e, t = !0) { 3202 if ((super(e, Pe.TZ, t), !p.RI || !(0, R.dV)().o.MO)) return; 3203 const r = be(this.ee);
3204 Pe.tC.forEach((e) => { 3205 (0, A.sp)( 3206 e, 3207 (e) => { 3208 a(e); 3209 }, 3210 !0 3211 ); 3212 }); 3213 const n = () => 3214 (0, x.p)( 3215 "newURL", 3216 [(0, N.t)(), "" + window.location], 3217 void 0, 3218 this.featureName, 3219 this.ee 3220 ); 3221 r.on("pushState-end", n), r.on("replaceState-end", n); 3222 try { 3223 this.removeOnAbort = new AbortController(); 3224 } catch (e) {} 3225 (0, A.sp)( 3226 "popstate", 3227 (e) => 3228 (0, x.p)( 3229 "newURL", 3230 [e.timeStamp, "" + window.location], 3231 void 0, 3232 this.featureName, 3233 this.ee 3234 ), 3235 !0, 3236 this.removeOnAbort?.signal 3237 ); 3238 let i = !1; 3239 const o = new ((0, R.dV)().o.MO)((e, t) => { 3240 i || 3241 ((i = !0), 3242 requestAnimationFrame(() => { 3243 (0, x.p)( 3244 "newDom", 3245 [(0, N.t)()], 3246 void 0, 3247 this.featureName, 3248 this.ee 3249 ), 3250 (i = !1); 3251 })); 3252 }), 3253 a = (0, v.s)( 3254 (e) => { 3255 (0, x.p)( 3256 "newUIEvent", 3257 [e], 3258 void 0, 3259 this.featureName, 3260 this.ee 3261 ), 3262 o.observe(document.body, { 3263 attributes: !0, 3264 childList: !0, 3265 subtree: !0, 3266 characterData: !0, 3267 }); 3268 }, 3269 100, 3270 { leading: !0 } 3271 ); 3272 (this.abortHandler = function () { 3273 this.removeOnAbort?.abort(), 3274 o.disconnect(), 3275 (this.abortHandler = void 0); 3276 }), 3277 this.importAggregator(e, { domObserver: o }); 3278 } 3279 } 3280 var Ce = i(7378); 3281 const ke = {}, 3282 Le = ["appendChild", "insertBefore", "replaceChild"]; 3283 function He(e) { 3284 const t = (function (e) { 3285 return (e || B.ee).get("jsonp"); 3286 })(e); 3287 if (!p.RI || ke[t.debugId]) return t; 3288 ke[t.debugId] = !0; 3289 var r = (0, W.YM)(t), 3290 n = /[?&](?:callback|cb)=([^&#]+)/, 3291 i = /(.*)\.([^.]+)/, 3292 o = /^(\w+)(\.|$)(.*)$/; 3293 function a(e, t) { 3294 if (!e) return t; 3295 const r = e.match(o), 3296 n = r[1]; 3297 return a(r[3], t[n]); 3298 } 3299 return ( 3300 r.inPlace(Node.prototype, Le, "dom-"), 3301 t.on("dom-start", function (e) { 3302 !(function (e) { 3303 if ( 3304 !e || 3305 "string" != typeof e.nodeName || 3306 "script" !== e.nodeName.toLowerCase() 3307 ) 3308 return; 3309 if ("function" != typeof e.addEventListener) return; 3310 var o = ((s = e.src), (c = s.match(n)), c ? c[1] : null); 3311 var s, c; 3312 if (!o) return; 3313 var u = (function (e) { 3314 var t = e.match(i); 3315 if (t && t.length >= 3) 3316 return { key: t[2], parent: a(t[1], window) }; 3317 return { key: e, parent: window }; 3318 })(o); 3319 if ("function" != typeof u.parent[u.key]) return; 3320 var d = {}; 3321 function l() { 3322 t.emit("jsonp-end", [], d), 3323 e.removeEventListener("load", l, (0, A.jT)(!1)), 3324 e.removeEventListener("error", f, (0, A.jT)(!1)); 3325 } 3326 function f() { 3327 t.emit("jsonp-error", [], d), 3328 t.emit("jsonp-end", [], d), 3329 e.removeEventListener("load", l, (0, A.jT)(!1)), 3330 e.removeEventListener("error", f, (0, A.jT)(!1)); 3331 } 3332 r.inPlace(u.parent, [u.key], "cb-", d), 3333 e.addEventListener("load", l, (0, A.jT)(!1)), 3334 e.addEventListener("error", f, (0, A.jT)(!1)), 3335 t.emit("new-jsonp", [e.src], d); 3336 })(e[0]); 3337 }), 3338 t 3339 ); 3340 } 3341 const Me = {}; 3342 function De(e) { 3343 const t = (function (e) { 3344 return (e || B.ee).get("promise"); 3345 })(e); 3346 if (Me[t.debugId]) return t; 3347 Me[t.debugId] = !0; 3348 var r = t.context, 3349 n = (0, W.YM)(t),
3350 i = p.gm.Promise; 3351 return ( 3352 i && 3353 (function () { 3354 function e(r) { 3355 var o = t.context(), 3356 a = n(r, "executor-", o, null, !1); 3357 const s = Reflect.construct(i, [a], e); 3358 return ( 3359 (t.context(s).getCtx = function () { 3360 return o; 3361 }), 3362 s 3363 ); 3364 } 3365 (p.gm.Promise = e), 3366 Object.defineProperty(e, "name", { value: "Promise" }), 3367 (e.toString = function () { 3368 return i.toString(); 3369 }), 3370 Object.setPrototypeOf(e, i), 3371 ["all", "race"].forEach(function (r) { 3372 const n = i[r]; 3373 e[r] = function (e) { 3374 let i = !1; 3375 [...(e || [])].forEach((e) => { 3376 this.resolve(e).then(a("all" === r), a(!1)); 3377 }); 3378 const o = n.apply(this, arguments); 3379 return o; 3380 function a(e) { 3381 return function () { 3382 t.emit("propagate", [null, !i], o, !1, !1), 3383 (i = i || !e); 3384 }; 3385 } 3386 }; 3387 }), 3388 ["resolve", "reject"].forEach(function (r) { 3389 const n = i[r]; 3390 e[r] = function (e) { 3391 const r = n.apply(this, arguments); 3392 return ( 3393 e !== r && t.emit("propagate", [e, !0], r, !1, !1), r 3394 ); 3395 }; 3396 }), 3397 (e.prototype = i.prototype); 3398 const o = i.prototype.then; 3399 (i.prototype.then = function (...e) { 3400 var i = this, 3401 a = r(i); 3402 (a.promise = i), 3403 (e[0] = n(e[0], "cb-", a, null, !1)), 3404 (e[1] = n(e[1], "cb-", a, null, !1)); 3405 const s = o.apply(this, e); 3406 return ( 3407 (a.nextPromise = s), 3408 t.emit("propagate", [i, !0], s, !1, !1), 3409 s 3410 ); 3411 }), 3412 (i.prototype.then[W.Jt] = o), 3413 t.on("executor-start", function (e) { 3414 (e[0] = n(e[0], "resolve-", this, null, !1)), 3415 (e[1] = n(e[1], "resolve-", this, null, !1)); 3416 }), 3417 t.on("executor-err", function (e, t, r) { 3418 e[1](r); 3419 }), 3420 t.on("cb-end", function (e, r, n) { 3421 t.emit("propagate", [n, !0], this.nextPromise, !1, !1); 3422 }), 3423 t.on("propagate", function (e, r, n) { 3424 (this.getCtx && !r) || 3425 (this.getCtx = function () { 3426 if (e instanceof Promise) var r = t.context(e); 3427 return r && r.getCtx ? r.getCtx() : this; 3428 }); 3429 }); 3430 })(), 3431 t 3432 ); 3433 } 3434 const Ke = {}, 3435 Ue = "setTimeout", 3436 Ve = "setInterval", 3437 Ge = "clearTimeout", 3438 Fe = "-start", 3439 Be = [Ue, "setImmediate", Ve, Ge, "clearImmediate"]; 3440 function We(e) { 3441 const t = (function (e) { 3442 return (e || B.ee).get("timer"); 3443 })(e); 3444 if (Ke[t.debugId]++) return t; 3445 Ke[t.debugId] = 1; 3446 var r = (0, W.YM)(t); 3447 return ( 3448 r.inPlace(p.gm, Be.slice(0, 2), Ue + "-"), 3449 r.inPlace(p.gm, Be.slice(2, 3), Ve + "-"), 3450 r.inPlace(p.gm, Be.slice(3), Ge + "-"), 3451 t.on(Ve + Fe, function (e, t, n) { 3452 e[0] = r(e[0], "fn-", null, n); 3453 }), 3454 t.on(Ue + Fe, function (e, t, n) { 3455 (this.method = n), 3456 (this.timerDuration = isNaN(e[1]) ? 0 : +e[1]), 3457 (e[0] = r(e[0], "fn-", this, n)); 3458 }), 3459 t 3460 ); 3461 } 3462 const ze = {}; 3463 function qe(e) { 3464 const t = (function (e) { 3465 return (e || B.ee).get("mutation"); 3466 })(e); 3467 if (!p.RI || ze[t.debugId]) return t; 3468 ze[t.debugId] = !0; 3469 var r = (0, W.YM)(t),
3470 n = p.gm.MutationObserver; 3471 return ( 3472 n && 3473 ((window.MutationObserver = function (e) { 3474 return this instanceof n 3475 ? new n(r(e, "fn-")) 3476 : n.apply(this, arguments); 3477 }), 3478 (MutationObserver.prototype = n.prototype)), 3479 t 3480 ); 3481 } 3482 const { 3483 TZ: Ze, 3484 d3: Ye, 3485 Kp: Je, 3486 $p: Xe, 3487 wW: $e, 3488 e5: Qe, 3489 tH: et, 3490 uP: tt, 3491 rw: rt, 3492 Lc: nt, 3493 } = Ce; 3494 class it extends b { 3495 static featureName = Ze; 3496 constructor(e, t = !0) { 3497 if ((super(e, Ze, t), !p.RI)) return; 3498 try { 3499 this.removeOnAbort = new AbortController(); 3500 } catch (e) {} 3501 let r, 3502 n = 0; 3503 const i = this.ee.get("tracer"), 3504 o = He(this.ee), 3505 a = De(this.ee), 3506 s = We(this.ee), 3507 c = Z(this.ee), 3508 u = this.ee.get("events"), 3509 d = ne(this.ee), 3510 l = be(this.ee), 3511 f = qe(this.ee); 3512 function h(e, t) { 3513 l.emit("newURL", ["" + window.location, t]); 3514 } 3515 function g() { 3516 n++, (r = window.location.hash), (this[tt] = (0, N.t)()); 3517 } 3518 function m() { 3519 n--, window.location.hash !== r && h(0, !0); 3520 var e = (0, N.t)(); 3521 (this[Qe] = ~~this[Qe] + e - this[tt]), (this[nt] = e); 3522 } 3523 function v(e, t) { 3524 e.on(t, function () { 3525 this[t] = (0, N.t)(); 3526 }); 3527 } 3528 this.ee.on(tt, g), 3529 a.on(rt, g), 3530 o.on(rt, g), 3531 this.ee.on(nt, m), 3532 a.on($e, m), 3533 o.on($e, m), 3534 this.ee.on("fn-err", (...t) => { 3535 t[2]?.__newrelic?.[e.agentIdentifier] || 3536 (0, x.p)( 3537 "function-err", 3538 [...t], 3539 void 0, 3540 this.featureName, 3541 this.ee 3542 ); 3543 }), 3544 this.ee.buffer([tt, nt, "xhr-resolved"], this.featureName), 3545 u.buffer([tt], this.featureName), 3546 s.buffer( 3547 ["setTimeout" + Je, "clearTimeout" + Ye, tt], 3548 this.featureName 3549 ), 3550 c.buffer([tt, "new-xhr", "send-xhr" + Ye], this.featureName), 3551 d.buffer( 3552 [et + Ye, et + "-done", et + Xe + Ye, et + Xe + Je], 3553 this.featureName 3554 ), 3555 l.buffer(["newURL"], this.featureName), 3556 f.buffer([tt], this.featureName), 3557 a.buffer( 3558 ["propagate", rt, $e, "executor-err", "resolve" + Ye], 3559 this.featureName 3560 ), 3561 i.buffer([tt, "no-" + tt], this.featureName), 3562 o.buffer( 3563 ["new-jsonp", "cb-start", "jsonp-error", "jsonp-end"], 3564 this.featureName 3565 ), 3566 v(d, et + Ye), 3567 v(d, et + "-done"), 3568 v(o, "new-jsonp"), 3569 v(o, "jsonp-end"), 3570 v(o, "cb-start"), 3571 l.on("pushState-end", h), 3572 l.on("replaceState-end", h), 3573 window.addEventListener( 3574 "hashchange", 3575 h, 3576 (0, A.jT)(!0, this.removeOnAbort?.signal) 3577 ), 3578 window.addEventListener( 3579 "load", 3580 h, 3581 (0, A.jT)(!0, this.removeOnAbort?.signal) 3582 ), 3583 window.addEventListener( 3584 "popstate", 3585 function () { 3586 h(0, n > 1); 3587 }, 3588 (0, A.jT)(!0, this.removeOnAbort?.signal) 3589 ), 3590 (this.abortHandler = this.#n), 3591 this.importAggregator(e); 3592 } 3593 #n() { 3594 this.removeOnAbort?.abort(), (this.abortHandler = void 0); 3595 } 3596 } 3597 var ot = i(3333); 3598 class at extends b { 3599 static featureName = ot.TZ; 3600 constructor(e, t = !0) { 3601 super(e, ot.TZ, t); 3602 const r = [ 3603 e.init.page_action.enabled, 3604 e.init.performance.capture_marks, 3605 e.init.performance.capture_measures, 3606 e.init.user_actions.enabled, 3607 e.init.performance.resources.enabled, 3608 ]; 3609 if ( 3610 p.RI && 3611 (e.init.user_actions.enabled &&
3612 (ot.Zp.forEach((e) => 3613 (0, A.sp)( 3614 e, 3615 (e) => 3616 (0, x.p)("ua", [e], void 0, this.featureName, this.ee), 3617 !0 3618 ) 3619 ), 3620 ot.qN.forEach((e) => { 3621 const t = (0, v.s)( 3622 (e) => { 3623 (0, x.p)("ua", [e], void 0, this.featureName, this.ee); 3624 }, 3625 500, 3626 { leading: !0 } 3627 ); 3628 (0, A.sp)(e, t); 3629 })), 3630 e.init.performance.resources.enabled && 3631 p.gm.PerformanceObserver?.supportedEntryTypes.includes( 3632 "resource" 3633 )) 3634 ) { 3635 new PerformanceObserver((e) => { 3636 e.getEntries().forEach((e) => { 3637 (0, x.p)( 3638 "browserPerformance.resource", 3639 [e], 3640 void 0, 3641 this.featureName, 3642 this.ee 3643 ); 3644 }); 3645 }).observe({ type: "resource", buffered: !0 }); 3646 } 3647 r.some((e) => e) 3648 ? this.importAggregator(e) 3649 : this.deregisterDrain(); 3650 } 3651 } 3652 var st = i(993), 3653 ct = i(3785), 3654 ut = i(9414); 3655 class dt extends b { 3656 static featureName = st.TZ; 3657 constructor(e, t = !0) { 3658 super(e, st.TZ, t); 3659 const r = this.ee; 3660 (0, ut.J)(r, p.gm.console, "log", { level: "info" }), 3661 (0, ut.J)(r, p.gm.console, "error", { level: "error" }), 3662 (0, ut.J)(r, p.gm.console, "warn", { level: "warn" }), 3663 (0, ut.J)(r, p.gm.console, "info", { level: "info" }), 3664 (0, ut.J)(r, p.gm.console, "debug", { level: "debug" }), 3665 (0, ut.J)(r, p.gm.console, "trace", { level: "trace" }), 3666 this.ee.on("wrap-logger-end", function ([e]) { 3667 const { level: t, customAttributes: n } = this; 3668 (0, ct.R)(r, e, n, t); 3669 }), 3670 this.importAggregator(e); 3671 } 3672 } 3673 new (class extends o { 3674 constructor(t) { 3675 super(), 3676 p.gm 3677 ? ((this.features = {}), 3678 (0, R.bQ)(this.agentIdentifier, this), 3679 (this.desiredFeatures = new Set(t.features || [])), 3680 this.desiredFeatures.add(w), 3681 (this.runSoftNavOverSpa = [...this.desiredFeatures].some( 3682 (e) => e.featureName === a.K7.softNav 3683 )), 3684 (0, d.j)(this, t, t.loaderType || "agent"), 3685 this.run()) 3686 : (0, e.R)(21); 3687 } 3688 get config() { 3689 return { 3690 info: this.info, 3691 init: this.init, 3692 loader_config: this.loader_config, 3693 runtime: this.runtime, 3694 }; 3695 } 3696 run() { 3697 try { 3698 const t = u(this.agentIdentifier), 3699 r = [...this.desiredFeatures]; 3700 r.sort((e, t) => a.P3[e.featureName] - a.P3[t.featureName]), 3701 r.forEach((r) => { 3702 if (!t[r.featureName] && r.featureName !== a.K7.pageViewEvent) 3703 return; 3704 if (this.runSoftNavOverSpa && r.featureName === a.K7.spa) 3705 return; 3706 if (!this.runSoftNavOverSpa && r.featureName === a.K7.softNav) 3707 return; 3708 const n = (function (e) { 3709 switch (e) { 3710 case a.K7.ajax: 3711 return [a.K7.jserrors]; 3712 case a.K7.sessionTrace: 3713 return [a.K7.ajax, a.K7.pageViewEvent]; 3714 case a.K7.sessionReplay: 3715 return [a.K7.sessionTrace]; 3716 case a.K7.pageViewTiming: 3717 return [a.K7.pageViewEvent]; 3718 default: 3719 return []; 3720 } 3721 })(r.featureName).filter((e) => !(e in this.features)); 3722 n.length > 0 && 3723 (0, e.R)(36, { 3724 targetFeature: r.featureName, 3725 missingDependencies: n, 3726 }), 3727 (this.features[r.featureName] = new r(this)); 3728 }); 3729 } catch (t) { 3730 (0, e.R)(22, t); 3731 for (const e in this.features) this.features[e].abortHandler?.(); 3732 const r = (0, R.Zm)(); 3733 delete r.initializedAgents[this.agentIdentifier]?.api, 3734 delete r.initializedAgents[this.agentIdentifier]?.features, 3735 delete this.sharedAggregator; 3736 return r.ee.get(this.agentIdentifier).abort(), !1; 3737 } 3738 } 3739 })({ 3740 features: [pe, w, S, _e, Ie, O, M, at, dt, je, it], 3741 loaderType: "spa", 3742 }); 3743 })(); 3744 })();</script>
3744<script defer="defer">window._blueshiftid = "1295b960cb09c5dfcf9c113dee41115f"; 3745window.blueshift = window.blueshift || []; 3746if (blueshift.constructor === Array) { 3747 blueshift.load = function () { 3748 var d = function (a) { 3749 return function () { 3750 blueshift.push([a].concat(Array.prototype.slice.call(arguments, 0))); 3751 }; 3752 }, 3753 e = [ 3754 "identify", 3755 "track", 3756 "click", 3757 "pageload", 3758 "capture", 3759 "retarget", 3760 "favourite", 3761 "content_impression", 3762 "ad_impression", 3763 ]; 3764 for (var f = 0; f < e.length; f++) blueshift[e[f]] = d(e[f]); 3765 }; 3766} 3767blueshift.load(); 3768blueshift.pageload(); 3769if (blueshift.constructor === Array) { 3770 (function () { 3771 var b = document.createElement("script"); 3772 (b.type = "text/javascript"), 3773 (b.async = !0), 3774 (b.src = 3775 ("https:" === document.location.protocol ? "https:" : "http:") + 3776 "//cdn.getblueshift.com/blueshift.js"); 3777 var c = document.getElementsByTagName("script")[0]; 3778 c.parentNode.insertBefore(b, c); 3779 })(); 3780}</script>
3780<script async defer="defer">window.googletag = window.googletag || { cmd: [] }; 3781 googletag.cmd.push(function () { 3782 var w = window.innerWidth; 3783 var fn_pageskin = "false"; 3784 if (w >= 1460) { 3785 fn_pageskin = "true"; 3786 } 3787 //Initiate Targeting Parameters 3788 googletag.pubads().setTargeting("inskin_yes", fn_pageskin); 3789 googletag.pubads().collapseEmptyDivs(true, true); 3790 googletag.pubads().setCentering(true); 3791 googletag.enableServices(); 3792 });</script>
3792<style>.app-style { 3793 background-color: #1a1c21; 3794 min-height: calc(100vh - 200px); 3795 padding-top: 70px; 3796 overflow: hidden; 3797 scrollbar-width: none; 3798 } 3799 @media (max-width: 700px) { 3800 .app-style { 3801 padding-top: 0px; 3802 min-height: calc(100vh - 500px); 3803 } 3804 }</style><link rel="icon" type="image/x-icon" href="/assets/favicon.ico"><link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon-16x16.png"><link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon-32x32.png"><link rel="icon" type="image/png" sizes="48x48" href="/assets/favicon-48x48.png"><link rel="manifest" href="/assets/manifest.webmanifest"><meta name="mobile-web-app-capable" content="yes"><meta name="theme-color" content="#fff"><meta name="application-name" content="@discovery/dplus"><link rel="apple-touch-icon" sizes="57x57" href="/assets/apple-touch-icon-57x57.png"><link rel="apple-touch-icon" sizes="60x60" href="/assets/apple-touch-icon-60x60.png"><link rel="apple-touch-icon" sizes="72x72" href="/assets/apple-touch-icon-72x72.png"><link rel="apple-touch-icon" sizes="76x76" href="/assets/apple-touch-icon-76x76.png"><link rel="apple-touch-icon" sizes="114x114" href="/assets/apple-touch-icon-114x114.png"><link rel="apple-touch-icon" sizes="120x120" href="/assets/apple-touch-icon-120x120.png"><link rel="apple-touch-icon" sizes="144x144" href="/assets/apple-touch-icon-144x144.png"><link rel="apple-touch-icon" sizes="152x152" href="/assets/apple-touch-icon-152x152.png"><link rel="apple-touch-icon" sizes="167x167" href="/assets/apple-touch-icon-167x167.png"><link rel="apple-touch-icon" sizes="180x180" href="/assets/apple-touch-icon-180x180.png"><link rel="apple-touch-icon" sizes="1024x1024" href="/assets/apple-touch-icon-1024x1024.png"><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"><meta name="apple-mobile-web-app-title" content="@discovery/dplus"><link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/apple-touch-startup-image-640x1136.png"><link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/apple-touch-startup-image-1136x640.png"><link rel="apple-touch-startup-image" media="(device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/apple-touch-startup-image-750x1334.png"><link rel="apple-touch-startup-image" media="(device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/apple-touch-startup-image-1334x750.png"><link rel="apple-touch-startup-image" media="(device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/apple-touch-startup-image-1125x2436.png"><link rel="apple-touch-startup-image" media="(device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/apple-touch-startup-image-2436x1125.png"><link rel="apple-touch-startup-image" media="(device-width: 390px) and (device-height: 844px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/apple-touch-startup-image-1170x2532.png"><link rel="apple-touch-startup-image" media="(device-width: 390px) and (device-height: 844px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/apple-touch-startup-image-2532x1170.png"><link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/apple-touch-startup-image-828x1792.png"><link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/apple-touch-startup-image-1792x828.png"><link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/apple-touch-startup-image-1242x2688.png"><link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/apple-touch-startup-image-2688x1242.png"><link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 736px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/apple-touch-startup-image-1242x2208.png"><link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 736px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/apple-touch-startup-image-2208x1242.png"><link rel="apple-touch-startup-image" media="(device-width: 428px) and (device-height: 926px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/apple-touch-startup-image-1284x2778.png"><link rel="apple-touch-startup-image" media="(device-width: 428px) and (device-height: 926px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/apple-touch-startup-image-2778x1284.png"><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/apple-touch-startup-image-1536x2048.png"><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/apple-touch-startup-image-2048x1536.png"><link rel="apple-touch-startup-image" media="(device-width: 810px) and (device-height: 1080px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/apple-touch-startup-image-1620x2
3804160.png"><link rel="apple-touch-startup-image" media="(device-width: 810px) and (device-height: 1080px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/apple-touch-startup-image-2160x1620.png"><link rel="apple-touch-startup-image" media="(device-width: 834px) and (device-height: 1194px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/apple-touch-startup-image-1668x2388.png"><link rel="apple-touch-startup-image" media="(device-width: 834px) and (device-height: 1194px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/apple-touch-startup-image-2388x1668.png"><link rel="apple-touch-startup-image" media="(device-width: 834px) and (device-height: 1112px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/apple-touch-startup-image-1668x2224.png"><link rel="apple-touch-startup-image" media="(device-width: 834px) and (device-height: 1112px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/apple-touch-startup-image-2224x1668.png"><link rel="apple-touch-startup-image" media="(device-width: 1024px) and (device-height: 1366px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/apple-touch-startup-image-2048x2732.png"><link rel="apple-touch-startup-image" media="(device-width: 1024px) and (device-height: 1366px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/apple-touch-startup-image-2732x2048.png"><meta name="msapplication-TileColor" content="#fff"><meta name="msapplication-TileImage" content="/assets/mstile-144x144.png"><meta name="msapplication-config" content="/assets/browserconfig.xml"><link rel="yandex-tableau-widget" href="/assets/yandex-browser-manifest.json">
3804<script defer="defer" src="/217-aa18eaf323bd5a52a559.js"></script>
3804<script defer="defer" src="/main-aa18eaf323bd5a52a559.js"></script>
3804<meta name="theme-color" content="#ffffff" /><link rel="manifest" href="/manifest.c6564ef3f44cb0bf962ee60bdad3377e.json" crossorigin="use-credentials" /></head><body style="width: 100%; 3805 height: 100vh; 3806 margin: 0; 3807 padding: 0; 3808 -webkit-tap-highlight-color: transparent; 3809 background: #1a1c21;"><div id="shell" style="height: 100%; width: 100%; background-color: #1a1c21"><div id="header"></div><div id="hamburger"></div><div id="app" class="app-style"></div><div id="footer"></div><div id="partner-banner"></div></div></body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.