CINXE.COM
Academic Programs | Berkeley Public Health
<!doctype html> <html lang="en-US"> <head> <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-MCVMVTF');</script> <meta charset="UTF-8" /> <meta name="description" content="More than 75 years of transformational research and hands-on social impact for a better world."> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge"><script type="text/javascript">(window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:["bam.nr-data.net"]},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"601448630",accountID:"4354282",trustKey:"66686",xpid:"UAUCVVRbChAFVlRXBAUBXlU=",licenseKey:"NRJS-948474cd618f8781141",applicationID:"525534681"};;/*! For license information please see nr-loader-spa-1.274.0.min.js.LICENSE.txt */ (()=>{var e,t,r={8122:(e,t,r)=>{"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555:(e,t,r)=>{"use strict";r.d(t,{Vp:()=>c,fn:()=>s,x1:()=>u});var n=r(384),i=r(8122);const o={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){try{const t=c(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}function c(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function u(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.info=a[e])}},9417:(e,t,r)=>{"use strict";r.d(t,{D0:()=>h,gD:()=>g,xN:()=>p});var n=r(993);const i=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var o=r(2614),a=r(944),s=r(384),c=r(8122);const u="[data-nr-mask]",d=()=>{const e={mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,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},feature_flags:[],generic_events:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},harvest:{tooManyRequestsDelay:60},jserrors:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},logging:{enabled:!0,harvestTimeSeconds:10,autoStart:!0,level:n.p_.INFO},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:o.wk,inactiveMs:o.BB},session_replay:{autoStart:!0,enabled:!1,harvestTimeSeconds:60,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){i(t)?e.mask_selector="".concat(t,",").concat(u):""===t||null===t?e.mask_selector=u:(0,a.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){i(t)?e.block_selector+=",".concat(t):""!==t&&(0,a.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,a.R)(7,t)}},session_trace:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},soft_navigations:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},spa:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},ssl:void 0,user_actions:{enabled:!0}}},l={},f="All configuration objects require an agent identifier!";function h(e){if(!e)throw new Error(f);if(!l[e])throw new Error("Configuration for ".concat(e," was never set"));return l[e]}function p(e,t){if(!e)throw new Error(f);l[e]=(0,c.a)(t,d());const r=(0,s.nY)(e);r&&(r.init=l[e])}function g(e,t){if(!e)throw new Error(f);var r=h(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}},5603:(e,t,r)=>{"use strict";r.d(t,{a:()=>c,o:()=>s});var n=r(384),i=r(8122);const o={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},a={};function s(e){if(!e)throw new Error("All loader-config objects require an agent identifier!");if(!a[e])throw new Error("LoaderConfig for ".concat(e," was never set"));return a[e]}function c(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.loader_config=a[e])}},3371:(e,t,r)=>{"use strict";r.d(t,{V:()=>f,f:()=>l});var n=r(8122),i=r(384),o=r(6154),a=r(9324);let s=0;const c={buildEnv:a.F3,distMethod:a.Xs,version:a.xv,originTime:o.WN},u={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,timeKeeper:void 0,obfuscator:void 0},d={};function l(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!d[e])throw new Error("Runtime for ".concat(e," was never set"));return d[e]}function f(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");d[e]={...(0,n.a)(t,u),...c},Object.hasOwnProperty.call(d[e],"harvestCount")||Object.defineProperty(d[e],"harvestCount",{get:()=>++s});const r=(0,i.nY)(e);r&&(r.runtime=d[e])}},9324:(e,t,r)=>{"use strict";r.d(t,{F3:()=>i,Xs:()=>o,Yq:()=>a,xv:()=>n});const n="1.274.0",i="PROD",o="CDN",a="^2.0.0-alpha.17"},6154:(e,t,r)=>{"use strict";r.d(t,{A4:()=>s,OF:()=>d,RI:()=>i,WN:()=>h,bv:()=>o,gm:()=>a,lR:()=>f,m:()=>u,mw:()=>c,sb:()=>l});var n=r(1863);const i="undefined"!=typeof window&&!!window.document,o="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),s="complete"===a?.document?.readyState,c=Boolean("hidden"===a?.document?.visibilityState),u=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),l=d&&"undefined"==typeof SharedWorker,f=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),h=Date.now()-(0,n.t)()},7295:(e,t,r)=>{"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>o});var n=[];function i(e){if(!e||o(e))return!1;if(0===n.length)return!0;for(var t=0;t<n.length;t++){var r=n[t];if("*"===r.hostname)return!1;if(s(r.hostname,e.hostname)&&c(r.pathname,e.pathname))return!1}return!0}function o(e){return void 0===e.hostname}function a(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let o,a;i>0?(o=r.substring(0,i),a=r.substring(i)):(o=r,a="");let[s]=o.split(":");n.push({hostname:s,pathname:a})}}function s(e,t){return!(e.length>t.length)&&t.indexOf(e)===t.length-e.length}function c(e,t){return 0===e.indexOf("/")&&(e=e.substring(1)),0===t.indexOf("/")&&(t=t.substring(1)),""===e||e===t}},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>l,x3:()=>u});var n=r(7836),i=r(3606),o=r(860),a=r(2646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),h(e,t,!1),s[e].size&&f(e))}function d(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function l(e="",t="feature",r=!1){if(d(e),!e||!s[e].get(t)||r)return h(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((([e,t])=>t.staged))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((([t])=>{s[e].delete(t),h(e,t)})))}function h(e,t,r=!0){const o=e?n.ee.get(e):n.ee,s=i.i.handlers;if(!o.aborted&&o.backlog&&s){if(r){const e=o.backlog[t],r=s[t];if(r){for(let t=0;e&&t<e.length;++t)p(e[t],r);Object.entries(r).forEach((([e,t])=>{Object.values(t||{}).forEach((t=>{t[0]?.on&&t[0]?.context()instanceof a.y&&t[0].on(e,t[1])}))}))}}o.isolatedBacklog||delete s[t],o.backlog[t]=null,o.emit("drain-"+t,[])}}function p(e,t){var r=e[1];Object.values(t[r]||{}).forEach((t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],o=e[2];n.apply(i,o)}}))}},7836:(e,t,r)=>{"use strict";r.d(t,{P:()=>c,ee:()=>u});var n=r(384),i=r(8990),o=r(3371),a=r(2646),s=r(5607);const c="nr@context:".concat(s.W),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&(0,o.f)(r).isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=h(n),c=g(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=v()[s[e]];p&&p.push([f,e,r,a]);return a},get:m,listeners:g,context:h,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach((([e,n])=>{s[n]=t,t in r||(r[t]=[])}))},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach((e=>{delete f.backlog[e]}))},isBuffering:function(e){return!!v()[s[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function h(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return d[t]=d[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=u)},2646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(9908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,ZF:()=>c,bz:()=>a,el:()=>u});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}function c(){return s(16)}function u(){return s(32)}},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},7485:(e,t,r)=>{"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},944:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.debug&&console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t)}r.d(t,{R:()=>n})},5284:(e,t,r)=>{"use strict";r.d(t,{t:()=>c,B:()=>s});var n=r(7836),i=r(6154);const o="newrelic";const a=new Set,s={};function c(e,t){const r=n.ee.get(t);s[t]??={},e&&"object"==typeof e&&(a.has(t)||(r.emit("rumresp",[e]),s[t]=e,a.add(t),function(e={}){try{i.gm.dispatchEvent(new CustomEvent(o,{detail:e}))}catch(e){}}({loaded:!0})))}},8990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout((()=>{i=clearTimeout(i)}),t)),n||(clearTimeout(i),i=setTimeout((()=>{e.apply(this,r)}),t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},3304:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(7836);const i=()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}};function o(e){try{return JSON.stringify(e,i())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},5289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,sB:()=>a});var n=r(3878);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.sp)("load",e,t)}function a(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}},384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>o,US:()=>d,Zm:()=>a,bQ:()=>c,dV:()=>s,nY:()=>u,pV:()=>l});var n=r(6154),i=r(1863);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function s(){let e=a();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},2843:(e,t,r)=>{"use strict";r.d(t,{u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},8139:(e,t,r)=>{"use strict";r.d(t,{u:()=>f});var n=r(7836),i=r(3434),o=r(8990),a=r(6154);const s={},c=a.gm.XMLHttpRequest,u="addEventListener",d="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e){var t=function(e){return(e||n.ee).get("events")}(e);if(s[t.debugId]++)return t;s[t.debugId]=1;var r=(0,i.YM)(t,!0);function f(e){r.inPlace(e,[u,d],"-",p)}function p(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,f),h(a.gm,f),h(c.prototype,f)),t.on(u+"-start",(function(e,t){var n=e[1];if(null!==n&&("function"==typeof n||"object"==typeof n)){var i=(0,o.I)(n,l,(function(){var e={object:function(){if("function"!=typeof n.handleEvent)return;return n.handleEvent.apply(n,arguments)},function:n}[typeof n];return e?r(e,"fn-",null,e.name||"anonymous"):n}));this.wrapped=e[1]=i}})),t.on(d+"-start",(function(e){e[1]=this.wrapped||e[1]})),t}function h(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,u);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434:(e,t,r)=>{"use strict";r.d(t,{Jt:()=>o,YM:()=>c});var n=r(7836),i=r(5607);const o="nr@original:".concat(i.W);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach((function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})})),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}},9300:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.ajax},3333:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,Zp:()=>i,mq:()=>s,nf:()=>a,qN:()=>o});const n=r(860).K7.genericEvents,i=["auxclick","click","copy","keydown","paste","scrollend"],o=["focus","blur"],a=4,s=1e3},6774:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.jserrors},993:(e,t,r)=>{"use strict";r.d(t,{ET:()=>o,TZ:()=>a,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o="log",a=n.K7.logging},3785:(e,t,r)=>{"use strict";r.d(t,{R:()=>c,b:()=>u});var n=r(9908),i=r(1863),o=r(860),a=r(3969),s=r(993);function c(e,t,r={},c=s.p_.INFO){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,o.K7.metrics,e),(0,n.p)(s.ET,[(0,i.t)(),t,r,c],void 0,o.K7.logging,e)}function u(e){return"string"==typeof e&&Object.values(s.p_).some((t=>t===e.toUpperCase().trim()))}},3969:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,XG:()=>s,rs:()=>i,xV:()=>a,z_:()=>o});const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},6344:(e,t,r)=>{"use strict";r.d(t,{BB:()=>d,G4:()=>o,Qb:()=>l,TZ:()=>i,Ug:()=>a,_s:()=>s,bc:()=>u,yP:()=>c});var n=r(2614);const i=r(860).K7.sessionReplay,o={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"},a=.12,s={DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},c={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0},u={RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},d=5e3,l={API:"api"}},5270:(e,t,r)=>{"use strict";r.d(t,{Aw:()=>c,CT:()=>u,SR:()=>s});var n=r(384),i=r(9417),o=r(7767),a=r(6154);function s(e){return!!(0,n.dV)().o.MO&&(0,o.V)(e)&&!0===(0,i.gD)(e,"session_trace.enabled")}function c(e){return!0===(0,i.gD)(e,"session_replay.preload")&&s(e)}function u(e,t){const r=t.correctAbsoluteTimestamp(e);return{originalTimestamp:e,correctedTimestamp:r,timestampDiff:e-r,originTime:a.WN,correctedOriginTime:t.correctedOriginTime,originTimeDiff:Math.floor(a.WN-t.correctedOriginTime)}}},3738:(e,t,r)=>{"use strict";r.d(t,{He:()=>i,Kp:()=>s,Lc:()=>u,Rz:()=>d,TZ:()=>n,bD:()=>o,d3:()=>a,jx:()=>l,uP:()=>c});const n=r(860).K7.sessionTrace,i="bstResource",o="resource",a="-start",s="-end",c="fn"+a,u="fn"+s,d="pushState",l=1e3},3962:(e,t,r)=>{"use strict";r.d(t,{AM:()=>o,O2:()=>s,Qu:()=>c,TZ:()=>a,ih:()=>u,tC:()=>i});var n=r(860);const i=["click","keydown","submit"],o="api",a=n.K7.softNav,s={INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},c={INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},u={IP:"in progress",FIN:"finished",CAN:"cancelled"}},7378:(e,t,r)=>{"use strict";r.d(t,{$p:()=>x,BR:()=>b,Kp:()=>R,L3:()=>y,Lc:()=>c,NC:()=>o,SG:()=>d,TZ:()=>i,U6:()=>p,UT:()=>m,d3:()=>w,dT:()=>f,e5:()=>A,gx:()=>v,l9:()=>l,oW:()=>h,op:()=>g,rw:()=>u,tH:()=>E,uP:()=>s,wW:()=>T,xq:()=>a});var n=r(384);const i=r(860).K7.spa,o=["click","submit","keypress","keydown","keyup","change"],a=999,s="fn-start",c="fn-end",u="cb-start",d="api-ixn-",l="remaining",f="interaction",h="spaNode",p="jsonpNode",g="fetch-start",m="fetch-done",v="fetch-body-",b="jsonp-end",y=(0,n.dV)().o.ST,w="-start",R="-end",x="-body",T="cb"+R,A="jsTime",E="fetch"},4234:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(7836),i=r(1687);class o{constructor(e,t){this.agentIdentifier=e,this.ee=n.ee.get(e),this.featureName=t,this.blocked=!1}deregisterDrain(){(0,i.x3)(this.agentIdentifier,this.featureName)}}},7767:(e,t,r)=>{"use strict";r.d(t,{V:()=>o});var n=r(9417),i=r(6154);const o=e=>i.RI&&!0===(0,n.gD)(e,"privacy.cookies_enabled")},425:(e,t,r)=>{"use strict";r.d(t,{j:()=>j});var n=r(860),i=r(2555),o=r(3371),a=r(9908),s=r(7836),c=r(1687),u=r(5289),d=r(6154),l=r(944),f=r(3969),h=r(384),p=r(6344);const g=["setErrorHandler","finished","addToTrace","addRelease","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",p.G4.RECORD,p.G4.PAUSE,"log","wrapLogger"],m=["setErrorHandler","finished","addToTrace","addRelease"];var v=r(1863),b=r(2614),y=r(993),w=r(3785),R=r(2646),x=r(3434);function T(e,t,r,n){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const i=function(e){return(e||s.ee).get("logger")}(e),o=(0,x.YM)(i),a=new R.y(s.P);return a.level=n.level,a.customAttributes=n.customAttributes,o.inPlace(t,[r],"wrap-logger-",a),i}function A(){const e=(0,h.pV)();g.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.api?e.exposed&&e.api[t]&&n.push(e.api[t](...r)):(0,l.R)(38,t)})),n.length>1?n:n[0]}(t,...r)}))}const E={};var S=r(9417),N=r(5603),O=r(5284);const _=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let I=!1;function j(e,t={},g,R){let{init:x,info:j,loader_config:P,runtime:C={},exposed:k=!0}=t;C.loaderType=g;const L=(0,h.pV)();j||(x=L.init,j=L.info,P=L.loader_config),(0,S.xN)(e.agentIdentifier,x||{}),(0,N.a)(e.agentIdentifier,P||{}),j.jsAttributes??={},d.bv&&(j.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,j);const H=(0,S.D0)(e.agentIdentifier),D=[j.beacon,j.errorBeacon];I||(H.proxy.assets&&(_(H.proxy.assets),D.push(H.proxy.assets)),H.proxy.beacon&&D.push(H.proxy.beacon),A(),(0,h.US)("activatedFeatures",O.B),e.runSoftNavOverSpa&&=!0===H.soft_navigations.enabled&&H.feature_flags.includes("soft_nav")),C.denyList=[...H.ajax.deny_list||[],...H.ajax.block_internal?D:[]],C.ptid=e.agentIdentifier,(0,o.V)(e.agentIdentifier,C),e.ee=s.ee.get(e.agentIdentifier),void 0===e.api&&(e.api=function(e,t,h=!1){t||(0,c.Ak)(e,"api");const g={};var R=s.ee.get(e),x=R.get("tracer");E[e]=b.g.OFF,R.on(p.G4.REPLAY_RUNNING,(t=>{E[e]=t}));var A="api-",S=A+"ixn-";function N(t,r,n,o){const a=(0,i.Vp)(e);return null===r?delete a.jsAttributes[t]:(0,i.x1)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),I(A,n,!0,o||null===r?"session":void 0)(t,r)}function O(){}g.log=function(e,{customAttributes:t={},level:r=y.p_.INFO}={}){(0,a.p)(f.xV,["API/log/called"],void 0,n.K7.metrics,R),(0,w.R)(R,e,t,r)},g.wrapLogger=(e,t,{customAttributes:r={},level:i=y.p_.INFO}={})=>{(0,a.p)(f.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,R),T(R,e,t,{customAttributes:r,level:i})},m.forEach((e=>{g[e]=I(A,e,!0,"api")})),g.addPageAction=I(A,"addPageAction",!0,n.K7.genericEvents),g.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,o.f)(e).customTransaction=(r||"http://custom.transaction")+t,I(A,"setPageViewName",!0)()},g.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return N(e,t,"setCustomAttribute",r);(0,l.R)(40,typeof t)}else(0,l.R)(39,typeof e)},g.setUserId=function(e){if("string"==typeof e||null===e)return N("enduser.id",e,"setUserId",!0);(0,l.R)(41,typeof e)},g.setApplicationVersion=function(e){if("string"==typeof e||null===e)return N("application.version",e,"setApplicationVersion",!1);(0,l.R)(42,typeof e)},g.start=()=>{try{(0,a.p)(f.xV,["API/start/called"],void 0,n.K7.metrics,R),R.emit("manual-start-all")}catch(e){(0,l.R)(23,e)}},g[p.G4.RECORD]=function(){(0,a.p)(f.xV,["API/recordReplay/called"],void 0,n.K7.metrics,R),(0,a.p)(p.G4.RECORD,[],void 0,n.K7.sessionReplay,R)},g[p.G4.PAUSE]=function(){(0,a.p)(f.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,R),(0,a.p)(p.G4.PAUSE,[],void 0,n.K7.sessionReplay,R)},g.interaction=function(e){return(new O).get("object"==typeof e?e:{})};const _=O.prototype={createTracer:function(e,t){var r={},i=this,o="function"==typeof t;return(0,a.p)(f.xV,["API/createTracer/called"],void 0,n.K7.metrics,R),h||(0,a.p)(S+"tracer",[(0,v.t)(),e,r],i,n.K7.spa,R),function(){if(x.emit((o?"":"no-")+"fn-start",[(0,v.t)(),i,o],r),o)try{return t.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw x.emit("fn-err",[arguments,this,t],r),t}finally{x.emit("fn-end",[(0,v.t)()],r)}}}};function I(e,t,r,i){return function(){return(0,a.p)(f.xV,["API/"+t+"/called"],void 0,n.K7.metrics,R),i&&(0,a.p)(e+t,[(0,v.t)(),...arguments],r?null:this,i,R),r?void 0:this}}function j(){r.e(478).then(r.bind(r,8778)).then((({setAPI:t})=>{t(e),(0,c.Ze)(e,"api")})).catch((e=>{(0,l.R)(27,e),R.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{_[e]=I(S,e,void 0,h?n.K7.softNav:n.K7.spa)})),g.setCurrentRouteName=h?I(S,"routeName",void 0,n.K7.softNav):I(A,"routeName",!0,n.K7.spa),g.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,a.p)(f.xV,["API/noticeError/called"],void 0,n.K7.metrics,R),(0,a.p)("err",[t,(0,v.t)(),!1,r,!!E[e]],void 0,n.K7.jserrors,R)},d.RI?(0,u.GG)((()=>j()),!0):j(),g}(e.agentIdentifier,R,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=k),I=!0}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>o,K7:()=>n,P3:()=>i});const n={ajax:"ajax",genericEvents:"generic_events",jserrors:"jserrors",logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},i={[n.pageViewEvent]:1,[n.pageViewTiming]:2,[n.metrics]:3,[n.jserrors]:4,[n.spa]:5,[n.ajax]:6,[n.sessionTrace]:7,[n.softNav]:8,[n.sessionReplay]:9,[n.logging]:10,[n.genericEvents]:11},o={[n.pageViewTiming]:"events",[n.ajax]:"events",[n.spa]:"events",[n.softNav]:"events",[n.metrics]:"jserrors",[n.jserrors]:"jserrors",[n.sessionTrace]:"browser/blobs",[n.sessionReplay]:"browser/blobs",[n.logging]:"browser/logs",[n.genericEvents]:"ins"}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>({212:"nr-spa-compressor",249:"nr-spa-recorder",478:"nr-spa"}[e]+"-1.274.0.min.js"),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.274.0.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d<u.length;d++){var l=u[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+o){s=l;break}}if(!s){c=!0;var f={478:"sha512-1vUqEfJPB8Pihje9mv5CfYgkitO1FWcS+UQb84DbXqP8oYctRv4/lzl/MzNLPlRhcY1WVDBGL20I8vm6s2VV7g==",249:"sha512-Y/BeZAh6VSTmUtUNmS5XdyKxL92s30Fyyj8xVW76HSPxcKItL4+x2+kGMZc8pMJnUpZDz1L4eftZQAJh3D8NnA==",212:"sha512-Gn2tQ3qog5Yhrx/gRutkSTYPp+7nkKFt4/mIXg99LxcNpMDAYJZDBYmAACdoHNM86+iq1F3cBcQotFNzjIX8bw=="};(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),f[a]&&(s.integrity=f[a])}e[r]=[n];var h=(t,n)=>{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(h.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=h.bind(null,s.onerror),s.onload=h.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={38:0,788:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.274.0.PROD"]=self["webpackChunk:NRBA-1.274.0.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8374);var e=i(944),t=i(6344),r=i(9566);class n{agentIdentifier;constructor(e=(0,r.LA)(16)){this.agentIdentifier=e}#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}addPageAction(e,t){return this.#e("addPageAction",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}addRelease(e,t){return this.#e("addRelease",e,t)}log(e,t){return this.#e("log",e,t)}}class o extends n{#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}start(){return this.#e("start")}finished(e){return this.#e("finished",e)}recordReplay(){return this.#e(t.G4.RECORD)}pauseReplay(){return this.#e(t.G4.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}wrapLogger(e,t,r){return this.#e("wrapLogger",e,t,r)}}var a=i(860),s=i(9417);const c=Object.values(a.K7);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.gD)(t,"".concat(e,".enabled"))}(r,e)})),t}var d=i(425);var l=i(1687),f=i(4234),h=i(5289),p=i(6154),g=i(5270),m=i(7767),v=i(6389);class b extends f.W{constructor(e,t,r=!0){super(e.agentIdentifier,t),this.auto=r,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===e.init[this.featureName].autoStart&&(this.auto=!1),this.auto?(0,l.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,v.J)((()=>{(0,l.Ak)(e.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator(e)})))}importAggregator(t,r={}){if(this.featAggregate||!this.auto)return;let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let o;try{if((0,m.V)(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(478).then(i.bind(i,6526));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(t.sharedAggregator)await t.sharedAggregator;else{t.sharedAggregator=i.e(478).then(i.bind(i,9337));const{EventAggregator:e}=await t.sharedAggregator;t.sharedAggregator=new e}if(!this.#t(this.featureName,o))return(0,l.Ze)(this.agentIdentifier,this.featureName),void n(!1);const{lazyFeatureLoader:e}=await i.e(478).then(i.bind(i,6103)),{Aggregate:a}=await e(this.featureName,"aggregate");this.featAggregate=new a(t,r),n(!0)}catch(t){(0,e.R)(34,t),this.abortHandler?.(),(0,l.Ze)(this.agentIdentifier,this.featureName,!0),n(!1),this.ee&&this.ee.abort()}};p.RI?(0,h.GG)((()=>o()),!0):o()}#t(e,t){switch(e){case a.K7.sessionReplay:return(0,g.SR)(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var y=i(6630);class w extends b{static featureName=y.T;constructor(e,t=!0){super(e,y.T,t),this.importAggregator(e)}}var R=i(384);var x=i(9908),T=i(2843),A=i(3878),E=i(782),S=i(1863);class N extends b{static featureName=E.T;constructor(e,t=!0){super(e,E.T,t),p.RI&&((0,T.u)((()=>(0,x.p)("docHidden",[(0,S.t)()],void 0,E.T,this.ee)),!0),(0,A.sp)("pagehide",(()=>(0,x.p)("winPagehide",[(0,S.t)()],void 0,E.T,this.ee))),this.importAggregator(e))}}var O=i(3969);class _ extends b{static featureName=O.TZ;constructor(e,t=!0){super(e,O.TZ,t),this.importAggregator(e)}}var I=i(6774),j=i(3304);class P{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,j.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function C(e){return H(e)?e:new P(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic)}function k(e){const t="Unhandled Promise Rejection";if(!e?.reason)return;if(H(e.reason))try{return e.reason.message=t+": "+e.reason.message,C(e.reason)}catch(t){return C(e.reason)}const r=C(e.reason);return r.message=t+": "+r?.message,r}function L(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new P(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic);return t.name=SyntaxError.name,t}return H(e.error)?e.error:C(e)}function H(e){return e instanceof Error&&!!e.stack}class D extends b{static featureName=I.T;#r=!1;constructor(e,r=!0){super(e,I.T,r);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",(e=>{this.abortHandler&&(0,x.p)("ierr",[C(e),(0,S.t)(),!0,{},this.#r],void 0,this.featureName,this.ee)})),this.ee.on(t.G4.REPLAY_RUNNING,(e=>{this.#r=e})),p.gm.addEventListener("unhandledrejection",(e=>{this.abortHandler&&(0,x.p)("err",[k(e),(0,S.t)(),!1,{unhandledPromiseRejection:1},this.#r],void 0,this.featureName,this.ee)}),(0,A.jT)(!1,this.removeOnAbort?.signal)),p.gm.addEventListener("error",(e=>{this.abortHandler&&(0,x.p)("err",[L(e),(0,S.t)(),!1,{},this.#r],void 0,this.featureName,this.ee)}),(0,A.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var M=i(8990);let K=1;const U="nr@id";function V(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===p.gm?0:(0,M.I)(e,U,(function(){return K++}))}function G(e){if("string"==typeof e&&e.length)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,j.A)(e).length}catch(e){return}}}var F=i(8139),B=i(7836),W=i(3434);const z={},q=["open","send"];function Z(t){var r=t||B.ee;const n=function(e){return(e||B.ee).get("xhr")}(r);if(z[n.debugId]++)return n;z[n.debugId]=1,(0,F.u)(r);var i=(0,W.YM)(n),o=p.gm.XMLHttpRequest,a=p.gm.MutationObserver,s=p.gm.Promise,c=p.gm.setInterval,u="readystatechange",d=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],l=[],f=p.gm.XMLHttpRequest=function(t){const r=new o(t),a=n.context(r);try{n.emit("new-xhr",[r],a),r.addEventListener(u,(s=a,function(){var e=this;e.readyState>3&&!s.resolved&&(s.resolved=!0,n.emit("xhr-resolved",[],e)),i.inPlace(e,d,"fn-",y)}),(0,A.jT)(!1))}catch(t){(0,e.R)(15,t);try{n.emit("internal-error",[t])}catch(e){}}var s;return r};function h(e,t){i.inPlace(t,["onreadystatechange"],"fn-",y)}if(function(e,t){for(var r in e)t[r]=e[r]}(o,f),f.prototype=o.prototype,i.inPlace(f.prototype,q,"-xhr-",y),n.on("send-xhr-start",(function(e,t){h(e,t),function(e){l.push(e),a&&(g?g.then(b):c?c(b):(m=-m,v.data=m))}(t)})),n.on("open-xhr-start",h),a){var g=s&&s.resolve();if(!c&&!s){var m=1,v=document.createTextNode(m);new a(b).observe(v,{characterData:!0})}}else r.on("fn-end",(function(e){e[0]&&e[0].type===u||b()}));function b(){for(var e=0;e<l.length;e++)h(0,l[e]);l.length&&(l=[])}function y(e,t){return t}return n}var Y="fetch-",X=Y+"body-",J=["arrayBuffer","blob","json","text","formData"],Q=p.gm.Request,ee=p.gm.Response,te="prototype";const re={};function ne(e){const t=function(e){return(e||B.ee).get("fetch")}(e);if(!(Q&&ee&&p.gm.fetch))return t;if(re[t.debugId]++)return t;function r(e,r,n){var i=e[r];"function"==typeof i&&(e[r]=function(){var e,r=[...arguments],o={};t.emit(n+"before-start",[r],o),o[B.P]&&o[B.P].dt&&(e=o[B.P].dt);var a=i.apply(this,r);return t.emit(n+"start",[r,e],a),a.then((function(e){return t.emit(n+"end",[null,e],a),e}),(function(e){throw t.emit(n+"end",[e],a),e}))})}return re[t.debugId]=1,J.forEach((e=>{r(Q[te],e,X),r(ee[te],e,X)})),r(p.gm,"fetch",Y),t.on(Y+"end",(function(e,r){var n=this;if(r){var i=r.headers.get("content-length");null!==i&&(n.rxSize=i),t.emit(Y+"done",[null,r],n)}else t.emit(Y+"done",[e],n)})),t}var ie=i(7485),oe=i(5603);class ae{constructor(e){this.agentIdentifier=e}generateTracePayload(e){if(!this.shouldGenerateTrace(e))return null;var t=(0,oe.o)(this.agentIdentifier);if(!t)return null;var n=(t.accountID||"").toString()||null,i=(t.agentID||"").toString()||null,o=(t.trustKey||"").toString()||null;if(!n||!i)return null;var a=(0,r.ZF)(),s=(0,r.el)(),c=Date.now(),u={spanId:a,traceId:s,timestamp:c};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(u.traceContextParentHeader=this.generateTraceContextParentHeader(a,s),u.traceContextStateHeader=this.generateTraceContextStateHeader(a,c,n,i,o)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(u.newrelicHeader=this.generateTraceHeader(a,s,c,n,i,o)),u}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,o){if(!("function"==typeof p.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return o&&n!==o&&(a.d.tk=o),btoa((0,j.A)(a))}shouldGenerateTrace(e){return this.isDtEnabled()&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1,r={};if((0,s.gD)(this.agentIdentifier,"distributed_tracing")&&(r=(0,s.D0)(this.agentIdentifier).distributed_tracing),e.sameOrigin)t=!0;else if(r.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,ie.D)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}isDtEnabled(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.enabled}excludeNewrelicHeader(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.cors_use_tracecontext_headers}}var se=i(9300),ce=i(7295),ue=["load","error","abort","timeout"],de=ue.length,le=(0,R.dV)().o.REQ,fe=(0,R.dV)().o.XHR;class he extends b{static featureName=se.T;constructor(e,t=!0){super(e,se.T,t),this.dt=new ae(e.agentIdentifier),this.handler=(e,t,r,n)=>(0,x.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};p.gm?.performance?.getEntriesByType("resource").forEach((t=>{if(t.initiatorType in e&&0!==t.responseStatus){const r={status:t.responseStatus},n={rxSize:t.transferSize,duration:Math.floor(t.duration),cbTime:0};pe(r,t.name),this.handler("xhr",[r,n,t.startTime,t.responseEnd,e[t.initiatorType]],void 0,a.K7.ajax)}}))}catch(e){}ne(this.ee),Z(this.ee),function(e,t,r,n){function i(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=R,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},e.addEventListener("load",(function(r){T(t,e)}),(0,A.jT)(!1)),p.lR||e.addEventListener("progress",(function(e){t.lastSize=e.loaded}),(0,A.jT)(!1))}function o(e){this.params={method:e[0]},pe(this,e[1]),this.metrics={}}function s(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var i=n.generateTracePayload(this.parsedOrigin);if(i){var o=!1;i.newrelicHeader&&(r.setRequestHeader("newrelic",i.newrelicHeader),o=!0),i.traceContextParentHeader&&(r.setRequestHeader("traceparent",i.traceContextParentHeader),i.traceContextStateHeader&&r.setRequestHeader("tracestate",i.traceContextStateHeader),o=!0),o&&(this.dt=i)}}function c(e,r){var n=this.metrics,i=e[0],o=this;if(n&&i){var a=G(i);a&&(n.txSize=a)}this.startTime=(0,S.t)(),this.body=i,this.listener=function(e){try{"abort"!==e.type||o.loadCaptureCalled||(o.params.aborted=!0),("load"!==e.type||o.called===o.totalCbs&&(o.onloadCalled||"function"!=typeof r.onload)&&"function"==typeof o.end)&&o.end(r)}catch(e){try{t.emit("internal-error",[e])}catch(e){}}};for(var s=0;s<de;s++)r.addEventListener(ue[s],this.listener,(0,A.jT)(!1))}function u(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function d(e,t){var r=""+V(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function l(e,t){var r=""+V(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function f(){this.endTime=(0,S.t)()}function h(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-added",[e[1],e[2]],r)}function g(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-removed",[e[1],e[2]],r)}function m(e,t,r){t instanceof fe&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,S.t)()))}function v(e,r){this.xhrCbStart&&t.emit("xhr-cb-time",[(0,S.t)()-this.xhrCbStart,this.onload,r],r)}function b(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&p.RI&&(t=""+p.gm.location.href):e[0]&&e[0].url?t=e[0].url:p.gm?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,ie.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var i=n.generateTracePayload(this.parsedOrigin);if(i&&(i.newrelicHeader||i.traceContextParentHeader))if(e[0]&&e[0].headers)s(e[0].headers,i)&&(this.dt=i);else{var o={};for(var a in r)o[a]=r[a];o.headers=new Headers(r.headers||{}),s(o.headers,i)&&(this.dt=i),e.length>1?e[1]=o:e.push(o)}}function s(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function y(e,t){this.params={},this.metrics={},this.startTime=(0,S.t)(),this.dt=t,e.length>=1&&(this.target=e[0]),e.length>=2&&(this.opts=e[1]);var r,n=this.opts||{},i=this.target;"string"==typeof i?r=i:"object"==typeof i&&i instanceof le?r=i.url:p.gm?.URL&&"object"==typeof i&&i instanceof URL&&(r=i.href),pe(this,r);var o=(""+(i&&i instanceof le&&i.method||n.method||"GET")).toUpperCase();this.params.method=o,this.body=n.body,this.txSize=G(n.body)||0}function w(e,t){if(this.endTime=(0,S.t)(),this.params||(this.params={}),(0,ce.iW)(this.params))return;let n;this.params.status=t?t.status:0,"string"==typeof this.rxSize&&this.rxSize.length>0&&(n=+this.rxSize);const i={txSize:this.txSize,rxSize:n,duration:(0,S.t)()-this.startTime};r("xhr",[this.params,i,this.startTime,this.endTime,"fetch"],this,a.K7.ajax)}function R(e){const t=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(let t=0;t<de;t++)e.removeEventListener(ue[t],this.listener,!1);t.aborted||(0,ce.iW)(t)||(n.duration=(0,S.t)()-this.startTime,this.loadCazptureCalled||4!==e.readyState?null==t.status&&(t.status=0):T(this,e),n.cbTime=this.cbTime,r("xhr",[t,n,this.startTime,this.endTime,"xhr"],this,a.K7.ajax))}}function T(e,r){e.params.status=r.status;var n=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?G(e.response):"text"===r||""===r||void 0===r?G(e.responseText):void 0}(r,e.lastSize);if(n&&(e.metrics.rxSize=n),e.sameOrigin){var i=r.getResponseHeader("X-NewRelic-App-Data");i&&((0,x.p)(O.rs,["Ajax/CrossApplicationTracing/Header/Seen"],void 0,a.K7.metrics,t),e.params.cat=i.split(", ").pop())}e.loadCaptureCalled=!0}t.on("new-xhr",i),t.on("open-xhr-start",o),t.on("open-xhr-end",s),t.on("send-xhr-start",c),t.on("xhr-cb-time",u),t.on("xhr-load-added",d),t.on("xhr-load-removed",l),t.on("xhr-resolved",f),t.on("addEventListener-end",h),t.on("removeEventListener-end",g),t.on("fn-end",v),t.on("fetch-before-start",b),t.on("fetch-start",y),t.on("fn-start",m),t.on("fetch-done",w)}(e,this.ee,this.handler,this.dt),this.importAggregator(e)}}function pe(e,t){var r=(0,ie.D)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}const ge={},me=["pushState","replaceState"];function ve(e){const t=function(e){return(e||B.ee).get("history")}(e);return!p.RI||ge[t.debugId]++||(ge[t.debugId]=1,(0,W.YM)(t).inPlace(window.history,me,"-")),t}var be=i(3738);const{He:ye,bD:we,d3:Re,Kp:xe,TZ:Te,Lc:Ae,uP:Ee,Rz:Se}=be;class Ne extends b{static featureName=Te;constructor(e,t=!0){super(e,Te,t);if(!(0,m.V)(this.agentIdentifier))return void this.deregisterDrain();const r=this.ee;let n;ve(r),this.eventsEE=(0,F.u)(r),this.eventsEE.on(Ee,(function(e,t){this.bstStart=(0,S.t)()})),this.eventsEE.on(Ae,(function(e,t){(0,x.p)("bst",[e[0],t,this.bstStart,(0,S.t)()],void 0,a.K7.sessionTrace,r)})),r.on(Se+Re,(function(e){this.time=(0,S.t)(),this.startPath=location.pathname+location.hash})),r.on(Se+xe,(function(e){(0,x.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,a.K7.sessionTrace,r)}));try{n=new PerformanceObserver((e=>{const t=e.getEntries();(0,x.p)(ye,[t],void 0,a.K7.sessionTrace,r)})),n.observe({type:we,buffered:!0})}catch(e){}this.importAggregator(e,{resourceObserver:n})}}var Oe=i(2614);class _e extends b{static featureName=t.TZ;#i;#o;constructor(e,r=!0){let n;super(e,t.TZ,r),this.replayRunning=!1,this.#o=e;try{n=JSON.parse(localStorage.getItem("".concat(Oe.H3,"_").concat(Oe.uh)))}catch(e){}(0,g.SR)(e.agentIdentifier)&&this.ee.on(t.G4.RECORD,(()=>this.#a())),this.#s(n)?(this.#i=n?.sessionReplayMode,this.#c()):this.importAggregator(e),this.ee.on("err",(e=>{this.replayRunning&&(this.errorNoticed=!0,(0,x.p)(t.G4.ERROR_DURING_REPLAY,[e],void 0,this.featureName,this.ee))})),this.ee.on(t.G4.REPLAY_RUNNING,(e=>{this.replayRunning=e}))}#s(e){return e&&(e.sessionReplayMode===Oe.g.FULL||e.sessionReplayMode===Oe.g.ERROR)||(0,g.Aw)(this.agentIdentifier)}#u=!1;async#c(e){if(!this.#u){this.#u=!0;try{const{Recorder:t}=await Promise.all([i.e(478),i.e(249)]).then(i.bind(i,8589));this.recorder??=new t({mode:this.#i,agentIdentifier:this.agentIdentifier,trigger:e,ee:this.ee}),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording}catch(e){}this.importAggregator(this.#o,{recorder:this.recorder,errorNoticed:this.errorNoticed})}}#a(){this.featAggregate?this.featAggregate.mode!==Oe.g.FULL&&this.featAggregate.initializeRecording(Oe.g.FULL,!0):(this.#i=Oe.g.FULL,this.#c(t.Qb.API),this.recorder&&this.recorder.parent.mode!==Oe.g.FULL&&(this.recorder.parent.mode=Oe.g.FULL,this.recorder.stopRecording(),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording))}}var Ie=i(3962);class je extends b{static featureName=Ie.TZ;constructor(e,t=!0){if(super(e,Ie.TZ,t),!p.RI||!(0,R.dV)().o.MO)return;const r=ve(this.ee);Ie.tC.forEach((e=>{(0,A.sp)(e,(e=>{a(e)}),!0)}));const n=()=>(0,x.p)("newURL",[(0,S.t)(),""+window.location],void 0,this.featureName,this.ee);r.on("pushState-end",n),r.on("replaceState-end",n);try{this.removeOnAbort=new AbortController}catch(e){}(0,A.sp)("popstate",(e=>(0,x.p)("newURL",[e.timeStamp,""+window.location],void 0,this.featureName,this.ee)),!0,this.removeOnAbort?.signal);let i=!1;const o=new((0,R.dV)().o.MO)(((e,t)=>{i||(i=!0,requestAnimationFrame((()=>{(0,x.p)("newDom",[(0,S.t)()],void 0,this.featureName,this.ee),i=!1})))})),a=(0,v.s)((e=>{(0,x.p)("newUIEvent",[e],void 0,this.featureName,this.ee),o.observe(document.body,{attributes:!0,childList:!0,subtree:!0,characterData:!0})}),100,{leading:!0});this.abortHandler=function(){this.removeOnAbort?.abort(),o.disconnect(),this.abortHandler=void 0},this.importAggregator(e,{domObserver:o})}}var Pe=i(7378);const Ce={},ke=["appendChild","insertBefore","replaceChild"];function Le(e){const t=function(e){return(e||B.ee).get("jsonp")}(e);if(!p.RI||Ce[t.debugId])return t;Ce[t.debugId]=!0;var r=(0,W.YM)(t),n=/[?&](?:callback|cb)=([^&#]+)/,i=/(.*)\.([^.]+)/,o=/^(\w+)(\.|$)(.*)$/;function a(e,t){if(!e)return t;const r=e.match(o),n=r[1];return a(r[3],t[n])}return r.inPlace(Node.prototype,ke,"dom-"),t.on("dom-start",(function(e){!function(e){if(!e||"string"!=typeof e.nodeName||"script"!==e.nodeName.toLowerCase())return;if("function"!=typeof e.addEventListener)return;var o=(s=e.src,c=s.match(n),c?c[1]:null);var s,c;if(!o)return;var u=function(e){var t=e.match(i);if(t&&t.length>=3)return{key:t[2],parent:a(t[1],window)};return{key:e,parent:window}}(o);if("function"!=typeof u.parent[u.key])return;var d={};function l(){t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,A.jT)(!1)),e.removeEventListener("error",f,(0,A.jT)(!1))}function f(){t.emit("jsonp-error",[],d),t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,A.jT)(!1)),e.removeEventListener("error",f,(0,A.jT)(!1))}r.inPlace(u.parent,[u.key],"cb-",d),e.addEventListener("load",l,(0,A.jT)(!1)),e.addEventListener("error",f,(0,A.jT)(!1)),t.emit("new-jsonp",[e.src],d)}(e[0])})),t}const He={};function De(e){const t=function(e){return(e||B.ee).get("promise")}(e);if(He[t.debugId])return t;He[t.debugId]=!0;var r=t.context,n=(0,W.YM)(t),i=p.gm.Promise;return i&&function(){function e(r){var o=t.context(),a=n(r,"executor-",o,null,!1);const s=Reflect.construct(i,[a],e);return t.context(s).getCtx=function(){return o},s}p.gm.Promise=e,Object.defineProperty(e,"name",{value:"Promise"}),e.toString=function(){return i.toString()},Object.setPrototypeOf(e,i),["all","race"].forEach((function(r){const n=i[r];e[r]=function(e){let i=!1;[...e||[]].forEach((e=>{this.resolve(e).then(a("all"===r),a(!1))}));const o=n.apply(this,arguments);return o;function a(e){return function(){t.emit("propagate",[null,!i],o,!1,!1),i=i||!e}}}})),["resolve","reject"].forEach((function(r){const n=i[r];e[r]=function(e){const r=n.apply(this,arguments);return e!==r&&t.emit("propagate",[e,!0],r,!1,!1),r}})),e.prototype=i.prototype;const o=i.prototype.then;i.prototype.then=function(...e){var i=this,a=r(i);a.promise=i,e[0]=n(e[0],"cb-",a,null,!1),e[1]=n(e[1],"cb-",a,null,!1);const s=o.apply(this,e);return a.nextPromise=s,t.emit("propagate",[i,!0],s,!1,!1),s},i.prototype.then[W.Jt]=o,t.on("executor-start",(function(e){e[0]=n(e[0],"resolve-",this,null,!1),e[1]=n(e[1],"resolve-",this,null,!1)})),t.on("executor-err",(function(e,t,r){e[1](r)})),t.on("cb-end",(function(e,r,n){t.emit("propagate",[n,!0],this.nextPromise,!1,!1)})),t.on("propagate",(function(e,r,n){this.getCtx&&!r||(this.getCtx=function(){if(e instanceof Promise)var r=t.context(e);return r&&r.getCtx?r.getCtx():this})}))}(),t}const Me={},Ke="setTimeout",Ue="setInterval",Ve="clearTimeout",Ge="-start",Fe=[Ke,"setImmediate",Ue,Ve,"clearImmediate"];function Be(e){const t=function(e){return(e||B.ee).get("timer")}(e);if(Me[t.debugId]++)return t;Me[t.debugId]=1;var r=(0,W.YM)(t);return r.inPlace(p.gm,Fe.slice(0,2),Ke+"-"),r.inPlace(p.gm,Fe.slice(2,3),Ue+"-"),r.inPlace(p.gm,Fe.slice(3),Ve+"-"),t.on(Ue+Ge,(function(e,t,n){e[0]=r(e[0],"fn-",null,n)})),t.on(Ke+Ge,(function(e,t,n){this.method=n,this.timerDuration=isNaN(e[1])?0:+e[1],e[0]=r(e[0],"fn-",this,n)})),t}const We={};function ze(e){const t=function(e){return(e||B.ee).get("mutation")}(e);if(!p.RI||We[t.debugId])return t;We[t.debugId]=!0;var r=(0,W.YM)(t),n=p.gm.MutationObserver;return n&&(window.MutationObserver=function(e){return this instanceof n?new n(r(e,"fn-")):n.apply(this,arguments)},MutationObserver.prototype=n.prototype),t}const{TZ:qe,d3:Ze,Kp:Ye,$p:Xe,wW:Je,e5:Qe,tH:$e,uP:et,rw:tt,Lc:rt}=Pe;class nt extends b{static featureName=qe;constructor(e,t=!0){if(super(e,qe,t),!p.RI)return;try{this.removeOnAbort=new AbortController}catch(e){}let r,n=0;const i=this.ee.get("tracer"),o=Le(this.ee),a=De(this.ee),s=Be(this.ee),c=Z(this.ee),u=this.ee.get("events"),d=ne(this.ee),l=ve(this.ee),f=ze(this.ee);function h(e,t){l.emit("newURL",[""+window.location,t])}function g(){n++,r=window.location.hash,this[et]=(0,S.t)()}function m(){n--,window.location.hash!==r&&h(0,!0);var e=(0,S.t)();this[Qe]=~~this[Qe]+e-this[et],this[rt]=e}function v(e,t){e.on(t,(function(){this[t]=(0,S.t)()}))}this.ee.on(et,g),a.on(tt,g),o.on(tt,g),this.ee.on(rt,m),a.on(Je,m),o.on(Je,m),this.ee.on("fn-err",((...t)=>{t[2]?.__newrelic?.[e.agentIdentifier]||(0,x.p)("function-err",[...t],void 0,this.featureName,this.ee)})),this.ee.buffer([et,rt,"xhr-resolved"],this.featureName),u.buffer([et],this.featureName),s.buffer(["setTimeout"+Ye,"clearTimeout"+Ze,et],this.featureName),c.buffer([et,"new-xhr","send-xhr"+Ze],this.featureName),d.buffer([$e+Ze,$e+"-done",$e+Xe+Ze,$e+Xe+Ye],this.featureName),l.buffer(["newURL"],this.featureName),f.buffer([et],this.featureName),a.buffer(["propagate",tt,Je,"executor-err","resolve"+Ze],this.featureName),i.buffer([et,"no-"+et],this.featureName),o.buffer(["new-jsonp","cb-start","jsonp-error","jsonp-end"],this.featureName),v(d,$e+Ze),v(d,$e+"-done"),v(o,"new-jsonp"),v(o,"jsonp-end"),v(o,"cb-start"),l.on("pushState-end",h),l.on("replaceState-end",h),window.addEventListener("hashchange",h,(0,A.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("load",h,(0,A.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("popstate",(function(){h(0,n>1)}),(0,A.jT)(!0,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var it=i(3333);class ot extends b{static featureName=it.TZ;constructor(e,t=!0){super(e,it.TZ,t);const r=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.user_actions.enabled];p.RI&&e.init.user_actions.enabled&&(it.Zp.forEach((e=>(0,A.sp)(e,(e=>(0,x.p)("ua",[e],void 0,this.featureName,this.ee)),!0))),it.qN.forEach((e=>(0,A.sp)(e,(e=>(0,x.p)("ua",[e],void 0,this.featureName,this.ee)))))),r.some((e=>e))?this.importAggregator(e):this.deregisterDrain()}}var at=i(993),st=i(3785);class ct extends b{static featureName=at.TZ;constructor(e,t=!0){super(e,at.TZ,t);const r=this.ee;this.ee.on("wrap-logger-end",(function([e]){const{level:t,customAttributes:n}=this;(0,st.R)(r,e,n,t)})),this.importAggregator(e)}}new class extends o{constructor(t,r){super(r),p.gm?(this.features={},(0,R.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(w),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=>e.featureName===a.K7.softNav)),(0,d.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.P3[e.featureName]-a.P3[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.K7.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.K7.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.K7.softNav)return;const n=function(e){switch(e){case a.K7.ajax:return[a.K7.jserrors];case a.K7.sessionTrace:return[a.K7.ajax,a.K7.pageViewEvent];case a.K7.sessionReplay:return[a.K7.sessionTrace];case a.K7.pageViewTiming:return[a.K7.pageViewEvent];default:return[]}}(r.featureName).filter((e=>!(e in this.features)));n.length>0&&(0,e.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)}))}catch(t){(0,e.R)(22,t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,R.Zm)();delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[he,w,N,Ne,_e,_,D,ot,ct,je,nt],loaderType:"spa"})})()})();</script> <meta name="viewport" content="width=device-width, initial-scale=1"> <!-- <link rel="pingback" href="https://publichealth.berkeley.edu/wp/xmlrpc.php" /> --> <meta name="application-name" content="Berkeley Public Health"> <meta name="msapplication-TileColor" content="#003262"> <meta name="theme-color" media="(prefers-color-scheme: light)" content="#3b7da0" /> <meta name="theme-color" media="(prefers-color-scheme: dark)" content="#003262" /> <title>Academic Programs | Berkeley Public Health</title> <meta name="robots" content="max-snippet:-1,max-image-preview:large,max-video-preview:-1" /> <link rel="canonical" href="https://publichealth.berkeley.edu/academics/programs" /> <meta name="description" content="We develop diverse leaders for professional and research careers through undergraduate, master鈥檚 and doctoral programs." /> <meta name="theme-color" content="#3b7ea1" /> <meta property="og:type" content="website" /> <meta property="og:locale" content="en_US" /> <meta property="og:site_name" content="Berkeley Public Health" /> <meta property="og:title" content="Academic Programs" /> <meta property="og:description" content="We develop diverse leaders for professional and research careers through undergraduate, master鈥檚 and doctoral programs." /> <meta property="og:url" content="https://publichealth.berkeley.edu/academics/programs" /> <meta property="og:image" content="https://publichealth.berkeley.edu/app/uploads/cropped-BPH_Fallback.jpg" /> <meta property="og:image:width" content="1200" /> <meta property="og:image:height" content="630" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:site" content="@UCBerkeleySPH" /> <meta name="twitter:title" content="Academic Programs" /> <meta name="twitter:description" content="We develop diverse leaders for professional and research careers through undergraduate, master鈥檚 and doctoral programs." /> <meta name="twitter:image" content="https://publichealth.berkeley.edu/app/uploads/cropped-BPH_Fallback.jpg" /> <script type="application/ld+json">{"@context":"https://schema.org","@graph":[{"@type":"WebSite","@id":"https://publichealth.berkeley.edu/#/schema/WebSite","url":"https://publichealth.berkeley.edu/","name":"Berkeley Public Health","alternateName":"UC Berkeley School of Public Health","description":"More than 75 years of transformational research and hands-on social impact for a better world.","inLanguage":"en-US","potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://publichealth.berkeley.edu/search/{search_term_string}"},"query-input":"required name=search_term_string"},"publisher":{"@type":"Organization","@id":"https://publichealth.berkeley.edu/#/schema/Organization","name":"UC Berkeley School of Public Health","url":"https://publichealth.berkeley.edu/","logo":{"@type":"ImageObject","url":"https://publichealth.berkeley.edu/app/uploads/cropped-favicon-3.jpg","contentUrl":"https://publichealth.berkeley.edu/app/uploads/cropped-favicon-3.jpg","width":512,"height":512,"contentSize":"29301"}}},{"@type":"WebPage","@id":"https://publichealth.berkeley.edu/academics/programs","url":"https://publichealth.berkeley.edu/academics/programs","name":"Academic Programs | Berkeley Public Health","description":"We develop diverse leaders for professional and research careers through undergraduate, master鈥檚 and doctoral programs.","inLanguage":"en-US","isPartOf":{"@id":"https://publichealth.berkeley.edu/#/schema/WebSite"},"breadcrumb":{"@type":"BreadcrumbList","@id":"https://publichealth.berkeley.edu/#/schema/BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"item":"https://publichealth.berkeley.edu/","name":"Berkeley Public Health"},{"@type":"ListItem","position":2,"item":"https://publichealth.berkeley.edu/academics","name":"Academics"},{"@type":"ListItem","position":3,"name":"Academic Programs"}]},"potentialAction":{"@type":"ReadAction","target":"https://publichealth.berkeley.edu/academics/programs"}}]}</script> <link rel='dns-prefetch' href='//publichealth.berkeley.edu' /> <link rel='dns-prefetch' href='//siteimproveanalytics.com' /> <script type="text/javascript"> /* <![CDATA[ */ window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.0.3\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.0.3\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/publichealth.berkeley.edu\/wp\/wp-includes\/js\/wp-emoji-release.min.js?ver=6.5.3"}}; /*! This file is auto-generated */ !function(i,n){var o,s,e;function c(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),r=(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return e===r[t]})}function u(e,t,n){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\uddfa\ud83c\uddf3","\ud83c\uddfa\u200b\ud83c\uddf3")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!n(e,"\ud83d\udc26\u200d\u2b1b","\ud83d\udc26\u200b\u2b1b")}return!1}function f(e,t,n){var r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):i.createElement("canvas"),a=r.getContext("2d",{willReadFrequently:!0}),o=(a.textBaseline="top",a.font="600 32px Arial",{});return e.forEach(function(e){o[e]=t(a,e,n)}),o}function t(e){var t=i.createElement("script");t.src=e,t.defer=!0,i.head.appendChild(t)}"undefined"!=typeof Promise&&(o="wpEmojiSettingsSupports",s=["flag","emoji"],n.supports={everything:!0,everythingExceptFlag:!0},e=new Promise(function(e){i.addEventListener("DOMContentLoaded",e,{once:!0})}),new Promise(function(t){var n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"}),a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=function(e){c(n=e.data),a.terminate(),t(n)})}catch(e){}c(n=f(s,u,p))}t(n)}).then(function(e){for(var t in e)n.supports[t]=e[t],n.supports.everything=n.supports.everything&&n.supports[t],"flag"!==t&&(n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&n.supports[t]);n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady=!1,n.readyCallback=function(){n.DOMReady=!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(e=n.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings); /* ]]> */ </script> <style id='wp-emoji-styles-inline-css' type='text/css'> img.wp-smiley, img.emoji { display: inline !important; border: none !important; box-shadow: none !important; height: 1em !important; width: 1em !important; margin: 0 0.07em !important; vertical-align: -0.1em !important; background: none !important; padding: 0 !important; } </style> <style id='classic-theme-styles-inline-css' type='text/css'> /*! This file is auto-generated */ .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} </style> <style id='global-styles-inline-css' type='text/css'> body{--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}body .is-layout-flex{flex-wrap: wrap;align-items: center;}body .is-layout-flex > *{margin: 0;}body .is-layout-grid{display: grid;}body .is-layout-grid > *{margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} .wp-block-navigation a:where(:not(.wp-element-button)){color: inherit;} :where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;} :where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;} .wp-block-pullquote{font-size: 1.5em;line-height: 1.6;} </style> <link rel='stylesheet' id='global-css' href='https://publichealth.berkeley.edu/app/themes/berkeley-public-health/dist/global.css?ver=1716588399562' type='text/css' media='all' /> <link rel='stylesheet' id='fonts-css' href='https://publichealth.berkeley.edu/app/themes/berkeley-public-health/dist/fonts.css?ver=1.0' type='text/css' media='all' /> <script type="text/javascript" src="https://publichealth.berkeley.edu/app/themes/berkeley-public-health/dist/app.js?ver=1716588399562" id="app-js"></script> <link rel="https://api.w.org/" href="https://publichealth.berkeley.edu/wp-json/" /><link rel="alternate" type="application/json" href="https://publichealth.berkeley.edu/wp-json/wp/v2/pages/16012" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://publichealth.berkeley.edu/wp/xmlrpc.php?rsd" /> <link rel="alternate" type="application/json+oembed" href="https://publichealth.berkeley.edu/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fpublichealth.berkeley.edu%2Facademics%2Fprograms" /> <link rel="alternate" type="text/xml+oembed" href="https://publichealth.berkeley.edu/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fpublichealth.berkeley.edu%2Facademics%2Fprograms&format=xml" /> <noscript><style>.lazyload[data-src]{display:none !important;}</style></noscript><style>.lazyload{background-image:none !important;}.lazyload:before{background-image:none !important;}</style><link rel="icon" href="https://publichealth.berkeley.edu/app/uploads/cropped-favicon-3-60x60.jpg" sizes="32x32" /> <link rel="icon" href="https://publichealth.berkeley.edu/app/uploads/cropped-favicon-3-300x300.jpg" sizes="192x192" /> <link rel="apple-touch-icon" href="https://publichealth.berkeley.edu/app/uploads/cropped-favicon-3-300x300.jpg" /> <meta name="msapplication-TileImage" content="https://publichealth.berkeley.edu/app/uploads/cropped-favicon-3-300x300.jpg" /> </head> <body class="page-template-default page page-id-16012 page-parent page-child parent-pageid-8357" > <a href="#main-content" class="skip-to-main-content-link">Skip to main content</a> <header id="bphGlobalHeader" class="bph-global-header" > <section id="bphGlobalHeaderNavigation" class="bph-global-header-navigation" > <div class="x" uk-sticky=" cls-active: uk-navbar-sticky; sel-target: .uk-navbar-container;"> <div class=" uk-background-muted uk-visible@m" > <div class=" uk-container uk-container-large" > <div class=" bph-padding-xsmall uk-flex uk-flex-between uk-padding-remove-horizontal uk-text-small" > <div> <a class="uk-link-text" href="https://berkeley.edu" target="_blank" >U<span class="uk-visible@l">niversity of </span>C<span class="uk-visible@l">alifornia,</span> Berkeley</a> </div> <div> <ul class=" uk-child-width-auto uk-grid-divider uk-grid-small" uk-grid > <li><a class="uk-link-text" href="https://publichealth.berkeley.edu/events" >Events</a></li> <li><a class="uk-link-text" href="https://publichealth.berkeley.edu/giving" >Giving</a></li> <li><a class="uk-link-text" href="https://publichealth.berkeley.edu/students" >Current Students</a></li> <li><a class="uk-link-text" href="https://publichealth.berkeley.edu/workplace" >Workplace</a></li> </ul> </div> </div> </div> </div> <div > <!-- uk-sticky=" cls-active: uk-navbar-sticky; sel-target: .uk-navbar-container;" --> <nav class=" uk-box-shadow-small uk-navbar-container" > <div class=" uk-container uk-container-large" > <div uk-navbar="mode: click;"> <div class="uk-navbar-left"> <a aria-label="Back to BPH Home" class="uk-padding-remove-left" href="https://publichealth.berkeley.edu" ><img alt="Berkeley Public Health" class="uk-logo uk-preserve uk-width-auto lazyload" width="auto" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" uk-svg data-src="https://publichealth.berkeley.edu/app/themes/berkeley-public-health/dist/img/logo-bph.svg" decoding="async"><noscript><img alt="Berkeley Public Health" class="uk-logo uk-preserve uk-width-auto" width="auto" src="https://publichealth.berkeley.edu/app/themes/berkeley-public-health/dist/img/logo-bph.svg" uk-svg data-eio="l"></noscript> </a> </div> <div class="uk-navbar-right"> <ul class=" uk-height-1-1 uk-navbar-nav" > <li class=" uk-flex uk-flex-middle uk-visible@m" > <a href="#"><span class="uk-text-small uk-text-bold"><span class="uk-visible@l">Explore </span>Programs</span> <span uk-navbar-parent-icon></span></a> <div class="bph-border-rounded-bottom-left-large bph-border-rounded-bottom-right-large uk-box-shadow-xlarge uk-navbar-dropdown uk-width-auto" > <ul class=" bph-border-rounded-bottom-left-large bph-border-rounded-bottom-right-large uk-nav uk-navbar-dropdown-nav uk-text-small" > <li><a href="https://publichealth.berkeley.edu/academics/programs?location=campus" >On-Campus Programs</a></li> <li><a href="https://publichealth.berkeley.edu/academics/online" >Berkeley Public Health Online</a></li> <li><a href="https://publichealth.berkeley.edu/academics/joint-medical-program" ><div>Joint Medical Program<div class="uk-nav-subtitle">MA/MD with UCSF</div></div></a></li> <li><a href="https://publichealth.berkeley.edu/academics/programs?category=concurrent" ><div>Concurrent MPH Programs<div class="uk-nav-subtitle">MBA / MCP / MJ / MPP / MSW</div></div></a></li> <li><a href="https://publichealth.berkeley.edu/academics/undergraduate" >Undergraduate</a></li> <li class=" uk-margin-remove uk-nav-divider" ></li> <li class=" bph-border-rounded-bottom-left-large bph-border-rounded-bottom-right-large" ><a class=" bph-border-rounded-bottom-left-large bph-border-rounded-bottom-right-large" href="https://publichealth.berkeley.edu/academics/programs" ><strong>Browse All Programs</strong></a></li> </ul> </div> </li> <li class=" uk-flex uk-flex-middle uk-visible@m" > <a id="bphRequestModalFull" href="#" ><span class="uk-text-small uk-text-bold">Request Info<span class="uk-visible@l">rmation</span></span></a> </li> <li class=" uk-flex uk-flex-middle uk-visible@m"> <a href="https://publichealth.berkeley.edu/admissions" ><span class="uk-text-small uk-text-bold">Apply</span></a> </li> <li class=" uk-flex uk-flex-middle uk-visible@s" > <a class="bph-navigation-search-icon uk-navbar-toggle uk-navbar-toggle-animate " href="#" ><span uk-search-icon></span><span class="uk-hidden-visually">Toggle Search</span></a> <div class="uk-background-primary uk-width-1-1 uk-padding-small" uk-drop=" animation: reveal-top; animate-out: true; bg-scroll: true; duration: 100; mode: click; stretch: x; offset: 0; target: .uk-navbar-container" > <div class="uk-container uk-container-large"> <div class="uk-padding-small uk-padding-remove-horizontal"> <form role="search" method="get" class="uk-search uk-search-navbar" action="https://publichealth.berkeley.edu/"> <div class="uk-flex uk-width-1-1"> <div class="uk-width-1-1"> <span uk-search-icon></span> <input aria-label="Search for:" class="uk-width-1-1 uk-search-input bph-border-rounded-top-left bph-border-rounded-bottom-left" type="search" placeholder="Search:" value="" name="s" required> </div> <div> <input class="uk-height-1-1" type="submit" value="Submit" /> </div> </div> </form> </div> </div> </div> </li> <li class=" uk-flex uk-flex-middle" > <a class=" uk-border-rounded uk-height-1-1 uk-navbar-toggle uk-navbar-toggle-animate uk-margin-small-left" href="#" uk-navbar-toggle-icon ><span class=" uk-text-small uk-visible@s uk-text-uppercase">Menu </span></a> <div class="uk-dropbar uk-drop" uk-drop=" animation: reveal-top; animate-out: true; bg-scroll: false; duration: 100; mode: click; stretch: true; target: .uk-navbar-container;" > <div class="uk-container uk-container-large"> <div class="uk-padding uk-padding-remove-horizontal"> <div class="uk-child-width-expand@m uk-grid-smatch uk-grid-large" uk-grid> <div class="uk-visible@l"> <div class="uk-nav-primary uk-nav-primary-bph-card-margin" uk-nav> <p class="uk-nav-header">Featured Article</p> </div> <a aria-labelledby="bphCardTitle_Blackstudentsarepunishedmoreoften1378" class="uk-link-toggle" href="https://publichealth.berkeley.edu/news-media/research-highlights/black-students-are-punished-more-often" > <div class="bph-card uk-flex uk-flex-between bph-border-rounded-large uk-card uk-margin uk-grid-collapse uk-card-small uk-flex-column bph-card-dark uk-card-secondary uk-box-shadow-small uk-box-shadow-hover-small " uk-grid > <div class=" uk-card-media-top bph-border-rounded-top-left-large bph-border-rounded-top-right-large "> <div class=" bph-border-rounded-large uk-width-1-1 "> <div class=" uk-background-cover uk-background-top-center uk-height-1-1 uk-background-blend-luminosity bph-navbar-dropdown-background bph-card-filter-image" data-src="https://publichealth.berkeley.edu/app/uploads/BPH-website-news-image-23-600x400.jpg" uk-img > <canvas width="420" height="280" ></canvas> </div> </div> </div> <div class="uk-card-body uk-flex uk-flex-column uk-width-expand uk-flex-between " > <div> <p id="bphCardTitle_Blackstudentsarepunishedmoreoften1378" class="bph-text-serif uk-card-title uk-link-text uk-margin-remove-top uk-text-small uk-margin-small-bottom " > Black students are punished more often </p> </div> <div> <span class="uk-text-meta" >November 25, 2024</span> </div> </div> </div> </a> </div> <div> <div class="uk-hidden@m uk-margin-bottom"> <div class="uk-hidden@s"> <form role="search" method="get" class="uk-search uk-search-navbar" action="https://publichealth.berkeley.edu/"> <div class="uk-flex uk-width-1-1"> <div class="bph-search-navigation-mobile uk-width-1-1"> <span uk-search-icon style="color: #fff;"></span><!-- TODO add as css --> <input aria-label="Search for:" class="uk-width-1-1 uk-search-input bph-border-rounded-top-left-large bph-border-rounded-bottom-left-large" type="search" placeholder="Enter search term:" value="" name="s" required /> </div> <div> <input class="uk-height-1-1" type="submit" value="Search" /> </div> </div> </form> </div> <div class="uk-margin-top"> <a class="uk-button uk-button-default uk-width-1-1 uk-margin-small-bottom" id="bphRequestModalMobile" href="#" >Request Information</a> <!-- TODO additional classes for wrapper and button, if add more classes is selected --> <div class="uk-border-rounded uk-margin-small uk-margin-remove-bottom"> <a class="uk-button uk-button-default uk-box-shadow-small uk-box-shadow-hover-medium uk-width-1-1" href="https://publichealth.berkeley.edu/admissions" target="_self" > Apply Now </a> </div> </div> </div> <ul class="uk-nav-primary" uk-nav> <li class="uk-nav-header">Academics</li> <li class="uk-nav-divider"></li> <li class="uk-parent"> <a href="#">Academic Programs <span uk-nav-parent-icon></span></a> <ul class="uk-nav-sub"> <li><a href="https://publichealth.berkeley.edu/academics/programs">Browse All Programs</a></li> <li><a href="https://publichealth.berkeley.edu/academics/online">BPH Online</a></li> <li><a href="https://publichealth.berkeley.edu/academics/joint-medical-program">Joint Medical Program</a></li> <li><a href="https://publichealth.berkeley.edu/academics/programs?category=concurrent">Concurrent MPH Programs</a></li> <li><a href="https://publichealth.berkeley.edu/academics/undergraduate">Undergraduate</a></li> <li><a href="https://publichealth.berkeley.edu/academics">Academics Overview</a></li> </ul> </li> <li><a href="https://publichealth.berkeley.edu/academics/online">Online MPH</a></li> <li class="uk-parent"> <a href="#">Divisions <span uk-nav-parent-icon></span></a> <ul class="uk-nav-sub"> <li><a href="https://publichealth.berkeley.edu/academics/biostatistics">Biostatistics</a></li> <li><a href="https://publichealth.berkeley.edu/academics/community-health-sciences">Community Health Sciences</a></li> <li><a href="https://publichealth.berkeley.edu/academics/environmental-health-sciences">Environmental Health Sciences</a></li> <li><a href="https://publichealth.berkeley.edu/academics/epidemiology">Epidemiology</a></li> <li><a href="https://publichealth.berkeley.edu/academics/health-policy">Health Policy and Management</a></li> <li><a href="https://publichealth.berkeley.edu/academics/infectious-diseases-and-vaccinology">Infectious Diseases and Vaccinology</a></li> <!-- <li><a href="#">Interdisciplinary</a></li> --> </ul> </li> </ul> <ul class="uk-nav-primary uk-margin-medium-top" uk-nav> <li class="uk-nav-header">Admissions and Aid</li> <li class="uk-nav-divider"></li> <li><a href="https://publichealth.berkeley.edu/admissions">Admissions Requirements</a></li> <li><a href="https://publichealth.berkeley.edu/admissions">Dates and Deadlines</a></li> <li><a href="https://publichealth.berkeley.edu/admissions">Application Instructions</a></li> <li><a href="https://publichealth.berkeley.edu/admissions">Fees and Financial Aid</a></li> </ul> </div> <div> <ul class="uk-nav-primary" uk-nav> <li class="uk-nav-header">Research and Practice</li> <li class="uk-nav-divider"></li> <li><a href="https://publichealth.berkeley.edu/research">Research</a></li> <li><a href="https://publichealth.berkeley.edu/research">Community Engagement</a></li> <li><a href="https://publichealth.berkeley.edu/research#bphScrollAnchor___research-centers">Centers and Labs</a></li> </ul> <ul class="uk-nav-primary uk-margin-medium-top" uk-nav> <li class="uk-nav-header">Student Life</li> <li class="uk-nav-divider"></li> <li><a href="https://publichealth.berkeley.edu/students/rise">RISE: Career and Leadership Development</a></li> <li><a href="https://publichealth.berkeley.edu/students/dream">Dream Office: Diversity and Inclusion</a></li> <li class="uk-parent"> <a href="#">Student Organizations <span uk-nav-parent-icon></span></a> <ul class="uk-nav-sub"> <li><a href="https://publichealth.berkeley.edu/students/student-groups">Student Groups</a></li> <li><a href="https://publichealth.berkeley.edu/students/student-government">Student Government</a></li> </ul> </li> </ul> </div> <div> <ul class="uk-nav-primary" uk-nav> <li class="uk-nav-header">People</li> <li class="uk-nav-divider"></li> <li><a href="https://publichealth.berkeley.edu/people">Faculty & Researchers</a></li> <li><a href="https://publichealth.berkeley.edu/about/leadership">Leadership</a></li> <li><a href="https://publichealth.berkeley.edu/contact">Staff Directory</a></li> <li class="uk-hidden@m"><a href="https://publichealth.berkeley.edu/workplace">Workplace</a></li> </ul> <ul class="uk-margin-medium-top uk-nav-primary" uk-nav> <li class="uk-nav-header">About</li> <li class="uk-nav-divider"></li> <li class="uk-parent"> <a href="#">About BPH <span uk-nav-parent-icon></span></a> <ul class="uk-nav-sub"> <li><a href="https://publichealth.berkeley.edu/about">Summary and Strengths</a></li> <li><a href="https://publichealth.berkeley.edu/about/mission-and-vision">Mission, Vision, and Values</a></li> <li><a href="https://publichealth.berkeley.edu/about/anti-racism">Anti-Racism Plan and Progress</a></li> </ul> </li> <li><a href="https://publichealth.berkeley.edu/alumni">Alumni</a></li> <li><a href="https://publichealth.berkeley.edu/giving">Support BPH</a></li> <li><a href="https://publichealth.berkeley.edu/news">News & Media</a></li> <li class="uk-hidden@m"><a href="https://publichealth.berkeley.edu/events">Events</a></li> </ul> <div class="uk-margin-top uk-hidden@m"> <a href="https://www.linkedin.com/company/uc-berkeley-school-of-public-health" class=" uk-icon-button uk-margin-small-right" target="_blank" uk-icon="linkedin" ></a> <a href="https://www.instagram.com/berkeleypublichealth/" class=" uk-icon-button uk-margin-small-right" target="_blank" uk-icon="instagram" ></a> <a href="https://www.tiktok.com/@berkeley.public.health" class=" uk-icon-button uk-margin-small-right" target="_blank" uk-icon="tiktok" ></a> <a href="https://www.youtube.com/user/BerkeleyHealthOnline" class=" uk-icon-button uk-margin-small-right" target="_blank" uk-icon="youtube" ></a> <a href="https://www.facebook.com/UCBerkeleySPH/" class=" uk-icon-button uk-margin-small-right" target="_blank" uk-icon="facebook" ></a> <a href="https://www.threads.net/@berkeleypublichealth" class=" uk-icon-button uk-margin-small-right" target="_blank" uk-icon="threads" ></a> <a href="https://twitter.com/UCBerkeleySPH" class="uk-icon-button" target="_blank" uk-icon="x" ></a> </div> </div> </div> </div> </div> </div> </li> </ul> </div> </div> </div> </nav> </div> </div> </section> <!-- TODO handbook link in current students menu TODO handbook link is an ACF field so it can be pulled to the main handbooks page --> </header> <main id="main-content"> <!-- TODO - conditional meta information, like different fallback image for online program TODO - uk-img="loading: eager" for hero --> <section class="bph-block-hero bph-layout-standard bph-margin-top-none uk-section-default uk-padding-remove-vertical " id="bphBlockHero-4234" uk-scrollspy="cls: uk-animation-fade; target: .bph-block-section-scrollspy-target"> <div class="bph-background-solid-muted uk-padding-large uk-padding-remove-horizontal" ><!-- 1 --> <div class=""><!-- 2 optional extra padding--> <div class="uk-container uk-container-large"><!-- outer container --> <div class=""> <div class="uk-container"> <div class="uk-flex-bottom" uk-grid> <div class="uk-width-3-5@l"> <div class="bph-hero-content-padding"> <nav aria-label="breadcrumb"><ol class="bph-breadcrumbs uk-breadcrumb uk-margin-remove-bottom" itemscope itemtype="https://schema.org/BreadcrumbList"><li class="bph-breadcrumb" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem"><a itemprop="item" href="https://publichealth.berkeley.edu/"><span uk-icon="home"></span><span class="uk-hidden-visually"><span itemprop="name">Home</span></span></a></li> <li class="bph-breadcrumb" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem" ><a itemprop="item" href="https://publichealth.berkeley.edu/academics"><span itemprop="name">Academics</span></a></li> <li><span aria-current="page" hidden><span>Academic Programs</span></span></li></ol></nav> <h1 class="bph-text-serif uk-heading-small uk-margin-remove-bottom uk-margin-medium-top" >Academic Programs</h1> </div><!-- left content --> </div><!-- flex left --> <div id="anchor__cta" class="uk-width-expand"> <div class=""> </div> </div><!-- flex right --> </div> </div> </div> </div><!-- outer container --> </div><!-- 2 --> </div><!-- 1 --> </section> <!-- TODO global error message with web@ email address instructions --> <section class="bph-block-programs bph-layout-standard bph-margin-top-none uk-section-muted uk-section-xsmall " id="bphBlockPrograms-6995" uk-scrollspy="cls: uk-animation-fade; target: .bph-block-section-scrollspy-target"> <div class=" bphAnchorDefaultId-3800 uk-container" id="bphAnchorDefaultId-3800" > <div class="uk-flex-center" uk-grid > <div class="uk-width-4-5@s uk-width-5-6@m uk-width-1-1@l"> <div> <div id="bphProgramFilter" uk-filter="target: .program-filter;"> <div class="bph-background-bay-fog uk-border-rounded uk-text-small uk-width-auto uk-padding uk-margin-medium-bottom"> <div> <ul class="uk-subnav uk-subnav-pill" uk-margin> <li class="uk-active" uk-filter-control><a href="#">All Programs</a></li> </ul> </div> <hr /> <div> <ul class="uk-subnav uk-subnav-pill" uk-margin> <li id="filterLevelDoctoral" uk-filter-control="filter: [data-level*='doctoral']; group: data-level"><a href="#">Doctoral</a></li> <li id="filterLevelMasters" uk-filter-control="filter: [data-level*='masters']; group: data-level"><a href="#">Master’s</a></li> <li id="filterLevelUndergraduate" uk-filter-control="filter: [data-level*='undergraduate']; group: data-level"><a href="#">Undergraduate</a></li> <li id="filterLevelCertificate" uk-filter-control="filter: [data-level*='certificate']; group: data-level"><a href="#">Certificate or Specialty Area</a></li> </ul> </div> <hr /> <div> <ul class="uk-subnav uk-subnav-pill" uk-margin> <li class="blah " id="filterLocationCampus" uk-filter-control="filter: [data-location*='campus']; group: location" ><a href="#">On-Campus</a></li> <li id="filterLocationOnline" uk-filter-control="filter: [data-location*='online']; group: location" ><a href="#">Online</a></li> </ul> </div> <ul class="uk-margin-remove-bottom" uk-accordion> <li class="uk-open" > <a class="uk-accordion-title uk-text-small" href>More Filtering Options</a> <div class="uk-accordion-content uk-margin-remove-bottom"> <div> <ul class="uk-subnav uk-subnav-pill" uk-margin> <li uk-filter-control="filter: [data-division*='biostatistics']; group: division"><a href="#">Biostatistics</a></li> <li uk-filter-control="filter: [data-division*='chs']; group: division"><a href="#">Community Health Sciences</a></li> <li uk-filter-control="filter: [data-division*='ehs']; group: division"><a href="#">Environmental Health Sciences</a></li> <li uk-filter-control="filter: [data-division*='epidemiology']; group: division"><a href="#">Epidemiology</a></li> <li uk-filter-control="filter: [data-division*='hpm']; group: division"><a href="#">Health Policy and Management</a></li> <li uk-filter-control="filter: [data-division*='idv']; group: division"><a href="#">Infectious Diseases and Vaccinology</a></li> <li uk-filter-control="filter: [data-division*='interdisciplinary']; group: division"><a href="#">Interdisciplinary</a></li> </ul> </div> <hr /> <div> <ul id="filterCategory" class="uk-subnav uk-subnav-pill" uk-margin> <li id="filterCategoryConcurrent" class=" uk-active " uk-filter-control="filter: [data-category*='concurrent']; group: category" ><a id="filterCategoryConcurrentLink" href="#">Concurrent Degree Programs</a></li> <li id="filterCategoryJoint" uk-filter-control="filter: [data-category*='joint']; group: category" ><a href="#">Joint Degree Programs</a></li> <li class="blah " id="filterCategoryFourPlusOne" uk-filter-control="filter: [data-category*='fourplusone']; group: category" ><a id="filterCategoryConcurrentLink" href="#">Accelerated “4+1” Programs</a></li> </ul> </div> </div> </li> </ul> </div> <div class=" uk-grid-small uk-grid-match program-filter uk-child-width-1-2@s uk-child-width-1-3@m" uk-grid uk-height-match="target: .bph-program-tile-match" > <div data-category="" data-division="biostatistics " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/biostatistics-ma/" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Biostatistics MA</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="biostatistics " data-level="doctoral " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/biostatistics-phd/" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Doctoral </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Biostatistics PhD</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="concurrent " data-division="hpm " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/concurrent-mba-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Concurrent MBA/MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >with the Haas School of Business</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="concurrent " data-division="" data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/concurrent-mcp-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Concurrent MCP/MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >with the College of Environmental Design</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="concurrent " data-division="" data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/concurrent-mj-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Concurrent MJ/MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >with the Graduate School of Journalism</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="concurrent " data-division="hpm " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/concurrent-mpp-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Concurrent MPP/MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >with the Goldman School of Public Policy</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="concurrent " data-division="" data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/concurrent-msw-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Concurrent MSW/MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >with the School of Social Welfare</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="interdisciplinary " data-level="doctoral " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/doctor-of-public-health" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Doctoral </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Doctor of Public Health (DrPH)</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="ehs " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/environmental-health-sciences-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Environmental Health Sciences MPH</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="ehs " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/environmental-health-sciences-ms" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Environmental Health Sciences MS</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="ehs " data-level="doctoral " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/environmental-health-sciences-phd" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Doctoral </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Environmental Health Sciences PhD</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="biostatistics epidemiology " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/epidemiology-biostatistics-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Epidemiology / Biostatistics MPH</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="fourplusone " data-division="biostatistics epidemiology " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/4-plus-1-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Epidemiology / Biostatistics MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >Accelerated "4+1" program</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="epidemiology " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/epidemiology-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Epidemiology MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >11-month program</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="epidemiology " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/epidemiology-ms" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Epidemiology MS</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="epidemiology " data-level="doctoral " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/epidemiology-phd" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Doctoral </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Epidemiology PhD</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="chs " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/food-nutrition-and-population-health-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Food, Nutrition and Population Health MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >Two-year program</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="chs " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/food-nutrition-and-population-health-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Food, Nutrition and Population Health MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >11-month program</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="fourplusone " data-division="chs " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/4-plus-1-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Food, Nutrition and Population Health MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >Accelerated "4+1" program</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="ehs " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/global-health-and-environment-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Global Health and Environment MPH</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="ehs " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/global-health-and-environment-ms" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Global Health and Environment MS</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="" data-level="certificate " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/undergraduate/global-public-health" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Certificate </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Global Public Health Certificate</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="" data-level="undergraduate " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/undergraduate/global-public-health" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-undergraduate ">Undergraduate </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Global Public Health Minor</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >Summer Minor Program</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="" data-level="certificate " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/certificates" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Certificate </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Graduate Certificate in Food Systems</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="hpm " data-level="certificate " data-location="online " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/certificates#bphScrollAnchor___graduate-certificate-in-health-management" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-online ">Online</span> <span class=" uk-badge bph-badge-bay-fog ">Certificate </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Graduate Certificate in Health Management</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="hpm " data-level="masters certificate " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/certificates#bphScrollAnchor___graduate-certificate-in-health-management" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s Certificate </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Graduate Certificate in Health Management</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="" data-level="certificate " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/certificates#bphScrollAnchor___graduate-certificate-in-racism-health-and-social-justice" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Certificate </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Graduate Certificate in Racism, Health, and Social Justice</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="chs " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/health-and-social-behavior-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Health and Social Behavior MPH</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="hpm " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/health-policy-and-management-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Health Policy and Management MPH</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="hpm " data-level="doctoral " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/health-policy-phd" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Doctoral </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Health Policy PhD</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="idv " data-level="doctoral " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/infectious-diseases-and-immunity-phd" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Doctoral </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Infectious Diseases and Immunity PhD</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="idv " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/infectious-diseases-and-vaccinology-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Infectious Diseases and Vaccinology MPH</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="interdisciplinary " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/interdisciplinary-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Interdisciplinary MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >11-month program</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="joint " data-division="" data-level="doctoral masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/joint-medical-program" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Doctoral Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Joint Medical Program MS/MD</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >UC Berkeley-UCSF JMP</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="chs " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/maternal-child-and-adolescent-health-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Maternal, Child, and Adolescent Health MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >11-month program</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="fourplusone " data-division="chs " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/4-plus-1-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Maternal, Child, and Adolescent Health MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >Accelerated "4+1" program</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="chs " data-level="masters " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/programs/maternal-child-and-adolescent-health-mph" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Maternal, Child, and Adolescent Health MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >Two-year program</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="" data-level="masters " data-location="online " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/online" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-online ">Online</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Online MPH</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="biostatistics epidemiology " data-level="masters " data-location="online " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/online" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-online ">Online</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Online MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >Epidemiology / Biostatistics Concentration</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="hpm " data-level="masters " data-location="online " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/online" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-online ">Online</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Online MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >Health Policy and Management Concentration</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="interdisciplinary " data-level="masters " data-location="online " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/online" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-online ">Online</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Online MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >Interdisciplinary Concentration</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="chs " data-level="masters " data-location="online " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/online/" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-online ">Online</span> <span class=" uk-badge bph-badge-bay-fog ">Master’s </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Online MPH</p> <p class=" bph-base-line-height-1-25 uk-margin-remove uk-link-text bph-text-small-caps" >Food, Nutrition and Population Health Concentration</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="" data-level="undergraduate " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/undergraduate" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-undergraduate ">Undergraduate </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Public Health BA</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="" data-level="certificate " data-location="online " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/public-health-informatics" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-online ">Online</span> <span class=" uk-badge bph-badge-bay-fog ">Certificate </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Public Health Informatics</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> <div data-category="" data-division="" data-level="certificate specialty " data-location="campus " > <a class="uk-link-toggle" href="https://publichealth.berkeley.edu/academics/certificates#bphScrollAnchor___specialty-area-in-global-health" target=""> <div class=" uk-background-default uk-border-rounded uk-box-shadow-large uk-box-shadow-hover-xlarge uk-flex uk-flex-column uk-flex-between bph-program-tile-match bph-border-bottom bph-border-color-lawrence bph-border-width-2 uk-padding-small uk-text-small uk-link-toggle uk-height-1-1" > <div class=""> <span class=" uk-badge bph-badge-muted ">On-Campus</span> <span class=" uk-badge bph-badge-bay-fog ">Certificate Specialty </span> <p class=" bph-text-serif uk-margin-remove-bottom uk-margin-top uk-link-text bph-text-black-full" >Specialty Area in Global Health</p> </div> <div class="uk-margin-top"> <span class="uk-icon-button" uk-icon="arrow-right"></span> </div> </div> </a> </div> </div> <div class="uk-margin-top uk-text-small"> <ul class="uk-subnav uk-subnav-pill"> <li uk-filter-control><a href="#">Clear All Filters</a></li> </ul> </div> </div> </div> </div> </div> </div> </section><div class="bph-layout-sidebar-end" hidden></div> <!-- TODO running acf field to log latest updates. Date and summary Latest row exposed, rest in accordion Enable and disable by page. Off for posts. Off by default for pages TODO add <longdesc> tags where needed? TODO add SiteImprove before launch --> </main> <section id="bphGlobalFooter" class=" bph-border-top bph-border-width-3-top bph-global-footer " uk-scrollspy="cls: uk-animation-fade;" role="region" aria-label="Contact Information" > <footer> <div class="uk-container uk-container-large"> <div class="bph-border-bottom uk-padding uk-padding-remove-horizontal"> <div class="uk-flex uk-flex-between uk-flex-wrap uk-text-small" uk-margin> <div class="uk-margin-right"> <span class="uk-text-bold">Get Our Newsletter!</span><br /> Sign up to receive news and views from Berkeley Public Health in your inbox. </div> <div> <div class=""> <!-- TODO additional classes for wrapper and button, if add more classes is selected --> <div class="uk-border-rounded"> <a class="uk-button uk-button-default uk-box-shadow-small uk-box-shadow-hover-medium uk-button-small" href="https://publichealth.berkeley.edu/contact/newsletter" target="_self" > Subscribe to the newsletter </a> </div> </div> </div> </div> </div> <div class="uk-padding uk-padding-remove-horizontal uk-text-small"> <div class="uk-grid-divider" uk-grid> <div class="uk-width-3-5@s uk-width-2-3@m"> <div class="uk-child-width-1-2@m" uk-grid> <div> <img alt="University of California, Berkeley" class="uk-margin-remove-top uk-width-auto lazyload" height="auto" width="182" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" style="width: 182px; height: auto; fill: #003262;" uk-svg data-src="https://publichealth.berkeley.edu/app/themes/berkeley-public-health/dist/img/logo-ucb.svg" decoding="async"><noscript><img alt="University of California, Berkeley" class="uk-margin-remove-top uk-width-auto" height="auto" width="182" src="https://publichealth.berkeley.edu/app/themes/berkeley-public-health/dist/img/logo-ucb.svg" style="width: 182px; height: auto; fill: #003262;" uk-svg data-eio="l"></noscript> <div class="uk-margin-medium-top"> <!-- TODO additional classes for wrapper and button, if add more classes is selected --> <div class="uk-border-rounded"> <a class="uk-button uk-button-secondary uk-box-shadow-small uk-box-shadow-hover-medium uk-button-small" href="https://publichealth.berkeley.edu/giving" target="_self" > Support Berkeley Public Health </a> </div> </div> </div> <div> <div class="uk-child-width-1-2@s" uk-grid> <div> <ul class="uk-link-text uk-list uk-list-large"> <li><a href="https://publichealth.berkeley.edu/contact">Contact Us</a></li> <li><a href="https://publichealth.berkeley.edu/about/jobs">Job Openings</a></li> <li><a href="https://publichealth.berkeley.edu/about/leadership">School Leadership</a></li> <li><a href="https://publichealth.berkeley.edu/events">Events</a></li> </ul> </div> <div> <ul class="uk-link-text uk-list uk-list-large"> <li><a href="https://publichealth.berkeley.edu/students/handbook">Student Handbook</a></li> <li><a href="https://dap.berkeley.edu/get-help/report-web-accessibility-issue" target="_blank">Accessibility Compliance</a></li> <li><a href="https://ophd.berkeley.edu/policies-and-procedures/nondiscrimination-policy-statement" target="_blank">Nondiscrimination</a></li> <li><a href="https://security.berkeley.edu/policy/campus-online-activities-policy#priv" target="_blank">Privacy statement</a></li> </ul> </div> </div> </div> </div> </div> <div class="uk-width-2-5@s uk-width-1-3@m"> <div class="uk-flex uk-flex-between"> <div> <div class="uk-margin-bottom"> <div class="uk-margin uk-flex uk-flex-wrap uk-grid-small" uk-grid> <div><a href="https://www.linkedin.com/company/uc-berkeley-school-of-public-health" class="uk-icon-button" target="_blank" uk-icon="linkedin"><span class="uk-hidden-visually">LinkedIn</span></a></div> <div><a href="https://www.instagram.com/berkeleypublichealth/" class="uk-icon-button" target="_blank" uk-icon="instagram"><span class="uk-hidden-visually">Instagram</span></a></div> <div><a href="https://www.tiktok.com/@berkeley.public.health" class="uk-icon-button" target="_blank" uk-icon="tiktok"><span class="uk-hidden-visually">TikTok</span></a></div> <div><a href="https://www.youtube.com/user/BerkeleyHealthOnline" class="uk-icon-button" target="_blank" uk-icon="youtube"><span class="uk-hidden-visually">YouTube</span></a></div> <div><a href="https://www.facebook.com/UCBerkeleySPH/" class="uk-icon-button" target="_blank" uk-icon="facebook"><span class="uk-hidden-visually">Facebook</span></a></div> <div><a href="https://www.threads.net/@berkeleypublichealth" class="uk-icon-button" target="_blank" uk-icon="threads"><span class="uk-hidden-visually">Threads</span></a></div> <div><a href="https://twitter.com/UCBerkeleySPH" class="uk-icon-button" target="_blank" uk-icon="x"><span class="uk-hidden-visually">X (formally Twitter)</span></a></div> </div> </div> <div> 2121 Berkeley Way<br /> Berkeley, CA 94720-7360 </div> <p class="uk-margin-remove-bottom"><a class="" href="mailto:publichealth@berkeley.edu">publichealth@berkeley.edu</a></p> </div> <div> <a href="#" uk-totop uk-scroll><span class="uk-hidden-visually">Back to top</span></a> </div> </div> </div> </div> </div> </footer> <div class="uk-background-muted uk-margin-top uk-text-small"> <div class="uk-container uk-container-large uk-padding-small uk-text-center"> ©2024 UC Regents; all rights reserved </div> </div> </section> <script type="text/javascript" id="eio-lazy-load-js-before"> /* <![CDATA[ */ var eio_lazy_vars = {"exactdn_domain":"","skip_autoscale":0,"threshold":0}; /* ]]> */ </script> <script type="text/javascript" src="https://publichealth.berkeley.edu/app/plugins/ewww-image-optimizer/includes/lazysizes.min.js?ver=760" id="eio-lazy-load-js"></script> <script type="text/javascript" src="//siteimproveanalytics.com/js/siteanalyze_8343.js?ver=1.0" id="siteimprove-js"></script> <script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"NRJS-948474cd618f8781141","applicationID":"525534681","transactionName":"ZVJUZEIAWUdXVhJcDlwYd1NECFhaGVwIUQRK","queueTime":0,"applicationTime":327,"atts":"SRVXEgoaSkk=","errorBeacon":"bam.nr-data.net","agent":""}</script></body> </html> <!-- plugin=object-cache-pro client=phpredis metric#hits=3437 metric#misses=36 metric#hit-ratio=99.0 metric#bytes=1922779 metric#prefetches=577 metric#store-reads=47 metric#store-writes=3 metric#store-hits=595 metric#store-misses=32 metric#sql-queries=3 metric#ms-total=316.63 metric#ms-cache=38.83 metric#ms-cache-avg=0.7925 metric#ms-cache-ratio=12.3 sample#redis-hits=27872570 sample#redis-misses=3375781 sample#redis-hit-ratio=89.2 sample#redis-ops-per-sec=27 sample#redis-evicted-keys=0 sample#redis-used-memory=103723480 sample#redis-used-memory-rss=143876096 sample#redis-memory-fragmentation-ratio=1.4 sample#redis-connected-clients=1 sample#redis-tracking-clients=0 sample#redis-rejected-connections=0 sample#redis-keys=227443 -->