CINXE.COM
Departments and Programs | 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="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/departments-and-programs" /> <link rel="shortlink" href="https://www.sci.pitt.edu/node/399" /> <meta property="og:title" content="Departments and Programs" /> <meta property="og:updated_time" content="2021-05-05T15:54:42-04:00" /> <meta name="twitter:title" content="Departments and Programs" /> <meta property="article:published_time" content="2020-05-19T15:34:03-04:00" /> <meta property="article:modified_time" content="2021-05-05T15:54:42-04:00" /> <title>Departments and Programs | 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":"KFGDt6OMc-5CrTRvqwU4xQSif3H80NDEaj4hUhYgYgQ","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":{"landing_page_breakouts":{"displays":{"default":{"filters":[]}}},"title_block":{"displays":{"header_title_block":{"filters":[]},"footer_title_block":{"filters":[]},"block_3":{"filters":[]}}},"landing_page_header":{"displays":{"block":{"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\/departments-and-programs":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-399 node-type-landing-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-75ef3b21b58ec50815767e88ba269bae"> <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/departments-and-programs" 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-yAHU9BQ2o0RGx5uFvusl9Lgkav6UE5fgOnBOojDTnrk" /> <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 menu-mlid-8503"><a href="/about/deans-annual-update">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 menu-mlid-9185"><a href="/about/deans-annual-update/deans-annual-update-2021">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 active-trail active menu-mlid-8476 active"><a href="/about/departments-and-programs" class="active-trail active">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> </ol> <h1 class="page-header">Departments and Programs</h1> <div class="region region-content"> <section aria-label="" id="block-system-main" class="block block-system clearfix"> <div id="node-399" class="node node-landing-page clearfix" about="/about/departments-and-programs" typeof="sioc:Item foaf:Document"> <div> <span property="dc:title" content="Departments and Programs" class="rdf-meta element-hidden"></span> </div> <div class="field-body"> <p><img alt="" src="/sites/default/files/sci-images/faculty_recruiting_campus_image.jpg" style="width: 700px; height: 292px;" /></p> </div> <div class="field-section-overview"> <div class="view view-landing-page-breakouts view-id-landing_page_breakouts view-display-id-default view-dom-id-fb1583eeb27af0eb4bacae33a4cbf493"> <div class="view-content"> <div class="views-row views-row-1 views-row-odd views-row-first"> <div class="views-field views-field-field-section-image"> <div class="field-content"><a href="https://www.cs.pitt.edu/"> <figure class="field-section-image"> <img typeof="foaf:Image" class="img-responsive" src="https://www.sci.pitt.edu/sites/default/files/styles/section_image/public/landing-images/computer_science.jpg?itok=vLIgWQFk" width="270" height="140" alt="" /> </figure> </a></div> </div> <div class="views-field views-field-nothing group-text"> <span class="field-content"><a href="https://www.cs.pitt.edu/"> <h2 class="field-section-title"> Department of Computer Science </h2> </a> <p>How do you take a problem and abstract it in ways that the computer can understand it, then put the data structure and algorithms in place? Our computer science degree programs give students a deep understanding of computational thinking and the necessary research for future applications.</p> </span> </div> </div> <div class="views-row views-row-2 views-row-even"> <div class="views-field views-field-field-section-image"> <div class="field-content"><a href="https://www.dins.pitt.edu"> <figure class="field-section-image"> <img typeof="foaf:Image" class="img-responsive" src="https://www.sci.pitt.edu/sites/default/files/styles/section_image/public/landing-images/informatics_networked_systems.jpg?itok=nskZpqXO" width="270" height="140" alt="" /> </figure> </a></div> </div> <div class="views-field views-field-nothing group-text"> <span class="field-content"><a href="https://www.dins.pitt.edu"> <h2 class="field-section-title"> Department of Informatics & Networked Systems </h2> </a> <p>These degree programs look at both the physical technology and enabling processes to share information and keep it secure, plus the advanced knowledge essential for designing and managing information systems to meet the needs of businesses, people and society.</p> <p>Read more about how DINS students <a href="/about/departments-and-programs/how-pitt-students-use-data-and-machine-connections-solve-problems">use data and machine connections to solve problems</a>.</p> </span> </div> </div> <div class="views-row views-row-3 views-row-odd"> <div class="views-field views-field-field-section-image"> <div class="field-content"><a href="https://www.icds.pitt.edu/"> <figure class="field-section-image"> <img typeof="foaf:Image" class="img-responsive" src="https://www.sci.pitt.edu/sites/default/files/styles/section_image/public/landing-images/info_culture_data_steward.jpg?itok=ZbFvXGgm" width="270" height="140" alt="" /> </figure> </a></div> </div> <div class="views-field views-field-nothing group-text"> <span class="field-content"><a href="https://www.icds.pitt.edu/"> <h2 class="field-section-title"> Department of Information Culture & Data Stewardship </h2> </a> <p>Information professionals are the human interface that connects people, information and technology. These degree programs provide a strong grounding in the skills, knowledge and ethical practices of the information professions and share insights into the broader role of information in culture and society.</p> <p>Read more about how graduates of the MLIS degree program <a href="/about/departments-and-programs/why-mlis-graduates-excel-information-professions">excel in the information professions</a>.</p> </span> </div> </div> <div class="views-row views-row-4 views-row-even"> <div class="views-field views-field-field-section-image"> <div class="field-content"><a href="https://cmsp.pitt.edu/"> <figure class="field-section-image"> <img typeof="foaf:Image" class="img-responsive" src="https://www.sci.pitt.edu/sites/default/files/styles/section_image/public/landing-images/forbesviews-2579_web_1.jpg?itok=u12kXpyv" width="270" height="140" alt="" /> </figure> </a></div> </div> <div class="views-field views-field-nothing group-text"> <span class="field-content"><a href="https://cmsp.pitt.edu/"> <h2 class="field-section-title"> Computational Modeling & Simulation Program </h2> </a> <p>The Computational Modeling & Simulation degree program is an integrated program of creative and independent research, course work and teaching. Students pursue research in diverse areas including computer science, engineering, math, psychology and physics.</p> </span> </div> </div> <div class="views-row views-row-5 views-row-odd views-row-last"> <div class="views-field views-field-field-section-image"> <div class="field-content"><a href="http://isp.pitt.edu/"> <figure class="field-section-image"> <img typeof="foaf:Image" class="img-responsive" src="https://www.sci.pitt.edu/sites/default/files/styles/section_image/public/landing-images/intelligent_systems.jpg?itok=eQpDhJPJ" width="270" height="140" alt="" /> </figure> </a></div> </div> <div class="views-field views-field-nothing group-text"> <span class="field-content"><a href="http://isp.pitt.edu/"> <h2 class="field-section-title"> Intelligent Systems Program </h2> </a> <p>The Intelligent Systems Program (ISP) is a multidisciplinary graduate program dedicated to applied artificial intelligence (AI). Students will have the opportunity to study specialized areas of AI with faculty members across the University—the School of Medicine, the School of Education, the School of Law, Swanson School of Engineering, the Dietrich School of Arts & Sciences, and more.</p> </span> </div> </div> </div> </div> </div> </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 collapsed menu-mlid-8503"><a href="/about/deans-annual-update">Dean's Annual Update</a></li> <li class="leaf menu-mlid-8504"><a href="/about/reputation-and-history">Reputation and History</a></li> <li class="leaf active-trail active menu-mlid-8476 active"><a href="/about/departments-and-programs" class="active-trail active">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-02c23ec7446c72a0da43777635a379b4"> <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-0a61766f923d63f24060a92f4e564054"> <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-416755e9fc111205f5b0c1f1ed5bf69b"> <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/22/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":396,"atts":"ShtRFwkYHko=","errorBeacon":"bam.nr-data.net","agent":""}</script></body> </html>