CINXE.COM
Dean's Annual Update - 2021 | School of Computing and Information | University of Pittsburgh
<!DOCTYPE html> <html lang="en" dir="ltr" prefix="content: http://purl.org/rss/1.0/modules/content/ dc: http://purl.org/dc/terms/ foaf: http://xmlns.com/foaf/0.1/ rdfs: http://www.w3.org/2000/01/rdf-schema# sioc: http://rdfs.org/sioc/ns# sioct: http://rdfs.org/sioc/types# skos: http://www.w3.org/2004/02/skos/core# xsd: http://www.w3.org/2001/XMLSchema#"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="IE=edge" /><script type="text/javascript">(window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:["bam.nr-data.net"]},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"1120106159",accountID:"3604677",trustKey:"66686",xpid:"VwAHVVBUDxAJUlRTAgcFVlc=",licenseKey:"NRJS-b367e9f72e0ce8cc173",applicationID:"965156203"};;/*! For license information please see nr-loader-spa-1.274.0.min.js.LICENSE.txt */ (()=>{var e,t,r={8122:(e,t,r)=>{"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555:(e,t,r)=>{"use strict";r.d(t,{Vp:()=>c,fn:()=>s,x1:()=>u});var n=r(384),i=r(8122);const o={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){try{const t=c(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}function c(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function u(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.info=a[e])}},9417:(e,t,r)=>{"use strict";r.d(t,{D0:()=>h,gD:()=>g,xN:()=>p});var n=r(993);const i=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var o=r(2614),a=r(944),s=r(384),c=r(8122);const u="[data-nr-mask]",d=()=>{const e={mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,harvestTimeSeconds:10,autoStart:!0},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},feature_flags:[],generic_events:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},harvest:{tooManyRequestsDelay:60},jserrors:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},logging:{enabled:!0,harvestTimeSeconds:10,autoStart:!0,level:n.p_.INFO},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:o.wk,inactiveMs:o.BB},session_replay:{autoStart:!0,enabled:!1,harvestTimeSeconds:60,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){i(t)?e.mask_selector="".concat(t,",").concat(u):""===t||null===t?e.mask_selector=u:(0,a.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){i(t)?e.block_selector+=",".concat(t):""!==t&&(0,a.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,a.R)(7,t)}},session_trace:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},soft_navigations:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},spa:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},ssl:void 0,user_actions:{enabled:!0}}},l={},f="All configuration objects require an agent identifier!";function h(e){if(!e)throw new Error(f);if(!l[e])throw new Error("Configuration for ".concat(e," was never set"));return l[e]}function p(e,t){if(!e)throw new Error(f);l[e]=(0,c.a)(t,d());const r=(0,s.nY)(e);r&&(r.init=l[e])}function g(e,t){if(!e)throw new Error(f);var r=h(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}},5603:(e,t,r)=>{"use strict";r.d(t,{a:()=>c,o:()=>s});var n=r(384),i=r(8122);const o={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},a={};function s(e){if(!e)throw new Error("All loader-config objects require an agent identifier!");if(!a[e])throw new Error("LoaderConfig for ".concat(e," was never set"));return a[e]}function c(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.loader_config=a[e])}},3371:(e,t,r)=>{"use strict";r.d(t,{V:()=>f,f:()=>l});var n=r(8122),i=r(384),o=r(6154),a=r(9324);let s=0;const c={buildEnv:a.F3,distMethod:a.Xs,version:a.xv,originTime:o.WN},u={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,timeKeeper:void 0,obfuscator:void 0},d={};function l(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!d[e])throw new Error("Runtime for ".concat(e," was never set"));return d[e]}function f(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");d[e]={...(0,n.a)(t,u),...c},Object.hasOwnProperty.call(d[e],"harvestCount")||Object.defineProperty(d[e],"harvestCount",{get:()=>++s});const r=(0,i.nY)(e);r&&(r.runtime=d[e])}},9324:(e,t,r)=>{"use strict";r.d(t,{F3:()=>i,Xs:()=>o,Yq:()=>a,xv:()=>n});const n="1.274.0",i="PROD",o="CDN",a="^2.0.0-alpha.17"},6154:(e,t,r)=>{"use strict";r.d(t,{A4:()=>s,OF:()=>d,RI:()=>i,WN:()=>h,bv:()=>o,gm:()=>a,lR:()=>f,m:()=>u,mw:()=>c,sb:()=>l});var n=r(1863);const i="undefined"!=typeof window&&!!window.document,o="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),s="complete"===a?.document?.readyState,c=Boolean("hidden"===a?.document?.visibilityState),u=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),l=d&&"undefined"==typeof SharedWorker,f=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),h=Date.now()-(0,n.t)()},7295:(e,t,r)=>{"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>o});var n=[];function i(e){if(!e||o(e))return!1;if(0===n.length)return!0;for(var t=0;t<n.length;t++){var r=n[t];if("*"===r.hostname)return!1;if(s(r.hostname,e.hostname)&&c(r.pathname,e.pathname))return!1}return!0}function o(e){return void 0===e.hostname}function a(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let o,a;i>0?(o=r.substring(0,i),a=r.substring(i)):(o=r,a="");let[s]=o.split(":");n.push({hostname:s,pathname:a})}}function s(e,t){return!(e.length>t.length)&&t.indexOf(e)===t.length-e.length}function c(e,t){return 0===e.indexOf("/")&&(e=e.substring(1)),0===t.indexOf("/")&&(t=t.substring(1)),""===e||e===t}},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>l,x3:()=>u});var n=r(7836),i=r(3606),o=r(860),a=r(2646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),h(e,t,!1),s[e].size&&f(e))}function d(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function l(e="",t="feature",r=!1){if(d(e),!e||!s[e].get(t)||r)return h(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((([e,t])=>t.staged))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((([t])=>{s[e].delete(t),h(e,t)})))}function h(e,t,r=!0){const o=e?n.ee.get(e):n.ee,s=i.i.handlers;if(!o.aborted&&o.backlog&&s){if(r){const e=o.backlog[t],r=s[t];if(r){for(let t=0;e&&t<e.length;++t)p(e[t],r);Object.entries(r).forEach((([e,t])=>{Object.values(t||{}).forEach((t=>{t[0]?.on&&t[0]?.context()instanceof a.y&&t[0].on(e,t[1])}))}))}}o.isolatedBacklog||delete s[t],o.backlog[t]=null,o.emit("drain-"+t,[])}}function p(e,t){var r=e[1];Object.values(t[r]||{}).forEach((t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],o=e[2];n.apply(i,o)}}))}},7836:(e,t,r)=>{"use strict";r.d(t,{P:()=>c,ee:()=>u});var n=r(384),i=r(8990),o=r(3371),a=r(2646),s=r(5607);const c="nr@context:".concat(s.W),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&(0,o.f)(r).isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=h(n),c=g(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=v()[s[e]];p&&p.push([f,e,r,a]);return a},get:m,listeners:g,context:h,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach((([e,n])=>{s[n]=t,t in r||(r[t]=[])}))},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach((e=>{delete f.backlog[e]}))},isBuffering:function(e){return!!v()[s[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function h(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return d[t]=d[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=u)},2646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(9908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,ZF:()=>c,bz:()=>a,el:()=>u});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}function c(){return s(16)}function u(){return s(32)}},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},7485:(e,t,r)=>{"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},944:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.debug&&console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t)}r.d(t,{R:()=>n})},5284:(e,t,r)=>{"use strict";r.d(t,{t:()=>c,B:()=>s});var n=r(7836),i=r(6154);const o="newrelic";const a=new Set,s={};function c(e,t){const r=n.ee.get(t);s[t]??={},e&&"object"==typeof e&&(a.has(t)||(r.emit("rumresp",[e]),s[t]=e,a.add(t),function(e={}){try{i.gm.dispatchEvent(new CustomEvent(o,{detail:e}))}catch(e){}}({loaded:!0})))}},8990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout((()=>{i=clearTimeout(i)}),t)),n||(clearTimeout(i),i=setTimeout((()=>{e.apply(this,r)}),t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},3304:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(7836);const i=()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}};function o(e){try{return JSON.stringify(e,i())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},5289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,sB:()=>a});var n=r(3878);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.sp)("load",e,t)}function a(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}},384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>o,US:()=>d,Zm:()=>a,bQ:()=>c,dV:()=>s,nY:()=>u,pV:()=>l});var n=r(6154),i=r(1863);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function s(){let e=a();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},2843:(e,t,r)=>{"use strict";r.d(t,{u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},8139:(e,t,r)=>{"use strict";r.d(t,{u:()=>f});var n=r(7836),i=r(3434),o=r(8990),a=r(6154);const s={},c=a.gm.XMLHttpRequest,u="addEventListener",d="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e){var t=function(e){return(e||n.ee).get("events")}(e);if(s[t.debugId]++)return t;s[t.debugId]=1;var r=(0,i.YM)(t,!0);function f(e){r.inPlace(e,[u,d],"-",p)}function p(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,f),h(a.gm,f),h(c.prototype,f)),t.on(u+"-start",(function(e,t){var n=e[1];if(null!==n&&("function"==typeof n||"object"==typeof n)){var i=(0,o.I)(n,l,(function(){var e={object:function(){if("function"!=typeof n.handleEvent)return;return n.handleEvent.apply(n,arguments)},function:n}[typeof n];return e?r(e,"fn-",null,e.name||"anonymous"):n}));this.wrapped=e[1]=i}})),t.on(d+"-start",(function(e){e[1]=this.wrapped||e[1]})),t}function h(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,u);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434:(e,t,r)=>{"use strict";r.d(t,{Jt:()=>o,YM:()=>c});var n=r(7836),i=r(5607);const o="nr@original:".concat(i.W);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach((function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})})),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}},9300:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.ajax},3333:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,Zp:()=>i,mq:()=>s,nf:()=>a,qN:()=>o});const n=r(860).K7.genericEvents,i=["auxclick","click","copy","keydown","paste","scrollend"],o=["focus","blur"],a=4,s=1e3},6774:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.jserrors},993:(e,t,r)=>{"use strict";r.d(t,{ET:()=>o,TZ:()=>a,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o="log",a=n.K7.logging},3785:(e,t,r)=>{"use strict";r.d(t,{R:()=>c,b:()=>u});var n=r(9908),i=r(1863),o=r(860),a=r(3969),s=r(993);function c(e,t,r={},c=s.p_.INFO){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,o.K7.metrics,e),(0,n.p)(s.ET,[(0,i.t)(),t,r,c],void 0,o.K7.logging,e)}function u(e){return"string"==typeof e&&Object.values(s.p_).some((t=>t===e.toUpperCase().trim()))}},3969:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,XG:()=>s,rs:()=>i,xV:()=>a,z_:()=>o});const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},6344:(e,t,r)=>{"use strict";r.d(t,{BB:()=>d,G4:()=>o,Qb:()=>l,TZ:()=>i,Ug:()=>a,_s:()=>s,bc:()=>u,yP:()=>c});var n=r(2614);const i=r(860).K7.sessionReplay,o={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"},a=.12,s={DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},c={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0},u={RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},d=5e3,l={API:"api"}},5270:(e,t,r)=>{"use strict";r.d(t,{Aw:()=>c,CT:()=>u,SR:()=>s});var n=r(384),i=r(9417),o=r(7767),a=r(6154);function s(e){return!!(0,n.dV)().o.MO&&(0,o.V)(e)&&!0===(0,i.gD)(e,"session_trace.enabled")}function c(e){return!0===(0,i.gD)(e,"session_replay.preload")&&s(e)}function u(e,t){const r=t.correctAbsoluteTimestamp(e);return{originalTimestamp:e,correctedTimestamp:r,timestampDiff:e-r,originTime:a.WN,correctedOriginTime:t.correctedOriginTime,originTimeDiff:Math.floor(a.WN-t.correctedOriginTime)}}},3738:(e,t,r)=>{"use strict";r.d(t,{He:()=>i,Kp:()=>s,Lc:()=>u,Rz:()=>d,TZ:()=>n,bD:()=>o,d3:()=>a,jx:()=>l,uP:()=>c});const n=r(860).K7.sessionTrace,i="bstResource",o="resource",a="-start",s="-end",c="fn"+a,u="fn"+s,d="pushState",l=1e3},3962:(e,t,r)=>{"use strict";r.d(t,{AM:()=>o,O2:()=>s,Qu:()=>c,TZ:()=>a,ih:()=>u,tC:()=>i});var n=r(860);const i=["click","keydown","submit"],o="api",a=n.K7.softNav,s={INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},c={INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},u={IP:"in progress",FIN:"finished",CAN:"cancelled"}},7378:(e,t,r)=>{"use strict";r.d(t,{$p:()=>x,BR:()=>b,Kp:()=>R,L3:()=>y,Lc:()=>c,NC:()=>o,SG:()=>d,TZ:()=>i,U6:()=>p,UT:()=>m,d3:()=>w,dT:()=>f,e5:()=>A,gx:()=>v,l9:()=>l,oW:()=>h,op:()=>g,rw:()=>u,tH:()=>E,uP:()=>s,wW:()=>T,xq:()=>a});var n=r(384);const i=r(860).K7.spa,o=["click","submit","keypress","keydown","keyup","change"],a=999,s="fn-start",c="fn-end",u="cb-start",d="api-ixn-",l="remaining",f="interaction",h="spaNode",p="jsonpNode",g="fetch-start",m="fetch-done",v="fetch-body-",b="jsonp-end",y=(0,n.dV)().o.ST,w="-start",R="-end",x="-body",T="cb"+R,A="jsTime",E="fetch"},4234:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(7836),i=r(1687);class o{constructor(e,t){this.agentIdentifier=e,this.ee=n.ee.get(e),this.featureName=t,this.blocked=!1}deregisterDrain(){(0,i.x3)(this.agentIdentifier,this.featureName)}}},7767:(e,t,r)=>{"use strict";r.d(t,{V:()=>o});var n=r(9417),i=r(6154);const o=e=>i.RI&&!0===(0,n.gD)(e,"privacy.cookies_enabled")},425:(e,t,r)=>{"use strict";r.d(t,{j:()=>j});var n=r(860),i=r(2555),o=r(3371),a=r(9908),s=r(7836),c=r(1687),u=r(5289),d=r(6154),l=r(944),f=r(3969),h=r(384),p=r(6344);const g=["setErrorHandler","finished","addToTrace","addRelease","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",p.G4.RECORD,p.G4.PAUSE,"log","wrapLogger"],m=["setErrorHandler","finished","addToTrace","addRelease"];var v=r(1863),b=r(2614),y=r(993),w=r(3785),R=r(2646),x=r(3434);function T(e,t,r,n){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const i=function(e){return(e||s.ee).get("logger")}(e),o=(0,x.YM)(i),a=new R.y(s.P);return a.level=n.level,a.customAttributes=n.customAttributes,o.inPlace(t,[r],"wrap-logger-",a),i}function A(){const e=(0,h.pV)();g.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.api?e.exposed&&e.api[t]&&n.push(e.api[t](...r)):(0,l.R)(38,t)})),n.length>1?n:n[0]}(t,...r)}))}const E={};var S=r(9417),N=r(5603),O=r(5284);const _=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let I=!1;function j(e,t={},g,R){let{init:x,info:j,loader_config:P,runtime:C={},exposed:k=!0}=t;C.loaderType=g;const L=(0,h.pV)();j||(x=L.init,j=L.info,P=L.loader_config),(0,S.xN)(e.agentIdentifier,x||{}),(0,N.a)(e.agentIdentifier,P||{}),j.jsAttributes??={},d.bv&&(j.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,j);const H=(0,S.D0)(e.agentIdentifier),D=[j.beacon,j.errorBeacon];I||(H.proxy.assets&&(_(H.proxy.assets),D.push(H.proxy.assets)),H.proxy.beacon&&D.push(H.proxy.beacon),A(),(0,h.US)("activatedFeatures",O.B),e.runSoftNavOverSpa&&=!0===H.soft_navigations.enabled&&H.feature_flags.includes("soft_nav")),C.denyList=[...H.ajax.deny_list||[],...H.ajax.block_internal?D:[]],C.ptid=e.agentIdentifier,(0,o.V)(e.agentIdentifier,C),e.ee=s.ee.get(e.agentIdentifier),void 0===e.api&&(e.api=function(e,t,h=!1){t||(0,c.Ak)(e,"api");const g={};var R=s.ee.get(e),x=R.get("tracer");E[e]=b.g.OFF,R.on(p.G4.REPLAY_RUNNING,(t=>{E[e]=t}));var A="api-",S=A+"ixn-";function N(t,r,n,o){const a=(0,i.Vp)(e);return null===r?delete a.jsAttributes[t]:(0,i.x1)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),I(A,n,!0,o||null===r?"session":void 0)(t,r)}function O(){}g.log=function(e,{customAttributes:t={},level:r=y.p_.INFO}={}){(0,a.p)(f.xV,["API/log/called"],void 0,n.K7.metrics,R),(0,w.R)(R,e,t,r)},g.wrapLogger=(e,t,{customAttributes:r={},level:i=y.p_.INFO}={})=>{(0,a.p)(f.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,R),T(R,e,t,{customAttributes:r,level:i})},m.forEach((e=>{g[e]=I(A,e,!0,"api")})),g.addPageAction=I(A,"addPageAction",!0,n.K7.genericEvents),g.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,o.f)(e).customTransaction=(r||"http://custom.transaction")+t,I(A,"setPageViewName",!0)()},g.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return N(e,t,"setCustomAttribute",r);(0,l.R)(40,typeof t)}else(0,l.R)(39,typeof e)},g.setUserId=function(e){if("string"==typeof e||null===e)return N("enduser.id",e,"setUserId",!0);(0,l.R)(41,typeof e)},g.setApplicationVersion=function(e){if("string"==typeof e||null===e)return N("application.version",e,"setApplicationVersion",!1);(0,l.R)(42,typeof e)},g.start=()=>{try{(0,a.p)(f.xV,["API/start/called"],void 0,n.K7.metrics,R),R.emit("manual-start-all")}catch(e){(0,l.R)(23,e)}},g[p.G4.RECORD]=function(){(0,a.p)(f.xV,["API/recordReplay/called"],void 0,n.K7.metrics,R),(0,a.p)(p.G4.RECORD,[],void 0,n.K7.sessionReplay,R)},g[p.G4.PAUSE]=function(){(0,a.p)(f.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,R),(0,a.p)(p.G4.PAUSE,[],void 0,n.K7.sessionReplay,R)},g.interaction=function(e){return(new O).get("object"==typeof e?e:{})};const _=O.prototype={createTracer:function(e,t){var r={},i=this,o="function"==typeof t;return(0,a.p)(f.xV,["API/createTracer/called"],void 0,n.K7.metrics,R),h||(0,a.p)(S+"tracer",[(0,v.t)(),e,r],i,n.K7.spa,R),function(){if(x.emit((o?"":"no-")+"fn-start",[(0,v.t)(),i,o],r),o)try{return t.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw x.emit("fn-err",[arguments,this,t],r),t}finally{x.emit("fn-end",[(0,v.t)()],r)}}}};function I(e,t,r,i){return function(){return(0,a.p)(f.xV,["API/"+t+"/called"],void 0,n.K7.metrics,R),i&&(0,a.p)(e+t,[(0,v.t)(),...arguments],r?null:this,i,R),r?void 0:this}}function j(){r.e(478).then(r.bind(r,8778)).then((({setAPI:t})=>{t(e),(0,c.Ze)(e,"api")})).catch((e=>{(0,l.R)(27,e),R.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{_[e]=I(S,e,void 0,h?n.K7.softNav:n.K7.spa)})),g.setCurrentRouteName=h?I(S,"routeName",void 0,n.K7.softNav):I(A,"routeName",!0,n.K7.spa),g.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,a.p)(f.xV,["API/noticeError/called"],void 0,n.K7.metrics,R),(0,a.p)("err",[t,(0,v.t)(),!1,r,!!E[e]],void 0,n.K7.jserrors,R)},d.RI?(0,u.GG)((()=>j()),!0):j(),g}(e.agentIdentifier,R,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=k),I=!0}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>o,K7:()=>n,P3:()=>i});const n={ajax:"ajax",genericEvents:"generic_events",jserrors:"jserrors",logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},i={[n.pageViewEvent]:1,[n.pageViewTiming]:2,[n.metrics]:3,[n.jserrors]:4,[n.spa]:5,[n.ajax]:6,[n.sessionTrace]:7,[n.softNav]:8,[n.sessionReplay]:9,[n.logging]:10,[n.genericEvents]:11},o={[n.pageViewTiming]:"events",[n.ajax]:"events",[n.spa]:"events",[n.softNav]:"events",[n.metrics]:"jserrors",[n.jserrors]:"jserrors",[n.sessionTrace]:"browser/blobs",[n.sessionReplay]:"browser/blobs",[n.logging]:"browser/logs",[n.genericEvents]:"ins"}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>({212:"nr-spa-compressor",249:"nr-spa-recorder",478:"nr-spa"}[e]+"-1.274.0.min.js"),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.274.0.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d<u.length;d++){var l=u[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+o){s=l;break}}if(!s){c=!0;var f={478:"sha512-1vUqEfJPB8Pihje9mv5CfYgkitO1FWcS+UQb84DbXqP8oYctRv4/lzl/MzNLPlRhcY1WVDBGL20I8vm6s2VV7g==",249:"sha512-Y/BeZAh6VSTmUtUNmS5XdyKxL92s30Fyyj8xVW76HSPxcKItL4+x2+kGMZc8pMJnUpZDz1L4eftZQAJh3D8NnA==",212:"sha512-Gn2tQ3qog5Yhrx/gRutkSTYPp+7nkKFt4/mIXg99LxcNpMDAYJZDBYmAACdoHNM86+iq1F3cBcQotFNzjIX8bw=="};(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),f[a]&&(s.integrity=f[a])}e[r]=[n];var h=(t,n)=>{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(h.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=h.bind(null,s.onerror),s.onload=h.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={38:0,788:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.274.0.PROD"]=self["webpackChunk:NRBA-1.274.0.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8374);var e=i(944),t=i(6344),r=i(9566);class n{agentIdentifier;constructor(e=(0,r.LA)(16)){this.agentIdentifier=e}#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}addPageAction(e,t){return this.#e("addPageAction",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}addRelease(e,t){return this.#e("addRelease",e,t)}log(e,t){return this.#e("log",e,t)}}class o extends n{#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}start(){return this.#e("start")}finished(e){return this.#e("finished",e)}recordReplay(){return this.#e(t.G4.RECORD)}pauseReplay(){return this.#e(t.G4.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}wrapLogger(e,t,r){return this.#e("wrapLogger",e,t,r)}}var a=i(860),s=i(9417);const c=Object.values(a.K7);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.gD)(t,"".concat(e,".enabled"))}(r,e)})),t}var d=i(425);var l=i(1687),f=i(4234),h=i(5289),p=i(6154),g=i(5270),m=i(7767),v=i(6389);class b extends f.W{constructor(e,t,r=!0){super(e.agentIdentifier,t),this.auto=r,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===e.init[this.featureName].autoStart&&(this.auto=!1),this.auto?(0,l.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,v.J)((()=>{(0,l.Ak)(e.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator(e)})))}importAggregator(t,r={}){if(this.featAggregate||!this.auto)return;let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let o;try{if((0,m.V)(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(478).then(i.bind(i,6526));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(t.sharedAggregator)await t.sharedAggregator;else{t.sharedAggregator=i.e(478).then(i.bind(i,9337));const{EventAggregator:e}=await t.sharedAggregator;t.sharedAggregator=new e}if(!this.#t(this.featureName,o))return(0,l.Ze)(this.agentIdentifier,this.featureName),void n(!1);const{lazyFeatureLoader:e}=await i.e(478).then(i.bind(i,6103)),{Aggregate:a}=await e(this.featureName,"aggregate");this.featAggregate=new a(t,r),n(!0)}catch(t){(0,e.R)(34,t),this.abortHandler?.(),(0,l.Ze)(this.agentIdentifier,this.featureName,!0),n(!1),this.ee&&this.ee.abort()}};p.RI?(0,h.GG)((()=>o()),!0):o()}#t(e,t){switch(e){case a.K7.sessionReplay:return(0,g.SR)(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var y=i(6630);class w extends b{static featureName=y.T;constructor(e,t=!0){super(e,y.T,t),this.importAggregator(e)}}var R=i(384);var x=i(9908),T=i(2843),A=i(3878),E=i(782),S=i(1863);class N extends b{static featureName=E.T;constructor(e,t=!0){super(e,E.T,t),p.RI&&((0,T.u)((()=>(0,x.p)("docHidden",[(0,S.t)()],void 0,E.T,this.ee)),!0),(0,A.sp)("pagehide",(()=>(0,x.p)("winPagehide",[(0,S.t)()],void 0,E.T,this.ee))),this.importAggregator(e))}}var O=i(3969);class _ extends b{static featureName=O.TZ;constructor(e,t=!0){super(e,O.TZ,t),this.importAggregator(e)}}var I=i(6774),j=i(3304);class P{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,j.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function C(e){return H(e)?e:new P(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic)}function k(e){const t="Unhandled Promise Rejection";if(!e?.reason)return;if(H(e.reason))try{return e.reason.message=t+": "+e.reason.message,C(e.reason)}catch(t){return C(e.reason)}const r=C(e.reason);return r.message=t+": "+r?.message,r}function L(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new P(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic);return t.name=SyntaxError.name,t}return H(e.error)?e.error:C(e)}function H(e){return e instanceof Error&&!!e.stack}class D extends b{static featureName=I.T;#r=!1;constructor(e,r=!0){super(e,I.T,r);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",(e=>{this.abortHandler&&(0,x.p)("ierr",[C(e),(0,S.t)(),!0,{},this.#r],void 0,this.featureName,this.ee)})),this.ee.on(t.G4.REPLAY_RUNNING,(e=>{this.#r=e})),p.gm.addEventListener("unhandledrejection",(e=>{this.abortHandler&&(0,x.p)("err",[k(e),(0,S.t)(),!1,{unhandledPromiseRejection:1},this.#r],void 0,this.featureName,this.ee)}),(0,A.jT)(!1,this.removeOnAbort?.signal)),p.gm.addEventListener("error",(e=>{this.abortHandler&&(0,x.p)("err",[L(e),(0,S.t)(),!1,{},this.#r],void 0,this.featureName,this.ee)}),(0,A.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var M=i(8990);let K=1;const U="nr@id";function V(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===p.gm?0:(0,M.I)(e,U,(function(){return K++}))}function G(e){if("string"==typeof e&&e.length)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,j.A)(e).length}catch(e){return}}}var F=i(8139),B=i(7836),W=i(3434);const z={},q=["open","send"];function Z(t){var r=t||B.ee;const n=function(e){return(e||B.ee).get("xhr")}(r);if(z[n.debugId]++)return n;z[n.debugId]=1,(0,F.u)(r);var i=(0,W.YM)(n),o=p.gm.XMLHttpRequest,a=p.gm.MutationObserver,s=p.gm.Promise,c=p.gm.setInterval,u="readystatechange",d=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],l=[],f=p.gm.XMLHttpRequest=function(t){const r=new o(t),a=n.context(r);try{n.emit("new-xhr",[r],a),r.addEventListener(u,(s=a,function(){var e=this;e.readyState>3&&!s.resolved&&(s.resolved=!0,n.emit("xhr-resolved",[],e)),i.inPlace(e,d,"fn-",y)}),(0,A.jT)(!1))}catch(t){(0,e.R)(15,t);try{n.emit("internal-error",[t])}catch(e){}}var s;return r};function h(e,t){i.inPlace(t,["onreadystatechange"],"fn-",y)}if(function(e,t){for(var r in e)t[r]=e[r]}(o,f),f.prototype=o.prototype,i.inPlace(f.prototype,q,"-xhr-",y),n.on("send-xhr-start",(function(e,t){h(e,t),function(e){l.push(e),a&&(g?g.then(b):c?c(b):(m=-m,v.data=m))}(t)})),n.on("open-xhr-start",h),a){var g=s&&s.resolve();if(!c&&!s){var m=1,v=document.createTextNode(m);new a(b).observe(v,{characterData:!0})}}else r.on("fn-end",(function(e){e[0]&&e[0].type===u||b()}));function b(){for(var e=0;e<l.length;e++)h(0,l[e]);l.length&&(l=[])}function y(e,t){return t}return n}var Y="fetch-",X=Y+"body-",J=["arrayBuffer","blob","json","text","formData"],Q=p.gm.Request,ee=p.gm.Response,te="prototype";const re={};function ne(e){const t=function(e){return(e||B.ee).get("fetch")}(e);if(!(Q&&ee&&p.gm.fetch))return t;if(re[t.debugId]++)return t;function r(e,r,n){var i=e[r];"function"==typeof i&&(e[r]=function(){var e,r=[...arguments],o={};t.emit(n+"before-start",[r],o),o[B.P]&&o[B.P].dt&&(e=o[B.P].dt);var a=i.apply(this,r);return t.emit(n+"start",[r,e],a),a.then((function(e){return t.emit(n+"end",[null,e],a),e}),(function(e){throw t.emit(n+"end",[e],a),e}))})}return re[t.debugId]=1,J.forEach((e=>{r(Q[te],e,X),r(ee[te],e,X)})),r(p.gm,"fetch",Y),t.on(Y+"end",(function(e,r){var n=this;if(r){var i=r.headers.get("content-length");null!==i&&(n.rxSize=i),t.emit(Y+"done",[null,r],n)}else t.emit(Y+"done",[e],n)})),t}var ie=i(7485),oe=i(5603);class ae{constructor(e){this.agentIdentifier=e}generateTracePayload(e){if(!this.shouldGenerateTrace(e))return null;var t=(0,oe.o)(this.agentIdentifier);if(!t)return null;var n=(t.accountID||"").toString()||null,i=(t.agentID||"").toString()||null,o=(t.trustKey||"").toString()||null;if(!n||!i)return null;var a=(0,r.ZF)(),s=(0,r.el)(),c=Date.now(),u={spanId:a,traceId:s,timestamp:c};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(u.traceContextParentHeader=this.generateTraceContextParentHeader(a,s),u.traceContextStateHeader=this.generateTraceContextStateHeader(a,c,n,i,o)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(u.newrelicHeader=this.generateTraceHeader(a,s,c,n,i,o)),u}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,o){if(!("function"==typeof p.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return o&&n!==o&&(a.d.tk=o),btoa((0,j.A)(a))}shouldGenerateTrace(e){return this.isDtEnabled()&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1,r={};if((0,s.gD)(this.agentIdentifier,"distributed_tracing")&&(r=(0,s.D0)(this.agentIdentifier).distributed_tracing),e.sameOrigin)t=!0;else if(r.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,ie.D)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}isDtEnabled(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.enabled}excludeNewrelicHeader(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.cors_use_tracecontext_headers}}var se=i(9300),ce=i(7295),ue=["load","error","abort","timeout"],de=ue.length,le=(0,R.dV)().o.REQ,fe=(0,R.dV)().o.XHR;class he extends b{static featureName=se.T;constructor(e,t=!0){super(e,se.T,t),this.dt=new ae(e.agentIdentifier),this.handler=(e,t,r,n)=>(0,x.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};p.gm?.performance?.getEntriesByType("resource").forEach((t=>{if(t.initiatorType in e&&0!==t.responseStatus){const r={status:t.responseStatus},n={rxSize:t.transferSize,duration:Math.floor(t.duration),cbTime:0};pe(r,t.name),this.handler("xhr",[r,n,t.startTime,t.responseEnd,e[t.initiatorType]],void 0,a.K7.ajax)}}))}catch(e){}ne(this.ee),Z(this.ee),function(e,t,r,n){function i(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=R,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},e.addEventListener("load",(function(r){T(t,e)}),(0,A.jT)(!1)),p.lR||e.addEventListener("progress",(function(e){t.lastSize=e.loaded}),(0,A.jT)(!1))}function o(e){this.params={method:e[0]},pe(this,e[1]),this.metrics={}}function s(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var i=n.generateTracePayload(this.parsedOrigin);if(i){var o=!1;i.newrelicHeader&&(r.setRequestHeader("newrelic",i.newrelicHeader),o=!0),i.traceContextParentHeader&&(r.setRequestHeader("traceparent",i.traceContextParentHeader),i.traceContextStateHeader&&r.setRequestHeader("tracestate",i.traceContextStateHeader),o=!0),o&&(this.dt=i)}}function c(e,r){var n=this.metrics,i=e[0],o=this;if(n&&i){var a=G(i);a&&(n.txSize=a)}this.startTime=(0,S.t)(),this.body=i,this.listener=function(e){try{"abort"!==e.type||o.loadCaptureCalled||(o.params.aborted=!0),("load"!==e.type||o.called===o.totalCbs&&(o.onloadCalled||"function"!=typeof r.onload)&&"function"==typeof o.end)&&o.end(r)}catch(e){try{t.emit("internal-error",[e])}catch(e){}}};for(var s=0;s<de;s++)r.addEventListener(ue[s],this.listener,(0,A.jT)(!1))}function u(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function d(e,t){var r=""+V(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function l(e,t){var r=""+V(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function f(){this.endTime=(0,S.t)()}function h(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-added",[e[1],e[2]],r)}function g(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-removed",[e[1],e[2]],r)}function m(e,t,r){t instanceof fe&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,S.t)()))}function v(e,r){this.xhrCbStart&&t.emit("xhr-cb-time",[(0,S.t)()-this.xhrCbStart,this.onload,r],r)}function b(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&p.RI&&(t=""+p.gm.location.href):e[0]&&e[0].url?t=e[0].url:p.gm?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,ie.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var i=n.generateTracePayload(this.parsedOrigin);if(i&&(i.newrelicHeader||i.traceContextParentHeader))if(e[0]&&e[0].headers)s(e[0].headers,i)&&(this.dt=i);else{var o={};for(var a in r)o[a]=r[a];o.headers=new Headers(r.headers||{}),s(o.headers,i)&&(this.dt=i),e.length>1?e[1]=o:e.push(o)}}function s(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function y(e,t){this.params={},this.metrics={},this.startTime=(0,S.t)(),this.dt=t,e.length>=1&&(this.target=e[0]),e.length>=2&&(this.opts=e[1]);var r,n=this.opts||{},i=this.target;"string"==typeof i?r=i:"object"==typeof i&&i instanceof le?r=i.url:p.gm?.URL&&"object"==typeof i&&i instanceof URL&&(r=i.href),pe(this,r);var o=(""+(i&&i instanceof le&&i.method||n.method||"GET")).toUpperCase();this.params.method=o,this.body=n.body,this.txSize=G(n.body)||0}function w(e,t){if(this.endTime=(0,S.t)(),this.params||(this.params={}),(0,ce.iW)(this.params))return;let n;this.params.status=t?t.status:0,"string"==typeof this.rxSize&&this.rxSize.length>0&&(n=+this.rxSize);const i={txSize:this.txSize,rxSize:n,duration:(0,S.t)()-this.startTime};r("xhr",[this.params,i,this.startTime,this.endTime,"fetch"],this,a.K7.ajax)}function R(e){const t=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(let t=0;t<de;t++)e.removeEventListener(ue[t],this.listener,!1);t.aborted||(0,ce.iW)(t)||(n.duration=(0,S.t)()-this.startTime,this.loadCazptureCalled||4!==e.readyState?null==t.status&&(t.status=0):T(this,e),n.cbTime=this.cbTime,r("xhr",[t,n,this.startTime,this.endTime,"xhr"],this,a.K7.ajax))}}function T(e,r){e.params.status=r.status;var n=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?G(e.response):"text"===r||""===r||void 0===r?G(e.responseText):void 0}(r,e.lastSize);if(n&&(e.metrics.rxSize=n),e.sameOrigin){var i=r.getResponseHeader("X-NewRelic-App-Data");i&&((0,x.p)(O.rs,["Ajax/CrossApplicationTracing/Header/Seen"],void 0,a.K7.metrics,t),e.params.cat=i.split(", ").pop())}e.loadCaptureCalled=!0}t.on("new-xhr",i),t.on("open-xhr-start",o),t.on("open-xhr-end",s),t.on("send-xhr-start",c),t.on("xhr-cb-time",u),t.on("xhr-load-added",d),t.on("xhr-load-removed",l),t.on("xhr-resolved",f),t.on("addEventListener-end",h),t.on("removeEventListener-end",g),t.on("fn-end",v),t.on("fetch-before-start",b),t.on("fetch-start",y),t.on("fn-start",m),t.on("fetch-done",w)}(e,this.ee,this.handler,this.dt),this.importAggregator(e)}}function pe(e,t){var r=(0,ie.D)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}const ge={},me=["pushState","replaceState"];function ve(e){const t=function(e){return(e||B.ee).get("history")}(e);return!p.RI||ge[t.debugId]++||(ge[t.debugId]=1,(0,W.YM)(t).inPlace(window.history,me,"-")),t}var be=i(3738);const{He:ye,bD:we,d3:Re,Kp:xe,TZ:Te,Lc:Ae,uP:Ee,Rz:Se}=be;class Ne extends b{static featureName=Te;constructor(e,t=!0){super(e,Te,t);if(!(0,m.V)(this.agentIdentifier))return void this.deregisterDrain();const r=this.ee;let n;ve(r),this.eventsEE=(0,F.u)(r),this.eventsEE.on(Ee,(function(e,t){this.bstStart=(0,S.t)()})),this.eventsEE.on(Ae,(function(e,t){(0,x.p)("bst",[e[0],t,this.bstStart,(0,S.t)()],void 0,a.K7.sessionTrace,r)})),r.on(Se+Re,(function(e){this.time=(0,S.t)(),this.startPath=location.pathname+location.hash})),r.on(Se+xe,(function(e){(0,x.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,a.K7.sessionTrace,r)}));try{n=new PerformanceObserver((e=>{const t=e.getEntries();(0,x.p)(ye,[t],void 0,a.K7.sessionTrace,r)})),n.observe({type:we,buffered:!0})}catch(e){}this.importAggregator(e,{resourceObserver:n})}}var Oe=i(2614);class _e extends b{static featureName=t.TZ;#i;#o;constructor(e,r=!0){let n;super(e,t.TZ,r),this.replayRunning=!1,this.#o=e;try{n=JSON.parse(localStorage.getItem("".concat(Oe.H3,"_").concat(Oe.uh)))}catch(e){}(0,g.SR)(e.agentIdentifier)&&this.ee.on(t.G4.RECORD,(()=>this.#a())),this.#s(n)?(this.#i=n?.sessionReplayMode,this.#c()):this.importAggregator(e),this.ee.on("err",(e=>{this.replayRunning&&(this.errorNoticed=!0,(0,x.p)(t.G4.ERROR_DURING_REPLAY,[e],void 0,this.featureName,this.ee))})),this.ee.on(t.G4.REPLAY_RUNNING,(e=>{this.replayRunning=e}))}#s(e){return e&&(e.sessionReplayMode===Oe.g.FULL||e.sessionReplayMode===Oe.g.ERROR)||(0,g.Aw)(this.agentIdentifier)}#u=!1;async#c(e){if(!this.#u){this.#u=!0;try{const{Recorder:t}=await Promise.all([i.e(478),i.e(249)]).then(i.bind(i,8589));this.recorder??=new t({mode:this.#i,agentIdentifier:this.agentIdentifier,trigger:e,ee:this.ee}),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording}catch(e){}this.importAggregator(this.#o,{recorder:this.recorder,errorNoticed:this.errorNoticed})}}#a(){this.featAggregate?this.featAggregate.mode!==Oe.g.FULL&&this.featAggregate.initializeRecording(Oe.g.FULL,!0):(this.#i=Oe.g.FULL,this.#c(t.Qb.API),this.recorder&&this.recorder.parent.mode!==Oe.g.FULL&&(this.recorder.parent.mode=Oe.g.FULL,this.recorder.stopRecording(),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording))}}var Ie=i(3962);class je extends b{static featureName=Ie.TZ;constructor(e,t=!0){if(super(e,Ie.TZ,t),!p.RI||!(0,R.dV)().o.MO)return;const r=ve(this.ee);Ie.tC.forEach((e=>{(0,A.sp)(e,(e=>{a(e)}),!0)}));const n=()=>(0,x.p)("newURL",[(0,S.t)(),""+window.location],void 0,this.featureName,this.ee);r.on("pushState-end",n),r.on("replaceState-end",n);try{this.removeOnAbort=new AbortController}catch(e){}(0,A.sp)("popstate",(e=>(0,x.p)("newURL",[e.timeStamp,""+window.location],void 0,this.featureName,this.ee)),!0,this.removeOnAbort?.signal);let i=!1;const o=new((0,R.dV)().o.MO)(((e,t)=>{i||(i=!0,requestAnimationFrame((()=>{(0,x.p)("newDom",[(0,S.t)()],void 0,this.featureName,this.ee),i=!1})))})),a=(0,v.s)((e=>{(0,x.p)("newUIEvent",[e],void 0,this.featureName,this.ee),o.observe(document.body,{attributes:!0,childList:!0,subtree:!0,characterData:!0})}),100,{leading:!0});this.abortHandler=function(){this.removeOnAbort?.abort(),o.disconnect(),this.abortHandler=void 0},this.importAggregator(e,{domObserver:o})}}var Pe=i(7378);const Ce={},ke=["appendChild","insertBefore","replaceChild"];function Le(e){const t=function(e){return(e||B.ee).get("jsonp")}(e);if(!p.RI||Ce[t.debugId])return t;Ce[t.debugId]=!0;var r=(0,W.YM)(t),n=/[?&](?:callback|cb)=([^&#]+)/,i=/(.*)\.([^.]+)/,o=/^(\w+)(\.|$)(.*)$/;function a(e,t){if(!e)return t;const r=e.match(o),n=r[1];return a(r[3],t[n])}return r.inPlace(Node.prototype,ke,"dom-"),t.on("dom-start",(function(e){!function(e){if(!e||"string"!=typeof e.nodeName||"script"!==e.nodeName.toLowerCase())return;if("function"!=typeof e.addEventListener)return;var o=(s=e.src,c=s.match(n),c?c[1]:null);var s,c;if(!o)return;var u=function(e){var t=e.match(i);if(t&&t.length>=3)return{key:t[2],parent:a(t[1],window)};return{key:e,parent:window}}(o);if("function"!=typeof u.parent[u.key])return;var d={};function l(){t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,A.jT)(!1)),e.removeEventListener("error",f,(0,A.jT)(!1))}function f(){t.emit("jsonp-error",[],d),t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,A.jT)(!1)),e.removeEventListener("error",f,(0,A.jT)(!1))}r.inPlace(u.parent,[u.key],"cb-",d),e.addEventListener("load",l,(0,A.jT)(!1)),e.addEventListener("error",f,(0,A.jT)(!1)),t.emit("new-jsonp",[e.src],d)}(e[0])})),t}const He={};function De(e){const t=function(e){return(e||B.ee).get("promise")}(e);if(He[t.debugId])return t;He[t.debugId]=!0;var r=t.context,n=(0,W.YM)(t),i=p.gm.Promise;return i&&function(){function e(r){var o=t.context(),a=n(r,"executor-",o,null,!1);const s=Reflect.construct(i,[a],e);return t.context(s).getCtx=function(){return o},s}p.gm.Promise=e,Object.defineProperty(e,"name",{value:"Promise"}),e.toString=function(){return i.toString()},Object.setPrototypeOf(e,i),["all","race"].forEach((function(r){const n=i[r];e[r]=function(e){let i=!1;[...e||[]].forEach((e=>{this.resolve(e).then(a("all"===r),a(!1))}));const o=n.apply(this,arguments);return o;function a(e){return function(){t.emit("propagate",[null,!i],o,!1,!1),i=i||!e}}}})),["resolve","reject"].forEach((function(r){const n=i[r];e[r]=function(e){const r=n.apply(this,arguments);return e!==r&&t.emit("propagate",[e,!0],r,!1,!1),r}})),e.prototype=i.prototype;const o=i.prototype.then;i.prototype.then=function(...e){var i=this,a=r(i);a.promise=i,e[0]=n(e[0],"cb-",a,null,!1),e[1]=n(e[1],"cb-",a,null,!1);const s=o.apply(this,e);return a.nextPromise=s,t.emit("propagate",[i,!0],s,!1,!1),s},i.prototype.then[W.Jt]=o,t.on("executor-start",(function(e){e[0]=n(e[0],"resolve-",this,null,!1),e[1]=n(e[1],"resolve-",this,null,!1)})),t.on("executor-err",(function(e,t,r){e[1](r)})),t.on("cb-end",(function(e,r,n){t.emit("propagate",[n,!0],this.nextPromise,!1,!1)})),t.on("propagate",(function(e,r,n){this.getCtx&&!r||(this.getCtx=function(){if(e instanceof Promise)var r=t.context(e);return r&&r.getCtx?r.getCtx():this})}))}(),t}const Me={},Ke="setTimeout",Ue="setInterval",Ve="clearTimeout",Ge="-start",Fe=[Ke,"setImmediate",Ue,Ve,"clearImmediate"];function Be(e){const t=function(e){return(e||B.ee).get("timer")}(e);if(Me[t.debugId]++)return t;Me[t.debugId]=1;var r=(0,W.YM)(t);return r.inPlace(p.gm,Fe.slice(0,2),Ke+"-"),r.inPlace(p.gm,Fe.slice(2,3),Ue+"-"),r.inPlace(p.gm,Fe.slice(3),Ve+"-"),t.on(Ue+Ge,(function(e,t,n){e[0]=r(e[0],"fn-",null,n)})),t.on(Ke+Ge,(function(e,t,n){this.method=n,this.timerDuration=isNaN(e[1])?0:+e[1],e[0]=r(e[0],"fn-",this,n)})),t}const We={};function ze(e){const t=function(e){return(e||B.ee).get("mutation")}(e);if(!p.RI||We[t.debugId])return t;We[t.debugId]=!0;var r=(0,W.YM)(t),n=p.gm.MutationObserver;return n&&(window.MutationObserver=function(e){return this instanceof n?new n(r(e,"fn-")):n.apply(this,arguments)},MutationObserver.prototype=n.prototype),t}const{TZ:qe,d3:Ze,Kp:Ye,$p:Xe,wW:Je,e5:Qe,tH:$e,uP:et,rw:tt,Lc:rt}=Pe;class nt extends b{static featureName=qe;constructor(e,t=!0){if(super(e,qe,t),!p.RI)return;try{this.removeOnAbort=new AbortController}catch(e){}let r,n=0;const i=this.ee.get("tracer"),o=Le(this.ee),a=De(this.ee),s=Be(this.ee),c=Z(this.ee),u=this.ee.get("events"),d=ne(this.ee),l=ve(this.ee),f=ze(this.ee);function h(e,t){l.emit("newURL",[""+window.location,t])}function g(){n++,r=window.location.hash,this[et]=(0,S.t)()}function m(){n--,window.location.hash!==r&&h(0,!0);var e=(0,S.t)();this[Qe]=~~this[Qe]+e-this[et],this[rt]=e}function v(e,t){e.on(t,(function(){this[t]=(0,S.t)()}))}this.ee.on(et,g),a.on(tt,g),o.on(tt,g),this.ee.on(rt,m),a.on(Je,m),o.on(Je,m),this.ee.on("fn-err",((...t)=>{t[2]?.__newrelic?.[e.agentIdentifier]||(0,x.p)("function-err",[...t],void 0,this.featureName,this.ee)})),this.ee.buffer([et,rt,"xhr-resolved"],this.featureName),u.buffer([et],this.featureName),s.buffer(["setTimeout"+Ye,"clearTimeout"+Ze,et],this.featureName),c.buffer([et,"new-xhr","send-xhr"+Ze],this.featureName),d.buffer([$e+Ze,$e+"-done",$e+Xe+Ze,$e+Xe+Ye],this.featureName),l.buffer(["newURL"],this.featureName),f.buffer([et],this.featureName),a.buffer(["propagate",tt,Je,"executor-err","resolve"+Ze],this.featureName),i.buffer([et,"no-"+et],this.featureName),o.buffer(["new-jsonp","cb-start","jsonp-error","jsonp-end"],this.featureName),v(d,$e+Ze),v(d,$e+"-done"),v(o,"new-jsonp"),v(o,"jsonp-end"),v(o,"cb-start"),l.on("pushState-end",h),l.on("replaceState-end",h),window.addEventListener("hashchange",h,(0,A.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("load",h,(0,A.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("popstate",(function(){h(0,n>1)}),(0,A.jT)(!0,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var it=i(3333);class ot extends b{static featureName=it.TZ;constructor(e,t=!0){super(e,it.TZ,t);const r=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.user_actions.enabled];p.RI&&e.init.user_actions.enabled&&(it.Zp.forEach((e=>(0,A.sp)(e,(e=>(0,x.p)("ua",[e],void 0,this.featureName,this.ee)),!0))),it.qN.forEach((e=>(0,A.sp)(e,(e=>(0,x.p)("ua",[e],void 0,this.featureName,this.ee)))))),r.some((e=>e))?this.importAggregator(e):this.deregisterDrain()}}var at=i(993),st=i(3785);class ct extends b{static featureName=at.TZ;constructor(e,t=!0){super(e,at.TZ,t);const r=this.ee;this.ee.on("wrap-logger-end",(function([e]){const{level:t,customAttributes:n}=this;(0,st.R)(r,e,n,t)})),this.importAggregator(e)}}new class extends o{constructor(t,r){super(r),p.gm?(this.features={},(0,R.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(w),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=>e.featureName===a.K7.softNav)),(0,d.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.P3[e.featureName]-a.P3[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.K7.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.K7.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.K7.softNav)return;const n=function(e){switch(e){case a.K7.ajax:return[a.K7.jserrors];case a.K7.sessionTrace:return[a.K7.ajax,a.K7.pageViewEvent];case a.K7.sessionReplay:return[a.K7.sessionTrace];case a.K7.pageViewTiming:return[a.K7.pageViewEvent];default:return[]}}(r.featureName).filter((e=>!(e in this.features)));n.length>0&&(0,e.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)}))}catch(t){(0,e.R)(22,t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,R.Zm)();delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[he,w,N,Ne,_e,_,D,ot,ct,je,nt],loaderType:"spa"})})()})();</script> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="msapplication-TileColor" content="#2b5797"/> <meta name="msapplication-config" content="/sites/default/files/favicons/browserconfig.xml"/> <meta name="theme-color" content="#1c2957"/> <meta name="description" content="The School of Computing and Information (SCI) is resilient, pragmatic, and confident. The past year was filled with unprecedented challenge due to the COVID-19 pandemic, societal reckoning, and school change. Many individuals also faced personal challenge and loss during the year. SCI and the broader Pitt community persevered, remaining optimistic not only in navigating" /> <meta name="keywords" content="University, Pittsburgh, Pitt, College, Learning, Research, Students, Undergraduate, Graduate" /> <meta name="generator" content="Drupal 7 (http://drupal.org)" /> <link rel="canonical" href="https://www.sci.pitt.edu/about/deans-annual-update/deans-annual-update-2021" /> <link rel="shortlink" href="https://www.sci.pitt.edu/node/1083" /> <meta property="og:title" content="Dean's Annual Update - 2021" /> <meta property="og:description" content="The School of Computing and Information (SCI) is resilient, pragmatic, and confident. The past year was filled with unprecedented challenge due to the COVID-19 pandemic, societal reckoning, and school change. Many individuals also faced personal challenge and loss during the year. SCI and the broader Pitt community persevered, remaining optimistic not only in navigating through the year but also accomplishing so much along the way. Across students, faculty, staff, and alumni, SCI forged ahead, undertaking our work with energy and optimism as we came together to write our ongoing story." /> <meta property="og:updated_time" content="2024-01-31T14:08:05-05:00" /> <meta name="twitter:title" content="Dean's Annual Update - 2021" /> <meta name="twitter:description" content="The School of Computing and Information (SCI) is resilient, pragmatic, and confident. The past year was filled with unprecedented challenge due to the COVID-19 pandemic, societal reckoning, and" /> <meta property="article:published_time" content="2022-12-20T10:32:00-05:00" /> <meta property="article:modified_time" content="2024-01-31T14:08:05-05:00" /> <title>Dean's Annual Update - 2021 | School of Computing and Information | University of Pittsburgh</title> <link type="text/css" rel="stylesheet" href="/sites/default/files/css/css_lQaZfjVpwP_oGNqdtWCSpJT1EMqXdMiU84ekLLxQnc4.css" media="all" /> <link type="text/css" rel="stylesheet" href="/sites/default/files/css/css_RTpulIpPjg_nSMDPdMqZBnaRv3i0JXTi9Pv5Swfr_6E.css" media="all" /> <link type="text/css" rel="stylesheet" href="/sites/default/files/css/css_yNI9Cch8AM_BaaKzWgijp6JnIBjZAG8gIIMVYfeiDf0.css" media="all" /> <link type="text/css" rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/css/bootstrap.min.css" media="all" /> <link type="text/css" rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@unicorn-fail/drupal-bootstrap-styles@0.0.2/dist/3.3.1/7.x-3.x/drupal-bootstrap.min.css" media="all" /> <link type="text/css" rel="stylesheet" href="/sites/default/files/css/css_8RzIXUsk2YPpK92-NR_kt9hRp-sNFwE_BqREKcgPcLM.css" media="all" /> <!-- HTML5 element support for IE6-8 --> <!--[if lt IE 9]> <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> <![endif]--> <script src="//code.jquery.com/jquery-2.2.4.js"></script> <script>window.jQuery || document.write("<script src='/sites/all/modules/jquery_update/replace/jquery/2.2/jquery.js'>\x3C/script>")</script> <script src="/sites/default/files/js/js_GOikDsJOX04Aww72M-XK1hkq4qiL_1XgGsRdkL0XlDo.js"></script> <script src="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/js/bootstrap.min.js"></script> <script src="/sites/default/files/js/js_u3xuc_-UmE75zf0cFPtLNhfmKElRdxvfV9OrsY3v8E0.js"></script> <script src="//pitt.edu/webtrends/webtrends.load.js"></script> <script src="/sites/default/files/js/js_YGy8u8r43ebWX_c5Yduw0fLoPBY1uMawfu-V4e2L42Y.js"></script> <script src="https://www.googletagmanager.com/gtag/js?id=G-PZQFKP0Y8Y"></script> <script>window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments)};gtag("js", new Date());gtag("set", "developer_id.dMDhkMT", true);gtag("config", "G-PZQFKP0Y8Y", {"groups":"default","anonymize_ip":true});</script> <script src="/sites/default/files/js/js_eOR9EdGwFV6QfPJ8nhKo-TC46xe2As2AR6UokZ4fxQo.js"></script> <script>jQuery.extend(Drupal.settings, {"basePath":"\/","pathPrefix":"","setHasJsCookie":0,"ajaxPageState":{"theme":"pitt_theme_spirit","theme_token":"VdRhzuNZB9RjV5GRksTaFD2B5M7cdCkwA7ham_DrLzI","js":{"sites\/all\/themes\/bootstrap\/js\/bootstrap.js":1,"\/\/code.jquery.com\/jquery-2.2.4.js":1,"0":1,"misc\/jquery-extend-3.4.0.js":1,"misc\/jquery-html-prefilter-3.5.0-backport.js":1,"misc\/jquery.once.js":1,"misc\/drupal.js":1,"sites\/all\/modules\/jquery_update\/js\/jquery_browser.js":1,"https:\/\/cdn.jsdelivr.net\/npm\/bootstrap@3.3.7\/dist\/js\/bootstrap.min.js":1,"sites\/all\/modules\/ckeditor_accordion\/js\/ckeditor-accordion.js":1,"sites\/all\/modules\/entityreference\/js\/entityreference.js":1,"sites\/all\/modules\/google_cse\/google_cse.js":1,"sites\/all\/modules\/miniorange_saml\/js\/testconfig.js":1,"sites\/all\/modules\/miniorange_saml\/js\/backdoor.js":1,"sites\/all\/modules\/miniorange_saml\/js\/addCopyIcon.js":1,"\/\/pitt.edu\/webtrends\/webtrends.load.js":1,"sites\/all\/libraries\/jquery-actual\/jquery.actual.min.js":1,"sites\/all\/modules\/edu_pitt_sci_acalog\/js\/edu_pitt_sci_acalog.js":1,"sites\/all\/modules\/fancybox\/fancybox.js":1,"sites\/all\/libraries\/fancybox\/source\/jquery.fancybox.pack.js":1,"sites\/all\/libraries\/fancybox\/lib\/jquery.mousewheel.pack.js":1,"sites\/all\/modules\/jcaption\/jcaption.js":1,"sites\/all\/modules\/google_analytics\/googleanalytics.js":1,"https:\/\/www.googletagmanager.com\/gtag\/js?id=G-PZQFKP0Y8Y":1,"1":1,"sites\/all\/themes\/pitt_theme_spirit\/bootstrap\/js\/affix.js":1,"sites\/all\/themes\/pitt_theme_spirit\/bootstrap\/js\/alert.js":1,"sites\/all\/themes\/pitt_theme_spirit\/bootstrap\/js\/button.js":1,"sites\/all\/themes\/pitt_theme_spirit\/bootstrap\/js\/carousel.js":1,"sites\/all\/themes\/pitt_theme_spirit\/bootstrap\/js\/collapse.js":1,"sites\/all\/themes\/pitt_theme_spirit\/bootstrap\/js\/dropdown.js":1,"sites\/all\/themes\/pitt_theme_spirit\/bootstrap\/js\/modal.js":1,"sites\/all\/themes\/pitt_theme_spirit\/bootstrap\/js\/tooltip.js":1,"sites\/all\/themes\/pitt_theme_spirit\/bootstrap\/js\/popover.js":1,"sites\/all\/themes\/pitt_theme_spirit\/bootstrap\/js\/scrollspy.js":1,"sites\/all\/themes\/pitt_theme_spirit\/bootstrap\/js\/tab.js":1,"sites\/all\/themes\/pitt_theme_spirit\/bootstrap\/js\/transition.js":1,"sites\/all\/themes\/pitt_theme_spirit\/js\/script.js":1,"sites\/all\/themes\/pitt_theme_spirit\/js\/search.js":1,"sites\/all\/themes\/pitt_theme_spirit\/js\/nav.js":1},"css":{"modules\/system\/system.base.css":1,"sites\/all\/modules\/calendar\/css\/calendar_multiday.css":1,"sites\/all\/modules\/ckeditor_accordion\/css\/ckeditor-accordion.css":1,"modules\/field\/theme\/field.css":1,"sites\/all\/modules\/google_cse\/google_cse.css":1,"modules\/node\/node.css":1,"sites\/all\/modules\/siteimprove\/css\/siteimprove.css":1,"sites\/all\/modules\/views\/css\/views.css":1,"sites\/all\/modules\/ckeditor\/css\/ckeditor.css":1,"sites\/all\/modules\/ctools\/css\/ctools.css":1,"sites\/all\/libraries\/fancybox\/source\/jquery.fancybox.css":1,"https:\/\/cdn.jsdelivr.net\/npm\/bootstrap@3.3.7\/dist\/css\/bootstrap.min.css":1,"https:\/\/cdn.jsdelivr.net\/npm\/@unicorn-fail\/drupal-bootstrap-styles@0.0.2\/dist\/3.3.1\/7.x-3.x\/drupal-bootstrap.min.css":1,"sites\/all\/themes\/pitt_theme_spirit\/fonts\/css\/fontawsome.min.css":1,"sites\/all\/themes\/pitt_theme_spirit\/fonts\/css\/all.css":1,"sites\/all\/themes\/pitt_theme_spirit\/fonts\/css\/light.min.css":1,"sites\/all\/themes\/pitt_theme_spirit\/fonts\/css\/brands.min.css":1,"sites\/all\/themes\/pitt_theme_spirit\/fonts\/cooper.css":1,"sites\/all\/themes\/pitt_theme_spirit\/less\/style.less":1}},"fancybox":{"selectors":["a.fancybox"]},"googleCSE":{"cx":"d0d541f149397d615","resultsWidth":600,"domain":"www.google.com","showWaterMark":1},"jcaption":{"jcaption_selectors":[".region-content article img"],"jcaption_alt_title":"title","jcaption_requireText":1,"jcaption_copyStyle":0,"jcaption_removeStyle":0,"jcaption_removeClass":0,"jcaption_removeAlign":1,"jcaption_copyAlignmentToClass":0,"jcaption_copyFloatToClass":1,"jcaption_copyClassToClass":0,"jcaption_autoWidth":1,"jcaption_keepLink":0,"jcaption_styleMarkup":"","jcaption_animate":0,"jcaption_showDuration":"200","jcaption_hideDuration":"200"},"better_exposed_filters":{"views":{"title_block":{"displays":{"header_title_block":{"filters":[]},"footer_title_block":{"filters":[]},"block_3":{"filters":[]}}},"social_media_icons":{"displays":{"footer_social_block":{"filters":[]}}}}},"ckeditor_accordion":{"collapseAll":1},"googleanalytics":{"account":["G-PZQFKP0Y8Y"],"trackOutbound":1,"trackMailto":1,"trackDownload":1,"trackDownloadExtensions":"7z|aac|arc|arj|asf|asx|avi|bin|csv|doc(x|m)?|dot(x|m)?|exe|flv|gif|gz|gzip|hqx|jar|jpe?g|js|mp(2|3|4|e?g)|mov(ie)?|msi|msp|pdf|phps|png|ppt(x|m)?|pot(x|m)?|pps(x|m)?|ppam|sld(x|m)?|thmx|qtm?|ra(m|r)?|sea|sit|tar|tgz|torrent|txt|wav|wma|wmv|wpd|xls(x|m|b)?|xlt(x|m)|xlam|xml|z|zip"},"urlIsAjaxTrusted":{"\/about\/deans-annual-update\/deans-annual-update-2021":true},"bootstrap":{"anchorsFix":"0","anchorsSmoothScrolling":"0","formHasError":1,"popoverEnabled":1,"popoverOptions":{"animation":1,"html":0,"placement":"right","selector":"","trigger":"click","triggerAutoclose":1,"title":"","content":"","delay":0,"container":"body"},"tooltipEnabled":1,"tooltipOptions":{"animation":1,"html":0,"placement":"auto left","selector":"","trigger":"hover focus","delay":0,"container":"body"}}});</script> </head> <body class="html not-front not-logged-in one-sidebar sidebar-second page-node page-node- page-node-1083 node-type-page pitt_dark" > <div id="skip-link" role="navigation"> <a href="#main-content" class="element-invisible element-focusable">Skip to main content</a> </div> <div id="pittbar" role="banner"> <div class="container"> <div class="secondary-links"> <div id="secondary-nav-prefix">Information for:</div> <nav role="navigation"> <ul class="menu nav navbar-nav secondary"><li class="first leaf"><a href="/information-faculty-staff" title="">Faculty & Staff</a></li> <li class="leaf"><a href="/recruiting" title="">Prospective Faculty</a></li> <li class="leaf"><a href="/prospective-students" title="">Prospective Students</a></li> <li class="leaf"><a href="/alumni" title="">Alumni</a></li> <li class="last leaf"><a href="/partnership" title="">Partners</a></li> </ul> </nav> </div> </div> </div> <div class="header_wrapper"> <div class="container hb"> <div class="row"> <div class="col-xs-12 col-sm-12 col-md-9 logo_space"> <div class="pitt_shield"> <a href="http://www.pitt.edu"> <img src="/sites/all/themes/pitt_theme_spirit/img/pitt_shield_white.png" width="261" alt="University of Pittsburgh logo" /> </a> </div> <div class="site_title_wrapper"> <div class="region region-logo"> <section aria-label="" id="block-views-title-block-header-title-block" class="block block-views clearfix"> <div class="view view-title-block view-id-title_block view-display-id-header_title_block site-info--title-block view-dom-id-f9e6b8b7ae873faf6db25dc56ae4f9fb"> <div class="view-content"> <div> <span class="single_title"><a href="/" class="site-info__title">School of Computing and Information</a></span> </div> </div> </div> </section> </div> </div><!--title_wrapper --> </div> <div class="col-xs-12 col-sm-12 col-md-3 header_links"> <div class="pittbar__search"> <div class="region region-pre-nav"> <section aria-label="" id="block-search-form" class="block block-search clearfix"> <form class="google-cse form-search content-search" action="/about/deans-annual-update/deans-annual-update-2021" method="post" id="search-block-form" accept-charset="UTF-8"><div> <div class="searchbox" role="search"> <label for="edit-search-block-form-1" class="hidden">Use this for to search the site.</label> <input type="text" maxlength="128" name="search_block_form" class="searchbox-input" id="edit-search-block-form-1" size="15" value="" aria-label="Search Form" required title="Enter the terms you wish to search for." /> <input type="submit" class="searchbox-submit btn btn-primary" /> <span class="searchbox-icon icon glyphicon glyphicon-search" aria-label="search" aria-hidden="true"></span> </div> <div class="form-actions form-wrapper form-group" id="edit-actions"><button class="element-invisible btn btn-primary form-submit" type="submit" id="edit-submit" name="op" value="Search">Search</button> </div><input type="hidden" name="form_build_id" value="form-_dXJTJV1H2RtfIafsA9TnVvKqCQs4LRwf_xVraqDSKo" /> <input type="hidden" name="form_id" value="search_block_form" /> </div></form> </section> </div> </div> </div> </div> </div> <div class="nav_wrapper"> <div class="container"> <div class="row"> <div class="col-xs-12"> <div class="navbar-header site-info__navbar-toggle"> <!-- .btn-navbar is used as the toggle for collapsed navbar content --> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".primary-links"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> </div> <div role="navigation" aria-label="primary" id="primary-links" class="container-fluid"> <div class="navbar container navbar-default"> <div class="navbar-collapse collapse navbar primary-links primary-links__navbar"> <a class="pitt_seal" href="http://www.pitt.edu" title="University of PIttsburgh Home"></a> <div class="region region-navigation"> <section aria-label="" id="block-menu-block-1" class="block block-menu-block clearfix"> <div class="menu-block-wrapper menu-block-1 menu-name-main-menu parent-mlid-0 menu-level-1"> <ul class="menu nav"><li class="first leaf menu-mlid-218"><a href="/" title="">Home</a></li> <li class="expanded active-trail menu-mlid-5857 active"><a href="/about" class="active-trail">About</a><ul class="menu nav"><li class="first expanded active-trail menu-mlid-8503 active"><a href="/about/deans-annual-update" class="active-trail">Dean's Annual Update</a><ul class="menu nav"><li class="first leaf menu-mlid-9201"><a href="/about/deans-annual-update/deans-2022-annual-update">2022 Update</a></li> <li class="leaf active-trail active menu-mlid-9185 active"><a href="/about/deans-annual-update/deans-annual-update-2021" class="active-trail active">2021 Update</a></li> <li class="last leaf menu-mlid-8847"><a href="/about/deans-annual-update/2020-update">2020 Update</a></li> </ul></li> <li class="leaf menu-mlid-8504"><a href="/about/reputation-and-history">Reputation and History</a></li> <li class="leaf menu-mlid-8476"><a href="/about/departments-and-programs">Departments and Programs</a></li> <li class="leaf menu-mlid-8849"><a href="/about/institutes">Institutes</a></li> <li class="leaf menu-mlid-8739"><a href="https://www.sci.pitt.edu/recruiting" title="">Faculty Recruiting</a></li> <li class="leaf menu-mlid-9178"><a href="/about/committees">Committees</a></li> <li class="leaf menu-mlid-8505"><a href="/about/zoom-backgrounds">Zoom Backgrounds</a></li> <li class="leaf menu-mlid-8451"><a href="/about/contact-us">Contact Us</a></li> <li class="leaf menu-mlid-9183"><a href="/about/board-visitors">Board of Visitors</a></li> <li class="last leaf menu-mlid-9191"><a href="/about/sci-learning-academy">SCI Learning Academy</a></li> </ul></li> <li class="expanded menu-mlid-3063"><a href="/people" title="">People</a><ul class="menu nav"><li class="first leaf menu-mlid-8714"><a href="https://www.sci.pitt.edu/administration" title="">Administration</a></li> <li class="leaf menu-mlid-8578"><a href="/people/faculty" title="">Faculty Directory</a></li> <li class="leaf menu-mlid-8475"><a href="/people/staff" title="">Staff Directory</a></li> <li class="last leaf menu-mlid-8477"><a href="/people/phd-students">PhD Students</a></li> </ul></li> <li class="expanded menu-mlid-8766"><a href="/equity">Equity</a><ul class="menu nav"><li class="first leaf menu-mlid-8767"><a href="/equity/committee">Diversity, Equity and Inclusion Committee</a></li> <li class="leaf menu-mlid-8768"><a href="/equity/school-initiatives-and-resources">School Initiatives and Resources</a></li> <li class="leaf menu-mlid-8773"><a href="/equity/events">Events</a></li> <li class="last leaf menu-mlid-8769"><a href="/equity/university-initiatives-and-resources">University Initiatives and Resources</a></li> </ul></li> <li class="expanded menu-mlid-8440"><a href="/research">Research</a><ul class="menu nav"><li class="first leaf menu-mlid-8466"><a href="/research" title="">Overview</a></li> <li class="leaf menu-mlid-8583"><a href="/research/faculty-spotlight">Faculty Spotlight</a></li> <li class="expanded menu-mlid-8463"><a href="/research/active-research">Active Research</a><ul class="menu nav"><li class="first leaf menu-mlid-8470"><a href="/research/active-research/current-grants">Current Grants</a></li> <li class="leaf menu-mlid-9196"><a href="/research/active-research/faculty-accepting-undergraduate-students-research">Faculty Accepting Undergraduate Students for Research</a></li> <li class="last leaf menu-mlid-9197"><a href="https://pitt.co1.qualtrics.com/jfe/form/SV_djvb4vsuvzS3GRM" title="">Submit Research for Undergraduate Students</a></li> </ul></li> <li class="leaf menu-mlid-8468"><a href="/research/labs-centers-and-institutes">Labs, Centers, and Institutes</a></li> <li class="leaf menu-mlid-8467"><a href="/research/visiting-scholars">Visiting Scholars</a></li> <li class="last leaf menu-mlid-8469"><a href="/research/undergraduate-research-scholars">Undergraduate Research Scholars</a></li> </ul></li> <li class="expanded menu-mlid-8441"><a href="/academics">Academics</a><ul class="menu nav"><li class="first leaf menu-mlid-8562"><a href="/academics/degrees-and-programs">Degrees and Programs</a></li> <li class="expanded menu-mlid-8529"><a href="/academics/undergraduate-majors">Undergraduate Majors</a><ul class="menu nav"><li class="first leaf menu-mlid-8532"><a href="/academics/undergraduate-majors/find-right-major-you">Find the Right Major for You</a></li> <li class="leaf menu-mlid-8533"><a href="/academics/undergraduate-majors/computational-biology">Computational Biology</a></li> <li class="leaf menu-mlid-8772"><a href="/academics/undergraduate-majors/computational-social-science">Computational Social Science</a></li> <li class="leaf menu-mlid-8534"><a href="/academics/undergraduate-majors/computer-science">Computer Science</a></li> <li class="leaf has-children menu-mlid-8757"><a href="/academics/undergraduate-majors/data-science">Data Science</a></li> <li class="leaf has-children menu-mlid-8535"><a href="/academics/undergraduate-majors/digital-narrative-and-interactive-design">Digital Narrative and Interactive Design</a></li> <li class="leaf menu-mlid-8536"><a href="/academics/undergraduate-majors/information-science">Information Science</a></li> <li class="leaf menu-mlid-8584"><a href="/academics/undergraduate-majors/bs-ms-computer-science">BS + MS in Computer Science</a></li> <li class="leaf menu-mlid-9179"><a href="/academics/undergraduate-majors/physics-and-quantum-computing">Physics and Quantum Computing</a></li> <li class="last leaf menu-mlid-8585"><a href="/academics/undergraduate-majors/minors">Minors</a></li> </ul></li> <li class="expanded menu-mlid-8537"><a href="/academics/masters-degrees">Master's Degrees</a><ul class="menu nav"><li class="first leaf menu-mlid-8568"><a href="/academics/masters-degrees/library-and-information-science-mlis">Library and Information Science</a></li> <li class="leaf menu-mlid-9208"><a href="/academics/masters-degrees/computational-modeling-and-simulation-ms">Computational Modeling and Simulation</a></li> <li class="leaf menu-mlid-8564"><a href="/academics/masters-degrees/computer-science-ms">Computer Science</a></li> <li class="leaf menu-mlid-9199"><a href="/academics/masters-degrees/data-science">Data Science</a></li> <li class="leaf menu-mlid-8575"><a href="/academics/masters-degrees/information-science-ms">Information Science</a></li> <li class="leaf menu-mlid-8571"><a href="/academics/masters-degrees/intelligent-systems-ms">Intelligent Systems</a></li> <li class="last leaf menu-mlid-8574"><a href="/academics/masters-degrees/telecommunications-ms">Telecommunications</a></li> </ul></li> <li class="expanded menu-mlid-8538"><a href="/academics/doctoral-degrees">Doctoral Degrees</a><ul class="menu nav"><li class="first leaf menu-mlid-8565"><a href="/academics/doctoral-degrees/computational-modeling-and-simulation-phd">Computational Modeling and Simulation</a></li> <li class="leaf menu-mlid-8566"><a href="/academics/doctoral-degrees/computer-science-phd">Computer Science</a></li> <li class="leaf menu-mlid-8573"><a href="/academics/doctoral-degrees/information-science-phd">Information Science</a></li> <li class="leaf menu-mlid-8572"><a href="/academics/doctoral-degrees/information-science-focus-telecommunications-phd">Information Science with a focus in Telecommunications</a></li> <li class="leaf menu-mlid-8570"><a href="/academics/doctoral-degrees/intelligent-systems-phd">Intelligent Systems</a></li> <li class="last leaf menu-mlid-8567"><a href="/academics/doctoral-degrees/library-and-information-science-phd">Library and Information Science</a></li> </ul></li> <li class="expanded menu-mlid-8539"><a href="/academics/graduate-certificates">Graduate Certificates</a><ul class="menu nav"><li class="first leaf menu-mlid-8771"><a href="/academics/graduate-certificates/applied-data-driven-methods">Applied Data-Driven Methods</a></li> <li class="leaf menu-mlid-8540"><a href="/academics/graduate-certificates/big-data-analytics">Big Data Analytics</a></li> <li class="leaf menu-mlid-8543"><a href="/academics/graduate-certificates/cybersecurity-policy-and-law">Cybersecurity, Policy, and Law</a></li> <li class="leaf menu-mlid-8544"><a href="/academics/graduate-certificates/information-and-network-security">Information and Network Security</a></li> <li class="leaf menu-mlid-8541"><a href="/academics/graduate-certificates/information-science">Information Science</a></li> <li class="last leaf menu-mlid-8542"><a href="/academics/graduate-certificates/telecommunications">Telecommunications</a></li> </ul></li> <li class="leaf menu-mlid-8580"><a href="https://www.sciprofessional.pitt.edu/" title="">Professional Institute</a></li> <li class="expanded menu-mlid-8545"><a href="/academics/experiential-learning">Experiential Learning</a><ul class="menu nav"><li class="first leaf menu-mlid-9176"><a href="/academics/experiential-learning/types-opportunities">Types of Opportunities</a></li> <li class="last leaf menu-mlid-9177"><a href="/academics/experiential-learning/course-credit-opportunities">Experiential Learning Courses</a></li> </ul></li> <li class="leaf menu-mlid-8732"><a href="/academics/earn-master-s-degree-sci">Pitt2Pitt</a></li> <li class="last leaf menu-mlid-8745"><a href="/academics/student-profiles">Student Profiles</a></li> </ul></li> <li class="expanded menu-mlid-8442"><a href="/admissions">Admissions</a><ul class="menu nav"><li class="first leaf menu-mlid-8454"><a href="/admissions/take-next-step">Take the Next Step</a></li> <li class="expanded menu-mlid-8527"><a href="/admissions/undergraduate-admissions">Undergraduate Admissions</a><ul class="menu nav"><li class="first last leaf menu-mlid-8472"><a href="/admissions/undergraduate-admissions-faq">Undergraduate Admissions FAQ</a></li> </ul></li> <li class="leaf menu-mlid-8549"><a href="/admissions/masters-admissions">Master's Admissions</a></li> <li class="leaf menu-mlid-8550"><a href="/admissions/doctoral-admissions">Doctoral Admissions</a></li> <li class="leaf menu-mlid-8560"><a href="/admissions/certificate-admissions">Certificate Admissions</a></li> <li class="expanded menu-mlid-8473"><a href="/admissions/graduate-admissions-faq">Graduate Admissions FAQ</a><ul class="menu nav"><li class="first last leaf menu-mlid-8845"><a href="/admissions/graduate-admissions-faq/gre-requirements">GRE Requirements</a></li> </ul></li> <li class="expanded menu-mlid-8555"><a href="/admissions/tuition-and-financial-aid">Tuition and Financial Aid</a><ul class="menu nav"><li class="first leaf menu-mlid-8556"><a href="/admissions/tuition-and-financial-aid/financial-aid">Financial Aid</a></li> <li class="last leaf menu-mlid-8557"><a href="/admissions/tuition-and-financial-aid/scholarships">Scholarships</a></li> </ul></li> <li class="leaf menu-mlid-8558"><a href="/admissions/campus-life">Campus Life</a></li> <li class="last leaf menu-mlid-8471"><a href="/admissions/information-sessions">Information Sessions</a></li> </ul></li> <li class="expanded menu-mlid-8443"><a href="/student-resources" title="">Students</a><ul class="menu nav"><li class="first leaf menu-mlid-8563"><a href="/student-resources/z-student-resources">A-Z Student Resources</a></li> <li class="expanded menu-mlid-8499"><a href="/student-resources/academic-advising-center">Academic Advising Center</a><ul class="menu nav"><li class="first leaf menu-mlid-8520"><a href="/student-resources/academic-advising-center/responsibilities">Responsibilities</a></li> <li class="leaf menu-mlid-8518"><a href="/student-resources/academic-advising-center/placement-assessments">Placement Assessments</a></li> <li class="leaf menu-mlid-8519"><a href="/student-resources/academic-advising-center/general-education-requirements">General Education Requirements</a></li> <li class="leaf menu-mlid-9195"><a href="/student-resources/academic-advising-center/major-and-minor-declaration">Major and Minor Declaration</a></li> <li class="leaf menu-mlid-8852"><a href="/student-resources/academic-advising-center/faculty-mentors">Faculty Mentors</a></li> <li class="last leaf menu-mlid-8851"><a href="/students/academic-advising-center/contact-sci-advising-center">Contact the SCI Advising Center</a></li> </ul></li> <li class="leaf menu-mlid-8500"><a href="/student-resources/building-hours">Building Hours</a></li> <li class="expanded menu-mlid-8525"><a href="/student-resources/career-services">Career Services</a><ul class="menu nav"><li class="first leaf menu-mlid-8551"><a href="https://careerservices.sci.pitt.edu/career-resources/" title="">Career Resources</a></li> <li class="leaf menu-mlid-8553"><a href="https://careerservices.sci.pitt.edu/jobs/" title="">Job Board</a></li> <li class="leaf menu-mlid-9180"><a href="/student-resources/career-services/post-graduate-outcomes" title="">Post-Graduate Outcomes</a></li> <li class="last leaf menu-mlid-9182"><a href="/student-resources/career-services/faqs">FAQs</a></li> </ul></li> <li class="leaf menu-mlid-9205"><a href="https://courses.sci.pitt.edu" title="">Course Schedule</a></li> <li class="leaf menu-mlid-9206"><a href="/student-resources/enrollment-resources">Enrollment Resources</a></li> <li class="expanded menu-mlid-8521"><a href="/student-resources/graduation">Graduation</a><ul class="menu nav"><li class="first leaf menu-mlid-8869"><a href="/student-resources/graduation/graduation-process-expectations">Graduation Process and Expectations</a></li> <li class="leaf menu-mlid-8871"><a href="/student-resources/graduation/apply-graduation">Apply for Graduation</a></li> <li class="last leaf menu-mlid-8522"><a href="/students/graduation/school-recognition-ceremony">School Recognition Ceremony</a></li> </ul></li> <li class="leaf menu-mlid-8524"><a href="/student-resources/information-technology">Information Technology</a></li> <li class="expanded menu-mlid-8514"><a href="/student-resources/newly-admitted-students">Newly Admitted Students</a><ul class="menu nav"><li class="first leaf menu-mlid-8516"><a href="/student-resources/newly-admitted-students/graduate-student-orientation">Graduate Student Orientation</a></li> <li class="leaf menu-mlid-8515"><a href="/student-resources/newly-admitted-students/new-graduate-student-faq">New Graduate Student FAQ</a></li> <li class="last leaf menu-mlid-8619"><a href="/student-resources/newly-admitted-students/undergraduate-student-orientation">Undergraduate Student Orientation</a></li> </ul></li> <li class="leaf menu-mlid-8607"><a href="/student-resources/ombudsperson">Ombudsperson</a></li> <li class="expanded menu-mlid-8507"><a href="/student-resources/policies">Policies</a><ul class="menu nav"><li class="first leaf menu-mlid-8508"><a href="/student-resources/policies/academic-integrity-policy">Academic Integrity Policy</a></li> <li class="last leaf menu-mlid-9186"><a href="/student-resources/policies/experiential-learning-policies">Experiential Learning Policies</a></li> </ul></li> <li class="leaf menu-mlid-9207"><a href="/student-resources/sci-ubelong">SCI UBelong</a></li> <li class="leaf menu-mlid-8546"><a href="/student-resources/school-forms">School Forms</a></li> <li class="leaf menu-mlid-9192"><a href="/student-resources/student-appeals">Student Appeals</a></li> <li class="leaf menu-mlid-8506"><a href="/student-resources/student-organizations">Student Organizations</a></li> <li class="expanded menu-mlid-8528"><a href="/student-resources/student-success">Student Success</a><ul class="menu nav"><li class="first leaf has-children menu-mlid-8717"><a href="/student-resources/student-success/academic-support-and-tutoring">Academic Support and Tutoring</a></li> <li class="last leaf menu-mlid-8721"><a href="/student-resources/student-success/student-success-workshops">Student Success Workshops</a></li> </ul></li> <li class="last leaf menu-mlid-8720"><a href="/student-resources/who-contact">Who to Contact</a></li> </ul></li> <li class="expanded menu-mlid-5865"><a href="/news" title="">News</a><ul class="menu nav"><li class="first leaf menu-mlid-8587"><a href="/news" title="">All News</a></li> <li class="last leaf menu-mlid-8589"><a href="/news/submit-news-item">Submit a News Item</a></li> </ul></li> <li class="expanded menu-mlid-8445"><a href="https://calendar.pitt.edu/school_of_computing_and_information" title="">Events</a><ul class="menu nav"><li class="first leaf menu-mlid-8588"><a href="https://calendar.pitt.edu/school_of_computing_and_information" title="">All Events</a></li> <li class="last leaf menu-mlid-8600"><a href="/events/event-assistance-promotion">Event Assistance & Promotion</a></li> </ul></li> <li class="last leaf menu-mlid-9214"><a href="/give-sci">Give to SCI</a></li> </ul></div> </section> </div> </div> </div> </div> <!-- /#primary-links --> </div> </div> </div> </div> </div> <a id="main-content"></a> <div class="main-container container-fluid"> <div class="container" id="content-wrapper"> <div class="row"> <section class="col-sm-8 content" name="Highlights"> <ol class="breadcrumb"><li><a href="/about">About</a></li> <li><a href="/about/deans-annual-update">Dean's Annual Update</a></li> </ol> <h1 class="page-header">Dean's Annual Update - 2021</h1> <div class="region region-content"> <section aria-label="" id="block-system-main" class="block block-system clearfix"> <div id="node-1083" class="node node-page clearfix" about="/about/deans-annual-update/deans-annual-update-2021" typeof="foaf:Document"> <div> <span property="dc:title" content="Dean's Annual Update - 2021" class="rdf-meta element-hidden"></span> </div> <article class="field-body"> <p>The School of Computing and Information (SCI) is resilient, pragmatic, and confident. The past year was filled with unprecedented challenge due to the COVID-19 pandemic, societal reckoning, and school change. Many individuals also faced personal challenge and loss during the year.</p> <p>SCI and the broader Pitt community persevered, remaining optimistic not only in navigating through the year but also accomplishing so much along the way. Across students, faculty, staff, and alumni, SCI forged ahead, undertaking our work with energy and optimism as we came together to write our ongoing story.</p> <p>Our achievements are compelling. The incoming undergraduate class is the school’s most diverse ever. The retention rate of students in their first year is phenomenal at 94.2%. Our 336 graduating undergraduates had an impressive 95% job placement rate during a period of economic uncertainty. SCI’s undergraduate programs are robust. For instance, the Digital Narrative and Interactive Design major, offered jointly with the Department of English, Dietrich School of Arts and Sciences, increased from 19 students at the outset two years ago to nearly 100 today. New joint majors in Computational Social Science and Data Science are starting.</p> <p>The Master of Library and Information Science is newly re-accredited by the American Library Association, continuing this designation since 1924-1925. The new Applied Data-Driven Methods graduate certificate offers an entry into data methods for students whose background lies outside of computing and information but whose goals require expertise in this area. Across our Master’s programs, there is a 6% increase in enrollment compared to Fall 2020. Nonetheless, it is a trying period for international students who face particular hardship in pursuing their educational aspirations while the pandemic continues.</p> <p>Our scholarship is growing: research expenditures and doctoral enrollment are at all-time highs. The Intelligent Systems Program had a 26% increase in PhD students. Four stellar faculty are joining the Departments of Computer Science, Informatics and Networked Systems, and Information Culture and Data Stewardship. Our faculty are leading and participating in new transdisciplinary initiatives such as SpectrumX, the Collaboratory Against Hate, and the Pitt Disinformation Lab.</p> <p>To gather SCI’s collective story, we are listening to and learning from one another in establishing a strong foundation. We’ve made strides to enhance the Board of Visitors, created a new Alumni Board, and attended to our community’s well-being. We are striving to step across boundaries to connect between students, faculty, staff and alumni. Thanks to the generosity of our community, the number of individual donors to SCI during the Pitt Day of Giving increased by 255% for the most successful day yet. A new leadership role, Associate Dean for Diversity, Equity and Inclusion, was created to champion inclusivity, equity, justice and diversity in everything and anything we do. Eight staff members joined SCI this year.</p> <p>Though we’ve accomplished a lot over this past year, SCI’s story is far from over. As we work toward achieving our goals and taking on new challenges in the coming year, I look forward to continuing SCI’s story together with energy, optimism, and thoughtfulness.</p> <p>Sincerely,</p> <p>Bruce Childers<br /> Interim Dean and Professor of Computer Science<br /> School of Computing and Information</p> <p> </p> <p><a href="https://www.sci.pitt.edu/sites/default/files/PDFs/2021_pittsci_annual_report.pdf">View the 2021 Annual Report here.</a></p> </article> </div> </section> </div> </section> <aside class="col-sm-4 sidebar-second"> <div class="region region-sidebar-second"> <section aria-label="About" id="block-menu-block-2" class="block block-menu-block menu-block clearfix"> <h3 class="block-title" class="block__title">About</h3> <div class="menu-block-wrapper menu-block-2 menu-name-main-menu parent-mlid-0 menu-level-2"> <ul class="menu nav"><li class="first expanded active-trail menu-mlid-8503 active"><a href="/about/deans-annual-update" class="active-trail">Dean's Annual Update</a><ul class="menu nav"><li class="first leaf menu-mlid-9201"><a href="/about/deans-annual-update/deans-2022-annual-update">2022 Update</a></li> <li class="leaf active-trail active menu-mlid-9185 active"><a href="/about/deans-annual-update/deans-annual-update-2021" class="active-trail active">2021 Update</a></li> <li class="last leaf menu-mlid-8847"><a href="/about/deans-annual-update/2020-update">2020 Update</a></li> </ul></li> <li class="leaf menu-mlid-8504"><a href="/about/reputation-and-history">Reputation and History</a></li> <li class="leaf menu-mlid-8476"><a href="/about/departments-and-programs">Departments and Programs</a></li> <li class="leaf menu-mlid-8849"><a href="/about/institutes">Institutes</a></li> <li class="leaf menu-mlid-8739"><a href="https://www.sci.pitt.edu/recruiting" title="">Faculty Recruiting</a></li> <li class="leaf menu-mlid-9178"><a href="/about/committees">Committees</a></li> <li class="leaf menu-mlid-8505"><a href="/about/zoom-backgrounds">Zoom Backgrounds</a></li> <li class="leaf menu-mlid-8451"><a href="/about/contact-us">Contact Us</a></li> <li class="leaf menu-mlid-9183"><a href="/about/board-visitors">Board of Visitors</a></li> <li class="last leaf menu-mlid-9191"><a href="/about/sci-learning-academy">SCI Learning Academy</a></li> </ul></div> </section> <section aria-label="" id="block-nodesinblock-0" class="block block-nodesinblock clearfix"> <div class="nodesinblock first odd" id="nodesinblock-876"> <div class="node-876 node node-block block-type-image clearfix nodesinblock--image-only" about="/block/2023-sci-annual-report" typeof="sioc:Item foaf:Document"> <div class="block-column nodesinblock__column"> <a href="http://sci.pitt.edu/sites/default/files/PDFs/145405_pitt_sci_full_layout_digital.pdf" class="nodesinblock__link"> <div class="nodesinblock__title--absolute"> <!-- <div class="block-header"> --> <h3 class="nodesinblock__title">2023 SCI Annual Report</h3> <!-- </div> --> </div> <figure role="presentation"> <div class="nodesinblock__image-wrapper"><img src="/sites/default/files/block-img/2021cover1.jpg" alt="Image of someone's hands using a laptop" class="nodesinblock__image" /></div> </figure> </a> </div> </div> </div> </section> </div> </aside> <!-- /#sidebar-second --> </div> </div><!-- /#content-wrapper --> </div><!-- /.main-container --> <footer class="footer container-fluid"> <div class="container"> <div class="site_title"> <div class="footer-logo footer__logo"> <img src="/sites/all/themes/pitt_theme_spirit/img/pitt_shield_white.png" width="261" alt="University of Pittsburgh logo" /> <div class="region region-footer-logo"> <section aria-label="" id="block-views-title-block-block-3" class="block block-views clearfix"> <div class="view view-title-block view-id-title_block view-display-id-block_3 footer-site-info--title-block view-dom-id-0e83fda22142a296b68eae60447c9f7e"> <div class="view-content"> <div> <span class="single_title site_logo"><a href="/" class="site-info__title">School of Computing and Information</a></span> </div> </div> </div> </section> </div> </div> </div> <div class="region region-footer"> <section aria-label="" id="block-views-title-block-footer-title-block" class="block block-views block__address-block clearfix"> <div class="view view-title-block view-id-title_block view-display-id-footer_title_block footer--title-block view-dom-id-8a9d7643215180ec366123ac73bcf52e"> <div class="view-content"> <div> <div class="field-contact-info"> <p>Information Sciences Building, Fifth Floor<br /> 135 North Bellefield Avenue<br /> Pittsburgh, PA 15260</p> <p>412-383-4396</p> <p><a href="mailto:sciadmit@pitt.edu">sciadmit@pitt.edu</a></p> </div> </div> </div> </div> </section> <section aria-label="" id="block-nodesinblock-1" class="block block-nodesinblock clearfix"> <div class="nodesinblock first last odd" id="nodesinblock-207"> <div class="node-207 node node-block block-type-with-text nodesinblock--with-text clearfix nodesinblock--default" about="/block/resources-footer-block" typeof="sioc:Item foaf:Document"> <div class="block-column nodesinblock__column"> <div name="Resources Footer Block"> <h4>Resources<a href="https://www.coronavirus.pitt.edu/"></a></h4> <ul class="two-column"> <li><a href="/node/399">Departments and Programs</a></li> <li><a href="/node/501">Degrees and Programs</a></li> <li><a href="/node/333">Admissions</a></li> <li><a href="https://www.registrar.pitt.edu/calendars">Academic Calendar</a></li> <li><a href="https://courses.sci.pitt.edu">Course Schedule</a></li> <li><a href="/people">Faculty Directory</a></li> <li><a href="https://www.sci.pitt.edu/people/staff">Staff Directory</a></li> <li><a href="https://www.sci.pitt.edu/give-sci">Give Now</a></li> <li><a href="https://sciatpitt.wufoo.com/forms/q1emy2a21khuibd/">Submit Web Changes</a></li> </ul> </div> </div> </div> </div> </section> <section aria-label="" id="block-views-7991932e043137b92876af32e9d227ec" class="block block-views block__social-media clearfix"> <div class="view view-social-media-icons view-id-social_media_icons view-display-id-footer_social_block social-block footer--social-block view-dom-id-0091ac4e33d0a6d7add8b7986313a891"> <div class="view-content"> <div class="views-row views-row-1 views-row-odd views-row-first"> <div class="views-field views-field-nothing"> <span class="field-content"><a href="mailto:sciadmit@pitt.edu" target="_blank" title="Email Us"><span aria-label="Email Us" class="fa fa-envelope" aria-hidden="true"></span></a></span> </div> </div> <div class="views-row views-row-2 views-row-even"> <div class="views-field views-field-nothing"> <span class="field-content"><a href="https://www.facebook.com/SciPitt/" target="_blank" title="Find SCI on Facebook"><span aria-label="Find SCI on Facebook" class="fab fa-facebook-f" aria-hidden="true"></span></a></span> </div> </div> <div class="views-row views-row-3 views-row-odd"> <div class="views-field views-field-nothing"> <span class="field-content"><a href="https://twitter.com/SciPitt" target="_blank" title="Follow SCI Pitt on Twitter"><span aria-label="Follow SCI Pitt on Twitter" class="fab fa-twitter" aria-hidden="true"></span></a></span> </div> </div> <div class="views-row views-row-4 views-row-even"> <div class="views-field views-field-nothing"> <span class="field-content"><a href="https://www.linkedin.com/school/university-of-pittsburgh-school-of-computing-and-information/?viewAsMember=true" target="_blank" title="Follow SCI on LinkedIn"><span aria-label="Follow SCI on LinkedIn" class="fab fa-linkedin" aria-hidden="true"></span></a></span> </div> </div> <div class="views-row views-row-5 views-row-odd views-row-last"> <div class="views-field views-field-nothing"> <span class="field-content"><a href="https://www.instagram.com/pitt_sci/?hl=en" target="_blank" title="Follow SCI on Instagram"><span aria-label="Follow SCI on Instagram" class="fab fa-instagram" aria-hidden="true"></span></a></span> </div> </div> </div> </div> </section> </div> <div id="copyright" class="container-fluid footer__copyright"> <div class="region region-copyright"> <section aria-label="" id="block-block-1" class="block block-block clearfix"> <span>Revised 11/26/24</span><span>Copyright 2024</span> </section> </div> </div> </div> </footer> <script src="/sites/default/files/js/js_MRdvkC2u4oGsp5wVxBG1pGV5NrCPW3mssHxIn6G9tGE.js"></script> <script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"NRJS-b367e9f72e0ce8cc173","applicationID":"965156203","transactionName":"ZlxSYUECDURSUkNQVl8WZUdaTExeXVVSQRdBUUA=","queueTime":0,"applicationTime":353,"atts":"ShtRFwkYHko=","errorBeacon":"bam.nr-data.net","agent":""}</script></body> </html>