CINXE.COM

About the BU Libraries » BU Libraries | Boston University

<!DOCTYPE html> <html lang="en" id="bu-edu-library"> <head> <title>About the BU Libraries &raquo; BU Libraries | Boston University</title> <!--meta cluster--> <meta charset="utf-8"> <meta name="Copyright" content="Copyright (c) 2025 Boston University"> <meta http-equiv="imagetoolbar" content="no"> <meta name="MSSmartTagsPreventParsing" content="true"> <meta name="viewport" content="width=1024"> <meta http-equiv="X-UA-Compatible" content="IE=edge"><script type="text/javascript">(window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:[]}};(window.NREUM||(NREUM={})).loader_config={xpid:"UgUAV1RQGwQCVVNXAwY=",licenseKey:"b19c58809e",applicationID:"7212547"};;/*! For license information please see nr-loader-full-1.288.1.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:()=>g,gD:()=>p,xN:()=>h});var n=r(3333);const i=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var o=r(2614),a=r(944),s=r(384),c=r(8122);const u="[data-nr-mask]",d=()=>{const e={feature_flags:[],experimental:{marks:!1,measures:!1,resources:!1},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0},api:{allow_registered_children:!0,duplicate_registered_data:!1},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{get capture_marks(){return e.feature_flags.includes(n.$v.MARKS)||e.experimental.marks},set capture_marks(t){e.experimental.marks=t},get capture_measures(){return e.feature_flags.includes(n.$v.MEASURES)||e.experimental.measures},set capture_measures(t){e.experimental.measures=t},capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(n.$v.RESOURCES)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:o.wk,inactiveMs:o.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){i(t)?e.mask_selector="".concat(t,",").concat(u):""===t||null===t?e.mask_selector=u:(0,a.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){i(t)?e.block_selector+=",".concat(t):""!==t&&(0,a.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,a.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},spa:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]}}},l={},f="All configuration objects require an agent identifier!";function g(e){if(!e)throw new Error(f);if(!l[e])throw new Error("Configuration for ".concat(e," was never set"));return l[e]}function h(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 p(e,t){if(!e)throw new Error(f);var r=g(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}},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={appMetadata:{},customTransaction:void 0,denyList:void 0,disabled:!1,entityManager:void 0,harvester:void 0,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,obfuscator:void 0,onerror:void 0,ptid:void 0,releaseIds:{},session:void 0,timeKeeper: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.288.1",i="PROD",o="CDN",a="^2.0.0-alpha.18"},6154:(e,t,r)=>{"use strict";r.d(t,{OF:()=>u,RI:()=>i,WN:()=>f,bv:()=>o,gm:()=>a,lR:()=>l,m:()=>c,mw:()=>s,sb:()=>d});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=Boolean("hidden"===a?.document?.visibilityState),c=""+a?.location,u=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),d=u&&"undefined"==typeof SharedWorker,l=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),f=Date.now()-(0,n.t)()},7295:(e,t,r)=>{"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>o});var n=[];function i(e){if(!e||o(e))return!1;if(0===n.length)return!0;for(var t=0;t<n.length;t++){var r=n[t];if("*"===r.hostname)return!1;if(s(r.hostname,e.hostname)&&c(r.pathname,e.pathname))return!1}return!0}function o(e){return void 0===e.hostname}function a(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let o,a;i>0?(o=r.substring(0,i),a=r.substring(i)):(o=r,a="");let[s]=o.split(":");n.push({hostname:s,pathname:a})}}function s(e,t){return!(e.length>t.length)&&t.indexOf(e)===t.length-e.length}function c(e,t){return 0===e.indexOf("/")&&(e=e.substring(1)),0===t.indexOf("/")&&(t=t.substring(1)),""===e||e===t}},3241:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(6154);const i="newrelic";function o(e={}){try{n.gm.dispatchEvent(new CustomEvent(i,{detail:e}))}catch(e){}}},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>l,x3:()=>u});var n=r(7836),i=r(3606),o=r(860),a=r(2646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),g(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 g(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),g(e,t)})))}function g(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)h(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 h(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:h,addEventListener:h,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=g(n),c=p(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var h=v()[s[e]];h&&h.push([f,e,r,a]);return a},get:m,listeners:p,context:g,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 g(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function h(e,t){n[e]=p(e).concat(t)}function p(e){return n[e]||[]}function m(t){return d[t]=d[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=u)},2646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(9908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,ZF:()=>c,bz:()=>a,el:()=>u});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}function c(){return s(16)}function u(){return s(32)}},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},7485:(e,t,r)=>{"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},944:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.debug&&console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t)}r.d(t,{R:()=>n})},5701:(e,t,r)=>{"use strict";r.d(t,{B:()=>o,t:()=>a});var n=r(3241);const i=new Set,o={};function a(e,t){const r=t.agentIdentifier;o[r]??={},e&&"object"==typeof e&&(i.has(r)||(t.ee.emit("rumresp",[e]),o[r]=e,i.add(r),(0,n.W)({agentIdentifier:r,loaded:!0,drained:!0,type:"lifecycle",name:"load",feature:void 0,data:e})))}},8990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout((()=>{i=clearTimeout(i)}),t)),n||(clearTimeout(i),i=setTimeout((()=>{e.apply(this,r)}),t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},3304:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(7836);const i=()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}};function o(e){try{return JSON.stringify(e,i())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},3496:(e,t,r)=>{"use strict";function n(e){return!e||!(!e.licenseKey||!e.applicationID)}function i(e,t){return!e||e.licenseKey===t.info.licenseKey&&e.applicationID===t.info.applicationID}r.d(t,{A:()=>i,I:()=>n})},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],"-",h)}function h(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&g(document,f),c&&g(c.prototype,f),g(a.gm,f)),t.on(u+"-start",(function(e,t){var n=e[1];if(null!==n&&("function"==typeof n||"object"==typeof n)){var i=(0,o.I)(n,l,(function(){var e={object:function(){if("function"!=typeof n.handleEvent)return;return n.handleEvent.apply(n,arguments)},function:n}[typeof n];return e?r(e,"fn-",null,e.name||"anonymous"):n}));this.wrapped=e[1]=i}})),t.on(d+"-start",(function(e){e[1]=this.wrapped||e[1]})),t}function g(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,u);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434:(e,t,r)=>{"use strict";r.d(t,{Jt:()=>o,YM:()=>c});var n=r(7836),i=r(5607);const o="nr@original:".concat(i.W);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach((function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})})),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}},9414:(e,t,r)=>{"use strict";r.d(t,{J:()=>c});var n=r(7836),i=r(2646),o=r(944),a=r(3434);const s=new Map;function c(e,t,r,c){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,o.R)(29);const u=function(e){return(e||n.ee).get("logger")}(e),d=(0,a.YM)(u),l=new i.y(n.P);l.level=c.level,l.customAttributes=c.customAttributes;const f=t[r]?.[a.Jt]||t[r];return s.set(f,l),d.inPlace(t,[r],"wrap-logger-",(()=>s.get(f))),u}},9300:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.ajax},3333:(e,t,r)=>{"use strict";r.d(t,{$v:()=>u,TZ:()=>n,Zp:()=>i,kd:()=>c,mq:()=>s,nf:()=>a,qN:()=>o});const n=r(860).K7.genericEvents,i=["auxclick","click","copy","keydown","paste","scrollend"],o=["focus","blur"],a=4,s=1e3,c=["PageAction","UserAction","BrowserPerformance"],u={MARKS:"experimental.marks",MEASURES:"experimental.measures",RESOURCES:"experimental.resources"}},6774:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.jserrors},993:(e,t,r)=>{"use strict";r.d(t,{A$:()=>o,ET:()=>a,TZ:()=>s,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o={OFF:0,ERROR:1,WARN:2,INFO:3,DEBUG:4,TRACE:5},a="log",s=n.K7.logging},3785:(e,t,r)=>{"use strict";r.d(t,{R:()=>c,b:()=>u});var n=r(9908),i=r(1863),o=r(860),a=r(8154),s=r(993);function c(e,t,r={},c=s.p_.INFO,u,d=(0,i.t)()){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,o.K7.metrics,e),(0,n.p)(s.ET,[d,t,r,c,u],void 0,o.K7.logging,e)}function u(e){return"string"==typeof e&&Object.values(s.p_).some((t=>t===e.toUpperCase().trim()))}},8154:(e,t,r)=>{"use strict";r.d(t,{z_:()=>o,XG:()=>s,TZ:()=>n,rs:()=>i,xV:()=>a});r(6154),r(9566),r(384);const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},6344:(e,t,r)=>{"use strict";r.d(t,{BB:()=>d,G4:()=>o,Qb:()=>l,TZ:()=>i,Ug:()=>a,_s:()=>s,bc:()=>u,yP:()=>c});var n=r(2614);const i=r(860).K7.sessionReplay,o={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"},a=.12,s={DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},c={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0},u={RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},d=5e3,l={API:"api"}},5270:(e,t,r)=>{"use strict";r.d(t,{Aw:()=>c,CT:()=>u,SR:()=>s,rF:()=>d});var n=r(384),i=r(9417),o=r(7767),a=r(6154);function s(e){return!!(0,n.dV)().o.MO&&(0,o.V)(e)&&!0===(0,i.gD)(e,"session_trace.enabled")}function c(e){return!0===(0,i.gD)(e,"session_replay.preload")&&s(e)}function u(e,t){const r=t.correctAbsoluteTimestamp(e);return{originalTimestamp:e,correctedTimestamp:r,timestampDiff:e-r,originTime:a.WN,correctedOriginTime:t.correctedOriginTime,originTimeDiff:Math.floor(a.WN-t.correctedOriginTime)}}function d(e,t){try{if("string"==typeof t?.type){if("password"===t.type.toLowerCase())return"*".repeat(e?.length||0);if(void 0!==t?.dataset?.nrUnmask||t?.classList?.contains("nr-unmask"))return e}}catch(e){}return"string"==typeof e?e.replace(/[\S]/g,"*"):"*".repeat(e?.length||0)}},3738:(e,t,r)=>{"use strict";r.d(t,{He:()=>i,Kp:()=>s,Lc:()=>u,Rz:()=>d,TZ:()=>n,bD:()=>o,d3:()=>a,jx:()=>l,uP:()=>c});const n=r(860).K7.sessionTrace,i="bstResource",o="resource",a="-start",s="-end",c="fn"+a,u="fn"+s,d="pushState",l=1e3},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")},2110:(e,t,r)=>{"use strict";r.d(t,{j:()=>j});var n=r(860),i=r(9908),o=r(1687),a=r(5289),s=r(6154),c=r(944),u=r(8154),d=r(384),l=r(6344);const f=["setErrorHandler","finished","addToTrace","addRelease","recordCustomEvent","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",l.G4.RECORD,l.G4.PAUSE,"log","wrapLogger","register"],g=["setErrorHandler","finished","addToTrace","addRelease"];var h=r(1863),p=r(2614),m=r(993),v=r(3785),y=r(9414),b=r(3496);var R=r(3241),x=r(5701);function w(){const e=(0,d.pV)();f.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.runtime?e.exposed&&e[t]&&"micro-agent"!==e.runtime.loaderType&&n.push(e[t](...r)):(0,c.R)(38,t)})),n[0]}(t,...r)}))}const A={};function E(e,t){t||(0,o.Ak)(e.agentIdentifier,"api");const d=e.ee.get("tracer");A[e.agentIdentifier]=p.g.OFF,e.ee.on(l.G4.REPLAY_RUNNING,(t=>{A[e.agentIdentifier]=t}));const f="api-",w=f+"ixn-",E={addPageAction:function(e,t,r,i=(0,h.t)()){I(f,"addPageAction",!0,n.K7.genericEvents,i)(e,t,r)},log:function(t,{customAttributes:r={},level:o=m.p_.INFO}={},a,s=(0,h.t)()){(0,i.p)(u.xV,["API/log/called"],void 0,n.K7.metrics,e.ee),(0,v.R)(e.ee,t,r,o,a,s)},noticeError:function(t,r,o,a=(0,h.t)()){"string"==typeof t&&(t=new Error(t)),(0,i.p)(u.xV,["API/noticeError/called"],void 0,n.K7.metrics,e.ee),(0,i.p)("err",[t,a,!1,r,!!A[e.agentIdentifier],void 0,o],void 0,n.K7.jserrors,e.ee)}};function T(t,r,n,i){const o=e.info;return null===r?delete o.jsAttributes[t]:e.info={...e.info,jsAttributes:{...o.jsAttributes,[t]:r}},I(f,n,!0,i||null===r?"session":void 0)(t,r)}function _(){}e.register=function(t){return(0,i.p)(u.xV,["API/register/called"],void 0,n.K7.metrics,e.ee),function(e,t,r){const o={};let a,s;(0,c.R)(54,"newrelic.register"),e.init.api.allow_registered_children||(a=()=>(0,c.R)(55)),r&&(0,b.I)(r)||(a=()=>(0,c.R)(48,r));const d={addPageAction:(e,n={})=>{l(t.addPageAction,[e,{...o,...n}],r)},log:(e,n={})=>{l(t.log,[e,{...n,customAttributes:{...o,...n.customAttributes||{}}}],r)},noticeError:(e,n={})=>{l(t.noticeError,[e,{...o,...n}],r)},setApplicationVersion:e=>{o["application.version"]=e},setCustomAttribute:(e,t)=>{o[e]=t},setUserId:e=>{o["enduser.id"]=e},metadata:{customAttributes:o,target:r,get connected(){return s||Promise.reject(new Error("Failed to connect"))}}};a?a():s=new Promise(((t,n)=>{try{const i=e.runtime?.entityManager;let a=!!i?.get().entityGuid,s=i?.getEntityGuidFor(r.licenseKey,r.applicationID),c=!!s;if(a&&c)r.entityGuid=s,t(d);else{const u=setTimeout((()=>n(new Error("Failed to connect - Timeout"))),15e3);function l(n){(0,b.A)(n,e)?a||=!0:r.licenseKey===n.licenseKey&&r.applicationID===n.applicationID&&(c=!0,r.entityGuid=n.entityGuid),a&&c&&(clearTimeout(u),e.ee.removeEventListener("entity-added",l),t(d))}e.ee.emit("api-send-rum",[o,r]),e.ee.on("entity-added",l)}}catch(f){n(f)}}));const l=async(t,r,o)=>{if(a)return a();const d=(0,h.t)();(0,i.p)(u.xV,["API/register/".concat(t.name,"/called")],void 0,n.K7.metrics,e.ee);try{await s;const n=e.init.api.duplicate_registered_data;(!0===n||Array.isArray(n)&&n.includes(o.entityGuid))&&t(...r,void 0,d),t(...r,o.entityGuid,d)}catch(e){(0,c.R)(50,e)}};return d}(e,E,t)},e.log=function(e,t){E.log(e,t)},e.wrapLogger=(t,r,{customAttributes:o={},level:a=m.p_.INFO}={})=>{(0,i.p)(u.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,e.ee),(0,y.J)(e.ee,t,r,{customAttributes:o,level:a})},g.forEach((t=>{e[t]=I(f,t,!0,"api")})),e.addPageAction=function(e,t){E.addPageAction(e,t)},e.recordCustomEvent=I(f,"recordCustomEvent",!0,n.K7.genericEvents),e.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),e.runtime.customTransaction=(r||"http://custom.transaction")+t,I(f,"setPageViewName",!0)()},e.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return T(e,t,"setCustomAttribute",r);(0,c.R)(40,typeof t)}else(0,c.R)(39,typeof e)},e.setUserId=function(e){if("string"==typeof e||null===e)return T("enduser.id",e,"setUserId",!0);(0,c.R)(41,typeof e)},e.setApplicationVersion=function(e){if("string"==typeof e||null===e)return T("application.version",e,"setApplicationVersion",!1);(0,c.R)(42,typeof e)},e.start=()=>{try{(0,i.p)(u.xV,["API/start/called"],void 0,n.K7.metrics,e.ee),e.ee.emit("manual-start-all")}catch(e){(0,c.R)(23,e)}},e[l.G4.RECORD]=function(){(0,i.p)(u.xV,["API/recordReplay/called"],void 0,n.K7.metrics,e.ee),(0,i.p)(l.G4.RECORD,[],void 0,n.K7.sessionReplay,e.ee)},e[l.G4.PAUSE]=function(){(0,i.p)(u.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,e.ee),(0,i.p)(l.G4.PAUSE,[],void 0,n.K7.sessionReplay,e.ee)},e.interaction=function(e){return(new _).get("object"==typeof e?e:{})};const S=_.prototype={createTracer:function(t,r){var o={},a=this,s="function"==typeof r;return(0,i.p)(u.xV,["API/createTracer/called"],void 0,n.K7.metrics,e.ee),e.runSoftNavOverSpa||(0,i.p)(w+"tracer",[(0,h.t)(),t,o],a,n.K7.spa,e.ee),function(){if(d.emit((s?"":"no-")+"fn-start",[(0,h.t)(),a,s],o),s)try{return r.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw d.emit("fn-err",[arguments,this,t],o),t}finally{d.emit("fn-end",[(0,h.t)()],o)}}}};function I(t,r,o,a,s=(0,h.t)()){return function(){return(0,i.p)(u.xV,["API/"+r+"/called"],void 0,n.K7.metrics,e.ee),(0,R.W)({agentIdentifier:e.agentIdentifier,drained:!!x.B?.[e.agentIdentifier],type:"data",name:"api",feature:t+r,data:{notSpa:o,bufferGroup:a}}),a&&(0,i.p)(t+r,[s,...arguments],o?null:this,a,e.ee),o?void 0:this}}function O(){r.e(891).then(r.bind(r,8778)).then((({setAsyncAPI:t})=>{t(e),(0,o.Ze)(e.agentIdentifier,"api")})).catch((t=>{(0,c.R)(27,t),e.ee.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((t=>{S[t]=function(){return I.apply(this,[w,t,void 0,e.runSoftNavOverSpa?n.K7.softNav:n.K7.spa]).apply(this,arguments)}})),e.setCurrentRouteName=function(){return e.runSoftNavOverSpa?I(w,"routeName",void 0,n.K7.softNav)(...arguments):I(f,"routeName",!0,n.K7.spa)(...arguments)},e.noticeError=function(e,t){E.noticeError(e,t)},s.RI?(0,a.GG)((()=>O()),!0):O(),!0}var T=r(2555),_=r(9417),S=r(5603),I=r(3371);const O=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};var N=r(7836);const P=new Set;function j(e,t={},r,n){let{init:i,info:o,loader_config:a,runtime:c={},exposed:u=!0}=t;c.loaderType=r;const l=(0,d.pV)();o||(i=l.init,o=l.info,a=l.loader_config),(0,_.xN)(e.agentIdentifier,i||{}),(0,S.a)(e.agentIdentifier,a||{}),o.jsAttributes??={},s.bv&&(o.jsAttributes.isWorker=!0),(0,T.x1)(e.agentIdentifier,o);const f=e.init,g=[o.beacon,o.errorBeacon];P.has(e.agentIdentifier)||(f.proxy.assets&&(O(f.proxy.assets),g.push(f.proxy.assets)),f.proxy.beacon&&g.push(f.proxy.beacon),w(),(0,d.US)("activatedFeatures",x.B),e.runSoftNavOverSpa&&=!0===f.soft_navigations.enabled&&f.feature_flags.includes("soft_nav")),c.denyList=[...f.ajax.deny_list||[],...f.ajax.block_internal?g:[]],c.ptid=e.agentIdentifier,(0,I.V)(e.agentIdentifier,c),P.has(e.agentIdentifier)||(e.ee=N.ee.get(e.agentIdentifier),e.exposed=u,E(e,n),(0,R.W)({agentIdentifier:e.agentIdentifier,drained:!!x.B?.[e.agentIdentifier],type:"lifecycle",name:"initialize",feature:void 0,data:e.config})),P.add(e.agentIdentifier)}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>d,K7:()=>c,P3:()=>u,XX:()=>i,Yy:()=>s,df:()=>o,qY:()=>n,v4:()=>a});const n="events",i="jserrors",o="browser/blobs",a="rum",s="browser/logs",c={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},u={[c.pageViewEvent]:1,[c.pageViewTiming]:2,[c.metrics]:3,[c.jserrors]:4,[c.spa]:5,[c.ajax]:6,[c.sessionTrace]:7,[c.softNav]:8,[c.sessionReplay]:9,[c.logging]:10,[c.genericEvents]:11},d={[c.pageViewEvent]:a,[c.pageViewTiming]:n,[c.ajax]:n,[c.spa]:n,[c.softNav]:n,[c.metrics]:i,[c.jserrors]:i,[c.sessionTrace]:o,[c.sessionReplay]:o,[c.logging]:s,[c.genericEvents]:"ins"}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>({95:"nr-full-compressor",222:"nr-full-recorder",891:"nr-full"}[e]+"-1.288.1.min.js"),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.288.1.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={891:"sha512-CROF331TzEmqm4BynLbVsyiiaqQ8C1VEauoYyTkNXS28C38C3sojvjg9ZVjmOcQ7cpmMkWyrjggqKFdvpHihLQ==",222:"sha512-TB1+vfYdDveuNKXTkUaTdEncNZFuFfF72NhgBqnLpSZ4ZWOJ2FkzQTv3mGezpWc8CJRgh5k0JPhy92L+I7JHyw==",95:"sha512-QQbsBMOQArJHG0j6ePWXm08IvGWVXKH64guQr+WB6pywgy1N2dpD13DhYS1YHotgYfg7vvBnAmD7nrQHBMtj1Q=="};(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 g=(t,n)=>{s.onerror=s.onload=null,clearTimeout(h);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},h=setTimeout(g.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=g.bind(null,s.onerror),s.onload=g.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={85:0,959: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.288.1.PROD"]=self["webpackChunk:NRBA-1.288.1.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8374);var e=i(944),t=i(6344),r=i(9566);class n{agentIdentifier;constructor(){this.agentIdentifier=(0,r.LA)(16)}#e(t,...r){if(this[t]!==n.prototype[t])return this[t](...r);(0,e.R)(35,t)}addPageAction(e,t){return this.#e("addPageAction",e,t)}register(e){return this.#e("register",e)}recordCustomEvent(e,t){return this.#e("recordCustomEvent",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}addRelease(e,t){return this.#e("addRelease",e,t)}log(e,t){return this.#e("log",e,t)}}class o extends n{#e(t,...r){if(this[t]!==o.prototype[t]&&this[t]!==n.prototype[t])return this[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(2110);var l=i(9908),f=i(1687),g=i(4234),h=i(5289),p=i(6154),m=i(5270),v=i(7767),y=i(6389);class b extends g.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,f.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,y.J)((()=>{(0,f.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,v.V)(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(891).then(i.bind(i,6526));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(!this.#t(this.featureName,o))return(0,f.Ze)(this.agentIdentifier,this.featureName),void n(!1);const{lazyFeatureLoader:e}=await i.e(891).then(i.bind(i,6103)),{Aggregate:a}=await e(this.featureName,"aggregate");this.featAggregate=new a(t,r),t.runtime.harvester.initializedAggregates.push(this.featAggregate),n(!0)}catch(t){(0,e.R)(34,t),this.abortHandler?.(),(0,f.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,m.SR)(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var R=i(6630);class x extends b{static featureName=R.T;constructor(e,t=!0){super(e,R.T,t),this.ee.on("api-send-rum",((e,t)=>(0,l.p)("send-rum",[e,t],void 0,this.featureName,this.ee))),this.importAggregator(e)}}var w=i(384);var A=i(2843),E=i(3878),T=i(782),_=i(1863);class S extends b{static featureName=T.T;constructor(e,t=!0){super(e,T.T,t),p.RI&&((0,A.u)((()=>(0,l.p)("docHidden",[(0,_.t)()],void 0,T.T,this.ee)),!0),(0,E.sp)("pagehide",(()=>(0,l.p)("winPagehide",[(0,_.t)()],void 0,T.T,this.ee))),this.importAggregator(e))}}var I=i(8154);class O extends b{static featureName=I.TZ;constructor(e,t=!0){super(e,I.TZ,t),p.RI&&document.addEventListener("securitypolicyviolation",(e=>{(0,l.p)(I.xV,["Generic/CSPViolation/Detected"],void 0,this.featureName,this.ee)})),this.importAggregator(e)}}var N=i(6774),P=i(3304);class j{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,P.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function C(e){return L(e)?e:new j(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic)}function k(e){const t="Unhandled Promise Rejection: ";if(!e?.reason)return;if(L(e.reason)){try{e.reason.message.startsWith(t)||(e.reason.message=t+e.reason.message)}catch(e){}return C(e.reason)}const r=C(e.reason);return(r.message||"").startsWith(t)||(r.message=t+r.message),r}function D(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new j(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic);return t.name=SyntaxError.name,t}return L(e.error)?e.error:C(e)}function L(e){return e instanceof Error&&!!e.stack}class H extends b{static featureName=N.T;#r=!1;constructor(e,r=!0){super(e,N.T,r);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",((e,t)=>{this.abortHandler&&(0,l.p)("ierr",[C(e),(0,_.t)(),!0,{},this.#r,t],void 0,this.featureName,this.ee)})),this.ee.on(t.G4.REPLAY_RUNNING,(e=>{this.#r=e})),p.gm.addEventListener("unhandledrejection",(e=>{this.abortHandler&&(0,l.p)("err",[k(e),(0,_.t)(),!1,{unhandledPromiseRejection:1},this.#r],void 0,this.featureName,this.ee)}),(0,E.jT)(!1,this.removeOnAbort?.signal)),p.gm.addEventListener("error",(e=>{this.abortHandler&&(0,l.p)("err",[D(e),(0,_.t)(),!1,{},this.#r],void 0,this.featureName,this.ee)}),(0,E.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var K=i(8990);let M=1;function U(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===p.gm?0:(0,K.I)(e,"nr@id",(function(){return M++}))}function G(e){if("string"==typeof e&&e.length)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,P.A)(e).length}catch(e){return}}}var V=i(8139),F=i(7836),B=i(3434);const W={},z=["open","send"];function q(t){var r=t||F.ee;const n=function(e){return(e||F.ee).get("xhr")}(r);if(void 0===p.gm.XMLHttpRequest)return n;if(W[n.debugId]++)return n;W[n.debugId]=1,(0,V.u)(r);var i=(0,B.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-",b)}),(0,E.jT)(!1))}catch(t){(0,e.R)(15,t);try{n.emit("internal-error",[t])}catch(e){}}var s;return r};function g(e,t){i.inPlace(t,["onreadystatechange"],"fn-",b)}if(function(e,t){for(var r in e)t[r]=e[r]}(o,f),f.prototype=o.prototype,i.inPlace(f.prototype,z,"-xhr-",b),n.on("send-xhr-start",(function(e,t){g(e,t),function(e){l.push(e),a&&(h?h.then(y):c?c(y):(m=-m,v.data=m))}(t)})),n.on("open-xhr-start",g),a){var h=s&&s.resolve();if(!c&&!s){var m=1,v=document.createTextNode(m);new a(y).observe(v,{characterData:!0})}}else r.on("fn-end",(function(e){e[0]&&e[0].type===u||y()}));function y(){for(var e=0;e<l.length;e++)g(0,l[e]);l.length&&(l=[])}function b(e,t){return t}return n}var Z="fetch-",Y=Z+"body-",X=["arrayBuffer","blob","json","text","formData"],J=p.gm.Request,Q=p.gm.Response,ee="prototype";const te={};function re(e){const t=function(e){return(e||F.ee).get("fetch")}(e);if(!(J&&Q&&p.gm.fetch))return t;if(te[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[F.P]&&o[F.P].dt&&(e=o[F.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 te[t.debugId]=1,X.forEach((e=>{r(J[ee],e,Y),r(Q[ee],e,Y)})),r(p.gm,"fetch",Z),t.on(Z+"end",(function(e,r){var n=this;if(r){var i=r.headers.get("content-length");null!==i&&(n.rxSize=i),t.emit(Z+"done",[null,r],n)}else t.emit(Z+"done",[e],n)})),t}var ne=i(7485),ie=i(5603);class oe{constructor(e){this.agentIdentifier=e}generateTracePayload(e){if(!this.shouldGenerateTrace(e))return null;var t=(0,ie.o)(this.agentIdentifier);if(!t)return null;var n=(t.accountID||"").toString()||null,i=(t.agentID||"").toString()||null,o=(t.trustKey||"").toString()||null;if(!n||!i)return null;var a=(0,r.ZF)(),s=(0,r.el)(),c=Date.now(),u={spanId:a,traceId:s,timestamp:c};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(u.traceContextParentHeader=this.generateTraceContextParentHeader(a,s),u.traceContextStateHeader=this.generateTraceContextStateHeader(a,c,n,i,o)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(u.newrelicHeader=this.generateTraceHeader(a,s,c,n,i,o)),u}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,o){if(!("function"==typeof p.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return o&&n!==o&&(a.d.tk=o),btoa((0,P.A)(a))}shouldGenerateTrace(e){return this.isDtEnabled()&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1,r={};if((0,s.gD)(this.agentIdentifier,"distributed_tracing")&&(r=(0,s.D0)(this.agentIdentifier).distributed_tracing),e.sameOrigin)t=!0;else if(r.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,ne.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 ae=i(9300),se=i(7295),ce=["load","error","abort","timeout"],ue=ce.length,de=(0,w.dV)().o.REQ,le=(0,w.dV)().o.XHR;const fe="X-NewRelic-App-Data";class ge extends b{static featureName=ae.T;constructor(e,t=!0){super(e,ae.T,t),this.dt=new oe(e.agentIdentifier),this.handler=(e,t,r,n)=>(0,l.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};he(r,t.name),this.handler("xhr",[r,n,t.startTime,t.responseEnd,e[t.initiatorType]],void 0,a.K7.ajax)}}))}catch(e){}re(this.ee),q(this.ee),function(e,t,r,n){function i(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=w,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},e.addEventListener("load",(function(r){A(t,e)}),(0,E.jT)(!1)),p.lR||e.addEventListener("progress",(function(e){t.lastSize=e.loaded}),(0,E.jT)(!1))}function o(e){this.params={method:e[0]},he(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,_.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<ue;s++)r.addEventListener(ce[s],this.listener,(0,E.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=""+U(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function f(e,t){var r=""+U(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function g(){this.endTime=(0,_.t)()}function h(e,r){r instanceof le&&"load"===e[0]&&t.emit("xhr-load-added",[e[1],e[2]],r)}function m(e,r){r instanceof le&&"load"===e[0]&&t.emit("xhr-load-removed",[e[1],e[2]],r)}function v(e,t,r){t instanceof le&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,_.t)()))}function y(e,r){this.xhrCbStart&&t.emit("xhr-cb-time",[(0,_.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,ne.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 R(e,t){this.params={},this.metrics={},this.startTime=(0,_.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 de?r=i.url:p.gm?.URL&&"object"==typeof i&&i instanceof URL&&(r=i.href),he(this,r);var o=(""+(i&&i instanceof de&&i.method||n.method||"GET")).toUpperCase();this.params.method=o,this.body=n.body,this.txSize=G(n.body)||0}function x(e,t){if(this.endTime=(0,_.t)(),this.params||(this.params={}),(0,se.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,_.t)()-this.startTime};r("xhr",[this.params,i,this.startTime,this.endTime,"fetch"],this,a.K7.ajax)}function w(e){const t=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(let t=0;t<ue;t++)e.removeEventListener(ce[t],this.listener,!1);t.aborted||(0,se.iW)(t)||(n.duration=(0,_.t)()-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==t.status&&(t.status=0):A(this,e),n.cbTime=this.cbTime,r("xhr",[t,n,this.startTime,this.endTime,"xhr"],this,a.K7.ajax))}}function A(e,r){e.params.status=r.status;var n=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?G(e.response):"text"===r||""===r||void 0===r?G(e.responseText):void 0}(r,e.lastSize);if(n&&(e.metrics.rxSize=n),e.sameOrigin&&r.getAllResponseHeaders().indexOf(fe)>=0){var i=r.getResponseHeader(fe);i&&((0,l.p)(I.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",f),t.on("xhr-resolved",g),t.on("addEventListener-end",h),t.on("removeEventListener-end",m),t.on("fn-end",y),t.on("fetch-before-start",b),t.on("fetch-start",R),t.on("fn-start",v),t.on("fetch-done",x)}(e,this.ee,this.handler,this.dt),this.importAggregator(e)}}function he(e,t){var r=(0,ne.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 pe={},me=["pushState","replaceState"];function ve(e){const t=function(e){return(e||F.ee).get("history")}(e);return!p.RI||pe[t.debugId]++||(pe[t.debugId]=1,(0,B.YM)(t).inPlace(window.history,me,"-")),t}var ye=i(3738);const{He:be,bD:Re,d3:xe,Kp:we,TZ:Ae,Lc:Ee,uP:Te,Rz:_e}=ye;class Se extends b{static featureName=Ae;constructor(e,t=!0){super(e,Ae,t);if(!(0,v.V)(this.agentIdentifier))return void this.deregisterDrain();const r=this.ee;let n;ve(r),this.eventsEE=(0,V.u)(r),this.eventsEE.on(Te,(function(e,t){this.bstStart=(0,_.t)()})),this.eventsEE.on(Ee,(function(e,t){(0,l.p)("bst",[e[0],t,this.bstStart,(0,_.t)()],void 0,a.K7.sessionTrace,r)})),r.on(_e+xe,(function(e){this.time=(0,_.t)(),this.startPath=location.pathname+location.hash})),r.on(_e+we,(function(e){(0,l.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,l.p)(be,[t],void 0,a.K7.sessionTrace,r)})),n.observe({type:Re,buffered:!0})}catch(e){}this.importAggregator(e,{resourceObserver:n})}}var Ie=i(2614);class Oe 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(Ie.H3,"_").concat(Ie.uh)))}catch(e){}(0,m.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,l.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===Ie.g.FULL||e.sessionReplayMode===Ie.g.ERROR)||(0,m.Aw)(this.agentIdentifier)}#u=!1;async#c(e){if(!this.#u){this.#u=!0;try{const{Recorder:t}=await Promise.all([i.e(891),i.e(222)]).then(i.bind(i,8589));this.recorder??=new t({mode:this.#i,agentIdentifier:this.agentIdentifier,trigger:e,ee:this.ee,agentRef:this.#o}),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording}catch(e){}this.importAggregator(this.#o,{recorder:this.recorder,errorNoticed:this.errorNoticed})}}#a(){this.featAggregate?this.featAggregate.mode!==Ie.g.FULL&&this.featAggregate.initializeRecording(Ie.g.FULL,!0):(this.#i=Ie.g.FULL,this.#c(t.Qb.API),this.recorder&&this.recorder.parent.mode!==Ie.g.FULL&&(this.recorder.parent.mode=Ie.g.FULL,this.recorder.stopRecording(),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording))}}var Ne=i(3333);class Pe extends b{static featureName=Ne.TZ;constructor(e,t=!0){super(e,Ne.TZ,t);const r=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.user_actions.enabled,e.init.performance.resources.enabled];if(p.RI&&(e.init.user_actions.enabled&&(Ne.Zp.forEach((e=>(0,E.sp)(e,(e=>(0,l.p)("ua",[e],void 0,this.featureName,this.ee)),!0))),Ne.qN.forEach((e=>{const t=(0,y.s)((e=>{(0,l.p)("ua",[e],void 0,this.featureName,this.ee)}),500,{leading:!0});(0,E.sp)(e,t)}))),e.init.performance.resources.enabled&&p.gm.PerformanceObserver?.supportedEntryTypes.includes("resource"))){new PerformanceObserver((e=>{e.getEntries().forEach((e=>{(0,l.p)("browserPerformance.resource",[e],void 0,this.featureName,this.ee)}))})).observe({type:"resource",buffered:!0})}r.some((e=>e))?this.importAggregator(e):this.deregisterDrain()}}var je=i(993),Ce=i(3785),ke=i(9414);class De extends b{static featureName=je.TZ;constructor(e,t=!0){super(e,je.TZ,t);const r=this.ee;(0,ke.J)(r,p.gm.console,"log",{level:"info"}),(0,ke.J)(r,p.gm.console,"error",{level:"error"}),(0,ke.J)(r,p.gm.console,"warn",{level:"warn"}),(0,ke.J)(r,p.gm.console,"info",{level:"info"}),(0,ke.J)(r,p.gm.console,"debug",{level:"debug"}),(0,ke.J)(r,p.gm.console,"trace",{level:"trace"}),this.ee.on("wrap-logger-end",(function([e]){const{level:t,customAttributes:n}=this;(0,Ce.R)(r,e,n,t)})),this.importAggregator(e)}}new class extends o{constructor(t){super(),p.gm?(this.features={},(0,w.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(x),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}}get api(){return this}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,w.Zm)();delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[x,S,Se,Oe,ge,O,H,Pe,De],loaderType:"pro"})})()})();</script> <!-- link cluster --> <link rel="alternate" type="application/rss+xml" title="BU Libraries RSS Feed" href="https://www.bu.edu/library/feed/"> <link rel="stylesheet" media="all" href="https://www.bu.edu/library/wp-content/themes/bu-library/style.css"> <link rel="stylesheet" media="print" href="https://www.bu.edu/library/wp-content/themes/bu-library/css/print.css"> <!--[if lte IE 8]> <link rel="stylesheet" media="all" href="https://www.bu.edu/library/wp-content/themes/bu-library/css/ie.css"> <![endif]--> <link rel='dns-prefetch' href='//ajax.googleapis.com' /> <link rel='dns-prefetch' href='//s.w.org' /> <script type="text/javascript"> window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/12.0.0-1\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/12.0.0-1\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/www.bu.edu\/library\/wp-includes\/js\/wp-emoji-release.min.js?ver=5.4.2"}}; /*! This file is auto-generated */ !function(e,a,t){var r,n,o,i,p=a.createElement("canvas"),s=p.getContext&&p.getContext("2d");function c(e,t){var a=String.fromCharCode;s.clearRect(0,0,p.width,p.height),s.fillText(a.apply(this,e),0,0);var r=p.toDataURL();return s.clearRect(0,0,p.width,p.height),s.fillText(a.apply(this,t),0,0),r===p.toDataURL()}function l(e){if(!s||!s.fillText)return!1;switch(s.textBaseline="top",s.font="600 32px Arial",e){case"flag":return!c([127987,65039,8205,9895,65039],[127987,65039,8203,9895,65039])&&(!c([55356,56826,55356,56819],[55356,56826,8203,55356,56819])&&!c([55356,57332,56128,56423,56128,56418,56128,56421,56128,56430,56128,56423,56128,56447],[55356,57332,8203,56128,56423,8203,56128,56418,8203,56128,56421,8203,56128,56430,8203,56128,56423,8203,56128,56447]));case"emoji":return!c([55357,56424,55356,57342,8205,55358,56605,8205,55357,56424,55356,57340],[55357,56424,55356,57342,8203,55358,56605,8203,55357,56424,55356,57340])}return!1}function d(e){var t=a.createElement("script");t.src=e,t.defer=t.type="text/javascript",a.getElementsByTagName("head")[0].appendChild(t)}for(i=Array("flag","emoji"),t.supports={everything:!0,everythingExceptFlag:!0},o=0;o<i.length;o++)t.supports[i[o]]=l(i[o]),t.supports.everything=t.supports.everything&&t.supports[i[o]],"flag"!==i[o]&&(t.supports.everythingExceptFlag=t.supports.everythingExceptFlag&&t.supports[i[o]]);t.supports.everythingExceptFlag=t.supports.everythingExceptFlag&&!t.supports.flag,t.DOMReady=!1,t.readyCallback=function(){t.DOMReady=!0},t.supports.everything||(n=function(){t.readyCallback()},a.addEventListener?(a.addEventListener("DOMContentLoaded",n,!1),e.addEventListener("load",n,!1)):(e.attachEvent("onload",n),a.attachEvent("onreadystatechange",function(){"complete"===a.readyState&&t.readyCallback()})),(r=t.source||{}).concatemoji?d(r.concatemoji):r.wpemoji&&r.twemoji&&(d(r.twemoji),d(r.wpemoji)))}(window,document,window._wpemojiSettings); </script> <style 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 .07em !important; vertical-align: -0.1em !important; background: none !important; padding: 0 !important; } </style> <style type="text/css"> #wpadminbar #wp-admin-bar-my-networks > .ab-item:first-child:before { content: "\f325"; top: 3px; } </style> <link rel='stylesheet' id='yarppWidgetCss-css' href='https://www.bu.edu/library/wp-content/plugins/yet-another-related-posts-plugin/style/widget.css?ver=5.4.2' type='text/css' media='all' /> <link rel='stylesheet' id='bu-alert-css-css' href='https://www.bu.edu/library/wp-content/mu-plugins/bu-alert/alert.css?ver=3.0' type='text/css' media='all' /> <link rel='stylesheet' id='wp-block-library-css' href='https://www.bu.edu/library/wp-includes/css/dist/block-library/style.min.css?ver=5.4.2' type='text/css' media='all' /> <link rel='stylesheet' id='bu-navigation-block-frontend-style-css' href='https://www.bu.edu/library/wp-content/mu-plugins/bu-navigation/src/block-frontend.css?ver=1.3.4' type='text/css' media='all' /> <link rel='stylesheet' id='qtip_style-css' href='https://www.bu.edu/library/wp-content/themes/bu-library/css/jquery.qtip2.min.css?ver=5.4.2' type='text/css' media='all' /> <script type='text/javascript' src='//ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js?ver=5.4.2'></script> <script type='text/javascript' src='https://www.bu.edu/library/wp-content/mu-plugins/bu-cms/interface/js/outbound_link_tracking.js?ver=5.4.2'></script> <script type='text/javascript'> /* <![CDATA[ */ var downloadOptions = {"trackedTypes":["pdf"]}; /* ]]> */ </script> <script type='text/javascript' src='https://www.bu.edu/library/wp-content/mu-plugins/bu-cms/interface/js/download_tracking.js?ver=1.8.4'></script> <script type='text/javascript' src='https://www.bu.edu/library/wp-content/themes/bu-library/js/modernizr.js?ver=5.4.2'></script> <script type='text/javascript' src='https://www.bu.edu/library/wp-content/themes/bu-library/js/jquery.hoverIntent.minified.js?ver=5.4.2'></script> <script type='text/javascript' src='https://www.bu.edu/library/wp-content/themes/bu-library/js/jquery.qtip2.min.js?ver=5.4.2'></script> <link rel='https://api.w.org/' href='https://www.bu.edu/library/wp-json/' /> <link rel="canonical" href="https://www.bu.edu/library/about/" /> <link rel='shortlink' href='https://www.bu.edu/library/?p=6932' /> <link rel="alternate" type="application/json+oembed" href="https://www.bu.edu/library/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.bu.edu%2Flibrary%2Fabout%2F" /> <link rel="alternate" type="text/xml+oembed" href="https://www.bu.edu/library/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.bu.edu%2Flibrary%2Fabout%2F&#038;format=xml" /> <meta name='last-updated' content='2025-02-20T16:29:25-04:00' /> <script async src="https://www.googletagmanager.com/gtag/js?id=UA-5204430-1"></script> <script id="google-analytics-registration" defer> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', "UA-5204430-1"); </script> <!-- header link tracking --> <script type="text/javascript"> window.onload = function(){ // header links let headerLinks = document.querySelectorAll("#utility div.header-wrapper div.primary-navbar ul.menu-items > li > a"); addSendGAEventOnAnchorClickToAnchorElements(headerLinks, "header-link", "main"); // find and borrow let findAndBorrowSubmenu = document.querySelector("#utility div.header-wrapper bulib-submenu[code=find-and-borrow]"); let findAndBorrowLinks = findAndBorrowSubmenu.shadowRoot.querySelectorAll("a"); addSendGAEventOnAnchorClickToAnchorElements(findAndBorrowLinks, "header-link", "find-and-borrow"); // research and learn let researchAndLearnSubmenu = document.querySelector("#utility div.header-wrapper bulib-submenu[code=research-and-learn]"); let researchAndLearnLinks = researchAndLearnSubmenu.shadowRoot.querySelectorAll("a"); addSendGAEventOnAnchorClickToAnchorElements(researchAndLearnLinks, "header-link", "research-and-learn"); // about us let aboutUsSubmenu = document.querySelector("#utility div.header-wrapper bulib-submenu[code=about-us]"); let aboutUsSubmenuLinks = aboutUsSubmenu.shadowRoot.querySelectorAll("a"); addSendGAEventOnAnchorClickToAnchorElements(aboutUsSubmenuLinks, "header-link", "about-us"); // locations let locationsSubmenu = document.querySelector("#utility div.header-wrapper bulib-submenu[code=locations]"); let locationsSubmenuLinks = locationsSubmenu.shadowRoot.querySelectorAll("a"); addSendGAEventOnAnchorClickToAnchorElements(locationsSubmenuLinks, "header-link", "locations"); } </script><!-- pull in bulib-wc components --> <script src="https://cdn.jsdelivr.net/npm/@webcomponents/webcomponentsjs/webcomponents-loader.js"></script> <script type="text/javascript" defer src="https://unpkg.com/bulib-wc@0.1.59/dist/helpers.js"> </script> <script type="module" src="https://unpkg.com/@bostonuniversity/bulib-wc@0.1.75/src/index.js?module"> </script> <!-- styling --> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/bulib-wc@0.1.59/dist/bundle.min.css"> <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/bulib-wc@0.1.59/dist/wordpress.css"> <style type="text/css"> span.plm { padding-left: unset !important; } </style> <script type="text/javascript"> //<![CDATA[ function bu_ga_track_pageview(e){var a,t=bu_ga_get_trackers();for(e||(e=void 0),_gaq.push(["_trackPageview",e]),a=0;a<t.length;a++)_gaq.push([t[a]+"._trackPageview",e])}function bu_ga_track_event(e){("undefined"==typeof e.value||null===e.value||isNaN(e.value))&&(e.value=0),"undefined"!=typeof e.delay&&null!==e.delay||(e.delay=0),"undefined"!=typeof e.noninteract&&null!==e.noninteract||(e.noninteract=!0),e.value=parseFloat(e.value);var a,t=bu_ga_get_trackers();for(_gaq.push(["_trackEvent",e.category,e.action,e.label,e.value,e.noninteract]),a=0;a<t.length;a++)_gaq.push([t[a]+"._trackEvent",e.category,e.action,e.label,e.value,e.noninteract]);e.delay&&setTimeout(function(){return!0},100)}function bu_ga_track_social(e){"undefined"!=typeof e.target&&"null"!=typeof e.target||(e.target=void 0),"undefined"!=typeof e.path&&"null"!=typeof e.path||(e.path=void 0);var a,t=bu_ga_get_trackers();for(_gaq.push(["_trackSocial",e.network,e.action,e.target,e.path]),a=0;a<t.length;a++)_gaq.push([t[a]+"._trackSocial",e.network,e.action,e.target,e.path])}function bu_ga_get_trackers(){return"undefined"==typeof buGa||"undefined"==typeof buGa.trackerNames?[]:buGa.trackerNames}function bu_ga_get_tracker(e){if("undefined"==typeof buGa||"undefined"==typeof buGa.trackerIds)return null;if("undefined"==typeof e||"null"==typeof e)return"";var a=buGa.trackerIds;for(var t in a)if(a[t]===e)return"a"===t?"":t;return null}var buGa = {"trackerNames":["b","c"],"trackerIds":{"a":"G-0Z1EBE5RV7","b":"UA-5204430-1","c":"G-MT4P46B8B9"}}; var _gaq = _gaq || []; /* begin other trackers */ _gaq.push(['b._setAccount', 'UA-5204430-1']); _gaq.push(['b._setCookiePath', '/library/']); _gaq.push(['b._trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); //]]> </script> <script async src="https://www.googletagmanager.com/gtag/js?id=G-0Z1EBE5RV7"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-0Z1EBE5RV7'); gtag('config', 'G-MT4P46B8B9'); </script> <link rel="stylesheet" id="custom-css-css" type="text/css" href="https://www.bu.edu/library/files/custom.min.css" /> </head> <body id="regular-page" > <div class="wrapper"> <div id="pnb"> <div class="container"> <ul id="home" class="menu"> <li><a href="https://www.bu.edu/library">BU Libraries Home</a></li> </ul> <ul id="primary" class="menu no-dive"><li class="page_item page-item-6926"> <a class="level_1" href="https://www.bu.edu/library/research/">Research</a> </li> <li class="page_item page-item-6929"> <a class="level_1" href="https://www.bu.edu/library/services/">Services</a> </li> <li class="page_item page-item-6932 current_page_item"> <a class="level_1 active" href="https://www.bu.edu/library/about/">About</a> </li> </ul> <div id="utility" class="menu"><div class="header-wrapper"> <nav> <a class="sr-only" href="#content">Skip to Main Content</a> <div class="primary-navbar"> <div class="primary-nav-left"> <a title="BU Libraries Homepage" href="/library"> <img id="bu-logo" src="https://cdn.jsdelivr.net/npm/bulib-wc@latest/dist/icons/bulib-logo.png"> </a> </div> <div class="primary-nav-main menu-items-wrapper"> <ul class="menu-items"> <li class="menu-item"> <a class="inline no-wrap" href="/library/services"> <span class="txt-wrap">Find & Borrow</span><i class="material-icons">arrow_drop_down</i> </a> <div class="submenu"><bulib-submenu code="find-and-borrow" class="full-width"></bulib-submenu></div> </li> <li class="menu-item"> <a href="/library/research"> <span>Research & Learn</span><i class="material-icons">arrow_drop_down</i> </a> <div class="submenu"><bulib-submenu code="research-and-learn" class="full-width"></bulib-submenu></div> </li> <li class="menu-item"> <a href="/library/about"> <span class="txt-wrap">About Us</span><i class="material-icons">arrow_drop_down</i> </a> <div class="submenu"><bulib-submenu code="about-us" class="full-width"></bulib-submenu></div> </li> <li class="menu-item"> <a href="/library/about"> <span>Locations</span><i class="material-icons">arrow_drop_down</i> </a> <div class="submenu"><bulib-submenu code="locations" class="full-width"></bulib-submenu></div> </li> </ul> </div> <div class="primary-nav-right"> <div class="mobile-navigation none" aria-hidden="true"> <div id="menuToggle"> <!-- invisible toggle with hamburger --> <input type="checkbox" tabindex="-1"> <span></span> <span></span> <span></span> <!-- mobile nav menu --> <ul id="mobile-menu"> <li><a href="https://www.bu.edu/library/search">BU Libraries Search</a></li> <li><a href="/library/help/using-the-libraries-online/">Using the Libraries Online</a></li> <li><a href="/library/help/visiting-the-libraries/">Visiting the Libraries</a></li> <li><a href="/library/about/hours/">Library Hours</a></li> <li><a href="/library/about">Locations</a></li> <li><a href="/library/about/maps-floorplans">Maps and Floorplans</a></li> <li><hr></li> <li><a href="/library/">Libraries Home</a></li> <li><a href="https://askalibrarian.bu.edu">Ask a Librarian</a></li> <li><a href="https://www.bu.edu/library/account">My Account</a></li> </ul> </div> </div> <div class="top-right"> <ul class="menu-items"> <li> <a class="menu-item inline" href="https://askalibrarian.bu.edu/"> <span class="prm">Ask a Librarian</span><i class="material-icons inline">question_answer</i> </a> </li> <li> <a class="menu-item inline" href="https://www.bu.edu/library/account"> <span class="prm">My Account</span><i class="material-icons inline">person</i> </a> </li> </ul> </div> </div> </div> <script id="mobile-nav-clickout" type="text/javascript"> let input = document.querySelector("#menuToggle > input"); window.addEventListener("click", (event) => { let clicked = event.target; let clicked_within_mobile_menu = clicked.closest("#menuToggle") != null; if(input && clicked != input && !clicked_within_mobile_menu || clicked.tagName == "A"){ input.checked = false; // uncheck the #menuToggle input, closing the mobile nav } }); </script> </nav> </div> <div class="banner-wrapper"> <div class="banner"> <section> <span class="flexw mrl"> <a id="genus" class="bold" href=""></a> <a id="species" href=""></a> </span> <span id="hours-display" class="flexw small-text txtv mts"> <a href="https://www.bu.edu/library/about/hours/">Library Hours</a> </span> </section> <bulib-search str_options="wp primo guides" class="secondary"> <form action="https://search.bu.edu/" method="get"> <input name="site" type="text" value="www.bu.edu/library" class="sr-only"/> <input name="q" type="text" placeholder="Search this site"/> <button type="submit" class="bulib-btn pan mln"><i class="material-icons">search</i></button> </form> </bulib-search> </div> </div> <bulib-announce code="wordpress" dismissed></bulib-announce> <style type="text/css"> .top-right ul.menu-items > li { border: 1px solid #cccccc; border-radius: 2px; margin-left: 10px !important; text-transform: none; } .top-right ul.menu-items > li > a { background-color: #065180 !important; font-size: 1em !important; } #utility .top-right ul.menu-items > li, #utility .top-right ul.menu-items > li a { background-color: var(--color-button-background-dark, #0B4473) !important; } bulib-submenu, div.submenu { margin-top: -15px; } </style> <script type="text/javascript"> let deSlugify = function(str){ str = str.replace(/-/g, " "); str = str.replace(/\b\w/g, function(c) { return c.toUpperCase(); }); if(str === "Pickering Educational"){str = "Pickering Educational Resources Library";} if(str === "Sel"){ str = "Science & Engineering Library"; } if(str === "Mugar Memorial"){ str = "Mugar Memorial Library"; } if(str === "Aren"){ str = "Archive of the Republic of Niger"; } if(str === "Ill"){ str = "Interlibrary Borrowing"; } if(str === "Music" || str === "Pickering Educational Resources" || str === "African Studies" || str === "Mugar Memorial" || str ==="Stone Science" || str === "Astronomy"){ str = str + " Library"; } if(str === "Management"){ str = "Pardee Management Library"; } return str; } let paths = window.location.pathname.split("/").slice(1); let href_base = ""; if(paths.length >= 2){ let genusLink = document.getElementById("genus"); genusLink.innerText = deSlugify(paths[1]); href_base = "/" + paths.slice(0,2).join("/") genusLink.href= href_base; } if(paths.length >=3 && paths[2] != ""){ let speciesLink = document.getElementById("species"); speciesLink.innerHTML = ":  " + deSlugify(paths[2]); speciesLink.href= href_base+"/"+paths[2]; } </script></div> <div class="location-select drop-filter"> <span class="tab-switcher"><strong><a href="https://www.bu.edu/library/about/">Library Locations</a></strong></span> <ul class="filter-options"> <li><a href="https://www.bu.edu/library/african-studies/">African Studies Library</a></li> <li><a href="https://www.bu.edu/library/astronomy/">Astronomy Library</a></li> <li><a href="https://www.bu.edu/library/mugar-memorial/">Mugar Library</a></li> <li><a href="https://www.bu.edu/library/music/">Music Library</a></li> <li><a href="https://www.bu.edu/library/management/">Pardee Management Library</a></li> <li><a href="https://www.bu.edu/library/pickering-educational/">Pickering Educational Resources Library</a></li> <li><a href="https://www.bu.edu/library/sel/">Science & Engineering Library</a></li> <li><a href="https://www.bu.edu/library/stone-science/">Stone Science Library</a></li><li><a href="https://www.bu.edu/library/about/">All BU Library Locations</a></li></ul> </div> </div><!--/.container--> </div><!-- /#pnb --> <div id="header"> <div class="container"> <div id="search"> <form enctype="application/x-www-form-urlencoded; charset=utf-8" action="https://www.bu.edu/library/wp-content/themes/bu-library/search-redirector.php" method="post" role="search" name="searchForm"> <label class="search-box" for="q">Search</label> <div class="search-wrap"> <input id="q" type="search" name="q" placeholder="Enter keywords…"> <div id="narrow-container"> <fieldset class="narrow-search"> <legend><span>Search In</span></legend> <div class="search-options"> <label class="active"><input type="radio" id="search-catalog" name="searcharea" value="catalog" checked> BU Libraries</label> <label><input type="radio" id="search-guides" name="searcharea" value="guides"> Guides</label> <label><input type="radio" id="search-site" name="searcharea" value="website"> Website only</label> </div> </fieldset> </div> <button type="submit" class="button" name="Search">Search</button> </div> </form> <p class="advanced"> <a href="https://www.bu.edu/library/account/">My Library Account</a> <a href="https://www.bu.edu/library/advancedsearch/">Advanced Search</a> <a href="/library/help/bu-libraries-search/">Search Help</a> </p> </div><!--/#search--> <h1 id="masthead"><a href="https://www.bu.edu/library/">BU Libraries</a></h1> </div><!--/.container--> </div><!--/#header--> <div id="content"> <div class="page_hdr"> <a href="https://www.bu.edu/library/">Home</a> &gt; </div> <div class="wrapper"> <div class="main left"> <div class="banner-container"><img src="/library/files/2011/11/banner_mugar2.jpg" width="612" height="230" class="banner" alt=""/> </div> <div class="content-panel" id="post-6932"> <h1>About the BU Libraries</h1> <p>BU Libraries provide research tools and services that include library tutorials, library instruction from research basics to graduate-level classes, reference services in all our major libraries, access to digital resources, specialist consultations, and librarian-created guides with curated resources.</p> <p>Our specialized libraries develop targeted collections for area-specific research, offering access to the best available resources. Libraries in our system include:</p> <div class="content-block image"><a title="African Studies Library (ASL)" href="https://www.bu.edu/library/african-studies/"><img class="alignleft size-thumbnail wp-image-26719" title="african_small" alt="african_small" src="/library/files/2012/04/african_small-150x115.jpg" height="115" width="150" /></a></p> <h2><a href="https://www.bu.edu/library/african-studies/">African Studies Library</a></h2> <p>The African Studies Library (ASL) is a collection of multidisciplinary resources for the study of Africa, including social sciences and humanities, sciences (especially public health), and subjects in nearly every academic discipline.</div> <div class="content-block image"><a href="https://www.bumc.bu.edu/medlib/" target="_blank" rel="noopener noreferrer"><img class="alignleft wp-image-27240 size-thumbnail" alt="med_small2" src="/library/files/2012/04/med_small2-150x115.jpg" height="115" width="150" /></a></p> <h2><a href="https://www.bumc.bu.edu/medlib/">Alumni Medical Library</a></h2> <p>The Alumni Medical Library serves the faculty, staff, and students of BU’s Schools of Medicine, Dental Medicine, and Public Health.</div> <div class="content-block image"><a title="Astronomy Library" href="https://www.bu.edu/library/astronomy/"><img class="alignleft size-thumbnail wp-image-26720" title="astronomy_small" alt="astronomy_small" src="/library/files/2012/04/astronomy_small-150x115.jpg" height="115" width="150" /></a></p> <h2><a href="https://www.bu.edu/library/astronomy/">Astronomy Library</a></h2> <p>The Michael D. Papagiannis Astronomy Library’s collection supports BU’s astronomy and astrophysics programs as well as research conducted by faculty and staff of the Astronomy Department, the Center for Space Physics, and the Institute for Astrophysical Research.</div> <div class="content-block image"><a href="https://www.bu.edu/law/libraries/" target="_blank" rel="noopener noreferrer"><img class="alignleft wp-image-27075 size-thumbnail" alt="law_small" src="/library/files/2012/04/law_small-150x115.jpg" height="115" width="150" /></a></p> <h2><a href="https://www.bu.edu/law/libraries/">Fineman and Pappas Law Libraries</a></h2> <p>The Fineman and Pappas Law Libraries supports the research needs of the School of Law faculty and students, along with other legal researchers at BU. Library holdings include federal and state primary legal materials; major serials, treatises, and other secondary materials; legal documents and reports; and international law materials.</div> <div class="content-block image"><a href="https://www.bu.edu/library/gotlieb-center/" target="_blank" rel="noopener noreferrer"><img class="alignleft wp-image-25952 size-thumbnail" alt="hgarc_small" src="/library/files/2012/04/hgarc_small-150x115.jpg" height="115" width="150" /></a></p> <h2><a href="https://www.bu.edu/library/gotlieb-center/">Howard Gotlieb Archival Research Center</a></h2> <p>The Howard Gotlieb Archival Research Center is a major resource for researchers, biographers, historians, producers, and students. The collections vary in size and content and contain a variety of manuscripts, drafts, galleys, notes, notebooks, journals, diaries, scrapbooks, reviews, photographs, memorabilia, and personal and professional correspondence.</div> <p><a href="https://www.bu.edu/library/mugar-memorial/research/krasker-filmvideo/"><img class="alignleft wp-image-103663 size-full" alt="" src="/library/files/2019/06/krasker_locations2.png" height="115" width="150" /></a><div class="content-block image"></p> <h2><a href="https://www.bu.edu/library/mugar-memorial/research/krasker-filmvideo/">Krasker Film/Video</a></h2> <p>Located in the basement of Mugar, <span>Krasker Film/Video Services provides instructional media support to university classes. There are also viewing stations for students, faculty, and staff to watch videos in the collection.</span></p> <p></div></p> <div class="content-block image"><a title="Mugar Memorial Library" href="https://www.bu.edu/library/mugar-memorial/"><img class="alignleft size-thumbnail wp-image-25954" alt="mugar_small" src="/library/files/2012/04/mugar_small-150x115.jpg" height="115" width="150" /></a></p> <h2><a href="https://www.bu.edu/library/mugar-memorial/">Mugar Memorial Library</a></h2> <p>As BU’s main humanities and social sciences library, Mugar Memorial Library provides resources for study, teaching, and research, and houses the Martin Luther King Reading Room, the PAL Study Lounge, and the Common@Mugar.</div> <div class="content-block image"><a title="Music Library" href="https://www.bu.edu/library/music/"><img class="alignleft size-thumbnail wp-image-29514" alt="banner_music_small" src="/library/files/2012/05/banner_music_small-150x115.jpg" height="115" width="150" /></a></p> <h2><a href="https://www.bu.edu/library/music/">Music Library</a></h2> <p>The Music Library, located on the second floor of Mugar Memorial Library, supports the music faculty and students at BU, but its collections are open to area and visiting researchers for on-site use.</div> <div class="content-block image"><a title="Pardee Management Library" href="https://www.bu.edu/library/management/"><img class="alignleft size-thumbnail wp-image-29512" alt="Pardee Management Library" src="/library/files/2012/05/banner_smg_small-150x115.jpg" height="115" width="150" /></a></p> <h2><a href="https://www.bu.edu/library/management/">Frederick S. Pardee Management Library</a></h2> <p>The Frederick S. Pardee Management Library provides resources and services supporting the faculty and students of BU’s Questrom School of Business. Our facility is a study haven as well as home to an extensive collection of leading information resources of business, management, and related subjects.</div> <div class="content-block image"><a title="Pickering Educational Resources Library (PERL)" href="https://www.bu.edu/library/pickering-educational/"><img class="alignleft size-thumbnail wp-image-27128" alt="pickering_small" src="/library/files/2012/04/pickering_small-150x115.jpg" height="115" width="150" /></a></p> <h2><a href="https://www.bu.edu/library/pickering-educational/">Pickering Educational Resources Library</a></h2> <p>The Pickering Educational Resources Library supports the Boston University Wheelock College of Education &amp; Human Development&#8217;s faculty and students through research services and tools and an extensive (and growing) collection of print and electronic resources.</div> <div class="content-block image"><a href="https://www.bu.edu/sthlibrary/" target="_blank" rel="noopener noreferrer"><img class="alignleft wp-image-25947 size-thumbnail" alt="banner_sth_small" src="/library/files/2012/04/banner_sth_small-150x115.jpg" height="115" width="150" /></a></p> <h2><a href="https://www.bu.edu/sthlibrary/">School of Theology Library</a></h2> <p>The Theology Library encourages the pursuit of personal and academic research in all stages of life. The library maintains an open-doors policy to the public for in-house consultation of all its materials, without exception.</div> <div class="content-block image"><a title="Science &amp; Engineering Library (SEL)" href="https://www.bu.edu/library/sel/"><img class="alignleft size-full wp-image-39093" alt="Science &amp;amp; Engineering Library (SEL)" src="/library/files/2011/07/sel_sm.jpg" height="115" width="150" /></a></p> <h2><a href="https://www.bu.edu/library/sel/">Science &amp; Engineering Library</a></h2> <p>The Science &amp; Engineering Library supports the Astronomy, Biology, Chemistry, Computer Science, Earth &amp; Environment, Mathematics &amp; Statistics, and Physics Departments, the College of Engineering, and associated research labs and centers.</div> <div class="content-block image"><a title="Stone Science Library" href="https://www.bu.edu/library/stone-science/"><img class="alignleft size-thumbnail wp-image-26718" alt="stone_small" src="/library/files/2012/04/stone_small-150x115.jpg" height="115" width="150" /></a></p> <h2><a href="https://www.bu.edu/library/stone-science/">Stone Science Library</a></h2> <p>The Stone Science Library brings together books, journals, atlases, maps, photographs, and more in support of the Archaeology, Geography, and Earth &amp; Environment Departments, as well as the Center for Archaeological Studies, Center for Energy &amp; Environmental Studies, and the Center for Remote Sensing.</div> <div class="content-block image"><a title="Additional Libraries" href="https://www.bu.edu/library/about/additional-libraries/"><img class="alignleft size-thumbnail" alt="additional_libraries" src="/library/files/2018/12/other-thumbnail.jpg" height="115" width="150" /></a></p> <h2><a href="https://www.bu.edu/library/about/additional-libraries/">Additional Libraries</a></h2> <p>There are additional libraries around campus that provide collection access to all BU students, faculty, and staff. Many are based within departments around the university so please visit their websites for more information.</div> </div> </div><!-- /.main --> <div class="sidebar right"> <div class="widget widget_bu_pages" id="bu_pages-4"><div id="contentnav"><h2 class="widgettitle"><a class="content_nav_header" href="https://www.bu.edu/library/about/">About</a></h2><ul id="contentnavlist"> <li class="page_item page-item-22908 first_item"> <a class="level_1" href="https://www.bu.edu/library/about/hours/">Hours</a> </li> <li class="page_item page-item-110690"> <a class="level_1" href="https://www.bu.edu/library/about/events/">Library Events &amp; Workshops</a> </li> <li class="page_item page-item-7020 has_children"> <a class="level_1" href="https://www.bu.edu/library/about/who-we-are/">Who We Are</a> </li> <li class="page_item page-item-22923 has_children"> <a class="level_1" href="https://www.bu.edu/library/about/maps-floorplans/">Maps &amp; Floor Plans</a> </li> <li class="page_item page-item-100984 has_children"> <a class="level_1" href="https://www.bu.edu/library/about/study-spaces/">Study and Work Spaces</a> </li> <li class="page_item page-item-105566"> <a class="level_1" href="https://www.bu.edu/policies/libraries-code-of-conduct/">Code of Conduct</a> </li> <li class="page_item page-item-11"> <a class="level_1" href="https://www.bu.edu/library/about/message-from-university-librarian/">Message from the University Librarian</a> </li> <li class="page_item page-item-103924"> <a class="level_1" href="https://www.bu.edu/library/about/careers/">Careers</a> </li> <li class="page_item page-item-107588 has_children"> <a class="level_1" href="https://www.bu.edu/library/about/student-employment-program/">Student Employment</a> </li> <li class="page_item page-item-25473"> <a class="level_1" href="https://www.bu.edu/library/about/additional-libraries/">Additional Libraries</a> </li> <li class="page_item page-item-28175"> <a class="level_1" href="https://www.bu.edu/library/about/news/">News</a> </li> <li class="page_item page-item-109856 has_children last_item"> <a class="level_1" href="https://www.bu.edu/library/about/user-experience/">User Experience</a> </li> </ul> </div></div><div class="widget widget-bu-posts" id="bu-posts-3"><h2 class="widgettitle"><a href="/library/about/news">Library News</a></h2><ul class="widgetnav excerpts category_0"><li class="excerpt"><strong>Apr 10, 2025</strong> <a href="https://www.bu.edu/library/news/2025/04/10/crafternoon-bu-libraries-krobo-beads-edition/">Crafternoon @ BU Libraries: Krobo beads edition</a> &nbsp; Crafternoon @ BU Libraries: Krobo beads edition! Monday, April 14, 4-6 pm Mugar Memorial......</li> <li class="excerpt"><strong>Apr 4, 2025</strong> <a href="https://www.bu.edu/library/news/2025/04/04/enhance-your-library-research-with-ai-last-sessions-of-the-semester/">Enhance Your Library Research with AI – Last Sessions of the Semester!</a> Join us for the final two live Zoom sessions of the semester—offered......</li> <li class="excerpt"><strong>Mar 21, 2025</strong> <a href="https://www.bu.edu/library/news/2025/03/21/enhance-your-library-research-with-ai-upcoming-sessions/">Enhance Your Library Research with AI: Upcoming Sessions</a> Join us for one of our upcoming Zoom sessions to discover how......</li> </ul> </div> </div><!-- end .sidebar right --></div><!-- /.wrapper --> </div><!--/#content --> </div><!--/.wrapper --> <div id="footer"> <div class="container"> <div id="footer-logo-container"> <p><a href="//www.bu.edu" rel="external" id="logo">Boston University</a></p> </div><!--/#footer-logo-container--> <div id="footer-content"> <h2>Libraries <span>&amp;</span> Archives</h2> <div id="footer-links"> <div class="menu-footer-col-1-container"><ul id="footer-col1" class="menu"><li id="menu-item-11131" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-11131"><a href="https://www.bu.edu/library/african-studies/">African Studies Library</a></li> <li id="menu-item-11143" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-11143"><a href="https://www.bumc.bu.edu/medlib/">Alumni Medical Library</a></li> <li id="menu-item-25477" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-25477"><a href="https://www.bu.edu/library/astronomy/">Astronomy Library</a></li> <li id="menu-item-25478" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-25478"><a href="https://www.bu.edu/lawlibrary/">Fineman &#038; Pappas Law Libraries</a></li> </ul></div> <div class="menu-footer-col-2-container"><ul id="footer-col2" class="menu"><li id="menu-item-25481" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-25481"><a href="https://www.bu.edu/library/gotlieb-center">Howard Gotlieb Archival Research Center</a></li> <li id="menu-item-25479" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-25479"><a href="https://www.bu.edu/library/mugar-memorial/">Mugar Memorial Library</a></li> <li id="menu-item-25480" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-25480"><a href="https://www.bu.edu/library/music/">Music Library</a></li> <li id="menu-item-11451" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-11451"><a href="https://www.bu.edu/library/management/">Pardee Management Library </a></li> </ul></div> <div class="menu-footer-col-3-container"><ul id="footer-col3" class="menu"><li id="menu-item-37872" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-37872"><a href="https://www.bu.edu/library/pickering-educational/">Pickering Educational Resources Library</a></li> <li id="menu-item-25483" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-25483"><a href="https://www.bu.edu/library/sel/">Science &#038; Engineering Library</a></li> <li id="menu-item-25484" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-25484"><a href="https://www.bu.edu/library/stone-science/">Stone Science Library</a></li> <li id="menu-item-11486" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-11486"><a href="https://www.bu.edu/sthlibrary/">Theology Library</a></li> <li id="menu-item-11489" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-11489"><a href="https://www.bu.edu/library/about/additional-libraries/">Additional BU Libraries</a></li> </ul></div> </div><!--/#footer-links--> <!-- before web components --> <div id="footer-info"> <p>Boston University Libraries, 771 Commonwealth Avenue, Boston, MA 02215 | Reference Desk: 617-353-2700</p> </div><!--/#footer-info --> <!-- loading the web component --> <script> window.addEventListener('DOMContentLoaded', function() { loadWebComponentInto("bulib-footer", [ document.getElementById("footer-logo-container"), document.querySelector("#footer-content > h2"), document.getElementById("footer-info"), document.getElementById("footer-links")] ); document.querySelector("bulib-footer").curr_url = window.location.href; }); </script> <!-- after web components --> <style> /* hide BU Logo and 'Libraries & Archives' heading */ /* #footer-logo-container, #footer-content > h2 { display: none; } */ /* prevent overflow of footer width to 900px at small widths */ #footer > div.container { width: auto; } #footer-content { float: inherit; } bulib-footer .footer-wrapper { width: inherit; } /* -- firefox -- */ h3.style-scope.bulib-footer { color: white; } li.style-scope.bulib-footer { background-image: none; color: white; margin: unset; } </style> <bulib-footer></bulib-footer> </div><!--/#footer-content--> </div><!--/.container --> </div><!--/#footer --><script type="text/javascript"> (function($) { var ajaxurl = "https://www.bu.edu/library/wp-admin/admin-ajax.php"; if (jQuery('.sortable').length) { var data = { action: 'sortable_scripts' }; $.post(ajaxurl, data, function(scripts) { var s = document.getElementsByTagName('script')[0]; $(s).before(scripts); }); } })(jQuery); </script> <script type='text/javascript' src='https://www.bu.edu/library/wp-content/themes/bu-library/js/bu-library.js?ver=5.4.2'></script> <script type='text/javascript' src='https://www.bu.edu/library/wp-content/themes/bu-library/js/search_tracking.js?ver=5.4.2'></script> <script type='text/javascript' src='https://www.bu.edu/library/wp-includes/js/wp-embed.min.js?ver=5.4.2'></script> <script src="https://askalibrarian.bu.edu/load_chat.php?hash=6efed086d07a86db2473c5cbc320eee2"></script><script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"b19c58809e","applicationID":"7212547","transactionName":"YV1SNkUDWEQDBRdQDFgXcQFDC1lZTRYCXgY=","queueTime":0,"applicationTime":321,"atts":"TRpFQA0ZSxtAB0EDGEtF","errorBeacon":"bam.nr-data.net","agent":""}</script></body> </html><!-- Performance optimized by Redis Object Cache. Learn more: https://wprediscache.com Retrieved 2747 objects (293 KB) from Redis using PhpRedis (v5.3.7). -->

Pages: 1 2 3 4 5 6 7 8 9 10