CINXE.COM

ORCID

<!DOCTYPE html> <html lang="en" dir="ltr" data-critters-container> <head><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <meta charset="utf-8"> <title>ORCID</title> <base href="/"> <meta name="robots" content="[ROBOTS_PARAMETERS]"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="icon" type="image/x-icon" href="./assets/icons/favicon.ico"> <style type="text/css">@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/materialicons/v143/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.woff2) format('woff2');}.material-icons{font-family:'Material Icons';font-weight:normal;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:'liga';-webkit-font-smoothing:antialiased;}</style> <style type="text/css">@font-face{font-family:'Material Symbols Outlined';font-style:normal;font-weight:600;src:url(https://fonts.gstatic.com/s/materialsymbolsoutlined/v232/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1n-q_4MrImHCIJIZrDBxG-elbd5zrDAt.woff) format('woff');}.material-symbols-outlined{font-family:'Material Symbols Outlined';font-weight:normal;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:'liga';-webkit-font-smoothing:antialiased;}</style> <meta name="theme-color" content="#1976d2"> <script data-ot-ignore id="ze-snippet" src="https://static.zdassets.com/ekr/snippet.js?key=b8313acd-6439-4894-b431-8c5a2ae9e7cb"></script> <script type="text/javascript"> const newRelicRegProdBrowser = '772335825' const newRelicRegQaBrowser = '772335827' const newRelicRegSboxrowser = '772335828' var domain = window.location.hostname + (window.location.port ? ':' + window.location.port : '') + window.location.pathname newRelicKey = newRelicRegProdBrowser if (domain.includes('qa.orcid.org')) { newRelicKey = '772335825' } else if (domain.includes('sandbox.orcid.org')) { newRelicKey = newRelicRegSboxrowser } else if (domain.includes('localhost:4200')) { newRelicKey = newRelicRegQaBrowser } else if (domain.includes('dev.orcid.org')) { newRelicKey = newRelicRegQaBrowser } else if (domain.includes('localhost')) { newRelicKey = newRelicRegQaBrowser } window.NREUM || (NREUM = {}) NREUM.init = { session_replay: { enabled: true, block_selector: '', mask_text_selector: '*', sampling_rate: 10.0, error_sampling_rate: 10.0, mask_all_inputs: true, collect_fonts: true, inline_images: false, inline_stylesheet: true, mask_input_options: {}, autoStart: false, }, distributed_tracing: { enabled: true, }, privacy: { cookies_enabled: true, }, ajax: { autoStart: false }, jserrors: { autoStart: false }, metrics: { autoStart: false }, generic_events: { autoStart: false }, page_view_event: { autoStart: false }, page_view_timing: { autoStart: false }, session_trace: { autoStart: false }, spa: { autoStart: false }, } NREUM.loader_config = { accountID: '1106049', trustKey: '1106049', agentID: newRelicKey, licenseKey: 'dde0290a31', applicationID: newRelicKey, } NREUM.info = { beacon: 'bam.nr-data.net', errorBeacon: 'bam.nr-data.net', licenseKey: 'dde0290a31', applicationID: newRelicKey, sa: 1, } /*! For license information please see nr-loader-spa-1.285.0.min.js.LICENSE.txt */ ;(() => { var e, t, r = { 8122: (e, t, r) => { 'use strict' r.d(t, { a: () => i }) var n = r(944) function i(e, t) { try { if (!e || 'object' != typeof e) return (0, n.R)(3) if (!t || 'object' != typeof t) return (0, n.R)(4) const r = Object.create( Object.getPrototypeOf(t), Object.getOwnPropertyDescriptors(t) ), o = 0 === Object.keys(r).length ? e : r for (let a in o) if (void 0 !== e[a]) try { if (null === e[a]) { r[a] = null continue } Array.isArray(e[a]) && Array.isArray(t[a]) ? (r[a] = Array.from(new Set([...e[a], ...t[a]]))) : 'object' == typeof e[a] && 'object' == typeof t[a] ? (r[a] = i(e[a], t[a])) : (r[a] = e[a]) } catch (e) { ;(0, n.R)(1, e) } return r } catch (e) { ;(0, n.R)(2, e) } } }, 2555: (e, t, r) => { 'use strict' r.d(t, { Vp: () => c, fn: () => s, x1: () => u }) var n = r(384), i = r(8122) const o = { beacon: n.NT.beacon, errorBeacon: n.NT.errorBeacon, licenseKey: void 0, applicationID: void 0, sa: void 0, queueTime: void 0, applicationTime: void 0, ttGuid: void 0, user: void 0, account: void 0, product: void 0, extra: void 0, jsAttributes: {}, userAttributes: void 0, atts: void 0, transactionName: void 0, tNamePlain: void 0, }, a = {} function s(e) { try { const t = c(e) return !!t.licenseKey && !!t.errorBeacon && !!t.applicationID } catch (e) { return !1 } } function c(e) { if (!e) throw new Error('All info objects require an agent identifier!') if (!a[e]) throw new Error('Info for '.concat(e, ' was never set')) return a[e] } function u(e, t) { if (!e) throw new Error('All info objects require an agent identifier!') a[e] = (0, i.a)(t, o) const r = (0, n.nY)(e) r && (r.info = a[e]) } }, 9417: (e, t, r) => { 'use strict' r.d(t, { D0: () => h, gD: () => g, xN: () => p }) var n = r(3333) const i = (e) => { if (!e || 'string' != typeof e) return !1 try { document.createDocumentFragment().querySelector(e) } catch { return !1 } return !0 } var o = r(2614), a = r(944), s = r(384), c = r(8122) const u = '[data-nr-mask]', d = () => { const e = { feature_flags: [], experimental: { marks: !1, measures: !1, resources: !1 }, mask_selector: '*', block_selector: '[data-nr-block]', mask_input_options: { color: !1, date: !1, 'datetime-local': !1, email: !1, month: !1, number: !1, range: !1, search: !1, tel: !1, text: !1, time: !1, url: !1, week: !1, textarea: !1, select: !1, password: !0, }, } return { ajax: { deny_list: void 0, block_internal: !0, enabled: !0, autoStart: !0, }, distributed_tracing: { enabled: void 0, exclude_newrelic_header: void 0, cors_use_newrelic_header: void 0, cors_use_tracecontext_headers: void 0, allowed_origins: void 0, }, get feature_flags() { return e.feature_flags }, set feature_flags(t) { e.feature_flags = t }, generic_events: { enabled: !0, autoStart: !0 }, harvest: { interval: 30 }, jserrors: { enabled: !0, autoStart: !0 }, logging: { enabled: !0, autoStart: !0 }, metrics: { enabled: !0, autoStart: !0 }, obfuscate: void 0, page_action: { enabled: !0 }, page_view_event: { enabled: !0, autoStart: !0 }, page_view_timing: { enabled: !0, autoStart: !0 }, performance: { get capture_marks() { return ( e.feature_flags.includes(n.$v.MARKS) || e.experimental.marks ) }, set capture_marks(t) { e.experimental.marks = t }, get capture_measures() { return ( e.feature_flags.includes(n.$v.MEASURES) || e.experimental.measures ) }, set capture_measures(t) { e.experimental.measures = t }, capture_detail: !0, resources: { get enabled() { return ( e.feature_flags.includes(n.$v.RESOURCES) || e.experimental.resources ) }, set enabled(t) { e.experimental.resources = t }, asset_types: [], first_party_domains: [], ignore_newrelic: !0, }, }, privacy: { cookies_enabled: !0 }, proxy: { assets: void 0, beacon: void 0 }, session: { expiresMs: o.wk, inactiveMs: o.BB }, session_replay: { autoStart: !0, enabled: !1, preload: !1, sampling_rate: 10, error_sampling_rate: 100, collect_fonts: !1, inline_images: !1, fix_stylesheets: !0, mask_all_inputs: !0, get mask_text_selector() { return e.mask_selector }, set mask_text_selector(t) { i(t) ? (e.mask_selector = ''.concat(t, ',').concat(u)) : '' === t || null === t ? (e.mask_selector = u) : (0, a.R)(5, t) }, get block_class() { return 'nr-block' }, get ignore_class() { return 'nr-ignore' }, get mask_text_class() { return 'nr-mask' }, get block_selector() { return e.block_selector }, set block_selector(t) { i(t) ? (e.block_selector += ','.concat(t)) : '' !== t && (0, a.R)(6, t) }, get mask_input_options() { return e.mask_input_options }, set mask_input_options(t) { t && 'object' == typeof t ? (e.mask_input_options = { ...t, password: !0 }) : (0, a.R)(7, t) }, }, session_trace: { enabled: !0, autoStart: !0 }, soft_navigations: { enabled: !0, autoStart: !0 }, spa: { enabled: !0, autoStart: !0 }, ssl: void 0, user_actions: { enabled: !0, elementAttributes: ['id', 'className', 'tagName', 'type'], }, } }, l = {}, f = 'All configuration objects require an agent identifier!' function h(e) { if (!e) throw new Error(f) if (!l[e]) throw new Error('Configuration for '.concat(e, ' was never set')) return l[e] } function p(e, t) { if (!e) throw new Error(f) l[e] = (0, c.a)(t, d()) const r = (0, s.nY)(e) r && (r.init = l[e]) } function g(e, t) { if (!e) throw new Error(f) var r = h(e) if (r) { for (var n = t.split('.'), i = 0; i < n.length - 1; i++) if ('object' != typeof (r = r[n[i]])) return r = r[n[n.length - 1]] } return r } }, 5603: (e, t, r) => { 'use strict' r.d(t, { a: () => c, o: () => s }) var n = r(384), i = r(8122) const o = { accountID: void 0, trustKey: void 0, agentID: void 0, licenseKey: void 0, applicationID: void 0, xpid: void 0, }, a = {} function s(e) { if (!e) throw new Error( 'All loader-config objects require an agent identifier!' ) if (!a[e]) throw new Error('LoaderConfig for '.concat(e, ' was never set')) return a[e] } function c(e, t) { if (!e) throw new Error( 'All loader-config objects require an agent identifier!' ) a[e] = (0, i.a)(t, o) const r = (0, n.nY)(e) r && (r.loader_config = a[e]) } }, 3371: (e, t, r) => { 'use strict' r.d(t, { V: () => f, f: () => l }) var n = r(8122), i = r(384), o = r(6154), a = r(9324) let s = 0 const c = { buildEnv: a.F3, distMethod: a.Xs, version: a.xv, originTime: o.WN, }, u = { customTransaction: void 0, disabled: !1, isolatedBacklog: !1, loaderType: void 0, maxBytes: 3e4, onerror: void 0, ptid: void 0, releaseIds: {}, appMetadata: {}, session: void 0, denyList: void 0, timeKeeper: void 0, obfuscator: void 0, harvester: void 0, }, d = {} function l(e) { if (!e) throw new Error('All runtime objects require an agent identifier!') if (!d[e]) throw new Error('Runtime for '.concat(e, ' was never set')) return d[e] } function f(e, t) { if (!e) throw new Error('All runtime objects require an agent identifier!') ;(d[e] = { ...(0, n.a)(t, u), ...c }), Object.hasOwnProperty.call(d[e], 'harvestCount') || Object.defineProperty(d[e], 'harvestCount', { get: () => ++s }) const r = (0, i.nY)(e) r && (r.runtime = d[e]) } }, 9324: (e, t, r) => { 'use strict' r.d(t, { F3: () => i, Xs: () => o, Yq: () => a, xv: () => n }) const n = '1.285.0', i = 'PROD', o = 'CDN', a = '^2.0.0-alpha.18' }, 6154: (e, t, r) => { 'use strict' r.d(t, { A4: () => s, OF: () => d, RI: () => i, WN: () => h, bv: () => o, gm: () => a, lR: () => f, m: () => u, mw: () => c, sb: () => l, }) var n = r(1863) const i = 'undefined' != typeof window && !!window.document, o = 'undefined' != typeof WorkerGlobalScope && (('undefined' != typeof self && self instanceof WorkerGlobalScope && self.navigator instanceof WorkerNavigator) || ('undefined' != typeof globalThis && globalThis instanceof WorkerGlobalScope && globalThis.navigator instanceof WorkerNavigator)), a = i ? window : 'undefined' != typeof WorkerGlobalScope && (('undefined' != typeof self && self instanceof WorkerGlobalScope && self) || ('undefined' != typeof globalThis && globalThis instanceof WorkerGlobalScope && globalThis)), s = 'complete' === a?.document?.readyState, c = Boolean('hidden' === a?.document?.visibilityState), u = '' + a?.location, d = /iPad|iPhone|iPod/.test(a.navigator?.userAgent), l = d && 'undefined' == typeof SharedWorker, f = (() => { const e = a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/) return Array.isArray(e) && e.length >= 2 ? +e[1] : 0 })(), h = Date.now() - (0, n.t)() }, 7295: (e, t, r) => { 'use strict' r.d(t, { Xv: () => a, gX: () => i, iW: () => o }) var n = [] function i(e) { if (!e || o(e)) return !1 if (0 === n.length) return !0 for (var t = 0; t < n.length; t++) { var r = n[t] if ('*' === r.hostname) return !1 if (s(r.hostname, e.hostname) && c(r.pathname, e.pathname)) return !1 } return !0 } function o(e) { return void 0 === e.hostname } function a(e) { if (((n = []), e && e.length)) for (var t = 0; t < e.length; t++) { let r = e[t] if (!r) continue 0 === r.indexOf('http://') ? (r = r.substring(7)) : 0 === r.indexOf('https://') && (r = r.substring(8)) const i = r.indexOf('/') let o, a i > 0 ? ((o = r.substring(0, i)), (a = r.substring(i))) : ((o = r), (a = '')) let [s] = o.split(':') n.push({ hostname: s, pathname: a }) } } function s(e, t) { return !(e.length > t.length) && t.indexOf(e) === t.length - e.length } function c(e, t) { return ( 0 === e.indexOf('/') && (e = e.substring(1)), 0 === t.indexOf('/') && (t = t.substring(1)), '' === e || e === t ) } }, 3241: (e, t, r) => { 'use strict' r.d(t, { W: () => o }) var n = r(6154) const i = 'newrelic' function o(e = {}) { try { n.gm.dispatchEvent(new CustomEvent(i, { detail: e })) } catch (e) {} } }, 1687: (e, t, r) => { 'use strict' r.d(t, { Ak: () => c, Ze: () => l, x3: () => u }) var n = r(7836), i = r(3606), o = r(860), a = r(2646) const s = {} function c(e, t) { const r = { staged: !1, priority: o.P3[t] || 0 } d(e), s[e].get(t) || s[e].set(t, r) } function u(e, t) { e && s[e] && (s[e].get(t) && s[e].delete(t), h(e, t, !1), s[e].size && f(e)) } function d(e) { if (!e) throw new Error('agentIdentifier required') s[e] || (s[e] = new Map()) } function l(e = '', t = 'feature', r = !1) { if ((d(e), !e || !s[e].get(t) || r)) return h(e, t) ;(s[e].get(t).staged = !0), f(e) } function f(e) { const t = Array.from(s[e]) t.every(([e, t]) => t.staged) && (t.sort((e, t) => e[1].priority - t[1].priority), t.forEach(([t]) => { s[e].delete(t), h(e, t) })) } function h(e, t, r = !0) { const o = e ? n.ee.get(e) : n.ee, s = i.i.handlers if (!o.aborted && o.backlog && s) { if (r) { const e = o.backlog[t], r = s[t] if (r) { for (let t = 0; e && t < e.length; ++t) p(e[t], r) Object.entries(r).forEach(([e, t]) => { Object.values(t || {}).forEach((t) => { t[0]?.on && t[0]?.context() instanceof a.y && t[0].on(e, t[1]) }) }) } } o.isolatedBacklog || delete s[t], (o.backlog[t] = null), o.emit('drain-' + t, []) } } function p(e, t) { var r = e[1] Object.values(t[r] || {}).forEach((t) => { var r = e[0] if (t[0] === r) { var n = t[1], i = e[3], o = e[2] n.apply(i, o) } }) } }, 7836: (e, t, r) => { 'use strict' r.d(t, { P: () => c, ee: () => u }) var n = r(384), i = r(8990), o = r(3371), a = r(2646), s = r(5607) const c = 'nr@context:'.concat(s.W), u = (function e(t, r) { var n = {}, s = {}, d = {}, l = !1 try { l = 16 === r.length && (0, o.f)(r).isolatedBacklog } catch (e) {} var f = { on: p, addEventListener: p, removeEventListener: function (e, t) { var r = n[e] if (!r) return for (var i = 0; i < r.length; i++) r[i] === t && r.splice(i, 1) }, emit: function (e, r, n, i, o) { !1 !== o && (o = !0) if (u.aborted && !i) return t && o && t.emit(e, r, n) for (var a = h(n), c = g(e), d = c.length, l = 0; l < d; l++) c[l].apply(a, r) var p = v()[s[e]] p && p.push([f, e, r, a]) return a }, get: m, listeners: g, context: h, buffer: function (e, t) { const r = v() if (((t = t || 'feature'), f.aborted)) return Object.entries(e || {}).forEach(([e, n]) => { ;(s[n] = t), t in r || (r[t] = []) }) }, abort: function () { ;(f._aborted = !0), Object.keys(f.backlog).forEach((e) => { delete f.backlog[e] }) }, isBuffering: function (e) { return !!v()[s[e]] }, debugId: r, backlog: l ? {} : t && 'object' == typeof t.backlog ? t.backlog : {}, isolatedBacklog: l, } return ( Object.defineProperty(f, 'aborted', { get: () => { let e = f._aborted || !1 return e || (t && (e = t.aborted), e) }, }), f ) function h(e) { return e && e instanceof a.y ? e : e ? (0, i.I)(e, c, () => new a.y(c)) : new a.y(c) } function p(e, t) { n[e] = g(e).concat(t) } function g(e) { return n[e] || [] } function m(t) { return (d[t] = d[t] || e(f, t)) } function v() { return f.backlog } })(void 0, 'globalEE'), d = (0, n.Zm)() d.ee || (d.ee = u) }, 2646: (e, t, r) => { 'use strict' r.d(t, { y: () => n }) class n { constructor(e) { this.contextId = e } } }, 9908: (e, t, r) => { 'use strict' r.d(t, { d: () => n, p: () => i }) var n = r(7836).ee.get('handle') function i(e, t, r, i, o) { o ? (o.buffer([e], i), o.emit(e, t, r)) : (n.buffer([e], i), n.emit(e, t, r)) } }, 3606: (e, t, r) => { 'use strict' r.d(t, { i: () => o }) var n = r(9908) o.on = a var i = (o.handlers = {}) function o(e, t, r, o) { a(o || n.d, i, e, t, r) } function a(e, t, r, i, o) { o || (o = 'feature'), e || (e = n.d) var a = (t[o] = t[o] || {}) ;(a[r] = a[r] || []).push([e, i]) } }, 3878: (e, t, r) => { 'use strict' function n(e, t) { return { capture: e, passive: !1, signal: t } } function i(e, t, r = !1, i) { window.addEventListener(e, t, n(r, i)) } function o(e, t, r = !1, i) { document.addEventListener(e, t, n(r, i)) } r.d(t, { DD: () => o, jT: () => n, sp: () => i }) }, 5607: (e, t, r) => { 'use strict' r.d(t, { W: () => n }) const n = (0, r(9566).bz)() }, 9566: (e, t, r) => { 'use strict' r.d(t, { LA: () => s, ZF: () => c, bz: () => a, el: () => u }) var n = r(6154) const i = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx' function o(e, t) { return e ? 15 & e[t] : (16 * Math.random()) | 0 } function a() { const e = n.gm?.crypto || n.gm?.msCrypto let t, r = 0 return ( e && e.getRandomValues && (t = e.getRandomValues(new Uint8Array(30))), i .split('') .map((e) => 'x' === e ? o(t, r++).toString(16) : 'y' === e ? ((3 & o()) | 8).toString(16) : e ) .join('') ) } function s(e) { const t = n.gm?.crypto || n.gm?.msCrypto let r, i = 0 t && t.getRandomValues && (r = t.getRandomValues(new Uint8Array(e))) const a = [] for (var s = 0; s < e; s++) a.push(o(r, i++).toString(16)) return a.join('') } function c() { return s(16) } function u() { return s(32) } }, 2614: (e, t, r) => { 'use strict' r.d(t, { BB: () => a, H3: () => n, g: () => u, iL: () => c, tS: () => s, uh: () => i, wk: () => o, }) const n = 'NRBA', i = 'SESSION', o = 144e5, a = 18e5, s = { STARTED: 'session-started', PAUSE: 'session-pause', RESET: 'session-reset', RESUME: 'session-resume', UPDATE: 'session-update', }, c = { SAME_TAB: 'same-tab', CROSS_TAB: 'cross-tab' }, u = { OFF: 0, FULL: 1, ERROR: 2 } }, 1863: (e, t, r) => { 'use strict' function n() { return Math.floor(performance.now()) } r.d(t, { t: () => n }) }, 7485: (e, t, r) => { 'use strict' r.d(t, { D: () => i }) var n = r(6154) function i(e) { if (0 === (e || '').indexOf('data:')) return { protocol: 'data' } try { const t = new URL(e, location.href), r = { port: t.port, hostname: t.hostname, pathname: t.pathname, search: t.search, protocol: t.protocol.slice(0, t.protocol.indexOf(':')), sameOrigin: t.protocol === n.gm?.location?.protocol && t.host === n.gm?.location?.host, } return ( (r.port && '' !== r.port) || ('http:' === t.protocol && (r.port = '80'), 'https:' === t.protocol && (r.port = '443')), r.pathname && '' !== r.pathname ? r.pathname.startsWith('/') || (r.pathname = '/'.concat(r.pathname)) : (r.pathname = '/'), r ) } catch (e) { return {} } } }, 944: (e, t, r) => { 'use strict' function n(e, t) { 'function' == typeof console.debug && console.debug( 'New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#'.concat( e ), t ) } r.d(t, { R: () => n }) }, 5701: (e, t, r) => { 'use strict' r.d(t, { B: () => a, t: () => s }) var n = r(7836), i = r(3241) const o = new Set(), a = {} function s(e, t) { const r = n.ee.get(t) ;(a[t] ??= {}), e && 'object' == typeof e && (o.has(t) || (r.emit('rumresp', [e]), (a[t] = e), o.add(t), (0, i.W)({ agentIdentifier: t, loaded: !0, type: 'lifecycle', name: 'load', feature: void 0, data: e, }))) } }, 8990: (e, t, r) => { 'use strict' r.d(t, { I: () => i }) var n = Object.prototype.hasOwnProperty function i(e, t, r) { if (n.call(e, t)) return e[t] var i = r() if (Object.defineProperty && Object.keys) try { return ( Object.defineProperty(e, t, { value: i, writable: !0, enumerable: !1, }), i ) } catch (e) {} return (e[t] = i), i } }, 6389: (e, t, r) => { 'use strict' function n(e, t = 500, r = {}) { const n = r?.leading || !1 let i return (...r) => { n && void 0 === i && (e.apply(this, r), (i = setTimeout(() => { i = clearTimeout(i) }, t))), n || (clearTimeout(i), (i = setTimeout(() => { e.apply(this, r) }, t))) } } function i(e) { let t = !1 return (...r) => { t || ((t = !0), e.apply(this, r)) } } r.d(t, { J: () => i, s: () => n }) }, 3304: (e, t, r) => { 'use strict' r.d(t, { A: () => o }) var n = r(7836) const i = () => { const e = new WeakSet() return (t, r) => { if ('object' == typeof r && null !== r) { if (e.has(r)) return e.add(r) } return r } } function o(e) { try { return JSON.stringify(e, i()) ?? '' } catch (e) { try { n.ee.emit('internal-error', [e]) } catch (e) {} return '' } } }, 5289: (e, t, r) => { 'use strict' r.d(t, { GG: () => o, sB: () => a }) var n = r(3878) function i() { return ( 'undefined' == typeof document || 'complete' === document.readyState ) } function o(e, t) { if (i()) return e() ;(0, n.sp)('load', e, t) } function a(e) { if (i()) return e() ;(0, n.DD)('DOMContentLoaded', e) } }, 384: (e, t, r) => { 'use strict' r.d(t, { NT: () => o, US: () => d, Zm: () => a, bQ: () => c, dV: () => s, nY: () => u, pV: () => l, }) var n = r(6154), i = r(1863) const o = { beacon: 'bam.nr-data.net', errorBeacon: 'bam.nr-data.net' } function a() { return ( n.gm.NREUM || (n.gm.NREUM = {}), void 0 === n.gm.newrelic && (n.gm.newrelic = n.gm.NREUM), n.gm.NREUM ) } function s() { let e = a() return ( e.o || (e.o = { ST: n.gm.setTimeout, SI: n.gm.setImmediate, CT: n.gm.clearTimeout, XHR: n.gm.XMLHttpRequest, REQ: n.gm.Request, EV: n.gm.Event, PR: n.gm.Promise, MO: n.gm.MutationObserver, FETCH: n.gm.fetch, WS: n.gm.WebSocket, }), e ) } function c(e, t) { let r = a() ;(r.initializedAgents ??= {}), (t.initializedAt = { ms: (0, i.t)(), date: new Date() }), (r.initializedAgents[e] = t) } function u(e) { let t = a() return t.initializedAgents?.[e] } function d(e, t) { a()[e] = t } function l() { return ( (function () { let e = a() const t = e.info || {} e.info = { beacon: o.beacon, errorBeacon: o.errorBeacon, ...t } })(), (function () { let e = a() const t = e.init || {} e.init = { ...t } })(), s(), (function () { let e = a() const t = e.loader_config || {} e.loader_config = { ...t } })(), a() ) } }, 2843: (e, t, r) => { 'use strict' r.d(t, { u: () => i }) var n = r(3878) function i(e, t = !1, r, i) { ;(0, n.DD)( 'visibilitychange', function () { if (t) return void ('hidden' === document.visibilityState && e()) e(document.visibilityState) }, r, i ) } }, 8139: (e, t, r) => { 'use strict' r.d(t, { u: () => f }) var n = r(7836), i = r(3434), o = r(8990), a = r(6154) const s = {}, c = a.gm.XMLHttpRequest, u = 'addEventListener', d = 'removeEventListener', l = 'nr@wrapped:'.concat(n.P) function f(e) { var t = (function (e) { return (e || n.ee).get('events') })(e) if (s[t.debugId]++) return t s[t.debugId] = 1 var r = (0, i.YM)(t, !0) function f(e) { r.inPlace(e, [u, d], '-', p) } function p(e, t) { return e[1] } return ( 'getPrototypeOf' in Object && (a.RI && h(document, f), c && h(c.prototype, f), h(a.gm, f)), t.on(u + '-start', function (e, t) { var n = e[1] if ( null !== n && ('function' == typeof n || 'object' == typeof n) ) { var i = (0, o.I)(n, l, function () { var e = { object: function () { if ('function' != typeof n.handleEvent) return return n.handleEvent.apply(n, arguments) }, function: n, }[typeof n] return e ? r(e, 'fn-', null, e.name || 'anonymous') : n }) this.wrapped = e[1] = i } }), t.on(d + '-start', function (e) { e[1] = this.wrapped || e[1] }), t ) } function h(e, t, ...r) { let n = e for ( ; 'object' == typeof n && !Object.prototype.hasOwnProperty.call(n, u); ) n = Object.getPrototypeOf(n) n && t(n, ...r) } }, 3434: (e, t, r) => { 'use strict' r.d(t, { Jt: () => o, YM: () => c }) var n = r(7836), i = r(5607) const o = 'nr@original:'.concat(i.W) var a = Object.prototype.hasOwnProperty, s = !1 function c(e, t) { return ( e || (e = n.ee), (r.inPlace = function (e, t, n, i, o) { n || (n = '') const a = '-' === n.charAt(0) for (let s = 0; s < t.length; s++) { const c = t[s], u = e[c] d(u) || (e[c] = r(u, a ? c + n : n, i, c, o)) } }), (r.flag = o), r ) function r(t, r, n, s, c) { return d(t) ? t : (r || (r = ''), (nrWrapper[o] = t), (function (e, t, r) { if (Object.defineProperty && Object.keys) try { return ( Object.keys(e).forEach(function (r) { Object.defineProperty(t, r, { get: function () { return e[r] }, set: function (t) { return (e[r] = t), t }, }) }), t ) } catch (e) { u([e], r) } for (var n in e) a.call(e, n) && (t[n] = e[n]) })(t, nrWrapper, e), nrWrapper) function nrWrapper() { var o, a, d, l try { ;(a = this), (o = [...arguments]), (d = 'function' == typeof n ? n(o, a) : n || {}) } catch (t) { u([t, '', [o, a, s], d], e) } i(r + 'start', [o, a, s], d, c) try { return (l = t.apply(a, o)) } catch (e) { throw (i(r + 'err', [o, a, e], d, c), e) } finally { i(r + 'end', [o, a, l], d, c) } } } function i(r, n, i, o) { if (!s || t) { var a = s s = !0 try { e.emit(r, n, i, t, o) } catch (t) { u([t, r, n, i], e) } s = a } } } function u(e, t) { t || (t = n.ee) try { t.emit('internal-error', e) } catch (e) {} } function d(e) { return !(e && 'function' == typeof e && e.apply && !e[o]) } }, 9414: (e, t, r) => { 'use strict' r.d(t, { J: () => c }) var n = r(7836), i = r(2646), o = r(944), a = r(3434) const s = new Map() function c(e, t, r, c) { if ( 'object' != typeof t || !t || 'string' != typeof r || !r || 'function' != typeof t[r] ) return (0, o.R)(29) const u = (function (e) { return (e || n.ee).get('logger') })(e), d = (0, a.YM)(u), l = new i.y(n.P) ;(l.level = c.level), (l.customAttributes = c.customAttributes) const f = t[r]?.[a.Jt] || t[r] return ( s.set(f, l), d.inPlace(t, [r], 'wrap-logger-', () => s.get(f)), u ) } }, 9300: (e, t, r) => { 'use strict' r.d(t, { T: () => n }) const n = r(860).K7.ajax }, 3333: (e, t, r) => { 'use strict' r.d(t, { $v: () => u, TZ: () => n, Zp: () => i, kd: () => c, mq: () => s, nf: () => a, qN: () => o, }) const n = r(860).K7.genericEvents, i = ['auxclick', 'click', 'copy', 'keydown', 'paste', 'scrollend'], o = ['focus', 'blur'], a = 4, s = 1e3, c = ['PageAction', 'UserAction', 'BrowserPerformance'], u = { MARKS: 'experimental.marks', MEASURES: 'experimental.measures', RESOURCES: 'experimental.resources', } }, 6774: (e, t, r) => { 'use strict' r.d(t, { T: () => n }) const n = r(860).K7.jserrors }, 993: (e, t, r) => { 'use strict' r.d(t, { A$: () => o, ET: () => a, TZ: () => s, p_: () => i }) var n = r(860) const i = { ERROR: 'ERROR', WARN: 'WARN', INFO: 'INFO', DEBUG: 'DEBUG', TRACE: 'TRACE', }, o = { OFF: 0, ERROR: 1, WARN: 2, INFO: 3, DEBUG: 4, TRACE: 5 }, a = 'log', s = n.K7.logging }, 3785: (e, t, r) => { 'use strict' r.d(t, { R: () => c, b: () => u }) var n = r(9908), i = r(1863), o = r(860), a = r(8154), s = r(993) function c(e, t, r = {}, c = s.p_.INFO) { ;(0, n.p)( a.xV, ['API/logging/'.concat(c.toLowerCase(), '/called')], void 0, o.K7.metrics, e ), (0, n.p)(s.ET, [(0, i.t)(), t, r, c], void 0, o.K7.logging, e) } function u(e) { return ( 'string' == typeof e && Object.values(s.p_).some((t) => t === e.toUpperCase().trim()) ) } }, 8154: (e, t, r) => { 'use strict' r.d(t, { z_: () => o, XG: () => s, TZ: () => n, rs: () => i, xV: () => a, }) r(6154), r(9566), r(384) const n = r(860).K7.metrics, i = 'sm', o = 'cm', a = 'storeSupportabilityMetrics', s = 'storeEventMetrics' }, 6630: (e, t, r) => { 'use strict' r.d(t, { T: () => n }) const n = r(860).K7.pageViewEvent }, 782: (e, t, r) => { 'use strict' r.d(t, { T: () => n }) const n = r(860).K7.pageViewTiming }, 6344: (e, t, r) => { 'use strict' r.d(t, { BB: () => d, G4: () => o, Qb: () => l, TZ: () => i, Ug: () => a, _s: () => s, bc: () => u, yP: () => c, }) var n = r(2614) const i = r(860).K7.sessionReplay, o = { RECORD: 'recordReplay', PAUSE: 'pauseReplay', REPLAY_RUNNING: 'replayRunning', ERROR_DURING_REPLAY: 'errorDuringReplay', }, a = 0.12, s = { DomContentLoaded: 0, Load: 1, FullSnapshot: 2, IncrementalSnapshot: 3, Meta: 4, Custom: 5, }, c = { [n.g.ERROR]: 15e3, [n.g.FULL]: 3e5, [n.g.OFF]: 0 }, u = { RESET: { message: 'Session was reset', sm: 'Reset' }, IMPORT: { message: 'Recorder failed to import', sm: 'Import' }, TOO_MANY: { message: '429: Too Many Requests', sm: 'Too-Many' }, TOO_BIG: { message: 'Payload was too large', sm: 'Too-Big' }, CROSS_TAB: { message: 'Session Entity was set to OFF on another tab', sm: 'Cross-Tab', }, ENTITLEMENTS: { message: 'Session Replay is not allowed and will not be started', sm: 'Entitlement', }, }, d = 5e3, l = { API: 'api' } }, 5270: (e, t, r) => { 'use strict' r.d(t, { Aw: () => c, CT: () => u, SR: () => s, rF: () => d }) var n = r(384), i = r(9417), o = r(7767), a = r(6154) function s(e) { return ( !!(0, n.dV)().o.MO && (0, o.V)(e) && !0 === (0, i.gD)(e, 'session_trace.enabled') ) } function c(e) { return !0 === (0, i.gD)(e, 'session_replay.preload') && s(e) } function u(e, t) { const r = t.correctAbsoluteTimestamp(e) return { originalTimestamp: e, correctedTimestamp: r, timestampDiff: e - r, originTime: a.WN, correctedOriginTime: t.correctedOriginTime, originTimeDiff: Math.floor(a.WN - t.correctedOriginTime), } } function d(e, t) { try { if ('string' == typeof t?.type) { if ('password' === t.type.toLowerCase()) return '*'.repeat(e?.length || 0) if ( void 0 !== t?.dataset?.nrUnmask || t?.classList?.contains('nr-unmask') ) return e } } catch (e) {} return 'string' == typeof e ? e.replace(/[\S]/g, '*') : '*'.repeat(e?.length || 0) } }, 3738: (e, t, r) => { 'use strict' r.d(t, { He: () => i, Kp: () => s, Lc: () => u, Rz: () => d, TZ: () => n, bD: () => o, d3: () => a, jx: () => l, uP: () => c, }) const n = r(860).K7.sessionTrace, i = 'bstResource', o = 'resource', a = '-start', s = '-end', c = 'fn' + a, u = 'fn' + s, d = 'pushState', l = 1e3 }, 3962: (e, t, r) => { 'use strict' r.d(t, { AM: () => o, O2: () => c, Qu: () => u, TZ: () => s, ih: () => d, pP: () => a, tC: () => i, }) var n = r(860) const i = ['click', 'keydown', 'submit', 'popstate'], o = 'api', a = 'initialPageLoad', s = n.K7.softNav, c = { INITIAL_PAGE_LOAD: '', ROUTE_CHANGE: 1, UNSPECIFIED: 2 }, u = { INTERACTION: 1, AJAX: 2, CUSTOM_END: 3, CUSTOM_TRACER: 4 }, d = { IP: 'in progress', FIN: 'finished', CAN: 'cancelled' } }, 7378: (e, t, r) => { 'use strict' r.d(t, { $p: () => x, BR: () => b, Kp: () => R, L3: () => y, Lc: () => c, NC: () => o, SG: () => d, TZ: () => i, U6: () => p, UT: () => m, d3: () => w, dT: () => f, e5: () => A, gx: () => v, l9: () => l, oW: () => h, op: () => g, rw: () => u, tH: () => T, uP: () => s, wW: () => E, xq: () => a, }) var n = r(384) const i = r(860).K7.spa, o = ['click', 'submit', 'keypress', 'keydown', 'keyup', 'change'], a = 999, s = 'fn-start', c = 'fn-end', u = 'cb-start', d = 'api-ixn-', l = 'remaining', f = 'interaction', h = 'spaNode', p = 'jsonpNode', g = 'fetch-start', m = 'fetch-done', v = 'fetch-body-', b = 'jsonp-end', y = (0, n.dV)().o.ST, w = '-start', R = '-end', x = '-body', E = 'cb' + R, A = 'jsTime', T = 'fetch' }, 4234: (e, t, r) => { 'use strict' r.d(t, { W: () => o }) var n = r(7836), i = r(1687) class o { constructor(e, t) { ;(this.agentIdentifier = e), (this.ee = n.ee.get(e)), (this.featureName = t), (this.blocked = !1) } deregisterDrain() { ;(0, i.x3)(this.agentIdentifier, this.featureName) } } }, 7767: (e, t, r) => { 'use strict' r.d(t, { V: () => o }) var n = r(9417), i = r(6154) const o = (e) => i.RI && !0 === (0, n.gD)(e, 'privacy.cookies_enabled') }, 8969: (e, t, r) => { 'use strict' r.d(t, { j: () => I }) var n = r(860), i = r(2555), o = r(3371), a = r(9908), s = r(7836), c = r(1687), u = r(5289), d = r(6154), l = r(944), f = r(8154), h = r(384), p = r(6344) const g = [ 'setErrorHandler', 'finished', 'addToTrace', 'addRelease', 'recordCustomEvent', 'addPageAction', 'setCurrentRouteName', 'setPageViewName', 'setCustomAttribute', 'interaction', 'noticeError', 'setUserId', 'setApplicationVersion', 'start', p.G4.RECORD, p.G4.PAUSE, 'log', 'wrapLogger', ], m = ['setErrorHandler', 'finished', 'addToTrace', 'addRelease'] var v = r(1863), b = r(2614), y = r(993), w = r(3785), R = r(9414), x = r(3241), E = r(5701) function A() { const e = (0, h.pV)() g.forEach((t) => { e[t] = (...r) => (function (t, ...r) { let n = [] return ( Object.values(e.initializedAgents).forEach((e) => { e && e.api ? e.exposed && e.api[t] && n.push(e.api[t](...r)) : (0, l.R)(38, t) }), n.length > 1 ? n : n[0] ) })(t, ...r) }) } const T = {} var S = r(9417), N = r(5603) const _ = (e) => { const t = e.startsWith('http') ;(e += '/'), (r.p = t ? e : 'https://' + e) } let O = !1 function I(e, t = {}, g, I) { let { init: P, info: j, loader_config: C, runtime: k = {}, exposed: L = !0, } = t k.loaderType = g const H = (0, h.pV)() j || ((P = H.init), (j = H.info), (C = H.loader_config)), (0, S.xN)(e.agentIdentifier, P || {}), (0, N.a)(e.agentIdentifier, C || {}), (j.jsAttributes ??= {}), d.bv && (j.jsAttributes.isWorker = !0), (0, i.x1)(e.agentIdentifier, j) const M = (0, S.D0)(e.agentIdentifier), D = [j.beacon, j.errorBeacon] O || (M.proxy.assets && (_(M.proxy.assets), D.push(M.proxy.assets)), M.proxy.beacon && D.push(M.proxy.beacon), A(), (0, h.US)('activatedFeatures', E.B), (e.runSoftNavOverSpa &&= !0 === M.soft_navigations.enabled && M.feature_flags.includes('soft_nav'))), (k.denyList = [ ...(M.ajax.deny_list || []), ...(M.ajax.block_internal ? D : []), ]), (k.ptid = e.agentIdentifier), (0, o.V)(e.agentIdentifier, k), (e.ee = s.ee.get(e.agentIdentifier)), void 0 === e.api && (e.api = (function (e, t, h = !1) { t || (0, c.Ak)(e, 'api') const g = {} var A = s.ee.get(e), S = A.get('tracer') ;(T[e] = b.g.OFF), A.on(p.G4.REPLAY_RUNNING, (t) => { T[e] = t }) var N = 'api-', _ = N + 'ixn-' function O(t, r, n, o) { const a = (0, i.Vp)(e) return ( null === r ? delete a.jsAttributes[t] : (0, i.x1)(e, { ...a, jsAttributes: { ...a.jsAttributes, [t]: r }, }), j(N, n, !0, o || null === r ? 'session' : void 0)(t, r) ) } function I() {} ;(g.log = function ( e, { customAttributes: t = {}, level: r = y.p_.INFO } = {} ) { ;(0, a.p)(f.xV, ['API/log/called'], void 0, n.K7.metrics, A), (0, w.R)(A, e, t, r) }), (g.wrapLogger = ( e, t, { customAttributes: r = {}, level: i = y.p_.INFO } = {} ) => { ;(0, a.p)( f.xV, ['API/wrapLogger/called'], void 0, n.K7.metrics, A ), (0, R.J)(A, e, t, { customAttributes: r, level: i }) }), m.forEach((e) => { g[e] = j(N, e, !0, 'api') }), (g.addPageAction = j( N, 'addPageAction', !0, n.K7.genericEvents )), (g.recordCustomEvent = j( N, 'recordCustomEvent', !0, n.K7.genericEvents )), (g.setPageViewName = function (t, r) { if ('string' == typeof t) return ( '/' !== t.charAt(0) && (t = '/' + t), ((0, o.f)(e).customTransaction = (r || 'http://custom.transaction') + t), j(N, 'setPageViewName', !0)() ) }), (g.setCustomAttribute = function (e, t, r = !1) { if ('string' == typeof e) { if ( ['string', 'number', 'boolean'].includes(typeof t) || null === t ) return O(e, t, 'setCustomAttribute', r) ;(0, l.R)(40, typeof t) } else (0, l.R)(39, typeof e) }), (g.setUserId = function (e) { if ('string' == typeof e || null === e) return O('enduser.id', e, 'setUserId', !0) ;(0, l.R)(41, typeof e) }), (g.setApplicationVersion = function (e) { if ('string' == typeof e || null === e) return O( 'application.version', e, 'setApplicationVersion', !1 ) ;(0, l.R)(42, typeof e) }), (g.start = () => { try { ;(0, a.p)( f.xV, ['API/start/called'], void 0, n.K7.metrics, A ), A.emit('manual-start-all') } catch (e) { ;(0, l.R)(23, e) } }), (g[p.G4.RECORD] = function () { ;(0, a.p)( f.xV, ['API/recordReplay/called'], void 0, n.K7.metrics, A ), (0, a.p)(p.G4.RECORD, [], void 0, n.K7.sessionReplay, A) }), (g[p.G4.PAUSE] = function () { ;(0, a.p)( f.xV, ['API/pauseReplay/called'], void 0, n.K7.metrics, A ), (0, a.p)(p.G4.PAUSE, [], void 0, n.K7.sessionReplay, A) }), (g.interaction = function (e) { return new I().get('object' == typeof e ? e : {}) }) const P = (I.prototype = { createTracer: function (e, t) { var r = {}, i = this, o = 'function' == typeof t return ( (0, a.p)( f.xV, ['API/createTracer/called'], void 0, n.K7.metrics, A ), h || (0, a.p)( _ + 'tracer', [(0, v.t)(), e, r], i, n.K7.spa, A ), function () { if ( (S.emit( (o ? '' : 'no-') + 'fn-start', [(0, v.t)(), i, o], r ), o) ) try { return t.apply(this, arguments) } catch (e) { const t = 'string' == typeof e ? new Error(e) : e throw (S.emit('fn-err', [arguments, this, t], r), t) } finally { S.emit('fn-end', [(0, v.t)()], r) } } ) }, }) function j(t, r, i, o) { return function () { return ( (0, a.p)( f.xV, ['API/' + r + '/called'], void 0, n.K7.metrics, A ), (0, x.W)({ agentIdentifier: e, loaded: !!E.B?.[e], type: 'data', name: 'api', feature: t + r, data: { notSpa: i, bufferGroup: o }, }), o && (0, a.p)( t + r, [i ? (0, v.t)() : performance.now(), ...arguments], i ? null : this, o, A ), i ? void 0 : this ) } } function C() { r.e(478) .then(r.bind(r, 8778)) .then(({ setAPI: t }) => { t(e), (0, c.Ze)(e, 'api') }) .catch((e) => { ;(0, l.R)(27, e), A.abort() }) } return ( [ 'actionText', 'setName', 'setAttribute', 'save', 'ignore', 'onEnd', 'getContext', 'end', 'get', ].forEach((e) => { P[e] = j(_, e, void 0, h ? n.K7.softNav : n.K7.spa) }), (g.setCurrentRouteName = h ? j(_, 'routeName', void 0, n.K7.softNav) : j(N, 'routeName', !0, n.K7.spa)), (g.noticeError = function (t, r) { 'string' == typeof t && (t = new Error(t)), (0, a.p)( f.xV, ['API/noticeError/called'], void 0, n.K7.metrics, A ), (0, a.p)( 'err', [t, (0, v.t)(), !1, r, !!T[e]], void 0, n.K7.jserrors, A ) }), d.RI ? (0, u.GG)(() => C(), !0) : C(), g ) })(e.agentIdentifier, I, e.runSoftNavOverSpa)), void 0 === e.exposed && (e.exposed = L), O || (0, x.W)({ agentIdentifier: e.agentIdentifier, loaded: !!E.B?.[e.agentIdentifier], type: 'lifecycle', name: 'initialize', feature: void 0, data: { init: M, info: j, loader_config: C, runtime: k }, }), (O = !0) } }, 8374: (e, t, r) => { r.nc = (() => { try { return document?.currentScript?.nonce } catch (e) {} return '' })() }, 860: (e, t, r) => { 'use strict' r.d(t, { $J: () => d, K7: () => c, P3: () => u, XX: () => i, Yy: () => s, df: () => o, qY: () => n, v4: () => a, }) const n = 'events', i = 'jserrors', o = 'browser/blobs', a = 'rum', s = 'browser/logs', c = { ajax: 'ajax', genericEvents: 'generic_events', jserrors: i, logging: 'logging', metrics: 'metrics', pageAction: 'page_action', pageViewEvent: 'page_view_event', pageViewTiming: 'page_view_timing', sessionReplay: 'session_replay', sessionTrace: 'session_trace', softNav: 'soft_navigations', spa: 'spa', }, u = { [c.pageViewEvent]: 1, [c.pageViewTiming]: 2, [c.metrics]: 3, [c.jserrors]: 4, [c.spa]: 5, [c.ajax]: 6, [c.sessionTrace]: 7, [c.softNav]: 8, [c.sessionReplay]: 9, [c.logging]: 10, [c.genericEvents]: 11, }, d = { [c.pageViewEvent]: a, [c.pageViewTiming]: n, [c.ajax]: n, [c.spa]: n, [c.softNav]: n, [c.metrics]: i, [c.jserrors]: i, [c.sessionTrace]: o, [c.sessionReplay]: o, [c.logging]: s, [c.genericEvents]: 'ins', } }, }, n = {} function i(e) { var t = n[e] if (void 0 !== t) return t.exports var o = (n[e] = { exports: {} }) return r[e](o, o.exports, i), o.exports } ;(i.m = r), (i.d = (e, t) => { for (var r in t) i.o(t, r) && !i.o(e, r) && Object.defineProperty(e, r, { enumerable: !0, get: t[r] }) }), (i.f = {}), (i.e = (e) => Promise.all(Object.keys(i.f).reduce((t, r) => (i.f[r](e, t), t), []))), (i.u = (e) => ({ 212: 'nr-spa-compressor', 249: 'nr-spa-recorder', 478: 'nr-spa' }[e] + '-1.285.0.min.js')), (i.o = (e, t) => Object.prototype.hasOwnProperty.call(e, t)), (e = {}), (t = 'NRBA-1.285.0.PROD:'), (i.l = (r, n, o, a) => { if (e[r]) e[r].push(n) else { var s, c if (void 0 !== o) for ( var u = document.getElementsByTagName('script'), d = 0; d < u.length; d++ ) { var l = u[d] if ( l.getAttribute('src') == r || l.getAttribute('data-webpack') == t + o ) { s = l break } } if (!s) { c = !0 var f = { 478: 'sha512-73OmviyU40lnC5NZHvj5egb1Dktz4of17DYc4nbj2RduD/YSRadVPKgqV4pTV++UKRfMh1kiyzvZ3EZ9+nCVRA==', 249: 'sha512-K0uLsDVOs99bSE/U1/+N3dF9ugBMgNxv9bGCDosl/OYQ9Vbh3OEiiDdoeJ2Jyez+MV++R54r9pGP4l89pkOgrw==', 212: 'sha512-xpg2N/nVV3R+2dh1bNPkgU4MdEfsSknhvWWYRI9zgj8nuzl1HP8n4T1tr6iNK7k+LC8m/kDrZH58sW6X5daNDQ==', } ;((s = document.createElement('script')).charset = 'utf-8'), (s.timeout = 120), i.nc && s.setAttribute('nonce', i.nc), s.setAttribute('data-webpack', t + o), (s.src = r), 0 !== s.src.indexOf(window.location.origin + '/') && (s.crossOrigin = 'anonymous'), f[a] && (s.integrity = f[a]) } e[r] = [n] var h = (t, n) => { ;(s.onerror = s.onload = null), clearTimeout(p) var i = e[r] if ( (delete e[r], s.parentNode && s.parentNode.removeChild(s), i && i.forEach((e) => e(n)), t) ) return t(n) }, p = setTimeout( h.bind(null, void 0, { type: 'timeout', target: s }), 12e4 ) ;(s.onerror = h.bind(null, s.onerror)), (s.onload = h.bind(null, s.onload)), c && document.head.appendChild(s) } }), (i.r = (e) => { 'undefined' != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, { value: 'Module' }), Object.defineProperty(e, '__esModule', { value: !0 }) }), (i.p = 'https://js-agent.newrelic.com/'), (() => { var e = { 38: 0, 788: 0 } i.f.j = (t, r) => { var n = i.o(e, t) ? e[t] : void 0 if (0 !== n) if (n) r.push(n[2]) else { var o = new Promise((r, i) => (n = e[t] = [r, i])) r.push((n[2] = o)) var a = i.p + i.u(t), s = new Error() i.l( a, (r) => { if (i.o(e, t) && (0 !== (n = e[t]) && (e[t] = void 0), n)) { var o = r && ('load' === r.type ? 'missing' : r.type), a = r && r.target && r.target.src ;(s.message = 'Loading chunk ' + t + ' failed.\n(' + o + ': ' + a + ')'), (s.name = 'ChunkLoadError'), (s.type = o), (s.request = a), n[1](s) } }, 'chunk-' + t, t ) } } var t = (t, r) => { var n, o, [a, s, c] = r, u = 0 if (a.some((t) => 0 !== e[t])) { for (n in s) i.o(s, n) && (i.m[n] = s[n]) if (c) c(i) } for (t && t(r); u < a.length; u++) (o = a[u]), i.o(e, o) && e[o] && e[o][0](), (e[o] = 0) }, r = (self['webpackChunk:NRBA-1.285.0.PROD'] = self['webpackChunk:NRBA-1.285.0.PROD'] || []) r.forEach(t.bind(null, 0)), (r.push = t.bind(null, r.push.bind(r))) })(), (() => { 'use strict' i(8374) var e = i(944), t = i(6344), r = i(9566) class n { agentIdentifier constructor() { this.agentIdentifier = (0, r.LA)(16) } #e(t, ...r) { if ('function' == typeof this.api?.[t]) return this.api[t](...r) ;(0, e.R)(35, t) } addPageAction(e, t) { return this.#e('addPageAction', e, t) } recordCustomEvent(e, t) { return this.#e('recordCustomEvent', e, t) } setPageViewName(e, t) { return this.#e('setPageViewName', e, t) } setCustomAttribute(e, t, r) { return this.#e('setCustomAttribute', e, t, r) } noticeError(e, t) { return this.#e('noticeError', e, t) } setUserId(e) { return this.#e('setUserId', e) } setApplicationVersion(e) { return this.#e('setApplicationVersion', e) } setErrorHandler(e) { return this.#e('setErrorHandler', e) } addRelease(e, t) { return this.#e('addRelease', e, t) } log(e, t) { return this.#e('log', e, t) } } class o extends n { #e(t, ...r) { if ('function' == typeof this.api?.[t]) return this.api[t](...r) ;(0, e.R)(35, t) } start() { return this.#e('start') } finished(e) { return this.#e('finished', e) } recordReplay() { return this.#e(t.G4.RECORD) } pauseReplay() { return this.#e(t.G4.PAUSE) } addToTrace(e) { return this.#e('addToTrace', e) } setCurrentRouteName(e) { return this.#e('setCurrentRouteName', e) } interaction() { return this.#e('interaction') } wrapLogger(e, t, r) { return this.#e('wrapLogger', e, t, r) } } var a = i(860), s = i(9417) const c = Object.values(a.K7) function u(e) { const t = {} return ( c.forEach((r) => { t[r] = (function (e, t) { return !0 === (0, s.gD)(t, ''.concat(e, '.enabled')) })(r, e) }), t ) } var d = i(8969) var l = i(1687), f = i(4234), h = i(5289), p = i(6154), g = i(5270), m = i(7767), v = i(6389) class b extends f.W { constructor(e, t, r = !0) { super(e.agentIdentifier, t), (this.auto = r), (this.abortHandler = void 0), (this.featAggregate = void 0), (this.onAggregateImported = void 0), !1 === e.init[this.featureName].autoStart && (this.auto = !1), this.auto ? (0, l.Ak)(e.agentIdentifier, t) : this.ee.on( 'manual-start-all', (0, v.J)(() => { ;(0, l.Ak)(e.agentIdentifier, this.featureName), (this.auto = !0), this.importAggregator(e) }) ) } importAggregator(t, r = {}) { if (this.featAggregate || !this.auto) return let n this.onAggregateImported = new Promise((e) => { n = e }) const o = async () => { let o try { if ((0, m.V)(this.agentIdentifier)) { const { setupAgentSession: e } = await i .e(478) .then(i.bind(i, 6526)) o = e(t) } } catch (t) { ;(0, e.R)(20, t), this.ee.emit('internal-error', [t]), this.featureName === a.K7.sessionReplay && this.abortHandler?.() } try { if (!this.#t(this.featureName, o)) return ( (0, l.Ze)(this.agentIdentifier, this.featureName), void n(!1) ) const { lazyFeatureLoader: e } = await i .e(478) .then(i.bind(i, 6103)), { Aggregate: a } = await e(this.featureName, 'aggregate') ;(this.featAggregate = new a(t, r)), t.runtime.harvester.initializedAggregates.push( this.featAggregate ), n(!0) } catch (t) { ;(0, e.R)(34, t), this.abortHandler?.(), (0, l.Ze)(this.agentIdentifier, this.featureName, !0), n(!1), this.ee && this.ee.abort() } } p.RI ? (0, h.GG)(() => o(), !0) : o() } #t(e, t) { switch (e) { case a.K7.sessionReplay: return (0, g.SR)(this.agentIdentifier) && !!t case a.K7.sessionTrace: return !!t default: return !0 } } } var y = i(6630) class w extends b { static featureName = y.T constructor(e, t = !0) { super(e, y.T, t), this.importAggregator(e) } } var R = i(384) var x = i(9908), E = i(2843), A = i(3878), T = i(782), S = i(1863) class N extends b { static featureName = T.T constructor(e, t = !0) { super(e, T.T, t), p.RI && ((0, E.u)( () => (0, x.p)('docHidden', [(0, S.t)()], void 0, T.T, this.ee), !0 ), (0, A.sp)('pagehide', () => (0, x.p)('winPagehide', [(0, S.t)()], void 0, T.T, this.ee) ), this.importAggregator(e)) } } var _ = i(8154) class O extends b { static featureName = _.TZ constructor(e, t = !0) { super(e, _.TZ, t), p.RI && document.addEventListener('securitypolicyviolation', (e) => { ;(0, x.p)( _.xV, ['Generic/CSPViolation/Detected'], void 0, this.featureName, this.ee ) }), this.importAggregator(e) } } var I = i(6774), P = i(3304) class j { constructor(e, t, r, n, i) { ;(this.name = 'UncaughtError'), (this.message = 'string' == typeof e ? e : (0, P.A)(e)), (this.sourceURL = t), (this.line = r), (this.column = n), (this.__newrelic = i) } } function C(e) { return H(e) ? e : new j( void 0 !== e?.message ? e.message : e, e?.filename || e?.sourceURL, e?.lineno || e?.line, e?.colno || e?.col, e?.__newrelic ) } function k(e) { const t = 'Unhandled Promise Rejection: ' if (!e?.reason) return if (H(e.reason)) { try { e.reason.message.startsWith(t) || (e.reason.message = t + e.reason.message) } catch (e) {} return C(e.reason) } const r = C(e.reason) return (r.message || '').startsWith(t) || (r.message = t + r.message), r } function L(e) { if ( e.error instanceof SyntaxError && !/:\d+$/.test(e.error.stack?.trim()) ) { const t = new j( e.message, e.filename, e.lineno, e.colno, e.error.__newrelic ) return (t.name = SyntaxError.name), t } return H(e.error) ? e.error : C(e) } function H(e) { return e instanceof Error && !!e.stack } class M extends b { static featureName = I.T #r = !1 constructor(e, r = !0) { super(e, I.T, r) try { this.removeOnAbort = new AbortController() } catch (e) {} this.ee.on('internal-error', (e, t) => { this.abortHandler && (0, x.p)( 'ierr', [C(e), (0, S.t)(), !0, {}, this.#r, t], void 0, this.featureName, this.ee ) }), this.ee.on(t.G4.REPLAY_RUNNING, (e) => { this.#r = e }), p.gm.addEventListener( 'unhandledrejection', (e) => { this.abortHandler && (0, x.p)( 'err', [ k(e), (0, S.t)(), !1, { unhandledPromiseRejection: 1 }, this.#r, ], void 0, this.featureName, this.ee ) }, (0, A.jT)(!1, this.removeOnAbort?.signal) ), p.gm.addEventListener( 'error', (e) => { this.abortHandler && (0, x.p)( 'err', [L(e), (0, S.t)(), !1, {}, this.#r], void 0, this.featureName, this.ee ) }, (0, A.jT)(!1, this.removeOnAbort?.signal) ), (this.abortHandler = this.#n), this.importAggregator(e) } #n() { this.removeOnAbort?.abort(), (this.abortHandler = void 0) } } var D = i(8990) let K = 1 const U = 'nr@id' function V(e) { const t = typeof e return !e || ('object' !== t && 'function' !== t) ? -1 : e === p.gm ? 0 : (0, D.I)(e, U, function () { return K++ }) } function G(e) { if ('string' == typeof e && e.length) return e.length if ('object' == typeof e) { if ( 'undefined' != typeof ArrayBuffer && e instanceof ArrayBuffer && e.byteLength ) return e.byteLength if ('undefined' != typeof Blob && e instanceof Blob && e.size) return e.size if (!('undefined' != typeof FormData && e instanceof FormData)) try { return (0, P.A)(e).length } catch (e) { return } } } var F = i(8139), B = i(7836), W = i(3434) const z = {}, q = ['open', 'send'] function Z(t) { var r = t || B.ee const n = (function (e) { return (e || B.ee).get('xhr') })(r) if (void 0 === p.gm.XMLHttpRequest) return n if (z[n.debugId]++) return n ;(z[n.debugId] = 1), (0, F.u)(r) var i = (0, W.YM)(n), o = p.gm.XMLHttpRequest, a = p.gm.MutationObserver, s = p.gm.Promise, c = p.gm.setInterval, u = 'readystatechange', d = [ 'onload', 'onerror', 'onabort', 'onloadstart', 'onloadend', 'onprogress', 'ontimeout', ], l = [], f = (p.gm.XMLHttpRequest = function (t) { const r = new o(t), a = n.context(r) try { n.emit('new-xhr', [r], a), r.addEventListener( u, ((s = a), function () { var e = this e.readyState > 3 && !s.resolved && ((s.resolved = !0), n.emit('xhr-resolved', [], e)), i.inPlace(e, d, 'fn-', y) }), (0, A.jT)(!1) ) } catch (t) { ;(0, e.R)(15, t) try { n.emit('internal-error', [t]) } catch (e) {} } var s return r }) function h(e, t) { i.inPlace(t, ['onreadystatechange'], 'fn-', y) } if ( ((function (e, t) { for (var r in e) t[r] = e[r] })(o, f), (f.prototype = o.prototype), i.inPlace(f.prototype, q, '-xhr-', y), n.on('send-xhr-start', function (e, t) { h(e, t), (function (e) { l.push(e), a && (g ? g.then(b) : c ? c(b) : ((m = -m), (v.data = m))) })(t) }), n.on('open-xhr-start', h), a) ) { var g = s && s.resolve() if (!c && !s) { var m = 1, v = document.createTextNode(m) new a(b).observe(v, { characterData: !0 }) } } else r.on('fn-end', function (e) { ;(e[0] && e[0].type === u) || b() }) function b() { for (var e = 0; e < l.length; e++) h(0, l[e]) l.length && (l = []) } function y(e, t) { return t } return n } var Y = 'fetch-', J = Y + 'body-', X = ['arrayBuffer', 'blob', 'json', 'text', 'formData'], Q = p.gm.Request, ee = p.gm.Response, te = 'prototype' const re = {} function ne(e) { const t = (function (e) { return (e || B.ee).get('fetch') })(e) if (!(Q && ee && p.gm.fetch)) return t if (re[t.debugId]++) return t function r(e, r, n) { var i = e[r] 'function' == typeof i && (e[r] = function () { var e, r = [...arguments], o = {} t.emit(n + 'before-start', [r], o), o[B.P] && o[B.P].dt && (e = o[B.P].dt) var a = i.apply(this, r) return ( t.emit(n + 'start', [r, e], a), a.then( function (e) { return t.emit(n + 'end', [null, e], a), e }, function (e) { throw (t.emit(n + 'end', [e], a), e) } ) ) }) } return ( (re[t.debugId] = 1), X.forEach((e) => { r(Q[te], e, J), r(ee[te], e, J) }), r(p.gm, 'fetch', Y), t.on(Y + 'end', function (e, r) { var n = this if (r) { var i = r.headers.get('content-length') null !== i && (n.rxSize = i), t.emit(Y + 'done', [null, r], n) } else t.emit(Y + 'done', [e], n) }), t ) } var ie = i(7485), oe = i(5603) class ae { constructor(e) { this.agentIdentifier = e } generateTracePayload(e) { if (!this.shouldGenerateTrace(e)) return null var t = (0, oe.o)(this.agentIdentifier) if (!t) return null var n = (t.accountID || '').toString() || null, i = (t.agentID || '').toString() || null, o = (t.trustKey || '').toString() || null if (!n || !i) return null var a = (0, r.ZF)(), s = (0, r.el)(), c = Date.now(), u = { spanId: a, traceId: s, timestamp: c } return ( (e.sameOrigin || (this.isAllowedOrigin(e) && this.useTraceContextHeadersForCors())) && ((u.traceContextParentHeader = this.generateTraceContextParentHeader(a, s)), (u.traceContextStateHeader = this.generateTraceContextStateHeader( a, c, n, i, o ))), ((e.sameOrigin && !this.excludeNewrelicHeader()) || (!e.sameOrigin && this.isAllowedOrigin(e) && this.useNewrelicHeaderForCors())) && (u.newrelicHeader = this.generateTraceHeader(a, s, c, n, i, o)), u ) } generateTraceContextParentHeader(e, t) { return '00-' + t + '-' + e + '-01' } generateTraceContextStateHeader(e, t, r, n, i) { return i + '@nr=0-1-' + r + '-' + n + '-' + e + '----' + t } generateTraceHeader(e, t, r, n, i, o) { if (!('function' == typeof p.gm?.btoa)) return null var a = { v: [0, 1], d: { ty: 'Browser', ac: n, ap: i, id: e, tr: t, ti: r }, } return o && n !== o && (a.d.tk = o), btoa((0, P.A)(a)) } shouldGenerateTrace(e) { return this.isDtEnabled() && this.isAllowedOrigin(e) } isAllowedOrigin(e) { var t = !1, r = {} if ( ((0, s.gD)(this.agentIdentifier, 'distributed_tracing') && (r = (0, s.D0)(this.agentIdentifier).distributed_tracing), e.sameOrigin) ) t = !0 else if (r.allowed_origins instanceof Array) for (var n = 0; n < r.allowed_origins.length; n++) { var i = (0, ie.D)(r.allowed_origins[n]) if ( e.hostname === i.hostname && e.protocol === i.protocol && e.port === i.port ) { t = !0 break } } return t } isDtEnabled() { var e = (0, s.gD)(this.agentIdentifier, 'distributed_tracing') return !!e && !!e.enabled } excludeNewrelicHeader() { var e = (0, s.gD)(this.agentIdentifier, 'distributed_tracing') return !!e && !!e.exclude_newrelic_header } useNewrelicHeaderForCors() { var e = (0, s.gD)(this.agentIdentifier, 'distributed_tracing') return !!e && !1 !== e.cors_use_newrelic_header } useTraceContextHeadersForCors() { var e = (0, s.gD)(this.agentIdentifier, 'distributed_tracing') return !!e && !!e.cors_use_tracecontext_headers } } var se = i(9300), ce = i(7295), ue = ['load', 'error', 'abort', 'timeout'], de = ue.length, le = (0, R.dV)().o.REQ, fe = (0, R.dV)().o.XHR const he = 'X-NewRelic-App-Data' class pe extends b { static featureName = se.T constructor(e, t = !0) { super(e, se.T, t), (this.dt = new ae(e.agentIdentifier)), (this.handler = (e, t, r, n) => (0, x.p)(e, t, r, n, this.ee)) try { const e = { xmlhttprequest: 'xhr', fetch: 'fetch', beacon: 'beacon', } p.gm?.performance?.getEntriesByType('resource').forEach((t) => { if (t.initiatorType in e && 0 !== t.responseStatus) { const r = { status: t.responseStatus }, n = { rxSize: t.transferSize, duration: Math.floor(t.duration), cbTime: 0, } ge(r, t.name), this.handler( 'xhr', [r, n, t.startTime, t.responseEnd, e[t.initiatorType]], void 0, a.K7.ajax ) } }) } catch (e) {} ne(this.ee), Z(this.ee), (function (e, t, r, n) { function i(e) { var t = this ;(t.totalCbs = 0), (t.called = 0), (t.cbTime = 0), (t.end = R), (t.ended = !1), (t.xhrGuids = {}), (t.lastSize = null), (t.loadCaptureCalled = !1), (t.params = this.params || {}), (t.metrics = this.metrics || {}), e.addEventListener( 'load', function (r) { E(t, e) }, (0, A.jT)(!1) ), p.lR || e.addEventListener( 'progress', function (e) { t.lastSize = e.loaded }, (0, A.jT)(!1) ) } function o(e) { ;(this.params = { method: e[0] }), ge(this, e[1]), (this.metrics = {}) } function s(t, r) { e.loader_config.xpid && this.sameOrigin && r.setRequestHeader('X-NewRelic-ID', e.loader_config.xpid) var i = n.generateTracePayload(this.parsedOrigin) if (i) { var o = !1 i.newrelicHeader && (r.setRequestHeader('newrelic', i.newrelicHeader), (o = !0)), i.traceContextParentHeader && (r.setRequestHeader( 'traceparent', i.traceContextParentHeader ), i.traceContextStateHeader && r.setRequestHeader( 'tracestate', i.traceContextStateHeader ), (o = !0)), o && (this.dt = i) } } function c(e, r) { var n = this.metrics, i = e[0], o = this if (n && i) { var a = G(i) a && (n.txSize = a) } ;(this.startTime = (0, S.t)()), (this.body = i), (this.listener = function (e) { try { 'abort' !== e.type || o.loadCaptureCalled || (o.params.aborted = !0), ('load' !== e.type || (o.called === o.totalCbs && (o.onloadCalled || 'function' != typeof r.onload) && 'function' == typeof o.end)) && o.end(r) } catch (e) { try { t.emit('internal-error', [e]) } catch (e) {} } }) for (var s = 0; s < de; s++) r.addEventListener(ue[s], this.listener, (0, A.jT)(!1)) } function u(e, t, r) { ;(this.cbTime += e), t ? (this.onloadCalled = !0) : (this.called += 1), this.called !== this.totalCbs || (!this.onloadCalled && 'function' == typeof r.onload) || 'function' != typeof this.end || this.end(r) } function d(e, t) { var r = '' + V(e) + !!t this.xhrGuids && !this.xhrGuids[r] && ((this.xhrGuids[r] = !0), (this.totalCbs += 1)) } function l(e, t) { var r = '' + V(e) + !!t this.xhrGuids && this.xhrGuids[r] && (delete this.xhrGuids[r], (this.totalCbs -= 1)) } function f() { this.endTime = (0, S.t)() } function h(e, r) { r instanceof fe && 'load' === e[0] && t.emit('xhr-load-added', [e[1], e[2]], r) } function g(e, r) { r instanceof fe && 'load' === e[0] && t.emit('xhr-load-removed', [e[1], e[2]], r) } function m(e, t, r) { t instanceof fe && ('onload' === r && (this.onload = !0), ('load' === (e[0] && e[0].type) || this.onload) && (this.xhrCbStart = (0, S.t)())) } function v(e, r) { this.xhrCbStart && t.emit( 'xhr-cb-time', [(0, S.t)() - this.xhrCbStart, this.onload, r], r ) } function b(e) { var t, r = e[1] || {} if ( ('string' == typeof e[0] ? 0 === (t = e[0]).length && p.RI && (t = '' + p.gm.location.href) : e[0] && e[0].url ? (t = e[0].url) : p.gm?.URL && e[0] && e[0] instanceof URL ? (t = e[0].href) : 'function' == typeof e[0].toString && (t = e[0].toString()), 'string' == typeof t && 0 !== t.length) ) { t && ((this.parsedOrigin = (0, ie.D)(t)), (this.sameOrigin = this.parsedOrigin.sameOrigin)) var i = n.generateTracePayload(this.parsedOrigin) if (i && (i.newrelicHeader || i.traceContextParentHeader)) if (e[0] && e[0].headers) s(e[0].headers, i) && (this.dt = i) else { var o = {} for (var a in r) o[a] = r[a] ;(o.headers = new Headers(r.headers || {})), s(o.headers, i) && (this.dt = i), e.length > 1 ? (e[1] = o) : e.push(o) } } function s(e, t) { var r = !1 return ( t.newrelicHeader && (e.set('newrelic', t.newrelicHeader), (r = !0)), t.traceContextParentHeader && (e.set('traceparent', t.traceContextParentHeader), t.traceContextStateHeader && e.set('tracestate', t.traceContextStateHeader), (r = !0)), r ) } } function y(e, t) { ;(this.params = {}), (this.metrics = {}), (this.startTime = (0, S.t)()), (this.dt = t), e.length >= 1 && (this.target = e[0]), e.length >= 2 && (this.opts = e[1]) var r, n = this.opts || {}, i = this.target 'string' == typeof i ? (r = i) : 'object' == typeof i && i instanceof le ? (r = i.url) : p.gm?.URL && 'object' == typeof i && i instanceof URL && (r = i.href), ge(this, r) var o = ( '' + ((i && i instanceof le && i.method) || n.method || 'GET') ).toUpperCase() ;(this.params.method = o), (this.body = n.body), (this.txSize = G(n.body) || 0) } function w(e, t) { if ( ((this.endTime = (0, S.t)()), this.params || (this.params = {}), (0, ce.iW)(this.params)) ) return let n ;(this.params.status = t ? t.status : 0), 'string' == typeof this.rxSize && this.rxSize.length > 0 && (n = +this.rxSize) const i = { txSize: this.txSize, rxSize: n, duration: (0, S.t)() - this.startTime, } r( 'xhr', [this.params, i, this.startTime, this.endTime, 'fetch'], this, a.K7.ajax ) } function R(e) { const t = this.params, n = this.metrics if (!this.ended) { this.ended = !0 for (let t = 0; t < de; t++) e.removeEventListener(ue[t], this.listener, !1) t.aborted || (0, ce.iW)(t) || ((n.duration = (0, S.t)() - this.startTime), this.loadCaptureCalled || 4 !== e.readyState ? null == t.status && (t.status = 0) : E(this, e), (n.cbTime = this.cbTime), r( 'xhr', [t, n, this.startTime, this.endTime, 'xhr'], this, a.K7.ajax )) } } function E(e, r) { e.params.status = r.status var n = (function (e, t) { var r = e.responseType return 'json' === r && null !== t ? t : 'arraybuffer' === r || 'blob' === r || 'json' === r ? G(e.response) : 'text' === r || '' === r || void 0 === r ? G(e.responseText) : void 0 })(r, e.lastSize) if ( (n && (e.metrics.rxSize = n), e.sameOrigin && r.getAllResponseHeaders().indexOf(he) >= 0) ) { var i = r.getResponseHeader(he) i && ((0, x.p)( _.rs, ['Ajax/CrossApplicationTracing/Header/Seen'], void 0, a.K7.metrics, t ), (e.params.cat = i.split(', ').pop())) } e.loadCaptureCalled = !0 } t.on('new-xhr', i), t.on('open-xhr-start', o), t.on('open-xhr-end', s), t.on('send-xhr-start', c), t.on('xhr-cb-time', u), t.on('xhr-load-added', d), t.on('xhr-load-removed', l), t.on('xhr-resolved', f), t.on('addEventListener-end', h), t.on('removeEventListener-end', g), t.on('fn-end', v), t.on('fetch-before-start', b), t.on('fetch-start', y), t.on('fn-start', m), t.on('fetch-done', w) })(e, this.ee, this.handler, this.dt), this.importAggregator(e) } } function ge(e, t) { var r = (0, ie.D)(t), n = e.params || e ;(n.hostname = r.hostname), (n.port = r.port), (n.protocol = r.protocol), (n.host = r.hostname + ':' + r.port), (n.pathname = r.pathname), (e.parsedOrigin = r), (e.sameOrigin = r.sameOrigin) } const me = {}, ve = ['pushState', 'replaceState'] function be(e) { const t = (function (e) { return (e || B.ee).get('history') })(e) return ( !p.RI || me[t.debugId]++ || ((me[t.debugId] = 1), (0, W.YM)(t).inPlace(window.history, ve, '-')), t ) } var ye = i(3738) const { He: we, bD: Re, d3: xe, Kp: Ee, TZ: Ae, Lc: Te, uP: Se, Rz: Ne, } = ye class _e extends b { static featureName = Ae constructor(e, t = !0) { super(e, Ae, t) if (!(0, m.V)(this.agentIdentifier)) return void this.deregisterDrain() const r = this.ee let n be(r), (this.eventsEE = (0, F.u)(r)), this.eventsEE.on(Se, function (e, t) { this.bstStart = (0, S.t)() }), this.eventsEE.on(Te, function (e, t) { ;(0, x.p)('bst', [e[0], t, this.bstStart, (0, S.t)()], void 0, a.K7.sessionTrace, r) }), r.on(Ne + xe, function (e) { ;(this.time = (0, S.t)()), (this.startPath = location.pathname + location.hash) }), r.on(Ne + Ee, function (e) { ;(0, x.p)('bstHist', [location.pathname + location.hash, this.startPath, this.time], void 0, a.K7.sessionTrace, r) }) try { ;(n = new PerformanceObserver((e) => { const t = e.getEntries() ;(0, x.p)(we, [t], void 0, a.K7.sessionTrace, r) })), n.observe({ type: Re, buffered: !0 }) } catch (e) {} this.importAggregator(e, { resourceObserver: n }) } } var Oe = i(2614) class Ie extends b { static featureName = t.TZ #i #o constructor(e, r = !0) { let n super(e, t.TZ, r), (this.replayRunning = !1), (this.#o = e) try { n = JSON.parse( localStorage.getItem(''.concat(Oe.H3, '_').concat(Oe.uh)) ) } catch (e) {} ;(0, g.SR)(e.agentIdentifier) && this.ee.on(t.G4.RECORD, () => this.#a()), this.#s(n) ? ((this.#i = n?.sessionReplayMode), this.#c()) : this.importAggregator(e), this.ee.on('err', (e) => { this.replayRunning && ((this.errorNoticed = !0), (0, x.p)( t.G4.ERROR_DURING_REPLAY, [e], void 0, this.featureName, this.ee )) }), this.ee.on(t.G4.REPLAY_RUNNING, (e) => { this.replayRunning = e }) } #s(e) { return ( (e && (e.sessionReplayMode === Oe.g.FULL || e.sessionReplayMode === Oe.g.ERROR)) || (0, g.Aw)(this.agentIdentifier) ) } #u = !1 async #c(e) { if (!this.#u) { this.#u = !0 try { const { Recorder: t } = await Promise.all([ i.e(478), i.e(249), ]).then(i.bind(i, 8589)) ;(this.recorder ??= new t({ mode: this.#i, agentIdentifier: this.agentIdentifier, trigger: e, ee: this.ee, agentRef: this.#o, })), this.recorder.startRecording(), (this.abortHandler = this.recorder.stopRecording) } catch (e) {} this.importAggregator(this.#o, { recorder: this.recorder, errorNoticed: this.errorNoticed, }) } } #a() { this.featAggregate ? this.featAggregate.mode !== Oe.g.FULL && this.featAggregate.initializeRecording(Oe.g.FULL, !0) : ((this.#i = Oe.g.FULL), this.#c(t.Qb.API), this.recorder && this.recorder.parent.mode !== Oe.g.FULL && ((this.recorder.parent.mode = Oe.g.FULL), this.recorder.stopRecording(), this.recorder.startRecording(), (this.abortHandler = this.recorder.stopRecording))) } } var Pe = i(3962) class je extends b { static featureName = Pe.TZ constructor(e, t = !0) { if ((super(e, Pe.TZ, t), !p.RI || !(0, R.dV)().o.MO)) return const r = be(this.ee) Pe.tC.forEach((e) => { ;(0, A.sp)( e, (e) => { a(e) }, !0 ) }) const n = () => (0, x.p)( 'newURL', [(0, S.t)(), '' + window.location], void 0, this.featureName, this.ee ) r.on('pushState-end', n), r.on('replaceState-end', n) try { this.removeOnAbort = new AbortController() } catch (e) {} ;(0, A.sp)( 'popstate', (e) => (0, x.p)( 'newURL', [e.timeStamp, '' + window.location], void 0, this.featureName, this.ee ), !0, this.removeOnAbort?.signal ) let i = !1 const o = new ((0, R.dV)().o.MO)((e, t) => { i || ((i = !0), requestAnimationFrame(() => { ;(0, x.p)( 'newDom', [(0, S.t)()], void 0, this.featureName, this.ee ), (i = !1) })) }), a = (0, v.s)( (e) => { ;(0, x.p)('newUIEvent', [e], void 0, this.featureName, this.ee), o.observe(document.body, { attributes: !0, childList: !0, subtree: !0, characterData: !0, }) }, 100, { leading: !0 } ) ;(this.abortHandler = function () { this.removeOnAbort?.abort(), o.disconnect(), (this.abortHandler = void 0) }), this.importAggregator(e, { domObserver: o }) } } var Ce = i(7378) const ke = {}, Le = ['appendChild', 'insertBefore', 'replaceChild'] function He(e) { const t = (function (e) { return (e || B.ee).get('jsonp') })(e) if (!p.RI || ke[t.debugId]) return t ke[t.debugId] = !0 var r = (0, W.YM)(t), n = /[?&](?:callback|cb)=([^&#]+)/, i = /(.*)\.([^.]+)/, o = /^(\w+)(\.|$)(.*)$/ function a(e, t) { if (!e) return t const r = e.match(o), n = r[1] return a(r[3], t[n]) } return ( r.inPlace(Node.prototype, Le, 'dom-'), t.on('dom-start', function (e) { !(function (e) { if ( !e || 'string' != typeof e.nodeName || 'script' !== e.nodeName.toLowerCase() ) return if ('function' != typeof e.addEventListener) return var o = ((s = e.src), (c = s.match(n)), c ? c[1] : null) var s, c if (!o) return var u = (function (e) { var t = e.match(i) if (t && t.length >= 3) return { key: t[2], parent: a(t[1], window) } return { key: e, parent: window } })(o) if ('function' != typeof u.parent[u.key]) return var d = {} function l() { t.emit('jsonp-end', [], d), e.removeEventListener('load', l, (0, A.jT)(!1)), e.removeEventListener('error', f, (0, A.jT)(!1)) } function f() { t.emit('jsonp-error', [], d), t.emit('jsonp-end', [], d), e.removeEventListener('load', l, (0, A.jT)(!1)), e.removeEventListener('error', f, (0, A.jT)(!1)) } r.inPlace(u.parent, [u.key], 'cb-', d), e.addEventListener('load', l, (0, A.jT)(!1)), e.addEventListener('error', f, (0, A.jT)(!1)), t.emit('new-jsonp', [e.src], d) })(e[0]) }), t ) } const Me = {} function De(e) { const t = (function (e) { return (e || B.ee).get('promise') })(e) if (Me[t.debugId]) return t Me[t.debugId] = !0 var r = t.context, n = (0, W.YM)(t), i = p.gm.Promise return ( i && (function () { function e(r) { var o = t.context(), a = n(r, 'executor-', o, null, !1) const s = Reflect.construct(i, [a], e) return ( (t.context(s).getCtx = function () { return o }), s ) } ;(p.gm.Promise = e), Object.defineProperty(e, 'name', { value: 'Promise' }), (e.toString = function () { return i.toString() }), Object.setPrototypeOf(e, i), ['all', 'race'].forEach(function (r) { const n = i[r] e[r] = function (e) { let i = !1 ;[...(e || [])].forEach((e) => { this.resolve(e).then(a('all' === r), a(!1)) }) const o = n.apply(this, arguments) return o function a(e) { return function () { t.emit('propagate', [null, !i], o, !1, !1), (i = i || !e) } } } }), ['resolve', 'reject'].forEach(function (r) { const n = i[r] e[r] = function (e) { const r = n.apply(this, arguments) return e !== r && t.emit('propagate', [e, !0], r, !1, !1), r } }), (e.prototype = i.prototype) const o = i.prototype.then ;(i.prototype.then = function (...e) { var i = this, a = r(i) ;(a.promise = i), (e[0] = n(e[0], 'cb-', a, null, !1)), (e[1] = n(e[1], 'cb-', a, null, !1)) const s = o.apply(this, e) return ( (a.nextPromise = s), t.emit('propagate', [i, !0], s, !1, !1), s ) }), (i.prototype.then[W.Jt] = o), t.on('executor-start', function (e) { ;(e[0] = n(e[0], 'resolve-', this, null, !1)), (e[1] = n(e[1], 'resolve-', this, null, !1)) }), t.on('executor-err', function (e, t, r) { e[1](r) }), t.on('cb-end', function (e, r, n) { t.emit('propagate', [n, !0], this.nextPromise, !1, !1) }), t.on('propagate', function (e, r, n) { ;(this.getCtx && !r) || (this.getCtx = function () { if (e instanceof Promise) var r = t.context(e) return r && r.getCtx ? r.getCtx() : this }) }) })(), t ) } const Ke = {}, Ue = 'setTimeout', Ve = 'setInterval', Ge = 'clearTimeout', Fe = '-start', Be = [Ue, 'setImmediate', Ve, Ge, 'clearImmediate'] function We(e) { const t = (function (e) { return (e || B.ee).get('timer') })(e) if (Ke[t.debugId]++) return t Ke[t.debugId] = 1 var r = (0, W.YM)(t) return ( r.inPlace(p.gm, Be.slice(0, 2), Ue + '-'), r.inPlace(p.gm, Be.slice(2, 3), Ve + '-'), r.inPlace(p.gm, Be.slice(3), Ge + '-'), t.on(Ve + Fe, function (e, t, n) { e[0] = r(e[0], 'fn-', null, n) }), t.on(Ue + Fe, function (e, t, n) { ;(this.method = n), (this.timerDuration = isNaN(e[1]) ? 0 : +e[1]), (e[0] = r(e[0], 'fn-', this, n)) }), t ) } const ze = {} function qe(e) { const t = (function (e) { return (e || B.ee).get('mutation') })(e) if (!p.RI || ze[t.debugId]) return t ze[t.debugId] = !0 var r = (0, W.YM)(t), n = p.gm.MutationObserver return ( n && ((window.MutationObserver = function (e) { return this instanceof n ? new n(r(e, 'fn-')) : n.apply(this, arguments) }), (MutationObserver.prototype = n.prototype)), t ) } const { TZ: Ze, d3: Ye, Kp: Je, $p: Xe, wW: $e, e5: Qe, tH: et, uP: tt, rw: rt, Lc: nt, } = Ce class it extends b { static featureName = Ze constructor(e, t = !0) { if ((super(e, Ze, t), !p.RI)) return try { this.removeOnAbort = new AbortController() } catch (e) {} let r, n = 0 const i = this.ee.get('tracer'), o = He(this.ee), a = De(this.ee), s = We(this.ee), c = Z(this.ee), u = this.ee.get('events'), d = ne(this.ee), l = be(this.ee), f = qe(this.ee) function h(e, t) { l.emit('newURL', ['' + window.location, t]) } function g() { n++, (r = window.location.hash), (this[tt] = (0, S.t)()) } function m() { n--, window.location.hash !== r && h(0, !0) var e = (0, S.t)() ;(this[Qe] = ~~this[Qe] + e - this[tt]), (this[nt] = e) } function v(e, t) { e.on(t, function () { this[t] = (0, S.t)() }) } this.ee.on(tt, g), a.on(rt, g), o.on(rt, g), this.ee.on(nt, m), a.on($e, m), o.on($e, m), this.ee.on('fn-err', (...t) => { t[2]?.__newrelic?.[e.agentIdentifier] || (0, x.p)( 'function-err', [...t], void 0, this.featureName, this.ee ) }), this.ee.buffer([tt, nt, 'xhr-resolved'], this.featureName), u.buffer([tt], this.featureName), s.buffer( ['setTimeout' + Je, 'clearTimeout' + Ye, tt], this.featureName ), c.buffer([tt, 'new-xhr', 'send-xhr' + Ye], this.featureName), d.buffer( [et + Ye, et + '-done', et + Xe + Ye, et + Xe + Je], this.featureName ), l.buffer(['newURL'], this.featureName), f.buffer([tt], this.featureName), a.buffer( ['propagate', rt, $e, 'executor-err', 'resolve' + Ye], this.featureName ), i.buffer([tt, 'no-' + tt], this.featureName), o.buffer( ['new-jsonp', 'cb-start', 'jsonp-error', 'jsonp-end'], this.featureName ), v(d, et + Ye), v(d, et + '-done'), v(o, 'new-jsonp'), v(o, 'jsonp-end'), v(o, 'cb-start'), l.on('pushState-end', h), l.on('replaceState-end', h), window.addEventListener( 'hashchange', h, (0, A.jT)(!0, this.removeOnAbort?.signal) ), window.addEventListener( 'load', h, (0, A.jT)(!0, this.removeOnAbort?.signal) ), window.addEventListener( 'popstate', function () { h(0, n > 1) }, (0, A.jT)(!0, this.removeOnAbort?.signal) ), (this.abortHandler = this.#n), this.importAggregator(e) } #n() { this.removeOnAbort?.abort(), (this.abortHandler = void 0) } } var ot = i(3333) class at extends b { static featureName = ot.TZ constructor(e, t = !0) { super(e, ot.TZ, t) const r = [ e.init.page_action.enabled, e.init.performance.capture_marks, e.init.performance.capture_measures, e.init.user_actions.enabled, e.init.performance.resources.enabled, ] if ( p.RI && (e.init.user_actions.enabled && (ot.Zp.forEach((e) => (0, A.sp)( e, (e) => (0, x.p)('ua', [e], void 0, this.featureName, this.ee), !0 ) ), ot.qN.forEach((e) => { const t = (0, v.s)( (e) => { ;(0, x.p)('ua', [e], void 0, this.featureName, this.ee) }, 500, { leading: !0 } ) ;(0, A.sp)(e, t) })), e.init.performance.resources.enabled && p.gm.PerformanceObserver?.supportedEntryTypes.includes( 'resource' )) ) { new PerformanceObserver((e) => { e.getEntries().forEach((e) => { ;(0, x.p)( 'browserPerformance.resource', [e], void 0, this.featureName, this.ee ) }) }).observe({ type: 'resource', buffered: !0 }) } r.some((e) => e) ? this.importAggregator(e) : this.deregisterDrain() } } var st = i(993), ct = i(3785), ut = i(9414) class dt extends b { static featureName = st.TZ constructor(e, t = !0) { super(e, st.TZ, t) const r = this.ee ;(0, ut.J)(r, p.gm.console, 'log', { level: 'info' }), (0, ut.J)(r, p.gm.console, 'error', { level: 'error' }), (0, ut.J)(r, p.gm.console, 'warn', { level: 'warn' }), (0, ut.J)(r, p.gm.console, 'info', { level: 'info' }), (0, ut.J)(r, p.gm.console, 'debug', { level: 'debug' }), (0, ut.J)(r, p.gm.console, 'trace', { level: 'trace' }), this.ee.on('wrap-logger-end', function ([e]) { const { level: t, customAttributes: n } = this ;(0, ct.R)(r, e, n, t) }), this.importAggregator(e) } } new (class extends o { constructor(t) { super(), p.gm ? ((this.features = {}), (0, R.bQ)(this.agentIdentifier, this), (this.desiredFeatures = new Set(t.features || [])), this.desiredFeatures.add(w), (this.runSoftNavOverSpa = [...this.desiredFeatures].some( (e) => e.featureName === a.K7.softNav )), (0, d.j)(this, t, t.loaderType || 'agent'), this.run()) : (0, e.R)(21) } get config() { return { info: this.info, init: this.init, loader_config: this.loader_config, runtime: this.runtime, } } run() { try { const t = u(this.agentIdentifier), r = [...this.desiredFeatures] r.sort((e, t) => a.P3[e.featureName] - a.P3[t.featureName]), r.forEach((r) => { if (!t[r.featureName] && r.featureName !== a.K7.pageViewEvent) return if (this.runSoftNavOverSpa && r.featureName === a.K7.spa) return if (!this.runSoftNavOverSpa && r.featureName === a.K7.softNav) return const n = (function (e) { switch (e) { case a.K7.ajax: return [a.K7.jserrors] case a.K7.sessionTrace: return [a.K7.ajax, a.K7.pageViewEvent] case a.K7.sessionReplay: return [a.K7.sessionTrace] case a.K7.pageViewTiming: return [a.K7.pageViewEvent] default: return [] } })(r.featureName).filter((e) => !(e in this.features)) n.length > 0 && (0, e.R)(36, { targetFeature: r.featureName, missingDependencies: n, }), (this.features[r.featureName] = new r(this)) }) } catch (t) { ;(0, e.R)(22, t) for (const e in this.features) this.features[e].abortHandler?.() const r = (0, R.Zm)() delete r.initializedAgents[this.agentIdentifier]?.api, delete r.initializedAgents[this.agentIdentifier]?.features, delete this.sharedAggregator return r.ee.get(this.agentIdentifier).abort(), !1 } } })({ features: [pe, w, N, _e, Ie, O, M, at, dt, je, it], loaderType: 'spa', }) })() })() </script> <style>@font-face{font-family:Noto Sans;src:url(NotoSans-Thin.c3140ea426c8d4f5.woff2) format("woff"),url(NotoSans-Thin.9f6b16d257048861.woff) format("woff");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Noto Sans;src:url(NotoSans-ExtraLight.3c13b8883520d4fa.woff2) format("woff"),url(NotoSans-ExtraLight.1851d1cd70ddc27b.woff) format("woff");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Noto Sans;src:url(NotoSans-Light.0dd8c02e12133447.woff2) format("woff"),url(NotoSans-Light.e789a8679bc53a8f.woff) format("woff");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Noto Sans;src:url(NotoSans-Regular.f0405dca3d71d9ea.woff2) format("woff"),url(NotoSans-Regular.afb350a4e65d54da.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Noto Sans;src:url(NotoSans-Medium.5a903e19dd0bba50.woff2) format("woff"),url(NotoSans-Medium.c39a81c954821d4c.woff) format("woff");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Noto Sans;src:url(NotoSans-SemiBold.729ba7353dcd89c7.woff2) format("woff"),url(NotoSans-SemiBold.b700073e8714db98.woff) format("woff");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Noto Sans;src:url(NotoSans-Bold.92eb2651311e3904.woff2) format("woff"),url(NotoSans-Bold.ffb851366b609b5f.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Noto Sans;src:url(NotoSans-ExtraBold.5fb7cdd670f713e9.woff2) format("woff"),url(NotoSans-ExtraBold.7f0b9cd4042d0652.woff) format("woff");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Noto Sans;src:url(NotoSans-Black.68cc34b7c6100698.woff2) format("woff"),url(NotoSans-Black.eef9f4239038a22c.woff) format("woff");font-weight:900;font-style:normal;font-display:swap}html{--mat-badge-text-font:"Noto Sans", sans-serif;--mat-badge-text-size:12px;--mat-badge-text-weight:600;--mat-badge-small-size-text-size:9px;--mat-badge-large-size-text-size:24px}html{--mat-bottom-sheet-container-text-font:"Noto Sans", sans-serif;--mat-bottom-sheet-container-text-line-height:20px;--mat-bottom-sheet-container-text-size:14px;--mat-bottom-sheet-container-text-tracking:normal;--mat-bottom-sheet-container-text-weight:400}html{--mat-legacy-button-toggle-text-font:"Noto Sans", sans-serif;--mat-standard-button-toggle-text-font:"Noto Sans", sans-serif}html{--mat-datepicker-calendar-text-font:"Noto Sans", sans-serif;--mat-datepicker-calendar-text-size:13px;--mat-datepicker-calendar-body-label-text-size:14px;--mat-datepicker-calendar-body-label-text-weight:700;--mat-datepicker-calendar-period-button-text-size:14px;--mat-datepicker-calendar-period-button-text-weight:700;--mat-datepicker-calendar-header-text-size:11px;--mat-datepicker-calendar-header-text-weight:400}html{--mat-expansion-header-text-font:"Noto Sans", sans-serif;--mat-expansion-header-text-size:14px;--mat-expansion-header-text-weight:400;--mat-expansion-header-text-line-height:inherit;--mat-expansion-header-text-tracking:inherit;--mat-expansion-container-text-font:"Noto Sans", sans-serif;--mat-expansion-container-text-line-height:20px;--mat-expansion-container-text-size:14px;--mat-expansion-container-text-tracking:normal;--mat-expansion-container-text-weight:400}html{--mat-grid-list-tile-header-primary-text-size:14px;--mat-grid-list-tile-header-secondary-text-size:12px;--mat-grid-list-tile-footer-primary-text-size:14px;--mat-grid-list-tile-footer-secondary-text-size:12px}html{--mat-stepper-container-text-font:"Noto Sans", sans-serif;--mat-stepper-header-label-text-font:"Noto Sans", sans-serif;--mat-stepper-header-label-text-size:14px;--mat-stepper-header-label-text-weight:400;--mat-stepper-header-error-state-label-text-size:16px;--mat-stepper-header-selected-state-label-text-size:16px;--mat-stepper-header-selected-state-label-text-weight:400}html{--mat-toolbar-title-text-font:"Noto Sans", sans-serif;--mat-toolbar-title-text-line-height:normal;--mat-toolbar-title-text-size:20px;--mat-toolbar-title-text-tracking:.15px;--mat-toolbar-title-text-weight:400}html{--mat-badge-background-color:#2e7f9f;--mat-badge-text-color:white;--mat-badge-disabled-state-background-color:#b9b9b9;--mat-badge-disabled-state-text-color:rgba(0, 0, 0, .38)}html{--mat-bottom-sheet-container-text-color:rgba(0, 0, 0, .87);--mat-bottom-sheet-container-background-color:white}html{--mat-legacy-button-toggle-text-color:rgba(0, 0, 0, .38);--mat-legacy-button-toggle-state-layer-color:rgba(0, 0, 0, .12);--mat-legacy-button-toggle-selected-state-text-color:rgba(0, 0, 0, .54);--mat-legacy-button-toggle-selected-state-background-color:#e0e0e0;--mat-legacy-button-toggle-disabled-state-text-color:rgba(0, 0, 0, .26);--mat-legacy-button-toggle-disabled-state-background-color:#eeeeee;--mat-legacy-button-toggle-disabled-selected-state-background-color:#bdbdbd;--mat-standard-button-toggle-text-color:rgba(0, 0, 0, .87);--mat-standard-button-toggle-background-color:white;--mat-standard-button-toggle-state-layer-color:black;--mat-standard-button-toggle-selected-state-background-color:#e0e0e0;--mat-standard-button-toggle-selected-state-text-color:rgba(0, 0, 0, .87);--mat-standard-button-toggle-disabled-state-text-color:rgba(0, 0, 0, .26);--mat-standard-button-toggle-disabled-state-background-color:white;--mat-standard-button-toggle-disabled-selected-state-text-color:rgba(0, 0, 0, .87);--mat-standard-button-toggle-disabled-selected-state-background-color:#bdbdbd;--mat-standard-button-toggle-divider-color:#e0e0e0}html{--mat-standard-button-toggle-height:48px}html{--mat-datepicker-calendar-date-selected-state-text-color:white;--mat-datepicker-calendar-date-selected-state-background-color:#2e7f9f;--mat-datepicker-calendar-date-selected-disabled-state-background-color:rgba(46, 127, 159, .4);--mat-datepicker-calendar-date-today-selected-state-outline-color:white;--mat-datepicker-calendar-date-focus-state-background-color:rgba(46, 127, 159, .3);--mat-datepicker-calendar-date-hover-state-background-color:rgba(46, 127, 159, .3);--mat-datepicker-toggle-active-state-icon-color:#2e7f9f;--mat-datepicker-calendar-date-in-range-state-background-color:rgba(46, 127, 159, .2);--mat-datepicker-calendar-date-in-comparison-range-state-background-color:rgba(249, 171, 0, .2);--mat-datepicker-calendar-date-in-overlap-range-state-background-color:#a8dab5;--mat-datepicker-calendar-date-in-overlap-range-selected-state-background-color:#46a35e;--mat-datepicker-toggle-icon-color:rgba(0, 0, 0, .54);--mat-datepicker-calendar-body-label-text-color:rgba(0, 0, 0, .54);--mat-datepicker-calendar-period-button-icon-color:rgba(0, 0, 0, .54);--mat-datepicker-calendar-navigation-button-icon-color:rgba(0, 0, 0, .54);--mat-datepicker-calendar-header-divider-color:rgba(0, 0, 0, .12);--mat-datepicker-calendar-header-text-color:rgba(0, 0, 0, .54);--mat-datepicker-calendar-date-today-outline-color:rgba(0, 0, 0, .38);--mat-datepicker-calendar-date-today-disabled-state-outline-color:rgba(0, 0, 0, .18);--mat-datepicker-calendar-date-text-color:rgba(0, 0, 0, .87);--mat-datepicker-calendar-date-outline-color:transparent;--mat-datepicker-calendar-date-disabled-state-text-color:rgba(0, 0, 0, .38);--mat-datepicker-calendar-date-preview-state-outline-color:rgba(0, 0, 0, .24);--mat-datepicker-range-input-separator-color:rgba(0, 0, 0, .87);--mat-datepicker-range-input-disabled-state-separator-color:rgba(0, 0, 0, .38);--mat-datepicker-range-input-disabled-state-text-color:rgba(0, 0, 0, .38);--mat-datepicker-calendar-container-background-color:white;--mat-datepicker-calendar-container-text-color:rgba(0, 0, 0, .87)}html{--mat-divider-color:rgba(0, 0, 0, .12)}html{--mat-expansion-container-background-color:white;--mat-expansion-container-text-color:rgba(0, 0, 0, .87);--mat-expansion-actions-divider-color:rgba(0, 0, 0, .12);--mat-expansion-header-hover-state-layer-color:rgba(0, 0, 0, .04);--mat-expansion-header-focus-state-layer-color:rgba(0, 0, 0, .04);--mat-expansion-header-disabled-state-text-color:rgba(0, 0, 0, .26);--mat-expansion-header-text-color:rgba(0, 0, 0, .87);--mat-expansion-header-description-color:rgba(0, 0, 0, .54);--mat-expansion-header-indicator-color:rgba(0, 0, 0, .54)}html{--mat-expansion-header-collapsed-state-height:48px;--mat-expansion-header-expanded-state-height:64px}html{--mat-icon-color:inherit}html{--mat-sidenav-container-divider-color:rgba(0, 0, 0, .12);--mat-sidenav-container-background-color:white;--mat-sidenav-container-text-color:rgba(0, 0, 0, .87);--mat-sidenav-content-background-color:#fafafa;--mat-sidenav-content-text-color:rgba(0, 0, 0, .87);--mat-sidenav-scrim-color:rgba(0, 0, 0, .6)}html{--mat-stepper-header-icon-foreground-color:white;--mat-stepper-header-selected-state-icon-background-color:#2e7f9f;--mat-stepper-header-selected-state-icon-foreground-color:white;--mat-stepper-header-done-state-icon-background-color:#2e7f9f;--mat-stepper-header-done-state-icon-foreground-color:white;--mat-stepper-header-edit-state-icon-background-color:#2e7f9f;--mat-stepper-header-edit-state-icon-foreground-color:white;--mat-stepper-container-color:white;--mat-stepper-line-color:rgba(0, 0, 0, .12);--mat-stepper-header-hover-state-layer-color:rgba(0, 0, 0, .04);--mat-stepper-header-focus-state-layer-color:rgba(0, 0, 0, .04);--mat-stepper-header-label-text-color:rgba(0, 0, 0, .54);--mat-stepper-header-optional-label-text-color:rgba(0, 0, 0, .54);--mat-stepper-header-selected-state-label-text-color:rgba(0, 0, 0, .87);--mat-stepper-header-error-state-label-text-color:#f44336;--mat-stepper-header-icon-background-color:rgba(0, 0, 0, .54);--mat-stepper-header-error-state-icon-foreground-color:#f44336;--mat-stepper-header-error-state-icon-background-color:transparent}html{--mat-stepper-header-height:72px}html{--mat-toolbar-container-background-color:whitesmoke;--mat-toolbar-container-text-color:rgba(0, 0, 0, .87)}html{--mat-toolbar-standard-height:64px;--mat-toolbar-mobile-height:56px}html,body{height:100%}body{margin:0;font-family:Noto Sans,sans-serif;font-display:swap}app-root{min-height:100%;position:relative;display:flex;flex-direction:column}html{overflow-y:scroll}</style><link rel="stylesheet" href="styles.031e6f68de0179cd.css" crossorigin="use-credentials" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles.031e6f68de0179cd.css"></noscript></head> <body> <app-root> </app-root> <noscript>Please enable JavaScript to continue using this application.</noscript> <script data-ot-ignore src="runtime.37f89ada5bdf31bc-en.js" type="module" crossorigin="use-credentials"></script><script data-ot-ignore src="polyfills.84a5244bd6258c3f-en.js" type="module" crossorigin="use-credentials"></script><script data-ot-ignore src="scripts.d50e666a32f10450-en.js" defer crossorigin="use-credentials"></script><script data-ot-ignore src="main.d36a7b35ca1e5649-en.js" type="module" crossorigin="use-credentials"></script></body> </html> <!--en '' } 2025-04-04T18:33:01.324Z--> <!--7b888963f8/null-->