CINXE.COM
AAP Global Health
<!DOCTYPE html> <html lang="en"> <head> <style> html { visibility: hidden; opacity: 0; } </style> <link rel="shortcut icon" href="/Images/Favicon/AAP-Favicon-4_Black.png" type="image/x-icon"> <meta name="viewport" content="width=device-width" /> <meta http-equiv="X-UA-Compatible" content="IE=11;IE=Edge,chrome=1" /> <meta name="referrer" content="always" /> <meta property="og:title" content="AAP Global Health" /> <meta property="og:type" content="website" /> <meta property="og:url" content="https://www.aap.org/en/aap-global/" /> <meta property="og:image" content="" /> <meta property="og:description" /> <meta name="twitter:card" content="summary" /> <meta name="twitter:title" content="AAP Global Health" /> <meta name="twitter:description" /> <meta name="twitter:image" content="" /> <meta name="robots" /> <meta name="description" content="The AAP Global Health initiative is designed for pediatricians and other child health professionals working on improving child health all over the world." /> <meta name="keywords" content="global, international, child health, international child health, india giani fund, international medical graduates, world health" /> <meta name="publish_date" content="2020-02-03"> <meta name="publish_image" content="https://www.aap.org/globalassets/aap-img-placeholder.png"> <meta name="vertex_keywords" content="global, international, child health, international child health, india giani fund, international medical graduates, world health"> <title>AAP Global Health</title> <!-- CookiePro Cookies Consent Notice start for www.aap.org --> <script src="https://cookie-cdn.cookiepro.com/scripttemplates/otSDKStub.js" type="text/javascript" charset="UTF-8" data-domain-script="3e68ef05-4f6d-4004-898a-78b94ce0823e" ></script> <script type="text/javascript"> function OptanonWrapper() { } </script> <!-- CookiePro Cookies Consent Notice end for www.aap.org --> <!-- Google Tag Manager --> <script> (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window, document, 'script', 'dataLayer', 'GTM-N2RV28J'); </script> <!-- End Google Tag Manager --> <script async src="https://securepubads.g.doubleclick.net/tag/js/gpt.js"></script> <script> var googletag = googletag || {}; googletag.cmd = googletag.cmd || []; </script> <script type='text/javascript'> googletag.cmd.push(function() { var AAPorg = googletag.sizeMapping(). addSize([730, 0], [728, 90]) //desktop .build(); var gptAdSlots = []; gptAdSlots[0] =googletag.defineSlot('/22410314033/aap_leadert', [728, 90], 'div-gpt-ad-1633540336787-0').defineSizeMapping(AAPorg).addService(googletag.pubads()); googletag.pubads().enableSingleRequest(); googletag.pubads().collapseEmptyDivs(); googletag.enableServices(); }); </script> <!-- Donate Widget Script --> <script>(function(w,d,s,n,a){if(!w[n]){var l='call,catch,on,once,set,then,track'.split(','),i,o=function(n){return'function'==typeof n?o.l.push([arguments])&&o:function(){return o.l.push([n,arguments])&&o}},t=d.getElementsByTagName(s)[0],j=d.createElement(s);j.async=!0;j.src='https://cdn.fundraiseup.com/widget/'+a; t.parentNode.insertBefore(j,t);o.s=Date.now();o.v=4;o.h=w.location.href;o.l=[];for(i=0;i<7;i++)o[l[i]]=o(l[i]);w[n]=o}})(window,document,'script','FundraiseUp','ADAHKUXY');</script> <!-- End Donate Widget Script --> <!-- Magnet Mail --> <script type="text/javascript" src="https://tracking.magnetmail.net/MagnetLeads.js"> </script> <script type="text/javascript"> com.realmagnet.MagnetLeads.init('hXdIOUQOZEy77inoSnCQWg'); com.realmagnet.MagnetLeads.visitPage(); </script> <!-- share this script --> <script type='text/javascript' src='https://platform-api.sharethis.com/js/sharethis.js#property=6480b01ae58f550012ea9faa&product=sop' async='async'></script> <!--New Relic --> <script type = "text/javascript" > ; window.NREUM || (NREUM = {}); NREUM.init = { distributed_tracing: { enabled: true }, privacy: { cookies_enabled: true } }; ; NREUM.loader_config = { accountID: "1613493", trustKey: "1613493", agentID: "342119000", licenseKey: "0c3b4b61ad", applicationID: "342118967" };; NREUM.info = { beacon: "bam.nr-data.net", errorBeacon: "bam.nr-data.net", licenseKey: "0c3b4b61ad", applicationID: "342118967", sa: 1 };; /*! For license information please see nr-loader-spa-1.246.0.min.js.LICENSE.txt */ (() => { "use strict"; var e, t, r = { 234: (e, t, r) => { r.d(t, { P_: () => g, Mt: () => v, C5: () => s, DL: () => A, OP: () => D, lF: () => N, Yu: () => x, Dg: () => m, CX: () => c, GE: () => w, sU: () => j }); var n = r(8632), i = r(9567); const o = { beacon: n.ce.beacon, errorBeacon: n.ce.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) { 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 c(e, t) { if (!e) throw new Error("All info objects require an agent identifier!"); a[e] = (0, i.D)(t, o), (0, n.Qy)(e, a[e], "info") } const u = e => { if (!e || "string" != typeof e) return !1; try { document.createDocumentFragment().querySelector(e) } catch { return !1 } return !0 }; var d = r(7056), l = r(50); const f = () => { const e = { 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 { feature_flags: [], proxy: { assets: void 0, beacon: void 0 }, privacy: { cookies_enabled: !0 }, ajax: { deny_list: void 0, block_internal: !0, enabled: !0, harvestTimeSeconds: 10, 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 }, session: { domain: void 0, expiresMs: d.oD, inactiveMs: d.Hb }, ssl: void 0, obfuscate: void 0, jserrors: { enabled: !0, harvestTimeSeconds: 10, autoStart: !0 }, metrics: { enabled: !0, autoStart: !0 }, page_action: { enabled: !0, harvestTimeSeconds: 30, autoStart: !0 }, page_view_event: { enabled: !0, autoStart: !0 }, page_view_timing: { enabled: !0, harvestTimeSeconds: 30, long_task: !1, autoStart: !0 }, session_trace: { enabled: !0, harvestTimeSeconds: 10, autoStart: !0 }, harvest: { tooManyRequestsDelay: 60 }, session_replay: { autoStart: !0, enabled: !1, harvestTimeSeconds: 60, sampling_rate: 50, error_sampling_rate: 50, collect_fonts: !1, inline_images: !1, inline_stylesheet: !0, mask_all_inputs: !0, get mask_text_selector() { return e.mask_selector }, set mask_text_selector(t) { u(t) ? e.mask_selector = t + ",[data-nr-mask]" : null === t ? e.mask_selector = t : (0, l.Z)("An invalid session_replay.mask_selector was provided and will not be used", 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) { u(t) ? e.block_selector += ",".concat(t) : "" !== t && (0, l.Z)("An invalid session_replay.block_selector was provided and will not be used", 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, l.Z)("An invalid session_replay.mask_input_option was provided and will not be used", t) } }, spa: { enabled: !0, harvestTimeSeconds: 10, autoStart: !0 } } }, h = {}, p = "All configuration objects require an agent identifier!"; function g(e) { if (!e) throw new Error(p); if (!h[e]) throw new Error("Configuration for ".concat(e, " was never set")); return h[e] } function m(e, t) { if (!e) throw new Error(p); h[e] = (0, i.D)(t, f()), (0, n.Qy)(e, h[e], "config") } function v(e, t) { if (!e) throw new Error(p); var r = g(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 } const b = { accountID: void 0, trustKey: void 0, agentID: void 0, licenseKey: void 0, applicationID: void 0, xpid: void 0 }, y = {}; function A(e) { if (!e) throw new Error("All loader-config objects require an agent identifier!"); if (!y[e]) throw new Error("LoaderConfig for ".concat(e, " was never set")); return y[e] } function w(e, t) { if (!e) throw new Error("All loader-config objects require an agent identifier!"); y[e] = (0, i.D)(t, b), (0, n.Qy)(e, y[e], "loader_config") } const x = (0, n.mF)().o; var E = r(385), _ = r(6818); const T = { buildEnv: _.Re, customTransaction: void 0, disabled: !1, distMethod: _.gF, isolatedBacklog: !1, loaderType: void 0, maxBytes: 3e4, offset: Math.floor(E._A?.performance?.timeOrigin || E._A?.performance?.timing?.navigationStart || Date.now()), onerror: void 0, origin: "" + E._A.location, ptid: void 0, releaseIds: {}, session: void 0, xhrWrappable: "function" == typeof E._A.XMLHttpRequest?.prototype?.addEventListener, version: _.q4, denyList: void 0 }, S = {}; function D(e) { if (!e) throw new Error("All runtime objects require an agent identifier!"); if (!S[e]) throw new Error("Runtime for ".concat(e, " was never set")); return S[e] } function j(e, t) { if (!e) throw new Error("All runtime objects require an agent identifier!"); S[e] = (0, i.D)(t, T), (0, n.Qy)(e, S[e], "runtime") } function N(e) { return function (e) { try { const t = s(e); return !!t.licenseKey && !!t.errorBeacon && !!t.applicationID } catch (e) { return !1 } }(e) } }, 9567: (e, t, r) => { r.d(t, { D: () => i }); var n = r(50); function i(e, t) { try { if (!e || "object" != typeof e) return (0, n.Z)("Setting a Configurable requires an object as input"); if (!t || "object" != typeof t) return (0, n.Z)("Setting a Configurable requires a model to set its initial properties"); 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 { 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.Z)("An error occurred while setting a property of a Configurable", e) } return r } catch (e) { (0, n.Z)("An error occured while setting a Configurable", e) } } }, 6818: (e, t, r) => { r.d(t, { Re: () => i, gF: () => o, lF: () => a, q4: () => n }); const n = "1.246.0", i = "PROD", o = "CDN", a = "2.0.0-alpha.11" }, 385: (e, t, r) => { r.d(t, { FN: () => s, IF: () => d, Nk: () => f, Tt: () => c, _A: () => o, cv: () => h, iS: () => a, il: () => n, ux: () => u, v6: () => i, w1: () => l }); const n = "undefined" != typeof window && !!window.document, i = "undefined" != typeof WorkerGlobalScope && ("undefined" != typeof self && self instanceof WorkerGlobalScope && self.navigator instanceof WorkerNavigator || "undefined" != typeof globalThis && globalThis instanceof WorkerGlobalScope && globalThis.navigator instanceof WorkerNavigator), o = n ? window : "undefined" != typeof WorkerGlobalScope && ("undefined" != typeof self && self instanceof WorkerGlobalScope && self || "undefined" != typeof globalThis && globalThis instanceof WorkerGlobalScope && globalThis), a = Boolean("hidden" === o?.document?.visibilityState), s = "" + o?.location, c = /iPad|iPhone|iPod/.test(o.navigator?.userAgent), u = c && "undefined" == typeof SharedWorker, d = (() => { const e = o.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/); return Array.isArray(e) && e.length >= 2 ? +e[1] : 0 })(), l = Boolean(n && window.document.documentMode), f = !!o.navigator?.sendBeacon, h = Math.floor(o?.performance?.timeOrigin || o?.performance?.timing?.navigationStart || Date.now()) }, 1117: (e, t, r) => { r.d(t, { w: () => o }); var n = r(50); const i = { agentIdentifier: "", ee: void 0 }; class o { constructor(e) { try { if ("object" != typeof e) return (0, n.Z)("shared context requires an object as input"); this.sharedContext = {}, Object.assign(this.sharedContext, i), Object.entries(e).forEach((e => { let [t, r] = e; Object.keys(i).includes(t) && (this.sharedContext[t] = r) })) } catch (e) { (0, n.Z)("An error occured while setting SharedContext", e) } } } }, 8e3: (e, t, r) => { r.d(t, { L: () => d, R: () => c }); var n = r(8325), i = r(1284), o = r(4322), a = r(3325); const s = {}; function c(e, t) { const r = { staged: !1, priority: a.p[t] || 0 }; u(e), s[e].get(t) || s[e].set(t, r) } function u(e) { e && (s[e] || (s[e] = new Map)) } function d() { let e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "", t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "feature"; if (u(e), !e || !s[e].get(t)) return a(t); s[e].get(t).staged = !0; const r = [...s[e]]; function a(t) { const r = e ? n.ee.get(e) : n.ee, a = o.X.handlers; if (r.backlog && a) { var s = r.backlog[t], c = a[t]; if (c) { for (var u = 0; s && u < s.length; ++u) l(s[u], c); (0, i.D)(c, (function (e, t) { (0, i.D)(t, (function (t, r) { r[0].on(e, r[1]) })) })) } delete a[t], r.backlog[t] = null, r.emit("drain-" + t, []) } } r.every((e => { let [t, r] = e; return r.staged })) && (r.sort(((e, t) => e[1].priority - t[1].priority)), r.forEach((t => { let [r] = t; s[e].delete(r), a(r) }))) } function l(e, t) { var r = e[1]; (0, i.D)(t[r], (function (t, r) { var n = e[0]; if (r[0] === n) { var i = r[1], o = e[3], a = e[2]; i.apply(o, a) } })) } }, 8325: (e, t, r) => { r.d(t, { A: () => c, ee: () => u }); var n = r(8632), i = r(2210), o = r(234); class a { constructor(e) { this.contextId = e } } var s = r(3117); const c = "nr@context:".concat(s.a), u = function e(t, r) { var n = {}, s = {}, d = {}, f = !1; try { f = 16 === r.length && (0, o.OP)(r).isolatedBacklog } catch (e) {} var h = { on: g, addEventListener: g, 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 = p(n), c = m(e), d = c.length, l = 0; l < d; l++) c[l].apply(a, r); var f = b()[s[e]]; f && f.push([h, e, r, a]); return a }, get: v, listeners: m, context: p, buffer: function (e, t) { const r = b(); if (t = t || "feature", h.aborted) return; Object.entries(e || {}).forEach((e => { let [n, i] = e; s[i] = t, t in r || (r[t] = []) })) }, abort: l, aborted: !1, isBuffering: function (e) { return !!b()[s[e]] }, debugId: r, backlog: f ? {} : t && "object" == typeof t.backlog ? t.backlog : {} }; return h; function p(e) { return e && e instanceof a ? e : e ? (0, i.X)(e, c, (() => new a(c))) : new a(c) } function g(e, t) { n[e] = m(e).concat(t) } function m(e) { return n[e] || [] } function v(t) { return d[t] = d[t] || e(h, t) } function b() { return h.backlog } }(void 0, "globalEE"), d = (0, n.fP)(); function l() { u.aborted = !0, u.backlog = {} } d.ee || (d.ee = u) }, 5546: (e, t, r) => { r.d(t, { E: () => n, p: () => i }); var n = r(8325).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)) } }, 4322: (e, t, r) => { r.d(t, { X: () => o }); var n = r(5546); o.on = a; var i = o.handlers = {}; function o(e, t, r, o) { a(o || n.E, i, e, t, r) } function a(e, t, r, i, o) { o || (o = "feature"), e || (e = n.E); var a = t[o] = t[o] || {}; (a[r] = a[r] || []).push([e, i]) } }, 3239: (e, t, r) => { r.d(t, { bP: () => s, iz: () => c, m$: () => a }); var n = r(385); let i = !1, o = !1; try { const e = { get passive() { return i = !0, !1 }, get signal() { return o = !0, !1 } }; n._A.addEventListener("test", null, e), n._A.removeEventListener("test", null, e) } catch (e) {} function a(e, t) { return i || o ? { capture: !!e, passive: i, signal: t } : !!e } function s(e, t) { let r = arguments.length > 2 && void 0 !== arguments[2] && arguments[2], n = arguments.length > 3 ? arguments[3] : void 0; window.addEventListener(e, t, a(r, n)) } function c(e, t) { let r = arguments.length > 2 && void 0 !== arguments[2] && arguments[2], n = arguments.length > 3 ? arguments[3] : void 0; document.addEventListener(e, t, a(r, n)) } }, 3117: (e, t, r) => { r.d(t, { a: () => n }); const n = (0, r(4402).Rl)() }, 4402: (e, t, r) => { r.d(t, { Ht: () => u, M: () => c, Rl: () => a, ky: () => s }); var n = r(385); 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._A?.crypto || n._A?.msCrypto; let t, r = 0; return e && e.getRandomValues && (t = e.getRandomValues(new Uint8Array(31))), 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._A?.crypto || n._A?.msCrypto; let r, i = 0; t && t.getRandomValues && (r = t.getRandomValues(new Uint8Array(31))); 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) } }, 7056: (e, t, r) => { r.d(t, { Bq: () => n, Hb: () => o, oD: () => i }); const n = "NRBA", i = 144e5, o = 18e5 }, 7894: (e, t, r) => { function n() { return Math.round(performance.now()) } r.d(t, { z: () => n }) }, 7243: (e, t, r) => { r.d(t, { e: () => i }); var n = r(385); 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._A?.location?.protocol && t.host === n._A?.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 {} } } }, 50: (e, t, r) => { function n(e, t) { "function" == typeof console.warn && (console.warn("New Relic: ".concat(e)), t && console.warn(t)) } r.d(t, { Z: () => n }) }, 2587: (e, t, r) => { r.d(t, { N: () => c, T: () => u }); var n = r(8325), i = r(5546), o = r(3325); const a = { stn: [o.D.sessionTrace], err: [o.D.jserrors, o.D.metrics], ins: [o.D.pageAction], spa: [o.D.spa], sr: [o.D.sessionReplay, o.D.sessionTrace] }, s = new Set; function c(e, t) { const r = n.ee.get(t); e && "object" == typeof e && (s.has(t) || Object.entries(e).forEach((e => { let [t, n] = e; a[t] ? a[t].forEach((e => { n ? (0, i.p)("feat-" + t, [], void 0, e, r) : (0, i.p)("block-" + t, [], void 0, e, r), (0, i.p)("rumresp-" + t, [Boolean(n)], void 0, e, r) })) : n && (0, i.p)("feat-" + t, [], void 0, void 0, r), u[t] = Boolean(n) })), Object.keys(a).forEach((e => { void 0 === u[e] && (a[e]?.forEach((t => (0, i.p)("rumresp-" + e, [!1], void 0, t, r))), u[e] = !1) })), s.add(t)) } const u = {} }, 2210: (e, t, r) => { r.d(t, { X: () => 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 } }, 1284: (e, t, r) => { r.d(t, { D: () => n }); const n = (e, t) => Object.entries(e || {}).map((e => { let [r, n] = e; return t(r, n) })) }, 4351: (e, t, r) => { r.d(t, { P: () => o }); var n = r(8325); 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) {} } } }, 3960: (e, t, r) => { r.d(t, { K: () => a, b: () => o }); var n = r(3239); function i() { return "undefined" == typeof document || "complete" === document.readyState } function o(e, t) { if (i()) return e(); (0, n.bP)("load", e, t) } function a(e) { if (i()) return e(); (0, n.iz)("DOMContentLoaded", e) } }, 8632: (e, t, r) => { r.d(t, { EZ: () => u, Qy: () => c, ce: () => o, fP: () => a, gG: () => d, mF: () => s }); var n = r(7894), i = r(385); const o = { beacon: "bam.nr-data.net", errorBeacon: "bam.nr-data.net" }; function a() { return i._A.NREUM || (i._A.NREUM = {}), void 0 === i._A.newrelic && (i._A.newrelic = i._A.NREUM), i._A.NREUM } function s() { let e = a(); return e.o || (e.o = { ST: i._A.setTimeout, SI: i._A.setImmediate, CT: i._A.clearTimeout, XHR: i._A.XMLHttpRequest, REQ: i._A.Request, EV: i._A.Event, PR: i._A.Promise, MO: i._A.MutationObserver, FETCH: i._A.fetch }), e } function c(e, t, r) { let i = a(); const o = i.initializedAgents || {}, s = o[e] || {}; return Object.keys(s).length || (s.initializedAt = { ms: (0, n.z)(), date: new Date }), i.initializedAgents = { ...o, [e]: { ...s, [r]: t } }, i } function u(e, t) { a()[e] = t } function d() { 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() } }, 7956: (e, t, r) => { r.d(t, { N: () => i }); var n = r(3239); function i(e) { let t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1], r = arguments.length > 2 ? arguments[2] : void 0, i = arguments.length > 3 ? arguments[3] : void 0; (0, n.iz)("visibilitychange", (function () { if (t) return void("hidden" === document.visibilityState && e()); e(document.visibilityState) }), r, i) } }, 1214: (e, t, r) => { r.d(t, { em: () => b, u5: () => D, QU: () => C, _L: () => I, Gm: () => H, Lg: () => L, BV: () => G, Kf: () => K }); var n = r(8325), i = r(3117); const o = "nr@original:".concat(i.a); 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]) } var l = r(2210), f = r(385); const h = {}, p = f._A.XMLHttpRequest, g = "addEventListener", m = "removeEventListener", v = "nr@wrapped:".concat(n.A); function b(e) { var t = function (e) { return (e || n.ee).get("events") }(e); if (h[t.debugId]++) return t; h[t.debugId] = 1; var r = c(t, !0); function i(e) { r.inPlace(e, [g, m], "-", o) } function o(e, t) { return e[1] } return "getPrototypeOf" in Object && (f.il && y(document, i), y(f._A, i), y(p.prototype, i)), t.on(g + "-start", (function (e, t) { var n = e[1]; if (null !== n && ("function" == typeof n || "object" == typeof n)) { var i = (0, l.X)(n, v, (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(m + "-start", (function (e) { e[1] = this.wrapped || e[1] })), t } function y(e, t) { let r = e; for (; "object" == typeof r && !Object.prototype.hasOwnProperty.call(r, g);) r = Object.getPrototypeOf(r); for (var n = arguments.length, i = new Array(n > 2 ? n - 2 : 0), o = 2; o < n; o++) i[o - 2] = arguments[o]; r && t(r, ...i) } var A = "fetch-", w = A + "body-", x = ["arrayBuffer", "blob", "json", "text", "formData"], E = f._A.Request, _ = f._A.Response, T = "prototype"; const S = {}; function D(e) { const t = function (e) { return (e || n.ee).get("fetch") }(e); if (!(E && _ && f._A.fetch)) return t; if (S[t.debugId]++) return t; function r(e, r, i) { var o = e[r]; "function" == typeof o && (e[r] = function () { var e, r = [...arguments], a = {}; t.emit(i + "before-start", [r], a), a[n.A] && a[n.A].dt && (e = a[n.A].dt); var s = o.apply(this, r); return t.emit(i + "start", [r, e], s), s.then((function (e) { return t.emit(i + "end", [null, e], s), e }), (function (e) { throw t.emit(i + "end", [e], s), e })) }) } return S[t.debugId] = 1, x.forEach((e => { r(E[T], e, w), r(_[T], e, w) })), r(f._A, "fetch", A), t.on(A + "end", (function (e, r) { var n = this; if (r) { var i = r.headers.get("content-length"); null !== i && (n.rxSize = i), t.emit(A + "done", [null, r], n) } else t.emit(A + "done", [e], n) })), t } const j = {}, N = ["pushState", "replaceState"]; function C(e) { const t = function (e) { return (e || n.ee).get("history") }(e); return !f.il || j[t.debugId]++ || (j[t.debugId] = 1, c(t).inPlace(window.history, N, "-")), t } var O = r(3239); const P = {}, R = ["appendChild", "insertBefore", "replaceChild"]; function I(e) { const t = function (e) { return (e || n.ee).get("jsonp") }(e); if (!f.il || P[t.debugId]) return t; P[t.debugId] = !0; var r = c(t), i = /[?&](?:callback|cb)=([^&#]+)/, o = /(.*)\.([^.]+)/, a = /^(\w+)(\.|$)(.*)$/; function s(e, t) { if (!e) return t; const r = e.match(a), n = r[1]; return s(r[3], t[n]) } return r.inPlace(Node.prototype, R, "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 n = (a = e.src, c = a.match(i), c ? c[1] : null); var a, c; if (!n) return; var u = function (e) { var t = e.match(o); if (t && t.length >= 3) return { key: t[2], parent: s(t[1], window) }; return { key: e, parent: window } }(n); if ("function" != typeof u.parent[u.key]) return; var d = {}; function l() { t.emit("jsonp-end", [], d), e.removeEventListener("load", l, (0, O.m$)(!1)), e.removeEventListener("error", f, (0, O.m$)(!1)) } function f() { t.emit("jsonp-error", [], d), t.emit("jsonp-end", [], d), e.removeEventListener("load", l, (0, O.m$)(!1)), e.removeEventListener("error", f, (0, O.m$)(!1)) } r.inPlace(u.parent, [u.key], "cb-", d), e.addEventListener("load", l, (0, O.m$)(!1)), e.addEventListener("error", f, (0, O.m$)(!1)), t.emit("new-jsonp", [e.src], d) }(e[0]) })), t } const k = {}; function H(e) { const t = function (e) { return (e || n.ee).get("mutation") }(e); if (!f.il || k[t.debugId]) return t; k[t.debugId] = !0; var r = c(t), i = f._A.MutationObserver; return i && (window.MutationObserver = function (e) { return this instanceof i ? new i(r(e, "fn-")) : i.apply(this, arguments) }, MutationObserver.prototype = i.prototype), t } const z = {}; function L(e) { const t = function (e) { return (e || n.ee).get("promise") }(e); if (z[t.debugId]) return t; z[t.debugId] = !0; var r = t.context, i = c(t), a = f._A.Promise; return a && function () { function e(r) { var n = t.context(), o = i(r, "executor-", n, null, !1); const s = Reflect.construct(a, [o], e); return t.context(s).getCtx = function () { return n }, s } f._A.Promise = e, Object.defineProperty(e, "name", { value: "Promise" }), e.toString = function () { return a.toString() }, Object.setPrototypeOf(e, a), ["all", "race"].forEach((function (r) { const n = a[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 = a[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 = a.prototype; const n = a.prototype.then; a.prototype.then = function () { var e = this, o = r(e); o.promise = e; for (var a = arguments.length, s = new Array(a), c = 0; c < a; c++) s[c] = arguments[c]; s[0] = i(s[0], "cb-", o, null, !1), s[1] = i(s[1], "cb-", o, null, !1); const u = n.apply(this, s); return o.nextPromise = u, t.emit("propagate", [e, !0], u, !1, !1), u }, a.prototype.then[o] = n, t.on("executor-start", (function (e) { e[0] = i(e[0], "resolve-", this, null, !1), e[1] = i(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 M = {}, F = "setTimeout", B = "setInterval", U = "clearTimeout", Z = "-start", V = "-", q = [F, "setImmediate", B, U, "clearImmediate"]; function G(e) { const t = function (e) { return (e || n.ee).get("timer") }(e); if (M[t.debugId]++) return t; M[t.debugId] = 1; var r = c(t); return r.inPlace(f._A, q.slice(0, 2), F + V), r.inPlace(f._A, q.slice(2, 3), B + V), r.inPlace(f._A, q.slice(3), U + V), t.on(B + Z, (function (e, t, n) { e[0] = r(e[0], "fn-", null, n) })), t.on(F + Z, (function (e, t, n) { this.method = n, this.timerDuration = isNaN(e[1]) ? 0 : +e[1], e[0] = r(e[0], "fn-", this, n) })), t } var W = r(50); const X = {}, Q = ["open", "send"]; function K(e) { var t = e || n.ee; const r = function (e) { return (e || n.ee).get("xhr") }(t); if (X[r.debugId]++) return r; X[r.debugId] = 1, b(t); var i = c(r), o = f._A.XMLHttpRequest, a = f._A.MutationObserver, s = f._A.Promise, u = f._A.setInterval, d = "readystatechange", l = ["onload", "onerror", "onabort", "onloadstart", "onloadend", "onprogress", "ontimeout"], h = [], p = f._A.XMLHttpRequest = function (e) { const t = new o(e), n = r.context(t); try { r.emit("new-xhr", [t], n), t.addEventListener(d, (a = n, function () { var e = this; e.readyState > 3 && !a.resolved && (a.resolved = !0, r.emit("xhr-resolved", [], e)), i.inPlace(e, l, "fn-", w) }), (0, O.m$)(!1)) } catch (e) { (0, W.Z)("An error occurred while intercepting XHR", e); try { r.emit("internal-error", [e]) } catch (e) {} } var a; return t }; function g(e, t) { i.inPlace(t, ["onreadystatechange"], "fn-", w) } if (function (e, t) { for (var r in e) t[r] = e[r] }(o, p), p.prototype = o.prototype, i.inPlace(p.prototype, Q, "-xhr-", w), r.on("send-xhr-start", (function (e, t) { g(e, t), function (e) { h.push(e), a && (m ? m.then(A) : u ? u(A) : (v = -v, y.data = v)) }(t) })), r.on("open-xhr-start", g), a) { var m = s && s.resolve(); if (!u && !s) { var v = 1, y = document.createTextNode(v); new a(A).observe(y, { characterData: !0 }) } } else t.on("fn-end", (function (e) { e[0] && e[0].type === d || A() })); function A() { for (var e = 0; e < h.length; e++) g(0, h[e]); h.length && (h = []) } function w(e, t) { return t } return r } }, 7825: (e, t, r) => { r.d(t, { t: () => n }); const n = r(3325).D.ajax }, 6660: (e, t, r) => { r.d(t, { t: () => n }); const n = r(3325).D.jserrors }, 3081: (e, t, r) => { r.d(t, { gF: () => o, mY: () => i, t9: () => n, vz: () => s, xS: () => a }); const n = r(3325).D.metrics, i = "sm", o = "cm", a = "storeSupportabilityMetrics", s = "storeEventMetrics" }, 4649: (e, t, r) => { r.d(t, { t: () => n }); const n = r(3325).D.pageAction }, 7633: (e, t, r) => { r.d(t, { t: () => n }); const n = r(3325).D.pageViewEvent }, 9251: (e, t, r) => { r.d(t, { t: () => n }); const n = r(3325).D.pageViewTiming }, 7144: (e, t, r) => { r.d(t, { t: () => n }); const n = r(3325).D.sessionReplay }, 3614: (e, t, r) => { r.d(t, { BST_RESOURCE: () => i, END: () => s, FEATURE_NAME: () => n, FN_END: () => u, FN_START: () => c, PUSH_STATE: () => d, RESOURCE: () => o, START: () => a }); const n = r(3325).D.sessionTrace, i = "bstResource", o = "resource", a = "-start", s = "-end", c = "fn" + a, u = "fn" + s, d = "pushState" }, 7836: (e, t, r) => { r.d(t, { BODY: () => x, CB_END: () => E, CB_START: () => u, END: () => w, FEATURE_NAME: () => i, FETCH: () => T, FETCH_BODY: () => v, FETCH_DONE: () => m, FETCH_START: () => g, FN_END: () => c, FN_START: () => s, INTERACTION: () => f, INTERACTION_API: () => d, INTERACTION_EVENTS: () => o, JSONP_END: () => b, JSONP_NODE: () => p, JS_TIME: () => _, MAX_TIMER_BUDGET: () => a, REMAINING: () => l, SPA_NODE: () => h, START: () => A, originalSetTimeout: () => y }); var n = r(234); const i = r(3325).D.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 = n.Yu.ST, A = "-start", w = "-end", x = "-body", E = "cb" + w, _ = "jsTime", T = "fetch" }, 5938: (e, t, r) => { r.d(t, { W: () => i }); var n = r(8325); class i { constructor(e, t, r) { this.agentIdentifier = e, this.aggregator = t, this.ee = n.ee.get(e), this.featureName = r, this.blocked = !1 } } }, 7530: (e, t, r) => { r.d(t, { j: () => b }); var n = r(3325), i = r(234), o = r(5546), a = r(8325), s = r(7894), c = r(8e3), u = r(3960), d = r(385), l = r(50), f = r(3081), h = r(8632); function p() { const e = (0, h.gG)(); ["setErrorHandler", "finished", "addToTrace", "addRelease", "addPageAction", "setCurrentRouteName", "setPageViewName", "setCustomAttribute", "interaction", "noticeError", "setUserId", "setApplicationVersion", "start"].forEach((t => { e[t] = function () { for (var r = arguments.length, n = new Array(r), i = 0; i < r; i++) n[i] = arguments[i]; return function (t) { for (var r = arguments.length, n = new Array(r > 1 ? r - 1 : 0), i = 1; i < r; i++) n[i - 1] = arguments[i]; let o = []; return Object.values(e.initializedAgents).forEach((e => { e.exposed && e.api[t] && o.push(e.api[t](...n)) })), o.length > 1 ? o : o[0] }(t, ...n) } })) } var g = r(2587); const m = e => { const t = e.startsWith("http"); e += "/", r.p = t ? e : "https://" + e }; let v = !1; function b(e) { let t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}, b = arguments.length > 2 ? arguments[2] : void 0, y = arguments.length > 3 ? arguments[3] : void 0, { init: A, info: w, loader_config: x, runtime: E = { loaderType: b }, exposed: _ = !0 } = t; const T = (0, h.gG)(); w || (A = T.init, w = T.info, x = T.loader_config), (0, i.Dg)(e, A || {}), (0, i.GE)(e, x || {}), w.jsAttributes ??= {}, d.v6 && (w.jsAttributes.isWorker = !0), (0, i.CX)(e, w); const S = (0, i.P_)(e), D = [w.beacon, w.errorBeacon]; v || (v = !0, S.proxy.assets && (m(S.proxy.assets), D.push(S.proxy.assets)), S.proxy.beacon && D.push(S.proxy.beacon)), E.denyList = [...S.ajax.deny_list || [], ...S.ajax.block_internal ? D : []], (0, i.sU)(e, E), p(); const j = function (e, t) { t || (0, c.R)(e, "api"); const h = {}; var p = a.ee.get(e), g = p.get("tracer"), m = "api-", v = m + "ixn-"; function b(t, r, n, o) { const a = (0, i.C5)(e); return null === r ? delete a.jsAttributes[t] : (0, i.CX)(e, { ...a, jsAttributes: { ...a.jsAttributes, [t]: r } }), w(m, n, !0, o || null === r ? "session" : void 0)(t, r) } function y() {} ["setErrorHandler", "finished", "addToTrace", "addRelease"].forEach((e => { h[e] = w(m, e, !0, "api") })), h.addPageAction = w(m, "addPageAction", !0, n.D.pageAction), h.setCurrentRouteName = w(m, "routeName", !0, n.D.spa), h.setPageViewName = function (t, r) { if ("string" == typeof t) return "/" !== t.charAt(0) && (t = "/" + t), (0, i.OP)(e).customTransaction = (r || "http://custom.transaction") + t, w(m, "setPageViewName", !0)() }, h.setCustomAttribute = function (e, t) { let r = arguments.length > 2 && void 0 !== arguments[2] && arguments[2]; if ("string" == typeof e) { if (["string", "number", "boolean"].includes(typeof t) || null === t) return b(e, t, "setCustomAttribute", r); (0, l.Z)("Failed to execute setCustomAttribute.\nNon-null value must be a string, number or boolean type, but a type of <".concat(typeof t, "> was provided.")) } else(0, l.Z)("Failed to execute setCustomAttribute.\nName must be a string type, but a type of <".concat(typeof e, "> was provided.")) }, h.setUserId = function (e) { if ("string" == typeof e || null === e) return b("enduser.id", e, "setUserId", !0); (0, l.Z)("Failed to execute setUserId.\nNon-null value must be a string type, but a type of <".concat(typeof e, "> was provided.")) }, h.setApplicationVersion = function (e) { if ("string" == typeof e || null === e) return b("application.version", e, "setApplicationVersion", !1); (0, l.Z)("Failed to execute setApplicationVersion. Expected <String | null>, but got <".concat(typeof e, ">.")) }, h.start = e => { try { const t = e ? "defined" : "undefined"; (0, o.p)(f.xS, ["API/start/".concat(t, "/called")], void 0, n.D.metrics, p); const r = Object.values(n.D); if (void 0 === e) e = r; else { if ((e = Array.isArray(e) && e.length ? e : [e]).some((e => !r.includes(e)))) return (0, l.Z)("Invalid feature name supplied. Acceptable feature names are: ".concat(r)); e.includes(n.D.pageViewEvent) || e.push(n.D.pageViewEvent) } e.forEach((e => { p.emit("".concat(e, "-opt-in")) })) } catch (e) { (0, l.Z)("An unexpected issue occurred", e) } }, h.interaction = function () { return (new y).get() }; var A = y.prototype = { createTracer: function (e, t) { var r = {}, i = this, a = "function" == typeof t; return (0, o.p)(v + "tracer", [(0, s.z)(), e, r], i, n.D.spa, p), function () { if (g.emit((a ? "" : "no-") + "fn-start", [(0, s.z)(), i, a], r), a) try { return t.apply(this, arguments) } catch (e) { throw g.emit("fn-err", [arguments, this, e], r), e } finally { g.emit("fn-end", [(0, s.z)()], r) } } } }; function w(e, t, r, i) { return function () { return (0, o.p)(f.xS, ["API/" + t + "/called"], void 0, n.D.metrics, p), i && (0, o.p)(e + t, [(0, s.z)(), ...arguments], r ? null : this, i, p), r ? void 0 : this } } function x() { r.e(111).then(r.bind(r, 7438)).then((t => { let { setAPI: r } = t; r(e), (0, c.L)(e, "api") })).catch((() => (0, l.Z)("Downloading runtime APIs failed..."))) } return ["actionText", "setName", "setAttribute", "save", "ignore", "onEnd", "getContext", "end", "get"].forEach((e => { A[e] = w(v, e, void 0, n.D.spa) })), h.noticeError = function (e, t) { "string" == typeof e && (e = new Error(e)), (0, o.p)(f.xS, ["API/noticeError/called"], void 0, n.D.metrics, p), (0, o.p)("err", [e, (0, s.z)(), !1, t], void 0, n.D.jserrors, p) }, d.il ? (0, u.b)((() => x()), !0) : x(), h }(e, y); return (0, h.Qy)(e, j, "api"), (0, h.Qy)(e, _, "exposed"), (0, h.EZ)("activatedFeatures", g.T), j } }, 3325: (e, t, r) => { r.d(t, { D: () => n, p: () => i }); const n = { ajax: "ajax", jserrors: "jserrors", metrics: "metrics", pageAction: "page_action", pageViewEvent: "page_view_event", pageViewTiming: "page_view_timing", sessionReplay: "session_replay", sessionTrace: "session_trace", spa: "spa" }, i = { [n.pageViewEvent]: 1, [n.pageViewTiming]: 2, [n.metrics]: 3, [n.jserrors]: 4, [n.ajax]: 5, [n.sessionTrace]: 6, [n.pageAction]: 7, [n.spa]: 8, [n.sessionReplay]: 9 } } }, 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 => ({ 111: "nr-spa", 164: "nr-spa-compressor", 433: "nr-spa-recorder" } [e] + "-1.246.0.min.js"), i.o = (e, t) => Object.prototype.hasOwnProperty.call(e, t), e = {}, t = "NRBA-1.246.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 } } s || (c = !0, (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), e[r] = [n]; var f = (t, n) => { s.onerror = s.onload = null, clearTimeout(h); var i = e[r]; if (delete e[r], s.parentNode && s.parentNode.removeChild(s), i && i.forEach((e => e(n))), t) return t(n) }, h = setTimeout(f.bind(null, void 0, { type: "timeout", target: s }), 12e4); s.onerror = f.bind(null, s.onerror), s.onload = f.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 = { 801: 0, 92: 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.246.0.PROD"] = self["webpackChunk:NRBA-1.246.0.PROD"] || []; r.forEach(t.bind(null, 0)), r.push = t.bind(null, r.push.bind(r)) })(), (() => { var e = i(50); class t { addPageAction(t, r) { (0, e.Z)("Call to agent api addPageAction failed. The page action feature is not currently initialized.") } setPageViewName(t, r) { (0, e.Z)("Call to agent api setPageViewName failed. The page view feature is not currently initialized.") } setCustomAttribute(t, r, n) { (0, e.Z)("Call to agent api setCustomAttribute failed. The js errors feature is not currently initialized.") } noticeError(t, r) { (0, e.Z)("Call to agent api noticeError failed. The js errors feature is not currently initialized.") } setUserId(t) { (0, e.Z)("Call to agent api setUserId failed. The js errors feature is not currently initialized.") } setApplicationVersion(t) { (0, e.Z)("Call to agent api setApplicationVersion failed. The agent is not currently initialized.") } setErrorHandler(t) { (0, e.Z)("Call to agent api setErrorHandler failed. The js errors feature is not currently initialized.") } finished(t) { (0, e.Z)("Call to agent api finished failed. The page action feature is not currently initialized.") } addRelease(t, r) { (0, e.Z)("Call to agent api addRelease failed. The js errors feature is not currently initialized.") } start(t) { (0, e.Z)("Call to agent api addRelease failed. The agent is not currently initialized.") } } var r = i(3325), n = i(234); const o = Object.values(r.D); function a(e) { const t = {}; return o.forEach((r => { t[r] = function (e, t) { return !1 !== (0, n.Mt)(t, "".concat(e, ".enabled")) }(r, e) })), t } var s = i(7530); var c = i(8e3), u = i(5938), d = i(3960), l = i(385); class f extends u.W { constructor(e, t, r) { let i = !(arguments.length > 3 && void 0 !== arguments[3]) || arguments[3]; super(e, t, r), this.auto = i, this.abortHandler = void 0, this.featAggregate = void 0, this.onAggregateImported = void 0, !1 === (0, n.Mt)(this.agentIdentifier, "".concat(this.featureName, ".autoStart")) && (this.auto = !1), this.auto && (0, c.R)(e, r) } importAggregator() { let t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; if (this.featAggregate) return; if (!this.auto) return void this.ee.on("".concat(this.featureName, "-opt-in"), (() => { (0, c.R)(this.agentIdentifier, this.featureName), this.auto = !0, this.importAggregator() })); const r = l.il && !0 === (0, n.Mt)(this.agentIdentifier, "privacy.cookies_enabled"); let o; this.onAggregateImported = new Promise((e => { o = e })); const a = async () => { let n; try { if (r) { const { setupAgentSession: e } = await i.e(111).then(i.bind(i, 3228)); n = e(this.agentIdentifier) } } catch (t) { (0, e.Z)("A problem occurred when starting up session manager. This page will not start or extend any session.", t) } try { if (!this.shouldImportAgg(this.featureName, n)) return (0, c.L)(this.agentIdentifier, this.featureName), void o(!1); const { lazyFeatureLoader: e } = await i.e(111).then(i.bind(i, 8582)), { Aggregate: r } = await e(this.featureName, "aggregate"); this.featAggregate = new r(this.agentIdentifier, this.aggregator, t), o(!0) } catch (t) { (0, e.Z)("Downloading and initializing ".concat(this.featureName, " failed..."), t), this.abortHandler?.(), (0, c.L)(this.agentIdentifier, this.featureName), o(!1) } }; l.il ? (0, d.b)((() => a()), !0) : a() } shouldImportAgg(e, t) { return e !== r.D.sessionReplay || !!n.Yu.MO && (!1 !== (0, n.Mt)(this.agentIdentifier, "session_trace.enabled") && (!!t?.isNew || !!t?.state.sessionReplayMode)) } } var h = i(7633); class p extends f { static featureName = h.t; constructor(e, t) { let r = !(arguments.length > 2 && void 0 !== arguments[2]) || arguments[2]; super(e, t, h.t, r), this.importAggregator() } } var g = i(1117), m = i(1284); class v extends g.w { constructor(e) { super(e), this.aggregatedData = {} } store(e, t, r, n, i) { var o = this.getBucket(e, t, r, i); return o.metrics = function (e, t) { t || (t = { count: 0 }); return t.count += 1, (0, m.D)(e, (function (e, r) { t[e] = b(r, t[e]) })), t }(n, o.metrics), o } merge(e, t, r, n, i) { var o = this.getBucket(e, t, n, i); if (o.metrics) { var a = o.metrics; a.count += r.count, (0, m.D)(r, (function (e, t) { if ("count" !== e) { var n = a[e], i = r[e]; i && !i.c ? a[e] = b(i.t, n) : a[e] = function (e, t) { if (!t) return e; t.c || (t = y(t.t)); return t.min = Math.min(e.min, t.min), t.max = Math.max(e.max, t.max), t.t += e.t, t.sos += e.sos, t.c += e.c, t }(i, a[e]) } })) } else o.metrics = r } storeMetric(e, t, r, n) { var i = this.getBucket(e, t, r); return i.stats = b(n, i.stats), i } getBucket(e, t, r, n) { this.aggregatedData[e] || (this.aggregatedData[e] = {}); var i = this.aggregatedData[e][t]; return i || (i = this.aggregatedData[e][t] = { params: r || {} }, n && (i.custom = n)), i } get(e, t) { return t ? this.aggregatedData[e] && this.aggregatedData[e][t] : this.aggregatedData[e] } take(e) { for (var t = {}, r = "", n = !1, i = 0; i < e.length; i++) t[r = e[i]] = A(this.aggregatedData[r]), t[r].length && (n = !0), delete this.aggregatedData[r]; return n ? t : null } } function b(e, t) { return null == e ? function (e) { e ? e.c++ : e = { c: 1 }; return e }(t) : t ? (t.c || (t = y(t.t)), t.c += 1, t.t += e, t.sos += e * e, e > t.max && (t.max = e), e < t.min && (t.min = e), t) : { t: e } } function y(e) { return { t: e, min: e, max: e, sos: e * e, c: 1 } } function A(e) { return "object" != typeof e ? [] : (0, m.D)(e, w) } function w(e, t) { return t } var x = i(8632), E = i(4402), _ = i(4351); var T = i(5546), S = i(7956), D = i(3239), j = i(7894), N = i(9251); class C extends f { static featureName = N.t; constructor(e, t) { let r = !(arguments.length > 2 && void 0 !== arguments[2]) || arguments[2]; super(e, t, N.t, r), l.il && ((0, S.N)((() => (0, T.p)("docHidden", [(0, j.z)()], void 0, N.t, this.ee)), !0), (0, D.bP)("pagehide", (() => (0, T.p)("winPagehide", [(0, j.z)()], void 0, N.t, this.ee))), this.importAggregator()) } } var O = i(3081); class P extends f { static featureName = O.t9; constructor(e, t) { let r = !(arguments.length > 2 && void 0 !== arguments[2]) || arguments[2]; super(e, t, O.t9, r), this.importAggregator() } } var R = i(6660); class I { constructor(e, t, r, n) { this.name = "UncaughtError", this.message = e, this.sourceURL = t, this.line = r, this.column = n } } class k extends f { static featureName = R.t; #e = new Set; constructor(e, t) { let n = !(arguments.length > 2 && void 0 !== arguments[2]) || arguments[2]; super(e, t, R.t, n); try { this.removeOnAbort = new AbortController } catch (e) {} this.ee.on("fn-err", ((e, t, n) => { this.abortHandler && !this.#e.has(n) && (this.#e.add(n), (0, T.p)("err", [this.#t(n), (0, j.z)()], void 0, r.D.jserrors, this.ee)) })), this.ee.on("internal-error", (e => { this.abortHandler && (0, T.p)("ierr", [this.#t(e), (0, j.z)(), !0], void 0, r.D.jserrors, this.ee) })), l._A.addEventListener("unhandledrejection", (e => { this.abortHandler && (0, T.p)("err", [this.#r(e), (0, j.z)(), !1, { unhandledPromiseRejection: 1 }], void 0, r.D.jserrors, this.ee) }), (0, D.m$)(!1, this.removeOnAbort?.signal)), l._A.addEventListener("error", (e => { this.abortHandler && (this.#e.has(e.error) ? this.#e.delete(e.error) : (0, T.p)("err", [this.#n(e), (0, j.z)()], void 0, r.D.jserrors, this.ee)) }), (0, D.m$)(!1, this.removeOnAbort?.signal)), this.abortHandler = this.#i, this.importAggregator() } #i() { this.removeOnAbort?.abort(), this.#e.clear(), this.abortHandler = void 0 } #t(e) { return e instanceof Error ? e : void 0 !== e?.message ? new I(e.message, e.filename || e.sourceURL, e.lineno || e.line, e.colno || e.col) : new I("string" == typeof e ? e : (0, _.P)(e)) } #r(e) { let t = "Unhandled Promise Rejection: "; if (e?.reason instanceof Error) try { return e.reason.message = t + e.reason.message, e.reason } catch (t) { return e.reason } if (void 0 === e.reason) return new I(t); const r = this.#t(e.reason); return r.message = t + r.message, r } #n(e) { return e.error instanceof Error ? e.error : new I(e.message, e.filename, e.lineno, e.colno) } } var H = i(2210); let z = 1; const L = "nr@id"; function M(e) { const t = typeof e; return !e || "object" !== t && "function" !== t ? -1 : e === l._A ? 0 : (0, H.X)(e, L, (function () { return z++ })) } function F(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)(e).length } catch (e) { return } } } var B = i(1214), U = i(7243); class Z { constructor(e) { this.agentIdentifier = e } generateTracePayload(e) { if (!this.shouldGenerateTrace(e)) return null; var t = (0, n.DL)(this.agentIdentifier); if (!t) return null; var r = (t.accountID || "").toString() || null, i = (t.agentID || "").toString() || null, o = (t.trustKey || "").toString() || null; if (!r || !i) return null; var a = (0, E.M)(), s = (0, E.Ht)(), 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, r, i, o)), (e.sameOrigin && !this.excludeNewrelicHeader() || !e.sameOrigin && this.isAllowedOrigin(e) && this.useNewrelicHeaderForCors()) && (u.newrelicHeader = this.generateTraceHeader(a, s, c, r, 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 l._A?.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)) } shouldGenerateTrace(e) { return this.isDtEnabled() && this.isAllowedOrigin(e) } isAllowedOrigin(e) { var t = !1, r = {}; if ((0, n.Mt)(this.agentIdentifier, "distributed_tracing") && (r = (0, n.P_)(this.agentIdentifier).distributed_tracing), e.sameOrigin) t = !0; else if (r.allowed_origins instanceof Array) for (var i = 0; i < r.allowed_origins.length; i++) { var o = (0, U.e)(r.allowed_origins[i]); if (e.hostname === o.hostname && e.protocol === o.protocol && e.port === o.port) { t = !0; break } } return t } isDtEnabled() { var e = (0, n.Mt)(this.agentIdentifier, "distributed_tracing"); return !!e && !!e.enabled } excludeNewrelicHeader() { var e = (0, n.Mt)(this.agentIdentifier, "distributed_tracing"); return !!e && !!e.exclude_newrelic_header } useNewrelicHeaderForCors() { var e = (0, n.Mt)(this.agentIdentifier, "distributed_tracing"); return !!e && !1 !== e.cors_use_newrelic_header } useTraceContextHeadersForCors() { var e = (0, n.Mt)(this.agentIdentifier, "distributed_tracing"); return !!e && !!e.cors_use_tracecontext_headers } } var V = i(7825), q = ["load", "error", "abort", "timeout"], G = q.length, W = n.Yu.REQ, X = n.Yu.XHR; class Q extends f { static featureName = V.t; constructor(e, t) { let i = !(arguments.length > 2 && void 0 !== arguments[2]) || arguments[2]; if (super(e, t, V.t, i), (0, n.OP)(e).xhrWrappable) { this.dt = new Z(e), this.handler = (e, t, r, n) => (0, T.p)(e, t, r, n, this.ee); try { const e = { xmlhttprequest: "xhr", fetch: "fetch", beacon: "beacon" }; l._A?.performance?.getEntriesByType("resource").forEach((t => { if (t.initiatorType in e && 0 !== t.responseStatus) { const n = { status: t.responseStatus }, i = { rxSize: t.transferSize, duration: Math.floor(t.duration), cbTime: 0 }; K(n, t.name), this.handler("xhr", [n, i, t.startTime, t.responseEnd, e[t.initiatorType]], void 0, r.D.ajax) } })) } catch (e) {}(0, B.u5)(this.ee), (0, B.Kf)(this.ee), function (e, t, i, o) { function a(e) { var t = this; t.totalCbs = 0, t.called = 0, t.cbTime = 0, t.end = x, 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, D.m$)(!1)), l.IF || e.addEventListener("progress", (function (e) { t.lastSize = e.loaded }), (0, D.m$)(!1)) } function s(e) { this.params = { method: e[0] }, K(this, e[1]), this.metrics = {} } function c(t, r) { var i = (0, n.DL)(e); i.xpid && this.sameOrigin && r.setRequestHeader("X-NewRelic-ID", i.xpid); var a = o.generateTracePayload(this.parsedOrigin); if (a) { var s = !1; a.newrelicHeader && (r.setRequestHeader("newrelic", a.newrelicHeader), s = !0), a.traceContextParentHeader && (r.setRequestHeader("traceparent", a.traceContextParentHeader), a.traceContextStateHeader && r.setRequestHeader("tracestate", a.traceContextStateHeader), s = !0), s && (this.dt = a) } } function u(e, r) { var n = this.metrics, i = e[0], o = this; if (n && i) { var a = F(i); a && (n.txSize = a) } this.startTime = (0, j.z)(), 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 < G; s++) r.addEventListener(q[s], this.listener, (0, D.m$)(!1)) } function d(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 f(e, t) { var r = "" + M(e) + !!t; this.xhrGuids && !this.xhrGuids[r] && (this.xhrGuids[r] = !0, this.totalCbs += 1) } function h(e, t) { var r = "" + M(e) + !!t; this.xhrGuids && this.xhrGuids[r] && (delete this.xhrGuids[r], this.totalCbs -= 1) } function p() { this.endTime = (0, j.z)() } function g(e, r) { r instanceof X && "load" === e[0] && t.emit("xhr-load-added", [e[1], e[2]], r) } function m(e, r) { r instanceof X && "load" === e[0] && t.emit("xhr-load-removed", [e[1], e[2]], r) } function v(e, t, r) { t instanceof X && ("onload" === r && (this.onload = !0), ("load" === (e[0] && e[0].type) || this.onload) && (this.xhrCbStart = (0, j.z)())) } function b(e, r) { this.xhrCbStart && t.emit("xhr-cb-time", [(0, j.z)() - this.xhrCbStart, this.onload, r], r) } function y(e) { var t, r = e[1] || {}; if ("string" == typeof e[0] ? 0 === (t = e[0]).length && l.il && (t = "" + l._A.location.href) : e[0] && e[0].url ? t = e[0].url : l._A?.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, U.e)(t), this.sameOrigin = this.parsedOrigin.sameOrigin); var n = o.generateTracePayload(this.parsedOrigin); if (n && (n.newrelicHeader || n.traceContextParentHeader)) if (e[0] && e[0].headers) s(e[0].headers, n) && (this.dt = n); else { var i = {}; for (var a in r) i[a] = r[a]; i.headers = new Headers(r.headers || {}), s(i.headers, n) && (this.dt = n), e.length > 1 ? e[1] = i : e.push(i) } } 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 A(e, t) { this.params = {}, this.metrics = {}, this.startTime = (0, j.z)(), 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 W ? r = i.url : l._A?.URL && "object" == typeof i && i instanceof URL && (r = i.href), K(this, r); var o = ("" + (i && i instanceof W && i.method || n.method || "GET")).toUpperCase(); this.params.method = o, this.body = n.body, this.txSize = F(n.body) || 0 } function w(e, t) { var n; this.endTime = (0, j.z)(), this.params || (this.params = {}), this.params.status = t ? t.status : 0, "string" == typeof this.rxSize && this.rxSize.length > 0 && (n = +this.rxSize); var o = { txSize: this.txSize, rxSize: n, duration: (0, j.z)() - this.startTime }; i("xhr", [this.params, o, this.startTime, this.endTime, "fetch"], this, r.D.ajax) } function x(e) { var t = this.params, n = this.metrics; if (!this.ended) { this.ended = !0; for (var o = 0; o < G; o++) e.removeEventListener(q[o], this.listener, !1); t.aborted || (n.duration = (0, j.z)() - this.startTime, this.loadCaptureCalled || 4 !== e.readyState ? null == t.status && (t.status = 0) : E(this, e), n.cbTime = this.cbTime, i("xhr", [t, n, this.startTime, this.endTime, "xhr"], this, r.D.ajax)) } } function E(e, t) { e.params.status = t.status; var r = function (e, t) { var r = e.responseType; return "json" === r && null !== t ? t : "arraybuffer" === r || "blob" === r || "json" === r ? F(e.response) : "text" === r || "" === r || void 0 === r ? F(e.responseText) : void 0 }(t, e.lastSize); if (r && (e.metrics.rxSize = r), e.sameOrigin) { var n = t.getResponseHeader("X-NewRelic-App-Data"); n && (e.params.cat = n.split(", ").pop()) } e.loadCaptureCalled = !0 } t.on("new-xhr", a), t.on("open-xhr-start", s), t.on("open-xhr-end", c), t.on("send-xhr-start", u), t.on("xhr-cb-time", d), t.on("xhr-load-added", f), t.on("xhr-load-removed", h), t.on("xhr-resolved", p), t.on("addEventListener-end", g), t.on("removeEventListener-end", m), t.on("fn-end", b), t.on("fetch-before-start", y), t.on("fetch-start", A), t.on("fn-start", v), t.on("fetch-done", w) }(e, this.ee, this.handler, this.dt), this.importAggregator() } } } function K(e, t) { var r = (0, U.e)(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 } var Y = i(3614); const { BST_RESOURCE: J, RESOURCE: ee, START: te, END: re, FEATURE_NAME: ne, FN_END: ie, FN_START: oe, PUSH_STATE: ae } = Y; var se = i(7144); class ce extends f { static featureName = se.t; constructor(e, t) { let r = !(arguments.length > 2 && void 0 !== arguments[2]) || arguments[2]; super(e, t, se.t, r), this.importAggregator() } } var ue = i(7836); const { FEATURE_NAME: de, START: le, END: fe, BODY: he, CB_END: pe, JS_TIME: ge, FETCH: me, FN_START: ve, CB_START: be, FN_END: ye } = ue; var Ae = i(4649); class we extends f { static featureName = Ae.t; constructor(e, t) { let r = !(arguments.length > 2 && void 0 !== arguments[2]) || arguments[2]; super(e, t, Ae.t, r), this.importAggregator() } } new class extends t { constructor(t) { let r = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : (0, E.ky)(16); super(), l._A ? (this.agentIdentifier = r, this.sharedAggregator = new v({ agentIdentifier: this.agentIdentifier }), this.features = {}, this.desiredFeatures = new Set(t.features || []), this.desiredFeatures.add(p), Object.assign(this, (0, s.j)(this.agentIdentifier, t, t.loaderType || "agent")), this.run()) : (0, e.Z)("Failed to initial the agent. Could not determine the runtime environment.") } get config() { return { info: (0, n.C5)(this.agentIdentifier), init: (0, n.P_)(this.agentIdentifier), loader_config: (0, n.DL)(this.agentIdentifier), runtime: (0, n.OP)(this.agentIdentifier) } } run() { const t = "features"; try { const n = a(this.agentIdentifier), i = [...this.desiredFeatures]; i.sort(((e, t) => r.p[e.featureName] - r.p[t.featureName])), i.forEach((t => { if (n[t.featureName] || t.featureName === r.D.pageViewEvent) { const i = function (e) { switch (e) { case r.D.ajax: return [r.D.jserrors]; case r.D.sessionTrace: return [r.D.ajax, r.D.pageViewEvent]; case r.D.sessionReplay: return [r.D.sessionTrace]; case r.D.pageViewTiming: return [r.D.pageViewEvent]; default: return [] } }(t.featureName); i.every((e => n[e])) || (0, e.Z)("".concat(t.featureName, " is enabled but one or more dependent features has been disabled (").concat((0, _.P)(i), "). This may cause unintended consequences or missing data...")), this.features[t.featureName] = new t(this.agentIdentifier, this.sharedAggregator) } })), (0, x.Qy)(this.agentIdentifier, this.features, t) } catch (r) { (0, e.Z)("Failed to initialize all enabled instrument classes (agent aborted) -", r); for (const e in this.features) this.features[e].abortHandler?.(); const n = (0, x.fP)(); return delete n.initializedAgents[this.agentIdentifier]?.api, delete n.initializedAgents[this.agentIdentifier]?.[t], delete this.sharedAggregator, n.ee?.abort(), delete n.ee?.get(this.agentIdentifier), !1 } } addToTrace(t) { (0, e.Z)("Call to agent api addToTrace failed. The session trace feature is not currently initialized.") } setCurrentRouteName(t) { (0, e.Z)("Call to agent api setCurrentRouteName failed. The spa feature is not currently initialized.") } interaction() { (0, e.Z)("Call to agent api interaction failed. The spa feature is not currently initialized.") } }({ features: [Q, p, C, class extends f { static featureName = ne; constructor(e, t) { if (super(e, t, ne, !(arguments.length > 2 && void 0 !== arguments[2]) || arguments[2]), !l.il) return; const n = this.ee; let i; (0, B.QU)(n), this.eventsEE = (0, B.em)(n), this.eventsEE.on(oe, (function (e, t) { this.bstStart = (0, j.z)() })), this.eventsEE.on(ie, (function (e, t) { (0, T.p)("bst", [e[0], t, this.bstStart, (0, j.z)()], void 0, r.D.sessionTrace, n) })), n.on(ae + te, (function (e) { this.time = (0, j.z)(), this.startPath = location.pathname + location.hash })), n.on(ae + re, (function (e) { (0, T.p)("bstHist", [location.pathname + location.hash, this.startPath, this.time], void 0, r.D.sessionTrace, n) })); try { i = new PerformanceObserver((e => { const t = e.getEntries(); (0, T.p)(J, [t], void 0, r.D.sessionTrace, n) })), i.observe({ type: ee, buffered: !0 }) } catch (e) {} this.importAggregator({ resourceObserver: i }) } }, ce, P, we, k, class extends f { static featureName = de; constructor(e, t) { if (super(e, t, de, !(arguments.length > 2 && void 0 !== arguments[2]) || arguments[2]), !l.il) return; if (!(0, n.OP)(e).xhrWrappable) return; try { this.removeOnAbort = new AbortController } catch (e) {} let r, i = 0; const o = this.ee.get("tracer"), a = (0, B._L)(this.ee), s = (0, B.Lg)(this.ee), c = (0, B.BV)(this.ee), u = (0, B.Kf)(this.ee), d = this.ee.get("events"), f = (0, B.u5)(this.ee), h = (0, B.QU)(this.ee), p = (0, B.Gm)(this.ee); function g(e, t) { h.emit("newURL", ["" + window.location, t]) } function m() { i++, r = window.location.hash, this[ve] = (0, j.z)() } function v() { i--, window.location.hash !== r && g(0, !0); var e = (0, j.z)(); this[ge] = ~~this[ge] + e - this[ve], this[ye] = e } function b(e, t) { e.on(t, (function () { this[t] = (0, j.z)() })) } this.ee.on(ve, m), s.on(be, m), a.on(be, m), this.ee.on(ye, v), s.on(pe, v), a.on(pe, v), this.ee.buffer([ve, ye, "xhr-resolved"], this.featureName), d.buffer([ve], this.featureName), c.buffer(["setTimeout" + fe, "clearTimeout" + le, ve], this.featureName), u.buffer([ve, "new-xhr", "send-xhr" + le], this.featureName), f.buffer([me + le, me + "-done", me + he + le, me + he + fe], this.featureName), h.buffer(["newURL"], this.featureName), p.buffer([ve], this.featureName), s.buffer(["propagate", be, pe, "executor-err", "resolve" + le], this.featureName), o.buffer([ve, "no-" + ve], this.featureName), a.buffer(["new-jsonp", "cb-start", "jsonp-error", "jsonp-end"], this.featureName), b(f, me + le), b(f, me + "-done"), b(a, "new-jsonp"), b(a, "jsonp-end"), b(a, "cb-start"), h.on("pushState-end", g), h.on("replaceState-end", g), window.addEventListener("hashchange", g, (0, D.m$)(!0, this.removeOnAbort?.signal)), window.addEventListener("load", g, (0, D.m$)(!0, this.removeOnAbort?.signal)), window.addEventListener("popstate", (function () { g(0, i > 1) }), (0, D.m$)(!0, this.removeOnAbort?.signal)), this.abortHandler = this.#i, this.importAggregator() } #i() { this.removeOnAbort?.abort(), this.abortHandler = void 0 } }], loaderType: "spa" }) })() })(); </script> <script> function mobileGlobalNav(elementName) { var icon = document.getElementsByClassName(elementName)[0]; icon.classList.toggle('active'); } </script> <meta charset="utf-8" /> <meta name="theme-color" content="#00247F"> <link href="/Bundles/css/main.css?v=9bb4293ac6fd77ddc0b82d05ed8ade6d89dbfeef4106a308882478ae5bc1adff" rel="stylesheet" /> <style> .preload-hide { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #fff; z-index: 900; overflow: hidden; } </style> <script src='/Bundles/js/recommended-courses-bundle.js?v=c14132f570a0b529f454eb87d0c553923beb5cafaf7ad0fb719b8885534c7857'></script> </head> <body class="theme-aap " style="padding-top:0"> <div class="browser-message-container " data-browser-message-container> <div class="browser-alert ie"> <div class="browser-alert-inner"> <div class="browser-alert-title"> <svg class="svg-icon" aria-hidden="true" focusable="false"> <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#icon-warning" /> </svg> <p class="browser-alert-title-text"> Internet Explorer Alert </p> </div> <div class="browser-alert-content"> <p>It appears you are using Internet Explorer as your web browser. Please note, Internet Explorer is no longer up-to-date and can cause problems in how this website functions<br />This site functions best using the latest versions of any of the following browsers: <strong>Edge, Firefox, Chrome, Opera, or Safari</strong>. <br />You can find the latest versions of these browsers at <a href="https://browsehappy.com/" target="_blank" rel="noopener">https://browsehappy.com</a></p> </div> </div> <svg class="svg-icon" aria-hidden="true" focusable="false" data-browser-message-close="ie"> <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#icon-close" /> </svg> </div> </div> <header> </header> <!-- Google Tag Manager (noscript) --> <noscript> <iframe src="https://www.googletagmanager.com/ns.html?id=GTM-N2RV28J" height="0" width="0" style="display:none;visibility:hidden"></iframe> </noscript> <!-- End Google Tag Manager (noscript) --> <div class="header-advertisement"> <a class="header-advertisement-disclaimer" target="_blank" href="/en/pages/ad-disclaimer/">Advertisement Disclaimer</a> <!-- /22410314033/aap_leadert --> <div id='div-gpt-ad-1633540336787-0'> <script> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1633540336787-0'); }); </script> </div> </div> <header class="mobile-header print-hide"> <div class="mobile-header-top"> <div class="mobile-header-left"> <div class="mobile-header-top-trigger"> <svg class="mobile-header-top-trigger-open"> <use xlink:href="#mobile-menu-open"></use> </svg> <svg class="mobile-header-top-trigger-close"> <use xlink:href="#mobile-menu-close"></use> </svg> </div> <svg class="mobile-header-logo"> <use xlink:href="#Seal_Pos"></use> </svg> </div> <div class="utility-nav"> <div class="utility-nav-item utility-nav-search"> <svg class="utility-nav-search-icon"> <use xlink:href="#info-magnifying-glass"></use> </svg> <svg class="utility-nav-close"> <use xlink:href="#mobile-menu-close"></use> </svg> </div> <a class="utility-nav-item utility-nav-cart" data-cart-popup-button-mobile aria-expanded="false" href="javascript:;"> <svg> <use xlink:href="#icon-cart"></use> </svg> <div class="utility-nav-cart-amount hidden" data-cart-amount-mobile></div> </a> <div class="utility-nav-item utility-nav-account"> <svg id="mobile-my-account-link"> <use xlink:href="#icon-profile"></use> </svg> <svg id="mobile-my-account-close" style="display: none;"> <use xlink:href="#mobile-menu-close"></use> </svg> <div id="mobile-my-account-menu" class="utility-my-account-menu"> <a class="utility-my-account-menu-logout" href="/en/my-account/login/">Login</a> </div> </div> <div class="utility-nav-item utility-nav-explore explore-aap-mobile" explore-nav-mobile> <a href="javascript:;" class="explore-aap-mobile-trigger" explore-nav-button aria-controls="explore-aap-nav-mobile" aria-expanded="false"> <svg id="mobile-explore-aap-link" class="explore-icon"> <use xlink:href="#icon-explore"></use> </svg> <svg id="mobile-explore-close" class="close-icon"> <use xlink:href="#mobile-menu-close"></use> </svg> </a> <div id="explore-aap-nav-mobile" class="explore-aap-links-wrap" explore-nav-menu aria-hidden="true"> <div class="explore-aap-links-wrap-inner"> <ul class="explore-aap-links"> <li class="explore-aap-links-list-item"> <a class="explore-aap-links-list-item-link" href="https://publications.aap.org/" target="_blank"> Publications </a> </li> <li class="explore-aap-links-list-item"> <a class="explore-aap-links-list-item-link" href="/en/shopaap/" target=""> shopAAP </a> </li> <li class="explore-aap-links-list-item"> <a class="explore-aap-links-list-item-link" href="/en/pedialink/" target=""> PediaLink </a> </li> <li class="explore-aap-links-list-item"> <a class="explore-aap-links-list-item-link" href="https://www.healthychildren.org/" target="_blank"> HealthyChildren.org </a> </li> </ul> </div> </div> </div> </div> </div> <div class="popup-cart popup-cart-mobile" data-cart-popup-mobile aria-hidden="true"> <div class="popup-cart-header"> <div class="popup-cart-header-content"><h3>Shopping cart</h3> <p data-cart-popup-item-number></p></div> <button class="unbutton" type="button" data-cart-popup-button-close-mobile><svg> <use xlink:href="#icon-close"></use> </svg></button> </div> <div class="popup-cart-warning popup-cart-warning-mobile" data-cart-validation-messages></div> <div class="popup-cart-wrapper" data-cart-popup-cart> <div class="popup-cart-buttons"> <a class="button-secondary" href="/en/shopaap/cart/"><svg><use xlink:href="#icon-cart"></use></svg>Go to Cart</a> <a class="button-primary" id="cart-popup-checkout-cta-mobile" href="/en/shopaap/cart/shipping/">Checkout</a> </div> <div class="popup-cart-item-list" data-cart-popup-items></div> <div class="popup-cart-more" data-cart-popup-overflow></div> <button type="button" class="unbutton button-link" data-cart-clear-cart-cta id="cart-popup-clear-cart-cta-mobile">Clear Cart</button> <div class="popup-cart-total"><p class="paragraph-large">Order Subtotal</p><p class="paragraph-large" data-cart-popup-subtotal></p></div> </div> <div data-cart-popup-empty class="popup-cart-empty active"> <svg> <use xlink:href="#icon-cart"></use> </svg> <p class="popup-cart-empty-title">Your cart is empty.</p> <p class="popup-cart-empty-subtitle">Looks like you haven't added anything to your cart.</p> <div class="popup-cart-buttons"> <a class="button-secondary" href="/en/shopaap/cart/">View Saved Items</a> <a class="button-primary" href="https://www.aap.org/en/shopaap">Go Shopping</a></div> </div> <div data-cart-popup-loading class="popup-cart-empty active"> <p>Loading</p> <div class="loader"> <div class="loader-circle"> <svg class="spin" viewBox="25 25 50 50"> <circle class="path" cx="50" cy="50" r="20" fill="none" strokeWidth="3" strokeMiterlimit="10" /> </svg> <svg class="base" viewBox="25 25 50 50"> <circle class="path" cx="50" cy="50" r="20" fill="none" strokeWidth="3" strokeMiterlimit="10" /> </svg> </div> </div> </div> </div> <div class="mobile-search-wrapper"> <div id="mobile-search-bar-component"></div> </div> <div class="mobile-global-nav"> <ul class="mobile-global-nav-menu unlisted" id="main-nav-menu-mobile"> <li class="main-nav-menu-item aaphome "> <div class="main-nav-menu-item-top"> <a class="" href="/en/" target="" data-testid="link-aaphome"> AAP Home </a> <div class="mobile-header-trigger"> <svg onclick="mobileGlobalNav('aaphome')" class="mobile-header-trigger-open"> <use xlink:href="#arrow-down"></use> </svg> </div> </div> <ul class="mobile-header-context-link-list"> <li class="mobile-nav-context-link"> <a class="" href="/en/news-room/"> News </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/membership-application/join-aap/"> Membership </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/career-resources/"> Career Resources </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/research/"> Research </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/philanthropy/"> Philanthropy </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/about-the-aap/"> About the AAP </a> </li> </ul> </li> <li class="main-nav-menu-item policy "> <div class="main-nav-menu-item-top"> <a class="" href="/en/policy/" target="" data-testid="link-policy"> Policy </a> <div class="mobile-header-trigger"> <svg onclick="mobileGlobalNav('policy')" class="mobile-header-trigger-open"> <use xlink:href="#arrow-down"></use> </svg> </div> </div> <ul class="mobile-header-context-link-list"> <li class="mobile-nav-context-link"> <a class="" href="https://doi.org/10.1542/peds.2024-069298"> Nonmedical Use of Controlled Medications by Adolescents and Young Adults </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://publications.aap.org/aapnews/news/30742"> How to Prevent, Reduce Harms from Nonmedical Use of Controlled Medications </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://www.healthychildren.org/English/ages-stages/teen/substance-abuse/Pages/dangers-of-prescription-drug-misuse-tips-to-keep-your-teen-safe.aspx"> Dangers of Prescription Drug Misuse: Tips to Keep Your Teen Safe </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/news-room/news-releases-from-the-aap/"> News Releases </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://pediatrics.aappublications.org/collection"> Policy Collections </a> </li> </ul> </li> <li class="main-nav-menu-item advocacy "> <div class="main-nav-menu-item-top"> <a class="" href="/en/advocacy/" target="" data-testid="link-advocacy"> Advocacy </a> <div class="mobile-header-trigger"> <svg onclick="mobileGlobalNav('advocacy')" class="mobile-header-trigger-open"> <use xlink:href="#arrow-down"></use> </svg> </div> </div> <ul class="mobile-header-context-link-list"> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/blueprint-for-children/the-state-of-children-in-2020/"> The State of Children in 2020 </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/blueprint-for-children/healthy-children/"> Healthy Children </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/blueprint-for-children/secure-families/"> Secure Families </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/blueprint-for-children/strong-communities/"> Strong Communities </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/blueprint-for-children/a-leading-nation-for-youth/"> A Leading Nation for Youth </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/transition-plan-2020/"> Transition Plan: Advancing Child Health in the Biden-Harris Administration </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/health-care-access-coverage/"> Health Care Access & Coverage </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/immigrant-child-health/"> Immigrant Child Health </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/gun-violence-prevention/"> Gun Violence Prevention </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/tobacco-e-cigarettes/"> Tobacco & E-Cigarettes </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/vaccines/"> Vaccines </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/child-nutrition/"> Child Nutrition </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/state-advocacy/assault-weapons-bans/"> Assault Weapons Bans </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/state-advocacy/childhood-immunizations/"> Childhood Immunizations </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/state-advocacy/flavored-e-cigarette-and-tobacco-products/"> E-Cigarette and Tobacco Products </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/childrens-health-care-coverage-fact-sheets/"> Children’s Health Care Coverage Fact Sheets </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/opioid-fact-sheets/"> Opioid Fact Sheets </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/advocacy-training-modules/"> Advocacy Training Modules </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/my-account/login/Authenticate?returnurl=/globalassets/documents/academic-and-subspecialty-advocacy-washington-report_march-2020.pdf"> Subspecialty Advocacy Report </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/aap-advocacy-internship-program/"> AAP Washington Office Internship </a> </li> </ul> </li> <li class="main-nav-menu-item pedialink "> <div class="main-nav-menu-item-top"> <a class="" href="/en/pedialink/" target="" data-testid="link-pedialink"> PediaLink </a> <div class="mobile-header-trigger"> <svg onclick="mobileGlobalNav('pedialink')" class="mobile-header-trigger-open"> <use xlink:href="#arrow-down"></use> </svg> </div> </div> <ul class="mobile-header-context-link-list"> <li class="mobile-nav-context-link"> <a class="" href="https://shop.aap.org/professional-education/online-courses/"> Online Courses </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://shop.aap.org/professional-education/live-activities/"> Live and Virtual Activities </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://aapexperience.org/"> National Conference and Exhibition </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://shop.aap.org/professional-education/self-assessments/"> Prep®- Pediatric Review and Education Programs </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://shop.aap.org/publications/journals/"> Journals and Publications </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/pedialink/neonatal-resuscitation-program/"> NRP </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://login.healthstream.com/hstmsts/login.aspx"> NRP LMS Login </a> </li> </ul> </li> <li class="main-nav-menu-item patientcare "> <div class="main-nav-menu-item-top"> <a class="" href="/en/patient-care/" target="" data-testid="link-patientcare"> Patient Care </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> <li class="main-nav-menu-item practicemanagement "> <div class="main-nav-menu-item-top"> <a class="" href="/en/practice-management/" target="" data-testid="link-practicemanagement"> Practice Management </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> <li class="main-nav-menu-item community "> <div class="main-nav-menu-item-top"> <a class="" href="/en/community/" target="" data-testid="link-community"> Community </a> <div class="mobile-header-trigger"> <svg onclick="mobileGlobalNav('community')" class="mobile-header-trigger-open"> <use xlink:href="#arrow-down"></use> </svg> </div> </div> <ul class="mobile-header-context-link-list"> <li class="mobile-nav-context-link"> <a class="" href="/en/community/aap-committees/"> AAP Committees </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/community/aap-councils/"> AAP Councils </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/community/aap-sections/"> AAP Sections </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://collaborate.aap.org/AAP-Volunteer-Network/Pages/Volunteer-Board-National.aspx"> Volunteer Network </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/community/join-your-chapter/"> Join a Chapter </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/community/chapter-websites/"> Chapter Websites </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/members/home/directories-and-rosters/chapter-district-leadership-rosters/chapter-and-district-executive-directors/"> Chapter Executive Directors </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/community/district-map/"> District Map </a> </li> </ul> </li> <li class="main-nav-menu-item healthychildren "> <div class="main-nav-menu-item-top"> <a class="" href="http://healthychildren.org/" target="_blank" data-testid="link-healthychildren"> Healthy Children </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> <li class="main-nav-menu-item shopaap main-nav-menu-item-mobile-only "> <div class="main-nav-menu-item-top"> <a class="" href="/en/shopaap/" target="" data-testid="link-shopaap"> shopAAP </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> </ul> </div> </header> <header class="global-header "> <div class="global-header-top"> <div class="main-nav print-hide" id="main-nav"> <div class="main-nav-wrapper" id="main-nav-wrapper"> <div class="main-nav-left-wrapper"> <ul class="main-nav-menu unlisted" id="main-nav-menu"> <li class="main-nav-menu-item aaphome "> <div class="main-nav-menu-item-top"> <a class="" href="/en/" target="" data-testid="link-aaphome"> AAP Home </a> <div class="mobile-header-trigger"> <svg onclick="mobileGlobalNav('aaphome')" class="mobile-header-trigger-open"> <use xlink:href="#arrow-down"></use> </svg> </div> </div> <ul class="mobile-header-context-link-list"> <li class="mobile-nav-context-link"> <a class="" href="/en/news-room/"> News </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/membership-application/join-aap/"> Membership </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/career-resources/"> Career Resources </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/research/"> Research </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/philanthropy/"> Philanthropy </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/about-the-aap/"> About the AAP </a> </li> </ul> </li> <li class="main-nav-menu-item policy "> <div class="main-nav-menu-item-top"> <a class="" href="/en/policy/" target="" data-testid="link-policy"> Policy </a> <div class="mobile-header-trigger"> <svg onclick="mobileGlobalNav('policy')" class="mobile-header-trigger-open"> <use xlink:href="#arrow-down"></use> </svg> </div> </div> <ul class="mobile-header-context-link-list"> <li class="mobile-nav-context-link"> <a class="" href="https://doi.org/10.1542/peds.2024-069298"> Nonmedical Use of Controlled Medications by Adolescents and Young Adults </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://publications.aap.org/aapnews/news/30742"> How to Prevent, Reduce Harms from Nonmedical Use of Controlled Medications </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://www.healthychildren.org/English/ages-stages/teen/substance-abuse/Pages/dangers-of-prescription-drug-misuse-tips-to-keep-your-teen-safe.aspx"> Dangers of Prescription Drug Misuse: Tips to Keep Your Teen Safe </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/news-room/news-releases-from-the-aap/"> News Releases </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://pediatrics.aappublications.org/collection"> Policy Collections </a> </li> </ul> </li> <li class="main-nav-menu-item advocacy "> <div class="main-nav-menu-item-top"> <a class="" href="/en/advocacy/" target="" data-testid="link-advocacy"> Advocacy </a> <div class="mobile-header-trigger"> <svg onclick="mobileGlobalNav('advocacy')" class="mobile-header-trigger-open"> <use xlink:href="#arrow-down"></use> </svg> </div> </div> <ul class="mobile-header-context-link-list"> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/blueprint-for-children/the-state-of-children-in-2020/"> The State of Children in 2020 </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/blueprint-for-children/healthy-children/"> Healthy Children </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/blueprint-for-children/secure-families/"> Secure Families </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/blueprint-for-children/strong-communities/"> Strong Communities </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/blueprint-for-children/a-leading-nation-for-youth/"> A Leading Nation for Youth </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/transition-plan-2020/"> Transition Plan: Advancing Child Health in the Biden-Harris Administration </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/health-care-access-coverage/"> Health Care Access & Coverage </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/immigrant-child-health/"> Immigrant Child Health </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/gun-violence-prevention/"> Gun Violence Prevention </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/tobacco-e-cigarettes/"> Tobacco & E-Cigarettes </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/vaccines/"> Vaccines </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/child-nutrition/"> Child Nutrition </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/state-advocacy/assault-weapons-bans/"> Assault Weapons Bans </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/state-advocacy/childhood-immunizations/"> Childhood Immunizations </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/state-advocacy/flavored-e-cigarette-and-tobacco-products/"> E-Cigarette and Tobacco Products </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/childrens-health-care-coverage-fact-sheets/"> Children’s Health Care Coverage Fact Sheets </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/opioid-fact-sheets/"> Opioid Fact Sheets </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/advocacy-training-modules/"> Advocacy Training Modules </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/my-account/login/Authenticate?returnurl=/globalassets/documents/academic-and-subspecialty-advocacy-washington-report_march-2020.pdf"> Subspecialty Advocacy Report </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/advocacy/aap-advocacy-internship-program/"> AAP Washington Office Internship </a> </li> </ul> </li> <li class="main-nav-menu-item pedialink "> <div class="main-nav-menu-item-top"> <a class="" href="/en/pedialink/" target="" data-testid="link-pedialink"> PediaLink </a> <div class="mobile-header-trigger"> <svg onclick="mobileGlobalNav('pedialink')" class="mobile-header-trigger-open"> <use xlink:href="#arrow-down"></use> </svg> </div> </div> <ul class="mobile-header-context-link-list"> <li class="mobile-nav-context-link"> <a class="" href="https://shop.aap.org/professional-education/online-courses/"> Online Courses </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://shop.aap.org/professional-education/live-activities/"> Live and Virtual Activities </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://aapexperience.org/"> National Conference and Exhibition </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://shop.aap.org/professional-education/self-assessments/"> Prep®- Pediatric Review and Education Programs </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://shop.aap.org/publications/journals/"> Journals and Publications </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/pedialink/neonatal-resuscitation-program/"> NRP </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://login.healthstream.com/hstmsts/login.aspx"> NRP LMS Login </a> </li> </ul> </li> <li class="main-nav-menu-item patientcare "> <div class="main-nav-menu-item-top"> <a class="" href="/en/patient-care/" target="" data-testid="link-patientcare"> Patient Care </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> <li class="main-nav-menu-item practicemanagement "> <div class="main-nav-menu-item-top"> <a class="" href="/en/practice-management/" target="" data-testid="link-practicemanagement"> Practice Management </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> <li class="main-nav-menu-item community "> <div class="main-nav-menu-item-top"> <a class="" href="/en/community/" target="" data-testid="link-community"> Community </a> <div class="mobile-header-trigger"> <svg onclick="mobileGlobalNav('community')" class="mobile-header-trigger-open"> <use xlink:href="#arrow-down"></use> </svg> </div> </div> <ul class="mobile-header-context-link-list"> <li class="mobile-nav-context-link"> <a class="" href="/en/community/aap-committees/"> AAP Committees </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/community/aap-councils/"> AAP Councils </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/community/aap-sections/"> AAP Sections </a> </li> <li class="mobile-nav-context-link"> <a class="" href="https://collaborate.aap.org/AAP-Volunteer-Network/Pages/Volunteer-Board-National.aspx"> Volunteer Network </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/community/join-your-chapter/"> Join a Chapter </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/community/chapter-websites/"> Chapter Websites </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/members/home/directories-and-rosters/chapter-district-leadership-rosters/chapter-and-district-executive-directors/"> Chapter Executive Directors </a> </li> <li class="mobile-nav-context-link"> <a class="" href="/en/community/district-map/"> District Map </a> </li> </ul> </li> <li class="main-nav-menu-item healthychildren "> <div class="main-nav-menu-item-top"> <a class="" href="http://healthychildren.org/" target="_blank" data-testid="link-healthychildren"> Healthy Children </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> <li class="main-nav-menu-item shopaap main-nav-menu-item-mobile-only "> <div class="main-nav-menu-item-top"> <a class="" href="/en/shopaap/" target="" data-testid="link-shopaap"> shopAAP </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> </ul> <div class="main-nav-dropdown" id="main-nav-dropdown"> <div class="main-nav-dropdown-button" id="main-nav-dropdown-button"> <span>More</span> <svg> <use xlink:href="#arrow-down"></use> </svg> </div> <ul class="main-nav-dropdown-menu unlisted" id="main-nav-dropdown-menu"></ul> </div> </div> <ul class="main-nav-menu unlisted" id="main-nav-menu-utility"> <li class="main-nav-menu-item main-nav-menu-item-right utility-nav-item utility-nav-cart " id="li-shop-link"> <a href="https://www.aap.org/en/shopaap">shopAAP</a> </li> <li class="main-nav-menu-item main-nav-menu-item-right utility-nav-item utility-nav-cart" id="li-shop-cart"> <a class="utility-nav-item utility-nav-cart" data-cart-popup-button aria-expanded="false" href="javascript:;"> <svg> <use xlink:href="#icon-cart"></use> </svg> <div class="utility-nav-cart-amount hidden" data-cart-amount></div> </a> <div class="popup-cart" data-cart-popup aria-hidden="true"> <div class="popup-cart-header"> <div class="popup-cart-header-content"> <h3>Shopping cart</h3> <p data-cart-popup-item-number></p> </div> <button class="unbutton" type="button" data-cart-popup-button-close> <svg> <use xlink:href="#icon-close"></use> </svg> </button> </div> <div class="popup-cart-warning" data-cart-validation-messages></div> <div class="popup-cart-wrapper" data-cart-popup-cart> <div class="popup-cart-buttons"> <a class="button-secondary" href="/en/shopaap/cart/"><svg><use xlink:href="#icon-cart"></use></svg>Go to Cart</a> <a class="button-primary" id="cart-popup-checkout-cta" href="/en/shopaap/cart/shipping/">Checkout</a> </div> <div class="popup-cart-item-list" data-cart-popup-items></div> <div class="popup-cart-more" data-cart-popup-overflow></div> <button type="button" class="unbutton button-link" data-cart-clear-cart-cta id="cart-popup-clear-cart-cta">Clear Cart</button> <div class="popup-cart-total"><p class="paragraph-large">Order Subtotal</p><p class="paragraph-large" data-cart-popup-subtotal></p></div> </div> <div data-cart-popup-empty class="popup-cart-empty active"> <svg> <use xlink:href="#icon-cart"></use> </svg> <p class="popup-cart-empty-title">Your cart is empty.</p> <p class="popup-cart-empty-subtitle">Looks like you haven't added anything to your cart.</p> <div class="popup-cart-buttons"> <a class="button-secondary" href="/en/shopaap/cart/">View Saved Items</a> <a class="button-primary" href="https://www.aap.org/en/shopaap">Go Shopping</a> </div> </div> <div data-cart-popup-loading class="popup-cart-empty active"> <p>Loading</p> <div class="loader"> <div class="loader-circle"> <svg class="spin" viewBox="25 25 50 50"> <circle class="path" cx="50" cy="50" r="20" fill="none" strokeWidth="3" strokeMiterlimit="10" /> </svg> <svg class="base" viewBox="25 25 50 50"> <circle class="path" cx="50" cy="50" r="20" fill="none" strokeWidth="3" strokeMiterlimit="10" /> </svg> </div> </div> </div> </div> </li> <li class="main-nav-menu-item main-nav-menu-item-right utility-nav-item utility-nav-cart" id="li-utilitynav-create-account-link"> <a href="/en/my-account/create-account-landing-page/">Create Account</a> </li> <li class="main-nav-menu-item main-nav-menu-item-right-bullet utility-nav-item utility-nav-cart" id="li-utilitynav-login-link"> <a href="/en/my-account/login/?ReturnUrl=https://www.aap.org/en/aap-global/"> Login </a> </li> <!--Explore AAP Button --> <div class="explore-aap-wrap" explore-nav> <a href="javascript:;" class="explore-aap-trigger" explore-nav-button aria-controls="explore-aap-nav" aria-expanded="false"> <span class="explore-icon"> <svg class="icon-explore"><use xlink:href="#icon-explore"></use></svg><span class="explore-aap-text">Explore AAP</span> </span> <span class="explore-aap-close"> <i class="icon-general-close"> <span class="screen-reader-only">Close</span> </i> </span> </a> <div id="explore-aap-nav" class="explore-aap-links-wrap" explore-nav-menu aria-hidden="true"> <div class="explore-aap-links-wrap-inner"> <ul class="explore-aap-links"> <li class="explore-aap-links-list-item"> <a class="explore-aap-links-list-item-link" href="https://publications.aap.org/" target="_blank"> Publications </a> </li> <li class="explore-aap-links-list-item"> <a class="explore-aap-links-list-item-link" href="/en/shopaap/" target=""> shopAAP </a> </li> <li class="explore-aap-links-list-item"> <a class="explore-aap-links-list-item-link" href="/en/pedialink/" target=""> PediaLink </a> </li> <li class="explore-aap-links-list-item"> <a class="explore-aap-links-list-item-link" href="https://www.healthychildren.org/" target="_blank"> HealthyChildren.org </a> </li> </ul> </div> </div> </div> </ul> </div> </div> <div class="global-search-wrapper"> <a href="https://www.aap.org"> <div class="global-logo-aap"> <svg class="icon icon-AAP-Logo_1-Line_Black"> <use xlink:href="#icon-AAP-Logo_2-Line_Black"></use> </svg> </div> </a> <div id="search-bar-component"></div> </div> </div> <div class="global-header-contextual-nav "> <div class="global-header-wrapper"> <a class="global-header-contextual-nav-current" href="/link/8c1a6ab6d0094177800d596b90cd68d5.aspx"> Home </a> <ul class="global-header-contextual-nav-links unlisted"> <li class="main-nav-menu-item news " onmouseenter="onMegaNavHover('news')" onmouseleave="onMegaNavLeave()"> <div class="main-nav-menu-item-top"> <a class="" href="#" > News </a> </div> <div class="mega-nav"> <div class="mega-nav-inner" > <div class="mega-nav-inner-item mega-nav-inner-item-content"> <div class="title">News</div> <div class="description">Get the latest news from the AAP including press statements, the AAP Voices Blog, the Pediatrics OnCall Podcast and more!</div> <div class="cta"> <a href="/en/news-room/"> News </a> </div> </div> <div class="mega-nav-inner-item mega-nav-inner-item-links"> <div class="mega-nav-inner-item-links-wrapper"> <div class="mega-nav-link-list title">Our News Sources</div> <div class="mega-nav-link-list title"></div> </div> <div class="mega-nav-inner-item-links-wrapper"> <div class="mega-nav-link-list"> <ul> <li> <a href="/en/news-room/news-releases-from-the-aap/" title="News from the AAP">News from the AAP</a> </li> <li> <a href="/en/news-room/news-releases-from-pediatrics/" title="Latest Studies in Pediatrics">Latest Studies in Pediatrics</a> </li> <li> <a href="/en/pages/podcast/" title="Pediatrics OnCall Podcast">Pediatrics OnCall Podcast</a> </li> <li> <a href="https://publications.aap.org/aapnews" target="_blank" title="AAP News">AAP News</a> </li> </ul> </div> <div class="mega-nav-link-list"> <ul> <li> <a href="/en/news-room/aap-voices/" title="AAP Voices Blog">AAP Voices Blog</a> </li> <li> <a href="/en/news-room/campaigns-and-toolkits/" title="Campaigns and Toolkits">Campaigns and Toolkits</a> </li> <li> <a href="/en/news-room/working-with-the-media/" title="Spokesperson Resources">Spokesperson Resources</a> </li> </ul> </div> </div> </div> </div> </div> </li> <li class="main-nav-menu-item membership " onmouseenter="onMegaNavHover('membership')" onmouseleave="onMegaNavLeave()"> <div class="main-nav-menu-item-top"> <a class="" href="#" > Membership </a> </div> <div class="mega-nav"> <div class="mega-nav-inner" > <div class="mega-nav-inner-item mega-nav-inner-item-content"> <div class="title">Membership</div> <div class="description">There’s a place for you in the Academy no matter where you are in your career. Learn more about all our membership categories.</div> <div class="cta"> <a href="/en/membership-application/join-aap/"> Membership </a> </div> </div> <div class="mega-nav-inner-item mega-nav-inner-item-links"> <div class="mega-nav-inner-item-links-wrapper"> <div class="mega-nav-link-list title">Be a Part of the AAP</div> <div class="mega-nav-link-list title"></div> </div> <div class="mega-nav-inner-item-links-wrapper"> <div class="mega-nav-link-list"> <ul> <li> <a href="/en/membership-application/join-aap/" title="Join the AAP">Join the AAP</a> </li> <li> <a href="/en/membership-application/join-aap/join-the-aap-enterprise-membership/">Join the AAP – Enterprise Membership</a> </li> <li> <a href="/en/members/home/" title="Exclusive for Members">Exclusive for Members</a> </li> <li> <a href="/en/membership-application/faq/" title="Membership FAQs">Membership FAQs</a> </li> <li> <a href="/en/members/home/directories-and-rosters/" title="AAP Membership Directory">AAP Membership Directory</a> </li> <li> <a href="/en/members/home/member-advantage-programs/" title="Member Advantage Programs">Member Advantage Programs</a> </li> <li> <a href="/en/shopaap/shop-by-product/getredbook/?utm_source=aap-ecommerce&utm_medium=link&utm_campaign=getredbook-membership-dropdown-menu&utm_content=2024-04-09" title="Red Book Member Benefit">Red Book Member Benefit</a> </li> </ul> </div> <div class="mega-nav-link-list"> <ul> <li> <a href="/en/my-account/my-membership/" target="_blank" title="My Membership">My Membership</a> </li> <li> <a href="/en/community/aap-councils/" title="Join a Council">Join a Council</a> </li> <li> <a href="/en/community/aap-sections/" title="Join a Section">Join a Section</a> </li> <li> <a href="/en/community/join-your-chapter/" title="Join a Chapter">Join a Chapter</a> </li> <li> <a href="/en/members/home/national-aap-election-center/" title="National Election Center">National Election Center</a> </li> </ul> </div> </div> </div> </div> </div> </li> <li class="main-nav-menu-item careerresources " onmouseenter="onMegaNavHover('careerresources')" onmouseleave="onMegaNavLeave()"> <div class="main-nav-menu-item-top"> <a class="" href="#" > Career Resources </a> </div> <div class="mega-nav"> <div class="mega-nav-inner" > <div class="mega-nav-inner-item mega-nav-inner-item-content"> <div class="title">Career Resources</div> <div class="description">Find valuable resources to assist you in your pediatrics career from pre-med and training to finding a job and growing a thriving practice.</div> <div class="cta"> <a href="/en/career-resources/"> Career Resources </a> </div> </div> <div class="mega-nav-inner-item mega-nav-inner-item-links"> <div class="mega-nav-inner-item-links-wrapper"> <div class="mega-nav-link-list title">Path to Pediatrics</div> <div class="mega-nav-link-list title"></div> </div> <div class="mega-nav-inner-item-links-wrapper"> <div class="mega-nav-link-list"> <ul> <li> <a href="/en/career-resources/pre-med/" title="Pre-Med">Pre-Med</a> </li> <li> <a href="/en/career-resources/medical-students/" title="Medical Students">Medical Students</a> </li> <li> <a href="/en/career-resources/pediatric-residents/" title="Pediatric Residents">Pediatric Residents</a> </li> <li> <a href="/en/career-resources/fellowship-trainees/" title="Fellowship Trainees">Fellowship Trainees</a> </li> </ul> </div> <div class="mega-nav-link-list"> <ul> <li> <a href="/en/career-resources/planning-your-career/" title="Planning Your Career">Planning Your Career</a> </li> <li> <a href="/en/career-resources/conducting-your-job-search/" title="Conducting Your Job Search">Conducting Your Job Search</a> </li> <li> <a href="/en/career-resources/making-career-transitions/" title="Making Career Transitions">Making Career Transitions</a> </li> <li> <a href="/en/career-resources/retiring-from-pediatrics/" title="Retirement">Retirement</a> </li> </ul> </div> </div> </div> </div> </div> </li> <li class="main-nav-menu-item research " onmouseenter="onMegaNavHover('research')" onmouseleave="onMegaNavLeave()"> <div class="main-nav-menu-item-top"> <a class="" href="#" > Research </a> </div> <div class="mega-nav"> <div class="mega-nav-inner" > <div class="mega-nav-inner-item mega-nav-inner-item-content"> <div class="title">Research</div> <div class="description">AAP original research, including a robust practice-based research network, addresses important questions regarding pediatric practice and the health and well being of children.</div> <div class="cta"> <a href="/en/research/"> Research </a> </div> </div> <div class="mega-nav-inner-item mega-nav-inner-item-links"> <div class="mega-nav-inner-item-links-wrapper"> <div class="mega-nav-link-list title">AAP Research</div> <div class="mega-nav-link-list title"></div> </div> <div class="mega-nav-inner-item-links-wrapper"> <div class="mega-nav-link-list"> <ul> <li> <a href="/en/pages/2019-novel-coronavirus-covid-19-infections/children-and-covid-19-state-level-data-report/" title="COVID-19 State-Level Data Reports">COVID-19 State-Level Data Reports</a> </li> <li> <a href="/en/pages/2019-novel-coronavirus-covid-19-infections/children-and-covid-19-vaccination-trends/" title="Children and COVID-19 Vaccination Trends">Children and COVID-19 Vaccination Trends</a> </li> <li> <a href="/en/research/pediatric-research-in-office-settings-pros/" title="Practice Research in the Office Setting (PROS)">Practice Research in the Office Setting (PROS)</a> </li> <li> <a href="/en/research/pediatrician-life-and-career-experience-study-places/" title="Pediatrician Life and Career Experience Study (PLACES)">Pediatrician Life and Career Experience Study (PLACES)</a> </li> <li> <a href="/en/research/periodic-survey-of-us-aap-members/" title="Periodic Survey">Periodic Survey</a> </li> </ul> </div> <div class="mega-nav-link-list"> <ul> <li> <a href="/en/research/annual-survey-of-graduating-residents/" title="Annual Survey of Graduating Residents">Annual Survey of Graduating Residents</a> </li> <li> <a href="https://downloads.aap.org/AAP/PDF/CHT_Child Population Characteristics.pdf" target="_blank" title="Child Population Characteristics Trends">Child Population Characteristics Trends</a> </li> <li> <a href="https://downloads.aap.org/AAP/PDF/CHT_Child Health.pdf" target="_blank" title="Child Health Trends">Child Health Trends</a> </li> <li> <a href="https://downloads.aap.org/AAP/PDF/CHT_Child Health Care.pdf" target="_blank" title="Child Health Care Trends">Child Health Care Trends</a> </li> </ul> </div> </div> </div> </div> </div> </li> <li class="main-nav-menu-item philanthropy " onmouseenter="onMegaNavHover('philanthropy')" onmouseleave="onMegaNavLeave()"> <div class="main-nav-menu-item-top"> <a class="" href="#" > Philanthropy </a> </div> <div class="mega-nav"> <div class="mega-nav-inner" > <div class="mega-nav-inner-item mega-nav-inner-item-content"> <div class="title">Philanthropy</div> <div class="description">The AAP is dedicated to the health of all children and the pediatric professionals who care for them. Learn how your gifts makes that possible.</div> <div class="cta"> <a href="/en/philanthropy/"> Philanthropy </a> </div> </div> <div class="mega-nav-inner-item mega-nav-inner-item-links"> <div class="mega-nav-inner-item-links-wrapper"> <div class="mega-nav-link-list title"></div> <div class="mega-nav-link-list title"></div> </div> <div class="mega-nav-inner-item-links-wrapper"> <div class="mega-nav-link-list"> <ul> <li> <a href="/en/philanthropy/friends-of-children-fund/" title="Friends of Children Fund">Friends of Children Fund</a> </li> <li> <a href="/en/philanthropy/tomorrows-children-endowment/" title=" Tomorrow’s Children Endowment">Tomorrow’s Children Endowment</a> </li> <li> <a href="/en/philanthropy/disaster-recovery-fund/" title="Disaster Recovery Fund">Disaster Recovery Fund</a> </li> <li> <a href="/en/philanthropy/donate/">Donate</a> </li> </ul> </div> <div class="mega-nav-link-list"> <ul> <li> <a href="http://donate.aap.org/" title="Monthly Giving Plans">Monthly Giving Plans</a> </li> <li> <a href="/en/philanthropy/tribute-giving/" title="Honor a Person You Care About">Honor a Person You Care About</a> </li> <li> <a href="https://aap.planmygift.org/donor-advised-funds" title="Donor-Advised Funds">Donor-Advised Funds</a> </li> <li> <a href="https://aap.planmygift.org/wills-and-living-trusts" title="AAP in Your Will">AAP in Your Will</a> </li> <li> <a href="/en/philanthropy/corporate-and-organizational-partners/" title="Become a Corporate Partner">Become a Corporate Partner</a> </li> </ul> </div> </div> </div> </div> </div> </li> <li class="main-nav-menu-item abouttheaap " onmouseenter="onMegaNavHover('abouttheaap')" onmouseleave="onMegaNavLeave()"> <div class="main-nav-menu-item-top"> <a class="" href="#" > About the AAP </a> </div> <div class="mega-nav"> <div class="mega-nav-inner" > <div class="mega-nav-inner-item mega-nav-inner-item-content"> <div class="title">About the AAP</div> <div class="description">Learn more about the American Academy of Pediatrics including our mission, leadership and commitment to the optimal health and well-being of all children.</div> <div class="cta"> <a href="/en/about-the-aap/"> About the AAP </a> </div> </div> <div class="mega-nav-inner-item mega-nav-inner-item-links"> <div class="mega-nav-inner-item-links-wrapper"> <div class="mega-nav-link-list title">Learn More About Us</div> <div class="mega-nav-link-list title"></div> </div> <div class="mega-nav-inner-item-links-wrapper"> <div class="mega-nav-link-list"> <ul> <li> <a href="/en/support-center/" title="Contact Us">Contact Us</a> </li> <li> <a href="/en/about-the-aap/employment-opportunities/" title="Employment Opportunities">Employment Opportunities</a> </li> <li> <a href="/en/about-the-aap/american-academy-of-pediatrics-equity-and-inclusion-efforts/" title="Equity and Inclusion Efforts">Equity and Inclusion Efforts</a> </li> <li> <a href="/en/about-the-aap/rfp-opportunities/" title="RFP Opportunities">RFP Opportunities</a> </li> </ul> </div> <div class="mega-nav-link-list"> <ul> <li> <a href="/en/about-the-aap/aap-leadership/board-of-directors/" title="Board of Directors">Board of Directors</a> </li> <li> <a href="/en/about-the-aap/aap-leadership/senior-leadership-team/" title="Senior Leadership Team">Senior Leadership Team</a> </li> <li> <a href="https://downloads.aap.org/AAP/PDF/Const-and-Bylaws-2020.pdf" title="Constitution & By-Laws">Constitution & By-Laws</a> </li> <li> <a href="/en/about-the-aap/strategic-plan/" title="Strategic Plan">Strategic Plan</a> </li> </ul> </div> </div> </div> </div> </div> </li> </ul> </div> </div> <div class="global-header-contextual-mobile-nav " > <div class="global-header-contextual-mobile-wrapper" data-horizontal-scroll-container> <nav class="sub-nav"> <ul class="global-header-contextual-mobile-nav-links unlisted tabbed sub-nav-contents" data-horizontal-scroll-content> <li class="main-nav-menu-item news"> <div class="main-nav-menu-item-top"> <a class="" href="/en/news-room/" > News </a> </div> </li> <li class="main-nav-menu-item membership"> <div class="main-nav-menu-item-top"> <a class="" href="/en/membership-application/join-aap/" > Membership </a> </div> </li> <li class="main-nav-menu-item careerresources"> <div class="main-nav-menu-item-top"> <a class="" href="/en/career-resources/" > Career Resources </a> </div> </li> <li class="main-nav-menu-item research"> <div class="main-nav-menu-item-top"> <a class="" href="/en/research/" > Research </a> </div> </li> <li class="main-nav-menu-item philanthropy"> <div class="main-nav-menu-item-top"> <a class="" href="/en/philanthropy/" > Philanthropy </a> </div> </li> <li class="main-nav-menu-item abouttheaap"> <div class="main-nav-menu-item-top"> <a class="" href="/en/about-the-aap/" > About the AAP </a> </div> </li> </ul> </nav> <button id="subNavAdvancerLeft" class="sub-nav-advancer sub-nav-advancer-left" type="button"> <svg class="sub-nav-advancer-icon sub-nav-advancer-icon-left" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 551 1024"><path d="M445.44 38.183L-2.53 512l447.97 473.817 85.857-81.173-409.6-433.23v81.172l409.6-433.23L445.44 38.18z"></path></svg> </button> <button id="subNavAdvancerRight" class="sub-nav-advancer sub-nav-advancer-right" type="button"> <svg class="sub-nav-advancer-icon sub-nav-advancer-icon-right" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 551 1024"><path d="M105.56 985.817L553.53 512 105.56 38.183l-85.857 81.173 409.6 433.23v-81.172l-409.6 433.23 85.856 81.174z"></path></svg> </button> </div> </div> <script type="text/javascript"> // Get all links inside of the mega-nav and add onclick listeners var links = document.querySelectorAll(".mega-nav-inner * a"); if (links && links.length > 0) { links.forEach(function (link, index, list) { link.addEventListener("click", () => onMegaNavLinkClick(link)); }); } // Send tag for clicking mega-nav links onMegaNavLinkClick = (link) => { var dataLayer = window.dataLayer || []; const event = "MegaNavLinkClickEvent"; const tag = { event, megaNavLinkName: link.innerText, magaNavLinkUrl: link.href }; console.log(`Sending tag to data layer: ${JSON.stringify(tag)}`); dataLayer.push(tag); } var hoverTimer; var waitTime = 500; // Using timer to weed out momentary/incidental mouse enter events onMegaNavHover = (name) => { hoverTimer = setTimeout(function() { var dataLayer = window.dataLayer || []; const event = "MegaNavHoverEvent"; const tag = { event, megaNavItem: name, }; console.log(`Sending tag to data layer: ${JSON.stringify(tag)}`); dataLayer.push(tag); }, waitTime); } onMegaNavLeave = () => { clearTimeout(hoverTimer); } </script> <div class="page-header-global " data-page-header-global> <div class="page-header-global-body"> <h1 data-testid="welcome-name">AAP Global</h1> <div class="breadcrumbs"> <a href="https://www.aap.org/en/">Home</a> <span class="breadcrumbs-divider"> / </span> <span class="breadcrumb-page-name">AAP Global</span> </div> </div> </div> </header> <div class="preload-hide"></div> <div class="container main-body" id="main-body"> <div class="content-container"> <div class="main-content"> <div><div class="row row0"><div class="block fiftyfiftyblock"> <section class="adage-block adage-block-full-bleed client-view"> <div class="adage-fiftyfifty"> <div class="adage-fiftyfifty-inner ratio-standard"> <article class="adage-fiftyfifty-item adage-theme-default " data-full-bleed-image> <section class="adage-block"> <figure class="adage-block-inner adage-image-block"> <img src="/contentassets/bb69f14cffd043bcb6b94326f556890a/global_children_header_holding_globe.jpg" /> </figure> </section> </article> <article class="adage-fiftyfifty-item adage-theme-default non-media" data-full-bleed-image> <div class="adage-wysiwyg-block"> <h2>We Work for Every Child's Future</h2> <p>The AAP's global mission is to attain optimal physical, mental, and social health and well-being for all children around the world.</p> </div> </article> </div> </div> </section> </div></div><div class="row row1"><div class="block sectionblock"> <div class="section-block-container container "> <div class="section-block row "> <div class="col-xxl-3 col-xl-3 col-lg-12 section-block-left "> <div> <h2>About Us</h2> <div class="section-block-description"> <p><a class="button-primary" href="/en/aap-global/about-us/">Learn More</a></p> </div> </div> </div> <div class="col-xxl-9 col-xl-9 col-lg-12 section-block-right "> <div class="container"> <div><div class="row row0"><div class="block aggregatorblock"> <div class="cta-aggregator"> <div class="cta-aggregator-image"> </div> <h5 class="dialog-header"> <a href="/en/aap-global/global-presence/"> Global Presence </a> </h5> <div class="dialog-text"> Learn more about the reach of our training and education programs. </div> </div></div></div><div class="row row1"><div class="block aggregatorblock"> <div class="cta-aggregator"> <div class="cta-aggregator-image"> </div> <h5 class="dialog-header"> <a href="/en/aap-global/partner-with-us/"> Partner With Us </a> </h5> <div class="dialog-text"> Learn more about partnership opportunities with the AAP. </div> </div></div></div><div class="row row2"><div class="block aggregatorblock"> <div class="cta-aggregator"> <div class="cta-aggregator-image"> </div> <h5 class="dialog-header"> <a href="/en/aap-global/about-us/contact-global/" target="_self"> Contact Us </a> </h5> <div class="dialog-text"> You can send us an email any time. </div> </div></div></div></div> </div> </div> </div> </div> </div></div><div class="row row2"><div class="block sectionblock"> <div class="section-block-container container white"> <div class="section-block row "> <div class="col-xxl-3 col-xl-3 col-lg-12 section-block-left "> <div> <h2>Initiatives</h2> <div class="section-block-description"> </div> </div> </div> <div class="col-xxl-9 col-xl-9 col-lg-12 section-block-right "> <div class="container"> <div><div class="row row0"><div class="block aggregatorblock"> <div class="cta-aggregator"> <div class="cta-aggregator-image"> </div> <h5 class="dialog-header"> <a href="/en/aap-global/what-we-do/"> What We Do </a> </h5> <div class="dialog-text"> Learn more about our programs, sections and advocacy efforts. </div> </div></div></div><div class="row row1"><div class="block aggregatorblock"> <div class="cta-aggregator"> <div class="cta-aggregator-image"> </div> <h5 class="dialog-header"> <a href="/en/aap-global/get-involved/"> Get Involved </a> </h5> <div class="dialog-text"> Join the AAP's global efforts, donate to the cause and help spread the word. </div> </div></div></div><div class="row row2"><div class="block aggregatorblock"> <div class="cta-aggregator"> <div class="cta-aggregator-image"> </div> <h5 class="dialog-header"> <a href="/en/aap-global/global-programs-and-services/"> Global Services and Programs </a> </h5> <div class="dialog-text"> Explore the AAP’s suite of innovative Global Programs and Services. </div> </div></div></div><div class="row row3"><div class="block aggregatorblock"> <div class="cta-aggregator"> <div class="cta-aggregator-image"> </div> <h5 class="dialog-header"> <a href="/en/aap-global/helping-babies-survive/"> Helping Babies Survive </a> </h5> <div class="dialog-text"> Helping Babies Survive is a suite of evidence-based, hands-on training programs developed to reduce neonatal mortality in resource-limited environments. </div> </div></div></div><div class="row row4"><div class="block aggregatorblock"> <div class="cta-aggregator"> <div class="cta-aggregator-image"> </div> <h5 class="dialog-header"> <a href="/en/aap-global/immediate-kangaroo-mother-care-ikmc/" target="_self"> Immediate Kangaroo Mother Care (iKMC) </a> </h5> <div class="dialog-text"> View our extensive library of virtual news show series that explore the science, benefits, and real-life experiences of iKMC. </div> </div></div></div></div> </div> </div> </div> </div> </div></div><div class="row row3"><div class="block fullwidthctablock"> <div class="adage-fwcta-container gray"> <section class="adage-block adage-block-full-bleed adage-fwcta-section"> <div class="adage-fwcta-spacer"></div> <div class="adage-fwcta center"> <div class="adage-fwcta-inner"> <h2 class="adage-block-heading adage-fwcta-heading">Building Resilience Through Nature: The Role of Pediatricians in Supporting Child Development</h2> <div class="adage-fwcta-content"> <p>There is a growing body of evidence that demonstrates the positive impact of natural environments on child development. By integrating nature into their advocacy and practice, pediatricians can ensure the healthy development of children and adolescents. In collaboration with Instituto Alana, Sociedade Brasileira de Pediatria, and global pediatric experts, the AAP is supporting the introduction of evidence-based insights and actionable guidance for pediatricians, educators, and families on how connecting children with nature can support the physical and mental well-being of all children. </p> </div> <div class="adage-fwcta-cta"> <a href="https://alana.org.br/wp-content/uploads/2024/10/Arquivo-final-essibilizado.pdf" target="_blank" class="btn button-primary">Read More</a> </div> </div> </div> </section> </div></div></div><div class="row row4"><div class="block fullwidthctablock"> <div class="adage-fwcta-container blue"> <section class="adage-block adage-block-full-bleed adage-fwcta-section"> <div class="adage-fwcta-spacer"></div> <div class="adage-fwcta center"> <div class="adage-fwcta-inner"> <h2 class="adage-block-heading adage-fwcta-heading">Building Capacity to Improve Immunization Systems: A Spotlight on Indonesia and Nigeria</h2> <div class="adage-fwcta-content"> <p>AAP and the national pediatric societies of Indonesia and Nigeria have partnered with support from the CDC to nurture the unique role of in-country pediatricians and their pediatric societies to influence national immunization systems. By transforming clinical skills into advocacy skills focused on root problem identification and organizational capacity building, pediatricians can improve national immunization system outcomes.</p> </div> <div class="adage-fwcta-cta"> <a href="https://downloads.aap.org/AAP/PDF/NPS%20Capacity%20to%20Improve%20IZ%20Systems_Indonesia_Nigeria.pdf" target="_blank" class="btn button-primary">Read More</a> </div> </div> </div> </section> </div></div></div><div class="row row5"><div class="block fullwidthctablock"> <div class="adage-fwcta-container gray"> <section class="adage-block adage-block-full-bleed adage-fwcta-section"> <div class="adage-fwcta-spacer"></div> <div class="adage-fwcta center"> <div class="adage-fwcta-inner"> <h2 class="adage-block-heading adage-fwcta-heading">The Pediatrician's Role in Supporting Nurturing Care for Early Childhood Development</h2> <div class="adage-fwcta-content"> <p>This issue brief illustrates the roles pediatricians can play in promoting early childhood development (ECD) in clinical and community settings. It summarizes the science behind early childhood development, the Nurturing Care Framework, and actionable steps pediatricians can take to incorporate nurturing care for ECD.</p> </div> <div class="adage-fwcta-cta"> <a href="https://downloads.aap.org/AAP/PDF/Issue%20Brief_Pediatricians_ECD_2022-0808.pdf" target="_blank" class="btn button-primary">Read More</a> </div> </div> </div> </section> </div></div></div><div class="row row6"><div class="block sectionblock"> <div class="section-block-container container white"> <div class="section-block row "> <div class="col-xxl-3 col-xl-3 col-lg-12 section-block-left "> <div> <h2>Global Health Resources</h2> <div class="section-block-description"> </div> </div> </div> <div class="col-xxl-9 col-xl-9 col-lg-12 section-block-right "> <div class="container"> <div><div class="row row0"><div class="block aggregatorblock"> <div class="cta-aggregator"> <div class="cta-aggregator-image"> </div> <h5 class="dialog-header"> <a href="/en/aap-global/global-health-resources/"> Global Health Resources </a> </h5> <div class="dialog-text"> Access child health resources from the AAP and global partners. </div> </div></div></div><div class="row row1"><div class="block aggregatorblock"> <div class="cta-aggregator"> <div class="cta-aggregator-image"> </div> <h5 class="dialog-header"> <a href="/link/64401bb49a7b4dd4bee5c5dd6d23aa48.aspx"> Tele-mentoring Resources: AAP - UNICEF Partnership for Improving Newborn Care in Three Countries </a> </h5> <div class="dialog-text"> This toolkit is a culmination of facilitated presentations, and related resources, for each of the newborn care topics identified as part of needs assessment visits. The resulting topics are organized within six main categories: Resuscitation, Essential Newborn Care, Small and Sick Baby, Follow-up Care and Prenatal Counseling, Quality Improvement, COVID-19 and Neonatal Care. </div> </div></div></div></div> </div> </div> </div> </div> </div></div></div> </div> </div> <div class="back-to-top" tabindex="0" id="backToTop"> <svg class="back-to-top-arrow"> <use xlink:href="#back-to-top-arrow"></use> </svg> </div> </div> <script type="text/javascript"> window.searchBox = { searchBoxText: 'Search All AAP', searchButtonText: 'Search', findIndexUrl: 'https://es-us-api01.episerver.com/3fu1nB75NF5xwBMuzJdHOF0KFePbaflM/aaop_index00214/', searchPageUrl: '/en/search/', shopSearchBoxText: 'Search shopAAP' }; </script> <script type="text/javascript"> window.GoogleAnalyticsBootstrap = { sendUserInformationtoGA: 'False', lockedContentUniqueUserId: '', userVisitorGroupName: '', } </script> <script> window.errorText = { dismissButtonText: 'Dismiss', requiredErrorText: 'This is a required field', invalidErrorText: 'This field is invalid', invalidPasswordText: 'Password must be at least 10 characters long', passwordMatchErrorText: 'Passwords must match', } window.passwordValidation = { passwordRequiredLength: 10, passwordRequireNonLetterOrDigit: false, passwordRequireDigit: false, passwordRequireUpperCase: false, passwordRequireLowerCase: false, } </script> <script> window.loginInfo = { loginUrl: '/en/my-account/login/' } </script> <footer class="footer" id="footer"> <div class="footer-top"> <div class="footer-top-wrapper"> <div class="footer-aap-logo"> <svg> <use xlink:href="#Seal_Pos"></use> </svg> </div> <div class="row"> <div class="col-xxl-6 col-sm-12"> <div class="footer-top-about"> We're 67​,000 pediatricians committed to the optimal physical, mental, and social health and well-being for all infants, children, adolescents, and young adults. </div> </div> <div class="col-xxl-6 col-sm-12"> <div class="footer-top-nav"> <div class="row"> <ul class="col-xxl-4 unlisted"> <li class="main-nav-menu-item aaphome "> <div class="main-nav-menu-item-top"> <a class="" href="/en/" target="" data-testid="link-aaphome"> AAP Home </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> <li class="main-nav-menu-item policy "> <div class="main-nav-menu-item-top"> <a class="" href="/en/policy/" target="" data-testid="link-policy"> Policy </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> <li class="main-nav-menu-item advocacy "> <div class="main-nav-menu-item-top"> <a class="" href="/en/advocacy/" target="" data-testid="link-advocacy"> Advocacy </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> </ul> <ul class="col-xxl-4 unlisted"> <li class="main-nav-menu-item pedialink "> <div class="main-nav-menu-item-top"> <a class="" href="/en/pedialink/" target="" data-testid="link-pedialink"> PediaLink </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> <li class="main-nav-menu-item practicemanagement "> <div class="main-nav-menu-item-top"> <a class="" href="/en/practice-management/" target="" data-testid="link-practicemanagement"> Practice Management </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> <li class="main-nav-menu-item patientcare "> <div class="main-nav-menu-item-top"> <a class="" href="/en/patient-care/" target="" data-testid="link-patientcare"> Patient Care </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> </ul> <ul class="col-xxl-4 unlisted"> <li class="main-nav-menu-item community "> <div class="main-nav-menu-item-top"> <a class="" href="/en/community/" target="" data-testid="link-community"> Community </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> <li class="main-nav-menu-item healthychildren "> <div class="main-nav-menu-item-top"> <a class="" href="http://healthychildren.org/" target="" data-testid="link-healthychildren"> Healthy Children </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> <li class="main-nav-menu-item shopaap "> <div class="main-nav-menu-item-top"> <a class="" href="/en/shopaap/" target="" data-testid="link-shopaap"> shopAAP </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> </ul> </div> </div> <div class="footer-top-mobile-nav"> <div class="row"> <ul class="col-sm-6 unlisted"> </ul> <ul class="col-sm-6 unlisted"> </ul> </div> </div> </div> </div> </div> </div> <div class="footer-links-wrapper"> <div class="footer-links" id="footer-links"> <div class="footer-links-main"> <ul class="unlisted col-sm-6"> <li class="main-nav-menu-item privacystatement "> <div class="main-nav-menu-item-top"> <a class="" href="/en/pages/privacy-statement/" target="" data-testid="link-privacystatement"> Privacy Statement </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> <li class="main-nav-menu-item termsofuse "> <div class="main-nav-menu-item-top"> <a class="" href="/en/pages/terms-of-use/" target="" data-testid="link-termsofuse"> Terms of Use </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> <li class="main-nav-menu-item supportcenter "> <div class="main-nav-menu-item-top"> <a class="" href="/en/support-center/" target="" data-testid="link-supportcenter"> Support Center </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> <li class="main-nav-menu-item codeofconduct "> <div class="main-nav-menu-item-top"> <a class="" href="/en/about-the-aap/american-academy-of-pediatrics-equity-and-inclusion-efforts/code-of-conduct/" target="" data-testid="link-codeofconduct"> Code of Conduct </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> <li class="main-nav-menu-item contactus "> <div class="main-nav-menu-item-top"> <a class="" href="/en/pages/contact-us/" target="" data-testid="link-contactus"> Contact Us </a> </div> <ul class="mobile-header-context-link-list"> </ul> </li> </ul> <ul class="unlisted col-sm-6"> </ul> </div> <ul class="footer-links-social unlisted"> <li class="main-nav-menu-item"> <a href="https://www.facebook.com/AmerAcadPeds" target="_blank"> <svg> <use xlink:href="#facebook-icon"></use> </svg> </a> </li> <li class="main-nav-menu-item"> <a href="https://www.linkedin.com/company/american-academy-of-pediatrics" target="_blank"> <svg> <use xlink:href="#linkedin-icon"></use> </svg> </a> </li> <li class="main-nav-menu-item"> <a href="https://twitter.com/AmerAcadPeds" target="_blank"> <svg> <use xlink:href="#twitter-icon"></use> </svg> </a> </li> <li class="main-nav-menu-item"> <a href="https://www.youtube.com/channel/UClR8YIQX5Fb8J2wmsUKLhvQ" target="_blank"> <svg> <use xlink:href="#youtube-icon"></use> </svg> </a> </li> <li class="main-nav-menu-item"> <a href="https://www.instagram.com/ameracadpeds/" target="_blank"> <svg> <use xlink:href="#instagram-icon"></use> </svg> </a> </li> </ul> </div> </div> <div class="footer-copyright-wrapper"> <div class="footer-copyright"> <p class="paragraph-caption">© Copyright 2024 American Academy of Pediatrics. All rights reserved.</p> </div> </div> </footer> <a class="feedback-form-link" target="_blank" href="/en/forms/feedback-form/"> Feedback Form </a> <script src="https://ajax.googleapis.com/ajax/libs/webfont/1.5.18/webfont.js"></script> <script> WebFont.load({ google: { families: ['Alegreya Sans:400,400italic,700,700italic', 'Alegreya:400,400italic,700,700italic'] } }); </script> <script src="https://players.brightcove.net/6056665225001/default_default/index.js"></script> <script src='/Bundles/js/common-bundle.js?v=a99dc922fdeee0f0be9b7e610920b0b2b3609c493afbd24db398782b8ec36907'></script> <script src='/Bundles/js/global-bundle.js?v=ffb0def9c7d266bafde611283b5de61e1d091a7c546960a8832b86692eacb4b9'></script> <script src='/Bundles/js/date-picker-bundle.js?v=5607472c79b4b8cf1231917918b9acd002bc7181ff9f2f508d9d2b29ce5f2b3c'></script> <script src='/Bundles/js/shop-carousel-bundle.js?v=e0b81793f12e054ce9f69548a6b10fe1db02a9df3ca353bd3723b471ae686e4c'></script> <script src='/Bundles/js/content-page-google-analytics-bundle.js?v=19e841c3eaf293a969f34673ac96c9095ea2b5216f650c5c0f9626dc80188b16'></script> <footer> <script defer="true" src="/Util/Find/epi-util/find.js"></script> <script> document.addEventListener('DOMContentLoaded',function(){if(typeof FindApi === 'function'){var api = new FindApi();api.setApplicationUrl('/');api.setServiceApiBaseUrl('/find_v2/');api.processEventFromCurrentUri();api.bindWindowEvents();api.bindAClickEvent();api.sendBufferedEvents();}}) </script> </footer> <!-- Custom Lucky Orange User Data --> </body> </html>