Анализ сайта engineerthefuture.ca
Основное Готовность: 75%
Домен
engineerthefuture.ca
Состояние доменного имени
?
Проверяем корректность доменного имени и наличие технических проблем на уровне домена.
Длина домена велика. Но если вы продвигаете запрос, входящий в название домена, то это хорошо.
Домен второго уровня идеален для продвижения.
Ответ сервера
200 Успешный ответ
HTTP-код ответа и цепочка редиректов
?
Код 200 — страница доступна. Коды 3xx — редиректы (цепочки замедляют загрузку и размывают ссылочный вес). Коды 4xx/5xx — ошибки, поисковик не сможет проиндексировать страницу.
Сервер настроен корректно.
Цепочка редиректов:
http://engineerthefuture.ca
301 MovedPermanently
https://uwaterloo.ca/engineering
200 OK
Безопасность
Сайт безопасен
Использование HTTPS и SSL-сертификат
?
HTTPS — обязательный стандарт. Google и Яндекс отдают предпочтение защищённым сайтам. Отсутствие SSL или просроченный сертификат ведут к предупреждениям в браузере и снижению позиций.
На сайте работает защищенный протокол ssl и сайт открывается по https.
Ssl-сертификат действителен до 04.10.2026 22:45:22.
Включён HSTS (Strict-Transport-Security) — защита от подмены на http.
HTTP автоматически перенаправляется на HTTPS.
Поздравляем! Сайт не содержится в реестре РКН.
Кодировка
utf-8
Кодировка символов страницы
?
Стандарт — UTF-8. Неправильная кодировка вызывает нечитаемые символы и мешает поисковику корректно распознать текст страницы.
Указана кодировка на странице utf-8.
Язык
en
Атрибут lang в HTML-теге
?
Атрибут lang (<html lang="ru">) сообщает поисковикам и браузерам, на каком языке написана страница. Помогает при ранжировании в региональном поиске.
Язык документа указан явно: en.
Скорость загрузки
~0,67сек
Время отклика сервера (TTFB)
?
Time To First Byte — время до получения первого байта от сервера. Норма до 200 мс. Медленный отклик ухудшает пользовательский опыт и ранжирование: Яндекс и Google учитывают скорость страниц.
Скорость загрузки сайта 0,67сек оптимальна.
Объем документа
224Кб
Размер HTML-кода страницы
?
Слишком большой HTML замедляет парсинг браузером и сканирование поисковым роботом. Рекомендуется не более 200 Кб.
Объем html-документа 224Кб оптимален.
Структура html-документа корректна.
Ресурсы
Ресурсы: 11
Внешние ресурсы страницы (CSS, JS, изображения)
?
Количество и тип подключённых ресурсов влияют на скорость загрузки. Большое число запросов увеличивает время рендеринга страницы.
Кол-во файлов ресурсов 11 много для одной страницы. Приемлемо до 10. Проведите оптимизацию файлов ресурсов!
Показать полный список ресурсов
| Тип | Название | Значение |
|---|---|---|
| stylesheet | https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;700&family=Barlow:wght@400;500;700&display=swap | |
| stylesheet | https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;700&family=Barlow:wght@400;500;700&display=swap | |
| stylesheet | /engineering/sites/default/files/css/css_hKxjyRVGS2Y-MEHEQ_mM6AiOO6s4LN03sGW2pMi-PjQ.css | |
| stylesheet | /engineering/sites/default/files/css/css_pLXwhCKciruf2CfL9hrTstR6YgC68MU-zu4ezR5tceA.css | |
| js | https://www.googletagmanager.com/gtag/js?id=G-S49HGT3B6G | |
| js | /engineering/sites/default/files/js/js_fiSKtK3xDKX3CN6FqZ5A7iSsMHzNVcEcYZMmAGzNHiw.js | |
| js | https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-AMS_HTML | |
| js | /engineering/sites/default/files/js/js_7OovL_Ja3SYrR_7fUB6dy-bnw7WSSswQBp8U6HV8lrc.js | |
| js | https://cdn.jsdelivr.net/npm/jquery-validation@1.17.0/dist/jquery.validate.min.js | |
| js | /engineering/profiles/uw_base_profile/modules/contrib/clientside_validation/clientside_validation_jquery/js/cv.jquery.validate.js?tizgzd | |
| js | /engineering/sites/default/files/js/js_BUrhtUqX710GoVti5CEB59L65nZaqRg1OIyaiX3k2Vc.js |
Серверные заголовки
Кол-во: 24
HTTP-заголовки ответа сервера
?
Заголовки сервера передают браузеру и поисковику служебную информацию: кеширование, безопасность (CSP, HSTS), сжатие (gzip). Правильная настройка ускоряет загрузку и повышает защищённость.
Найдены серверные заголовки 24шт. Подробнее про серверные заголовки.
Показать полный список серверных заголовков
| Ключ | Значение |
|---|---|
| Cache-Control | public, max-age=21600 |
| ETag | W/"1787452437" |
| Server | nginx |
| Strict-Transport-Security | max-age=31622400 |
| X-Content-Type-Options | nosniff |
| x-drupal-cache | HIT |
| x-drupal-dynamic-cache | MISS |
| X-Frame-Options | SAMEORIGIN |
| x-generator | Drupal 9 (https://www.drupal.org) |
| x-pantheon-styx-hostname | styx-ca-a-565f474dbb-c4d86 |
| x-styx-req-id | 3de52465-9e9b-11f1-8d36-de3411dba74c |
| X-UA-Compatible | IE=edge |
| Age | 12669 |
| Accept-Ranges | bytes |
| Via | 1.1 varnish |
| Date | Sun, 23 Aug 2026 06:06:11 GMT |
| X-Served-By | cache-yyz4576-YYZ, cache-fra-eddf8230133-FRA, cache-fra-eddf8230049-FRA |
| X-Cache | HIT, HIT, MISS |
| x-cache-hits | 16, 1, 0 |
| x-timer | S1787465171.185017,VS0,VE5 |
| Vary | Accept-Encoding |
| Content-Security-Policy | default-src 'self' 'unsafe-inline' 'unsafe-eval' data: https://uwaterloo.ca https://*.uwaterloo.ca https://maxcdn.bootstrapcdn.com https://*.google.com https://*.google-analytics.com https://*.googleapis.com https://*.gstatic.com https://*.googletagmanager.com https://*.googleusercontent.com https://*.googleadservices.com https://*.g.doubleclick.net https://6263835.fls.doubleclick.net https://ad.doubleclick.net https://14868352.fls.doubleclick.net https://cdnjs.cloudflare.com https://twitter.com https://*.twitter.com https://*.twimg.com https://*.facebook.com https://*.facebook.net https://scontent.xx.fbcdn.net https://*.youtube.com https://*.youtube-nocookie.com https://s.ytimg.com https://*.livestream.com https://*.webspellchecker.net https://cdn.mathjax.org https://*.addtoany.com https://*.vimeo.com https://*.vimeocdn.com https://cdn.leafletjs.com https://cdn-geoweb.s3.amazonaws.com https://cdn.maptiks.com https://api.tiles.mapbox.com https://d591zijq8zntj.cloudfront.net https://*.libanswers.com https://*.libchat.com https://secure.skype.com https://cdn-akamai.mookie1.com https://*.tiqcdn.com https://snap.licdn.com https://*.ads.linkedin.com https://secure.adnxs.com https://public.tableau.com https://codepen.io https://cpwebassets.codepen.io https://static.codepen.io https://public.codepenassets.com https://app.powerbi.com https://s.yimg.com https://sp.analytics.yahoo.com https://chat.socialintents.com https://hcaptcha.com https://newassets.hcaptcha.com https://code.jquery.com https://experience.arcgis.com https://api.mapbox.com https://www.instagram.com https://vuejs.org https://cdn.jsdelivr.net https://js-agent.newrelic.com https://bam.nr-data.net https://us-central1-pantheon-psapps.cloudfunctions.net https://cdn.ckeditor.com https://netdna.bootstrapcdn.com https://*.hotjar.com https://*.hotjar.io https://*.kuali.co https://drupal-oauth.mailchimp.com https://srv.stackadapt.com https://*.srv.stackadapt.com https://qvdt3feo.com https://origin.acuityplatform.com https://e.acuityplatform.com https://*.clarity.ms https://c.bing.com https://www.redditstatic.com https://events.reddit.com https://wat-2.test.technolutions.net https://wat.test.technolutions.net https://fw.cdn.technolutions.net https://mx.technolutions.net https://wat-backup.test.technolutions.net https://slate-technolutions-net.cdn.technolutions.net https://grad-apply-uwaterloo-ca.cdn.technolutions.net; img-src * data: |
| x-var-slug | /engineering |
| var-masked-host | uwat-engineering.uwaterloo.ca |
CMS
Система управления сайтом (движок)
?
CMS — это движок, на котором работает сайт (WordPress, 1C-Bitrix, Tilda и др.). Знание CMS помогает понять возможности SEO-оптимизации и подобрать подходящие инструменты. «Не определена» — вероятно, самописный сайт или нестандартная сборка.
Сайт работает на CMS Drupal.
Веб-сервер
Программное обеспечение сервера
?
Веб-сервер — это ПО, которое отдаёт страницы посетителям (nginx, Apache, IIS, LiteSpeed и др.). Определяется по серверным заголовкам ответа (Server, X-Powered-By и т.п.). «Не определён» — сервер намеренно скрывает эти заголовки, это нормальная практика безопасности.
Сайт работает на веб-сервере nginx.
Мета-теги Готовность: 23%
Title
Canada's Largest Engineering School | Engineering | University of Waterloo
Заголовок страницы в браузере и поисковой выдаче
?
Title — главный SEO-заголовок страницы. Влияет на CTR в поиске и ранжирование. Оптимальная длина: 50–70 символов. Ключевые слова — ближе к началу.
Устраните дубли в title: engineering(2)
Необходимо уменьшить число символов в title (текущее значение: 79, оптимально: от 40 до 45)
Description
Ranked among the top 50 engineering schools worldwide, Waterloo Engineering is committed to leading engineering education and research.
Описание страницы в поисковой выдаче (сниппет)
?
Meta Description — текст под заголовком в выдаче. Напрямую на позиции не влияет, но влияет на CTR. Оптимальная длина: 120–160 символов.
Необходимо уменьшить число символов в description (текущее значение: 135, оптимально: от 120 до 130)
Keywords
Список ключевых слов страницы (устаревший тег)
?
Meta Keywords не учитывается Яндексом и Google для ранжирования с 2009–2012 годов. Заполнение не обязательно, но не вредит. Конкурент может использовать содержимое для анализа.
Установите мета-тег keywords!
Канонический Url
https://uwaterloo.ca/engineering/
Указывает поисковику основную версию страницы
?
Canonical (rel=canonical) предотвращает проблему дублей страниц. Должен точно совпадать с URL проверяемой страницы. Неправильный canonical может передать ссылочный вес на другую страницу.
В каноническом Url обнаружен лишний слэш (/).
Robots
Ошибок нет
Директивы для поисковых роботов на уровне страницы
?
Meta Robots управляет индексацией конкретной страницы: index/noindex — индексировать ли, follow/nofollow — следовать ли по ссылкам. Noindex полностью исключает страницу из поиска.
Meta-тег robots не указан. Страница свободна для индексации.
Адаптивность
width=device-width, initial-scale=1.0
Настройка масштабирования на мобильных устройствах
?
Тег viewport (<meta name="viewport">) сообщает браузеру, как масштабировать страницу на мобильных. Стандарт: width=device-width, initial-scale=1. Отсутствие — признак отсутствия мобильной версии.
Meta-тег viewport со значением-константой width=device-width задаёт ширину страницы в соответствии с размером экрана.
Meta-тег viewport со значением initial-scale=1.0 определяет масштаб 1:1, т.е. «не масштабировать».
Разметка OpenGraph
Кол-во: 6
Мета-теги для красивых превью в соцсетях
?
OpenGraph (og:title, og:description, og:image) управляет тем, как страница выглядит при репосте в социальных сетях и мессенджерах. Отсутствие OG-тегов — невзрачный превью при шеринге.
Разметка OpenGraph задана. Страница оптимизирована под социальные сети.
Показать полный список og мета-тегов
| Тип | Значение |
|---|---|
| og:url | https://uwaterloo.ca/engineering/ |
| og:title | Canada's Largest Engineering School | Engineering | University of Waterloo |
| og:description | Ranked among the top 50 engineering schools worldwide, Waterloo Engineering is committed to leading engineering education and research. |
| og:image | https://uwaterloo.ca/engineering/sites/default/files/uploads/images/eng_stack_rgb.jpg |
| og:updated_time | 2026-08-10T14:55:27-04:00 |
| og:locale | en_CA |
Все мета-теги
Кол-во: 12
Полный список мета-тегов страницы
?
Таблица всех meta-тегов, включая нестандартные. Позволяет найти опечатки, дубли и лишние теги.
Найдены мета-теги 12шт. Мета-теги не видимы для человека и предназначены для обмена информацией между веб-страницей и поисковыми системами, браузерами и другими веб-службами. С ними роботы 🤖 и устройства ведут себя более ожидаемо.
Показать полный список мета-тегов
| Тип | Название | Значение |
|---|---|---|
| name | description | Ranked among the top 50 engineering schools worldwide, Waterloo Engineering is committed to leading engineering education and research. |
| name | twitter:card | summary_large_image |
| name | Generator | Drupal 9 (https://www.drupal.org) |
| name | MobileOptimized | width |
| name | HandheldFriendly | true |
| name | viewport | width=device-width, initial-scale=1.0 |
| property | og:url | https://uwaterloo.ca/engineering/ |
| property | og:title | Canada's Largest Engineering School | Engineering | University of Waterloo |
| property | og:description | Ranked among the top 50 engineering schools worldwide, Waterloo Engineering is committed to leading engineering education and research. |
| property | og:image | https://uwaterloo.ca/engineering/sites/default/files/uploads/images/eng_stack_rgb.jpg |
| property | og:updated_time | 2026-08-10T14:55:27-04:00 |
| property | og:locale | en_CA |
Оптимизация Готовность: 82%
Структура
Ошибок нет
Семантические HTML-элементы страницы
?
Проверяет наличие основных структурных элементов: nav, header, footer, main. Корректная семантическая структура помогает поисковику понять архитектуру страницы.
Структура документа корректна (теги <html> и <body> присутствуют по одному на документ).
Контент
Ошибок нет
Объём и качество текстового содержимого
?
Анализирует объём полезного текста на странице. Слишком мало — страница может считаться малополезной. Слишком много — ухудшается читаемость и восприятие.
Слова из title 6 встречаются в тексте достаточно.
Абзацев с текстом 14 достаточно.
Среднее число слов в абзаце 36 достаточно.
Кол-во знаков контента 9123 на странице оптимально.
Кол-во слов 1249 на странице оптимально.
Заголовки
Ошибок нет
Иерархия заголовков H1–H6
?
H1 должен быть один и содержать ключевой запрос. H2–H6 описывают подразделы. Пропуск уровней (H1 → H3) и несколько H1 — типичные ошибки, снижающие понятность страницы для поисковика.
На странице присутствуют заголовки <h1> 1. Это прекрасно.
На странице присутствуют заголовки <h2> 8. Это хорошо.
На странице присутствуют заголовки <h3> 2.
Тошнота
6,71
Насколько одно слово доминирует в тексте
?
Классическая тошнота = √(частота самого повторяющегося слова). Норма до 7–8: текст воспринимается естественно. Выше — поисковик может счесть страницу переспамленной.
Тошнота превышает норму 3. Измените текст страницы!
Академич. тошнота
22,98%
Насколько текст перенасыщен ключевыми словами
?
Академическая тошнота = (частота слова / общее количество слов) × 100%. Показывает долю конкретного слова в тексте. Норма 5–15%.
Академическая тошнота превышает норму 5-15%. Измените текст страницы!
Семантическое ядро
20
Наиболее часто встречающиеся слова на странице
?
Топ слов по частоте использования. Показывает, какие слова доминируют в тексте с точки зрения поисковика.
Контент страницы содержит осмысленный текст и слова.
Показать список слов
| Слово | Кол-во | Частота |
|---|---|---|
| engineering | 45 | 3,60% |
| waterloo | 25 | 2,00% |
| students | 17 | 1,36% |
| research | 14 | 1,12% |
| alumni | 12 | 0,96% |
| faculty | 10 | 0,80% |
| future | 9 | 0,72% |
| graduate | 9 | 0,72% |
| events | 8 | 0,64% |
| support | 7 | 0,56% |
| awards | 7 | 0,56% |
| information | 7 | 0,56% |
| reunion | 7 | 0,56% |
| university | 7 | 0,56% |
| funding | 6 | 0,48% |
| program | 6 | 0,48% |
| student | 6 | 0,48% |
| international | 6 | 0,48% |
| masters | 6 | 0,48% |
| campus | 5 | 0,40% |
Индексация Готовность: 0%
Индексирование
Есть ошибки
Разрешено ли индексирование страницы
?
Проверяет, не закрыта ли страница от индексации через robots.txt, meta robots или X-Robots-Tag. Страница, закрытая от индексации, не появится в поисковой выдаче.
Анкоров на странице 246 слишком много. Проведите ревизию и оптимизацию ссылок сайта.
Robots.txt
Найден корректный robots.txt
Файл управления сканированием сайта роботами
?
Robots.txt указывает поисковым роботам, какие страницы сканировать, а какие — нет. Ошибки в файле могут случайно закрыть важные разделы от индексации.
Robots.txt настроен корректно. Размер файла: 229872 байт. Загружен за: 1сек.
Проверяемая страница не запрещена в robots.txt.
Robots.txt доступен по постоянному адресу
Цепочка редиректов для файла robots.txt:
http://engineerthefuture.ca/robots.txt
301 MovedPermanently
https://uwaterloo.ca/engineering
200 OK
Показать содержимое robots.txt
<!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/ og: http://ogp.me/ns# rdfs: http://www.w3.org/2000/01/rdf-schema# schema: http://schema.org/ 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# " class="no-js">
<head>
<meta charset="utf-8" /><script type="text/javascript">(window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:["bam.nr-data.net"]},feature_flags:["soft_nav"],distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"1588852203",accountID:"4019178",trustKey:"66686",xpid:"UAYGWFdUABABUVVWAAcBX1QI",licenseKey:"NRJS-3ae1c2eb491021d5ef6",applicationID:"1544766909",browserID:"1588852203"};;/*! For license information please see nr-loader-spa-1.320.1.min.js.LICENSE.txt */
(()=>{var e={8122(e,t,r){"use strict";r.d(t,{a:()=>s});var n=r(944);function s(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)),i=0===Object.keys(r).length?e:r;for(let a in i)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]])):e[a]instanceof Map||e[a]instanceof Set||e[a]instanceof Date||e[a]instanceof RegExp?r[a]=e[a]:"object"==typeof e[a]&&null!==t[a]&&"object"==typeof t[a]?r[a]=s(e[a],t[a]):r[a]=e[a]}catch(e){r[a]||(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555(e,t,r){"use strict";r.d(t,{f:()=>a});var n=r(384),s=r(8122);const i={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};function a(e){try{return!!e.licenseKey&&!!e.errorBeacon&&!!e.applicationID}catch(e){return!1}}r.d(t,["D",0,e=>(0,s.a)(e,i)])},7699(e,t,r){"use strict";var n=r(860);const s={[n.K7.logging]:!0,[n.K7.genericEvents]:!0,[n.K7.jserrors]:!0,[n.K7.ajax]:!0};r.d(t,["It",0,1e6,"KC",0,s,"qh",0,"SESSION_ERROR"])},9324(e,t,r){"use strict";r.d(t,["A",0,"@newrelic/rrweb","x",0,"1.320.1"])},981(e,t,r){"use strict";r.d(t,["R",0,{AJAX:"AjaxRequest",PA:"PageAction",UA:"UserAction",BP:"BrowserPerformance",WS:"WebSocket",SPV:"SecurityPolicyViolation",JSE:"JavaScriptError",LOG:"Log",PVE:"PageView",PVT:"PageViewTiming",SR:"SessionReplay",ST:"SessionTrace",BI:"BrowserInteraction"}])},9752(e,t,r){"use strict";const n="newrelic-iframe-",s=n+"timing-update",i=n+"api",a=n+"api-response",o=n+"vitals-update",c=n+"ajax";r.d(t,["$8",0,o,"Gi",0,a,"KU",0,c,"Pl",0,n,"cS",0,i,"cr",0,s])},6154(e,t,r){"use strict";var n=r(1863);const s="undefined"!=typeof window&&!!window.document,i="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=s?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),o=Boolean("hidden"===a?.document?.visibilityState),c=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=d&&"undefined"==typeof SharedWorker,l=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),f=Date.now()-(0,n.t)();r.d(t,["OF",0,d,"RI",0,s,"WN",0,f,"bv",0,i,"gm",0,a,"lR",0,l,"m",0,c,"mw",0,o,"sb",0,u,"zk",0,()=>{const e=a?.performance?.getEntriesByType?.("navigation")?.[0];if(e&&e.responseStart>0&&e.responseStart<a.performance.now())return e}])},7295(e,t,r){"use strict";r.d(t,{Xv:()=>a,gX:()=>s,iW:()=>i});var n=[];function s(e){if(!e||i(e))return!1;if(0===n.length)return!0;if("*"===n[0].hostname)return!1;for(var t=0;t<n.length;t++){var r=n[t];if(r.hostname.test(e.hostname)&&r.pathname.test(e.pathname))return!1}return!0}function i(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;if("*"===r)return void(n=[{hostname:"*"}]);0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const s=r.indexOf("/");let i,a;s>0?(i=r.substring(0,s),a=r.substring(s)):(i=r,a="*");let[c]=i.split(":");n.push({hostname:o(c),pathname:o(a,!0)})}}function o(e,t=!1){const r=e.replace(/[.+?^${}()|[\]\\]/g,e=>"\\"+e).replace(/\*/g,".*?");return new RegExp((t?"^":"")+r+"$")}},3241(e,t,r){"use strict";r.d(t,{W:()=>s});var n=r(6154);function s(e={}){try{n.gm.dispatchEvent(new CustomEvent("newrelic",{detail:e}))}catch(e){}}},1687(e,t,r){"use strict";r.d(t,{Ak:()=>o,Ze:()=>d,x3:()=>c});var n=r(3241),s=r(3606),i=r(860),a=r(2646);function o(e,t){if(!e)return;const r={staged:!1,priority:i.P3[t]||0};e.runtime.drainRegistry.get(t)||e.runtime.drainRegistry.set(t,r)}function c(e,t){if(!e)return;const r=e.runtime.drainRegistry;r&&(r.get(t)&&r.delete(t),l(e,t,!1),r.size&&u(e))}function d(e,t="feature",r=!1){if(e){if(!e.runtime.drainRegistry.get(t)||r)return l(e,t);e.runtime.drainRegistry.get(t).staged=!0,u(e)}}function u(e){if(!e)return;const t=Array.from(e.runtime.drainRegistry);t.every(([e,t])=>t.staged)&&(t.sort((e,t)=>e[1].priority-t[1].priority),t.forEach(([t])=>{e.runtime.drainRegistry.delete(t),l(e,t)}))}function l(e,t,r=!0){if(!e)return;const i=e.ee,o=s.i.handlers;if(i&&!i.aborted&&i.backlog&&o){if((0,n.W)({type:"lifecycle",name:"drain",feature:t}),r){const e=i.backlog[t],r=o[t];if(r){for(let t=0;e&&t<e.length;++t)f(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].listeners(e).includes(t[1])&&t[0].on(e,t[1])})})}}i.isolatedBacklog||delete o[t],i.backlog[t]=null,i.emit("drain-"+t,[])}}function f(e,t){var r=e[1];Object.values(t[r]||{}).forEach(t=>{var r=e[0];if(t[0]===r){var n=t[1],s=e[3],i=e[2];n.apply(s,i)}})}},7836(e,t,r){"use strict";var n=r(384),s=r(8990),i=r(2646),a=r(5607);const o="nr@context:".concat(a.W),c=function e(t,r){var n={},a={},u={},l=!1;try{l=16===r.length&&d.initializedAgents?.[r]?.runtime.isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var s=0;s<r.length;s++)r[s]===t&&r.splice(s,1)},emit:function(e,r,n,s,i){!1!==i&&(i=!0);if(c.aborted&&!s)return;t&&i&&t.emit(e,r,n);var o=h(n);g(e).forEach(e=>{e.apply(o,r)});var d=v()[a[e]];d&&d.push([f,e,r,o]);return o},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])=>{a[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()[a[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 i.y?e:e?(0,s.I)(e,o,()=>new i.y(o)):new i.y(o)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return u[t]=u[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=c),r.d(t,["P",0,o,"ee",0,c])},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:()=>s});var n=r(7836).ee.get("handle");function s(e,t,r,s,i){i?(i.buffer([e],s),i.emit(e,t,r)):(n.buffer([e],s),n.emit(e,t,r))}},3606(e,t,r){"use strict";r.d(t,{i:()=>i});var n=r(9908);i.on=a;var s=i.handlers={};function i(e,t,r,i){a(i||n.d,s,e,t,r)}function a(e,t,r,s,i){i||(i="feature"),e||(e=n.d);var a=t[i]=t[i]||{};(a[r]=a[r]||[]).push([e,s])}},3878(e,t,r){"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function s(e,t,r=!1,s){window.addEventListener(e,t,n(r,s))}function i(e,t,r=!1,s){document.addEventListener(e,t,n(r,s))}r.d(t,{DD:()=>i,jT:()=>n,sp:()=>s})},5607(e,t,r){"use strict";const n=(0,r(9566).bz)();r.d(t,["W",0,n])},9566(e,t,r){"use strict";r.d(t,{LA:()=>a,ZF:()=>o,bz:()=>i,el:()=>c});var n=r(6154);function s(e,t){return e?15&e[t]:16*Math.random()|0}function i(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".split("").map(e=>"x"===e?s(t,r++).toString(16):"y"===e?(3&s()|8).toString(16):e).join("")}function a(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 o=0;o<e;o++)a.push(s(r,i++).toString(16));return a.join("")}function o(){return a(16)}function c(){return a(32)}},2614(e,t,r){"use strict";r.d(t,["BB",0,18e5,"Wt",0,"NRBA_SESSION::","g",0,{OFF:0,FULL:1,ERROR:2},"iL",0,{SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},"tS",0,{STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},"wk",0,144e5])},733(e,t,r){"use strict";function n(e,t){return function(e){let t=2166136261;for(let r=0;r<e.length;r++)t^=e.charCodeAt(r),t=Math.imul(t,16777619);return(t>>>0).toString(16).padStart(8,"0")}("".concat(String(e),":").concat(String(t)))}r.d(t,{Y:()=>n})},1863(e,t,r){"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},9119(e,t,r){"use strict";r.d(t,{L:()=>i});var n=/([^?#]*)[^#]*(#[^?]*|$).*/,s=/([^?#]*)().*/;function i(e,t){return e?e.replace(t?n:s,"$1$2"):e}},7485(e,t,r){"use strict";r.d(t,{D:()=>s});var n=r(6154);function s(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{}}}},7866(e,t,r){"use strict";r.d(t,["Nc",0,/^\s*at Function code \(Function code:\d+:\d+\)\s*/i,"cn",0,/^\s*(?:([^@]*)(?:\(.*?\))?@)?((?:file|http|https|chrome|safari-extension).*?):(\d+)(?::(\d+))?\s*$/i,"fL",0,/^\s*at .+ \(eval at \S+ \((?:(?:file|http|https):[^)]+)?\)(?:, [^:]*:\d+:\d+)?\)$/i,"h3",0,/function (.+?)\s*\(/,"hB",0,/^\s*at (?:((?:\[object object\])?(?:[^(]*\([^)]*\))*[^()]*(?: \[as \S+\])?) )?\(?((?:file|http|https|chrome-extension):.*?)?:(\d+)(?::(\d+))?\)?\s*$/i])},944(e,t,r){"use strict";r.d(t,{R:()=>s});var n=r(3241);function s(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),(0,n.W)({drained:null,type:"data",name:"warn",feature:"warn",data:{code:e,secondary:t}}))}},8990(e,t,r){"use strict";r.d(t,{I:()=>s});var n=Object.prototype.hasOwnProperty;function s(e,t,r){if(n.call(e,t))return e[t];var s=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:s,writable:!0,enumerable:!1}),s}catch(e){}return e[t]=s,s}},6389(e,t,r){"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let s;return(...r)=>{n&&void 0===s&&(e.apply(this,r),s=setTimeout(()=>{s=clearTimeout(s)},t)),n||(clearTimeout(s),s=setTimeout(()=>{e.apply(this,r)},t))}}function s(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>s,s:()=>n})},1910(e,t,r){"use strict";r.d(t,{i:()=>i});var n=r(944);const s=new Map;function i(...e){return e.every(e=>{if(s.has(e))return s.get(e);const t="function"==typeof e?e.toString():"",r=t.includes("[native code]"),i=t.includes("nrWrapper");return r||i||(0,n.R)(64,e?.name||t),s.set(e,r),r})}},3304(e,t,r){"use strict";r.d(t,{A:()=>s});var n=r(7836);function s(e){try{return JSON.stringify(e,(()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}})())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},5718(e,t,r){"use strict";r.d(t,{AZ:()=>m,Qr:()=>E,QL:()=>v});var n=r(6154),s=r(1863),i=r(9119),a=r(7866);class o{dom=new c;performance=new c;constructor(e){this.url=e,this.claimedBy=new Set}get script(){const e=Math.max(this.dom.start,this.performance.end);return{start:e,end:Math.max(this.dom.end,this.performance.end,e)}}}class c{start=0;end=0;value=void 0}function d(e=()=>{},t){return{get:()=>void 0!==t?t:e(),set:e=>{t=e}}}let u;try{u=m(v())[0]}catch(e){u=m(e)[0]}const l=e=>"script"===e.initiatorType||["link","fetch"].includes(e.initiatorType)&&(0,i.L)(e.name).endsWith(".js"),f=new Map;let h=[];function p(e){return f.get(e)}function g(e){const t=p(e);if(t)return t;const r=new o(e);if(f.set(e,r),f.size>1e3){const e=f.keys().next().value;f.delete(e)}return r}if(n.gm.MutationObserver&&n.gm.document){new MutationObserver(e=>{e.forEach(e=>{e.addedNodes.forEach(e=>{if("SCRIPT"===e.nodeName&&e.src){const t=g((0,i.L)(e.src));t.dom.start=(0,s.t)(),t.dom.value=e;const r=()=>{t.dom.end=(0,s.t)()};["load","error"].forEach(t=>e.addEventListener(t,r,{once:!0}))}})})}).observe(n.gm.document,{childList:!0,subtree:!0})}if(n.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().filter(l).forEach(e=>{const t=g((0,i.L)(e.name));t.performance.start=Math.floor(e.startTime),t.performance.end=Math.floor(e.responseEnd),t.performance.value=e;const r=[];h.forEach(({test:t,addedAt:n},i)=>{(t(e)||(0,s.t)()-n>1e4)&&r.push(i)}),h=h.filter((e,t)=>!r.includes(t))})}).observe({type:"resource",buffered:!0})}function m(e){if(!e||"string"!=typeof e)return[];const t=new Set,r=e.split("\n");for(const e of r){const r=e.match(a.cn)||e.match(a.hB)||e.match(a.fL);if(r&&r[2])t.add((0,i.L)(r[2]));else{const r=e.match(/\(([^)]+\.js):\d+:\d+\)/)||e.match(/^\s+at\s+([^\s(]+\.js):\d+:\d+/);r&&r[1]&&t.add((0,i.L)(r[1]))}}return[...t]}function v(){let e;try{const t=Error.stackTraceLimit;Error.stackTraceLimit=50,e=(new Error).stack,Error.stackTraceLimit=t}catch(t){e=(new Error).stack}return e}function y(e,t){return(0,i.L)(e.name)===t}function b(e,t){e.fetchStart=Math.floor(t.startTime),e.fetchEnd=Math.floor(t.responseEnd),e.asset=t.name,e.type=t.initiatorType}function E(e){const t=e?.id,r={registeredAt:(0,s.t)(),reportedAt:void 0,fetchStart:0,fetchEnd:0,scriptStart:0,scriptEnd:0,asset:void 0,type:"unknown"},a=v();if(!a)return r;const o=n.gm.performance?.getEntriesByType("navigation")?.[0]?.name||"";try{const e=m(a),c=(e.length>1?e.filter(e=>u!==e):e)[0];if(!c)return r;if(o.includes(c))return r.asset=(0,i.L)(o),r.type="inline",r;r.correlation=p(c);const l=r.correlation?.performance.value||n.gm.performance?.getEntriesByType("resource")?.find(e=>y(e,c));if(l)b(r,l);else{(function(e){if(!e||!n.gm.document)return!1;try{const t=n.gm.document.querySelectorAll('link[rel="preload"][as="script"]');for(const r of t)if((0,i.L)(r.href)===e)return!0}catch(e){}return!1})(c)&&(r.asset=c,r.type="preload"),function(e,t){n.gm.PerformanceObserver?.supportedEntryTypes?.includes("resource")&&h.push({addedAt:(0,s.t)(),test:r=>!!y(r,t)&&(b(e,r),!0)})}(r,c)}const f=r.correlation,g=!!t&&!!f?.claimedBy.has(t);f&&t&&f.claimedBy.add(t);const v=()=>{const e=f?.script.start;if(!g||!e)return!1;return r.registeredAt-e>1e4};Object.defineProperty(r,"scriptStart",d(()=>v()?r.registeredAt:f?.script.start??r.fetchEnd)),Object.defineProperty(r,"scriptEnd",d(()=>v()?r.registeredAt:f?.script.end??r.registeredAt))}catch(e){}return r}},5732(e,t,r){"use strict";r.d(t,{$5:()=>u,B5:()=>d,Ms:()=>i,NG:()=>s,Ux:()=>o,YA:()=>c,yx:()=>a});var n=r(5718);function s(e,t){if(!f(e,t))return;const r=t.runtime.registeredEntities;return r?.find(t=>t.metadata.target.iframeInterfaceId===e)}function i(e,t){if(!f(e,t))return[];const r=t.runtime.registeredEntities;return r?.filter(t=>String(t.metadata.target.id)===String(e)).map(e=>e.metadata.target)||[]}function a(e,t){if(!f(e,t))return[];const r=t.runtime.registeredEntities,n=r?.filter(t=>t.metadata.timings?.asset?.endsWith(e));return function(e){if(!e?.length)return e||[];const t=new Map,r=[];for(const n of e){const e=n.metadata?.timings?.asset;if(!e){r.push(n);continue}const s="".concat(e,"::").concat(n.metadata?.target?.id),i=t.get(s);if(i){if(i.metadata.target?.blocked&&!n.metadata.target?.blocked){const e=r.indexOf(i);-1!==e&&(r[e]=n),t.set(s,n)}}else t.set(s,n),r.push(n)}return r}(n).map(e=>e.metadata.target)}function o(e,t){if(!l(t))return{};const r=t.agentRef.runtime.appMetadata.agents[0].entityGuid;return e?e.attributes:{"entity.guid":r,appId:t.agentRef.info.applicationID}}function c(e,t){return d(e,t)?{"child.id":e.id,"child.type":e.type,...o(void 0,t)}:{}}function d(e,t){return!!e&&!!l(t)&&t.agentRef.init.api.register.duplicate_data_to_container}function u(e){if(!f(!0,e)||!e?.runtime?.registeredEntities?.length)return[void 0];const t=[];try{var r=(0,n.AZ)((0,n.QL)());let s=r.length-1;for(;r[s];)t.push(...a(r[s--],e))}catch(e){}const s=function(e){const t=new Set,r=[];for(const n of e){const e=n?.instance;t.has(e)||(t.add(e),r.push(n))}return r}(t);return s.length||s.push(void 0),s}function l(e){return 2===e?.harvestEndpointVersion}function f(e,t){return!!e&&!!t?.init.api.register.enabled}r.d(t,["fQ",0,{MFE:"MFE",BA:"BA"}])},5289(e,t,r){"use strict";r.d(t,{GG:()=>a,Qr:()=>c,sB:()=>o});var n=r(3878),s=r(6389);function i(){return"undefined"==typeof document||"complete"===document.readyState}function a(e,t){if(i())return e();const r=(0,s.J)(e),a=setInterval(()=>{i()&&(clearInterval(a),r())},500);(0,n.sp)("load",r,t)}function o(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}function c(e){if(i())return e();(0,n.sp)("popstate",e)}},384(e,t,r){"use strict";r.d(t,{Zm:()=>c,bQ:()=>u,dV:()=>d,pV:()=>l});var n=r(6154),s=r(1863),i=r(944),a=r(1910);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function c(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function d(){let e=c();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate||n.gm.setInterval,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},(0,a.i)(...Object.values(e.o))),e}function u(e,t){let r=c();r.initializedAgents??={},t.initializedAt={ms:(0,s.t)(),date:new Date},r.initializedAgents[e]=t,2===Object.keys(r.initializedAgents).length&&(0,i.R)(69)}function l(){return function(){let e=c();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=c();const t=e.init||{};e.init={...t}}(),d(),function(){let e=c();const t=e.loader_config||{};e.loader_config={...t}}(),c()}r.d(t,["NT",0,o])},2843(e,t,r){"use strict";r.d(t,{G:()=>i,u:()=>s});var n=r(3878);function s(e,t=!1,r,s){(0,n.DD)("visibilitychange",function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)},r,s)}function i(e,t,r){(0,n.sp)("pagehide",e,t,r)}},8139(e,t,r){"use strict";r.d(t,{u:()=>f});var n=r(7836),s=r(3434),i=r(8990),a=r(6154);const o={},c=a.gm.XMLHttpRequest,d="addEventListener",u="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e){var t=function(e){return(e||n.ee).get("events")}(e);if(o[t.debugId]++)return t;o[t.debugId]=1;var r=(0,s.YM)(t,!0);function f(e){r.inPlace(e,[d,u],"-",p)}function p(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,f),c&&h(c.prototype,f),h(a.gm,f)),t.on(d+"-start",function(e,t){var n=e[1];if(null!==n&&("function"==typeof n||"object"==typeof n)&&"newrelic"!==e[0]){var s=(0,i.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]=s}}),t.on(u+"-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,d);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434(e,t,r){"use strict";r.d(t,{YM:()=>d});var n=r(7836),s=r(5607),i=r(5732);const a="nr@original:".concat(s.W);var o=Object.prototype.hasOwnProperty,c=!1;function d(e,t,r){return e||(e=n.ee),s.inPlace=function(e,t,r,n,i,a){r||(r="");const o="-"===r.charAt(0);for(let c=0;c<t.length;c++){const d=t[c],u=e[d];l(u)||(e[d]=s(u,o?d+r:r,n,d,i,a))}},s.flag=a,s;function s(t,n,s,c,f,h){return l(t)?t:(n||(n=""),nrWrapper[a]=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)o.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var a,o,l,p;let g,m;try{o=this,a=[...arguments],m=h?(0,i.$5)(r):[void 0],l="function"==typeof s?s(a,o):s||{}}catch(t){u([t,"",[a,o,c],l],e)}d(n+"start",[a,o,c,m],l,f);const v=performance.now();let y;try{return p=t.apply(o,a),y=performance.now(),p}catch(e){throw y=performance.now(),d(n+"err",[a,o,e,m],l,f),g=e,g}finally{const e=y-v,t={start:v,end:y,duration:e,isLongTask:e>=50,methodName:c,thrownError:g};t.isLongTask&&d("long-task",[t,o,m],l,f),d(n+"end",[a,o,p,m],l,f)}}}function d(r,n,s,i){if(!c||t){var a=c;c=!0;try{e.emit(r,n,s,t,i)}catch(t){u([t,r,n,s],e)}c=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function l(e){return!(e&&"function"==typeof e&&e.apply&&!e[a])}r.d(t,["Jt",0,a])},9300(e,t,r){"use strict";const n=r(860).K7.ajax;r.d(t,["TZ",0,n,"f5",0,"ajaxRequest.id","mo",0,{NONE:"none",FAILURES:"failures",ALL:"all"}])},3333(e,t,r){"use strict";var n=r(981);const s=r(860).K7.genericEvents,i=[n.R.PA,n.R.UA,n.R.BP];r.d(t,["$v",0,{RESOURCES:"experimental.resources",REGISTER:"register"},"TZ",0,s,"Zp",0,["auxclick","click","copy","keydown","paste","scrollend"],"kd",0,i,"qN",0,["focus","blur"]])},6774(e,t,r){"use strict";const n=r(860).K7.jserrors;r.d(t,["T",0,n])},993(e,t,r){"use strict";const n=r(860).K7.logging;r.d(t,["A$",0,{OFF:0,ERROR:1,WARN:2,INFO:3,DEBUG:4,TRACE:5},"TZ",0,n,"p_",0,{ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"}])},3785(e,t,r){"use strict";r.d(t,{R:()=>c,b:()=>d});var n=r(9908),s=r(1863),i=r(860),a=r(3969),o=r(993);function c(e,t,r={},c=o.p_.INFO,d=!0,u,l=(0,s.t)()){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,i.K7.metrics,e),(0,n.p)("log",[l,t,r,c,d,u],void 0,i.K7.logging,e)}function d(e){return"string"==typeof e&&Object.values(o.p_).some(t=>t===e.toUpperCase().trim())}},3969(e,t,r){"use strict";const n=r(860).K7.metrics;r.d(t,["TZ",0,n,"XG",0,"storeEventMetrics","xV",0,"storeSupportabilityMetrics"])},6630(e,t,r){"use strict";const n=r(860).K7.pageViewEvent;r.d(t,["T",0,n])},782(e,t,r){"use strict";const n=r(860).K7.pageViewTiming;r.d(t,["T",0,n])},6344(e,t,r){"use strict";var n=r(2614);const s=r(860).K7.sessionReplay,i={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0};r.d(t,["Qb",0,{API:"api",RESUME:"resume",SWITCH_TO_FULL:"switchToFull",INITIALIZE:"initialize",PRELOAD:"preload"},"TZ",0,s,"Vh",0,"errorDuringReplay","_s",0,{DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},"bc",0,{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"}},"yP",0,i])},5270(e,t,r){"use strict";r.d(t,{Aw:()=>a,SR:()=>i,rF:()=>o});var n=r(384),s=r(7767);function i(e){return!!(0,n.dV)().o.MO&&(0,s.V)(e)&&!0===e?.session_trace.enabled}function a(e){return!0===e?.session_replay.preload&&i(e)}function o(e,t){try{if("string"==typeof t?.type){if("password"===t.type.toLowerCase())return"*".repeat(e?.length||0);if(void 0!==t?.dataset?.nrUnmask||t?.classList?.contains("nr-unmask"))return e}}catch(e){}return"string"==typeof e?e.replace(/[\S]/g,"*"):"*".repeat(e?.length||0)}},3738(e,t,r){"use strict";const n=r(860).K7.sessionTrace,s="-start",i="-end",a="fn"+s,o="fn"+i;r.d(t,["He",0,"bstResource","Kp",0,i,"Lc",0,o,"Rz",0,"pushState","TZ",0,n,"bD",0,"resource","bc",0,{CROSS_TAB:{message:"Session Entity was set to OFF on another tab"},ENTITLEMENTS:{message:"Session Trace is not allowed and will not be started"},RESET:{message:"Session was reset"},SESSION_CHANGED:{message:"Session identifier changed unexpectedly"}},"d3",0,s,"uP",0,a])},3962(e,t,r){"use strict";const n=r(860).K7.softNav;r.d(t,["O2",0,{INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},"OV",0,"popstate","Qu",0,{INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},"TZ",0,n,"ih",0,{IP:"in progress",PF:"pending finish",FIN:"finished",CAN:"cancelled"},"pP",0,"initialPageLoad","tC",0,["click","keydown","submit"]])},4234(e,t,r){"use strict";r.d(t,{W:()=>s});var n=r(1687);class s{constructor(e,t){this.agentRef=e,this.ee=e?.ee,this.featureName=t,this.blocked=!1}deregisterDrain(){(0,n.x3)(this.agentRef,this.featureName)}}},7767(e,t,r){"use strict";var n=r(6154);r.d(t,["V",0,e=>n.RI&&!0===e?.privacy.cookies_enabled])},8362(e,t,r){"use strict";r.d(t,{d:()=>i});var n=r(9566),s=r(1741);class i extends s.W{agentIdentifier=(0,n.LA)(16)}},1741(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(944),s=r(4261);class i{#e(e,...t){if(this[e]!==i.prototype[e])return this[e](...t);(0,n.R)(35,e)}addPageAction(e,t){return this.#e(s.hG,e,t)}register(e){return this.#e(s.eY,e)}recordCustomEvent(e,t){return this.#e(s.fF,e,t)}setPageViewName(e,t){return this.#e(s.Fw,e,t)}setCustomAttribute(e,t,r){return this.#e(s.cD,e,t,r)}noticeError(e,t){return this.#e(s.o5,e,t)}setUserId(e,t=!1){return this.#e(s.Dl,e,t)}setApplicationVersion(e){return this.#e(s.nb,e)}setErrorHandler(e){return this.#e(s.bt,e)}addRelease(e,t){return this.#e(s.k6,e,t)}log(e,t){return this.#e("log",e,t)}start(){return this.#e("start")}finished(e){return this.#e(s.BL,e)}recordReplay(){return this.#e(s.CH)}pauseReplay(){return this.#e(s.Tb)}addToTrace(e){return this.#e(s.U2,e)}setCurrentRouteName(e){return this.#e(s.PA,e)}interaction(e){return this.#e(s.dT,e)}wrapLogger(e,t,r){return this.#e(s.Wb,e,t,r)}measure(e,t){return this.#e(s.V1,e,t)}consent(e){return this.#e(s.Pv,e)}}},4261(e,t,r){"use strict";r.d(t,["BL",0,"finished","CH",0,"recordReplay","Dl",0,"setUserId","Fw",0,"setPageViewName","PA",0,"setCurrentRouteName","Pv",0,"consent","Tb",0,"pauseReplay","U2",0,"addToTrace","V1",0,"measure","Wb",0,"wrapLogger","bt",0,"setErrorHandler","cD",0,"setCustomAttribute","dT",0,"interaction","eY",0,"register","fF",0,"recordCustomEvent","hG",0,"addPageAction","hw",0,"api-ixn-","k6",0,"addRelease","nb",0,"setApplicationVersion","o5",0,"noticeError"])},1738(e,t,r){"use strict";r.d(t,{U:()=>l,Y:()=>u});var n=r(3241),s=r(9908),i=r(1863),a=r(944),o=r(3969),c=r(8362),d=r(860);function u(e,t,r,i){const u=i||r;!u||u[e]&&u[e]!==c.d.prototype[e]||(u[e]=function(){(0,s.p)(o.xV,["API/"+e+"/called"],void 0,d.K7.metrics,r.ee),(0,n.W)({drained:!!r.runtime?.activatedFeatures,type:"data",name:"api",feature:"api-"+e,data:{}});try{return t.apply(this,arguments)}catch(e){(0,a.R)(23,e)}})}function l(e,t,r,n,a){const o=e.info;null===r?delete o.jsAttributes[t]:o.jsAttributes[t]=r,(a||null===r)&&(0,s.p)("api-"+n,[(0,i.t)(),t,r],void 0,"session",e.ee)}},8374(e,t,r){r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860(e,t,r){"use strict";const n="events",s="jserrors",i="browser/blobs",a="browser/logs",o={ajax:"ajax",genericEvents:"generic_events",jserrors:s,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations"},c={[o.pageViewEvent]:1,[o.pageViewTiming]:2,[o.metrics]:3,[o.jserrors]:4,[o.softNav]:5,[o.ajax]:6,[o.sessionTrace]:7,[o.sessionReplay]:8,[o.logging]:9,[o.genericEvents]:10},d={[o.pageViewEvent]:"rum",[o.pageViewTiming]:n,[o.ajax]:n,[o.softNav]:n,[o.metrics]:s,[o.jserrors]:s,[o.sessionTrace]:i,[o.sessionReplay]:i,[o.logging]:a,[o.genericEvents]:"ins"};r.d(t,["$J",0,d,"K7",0,o,"P3",0,c,"XX",0,s,"Yy",0,a,"df",0,i])}};const t={};function r(n){const s=t[n];if(void 0!==s)return s.exports;const i=t[n]={exports:{}};return e[n](i,i.exports,r),i.exports}r.m=e,r.d=(e,t)=>{if(Array.isArray(t))for(var n=0;n<t.length;){var s=t[n++],i=t[n++];r.o(e,s)?0===i&&n++:0===i?Object.defineProperty(e,s,{enumerable:!0,value:t[n++]}):Object.defineProperty(e,s,{enumerable:!0,get:i})}else for(var s in t)r.o(t,s)&&!r.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:t[s]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,n)=>(r.f[n](e,t),t),[])),r.u=e=>({212:"nr-spa-compressor",238:"nr-spa-iframe-message-handler",249:"nr-spa-recorder",478:"nr-spa"}[e]+"-1.320.1.min.js"),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e={},t="NRBA-1.320.1.PROD:";r.l=(n,s,i,a)=>{if(e[n])return void e[n].push(s);let o,c;if(void 0!==i){const e=document.getElementsByTagName("script");for(var d=0;d<e.length;d++){const r=e[d];if(r.getAttribute("src")==n||r.getAttribute("data-webpack")==t+i){o=r;break}}}if(!o){c=!0;var u={478:"sha512-YoskTYHPIrWG98sE4VYEwW1X1hRU7SYQ5gUkuum+Vnk9YpVQMgMbgG8lYKZpEY1t/BlMbhj5TcDkm4hd+iAoFg==",249:"sha512-J9cfahQHdbmusKS+pYtR4jLIuZaPm3/z+WR3hPZ0Kr4uam5dSP02IuHD0q2H6HdFn0nSXbH+NgataXtpXuefmw==",212:"sha512-qm5xRUse5eEodOYrSB0RiaDiJVRk6acEocDkpn89y/Sta3H5hsn8tkdcuxKplkKTvV8PR9RYjOr1XTPyeef6OA==",238:"sha512-8LyhnCBHH3+KEvagggDkCeTyGbF4Oh0ALm0Mqe3de/rRY54KvHpDHI+S7ELikMAH5K1tQsIj6t6jF+ul22D/yA=="};o=document.createElement("script"),o.charset="utf-8",r.nc&&o.setAttribute("nonce",r.nc),o.setAttribute("data-webpack",t+i),o.src=n,0!==o.src.indexOf(window.location.origin+"/")&&(o.crossOrigin="anonymous"),u[a]&&(o.integrity=u[a])}e[n]=[s];const l=(t,r)=>{o.onerror=o.onload=null,clearTimeout(f);const s=e[n];if(delete e[n],o.parentNode?.removeChild(o),s?.forEach(e=>e(r)),t)return t(r)},f=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),c&&document.head.appendChild(o)}})(),r.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="https://js-agent.newrelic.com/",(()=>{const e={38:0,788:0};r.f.j=(t,n)=>{let s=r.o(e,t)?e[t]:void 0;if(0!==s)if(s)n.push(s[2]);else{const i=new Promise((r,n)=>s=e[t]=[r,n]);n.push(s[2]=i);const a=r.p+r.u(t),o=new Error,c=n=>{if(r.o(e,t)&&(s=e[t],0!==s&&(e[t]=void 0),s)){const e=n&&("load"===n.type?"missing":n.type),r=n&&n.target&&n.target.src;o.message="Loading chunk "+t+" failed: ("+e+": "+r+")",o.name="ChunkLoadError",o.type=e,o.request=r,s[1](o)}};r.l(a,c,"chunk-"+t,t)}};const t=(t,n)=>{let[s,i,a]=n;var o,c,d=0;if(s.some(t=>0!==e[t])){for(o in i)r.o(i,o)&&(r.m[o]=i[o]);if(a)a(r)}for(t&&t(n);d<s.length;d++)c=s[d],r.o(e,c)&&e[c]&&e[c][0](),e[c]=0},n=self["webpackChunk:NRBA-1.320.1.PROD"]=self["webpackChunk:NRBA-1.320.1.PROD"]||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))})(),(()=>{"use strict";r(8374);var e=r(8362),t=r(860);const n=Object.values(t.K7);var s=r(384),i=r(1741);var a=r(2555),o=r(3333),c=r(9300);const d=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var u=r(2614),l=r(944),f=r(8122);const h="[data-nr-mask]",p=e=>(0,f.a)(e,(()=>{const e={feature_flags:[],experimental:{register:!1,resources:!1,iframe_bridge:!1,iframe_domains:[]},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0,capture_payloads:c.mo.NONE},api:{register:{get enabled(){return e.feature_flags.includes(o.$v.REGISTER)||e.experimental.register},set enabled(t){e.experimental.register=t},duplicate_data_to_container:!1,get allow_iframe_bridge(){return e.feature_flags.includes(o.$v.IFRAME_BRIDGE)||e.experimental.iframe_bridge},set allow_iframe_bridge(t){e.experimental.iframe_bridge=t},get iframe_domains(){return e.experimental.iframe_domains},set iframe_domains(t){Array.isArray(t)?e.experimental.iframe_domains=t:(0,l.R)(1,t)}}},browser_consent_mode:{enabled:!1},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1,capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(o.$v.RESOURCES)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:u.wk,inactiveMs:u.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){d(t)?e.mask_selector="".concat(t,",").concat(h):""===t||null===t?e.mask_selector=h:(0,l.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){d(t)?e.block_selector+=",".concat(t):""!==t&&(0,l.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,l.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]},web_sockets:{enabled:!1}}})());var g=r(6154),m=r(9324);let v=0;const y={buildEnv:"PROD",distMethod:"CDN",version:m.x,originTime:g.WN},b={consented:!1},E={activatedFeatures:void 0,appMetadata:{},configured:!1,get consented(){return this.session?.state?.consent||b.consented},set consented(e){b.consented=e},customTransaction:void 0,denyList:[],disabled:!1,drainRegistry:new Map,harvester:void 0,isolatedBacklog:!1,isRecording:!1,loaderType:void 0,maxBytes:3e4,obfuscator:void 0,onerror:void 0,ptid:void 0,releaseIds:{},session:void 0,timeKeeper:void 0,registeredEntities:[],jsAttributesMetadata:{bytes:0},get harvestCount(){return++v},listeningForIframeMessages:!1};var w=r(7836),R=r(3241);const A={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0};var T=r(9908),x=r(9752);function S(e,t={},n,o){let{init:c,info:d,loader_config:u,runtime:l={},exposed:h=!0}=t;if(!d){const e=(0,s.pV)();c=e.init,d=e.info,u=e.loader_config}var m;e.init=p(c||{}),e.loader_config=(m=u||{},(0,f.a)(m,A)),d.jsAttributes??={},g.bv&&(d.jsAttributes.isWorker=!0),e.info=(0,a.D)(d);const v=e.init;e.runtime??=(e=>{const t=(0,f.a)(e,E),r=Object.keys(y).reduce((e,t)=>(e[t]={value:y[t],writable:!1,configurable:!0,enumerable:!0},e),{});return Object.defineProperties(t,r)})(l),v.proxy.assets&&(e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e})(v.proxy.assets),e.runtime.configured||(Object.defineProperty(e,"beacons",{get:()=>[e.info.beacon,e.info.errorBeacon,e.init.proxy.assets,e.init.proxy.beacon].filter(Boolean)}),Object.defineProperty(e.runtime,"denyList",{get:()=>[...e.init.ajax.deny_list||[],...e.init.ajax.block_internal?e.beacons:[]]}),e.runtime.ptid=e.agentIdentifier,function(e){const t=(0,s.pV)();Object.getOwnPropertyNames(i.W.prototype).forEach(r=>{const n=i.W.prototype[r];if("function"!=typeof n||"constructor"===n)return;let s=t[r];e[r]&&!1!==e.exposed&&"micro-agent"!==e.runtime?.loaderType&&(t[r]=(...t)=>{const n=e[r](...t);return s?s(...t):n})})}(e),e.runtime.loaderType=n,e.ee=w.ee.get(e.agentIdentifier),e.exposed=h,(0,R.W)({drained:!!e.runtime.activatedFeatures,type:"lifecycle",name:"initialize",feature:void 0,data:e.config}),e.init.api.register.allow_iframe_bridge&&g.gm.addEventListener("message",t=>{"string"==typeof t.data?.type&&t.data.type.startsWith(x.Pl)&&(0,T.p)("iframe-message",[t],void 0,"IFRAME",e.ee)}),e.runtime.configured=!0)}var _=r(1863),O=r(4261),N=r(1738);var P=r(1687),L=r(4234),k=r(5289),C=r(5270),I=r(7767),j=r(6389),M=r(7699);const D=new WeakSet;class B extends L.W{constructor(e,t){super(e,t),this.abortHandler=void 0,this.featAggregate=void 0,this.loadedSuccessfully=void 0,this.onAggregateImported=new Promise(e=>{this.loadedSuccessfully=e}),this.deferred=Promise.resolve(),!1===e.init[this.featureName].autoStart?this.deferred=new Promise((t,r)=>{this.ee.on("manual-start-all",(0,j.J)(()=>{(0,P.Ak)(e,this.featureName),t()}))}):(0,P.Ak)(e,t)}importAggregator(e,t,n={}){if(this.featAggregate)return;const s=async()=>{if(await this.deferred,this.#t(e),!(0,a.f)(e.info))return(0,l.R)(43),e.ee.abort(),void this.loadedSuccessfully(!1);let s;try{if((0,I.V)(e.init)){const{setupAgentSession:t}=await r.e(478).then(r.bind(r,8766));s=t(e)}}catch(e){(0,l.R)(20,e),this.ee.emit("internal-error",[e]),(0,T.p)(M.qh,[e],void 0,this.featureName,this.ee)}if(e.init.api.register.allow_iframe_bridge)try{const{setupIframeMFEMessageListener:t}=await r.e(238).then(r.bind(r,6417));t(e)}catch(e){(0,l.R)(23,e)}try{if(!this.#r(this.featureName,s,e.init))return(0,P.Ze)(this.agentRef,this.featureName),void this.loadedSuccessfully(!1);const{Aggregate:r}=await t();this.featAggregate=new r(e,n),e.runtime.harvester.initializedAggregates.push(this.featAggregate),this.loadedSuccessfully(!0)}catch(e){(0,l.R)(34,e),this.abortHandler?.(),(0,P.Ze)(this.agentRef,this.featureName,!0),this.loadedSuccessfully(!1),this.ee&&this.ee.abort()}};g.RI?(0,k.GG)(()=>s(),!0):s()}#r(e,r,n){if(this.blocked)return!1;switch(e){case t.K7.sessionReplay:return(0,C.SR)(n)&&!!r;case t.K7.sessionTrace:return!!r;default:return!0}}#t(e){if(!D.has(e)&&(D.add(e),!(0,a.f)(e.info))){const t=(0,s.pV)();let r={...t.info?.jsAttributes};try{r={...r,...e.info?.jsAttributes}}catch(e){}S(e,{...t,info:{...t.info,jsAttributes:r},runtime:e.runtime},e.runtime.loaderType)}}}var H=r(6630);class K extends B{static featureName=H.T;constructor(e){var t;super(e,H.T),this.setupInspectionEvents(),t=e,(0,N.Y)(O.Fw,function(e,r){"string"==typeof e&&("/"!==e.charAt(0)&&(e="/"+e),t.runtime.customTransaction=(r||"http://custom.transaction")+e,(0,T.p)("api-"+O.Fw,[(0,_.t)()],void 0,void 0,t.ee))},t),this.importAggregator(e,()=>r.e(478).then(r.bind(r,5839)))}setupInspectionEvents(){const e=(e,t)=>{e&&(0,R.W)({timeStamp:e.timeStamp,loaded:"complete"===e.target.readyState,type:"window",name:t,data:e.target.location+""})};(0,k.sB)(t=>{e(t,"DOMContentLoaded")}),(0,k.GG)(t=>{e(t,"load")}),(0,k.Qr)(t=>{e(t,"navigate")}),this.ee.on(u.tS.UPDATE,(e,t)=>{(0,R.W)({type:"lifecycle",name:"session",data:t})})}}class W extends e.d{constructor(e){var t;(super(),g.gm)?(this.features={},(0,s.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(e.features||[]),this.desiredFeatures.add(K),S(this,e,e.loaderType||"agent"),t=this,(0,N.Y)(O.cD,function(e,r,n=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof r)||null===r)return(0,N.U)(t,e,r,O.cD,n);(0,l.R)(40,typeof r)}else(0,l.R)(39,typeof e)},t),function(e){(0,N.Y)(O.Dl,function(t,r=!1){if("string"!=typeof t&&null!==t)return void(0,l.R)(41,typeof t);const n=e.info.jsAttributes["enduser.id"];r&&null!=n&&n!==t?(0,T.p)("api-setUserIdAndResetSession",[t],void 0,"session",e.ee):(0,N.U)(e,"enduser.id",t,O.Dl,!0)},e)}(this),function(e){(0,N.Y)(O.nb,function(t){if("string"==typeof t||null===t)return(0,N.U)(e,"application.version",t,O.nb,!1);(0,l.R)(42,typeof t)},e)}(this),function(e){(0,N.Y)("start",function(){e.ee.emit("manual-start-all")},e)}(this),function(e){(0,N.Y)(O.Pv,function(t=!0){if("boolean"==typeof t){if((0,T.p)("api-"+O.Pv,[t],void 0,"session",e.ee),e.runtime.consented=t,t){const t=e.features.page_view_event;t.onAggregateImported.then(e=>{const r=t.featAggregate;e&&!r.sentRum&&r.sendRum()})}}else(0,l.R)(65,typeof t)},e)}(this),this.run()):(0,l.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}get api(){return this}run(){try{const e=function(e){const t={};return n.forEach(r=>{t[r]=!!e[r]?.enabled}),t}(this.init),r=[...this.desiredFeatures];r.sort((e,r)=>t.P3[e.featureName]-t.P3[r.featureName]),r.forEach(r=>{if(!e[r.featureName]&&r.featureName!==t.K7.pageViewEvent)return;const n=function(e){switch(e){case t.K7.ajax:return[t.K7.jserrors];case t.K7.sessionTrace:return[t.K7.ajax,t.K7.pageViewEvent];case t.K7.sessionReplay:return[t.K7.sessionTrace];case t.K7.pageViewTiming:return[t.K7.pageViewEvent];default:return[]}}(r.featureName).filter(e=>!(e in this.features));n.length>0&&(0,l.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)})}catch(e){(0,l.R)(22,e);for(const e in this.features)this.features[e].abortHandler?.();const t=(0,s.Zm)();delete t.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return t.ee.get(this.agentIdentifier).abort(),!1}}}var F=r(2843),U=r(782);class V extends B{static featureName=U.T;constructor(e){super(e,U.T),g.RI&&((0,F.u)(()=>(0,T.p)("docHidden",[(0,_.t)()],void 0,U.T,this.ee),!0),(0,F.G)(()=>(0,T.p)("winPagehide",[(0,_.t)()],void 0,U.T,this.ee)),this.importAggregator(e,()=>r.e(478).then(r.bind(r,9917))))}}var z=r(3969);class G extends B{static featureName=z.TZ;constructor(e){super(e,z.TZ),this.importAggregator(e,()=>r.e(478).then(r.bind(r,6555)))}}var q=r(6774),Y=r(3878),Z=r(3304);class Q{constructor(e,t,r,n,s){this.name="UncaughtError",this.message="string"==typeof e?e:(0,Z.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=s}}function X(e){return te(e)?e:new Q(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic,e?.cause)}function J(e){const t="Unhandled Promise Rejection: ";if(!e?.reason)return;if(te(e.reason)){try{e.reason.message.startsWith(t)||(e.reason.message=t+e.reason.message)}catch(e){}return X(e.reason)}const r=X(e.reason);return(r.message||"").startsWith(t)||(r.message=t+r.message),r}function ee(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new Q(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic,e.cause);return t.name=SyntaxError.name,t}return te(e.error)?e.error:X(e)}function te(e){return e instanceof Error&&!!e.stack}function re(e,r,n,s,i=(0,_.t)()){"string"==typeof e&&(e=new Error(e)),(0,T.p)("err",[e,i,!1,r,n.runtime.isRecording,void 0,s],void 0,t.K7.jserrors,n.ee),(0,T.p)("uaErr",[],void 0,t.K7.genericEvents,n.ee)}var ne=r(5732),se=r(993),ie=r(3785);function ae(e,{customAttributes:t={},level:r=se.p_.INFO}={},n,s,i=(0,_.t)()){(0,ie.R)(n.ee,e,t,r,!1,s,i)}function oe(e,r,n,s,i=(0,_.t)()){(0,T.p)("api-"+O.hG,[i,e,r,s],void 0,t.K7.genericEvents,n.ee)}function ce(e,r,n,s,i=(0,_.t)()){const{start:a,end:o,customAttributes:c}=r||{},d={customAttributes:c||{}};if("object"!=typeof d.customAttributes||"string"!=typeof e||0===e.length)return void(0,l.R)(57);const u=(e,t)=>null==e?t:"number"==typeof e?e:e instanceof PerformanceMark?e.startTime:Number.NaN;if(d.start=u(a,0),d.end=u(o,i),Number.isNaN(d.start)||Number.isNaN(d.end))(0,l.R)(57);else{if(d.duration=d.end-d.start,!(d.duration<0))return(0,T.p)("api-"+O.V1,[d,e,s],void 0,t.K7.genericEvents,n.ee),d;(0,l.R)(58)}}function de(e,r={},n,s,i=(0,_.t)()){(0,T.p)("api-"+O.fF,[i,e,r,s],void 0,t.K7.genericEvents,n.ee)}var ue=r(5718);const le=(e,t)=>e?.nrMfeId===t.id&&(!e?.nrMfeObserved||e?.nrMfeObserved===t.instance),fe=e=>{try{return g.gm.CSS.escape(e)}catch(t){return e}},he=(e,t={})=>{const r=t.id,n=t.instance;if(!e||!r||!n)return!1;try{let r=1===e.nodeType?e:e.parentElement;for(;r?.tagName;){if(le(r.dataset,t))return r.dataset.nrMfeObserved=n,!0;r=r.parentNode}}catch(e){}return!1},pe=(e,t)=>{const r=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(fe(e.id),'"]')),n=(Array.from(r)||[]).find(t=>le(t.dataset,e));let s=!!n;s&&(n.dataset.nrMfeObserved??=e.instance);const i=new g.gm.MutationObserver(r=>{r.forEach(r=>{r.addedNodes.forEach(r=>{const n=1===r.nodeType?r:null;!s&&le(n?.dataset,e)&&(i.disconnect(),i.observe(n,{childList:!0,subtree:!0}),s=!0,n.dataset.nrMfeObserved=e.instance),(e=>{try{return e?.textContent?.trim()||["img","video","canvas","svg"].includes(e?.nodeName?.toLowerCase())}catch(e){return!1}})(r)&&(s||he(r,e))&&t(r,i)})})});return i.observe(n||g.gm.document,{childList:!0,subtree:!0}),i},ge=(e,t,r)=>{try{const n=new g.gm.PerformanceObserver(e=>{e.getEntries().forEach(r)});return n.observe(t),e.push(n),n}catch(e){return null}};function me(e,t){let r,n,s=!1;const i=e=>null==e?e:e-(t?.scriptStart||t?.registeredAt||0),a={fcp:{get value(){const e=i(r);return e>1e4?void 0:e},set value(e){s||(r=e)}},lcp:{get value(){if(void 0!==a.fcp.value)return i(n)},set value(e){s||(n=e)}},cls:{value:void 0},inp:{value:void 0},disconnect:()=>{}};if(!(e&&g.RI&&g.gm.MutationObserver&&g.gm.PerformanceObserver))return a;const o=[];setTimeout(()=>{r||a.disconnect()},1e4);const c=()=>{if(!s){if(null==r){const e=(0,_.t)();if(i(e)>1e4)return void a.disconnect();r=e}n??=(0,_.t)(),a.cls.value??=0}},d=pe(e,(e,t)=>{c(),t.disconnect()});o.push(d);let u=0,l=null;const f=new Set;try{l=new g.gm.ResizeObserver(e=>{s||e.forEach(e=>{try{const t=e.contentRect.width*e.contentRect.height;t>u&&(u=t,a.lcp.value=(0,_.t)()),l.unobserve(e.target)}catch(e){}})})}catch(e){}const h=pe(e,e=>{if(c(),l)try{const t=1===e.nodeType?e:e.parentElement;t&&!f.has(t)&&(f.add(t),"IMG"===t.tagName?t.complete?l.observe(t):t.addEventListener("load",()=>{l.observe(t)},{once:!0}):"VIDEO"===t.tagName?t.readyState>=2?l.observe(t):t.addEventListener("loadeddata",()=>{l.observe(t)},{once:!0}):l.observe(t))}catch(e){}});l&&o.push(l),o.push(h),ge(o,{type:"layout-shift",buffered:!0},t=>{s||t.hadRecentInput||(t.sources||[]).some(r=>!!he(r.node,e)&&(c(),a.cls.value+=t.value,!0))}),ge(o,{type:"event",buffered:!0,durationThreshold:40},t=>{!s&&t.interactionId&&he(t.target,e)&&(void 0===a.inp.value||t.duration>a.inp.value)&&(c(),a.inp.value=t.duration)});const p=["pointerdown","keydown"],m=()=>{p.forEach(e=>{g.gm.removeEventListener(e,v,{passive:!0})})};a.disconnect=()=>{s=!0,o.forEach(e=>{try{e?.disconnect()}catch(e){}}),m(),["visibilitychange","pagehide"].forEach(e=>{g.gm.removeEventListener(e,a.disconnect,{once:!0,passive:!0})})};const v=t=>{he(t?.target,e)&&((()=>{try{h?.disconnect(),l?.disconnect()}catch(e){}})(),m())};p.forEach(e=>{g.gm.addEventListener(e,v,{passive:!0})}),["visibilitychange","pagehide"].forEach(e=>{g.gm.addEventListener(e,a.disconnect,{once:!0,passive:!0})});const y=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(fe(e.id),'"]'));return Array.from(y||[]).some(t=>le(t.dataset,e))&&c(),a}var ve=r(9566);const ye=["name","id","type"],be=new Map([[oe,"addPageAction"],[ae,"log"],[ce,"measure"],[re,"noticeError"],[de,"recordCustomEvent"]]),Ee={experimental:(0,j.J)(()=>(0,l.R)(54,"newrelic.register")),disabled:(0,j.J)(()=>(0,l.R)(55)),invalidTarget:(0,j.J)(e=>(0,l.R)(48,e)),deregistered:(0,j.J)(()=>(0,l.R)(68))};function we(e){(0,N.Y)(O.eY,function(t){return Re(e,t)},e)}function Re(e,r){Ee.experimental(),r||={},r.instance=(0,ve.LA)(8),r.type=ne.fQ.MFE,r.licenseKey||=e.info.licenseKey,r.blocked=!1,("object"!=typeof r.tags||null===r.tags||Array.isArray(r.tags))&&(r.tags={}),r.parent??={get id(){return e.runtime.appMetadata.agents?.[0].entityGuid},type:ne.fQ.BA};const n=(0,ue.Qr)(r),s=me(r,n),i={};Object.prototype.hasOwnProperty.call(r,"attributes")||Object.defineProperty(r,"attributes",{get:()=>({...i,"source.id":r.id,"source.name":r.name,"source.type":r.type,"parent.type":r.parent?.type||ne.fQ.BA,"parent.id":r.parent?.id})}),Object.entries(r.tags).forEach(([e,t])=>{ye.includes(e)||(i["source.".concat(e)]=t)});let a=()=>{};const o=e.runtime.registeredEntities,c=e=>{r.blocked=!0,a=e};function d(e){return"string"==typeof e&&!!e.trim()&&e.trim().length<501}e.init.api.register.enabled||c(Ee.disabled),d(r.id)&&d(r.name)||c(()=>Ee.invalidTarget(r));const u={addPageAction:(t,n={})=>g(oe,[t,{...i,...n},e],r),deregister:()=>{h(),c(Ee.deregistered)},log:(t,n={})=>g(ae,[t,{...n,customAttributes:{...i,...n.customAttributes||{}}},e],r),measure:(t,n={})=>g(ce,[t,{...n,customAttributes:{...i,...n.customAttributes||{}}},e],r),noticeError:(t,n={})=>g(re,[t,{...i,...n},e],r),recordCustomEvent:(t,n={})=>g(de,[t,{...i,...n},e],r),setApplicationVersion:e=>p("application.version",e),setCustomAttribute:(e,t)=>p(e,t),setUserId:e=>p("enduser.id",e),metadata:{get customAttributes(){return i},target:r,timings:n,vitals:s,events:{latestTimestamp:void 0}}},f=()=>(r.blocked&&a(),r.blocked);function h(){if(n.reportedAt)return;n.reportedAt=(0,_.t)(),s.disconnect(),n.fcp=s.fcp,n.lcp=s.lcp,n.cls=s.cls,n.inp=s.inp;const e=n.fetchEnd-n.fetchStart,t=n.scriptEnd-n.scriptStart,r={assetUrl:n.asset,assetType:n.type,timeAlive:n.reportedAt-n.registeredAt,timeToBeRequested:n.fetchStart,timeToExecute:t,timeToFetch:e,timeToLoad:e+t,timeToRegister:n.registeredAt,...s.fcp.value>=0&&{"nr.vitals.fcp.value":s.fcp.value},...s.lcp.value>=0&&{"nr.vitals.lcp.value":s.lcp.value},...s.cls.value>=0&&{"nr.vitals.cls.value":s.cls.value},...s.inp.value>=0&&{"nr.vitals.inp.value":s.inp.value}};u.recordCustomEvent("MicroFrontEndTiming",r)}f()||(o.push(u),(0,F.G)(h));const p=(e,t)=>{f()||(i[e]=t)},g=(r,n,s)=>{if(f()&&r!==Re)return;const i=u.metadata.events.latestTimestamp??(0,_.t)();u.metadata.events.latestTimestamp=void 0;const a=be.get(r)||"unknown";(0,T.p)(z.xV,["API/register/".concat(a,"/called")],void 0,t.K7.metrics,e.ee);try{return r(...n,s,i)}catch(e){(0,l.R)(50,e)}};return u}class Ae extends B{static featureName=q.T;constructor(e){var t;super(e,q.T),t=e,(0,N.Y)(O.o5,(e,r)=>re(e,r,t),t),function(e){(0,N.Y)(O.bt,function(t){e.runtime.onerror=t},e)}(e),function(e){let t=0;(0,N.Y)(O.k6,function(e,r){++t>10||(this.runtime.releaseIds[e.slice(-200)]=(""+r).slice(-200))},e)}(e),we(e);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",(t,r)=>{this.abortHandler&&(0,T.p)("ierr",[X(t),(0,_.t)(),!0,{},e.runtime.isRecording,r],void 0,this.featureName,this.ee)}),g.gm.addEventListener("unhandledrejection",t=>{this.abortHandler&&(0,T.p)("err",[J(t),(0,_.t)(),!1,{unhandledPromiseRejection:1},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,Y.jT)(!1,this.removeOnAbort?.signal)),g.gm.addEventListener("error",t=>{this.abortHandler&&(0,T.p)("err",[ee(t),(0,_.t)(),!1,{},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,Y.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e,()=>r.e(478).then(r.bind(r,9377)))}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var Te=r(8990);let xe=1;function Se(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===g.gm?0:(0,Te.I)(e,"nr@id",function(){return xe++})}function _e(e){if("string"==typeof e)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,Z.A)(e).length}catch(e){return}}}var Oe=r(8139),Ne=r(3434);const Pe={},Le=["open","send","setRequestHeader"];function ke(e,t){var r=e||w.ee;const n=function(e){return(e||w.ee).get("xhr")}(r);if(void 0===g.gm.XMLHttpRequest)return n;if(Pe[n.debugId]++)return n;Pe[n.debugId]=1,(0,Oe.u)(r);var s=(0,Ne.YM)(n),i=g.gm.XMLHttpRequest,a=g.gm.MutationObserver,o=g.gm.Promise,c=g.gm.setInterval,d="readystatechange",u=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],f=[],h=g.gm.XMLHttpRequest=function(e){const r=new i(e),a=n.context(r);a.targets=(0,ne.$5)(t);try{n.emit("new-xhr",[r],a),r.addEventListener(d,(o=a,function(){var e=this;e.readyState>3&&!o.resolved&&(o.resolved=!0,n.emit("xhr-resolved",[],e)),s.inPlace(e,u,"fn-",E)}),(0,Y.jT)(!1))}catch(e){(0,l.R)(15,e);try{n.emit("internal-error",[e])}catch(e){}}var o;return r};function p(e,t){s.inPlace(t,["onreadystatechange"],"fn-",E)}if(function(e,t){for(var r in e)t[r]=e[r]}(i,h),h.prototype=i.prototype,s.inPlace(h.prototype,Le,"-xhr-",E),n.on("send-xhr-start",function(e,t){p(e,t),function(e){f.push(e),a&&(m?m.then(b):c?c(b):(v=-v,y.data=v))}(t)}),n.on("open-xhr-start",p),a){var m=o&&o.resolve();if(!c&&!o){var v=1,y=document.createTextNode(v);new a(b).observe(y,{characterData:!0})}}else r.on("fn-end",function(e){e[0]&&e[0].type===d||b()});function b(){for(var e=0;e<f.length;e++)p(0,f[e]);f.length&&(f=[])}function E(e,t){return t}return n}var Ce="fetch-",Ie=Ce+"body-",je=["arrayBuffer","blob","json","text","formData"],Me=g.gm.Request,De=g.gm.Response,Be="prototype";const He={};function Ke(e,t){const r=function(e){return(e||w.ee).get("fetch")}(e);if(!(Me&&De&&g.gm.fetch))return r;if(He[r.debugId]++)return r;function n(e,n,s){var i=e[n];"function"==typeof i&&(e[n]=function(){var e=[...arguments];const n={},a=(0,ne.$5)(t);var o;r.emit(s+"before-start",[e],n),n[w.P]&&n[w.P].dt&&(o=n[w.P].dt);var c=i.apply(this,e);return r.emit(s+"start",[e,o],c),c.then(function(e){return r.emit(s+"end",[null,e,a],c),e},function(e){throw r.emit(s+"end",[e,void 0,a],c),e})})}return He[r.debugId]=1,je.forEach(e=>{n(Me[Be],e,Ie),n(De[Be],e,Ie)}),n(g.gm,"fetch",Ce),r.on(Ce+"end",function(e,t,n){var s=this;if(s.targets=n||[void 0],t){var i=t.headers.get("content-length");null!==i&&(s.rxSize=i),r.emit(Ce+"done",[null,t],s)}else r.emit(Ce+"done",[e],s)}),r}var We=r(7485);class Fe{constructor(e){this.agentRef=e}generateTracePayload(e){const t=this.agentRef.loader_config;if(!this.shouldGenerateTrace(e)||!t)return null;var r=(t.accountID||"").toString()||null,n=(t.agentID||"").toString()||null,s=(t.trustKey||"").toString()||null;if(!r||!n)return null;var i=(0,ve.ZF)(),a=(0,ve.el)(),o=Date.now(),c={spanId:i,traceId:a,timestamp:o};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(c.traceContextParentHeader=this.generateTraceContextParentHeader(i,a),c.traceContextStateHeader=this.generateTraceContextStateHeader(i,o,r,n,s)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(c.newrelicHeader=this.generateTraceHeader(i,a,o,r,n,s)),c}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,s){return s+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,s,i){if(!("function"==typeof g.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:s,id:e,tr:t,ti:r}};return i&&n!==i&&(a.d.tk=i),btoa((0,Z.A)(a))}shouldGenerateTrace(e){return this.agentRef.init?.distributed_tracing?.enabled&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1;const r=this.agentRef.init?.distributed_tracing;if(e.sameOrigin)t=!0;else if(r?.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var s=(0,We.D)(r.allowed_origins[n]);if(e.hostname===s.hostname&&e.protocol===s.protocol&&e.port===s.port){t=!0;break}}return t}excludeNewrelicHeader(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.cors_use_tracecontext_headers}}var Ue=r(7295);function Ve(e){return"string"==typeof e?e:e instanceof(0,s.dV)().o.REQ?e.url:g.gm?.URL&&e instanceof URL?e.href:void 0}function ze(e,t){var r=(0,We.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}var Ge=["load","error","abort","timeout"],qe=Ge.length,Ye=(0,s.dV)().o.REQ,Ze=(0,s.dV)().o.XHR;const $e="X-NewRelic-App-Data",Qe="internal-error";class Xe extends B{static featureName=c.TZ;constructor(e){super(e,c.TZ),this.dt=new Fe(e),this.handler=(e,t,r,n)=>(0,T.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};g.gm?.performance?.getEntriesByType("resource").forEach(r=>{if(r.initiatorType in e&&0!==r.responseStatus){const n={status:r.responseStatus},s={rxSize:r.transferSize,duration:Math.floor(r.duration),cbTime:0};ze(n,r.name),this.handler("xhr",[n,s,r.startTime,r.responseEnd,e[r.initiatorType]],void 0,t.K7.ajax)}})}catch(e){}Ke(this.ee,e),ke(this.ee,e),function(e,r,n,s){const i=[c.mo.ALL,c.mo.FAILURES].includes(e.init.ajax?.capture_payloads);function a(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=x,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},t.latestLongtaskEnd=0,e.addEventListener("load",function(r){O(t,e)},(0,Y.jT)(!1)),g.lR||e.addEventListener("progress",function(e){t.lastSize=e.loaded},(0,Y.jT)(!1))}function o(e){this.params={method:e[0]},ze(this,e[1]),this.metrics={}}function d(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var n=s.generateTracePayload(this.parsedOrigin);if(n){var i=!1;n.newrelicHeader&&(r.setRequestHeader("newrelic",n.newrelicHeader),i=!0),n.traceContextParentHeader&&(r.setRequestHeader("traceparent",n.traceContextParentHeader),n.traceContextStateHeader&&r.setRequestHeader("tracestate",n.traceContextStateHeader),i=!0),i&&(this.dt=n)}}function u(e,t){i&&e.length>=2&&(this.requestHeaders??={},this.requestHeaders[e[0].toLowerCase()]=e[1])}function l(e,t){var n=this.metrics,s=e[0],i=this;if(n&&s){var a=_e(s);a&&(n.txSize=a)}this.startTime=(0,_.t)(),this.requestBody=s,this.listener=function(e){try{"abort"!==e.type||i.loadCaptureCalled||(i.params.aborted=!0),("load"!==e.type||i.called===i.totalCbs&&(i.onloadCalled||"function"!=typeof t.onload)&&"function"==typeof i.end)&&i.end(t)}catch(e){try{r.emit(Qe,[e])}catch(e){}}};for(var o=0;o<qe;o++)t.addEventListener(Ge[o],this.listener,(0,Y.jT)(!1))}function f(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 h(e,t){var r=""+Se(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function p(e,t){var r=""+Se(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function m(){this.endTime=(0,_.t)()}function v(e,t){t instanceof Ze&&"load"===e[0]&&r.emit("xhr-load-added",[e[1],e[2]],t)}function y(e,t){t instanceof Ze&&"load"===e[0]&&r.emit("xhr-load-removed",[e[1],e[2]],t)}function b(e,t,r){t instanceof Ze&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,_.t)()))}function E(e,t){this.xhrCbStart&&r.emit("xhr-cb-time",[(0,_.t)()-this.xhrCbStart,this.onload,t],t)}function w(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&g.RI&&(t=""+g.gm.location.href):e[0]&&e[0].url?t=e[0].url:g.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,We.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var n=s.generateTracePayload(this.parsedOrigin);if(n&&(n.newrelicHeader||n.traceContextParentHeader))if(e[0]&&e[0].headers)o(e[0].headers,n)&&(this.dt=n);else{var i={};for(var a in r)i[a]=r[a];i.headers=new Headers(r.headers||{}),o(i.headers,n)&&(this.dt=n),e.length>1?e[1]=i:e.push(i)}}function o(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function R(e,t){this.params={},this.metrics={},this.startTime=(0,_.t)(),this.dt=t;let[r,n={}]=e;ze(this,Ve(r));const s=(""+(r&&r instanceof Ye&&r.method||n.method||"GET")).toUpperCase();this.params.method=s,this.txSize=_e(n.body||r?.body)||0;try{var a=n.headers||r?.headers;if(i&&a)if(this.requestHeaders??={},a instanceof Headers)a.forEach(function(e,t){this.requestHeaders[t.toLowerCase()]=e}.bind(this));else if("object"==typeof a)for(var o in a)this.requestHeaders[o.toLowerCase()]=a[o]}catch(e){}this.requestBody=n.body||r?.body}function A(e,t){if(this.endTime=(0,_.t)(),this.params||(this.params={}),(0,Ue.iW)(this.params))return;this.params.status=t?t.status:0;const n=()=>{const e=+this.rxSize,t=null==this.rxSize||isNaN(e)?void 0:e,r={txSize:this.txSize,rxSize:t,duration:this.endTime-this.startTime},n=[this.params,r,this.startTime,this.endTime,"fetch"];this.targets.forEach(e=>S(n,this,e))};t&&i?t.clone().text().then(e=>{this.responseBody=e,this.rxSize&&"0"!==this.rxSize&&0!==this.rxSize||void 0===e||0===this.params.status||(this.rxSize=_e(e)),t?.headers&&(this.responseHeaders={},t.headers.forEach(function(e,t){this.responseHeaders[t.toLowerCase()]=e}.bind(this)))}).catch(e=>{r.emit(Qe,[e])}).finally(()=>{n()}):n()}function x(e){const t=this.params,n=this.metrics;if(this.ended)return;this.ended=!0;for(let t=0;t<qe;t++)e.removeEventListener(Ge[t],this.listener,!1);if(t.aborted)return;if((0,Ue.iW)(t))return;if(n.duration=this.endTime-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==t.status&&(t.status=0):O(this,e),n.cbTime=this.cbTime,i){try{this.responseBody=e.responseText}catch(t){this.responseBody=e.response}if((!n.rxSize||0===n.rxSize)&&void 0!==this.responseBody&&0!==t.status){const e=_e(this.responseBody);void 0!==e&&(n.rxSize=e)}try{this.responseHeaders=function(e){const t={};return e?(e.split("\r\n").forEach(function(e){const r=e.indexOf(": ");if(r>0){const n=e.substring(0,r),s=e.substring(r+2);t[n.toLowerCase()]=s}}),t):t}(e.getAllResponseHeaders())}catch(e){r.emit(Qe,[e])}}const s=[t,n,this.startTime,this.endTime,"xhr"];this.targets.forEach(e=>S(s,this,e))}function S(e,r,s){n("xhr",[...e,s],r,t.K7.ajax)}function O(e,n){e.params.status=n.status;var s=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?_e(e.response):"text"===r||""===r||void 0===r?_e(e.responseText):void 0}(n,e.lastSize);if(void 0!==s&&0!==n.status&&(e.metrics.rxSize=s),e.sameOrigin&&n.getAllResponseHeaders().indexOf($e)>=0){var i=n.getResponseHeader($e);i&&((0,T.p)("sm",["Ajax/CrossApplicationTracing/Header/Seen"],void 0,t.K7.metrics,r),e.params.cat=i.split(", ").pop())}e.loadCaptureCalled=!0}r.on("new-xhr",a),r.on("open-xhr-start",o),r.on("open-xhr-end",d),r.on("send-xhr-start",l),r.on("setRequestHeader-xhr-start",u),r.on("xhr-cb-time",f),r.on("xhr-load-added",h),r.on("xhr-load-removed",p),r.on("xhr-resolved",m),r.on("addEventListener-end",v),r.on("removeEventListener-end",y),r.on("fn-end",E),r.on("fetch-before-start",w),r.on("fetch-start",R),r.on("fn-start",b),r.on("fetch-done",A)}(e,this.ee,this.handler,this.dt),this.importAggregator(e,()=>r.e(478).then(r.bind(r,3845)))}}const Je={},et=["pushState","replaceState"];function tt(e){const t=function(e){return(e||w.ee).get("history")}(e);return!g.RI||Je[t.debugId]++||(Je[t.debugId]=1,(0,Ne.YM)(t).inPlace(window.history,et,"-")),t}var rt=r(3738);function nt(e){(0,N.Y)(O.BL,function(r=Date.now()){const n=r-g.WN;n<0&&(0,l.R)(62,r),(0,T.p)(z.XG,[O.BL,{time:n}],void 0,t.K7.metrics,e.ee),e.addToTrace({name:O.BL,start:r,origin:"nr"}),(0,T.p)("api-"+O.hG,[n,O.BL],void 0,t.K7.genericEvents,e.ee)},e)}const{He:st,bD:it,d3:at,Kp:ot,TZ:ct,Lc:dt,uP:ut,Rz:lt}=rt;class ft extends B{static featureName=ct;constructor(e){var n;super(e,ct),n=e,(0,N.Y)(O.U2,function(e){if(!(e&&"object"==typeof e&&e.name&&e.start))return;const r={n:e.name,s:e.start-g.WN,e:(e.end||e.start)-g.WN,o:e.origin||"",t:"api"};r.s<0||r.e<0||r.e<r.s?(0,l.R)(61,{start:r.s,end:r.e}):(0,T.p)("bstApi",[r],void 0,t.K7.sessionTrace,n.ee)},n),nt(e);if(!(0,I.V)(e.init))return void this.deregisterDrain();const s=this.ee;let i;tt(s),this.eventsEE=(0,Oe.u)(s),this.eventsEE.on(ut,function(e,t){this.bstStart=(0,_.t)()}),this.eventsEE.on(dt,function(e,r){(0,T.p)("bst",[e[0],r,this.bstStart,(0,_.t)()],void 0,t.K7.sessionTrace,s)}),s.on(lt+at,function(e){this.time=(0,_.t)(),this.startPath=location.pathname+location.hash}),s.on(lt+ot,function(e){(0,T.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,t.K7.sessionTrace,s)});try{i=new PerformanceObserver(e=>{const r=e.getEntries();(0,T.p)(st,[r],void 0,t.K7.sessionTrace,s)}),i.observe({type:it,buffered:!0})}catch(e){}this.importAggregator(e,()=>r.e(478).then(r.bind(r,6974)),{resourceObserver:i})}}var ht=r(733),pt=r(6344);class gt extends B{static featureName=pt.TZ;#s;recorder;constructor(e){var n;let s;super(e,pt.TZ),n=e,(0,N.Y)(O.CH,function(){(0,T.p)(O.CH,[],void 0,t.K7.sessionReplay,n.ee)},n),function(e){(0,N.Y)(O.Tb,function(){(0,T.p)(O.Tb,[],void 0,t.K7.sessionReplay,e.ee)},e)}(e);const i="".concat(u.Wt).concat((0,ht.Y)(e.info.licenseKey,e.info.applicationID));try{s=JSON.parse(localStorage.getItem(i))}catch(e){}(0,C.SR)(e.init)&&this.ee.on(O.CH,()=>this.#i()),this.#a(s)&&this.importRecorder().then(e=>{e.startRecording(pt.Qb.PRELOAD,s?.sessionReplayMode)}),this.importAggregator(this.agentRef,()=>r.e(478).then(r.bind(r,6167)),this),this.ee.on("err",e=>{this.blocked||this.agentRef.runtime.isRecording&&(this.errorNoticed=!0,(0,T.p)(pt.Vh,[e],void 0,this.featureName,this.ee))})}#a(e){return e&&(e.sessionReplayMode===u.g.FULL||e.sessionReplayMode===u.g.ERROR)||(0,C.Aw)(this.agentRef.init)}importRecorder(){return this.recorder?Promise.resolve(this.recorder):(this.#s??=Promise.all([r.e(478),r.e(249)]).then(r.bind(r,4866)).then(({Recorder:e})=>(this.recorder=new e(this),this.recorder)).catch(e=>{throw this.ee.emit("internal-error",[e]),this.blocked=!0,e}),this.#s)}#i(){this.blocked||(this.featAggregate?this.featAggregate.mode!==u.g.FULL&&this.featAggregate.initializeRecording(u.g.FULL,!0,pt.Qb.API):this.importRecorder().then(()=>{this.recorder.startRecording(pt.Qb.API,u.g.FULL)}))}}var mt=r(3962);class vt extends B{static featureName=mt.TZ;constructor(e){if(super(e,mt.TZ),function(e){const r=e.ee.get("tracer");function n(){}(0,N.Y)(O.dT,function(e){return(new n).get("object"==typeof e?e:{})},e);const s=n.prototype={createTracer:function(n,s){var i={},a=this,o="function"==typeof s;return(0,T.p)(z.xV,["API/createTracer/called"],void 0,t.K7.metrics,e.ee),function(){if(r.emit((o?"":"no-")+"fn-start",[(0,_.t)(),a,o],i),o)try{return s.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw r.emit("fn-err",[arguments,this,t],i),t}finally{r.emit("fn-end",[(0,_.t)()],i)}}}};["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach(r=>{N.Y.apply(this,[r,function(){return(0,T.p)(O.hw+r,[performance.now(),...arguments],this,t.K7.softNav,e.ee),this},e,s])}),(0,N.Y)(O.PA,function(){(0,T.p)(O.hw+"routeName",[performance.now(),...arguments],void 0,t.K7.softNav,e.ee)},e)}(e),!g.RI||!(0,s.dV)().o.MO)return;const n=tt(this.ee);try{this.removeOnAbort=new AbortController}catch(e){}mt.tC.forEach(e=>{(0,Y.sp)(e,e=>{c(e)},!0,this.removeOnAbort?.signal)});const i=()=>(0,T.p)("newURL",[(0,_.t)(),""+window.location],void 0,this.featureName,this.ee);n.on("pushState-end",i),n.on("replaceState-end",i),(0,Y.sp)(mt.OV,e=>{c(e),(0,T.p)("newURL",[e.timeStamp,""+window.location],void 0,this.featureName,this.ee)},!0,this.removeOnAbort?.signal);let a=!1;const o=new((0,s.dV)().o.MO)((e,t)=>{a||(a=!0,requestAnimationFrame(()=>{(0,T.p)("newDom",[(0,_.t)()],void 0,this.featureName,this.ee),a=!1}))}),c=(0,j.s)(e=>{"loading"!==document.readyState&&((0,T.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,()=>r.e(478).then(r.bind(r,4393)),{domObserver:o})}}var yt=r(9119),bt=r(981);const Et={},wt=new Set;function Rt(e){return"string"==typeof e?{type:"string",size:(new TextEncoder).encode(e).length}:e instanceof ArrayBuffer?{type:"ArrayBuffer",size:e.byteLength}:e instanceof Blob?{type:"Blob",size:e.size}:e instanceof DataView?{type:"DataView",size:e.byteLength}:ArrayBuffer.isView(e)?{type:"TypedArray",size:e.byteLength}:{type:"unknown",size:0}}class At{constructor(e,t){this.timestamp=(0,_.t)(),this.currentUrl=(0,yt.L)(window.location.href),this.socketId=(0,ve.LA)(8),this.requestedUrl=(0,yt.L)(e),this.requestedProtocols=Array.isArray(t)?t.join(","):t||"",this.openedAt=void 0,this.protocol=void 0,this.extensions=void 0,this.binaryType=void 0,this.messageOrigin=void 0,this.messageCount=0,this.messageBytes=0,this.messageBytesMin=0,this.messageBytesMax=0,this.messageTypes=void 0,this.sendCount=0,this.sendBytes=0,this.sendBytesMin=0,this.sendBytesMax=0,this.sendTypes=void 0,this.closedAt=void 0,this.closeCode=void 0,this.closeReason="unknown",this.closeWasClean=void 0,this.connectedDuration=0,this.hasErrors=void 0}}class Tt extends B{static featureName=o.TZ;constructor(e){super(e,o.TZ);const n=e.init.feature_flags.includes("websockets")||e.init.web_sockets?.enabled,i=!e.init.feature_flags.includes("no_spv"),a=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.performance.resources.enabled,e.init.user_actions.enabled,n,i];var c;let d;if(c=e,(0,N.Y)(O.hG,(e,t)=>oe(e,t,c),c),function(e){(0,N.Y)(O.fF,(t,r)=>de(t,r,e),e)}(e),nt(e),we(e),function(e){(0,N.Y)(O.V1,(t,r)=>ce(t,r,e),e)}(e),this.removeOnAbort=new AbortController,this.abortHandler=()=>{this.removeOnAbort.abort(),this.abortHandler=void 0},n){const u=function(e,t){if(!(0,s.dV)().o.WS)return e;const r=e.get("websockets");if(Et[r.debugId]++)return r;Et[r.debugId]=1,(0,F.G)(()=>{const e=(0,_.t)();wt.forEach(t=>{t.nrData.closedAt=e,t.nrData.closeCode=1001,t.nrData.closeReason="Page navigating away",t.nrData.closeWasClean=!1,t.nrData.openedAt&&(t.nrData.connectedDuration=e-t.nrData.openedAt),r.emit("ws",[t.nrData,t.targets],t)})});class n extends WebSocket{static name=bt.R.WS;static toString(){return"function WebSocket() { [native code] }"}toString(){return"[object WebSocket]"}get[Symbol.toStringTag](){return n.name}#o(e){(e.__newrelic??={}).socketId=this.nrData.socketId,this.nrData.hasErrors??=!0}constructor(...e){super(...e),this.nrData=new At(e[0],e[1]),this.targets=(0,ne.$5)(t),this.addEventListener("open",()=>{this.nrData.openedAt=(0,_.t)(),["protocol","extensions","binaryType"].forEach(e=>{this.nrData[e]=this[e]}),wt.add(this)}),this.addEventListener("message",e=>{const{type:t,size:r}=Rt(e.data);this.nrData.messageOrigin??=(0,yt.L)(e.origin),this.nrData.messageCount++,this.nrData.messageBytes+=r,this.nrData.messageBytesMin=Math.min(this.nrData.messageBytesMin||1/0,r),this.nrData.messageBytesMax=Math.max(this.nrData.messageBytesMax,r),(this.nrData.messageTypes??"").includes(t)||(this.nrData.messageTypes=this.nrData.messageTypes?"".concat(this.nrData.messageTypes,",").concat(t):t)}),this.addEventListener("close",e=>{this.nrData.closedAt=(0,_.t)(),this.nrData.closeCode=e.code,e.reason&&(this.nrData.closeReason=e.reason),this.nrData.closeWasClean=e.wasClean,this.nrData.connectedDuration=this.nrData.closedAt-this.nrData.openedAt,wt.delete(this),r.emit("ws",[this.nrData,this.targets],this)})}addEventListener(e,t,...r){const n=this,s="function"==typeof t?function(...e){try{return t.apply(this,e)}catch(e){throw n.#o(e),e}}:t?.handleEvent?{handleEvent:function(...e){try{return t.handleEvent.apply(t,e)}catch(e){throw n.#o(e),e}}}:t;return super.addEventListener(e,s,...r)}send(e){if(this.readyState===WebSocket.OPEN){const{type:t,size:r}=Rt(e);this.nrData.sendCount++,this.nrData.sendBytes+=r,this.nrData.sendBytesMin=Math.min(this.nrData.sendBytesMin||1/0,r),this.nrData.sendBytesMax=Math.max(this.nrData.sendBytesMax,r),(this.nrData.sendTypes??"").includes(t)||(this.nrData.sendTypes=this.nrData.sendTypes?"".concat(this.nrData.sendTypes,",").concat(t):t)}try{return super.send(e)}catch(e){throw this.#o(e),e}}close(...e){try{super.close(...e)}catch(e){throw this.#o(e),e}}}return g.gm.WebSocket=n,r}(this.ee,e);u.on("ws",(e,t)=>{(0,T.p)("ws-complete",[e,t],void 0,this.featureName,this.ee)})}if(i&&g.gm.addEventListener("securitypolicyviolation",e=>{(0,T.p)("spv",[e],void 0,t.K7.genericEvents,this.ee)},(0,Y.jT)(!1,this.removeOnAbort.signal)),g.RI){if(Ke(this.ee,e),ke(this.ee,e),d=tt(this.ee),e.init.user_actions.enabled){function l(t){const r=(0,We.D)(t);return e.beacons.includes(r.hostname+":"+r.port)}function f(){d.emit("navChange")}o.Zp.forEach(e=>(0,Y.sp)(e,e=>(0,T.p)("ua",[e],void 0,this.featureName,this.ee),!0)),o.qN.forEach(e=>{const t=(0,j.s)(e=>{(0,T.p)("ua",[e],void 0,this.featureName,this.ee)},500,{leading:!0});(0,Y.sp)(e,t)}),g.gm.addEventListener("error",()=>{(0,T.p)("uaErr",[],void 0,t.K7.genericEvents,this.ee)},(0,Y.jT)(!1,this.removeOnAbort.signal)),this.ee.on("open-xhr-start",(e,r)=>{l(e[1])||r.addEventListener("readystatechange",()=>{2===r.readyState&&(0,T.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)},(0,Y.jT)(void 0,this.removeOnAbort.signal))}),this.ee.on("fetch-start",e=>{e.length>=1&&!l(Ve(e[0]))&&(0,T.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)}),d.on("pushState-end",f),d.on("replaceState-end",f),window.addEventListener("hashchange",f,(0,Y.jT)(!0,this.removeOnAbort.signal)),window.addEventListener("popstate",f,(0,Y.jT)(!0,this.removeOnAbort.signal))}if(e.init.performance.resources.enabled&&g.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{(0,T.p)("browserPerformance.resource",[e],void 0,this.featureName,this.ee)})}).observe({type:"resource",buffered:!0})}}a.some(e=>e)?this.importAggregator(e,()=>r.e(478).then(r.bind(r,8019))):this.deregisterDrain()}}var xt=r(2646);const St=new Map;function _t(e,t,r,n,s=!0,i){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const a=function(e){return(e||w.ee).get("logger")}(e),o=(0,Ne.YM)(a,void 0,i),c=new xt.y(w.P);c.level=n.level,c.customAttributes=n.customAttributes,c.autoCaptured=s;const d=t[r]?.[Ne.Jt]||t[r];return St.set(d,c),o.inPlace(t,[r],"wrap-logger-",()=>St.get(d),void 0,!0),a}var Ot=r(1910);class Nt extends B{static featureName=se.TZ;constructor(e){var t;super(e,se.TZ),t=e,(0,N.Y)("log",(e,r)=>ae(e,r,t),t),function(e){(0,N.Y)(O.Wb,(t,r,{customAttributes:n={},level:s=se.p_.INFO}={})=>{_t(e.ee,t,r,{customAttributes:n,level:s},!1,e)},e)}(e),we(e);const n=this.ee;["log","error","warn","info","debug","trace"].forEach(t=>{(0,Ot.i)(g.gm.console[t]),_t(n,g.gm.console,t,{level:"log"===t?"info":t},void 0,e)}),this.ee.on("wrap-logger-end",function([e],t,r,s=[]){const{level:i,customAttributes:a,autoCaptured:o}=this;s.forEach(t=>{(0,ie.R)(n,e,a,i,o,t)})}),this.importAggregator(e,()=>r.e(478).then(r.bind(r,5288)))}}new W({features:[Xe,K,V,ft,gt,G,Ae,Tt,Nt,vt],loaderType:"spa"})})()})();</script>
<meta name="description" content="Ranked among the top 50 engineering schools worldwide, Waterloo Engineering is committed to leading engineering education and research." />
<link rel="canonical" href="https://uwaterloo.ca/engineering/" />
<link rel="image_src" href="https://uwaterloo.ca/engineering/sites/default/files/uploads/images/eng_stack_rgb.jpg" />
<meta property="og:url" content="https://uwaterloo.ca/engineering/" />
<meta property="og:title" content="Canada's Largest Engineering School | Engineering | University of Waterloo" />
<meta property="og:description" content="Ranked among the top 50 engineering schools worldwide, Waterloo Engineering is committed to leading engineering education and research." />
<meta property="og:image" content="https://uwaterloo.ca/engineering/sites/default/files/uploads/images/eng_stack_rgb.jpg" />
<meta property="og:updated_time" content="2026-08-10T14:55:27-04:00" />
<meta property="og:locale" content="en_CA" />
<meta name="twitter:card" content="summary_large_image" />
<meta name="Generator" content="Drupal 9 (https://www.drupal.org)" />
<meta name="MobileOptimized" content="width" />
<meta name="HandheldFriendly" content="true" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<script async src="https://www.googletagmanager.com/gtag/js?id=G-S49HGT3B6G"></script>
<script>window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-S49HGT3B6G', {
'cookie_domain': 'uwaterloo.ca',
'cookie_path': '/engineering/',
'cookie_expires': 2592000
});</script>
<link rel="icon" href="/engineering/profiles/uw_base_profile/themes/uw_fdsu_theme_resp/favicon.ico" />
<link rel="alternate" hreflang="en" href="https://uwaterloo.ca/engineering/" />
<link rel="icon" href="/engineering/profiles/uw_base_profile/themes/uw_fdsu_theme_resp/icon.svg" type="image/svg+xml" />
<link rel="apple-touch-icon" href="/engineering/profiles/uw_base_profile/themes/uw_fdsu_theme_resp/apple-touch-icon.png" />
<link rel="manifest" href="data:application/manifest+json,%7B%22icons%22%3A%5B%7B%22src%22%3A%22https%3A%5C%2F%5C%2Fuwaterloo.ca%5C%2Fengineering%5C%2Fprofiles%5C%2Fuw_base_profile%5C%2Fthemes%5C%2Fuw_fdsu_theme_resp%5C%2Ficon-192.png%22%2C%22type%22%3A%22image%5C%2Fpng%22%2C%22sizes%22%3A%22192x192%22%7D%2C%7B%22src%22%3A%22https%3A%5C%2F%5C%2Fuwaterloo.ca%5C%2Fengineering%5C%2Fprofiles%5C%2Fuw_base_profile%5C%2Fthemes%5C%2Fuw_fdsu_theme_resp%5C%2Ficon-512.png%22%2C%22type%22%3A%22image%5C%2Fpng%22%2C%22sizes%22%3A%22512x512%22%7D%5D%7D" />
<title>Canada's Largest Engineering School | Engineering | University of Waterloo</title>
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;700&family=Barlow:wght@400;500;700&display=swap" />
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;700&family=Barlow:wght@400;500;700&display=swap" media="print" onload="this.media='all'" />
<noscript>
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;700&family=Barlow:wght@400;500;700&display=swap" />
</noscript>
<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-M9XLVF');</script>
<!-- End Google Tag Manager -->
<link rel="stylesheet" media="all" href="/engineering/sites/default/files/css/css_hKxjyRVGS2Y-MEHEQ_mM6AiOO6s4LN03sGW2pMi-PjQ.css" />
<link rel="stylesheet" media="all" href="/engineering/sites/default/files/css/css_pLXwhCKciruf2CfL9hrTstR6YgC68MU-zu4ezR5tceA.css" />
</head>
<body class="org-eng not-layout-page path-frontpage front node-page node-page--node-type-uw-ct-web-page">
<!-- Google Tag Manager (noscript) -->
<noscript>
<iframe aria-label="Google Tag Manager" src="https://www.googletagmanager.com/ns.html?id=GTM-M9XLVF" height="0" width="0" style="display:none;visibility:hidden"></iframe>
</noscript>
<!-- End Google Tag Manager (noscript) -->
<div class="skiplinks">
<a href="#main" class="skiplinks__link visually-hidden focusable">Skip to main content</a>
</div>
<div class="dialog-off-canvas-main-canvas" data-off-canvas-main-canvas>
<div class="uw-site-container">
<header class="uw-header uw-header__menu--compressed org-eng" role="banner">
<div class="uw-header__masthead" lang="en">
<div class="uw-site-logo">
<a class="uw-site-logo__link" href="https://uwaterloo.ca" title="University of Waterloo Home" aria-label="University of Waterloo Home" rel="home"></a>
</div>
<div class="uw-header-menu uw-header-menu__compressed">
<nav class="uw-horizontal-nav uw-horizontal-nav--header" aria-label="University of Waterloo navigation">
<div class="uw-horizontal-nav--wrapper">
<div class="uw-horizontal-nav--menu">
<ul class="menu menu--horizontal" >
<li class="menu__item is-active-trail has-submenu" >
<a class="menu__link is-active-trail menu__link-sub"
tabindex="0"
aria-haspopup="true"
role="button"
>
<span class="link-text">
Jump to
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item menu__item-parent">
<a href="#" class="menu__link-parent">
<span class="link-text">
Jump to
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="https://uwaterloo.ca/admissions/"
>
<span class="link-text">
Admissions
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="https://uwaterloo.ca/about/"
>
<span class="link-text">
About Waterloo
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="https://uwaterloo.ca/faculties-academics/"
>
<span class="link-text">
Faculties & Academics
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="https://uwaterloo.ca/offices-services/"
>
<span class="link-text">
Offices & Services
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="https://uwaterloo.ca/support/"
>
<span class="link-text">
Support Waterloo
</span>
</a>
</li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
</div>
<div class="uw-header-search">
<form class="uw-search--form" role="search" data-drupal-selector="uw-search-form" action="/engineering/" method="post" id="uw-search-form" accept-charset="UTF-8">
<input class="uw-input uw-input--checkboxform form-checkbox" aria-hidden="true" tabindex="-1" data-drupal-selector="edit-opentray" type="checkbox" id="edit-opentray" name="opentray" value="1" />
<label class="uw-search--checkboxlabel option" data-drupal-selector="edit-opentray" for="edit-opentray"><span class="uw-search--checkboxlabel__labeltext">Open Search Location </span></label><div class="js-form-item form-item js-form-type-textfield form-item-search-input js-form-item-search-input form-no-label">
<label for="uw-search" class="visually-hidden"><span class="uw-search--labeltext">Search for </span></label>
<input class="uw-input uw-input--search form-text" data-drupal-selector="uw-search" data-msg-maxlength="<span class="uw-search--labeltext">Search for </span> field has a maximum length of 128." type="text" id="uw-search" name="search-input" value="" size="60" maxlength="128" placeholder="Search" />
</div>
<div class="js-form-item form-item js-form-type-select form-item-search-type js-form-item-search-type form-no-label">
<label for="uw-select-site" class="visually-hidden">Search Location</label>
<select class="form-item__select uw-select--search form-select" data-drupal-selector="uw-select-site" id="uw-select-site" name="search-type"><option value="" selected="selected">On all sites</option><option value="site:uwaterloo.ca/engineering/">On this site</option></select>
</div>
<input autocomplete="off" data-drupal-selector="form-vludhzeki3so-brpymh0cjyuhnrov7ncduxwkrsa-l4" type="hidden" name="form_build_id" value="form-VlUdhZEKi3so_BrpYMh0CjyUHnROV7ncduxWKRsA-l4" />
<input data-drupal-selector="edit-uw-search-form" type="hidden" name="form_id" value="uw_search_form" />
<div data-drupal-selector="edit-actions" class="form-actions js-form-wrapper form-wrapper" id="edit-actions--9"><div class="uw-search-button__wrapper"><input value="Search" class="button button--submit button--submit__form js-form-submit form-submit" data-drupal-selector="uw-search-submit" type="submit" id="uw-search-submit" name="op" />
</div></div>
</form>
</div>
</div>
<!-- Branding colour bar. -->
<div class="uw-colour-bar">
<div class="uw-colour-bar__wrapper">
<div class="uw-colour-bar__cbars">
<div class="uw-colour-bar__cbar org-eng-1"></div>
<div class="uw-colour-bar__cbar org-eng-2"></div>
<div class="uw-colour-bar__cbar org-eng-3"></div>
<div class="uw-colour-bar__cbar org-eng-4"></div>
</div>
</div>
</div>
<!-- Main header horizontal navigation -->
<nav class="uw-header__nav" lang="en">
<div class="uw-header__center">
<div class="uw-header__site-name">
<div class="uw-site-name">
<div class="uw-site-name__wrapper">
<a class="uw-site-name__link" href="https://uwaterloo.ca/engineering/" title="Engineering Home" rel="home">
<div class="uw-site-name__text">Engineering</div>
</a>
</div>
</div>
</div>
<button class="uw-navigation-button" aria-controls="uw-header__navigation" aria-expanded="false">
<span class="uw-navigation-button__text">Menu</span>
<span class="uw-navigation-button__lines"></span>
</button>
</div>
<div id="uw-header__navigation" class="uw-header__navigation">
<nav class="uw-horizontal-nav uw-horizontal-nav--main" aria-label="Site navigation">
<div class="uw-horizontal-nav--wrapper">
<div class="uw-horizontal-nav--home">
<a href="https://uwaterloo.ca/engineering/" class="uw-site-home__link" title="Engineering Home" rel="home">
<div class="uw-icon uw-svg uw-svg__home">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
<circle class="bg-circle" cx="12" cy="11.9" r="11.6"/>
<path class="house" d="M15.9,6.6c0-0.2-0.2-0.4-0.4-0.4c0,0,0,0,0,0h-1.1c-0.2,0-0.4,0.2-0.4,0.4c0,0,0,0,0,0v1.1l-1.7-1.6
c-0.2-0.2-0.5-0.2-0.6,0l-5.8,5.2l0.6,0.8l0.9-0.8V18c0,0.2,0.2,0.4,0.4,0.4c0,0,0,0,0,0h2.9c0.2,0,0.4-0.2,0.4-0.4c0,0,0,0,0,0
v-3.4h2V18c0,0.2,0.2,0.4,0.4,0.4c0,0,0,0,0,0h2.9c0.2,0,0.4-0.2,0.4-0.4c0,0,0,0,0,0v-6.5l0.9,0.8l0.6-0.8l-2.2-2L15.9,6.6z"/>
</svg>
</div>
<span class="off-screen">Engineering Home</span>
</a>
</div>
<div class="uw-horizontal-nav--menu">
<ul class="menu menu--horizontal" >
<li class="menu__item has-submenu" >
<a class="menu__link menu__link-sub"
tabindex="0"
aria-haspopup="true"
role="button"
>
<span class="link-text">
About
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item menu__item-parent">
<a href="/engineering/about" class="menu__link-parent">
<span class="link-text">
About
</span>
</a>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/about/our-history"
>
<span class="link-text">
Our history
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/about/our-history/waterloo-engineering-pin"
>
<span class="link-text">
Engineering pin
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/heritage-project"
>
<span class="link-text">
Heritage Project
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/about/territorial-acknowledgement"
>
<span class="link-text">
Territorial acknowledgement
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/about/our-people"
>
<span class="link-text">
Our people
</span>
</a>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/about/dean-engineering"
>
<span class="link-text">
Dean of Engineering
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/about/dean-engineering/deans-advisory-council"
>
<span class="link-text">
Dean's Advisory Council
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/about/dean-engineering/research-advisory-committee"
>
<span class="link-text">
Research Advisory Committee
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/about/departments-schools-and-programs"
>
<span class="link-text">
Departments, Schools and Programs
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/about/outreach-and-diversity"
>
<span class="link-text">
Outreach and Diversity
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/about/strategic-plan"
>
<span class="link-text">
Strategic Plan
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/about/rankings"
>
<span class="link-text">
Engineering Rankings
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/about/faculty-engineering-statistics"
>
<span class="link-text">
Faculty of Engineering Statistics
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/publications"
>
<span class="link-text">
Publications
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item has-submenu" >
<a class="menu__link menu__link-sub"
tabindex="0"
aria-haspopup="true"
role="button"
>
<span class="link-text">
Research
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item menu__item-parent">
<a href="/engineering/research" class="menu__link-parent">
<span class="link-text">
Research
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/research/engineering-research-office-centres-and-institutes"
>
<span class="link-text">
Centres and Institutes
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/research/industry-partnerships"
>
<span class="link-text">
Industry partnerships
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/labs-and-facilities"
>
<span class="link-text">
Labs and Facilities
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/research/engineering-research-office-research-chairs-and-awards"
>
<span class="link-text">
Research Chairs and Awards
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/research/engineering-research-office-research-videos"
>
<span class="link-text">
Research videos
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/research/resources-researchers"
>
<span class="link-text">
Resources for researchers
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item has-submenu" >
<a class="menu__link menu__link-sub"
tabindex="0"
aria-haspopup="true"
role="button"
>
<span class="link-text">
Entrepreneurship
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item menu__item-parent">
<a href="/engineering/entrepreneurship" class="menu__link-parent">
<span class="link-text">
Entrepreneurship
</span>
</a>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/entrepreneurship/funding"
>
<span class="link-text">
Funding
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/entrepreneurship/funding/engineer-future-trust"
>
<span class="link-text">
Engineer of the Future Fund
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/entrepreneurship/insight-creation-speaker-series"
>
<span class="link-text">
Insight To Creation Speaker Series
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/news"
>
<span class="link-text">
News
</span>
</a>
</li>
<li class="menu__item has-submenu" >
<a class="menu__link menu__link-sub"
tabindex="0"
aria-haspopup="true"
role="button"
>
<span class="link-text">
Events
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item menu__item-parent">
<a href="/engineering/events" class="menu__link-parent">
<span class="link-text">
Events
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/digital-screen-advertisement-request-form"
>
<span class="link-text">
Digital Screen Advertisement Request Form
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/events/engineering-events-initiatives-promotion-request-form"
>
<span class="link-text">
Engineering events & initiatives promotion request form
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/contact-us"
>
<span class="link-text">
Contact us
</span>
</a>
</li>
</ul>
</div>
</div>
</nav>
<nav class="uw-horizontal-nav uw-horizontal-nav--secondary" aria-label="Site secondary navigation">
<div class="uw-horizontal-nav--wrapper">
<div class="uw-horizontal-nav--menu">
<ul class="menu menu--horizontal" >
<li class="menu__item has-submenu" >
<a class="menu__link menu__link-sub"
tabindex="0"
aria-haspopup="true"
role="button"
>
<span class="link-text">
Future Students
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item menu__item-parent">
<a href="/engineering/future-students" class="menu__link-parent">
<span class="link-text">
Future Students
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/future-students/why-engineering"
>
<span class="link-text">
Why engineering?
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/future-students/engineering-program-compatibility-quiz"
>
<span class="link-text">
Take the engineering program compatibility quiz
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/future-students/program-overview"
>
<span class="link-text">
Choose a program
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/future-students/applying"
>
<span class="link-text">
Applying
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/future-students/paying-school"
>
<span class="link-text">
Paying for school
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/future-students/after-accepting"
>
<span class="link-text">
After accepting
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/future-students/future-careers"
>
<span class="link-text">
Explore future careers
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/future-students/co-op-future-students"
>
<span class="link-text">
Learn more about co-op
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/future-students/student-life"
>
<span class="link-text">
Get involved in student life
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/future-students/connect-us"
>
<span class="link-text">
Connect with us
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/future-students/interested-graduate-studies"
>
<span class="link-text">
Interested in Graduate Studies?
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item has-submenu" >
<a class="menu__link menu__link-sub"
tabindex="0"
aria-haspopup="true"
role="button"
>
<span class="link-text">
Undergraduate Students
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item menu__item-parent">
<a href="/engineering/undergraduate-students" class="menu__link-parent">
<span class="link-text">
Undergraduate Students
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/first-year"
>
<span class="link-text">
First year
</span>
</a>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/undergraduate-students/academic-support"
>
<span class="link-text">
Academics
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/academic-support/accreditation-information"
>
<span class="link-text">
Accreditation unit information
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/academic-support/altering-course-load"
>
<span class="link-text">
Altering course load
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/academic-support/graduate-attributes"
>
<span class="link-text">
Graduate attributes
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/academic-support/course-and-exam-information"
>
<span class="link-text">
Courses and enrolment
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/academic-support/gene-courses"
>
<span class="link-text">
GENE courses
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/academic-support/letter-permission"
>
<span class="link-text">
Letter of permission
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/academic-support/projected-course-offerings"
>
<span class="link-text">
Projected course offerings
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/academic-support/promotion-rules"
>
<span class="link-text">
Promotion rules
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/academic-support/non-degree-term"
>
<span class="link-text">
Non-degree term
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/undergraduate-students/co-op-experience"
>
<span class="link-text">
Co-op
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/co-op-experience/co-op-study-sequences"
>
<span class="link-text">
Co-op streams
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/co-op-experience/co-op-fundamentals-engineering-cfe"
>
<span class="link-text">
Co-op Fundamentals for Engineering (CFE)
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/co-op-experience/professional-development"
>
<span class="link-text">
Professional development
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/undergraduate-students/getting-support"
>
<span class="link-text">
Getting support
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/getting-support/academic-advisors"
>
<span class="link-text">
Academic advising
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/getting-support/accessibility"
>
<span class="link-text">
Accessibility
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/getting-support/engineering-counselling"
>
<span class="link-text">
Counselling
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/getting-support/declaring-absences"
>
<span class="link-text">
Declaring absences
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/getting-support/engineering-undergrad-office"
>
<span class="link-text">
Engineering undergrad office
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/getting-support/engineering-wellness"
>
<span class="link-text">
Engineering wellness
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/getting-support/international-students"
>
<span class="link-text">
International students
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/programs-engineering"
>
<span class="link-text">
Programs in Engineering
</span>
</a>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/undergraduate-students/degree-enhancement"
>
<span class="link-text">
Degree enhancement
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/degree-enhancement/accelerated-masters-applied-science-program"
>
<span class="link-text">
Accelerated Master's program
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/degree-enhancement/international-exchange"
>
<span class="link-text">
Exchange
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/degree-enhancement/options"
>
<span class="link-text">
Options
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/degree-enhancement/research-opportunities"
>
<span class="link-text">
Research opportunities
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/degree-enhancement/specializations-and-more"
>
<span class="link-text">
Specializations and more
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/undergraduate-students/policies-regulations"
>
<span class="link-text">
Policies and regulations
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/policies-regulations/academic-integrity"
>
<span class="link-text">
Academic integrity
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/policies-regulations/petitions-grievances-and-requests-reassessment"
>
<span class="link-text">
Petitions, Grievances and Requests for Reassessment
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/policies-regulations/transfers"
>
<span class="link-text">
Transfers
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/scholarships-and-awards"
>
<span class="link-text">
Scholarships and awards
</span>
</a>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/undergraduate-students/student-life"
>
<span class="link-text">
Student life
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/spotlights"
>
<span class="link-text">
Engineering spotlights
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/studyspaces"
>
<span class="link-text">
Engineering study spaces
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/capstone-design"
>
<span class="link-text">
Capstone design
</span>
</a>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/undergraduate-students/get-ready-graduate"
>
<span class="link-text">
Get ready to graduate
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/get-ready-graduate/convocation"
>
<span class="link-text">
Convocation
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/get-ready-graduate/engineer-your-future"
>
<span class="link-text">
Engineer Your Future
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/get-ready-graduate/roadmap-to-graduation"
>
<span class="link-text">
Roadmap to graduation
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/undergraduate-students/get-ready-graduate/iron-ring"
>
<span class="link-text">
Iron ring
</span>
</a>
</li>
</ul>
</li>
</ul>
</li>
<li class="menu__item has-submenu" >
<a class="menu__link menu__link-sub"
tabindex="0"
aria-haspopup="true"
role="button"
>
<span class="link-text">
Graduate Students
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item menu__item-parent">
<a href="/engineering/graduate-students" class="menu__link-parent">
<span class="link-text">
Graduate Students
</span>
</a>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/graduate-students/future-graduate-students"
>
<span class="link-text">
Future Graduate Students
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item has-submenu" >
<a class="menu__link"
href="/engineering/graduate-students/future-graduate-students/programs"
>
<span class="link-text">
Programs
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/future-graduate-students/programs/collaborative-masters-engineering-program-health"
>
<span class="link-text">
Collaborative Masters of Engineering Program in Health Technologies
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/future-graduate-students/programs/masters-engineering-professional-masters-course-work"
>
<span class="link-text">
Masters of Engineering - Professional Master's Course Work in Engineering
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/future-graduate-students/admission-requirements"
>
<span class="link-text">
Admission Requirements
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/future-graduate-students/international-students"
>
<span class="link-text">
International Students
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/future-graduate-students/research-and-supervisors"
>
<span class="link-text">
Research and Supervisors
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/future-graduate-students/region-waterloo-and-housing"
>
<span class="link-text">
The Region of Waterloo and housing
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/new-students"
>
<span class="link-text">
New Students
</span>
</a>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/graduate-students/current-students"
>
<span class="link-text">
Current students
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item has-submenu" >
<a class="menu__link"
href="/engineering/graduate-students/current-students/program-guidelines"
>
<span class="link-text">
Program guidelines
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/current-students/program-guidelines/degree-requirements"
>
<span class="link-text">
Degree Requirements
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/current-students/graduating-students/degree-completition-deadlines"
>
<span class="link-text">
Degree Completion Deadlines
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/current-students/program-guidelines/steps-graduate"
>
<span class="link-text">
Steps to graduate
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/current-students/graduating-students/phd-comprehensive-exam"
>
<span class="link-text">
PhD Comprehensive Exam
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/current-students/program-guidelines/program-changes"
>
<span class="link-text">
Program Changes
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/current-students/program-guidelines/graduate-studies-forms"
>
<span class="link-text">
Forms
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/current-students/courses-engineering"
>
<span class="link-text">
Courses
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/current-students/teaching-assistantship-faculty-engineering"
>
<span class="link-text">
Teaching Assistantship
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/current-students/graduating-students"
>
<span class="link-text">
Graduating Students
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/graduate-petitions-student-issues"
>
<span class="link-text">
Petitions and Student Issues
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/current-students/accelerated-masters-programs"
>
<span class="link-text">
Accelerated Masters
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/current-students/collaborative-masters-engineering-health-technologies"
>
<span class="link-text">
Collaborative Masters of Engineering in Health Technologies
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/graduate-students/funding-scholarships-and-awards"
>
<span class="link-text">
Funding, Scholarships and Awards
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/funding-scholarships-and-awards/minimum-funding-and-other-support"
>
<span class="link-text">
Minimum funding and other support
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/funding-scholarships-and-awards/international-students-funding"
>
<span class="link-text">
International Students Funding
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/funding-scholarships-and-awards/internal-waterloo-awards"
>
<span class="link-text">
Internal Waterloo Awards
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/funding-scholarships-and-awards/external-awards"
>
<span class="link-text">
External Awards
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/funding-scholarships-and-awards/bursaries-and-loans"
>
<span class="link-text">
Bursaries and loans
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/funding-scholarships-and-awards/tuition-and-budget"
>
<span class="link-text">
Tuition and Budget
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/graduate-students/student-life"
>
<span class="link-text">
Student Life
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/student-life/graduate-student-services"
>
<span class="link-text">
Graduate Student Services
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/student-life/athletics-and-recreation"
>
<span class="link-text">
Athletics and Recreation
</span>
</a>
</li>
<li class="menu__item has-submenu" >
<a class="menu__link"
href="/engineering/graduate-students/student-life/clubs-and-associations"
>
<span class="link-text">
Clubs and Associations
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/student-life/engineering-graduate-studies-student-advisory-committee"
>
<span class="link-text">
EGSSAC Committee
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item has-submenu" >
<a class="menu__link"
href="/engineering/graduate-students/student-life/waterloo-campus"
>
<span class="link-text">
Waterloo Campus
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/student-life/food-and-services"
>
<span class="link-text">
Food and Services
</span>
</a>
</li>
</ul>
</li>
</ul>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/graduate-students/contact-us"
>
<span class="link-text">
Contact us
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/contact-us/information-supervisors-regarding-phd-defences-and-external"
>
<span class="link-text">
Information for PhD supervisors
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/contact-us/information-external-examiners"
>
<span class="link-text">
Information for external examiners
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/events-info-sessions"
>
<span class="link-text">
Events & Info Sessions
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/graduate-students/meet-our-students"
>
<span class="link-text">
Meet our Students
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item has-submenu" >
<a class="menu__link menu__link-sub"
tabindex="0"
aria-haspopup="true"
role="button"
>
<span class="link-text">
Alumni and Friends
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item menu__item-parent">
<a href="/engineering/alumni-and-friends" class="menu__link-parent">
<span class="link-text">
Alumni and Friends
</span>
</a>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/alumni/alumni-achievement-medals"
>
<span class="link-text">
Alumni awards
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni/alumni-achievement-medals/individual"
>
<span class="link-text">
Alumni Achievement Medals
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni/alumni-achievement-medals/team-alumni-achievement-medal"
>
<span class="link-text">
Team Alumni Achievement Medals
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni/alumni-achievement-medals/rising-star-alumni-achievement-medals"
>
<span class="link-text">
Rising Star Alumni Achievement Medals
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni/alumni-achievement-medals/friend-faculty-award"
>
<span class="link-text">
Friend of the Faculty Award
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni/alumni-achievement-medals/medal-and-award-recipients"
>
<span class="link-text">
Past Medal Recipients
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni/alumni-achievement-medals/notable-alumni-faculty-accomplishments"
>
<span class="link-text">
Notable Alumni & Faculty Accomplishments
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/alumni/reunions"
>
<span class="link-text">
Alumni reunions
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni/reunions/55-year-reunion"
>
<span class="link-text">
55-year Reunion +
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni/reunions/50"
>
<span class="link-text">
50-year reunion
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni/reunions/30-35-40-and-45"
>
<span class="link-text">
30, 35, 40 & 45-year Reunion
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni/reunions/25"
>
<span class="link-text">
25-year reunion
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni/reunions/5-10-15-and-20"
>
<span class="link-text">
5, 10, 15 & 20-year Reunion
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni/reunions/class-representatives"
>
<span class="link-text">
Class representatives
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni/reunions/future-reunion-dates"
>
<span class="link-text">
Future reunion dates
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni/reunions/resources"
>
<span class="link-text">
Reunion resources
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni/reunions/your-class-web-page"
>
<span class="link-text">
Class web pages
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni-and-friends/upcoming-engineering-alumni-events"
>
<span class="link-text">
Alumni events
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni/getinvolved"
>
<span class="link-text">
Get involved
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni-and-friends/recent-engineering-alumni"
>
<span class="link-text">
Recent Engineering Alumni
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/alumni/faq"
>
<span class="link-text">
FAQ
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/support-us"
>
<span class="link-text">
Support Us
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item has-submenu" >
<a class="menu__link menu__link-sub"
tabindex="0"
aria-haspopup="true"
role="button"
>
<span class="link-text">
Faculty and Staff
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item menu__item-parent">
<a href="/engineering/faculty-and-staff" class="menu__link-parent">
<span class="link-text">
Faculty and Staff
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/faculty-and-staff/awards"
>
<span class="link-text">
Awards
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/faculty-and-staff/councils-and-committees"
>
<span class="link-text">
Councils and committees
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/faculty-and-staff/faculty-openings"
>
<span class="link-text">
Faculty openings
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/faculty-and-staff/new-faculty"
>
<span class="link-text">
New faculty
</span>
</a>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/resources-and-services/co-operative-education-and-professional-affairs-office"
>
<span class="link-text">
Co-operative Education and Professional Affairs Office (CEPA)
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/resources-and-services/co-operative-education-and-professional-affairs-office/professional-licensing"
>
<span class="link-text">
Professional registration
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item has-submenu sub-1" >
<a class="menu__link"
href="/engineering/faculty-and-staff/international"
>
<span class="link-text">
International
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item" >
<a class="menu__link"
href="/engineering/faculty-and-staff/international/guidelines-engineering-international-affairs"
>
<span class="link-text">
Guidelines on Engineering International Affairs
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/faculty-and-staff/faculty-performance"
>
<span class="link-text">
Faculty Performance
</span>
</a>
</li>
</ul>
</li>
<li class="menu__item has-submenu" >
<a class="menu__link menu__link-sub"
tabindex="0"
aria-haspopup="true"
role="button"
>
<span class="link-text">
Postdoctoral Fellows
</span>
</a>
<ul class="menu menu__subnav">
<li class="menu__item menu__item-parent">
<a href="/engineering/postdoctoral-fellows" class="menu__link-parent">
<span class="link-text">
Postdoctoral Fellows
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="/engineering/postdoctoral-fellows/meet-our-postdoctoral-fellows"
>
<span class="link-text">
Meet our Postdoctoral Fellows
</span>
</a>
</li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
</div>
</nav>
</header>
<div class="uw-highlighted">
<div class="uw-highlighted__content">
<div data-drupal-messages-fallback class="hidden"></div>
</div>
</div>
<main id="main" class="uw-main" role="main" tabindex="-1">
<div role="article" about="/engineering/home" class="node node--type-uw-ct-web-page node--view-mode-full uw-node">
<div class="uw-node__grid">
<article class="uw-node__node">
<div class="node__content">
<div class="uw-node__with-media uw-node__with-media--banner">
<article class="card card__node card__node--web-page">
<div class="card__media layout uw-full-width">
<div class="uw-carousel uw-carousel__banner uw-carousel__banner-full-width " data-uuid="" data-autoplay="1" data-slide-speed="7000" style="--banner-transition-speed: 400ms">
<div class="carousel">
<article id="banner1-6a8a5c18ac5a6" class="card card__has-style card__full-width card__banner card__node--uw_ct_web_page">
<div class="card__body">
<div class="card__banner--image uw-text-overlay--full-width">
<a href="https://uwaterloo.ca/news/media/ai-powered-system-could-help-save-lives-predicting-how">
<!--If banner text overlay is split then always show
the H1 in the top white bar. -->
<div class="card__banner--media">
<picture class="uw-picture">
<!--[if IE 9]><video style="display: none;"><![endif]-->
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_large/public/uploads/images/jason-pulsipher-banner.jpg?itok=bYKRnj-x 1x" media="all and (min-width: 63.19em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_large/public/uploads/images/jason-pulsipher-banner.jpg?itok=vQ6DnqZq 1x" media="all and (min-width: 49.81em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_medium/public/uploads/images/jason-pulsipher-banner.jpg?itok=HnafZPyJ 1x" media="all and (min-width: 30em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_small/public/uploads/images/jason-pulsipher-banner.jpg?itok=cvzsQx9C 1x" media="all and (min-width: 25em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_small/public/uploads/images/jason-pulsipher-banner.jpg?itok=vSiI37XX 1x" media="all and (min-width: 15em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_portrait/public/uploads/images/jason-pulsipher-banner.jpg?itok=Aiwlcnej 1x" media="all and (min-width: 1em)" type="image/jpeg" />
<!--[if IE 9]></video><![endif]-->
<img class="uw-picture__fallback" src="/engineering/sites/default/files/styles/large/public/uploads/images/jason-pulsipher-banner.jpg?itok=Uz6AkTem" alt="Professor Jason Pulsipher">
</picture>
</div>
<div class="card__banner--caption uw_para_image_banner">
<span class="card__banner--title">
<strong>
Fighting fire with data
</strong>
</span>
</div>
</a>
</div>
</div>
</article>
<article id="banner2-6a8a5c18b1dbf" class="card card__has-style card__full-width card__banner card__node--uw_ct_web_page">
<div class="card__body">
<div class="card__banner--image uw-text-overlay--full-width">
<a href="https://uwaterloo.ca/news/how-we-are-engineering-bacteria-eat-cancer">
<!--If banner text overlay is split then always show
the H1 in the top white bar. -->
<div class="card__banner--media">
<picture class="uw-picture">
<!--[if IE 9]><video style="display: none;"><![endif]-->
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_large/public/uploads/images/cancer-banner-3.jpg?itok=Vu7U-pBH 1x" media="all and (min-width: 63.19em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_large/public/uploads/images/cancer-banner-3.jpg?itok=WJTbLmma 1x" media="all and (min-width: 49.81em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_medium/public/uploads/images/cancer-banner-3.jpg?itok=mAXncYLx 1x" media="all and (min-width: 30em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_small/public/uploads/images/cancer-banner-3.jpg?itok=yeGQYrAI 1x" media="all and (min-width: 25em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_small/public/uploads/images/cancer-banner-3.jpg?itok=MiciqVlR 1x" media="all and (min-width: 15em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_portrait/public/uploads/images/cancer-banner-3.jpg?itok=dind3UOB 1x" media="all and (min-width: 1em)" type="image/jpeg" />
<!--[if IE 9]></video><![endif]-->
<img class="uw-picture__fallback" src="/engineering/sites/default/files/styles/large/public/uploads/images/cancer-banner-3.jpg?itok=TMZJA4p5" alt="Waterloo Engineering researchers fighting cancer.">
</picture>
</div>
<div class="card__banner--caption uw_para_image_banner">
<span class="card__banner--title">
<strong>
Engineering bacteria to eat cancer tumours
</strong>
</span>
</div>
</a>
</div>
</div>
</article>
<article id="banner3-6a8a5c18b7268" class="card card__has-style card__full-width card__banner card__node--uw_ct_web_page">
<div class="card__body">
<div class="card__banner--image uw-text-overlay--full-width">
<a href="https://uwaterloo.ca/news/waterloo-students-refuel-beloved-tradition">
<!--If banner text overlay is split then always show
the H1 in the top white bar. -->
<div class="card__banner--media">
<picture class="uw-picture">
<!--[if IE 9]><video style="display: none;"><![endif]-->
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_large/public/uploads/images/bus_push_eng-news_banner-image.jpg?itok=he6x2HyY 1x" media="all and (min-width: 63.19em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_large/public/uploads/images/bus_push_eng-news_banner-image.jpg?itok=5jYEyDpC 1x" media="all and (min-width: 49.81em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_medium/public/uploads/images/bus_push_eng-news_banner-image.jpg?itok=QRrx0tMI 1x" media="all and (min-width: 30em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_small/public/uploads/images/bus_push_eng-news_banner-image.jpg?itok=7PbTttT2 1x" media="all and (min-width: 25em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_small/public/uploads/images/bus_push_eng-news_banner-image.jpg?itok=6A1-BRal 1x" media="all and (min-width: 15em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_portrait/public/uploads/images/bus_push_eng-news_banner-image.jpg?itok=cp4ZW8R2 1x" media="all and (min-width: 1em)" type="image/jpeg" />
<!--[if IE 9]></video><![endif]-->
<img class="uw-picture__fallback" src="/engineering/sites/default/files/styles/large/public/uploads/images/bus_push_eng-news_banner-image.jpg?itok=wh4o-Ryq" alt="Students pulling a school bus">
</picture>
</div>
<div class="card__banner--caption uw_para_image_banner">
<span class="card__banner--title">
<strong>
Waterloo students refuel a beloved tradition
</strong>
</span>
</div>
</a>
</div>
</div>
</article>
<article id="banner4-6a8a5c18bc783" class="card card__has-style card__full-width card__banner card__node--uw_ct_web_page">
<div class="card__body">
<div class="card__banner--image uw-text-overlay--full-width">
<a href="https://uwaterloo.ca/news/going-all-what-matters">
<!--If banner text overlay is split then always show
the H1 in the top white bar. -->
<div class="card__banner--media">
<picture class="uw-picture">
<!--[if IE 9]><video style="display: none;"><![endif]-->
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_large/public/uploads/images/coop_student_of_the_year_award_speech.jpg?itok=sEiWC6UM 1x" media="all and (min-width: 63.19em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_large/public/uploads/images/coop_student_of_the_year_award_speech.jpg?itok=Djf_djqJ 1x" media="all and (min-width: 49.81em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_medium/public/uploads/images/coop_student_of_the_year_award_speech.jpg?itok=GhIjJ-K4 1x" media="all and (min-width: 30em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_small/public/uploads/images/coop_student_of_the_year_award_speech.jpg?itok=KF3XkFSC 1x" media="all and (min-width: 25em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_small/public/uploads/images/coop_student_of_the_year_award_speech.jpg?itok=MoKEP6vZ 1x" media="all and (min-width: 15em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_portrait/public/uploads/images/coop_student_of_the_year_award_speech.jpg?itok=WBLiMbzj 1x" media="all and (min-width: 1em)" type="image/jpeg" />
<!--[if IE 9]></video><![endif]-->
<img class="uw-picture__fallback" src="/engineering/sites/default/files/styles/large/public/uploads/images/coop_student_of_the_year_award_speech.jpg?itok=aQwCVKZz" alt="Student at podium">
</picture>
</div>
<div class="card__banner--caption uw_para_image_banner">
<span class="card__banner--title">
<strong>
Going all in on what matters
</strong>
</span>
</div>
</a>
</div>
</div>
</article>
<article id="banner5-6a8a5c18c1afd" class="card card__has-style card__full-width card__banner card__node--uw_ct_web_page">
<div class="card__body">
<div class="card__banner--image uw-text-overlay--full-width">
<a href="https://uwaterloo.ca/engineering/news/graduate-student-makes-finals-national-research-photo">
<!--If banner text overlay is split then always show
the H1 in the top white bar. -->
<div class="card__banner--media">
<picture class="uw-picture">
<!--[if IE 9]><video style="display: none;"><![endif]-->
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_large/public/uploads/images/smoke-b.jpg?itok=K3NzfRUz 1x" media="all and (min-width: 63.19em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_large/public/uploads/images/smoke-b.jpg?itok=u4GXGyW5 1x" media="all and (min-width: 49.81em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_medium/public/uploads/images/smoke-b.jpg?itok=NJkpvEmV 1x" media="all and (min-width: 30em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_small/public/uploads/images/smoke-b.jpg?itok=FibbyFQh 1x" media="all and (min-width: 25em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_small/public/uploads/images/smoke-b.jpg?itok=CJw6kEF0 1x" media="all and (min-width: 15em)" type="image/jpeg" />
<source srcset="/engineering/sites/default/files/styles/uw_is_portrait/public/uploads/images/smoke-b.jpg?itok=qzaU-aiL 1x" media="all and (min-width: 1em)" type="image/jpeg" />
<!--[if IE 9]></video><![endif]-->
<img class="uw-picture__fallback" src="/engineering/sites/default/files/styles/large/public/uploads/images/smoke-b.jpg?itok=oyefqvFn" alt="A photo of two cylinders in a wind tunnel in a study on drag.">
</picture>
</div>
<div class="card__banner--caption uw_para_image_banner">
<span class="card__banner--title">
<strong>
Shooting for research photography honours
</strong>
</span>
</div>
</a>
</div>
</div>
</article>
</div>
<div class="uw-nav__banner-control-wrap">
<button href="#uw-pause" id="uw-play" class="uw-nav__banner-control uw-play" title="play">
<span class="element-invisible off-screen">Play banner slideshow</span>
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
<title>play</title>
<polygon class="uw-play-svg" points="23.3,15.9 9.2,7.7 9.2,24 "/>
</svg>
</div>
</button>
<button href="#uw-play" id="uw-pause" class="uw-nav__banner-control uw-pause" title="pause">
<span class="element-invisible off-screen">Pause banner slideshow</span>
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
<title>pause</title>
<rect x="9" y="8.2" class="uw-pause-svg" width="4" height="15"/>
<rect x="16.8" y="8.2" class="uw-pause-svg" width="4" height="15"/>
</svg>
</div>
</button>
</div>
</div>
<noscript>
<div class="uw-nav__dots-js">
<a href="#banner1-" role="button" class="owl-dot"></a>
<a href="#banner2-" role="button" class="owl-dot"></a>
<a href="#banner3-" role="button" class="owl-dot"></a>
<a href="#banner4-" role="button" class="owl-dot"></a>
<a href="#banner5-" role="button" class="owl-dot"></a>
</div>
</noscript>
</div>
<div class="card__header uw-node__with-media uw-node__with-media--banner">
<h1 class="card__title">
Canada's Largest Engineering School
</h1>
</div>
<div class="card__body">
<div class="card__content">
<section
class="uw-contained-width uw-section-spacing--default uw-section-separator--none uw-column-separator--none layout layout--uw-1-col"
>
<div
>
</div>
</section>
<section
class="uw-contained-width uw-contained-width--wide uw-section-spacing--default uw-section-separator--none uw-column-separator--none layout layout--uw-1-col"
>
<div
class="layout__region layout__region--first"
>
<div class="uw-text-align--left block block-layout-builder block-inline-blockuw-cbl-copy-text">
<div class="uw-copy-text">
<div class="uw-copy-text__wrapper ">
<p><strong>Ranked among the top 50 engineering schools worldwide</strong>, Waterloo Engineering is committed to leading engineering education and research.</p>
<p>We are the largest engineering school in Canada, <a href="https://uwaterloo.ca/engineering/about/faculty-engineering-statistics">with 10,898 enrolled in 2025</a>, and expansive range of state -of- the -art, future ready labs powered by industry and government funding. In 2024/25, external research funding from Canadian and international partners exceeded $103 million, up $24 million from prior year, this strong growth is reflective of our extensive industry partnerships and the excellence of our engineering research programs.</p>
<p><a data-entity-substitution="canonical" data-entity-type="node" data-entity-uuid="5b44d3be-6c0c-422a-bcdc-df8c243c9cf7" href="/engineering/about"><em><span>About Engineering →</span></em></a></p>
</div>
</div>
</div>
</div>
</section>
<section
class="uw-contained-width uw-section-spacing--default uw-section-separator--none uw-column-separator--none layout layout--uw-1-col"
>
<div
>
</div>
</section>
<section
class="uw-contained-width uw-section-spacing--default uw-section-separator--none uw-column-separator--none layout layout--uw-2-col even-split"
>
<div
class="layout__region layout__region--first"
>
<div class="block block-layout-builder block-inline-blockuw-cbl-banner-images">
<article id="banner1-6a8a5c18cc158" class="card card__banner">
<div class="card__body">
<div class="card__banner--image uw-text-overlay--full-width">
<a href="/engineering/undergraduate-students">
<!--If banner text overlay is split then always show
the H1 in the top white bar. -->
<div class="card__banner--media">
<picture class="uw-picture">
<!--[if IE 9]><video style="display: none;"><![endif]-->
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_large/public/uploads/images/undergraduates.png?itok=4sJuY58P 1x" media="all and (min-width: 63.19em)" type="image/png" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_large/public/uploads/images/undergraduates.png?itok=4-MU3F8A 1x" media="all and (min-width: 49.81em)" type="image/png" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_medium/public/uploads/images/undergraduates.png?itok=8KATde0a 1x" media="all and (min-width: 30em)" type="image/png" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_small/public/uploads/images/undergraduates.png?itok=nk0bMv5j 1x" media="all and (min-width: 25em)" type="image/png" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_small/public/uploads/images/undergraduates.png?itok=Yo5znp22 1x" media="all and (min-width: 15em)" type="image/png" />
<source srcset="/engineering/sites/default/files/styles/uw_is_portrait/public/uploads/images/undergraduates.png?itok=BO95QyyR 1x" media="all and (min-width: 1em)" type="image/png" />
<!--[if IE 9]></video><![endif]-->
<img class="uw-picture__fallback" src="/engineering/sites/default/files/styles/large/public/uploads/images/undergraduates.png?itok=j-6QZlPz" alt="Students in a lecture">
</picture>
</div>
<div class="card__banner--caption uw_para_image_banner">
<span class="card__banner--sub-title">
Information for Undergraduate Students
</span>
</div>
</a>
</div>
</div>
</article>
</div>
</div>
<div
class="layout__region layout__region--second"
>
<div class="block block-layout-builder block-inline-blockuw-cbl-banner-images">
<article id="banner1-6a8a5c18d1fa2" class="card card__banner">
<div class="card__body">
<div class="card__banner--image uw-text-overlay--full-width">
<a href="/engineering/graduate-students">
<!--If banner text overlay is split then always show
the H1 in the top white bar. -->
<div class="card__banner--media">
<picture class="uw-picture">
<!--[if IE 9]><video style="display: none;"><![endif]-->
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_large/public/uploads/images/graduates_0.png?itok=R-75vxE8 1x" media="all and (min-width: 63.19em)" type="image/png" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_large/public/uploads/images/graduates_0.png?itok=6OWelnkR 1x" media="all and (min-width: 49.81em)" type="image/png" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_medium/public/uploads/images/graduates_0.png?itok=yd0qxfGm 1x" media="all and (min-width: 30em)" type="image/png" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_small/public/uploads/images/graduates_0.png?itok=7qBjqDu7 1x" media="all and (min-width: 25em)" type="image/png" />
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_small/public/uploads/images/graduates_0.png?itok=ZMuLXReU 1x" media="all and (min-width: 15em)" type="image/png" />
<source srcset="/engineering/sites/default/files/styles/uw_is_portrait/public/uploads/images/graduates_0.png?itok=nUyLnQrn 1x" media="all and (min-width: 1em)" type="image/png" />
<!--[if IE 9]></video><![endif]-->
<img class="uw-picture__fallback" src="/engineering/sites/default/files/styles/large/public/uploads/images/graduates_0.png?itok=dfcXW6Ze" alt="graduate student working in lab">
</picture>
</div>
<div class="card__banner--caption uw_para_image_banner">
<span class="card__banner--sub-title">
Information for Graduate Students
</span>
</div>
</a>
</div>
</div>
</article>
</div>
</div>
</section>
<section
class="uw-contained-width uw-section-spacing--default uw-section-separator--none uw-column-separator--none layout layout--uw-1-col"
>
<div
class="layout__region layout__region--first"
>
<div class="block block-layout-builder block-inline-blockuw-cbl-call-to-action">
<div class="uw-cta ">
<div class="uw-cta__center-wrapper">
<aside class="uw-cta__aside org-eng">
<a href="https://uwaterloo.ca/engineering/research" class="uw-cta__link">
<div class="uw-cta__wrapper">
<div class="call-to-action-theme-org-eng">
<div class="uw-cta__text uw-cta__text--small">WATERLOO ENGINEERING</div>
<div class="uw-cta__text uw-cta__text--big">RESEARCH STRENGTHS</div>
</div>
</div>
</a>
</aside>
<aside class="uw-cta__aside org-eng">
<a href="/engineering/faculty-and-staff/faculty-openings" class="uw-cta__link">
<div class="uw-cta__wrapper">
<div class="call-to-action-theme-org-eng">
<div class="uw-cta__text uw-cta__text--small">Faculty Openings</div>
<div class="uw-cta__text uw-cta__text--big">CAREER OPPORTUNITIES</div>
</div>
</div>
</a>
</aside>
<aside class="uw-cta__aside org-eng">
<a href="https://uwaterloo.ca/engineering-wellness-program/" class="uw-cta__link">
<div class="uw-cta__wrapper">
<div class="call-to-action-theme-org-eng">
<div class="uw-cta__text uw-cta__text--small">WELLNESS AND MENTAL HEALTH</div>
<div class="uw-cta__text uw-cta__text--big">RESOURCES</div>
</div>
</div>
</a>
</aside>
<aside class="uw-cta__aside org-eng">
<a href="https://imodules.uwaterloo.ca/s/1802/21/form.aspx?sid=1802&gid=2&pgid=678&cid=1648" class="uw-cta__link">
<div class="uw-cta__wrapper">
<div class="call-to-action-theme-org-eng">
<div class="uw-cta__text uw-cta__text--small">Support</div>
<div class="uw-cta__text uw-cta__text--big">WATERLOO ENGINEERING</div>
</div>
</div>
</a>
</aside>
</div>
</div>
</div>
</div>
</section>
<section
class="uw-contained-width uw-section-spacing--default uw-section-separator--none uw-column-separator--none layout layout--uw-1-col"
>
<div
class="layout__region layout__region--first"
>
<div class="block block-uw-custom-blocks block-uw-cbl-multi-type-list">
<div class="uw-tabs">
<div class="uw-tab" role="tablist" aria-label="Multi-tab list" >
<button role="tab" class="uw-tablinks button button--large " aria-selected="true" aria-controls="News" id="tab-1" tabindex="0" data-uuid="99003208">News</button>
<button role="tab" class="uw-tablinks button button--large " aria-selected="false" aria-controls="Events" id="tab-2" tabindex="0" data-uuid="1700071536">Events</button>
</div>
<h2 class="hide-js"> News</h2>
<div id="News" class="uw-tabcontent" role="tabpanel" tabindex="0" aria-labelledby="tab-1" >
<article class="card card__teaser card__teaser--news-item card--show-hover">
<div class="card__header ">
<div class="card__date">
<span class="uw-date">
Wednesday, August 19, 2026
</span>
</div>
<h2 class="card__title">
<a href="/engineering/news/profs-partner-battery-free-sensor-iot-applications">
Profs partner on battery-free sensor with IoT applications
</a>
</h2>
</div>
<div class="card__body">
<div class="card__content"><p><span><span><span>A team led by two Waterloo Engineering professors has developed a battery-free sensor with promising potential applications to expand the reach of Internet of Things (IoT) technologies.</span></span></span></p>
<p><span><span><span>“The legacy approach to sensors relies on local gateways and batteries, limiting scalability, adding environmental burden and increasing maintenance overhead,” said Dr. George Shaker, a professor of electrical and computer engineering.</span></span></span></p></div>
</div>
<div class="card__tags">
<ul class="tag-list teaser--news-item">
<li class="tag-list__item ">
<a href="https://uwaterloo.ca/engineering/news?audience[79]=79" class="tag " rel="tag">Electrical & Computer</a>; </li>
<li class="tag-list__item ">
<a href="https://uwaterloo.ca/engineering/news?audience[82]=82" class="tag " rel="tag">Mechanical & Mechatronics</a> </li>
</ul>
</div>
</article>
<article class="card card__teaser card__teaser--news-item card--show-hover">
<div class="card__header ">
<div class="card__date">
<span class="uw-date">
Monday, August 17, 2026
</span>
</div>
<h2 class="card__title">
<a href="/engineering/news/tech-founder-credits-waterloo-early-support-needed-succeed">
Tech founder credits Waterloo with early support needed to succeed
</a>
</h2>
</div>
<div class="card__body">
<div class="card__content"><p><span><span><span>A former student at Waterloo Engineering is now getting traction in Silicon Valley as the founder and chief executive officer of a technology startup that uses artificial intelligence (AI) to do home appraisals via a mobile app.</span></span></span></p>
<p><span><span><span>Humza Ahmed was studying mechanical engineering when he was bitten by the business bug and inspired by the entrepreneurship ecosystem at Waterloo to put a new twist on an occupation with deep roots in his family.</span></span></span></p></div>
</div>
<div class="card__tags">
<ul class="tag-list teaser--news-item">
<li class="tag-list__item ">
<a href="https://uwaterloo.ca/engineering/news?audience[82]=82" class="tag " rel="tag">Mechanical & Mechatronics</a> </li>
</ul>
</div>
</article>
<article class="card card__teaser card__teaser--news-item card--show-hover">
<div class="card__header ">
<div class="card__date">
<span class="uw-date">
Friday, August 14, 2026
</span>
</div>
<h2 class="card__title">
<a href="/engineering/news/researcher-honoured-prestigious-water-industry-award">
Researcher honoured with prestigious water industry award
</a>
</h2>
</div>
<div class="card__body">
<div class="card__content"><p dir="ltr">A Waterloo Engineering researcher has been recognized with one of the water industry's highest honours for her contributions to municipal water research and the advancement of the water profession.</p>
<p dir="ltr">Dr. Monica Emelko, a professor in the Department of Civil and Environmental Engineering, has received the Norman J. Howard Award from the Ontario Water Works Association (OWWA), one of the association's highest honours. The award recognizes proficiency and leadership in key areas of municipal water supply and celebrates those who have made significant contributions to ensuring safe, reliable and sustainable water systems. </p></div>
</div>
<div class="card__tags">
<ul class="tag-list teaser--news-item">
<li class="tag-list__item ">
<a href="https://uwaterloo.ca/engineering/news?tags[386]=386" class="tag " rel="tag">Civil Engineering</a> </li>
</ul>
</div>
</article>
<div class="uw-multi-type-list__button">
<a class="button " href="/engineering/news" >
Read all news
</a>
</div>
</div>
<h2 class="hide-js"> Events</h2>
<div id="Events" class="uw-tabcontent" role="tabpanel" tabindex="0" aria-labelledby="tab-2" hidden >
<article class="card card__teaser card__teaser--event card--show-hover">
<div class="card__image">
<a href="/engineering/events/economic-briefing-Larry-Smith-01Oct2026" aria-label="Economic Briefing with Professor Larry Smith">
<img src="/engineering/sites/default/files/styles/uw_is_media_medium/public/uploads/images/larry-smith_eng-news-banner_0.jpeg?itok=3y_7pp3K" alt="Larry Smith delivering a lecture with attendees sitting in a classroom" />
</a>
</div>
<div class="card__header ">
<div class="card__date">
<span class="uw-date">
Thursday, October 1, 2026 6:00 pm
-
9:30 pm
EDT (GMT -04:00)
</span>
</div>
<h2 class="card__title">
<a href="/engineering/events/economic-briefing-Larry-Smith-01Oct2026">
Economic Briefing with Professor Larry Smith
</a>
</h2>
</div>
<div class="card__body">
<div class="card__content"><p><span><span><span><span lang="EN-GB" xml:lang="EN-GB">This October 1, Waterloo Engineering invites you to join us in Toronto for an evening reception and lecture with Professor Larry Smith. <span>The event marks Smith’s remarkable 45-year career at the University where he specializes in forecasting and the economics of innovation. </span></span></span></span></span></p>
<p><span><span><span><span lang="EN-GB" xml:lang="EN-GB">This event is part of Waterloo Engineering's annual alumni lecture series exploring the forces shaping our global future. This year's focus on economic futures connects to the University of Waterloo's </span><a href="https://uwaterloo.ca/strategic-vision/global-futures"><span>Global Futures</span></a><span lang="EN-GB" xml:lang="EN-GB"> vision — a framework for addressing the defining challenges of our time.</span></span></span></span></p></div>
</div>
<div class="card__tags">
<ul class="tag-list teaser--event">
<li class="tag-list__item ">
<a href="https://uwaterloo.ca/engineering/events?tags[118]=118" class="tag " rel="tag">reception</a>; </li>
<li class="tag-list__item ">
<a href="https://uwaterloo.ca/engineering/events?tags[109]=109" class="tag " rel="tag">lecture</a>; </li>
<li class="tag-list__item ">
<a href="https://uwaterloo.ca/engineering/events?audience[9]=9" class="tag " rel="tag">Alumni</a>; </li>
<li class="tag-list__item ">
<a href="https://uwaterloo.ca/engineering/events?audience[76]=76" class="tag " rel="tag">Systems Design</a> </li>
</ul>
</div>
</article>
<div class="uw-multi-type-list__button">
<a class="button " href="/engineering/events" >
All upcoming events
</a>
</div>
</div>
</div>
</div>
</div>
</section>
<section
class="uw-contained-width uw-section-spacing--default uw-section-separator--none uw-column-separator--none uw-section-alignment--top-align-content layout layout--uw-3-col even-split"
>
<div
>
</div>
<div
>
</div>
<div
>
</div>
</section>
</div>
</div>
</article>
</div>
</div>
</article>
</div>
</div>
</main>
<footer class="uw-footer" role="contentinfo">
<div class="uw-site-footer__block">
<div id="block-uw-fdsu-theme-resp-uw-block-site-footer" class="block block-uw-ct-site-footer block-uw-block-site-footer">
<div class="uw-site-footer">
<h2 class="visually-hidden">Information about Engineering </h2>
<div class="uw-site-footer__wrapper">
<div class="uw-site-footer__logo">
<a href="https://uwaterloo.ca/engineering/">
<img src="https://uwaterloo.ca/brand/sites/ca.brand/files/uwaterloo_engineering_wordmark.png" alt="Waterloo Engineering" />
</a>
</div>
<div class="uw-site-footer__social-media">
<div class="uw-social-media">
<ul class="social-media-list ">
<li class="social-media-list-item">
<a href="https://instagram.com/uwaterlooeng" class="uw-icon-link icon--button icon--social" >
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="30" viewBox="0 0 40 30">
<title>Instagram</title>
<path d="M14.3,1.2c-1.5,0.1-2.5,0.3-3.4,0.7C10,2.2,9.2,2.7,8.5,3.5C7.7,4.3,7.3,5.1,6.9,6C6.6,6.9,6.3,7.9,6.3,9.4
c-0.1,1.5-0.1,2-0.1,5.7c0,3.8,0,4.2,0.1,5.7s0.3,2.5,0.6,3.4c0.4,0.9,0.8,1.7,1.6,2.4c0.8,0.8,1.5,1.2,2.5,1.6
c0.9,0.3,1.9,0.6,3.4,0.6c1.5,0.1,2,0.1,5.7,0.1c3.8,0,4.2,0,5.7-0.1s2.5-0.3,3.4-0.6c0.9-0.4,1.7-0.8,2.4-1.6
c0.8-0.8,1.2-1.5,1.6-2.5c0.3-0.9,0.6-1.9,0.6-3.4c0.1-1.5,0.1-2,0.1-5.7c0-3.8,0-4.2-0.1-5.7s-0.3-2.5-0.6-3.4
c-0.4-0.9-0.9-1.7-1.7-2.4C30.7,2.7,30,2.3,29,1.9c-0.9-0.3-1.9-0.6-3.4-0.6c-1.5-0.1-2-0.1-5.7-0.1C16.2,1.2,15.8,1.2,14.3,1.2
M14.5,26.3c-1.4-0.1-2.1-0.3-2.6-0.5c-0.6-0.3-1.1-0.5-1.6-1s-0.8-0.9-1-1.6c-0.2-0.5-0.4-1.2-0.5-2.6c-0.1-1.5-0.1-1.9-0.1-5.6
s0-4.1,0.1-5.6c0-1.3,0.3-2.1,0.5-2.6c0.3-0.6,0.5-1.1,1-1.6s0.9-0.8,1.6-1c0.5-0.2,1.2-0.4,2.6-0.5c1.5-0.1,1.9-0.1,5.6-0.1
s4.1,0,5.6,0.1c1.4,0.1,2.1,0.3,2.6,0.5c0.6,0.3,1.1,0.5,1.6,1s0.8,0.9,1,1.6c0.2,0.5,0.4,1.2,0.5,2.6c0.1,1.5,0.1,1.9,0.1,5.6
s0,4.1-0.1,5.6c-0.1,1.4-0.3,2.1-0.5,2.6c-0.3,0.6-0.5,1.1-1,1.6s-0.9,0.8-1.6,1c-0.5,0.2-1.2,0.4-2.6,0.5
c-1.5,0.1-1.9,0.1-5.6,0.1S15.9,26.4,14.5,26.3 M25.8,7.6c0,0.9,0.8,1.7,1.7,1.7s1.7-0.8,1.7-1.7s-0.8-1.7-1.7-1.7
C26.5,5.9,25.8,6.7,25.8,7.6 M12.9,15c0,3.9,3.2,7.1,7.1,7.1s7.1-3.2,7.1-7.1S23.9,7.9,20,7.9S12.9,11.1,12.9,15 M15.4,15
c0-2.5,2.1-4.6,4.6-4.6s4.6,2.1,4.6,4.6s-2.1,4.6-4.6,4.6S15.4,17.6,15.4,15"/>
</svg>
</div>
<span class="off-screen" >
Instagram
</span>
</a>
</li>
<li class="social-media-list-item">
<a href="https://www.twitter.com/waterlooeng" class="uw-icon-link icon--button icon--social" >
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
<title>X (formerly Twitter)</title>
<path d="M18.4,14.6L26,5.8h-1.8l-6.6,7.6l-5.2-7.6H6.3l8,11.6l-8,9.2H8l7-8.1l5.5,8.1h6.1L18.4,14.6L18.4,14.6z M15.9,17.5l-0.8-1.1
L8.7,7.2h2.8l5.2,7.4l0.8,1.1l6.8,9.7h-2.8L15.9,17.5L15.9,17.5z"/>
</svg>
</div>
<span class="off-screen" >
X (formerly Twitter)
</span>
</a>
</li>
<li class="social-media-list-item">
<a href="https://linkedin.com/showcase/faculty-of-engineering" class="uw-icon-link icon--button icon--social" >
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="30" viewBox="0 0 40 30">
<title>LinkedIn</title>
<path d="M12,29V10.1H5.7v18.8H12V29z M8.9,7.5c2.2,0,3.5-1.4,3.5-3.3S11.1,1,8.9,1C6.8,1,5.4,2.4,5.4,4.3S6.7,7.5,8.9,7.5L8.9,7.5
L8.9,7.5z M15.5,29h6.3V18.4c0-0.5,0-1.1,0.2-1.5c0.4-1.1,1.4-2.3,3.2-2.3c2.3,0,3.2,1.8,3.2,4.3V29h6.3V18.2c0-5.8-3.1-8.5-7.2-8.5
c-3.4,0-4.8,1.9-5.7,3.2l0,0V10h-6.3C15.5,11.8,15.5,29,15.5,29L15.5,29L15.5,29z"/>
</svg>
</div>
<span class="off-screen" >
LinkedIn
</span>
</a>
</li>
<li class="social-media-list-item">
<a href="https://www.facebook.com/uWaterlooEngineering" class="uw-icon-link icon--button icon--social" >
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="30" viewBox="0 0 40 30">
<title>Facebook</title>
<path d="M26.4,16l0.6-4.9h-4.9v-3c0-1.4,0.4-2.3,2.5-2.3h2.6V1.5c-0.5-0.1-2-0.2-3.8-0.2c-3.8,0-6.4,2.2-6.4,6.3v3.6h-4.3v4.9H17
v12.4h5.1V16H26.4L26.4,16z"/>
</svg>
</div>
<span class="off-screen" >
Facebook
</span>
</a>
</li>
<li class="social-media-list-item">
<a href="https://youtube.com/user/UWaterlooengineering" class="uw-icon-link icon--button icon--social" >
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="30" viewBox="0 0 40 30">
<title>YouTube</title>
<path d="M39.1,5.4c-0.4-1.7-1.8-3.1-3.5-3.5C32.5,1,20,1,20,1S7.5,1,4.4,1.8c-1.7,0.5-3,1.9-3.5,3.6C0.1,8.5,0.1,15,0.1,15
s0,6.5,0.8,9.6c0.4,1.7,1.8,3.1,3.5,3.5C7.5,29,20,29,20,29s12.5,0,15.6-0.8c1.7-0.4,3.1-1.8,3.5-3.5c0.8-3.1,0.8-9.6,0.8-9.6
S39.9,8.5,39.1,5.4z M15.9,20.9V9.1L26.4,15L15.9,20.9z"/>
</svg>
</div>
<span class="off-screen" >
Youtube
</span>
</a>
</li>
</ul>
</div>
</div>
</div>
<div class="uw-site-footer__content">
<section
class="uw-contained-width uw-section-spacing--default uw-section-separator--none uw-column-separator--none layout layout--uw-3-col even-split"
>
<div
class="layout__region layout__region--first"
>
<div class="uw-text-align--left block block-layout-builder block-inline-blockuw-cbl-copy-text">
<div class="uw-copy-text">
<div class="uw-copy-text__wrapper ">
<p>Dean of Engineering Office<br />
Pearl Sullivan Engineering (PSE), Room 7302<br />
Direct line: <a href="tel:519-888-4885"> 519-888-4885</a><br />
Internal line: ext. 44885</p>
<p><a data-entity-substitution="canonical" data-entity-type="node" data-entity-uuid="2ba5e990-d43b-45d1-8fcb-a67aa98b1cc3" href="/engineering/about/our-people">Employee Directory</a><br /><a data-entity-substitution="canonical" data-entity-type="node" data-entity-uuid="9cb85f08-4c57-49df-a988-5538aab76fe6" href="/engineering/contact-us">Contact Waterloo Engineering</a></p>
</div>
</div>
</div>
</div>
<div
class="layout__region layout__region--second"
>
<div class="block block-layout-builder block-inline-blockuw-cbl-copy-text">
<div class="uw-copy-text">
<div class="uw-copy-text__wrapper ">
<h3>
<a href="https://imodules.uwaterloo.ca/s/1802/21/form.aspx?sid=1802&gid=2&pgid=678&cid=1648">
Support
Waterloo
Engineering</a></h3>
</div>
</div>
</div>
</div>
<div
class="layout__region layout__region--third"
>
<div class="uw-text-align--left block block-layout-builder block-inline-blockuw-cbl-copy-text">
<div class="uw-copy-text">
<div class="uw-copy-text__wrapper ">
<h3><a href="/engineering/node/196">Engineering Faculty Openings</a><br /><a href="https://uwaterloo.atlassian.net/servicedesk/customer/portal/1205">Engineering Website Help</a></h3>
</div>
</div>
</div>
</div>
</section>
</div>
</div>
</div>
</div>
<div class="uw-footer__wrapper" lang="en">
<h2 class="visually-hidden">Information about the University of Waterloo</h2>
<div class="uw-footer__address">
<div class="uw-footer-address" about="//uwaterloo.ca/" typeof="v:VCard">
<div class="hidden">
<div property="v:fn">University of Waterloo</div>
<div rel="v:org">
<div property="v:organisation-name">University of Waterloo</div>
</div>
<div rel="v:geo">
<div property="v:latitude">43.471468</div>
<div property="v:longitude">-80.544205</div>
</div>
</div>
<div class="uw-footer-address--show" rel="v:adr">
<a href="https://uwaterloo.ca/map/" class="uw-icon-link " >
<div class="uw-icon">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
<title>Campus map</title>
<g transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)">
<path d="M5.2,0.2C3,0.2,1.3,2,1.3,4.1c0,1,0.3,1.8,0.9,2.5l3,3.5l3-3.5C8.7,6,9.1,5.1,9.1,4.1C9.1,2,7.3,0.2,5.2,0.2z M5.2,5.6
C4.3,5.6,3.6,4.9,3.6,4s0.7-1.6,1.6-1.6S6.8,3.1,6.8,4S6.1,5.6,5.2,5.6z"/>
</g>
</svg>
</div>
<span class="off-screen" >
Campus map
</span>
</a>
<div class="uw-footer-address__street" property="v:street-address">200 University Avenue West</div>
<div class="uw-footer-address__region">
<span property="v:locality">Waterloo</span>,
<span property="v:region">ON</span>,
<span property="v:country-name">Canada</span>
<span property="v:postal-code">N2L 3G1</span>
</div>
<div class="uw-footer-phone" rel="v:tel">
<a href="tel:+1-519-888-4567" property="rdf:value">+1 519 888 4567</a>
</div>
</div>
</div>
</div>
<div class="uw-footer__menu">
<ul class="menu menu--uw-footer" >
<li class="menu__item" >
<a class="menu__link"
href="https://uwaterloo.ca/about/contact-us"
>
<span class="link-text">
Contact Waterloo
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="https://uwaterloo.ca/campus-status"
>
<span class="link-text">
Campus status
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="https://uwaterloo.ca/news/"
>
<span class="link-text">
News
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="https://uwaterloo.ca/about/maps-and-directions"
>
<span class="link-text">
Maps & directions
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="https://uwaterloo.ca/accessibility/"
>
<span class="link-text">
Accessibility
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="https://uwaterloo.ca/careers/"
>
<span class="link-text">
Careers
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="https://uwaterloo.ca/emergency-notifications/"
>
<span class="link-text">
Emergency notifications
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="https://uwaterloo.ca/privacy/"
>
<span class="link-text">
Privacy
</span>
</a>
</li>
<li class="menu__item" >
<a class="menu__link"
href="https://uwaterloo.ca/about/contact-us/contact-form"
>
<span class="link-text">
Feedback
</span>
</a>
</li>
</ul>
</div>
<div class="uw-footer__territorial">
<div class="uw-bg--">
<div class="uw-territorial">
<p>The University of Waterloo acknowledges that much of our work takes place on the traditional territory of the Neutral, Anishinaabeg, and Haudenosaunee peoples. Our main campus is situated on the Haldimand Tract, the land granted to the Six Nations that includes six miles on each side of the Grand River. Our active work toward reconciliation takes place across our campuses through research, learning, teaching, and community building, and is co-ordinated within the <a href="https://uwaterloo.ca/indigenous" >Office of Indigenous Relations</a>.</p>
</div>
</div>
</div>
<div class="uw-footer__social">
<div class="uw-social-media">
<ul class="social-media-list ">
<li class="social-media-list-item">
<a href="https://www.instagram.com/uofwaterloo/" class="uw-icon-link icon--button icon--social" >
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="30" viewBox="0 0 40 30">
<title>Instagram</title>
<path d="M14.3,1.2c-1.5,0.1-2.5,0.3-3.4,0.7C10,2.2,9.2,2.7,8.5,3.5C7.7,4.3,7.3,5.1,6.9,6C6.6,6.9,6.3,7.9,6.3,9.4
c-0.1,1.5-0.1,2-0.1,5.7c0,3.8,0,4.2,0.1,5.7s0.3,2.5,0.6,3.4c0.4,0.9,0.8,1.7,1.6,2.4c0.8,0.8,1.5,1.2,2.5,1.6
c0.9,0.3,1.9,0.6,3.4,0.6c1.5,0.1,2,0.1,5.7,0.1c3.8,0,4.2,0,5.7-0.1s2.5-0.3,3.4-0.6c0.9-0.4,1.7-0.8,2.4-1.6
c0.8-0.8,1.2-1.5,1.6-2.5c0.3-0.9,0.6-1.9,0.6-3.4c0.1-1.5,0.1-2,0.1-5.7c0-3.8,0-4.2-0.1-5.7s-0.3-2.5-0.6-3.4
c-0.4-0.9-0.9-1.7-1.7-2.4C30.7,2.7,30,2.3,29,1.9c-0.9-0.3-1.9-0.6-3.4-0.6c-1.5-0.1-2-0.1-5.7-0.1C16.2,1.2,15.8,1.2,14.3,1.2
M14.5,26.3c-1.4-0.1-2.1-0.3-2.6-0.5c-0.6-0.3-1.1-0.5-1.6-1s-0.8-0.9-1-1.6c-0.2-0.5-0.4-1.2-0.5-2.6c-0.1-1.5-0.1-1.9-0.1-5.6
s0-4.1,0.1-5.6c0-1.3,0.3-2.1,0.5-2.6c0.3-0.6,0.5-1.1,1-1.6s0.9-0.8,1.6-1c0.5-0.2,1.2-0.4,2.6-0.5c1.5-0.1,1.9-0.1,5.6-0.1
s4.1,0,5.6,0.1c1.4,0.1,2.1,0.3,2.6,0.5c0.6,0.3,1.1,0.5,1.6,1s0.8,0.9,1,1.6c0.2,0.5,0.4,1.2,0.5,2.6c0.1,1.5,0.1,1.9,0.1,5.6
s0,4.1-0.1,5.6c-0.1,1.4-0.3,2.1-0.5,2.6c-0.3,0.6-0.5,1.1-1,1.6s-0.9,0.8-1.6,1c-0.5,0.2-1.2,0.4-2.6,0.5
c-1.5,0.1-1.9,0.1-5.6,0.1S15.9,26.4,14.5,26.3 M25.8,7.6c0,0.9,0.8,1.7,1.7,1.7s1.7-0.8,1.7-1.7s-0.8-1.7-1.7-1.7
C26.5,5.9,25.8,6.7,25.8,7.6 M12.9,15c0,3.9,3.2,7.1,7.1,7.1s7.1-3.2,7.1-7.1S23.9,7.9,20,7.9S12.9,11.1,12.9,15 M15.4,15
c0-2.5,2.1-4.6,4.6-4.6s4.6,2.1,4.6,4.6s-2.1,4.6-4.6,4.6S15.4,17.6,15.4,15"/>
</svg>
</div>
<span class="off-screen" >
Instagram
</span>
</a>
</li>
<li class="social-media-list-item">
<a href="https://www.linkedin.com/school/uwaterloo/" class="uw-icon-link icon--button icon--social" >
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="30" viewBox="0 0 40 30">
<title>LinkedIn</title>
<path d="M12,29V10.1H5.7v18.8H12V29z M8.9,7.5c2.2,0,3.5-1.4,3.5-3.3S11.1,1,8.9,1C6.8,1,5.4,2.4,5.4,4.3S6.7,7.5,8.9,7.5L8.9,7.5
L8.9,7.5z M15.5,29h6.3V18.4c0-0.5,0-1.1,0.2-1.5c0.4-1.1,1.4-2.3,3.2-2.3c2.3,0,3.2,1.8,3.2,4.3V29h6.3V18.2c0-5.8-3.1-8.5-7.2-8.5
c-3.4,0-4.8,1.9-5.7,3.2l0,0V10h-6.3C15.5,11.8,15.5,29,15.5,29L15.5,29L15.5,29z"/>
</svg>
</div>
<span class="off-screen" >
LinkedIn
</span>
</a>
</li>
<li class="social-media-list-item">
<a href="https://www.facebook.com/university.waterloo" class="uw-icon-link icon--button icon--social" >
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="30" viewBox="0 0 40 30">
<title>Facebook</title>
<path d="M26.4,16l0.6-4.9h-4.9v-3c0-1.4,0.4-2.3,2.5-2.3h2.6V1.5c-0.5-0.1-2-0.2-3.8-0.2c-3.8,0-6.4,2.2-6.4,6.3v3.6h-4.3v4.9H17
v12.4h5.1V16H26.4L26.4,16z"/>
</svg>
</div>
<span class="off-screen" >
Facebook
</span>
</a>
</li>
<li class="social-media-list-item">
<a href="https://www.youtube.com/user/uwaterloo" class="uw-icon-link icon--button icon--social" >
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="30" viewBox="0 0 40 30">
<title>YouTube</title>
<path d="M39.1,5.4c-0.4-1.7-1.8-3.1-3.5-3.5C32.5,1,20,1,20,1S7.5,1,4.4,1.8c-1.7,0.5-3,1.9-3.5,3.6C0.1,8.5,0.1,15,0.1,15
s0,6.5,0.8,9.6c0.4,1.7,1.8,3.1,3.5,3.5C7.5,29,20,29,20,29s12.5,0,15.6-0.8c1.7-0.4,3.1-1.8,3.5-3.5c0.8-3.1,0.8-9.6,0.8-9.6
S39.9,8.5,39.1,5.4z M15.9,20.9V9.1L26.4,15L15.9,20.9z"/>
</svg>
</div>
<span class="off-screen" >
YouTube
</span>
</a>
</li>
</ul>
</div>
<div class="uw-footer__social-directory">
<a href="https://uwaterloo.ca/social-media/">@uwaterloo social directory</a>
</div>
</div>
<div class="uw-footer__marketing">
<div class="uw-footer__marketing--svg">
<div class="uw-icon">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32px" height="23.6px" viewBox="0 0 32 23.6">
<title>On It Check</title>
<g transform="translate(0 15.477)">
<path d="M11.3-3.5L0-10.1V1.6l11.3,6.5L32-3.8l0-11.7L11.3-3.5z"/>
</g>
</svg>
</div>
</div>
<div class="uw-footer__marketing--text">
<span>
WHERE THERE’S <br> A CHALLENGE,<br>WATERLOO IS<br><span class="text_uw-gold">ON IT</span>.
</span>
<br>
<a href="https://uwaterloo.ca/on-it"><i>Learn how → </i></a>
</div>
</div>
<div class="uw-footer__bottom">
<a href="https://uwaterloo.ca/copyright">©2026 All rights reserved</a>
</div>
</div>
</footer>
</div>
</div>
<script type="application/json" data-drupal-selector="drupal-settings-json">{"path":{"baseUrl":"\/engineering\/","scriptPath":null,"pathPrefix":"","currentPath":"node\/1","currentPathIsAdmin":false,"isFront":true,"currentLanguage":"en"},"pluralDelimiter":"\u0003","suppressDeprecationErrors":true,"clientside_validation_jquery":{"validate_all_ajax_forms":2,"force_validate_on_blur":false,"messages":{"required":"This field is required.","remote":"Please fix this field.","email":"Please enter a valid email address.","url":"Please enter a valid URL.","date":"Please enter a valid date.","dateISO":"Please enter a valid date (ISO).","number":"Please enter a valid number.","digits":"Please enter only digits.","equalTo":"Please enter the same value again.","maxlength":"Please enter no more than {0} characters.","minlength":"Please enter at least {0} characters.","rangelength":"Please enter a value between {0} and {1} characters long.","range":"Please enter a value between {0} and {1}.","max":"Please enter a value less than or equal to {0}.","min":"Please enter a value greater than or equal to {0}.","step":"Please enter a multiple of {0}."}},"eu_cookie_compliance":{"cookie_policy_version":"1.0.0","popup_enabled":true,"popup_agreed_enabled":false,"popup_hide_agreed":false,"popup_clicking_confirmation":true,"popup_scrolling_confirmation":false,"popup_html_info":"\u003Cdiv class=\u0022eu-cookie-compliance-banner eu-cookie-compliance-banner-info eu-cookie-compliance-banner--default\u0022\u003E\n \u003Cdiv class=\u0022popup-content info eu-cookie-compliance-content\u0022 role=\u0022alertdialog\u0022\u003E\n \u003Cdiv\n class=\u0022eu-cookie-compliance-message\u0022\n id=\u0022cookieDescription\u0022\u003E\n \u003Ch2\u003EWe use cookies on this site to enhance your user experience\u003C\/h2\u003E\n \u003Cp\u003ESelect \u0026#039;Accept all\u0026#039; to agree and continue. You consent to our cookies if you continue to use this website.\u003C\/p\u003E\n \u003C\/div\u003E\n\n \u003Cdiv id=\u0022popup-buttons\u0022 class=\u0022eu-cookie-compliance-buttons\u0022\u003E\n \u003Cbutton type=\u0022button\u0022 class=\u0022agree-button eu-cookie-compliance-default-button\u0022\n aria-describedby=\u0022cookieDescription\u0022\u003E\n Accept all\n \u003C\/button\u003E\n \u003C\/div\u003E\n \u003C\/div\u003E\n\u003C\/div\u003E","use_mobile_message":false,"mobile_popup_html_info":"\u003Cdiv class=\u0022eu-cookie-compliance-banner eu-cookie-compliance-banner-info eu-cookie-compliance-banner--default\u0022\u003E\n \u003Cdiv class=\u0022popup-content info eu-cookie-compliance-content\u0022 role=\u0022alertdialog\u0022\u003E\n \u003Cdiv\n class=\u0022eu-cookie-compliance-message\u0022\n id=\u0022cookieDescription\u0022\u003E\n \u003Ch2\u003E\u003C\/h2\u003E\n \u003Cp\u003E\u003C\/p\u003E\n \u003C\/div\u003E\n\n \u003Cdiv id=\u0022popup-buttons\u0022 class=\u0022eu-cookie-compliance-buttons\u0022\u003E\n \u003Cbutton type=\u0022button\u0022 class=\u0022agree-button eu-cookie-compliance-default-button\u0022\n aria-describedby=\u0022cookieDescription\u0022\u003E\n Accept all\n \u003C\/button\u003E\n \u003C\/div\u003E\n \u003C\/div\u003E\n\u003C\/div\u003E","mobile_breakpoint":768,"popup_html_agreed":false,"popup_use_bare_css":true,"popup_height":"auto","popup_width":"100%","popup_delay":1000,"popup_link":"\/engineering\/","popup_link_new_window":true,"popup_position":false,"fixed_top_position":true,"popup_language":"en","store_consent":false,"better_support_for_screen_readers":false,"cookie_name":"","reload_page":false,"domain":"","domain_all_sites":true,"popup_eu_only":false,"popup_eu_only_js":false,"cookie_lifetime":100,"cookie_session":0,"set_cookie_session_zero_on_disagree":0,"disagree_do_not_show_popup":false,"method":"default","automatic_cookies_removal":true,"allowed_cookies":"","withdraw_markup":"\u003Cbutton type=\u0022button\u0022 class=\u0022eu-cookie-withdraw-tab\u0022\u003EPrivacy settings\u003C\/button\u003E\n\u003Cdiv aria-labelledby=\u0022popup-text\u0022 class=\u0022eu-cookie-withdraw-banner\u0022\u003E\n \u003Cdiv class=\u0022popup-content info eu-cookie-compliance-content\u0022\u003E\n \u003Cdiv id=\u0022popup-text\u0022 class=\u0022eu-cookie-compliance-message\u0022 role=\u0022document\u0022\u003E\n \u003Ch2\u003EWe use cookies on this site to enhance your user experience\u003C\/h2\u003E\u003Cp\u003EYou have given your consent for us to set cookies.\u003C\/p\u003E\n \u003C\/div\u003E\n \u003Cdiv id=\u0022popup-buttons\u0022 class=\u0022eu-cookie-compliance-buttons\u0022\u003E\n \u003Cbutton type=\u0022button\u0022 class=\u0022eu-cookie-withdraw-button \u0022\u003EWithdraw consent\u003C\/button\u003E\n \u003C\/div\u003E\n \u003C\/div\u003E\n\u003C\/div\u003E","withdraw_enabled":false,"reload_options":0,"reload_routes_list":"","withdraw_button_on_info_popup":false,"cookie_categories":[],"cookie_categories_details":[],"enable_save_preferences_button":true,"cookie_value_disagreed":"0","cookie_value_agreed_show_thank_you":"1","cookie_value_agreed":"2","containing_element":"body","settings_tab_enabled":false,"olivero_primary_button_classes":"","olivero_secondary_button_classes":"","close_button_action":"close_banner","open_by_default":true,"modules_allow_popup":true,"hide_the_banner":false,"geoip_match":true,"unverified_scripts":["\/engineering\/engineering\/"]},"uw_fdsu_theme_resp":{"basePath":"profiles\/uw_base_profile\/themes\/uw_fdsu_theme_resp"},"ajaxTrustedUrl":{"form_action_p_pvdeGsVG5zNF_XLGPTvYSKCf43t8qZYSwcfZl2uzM":true},"user":{"uid":0,"permissionsHash":"b688e693ac25eeab4e7c5c53a46cb15d4fe69bd0458567f2bd93c18119eb4d5b"}}</script>
<script src="/engineering/sites/default/files/js/js_fiSKtK3xDKX3CN6FqZ5A7iSsMHzNVcEcYZMmAGzNHiw.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-AMS_HTML"></script>
<script src="/engineering/sites/default/files/js/js_7OovL_Ja3SYrR_7fUB6dy-bnw7WSSswQBp8U6HV8lrc.js"></script>
<script src="https://cdn.jsdelivr.net/npm/jquery-validation@1.17.0/dist/jquery.validate.min.js"></script>
<script src="/engineering/profiles/uw_base_profile/modules/contrib/clientside_validation/clientside_validation_jquery/js/cv.jquery.validate.js?tizgzd"></script>
<script src="/engineering/sites/default/files/js/js_BUrhtUqX710GoVti5CEB59L65nZaqRg1OIyaiX3k2Vc.js"></script>
<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"NRJS-3ae1c2eb491021d5ef6","applicationID":"1544766909","transactionName":"MQEHbREAWEZUUENRVghLJFoXCFlbGkNWX1w5BwRaCwQ=","queueTime":0,"applicationTime":34,"atts":"HUYEG1kaS0g=","errorBeacon":"bam.nr-data.net","agent":""}</script></body>
</html>
Sitemap
Кол-во: 0
XML-карта сайта для поисковиков
?
Sitemap.xml помогает поисковику быстрее находить и индексировать страницы. Особенно важен для крупных сайтов и новых страниц, на которые ещё нет входящих ссылок.
Robots.txt не содержит ссылку на карту сайта. Рекомендуется добавить карту сайта и указать ссылку на нее в robots.txt.
Внутренние ссылки
Кол-во: 179
Ссылки на другие страницы своего сайта
?
Внутренние ссылки распределяют ссылочный вес между страницами и помогают поисковику обходить сайт. Пустые анкоры и ссылки на запрещённые robots.txt страницы — типичные ошибки.
Внутренних ссылок на странице 179 слишком много. Проведите оптимизацию сайта!
Внутренние ссылки не запрещены к индексации в robots.txt.
На странице присутствуют изображения 3.
Показать первые 100 внутренних ссылок
| Url | Анкор | Состояние | Анализировать |
|---|---|---|---|
| /engineering/about |
<span class="link-text">
About
</span>
|
|
Анализировать url |
| /engineering/about/our-history |
<span class="link-text">
Our history
</span>
|
|
Анализировать url |
| /engineering/about/our-history/waterloo-engineering-pin |
<span class="link-text">
Engineering pin
</span>
|
|
Анализировать url |
| /engineering/heritage-project |
<span class="link-text">
Heritage Project
</span>
|
|
Анализировать url |
| /engineering/about/territorial-acknowledgement |
<span class="link-text">
Territorial acknowledgement
</span>
|
|
Анализировать url |
| /engineering/about/our-people |
<span class="link-text">
Our people
</span>
|
|
Анализировать url |
| /engineering/about/dean-engineering |
<span class="link-text">
Dean of Engineering
</span>
|
|
Анализировать url |
| /engineering/about/dean-engineering/deans-advisory-council |
<span class="link-text">
Dean's Advisory Council
</span>
|
|
Анализировать url |
| /engineering/about/dean-engineering/research-advisory-committee |
<span class="link-text">
Research Advisory Committee
</span>
|
|
Анализировать url |
| /engineering/about/departments-schools-and-programs |
<span class="link-text">
Departments, Schools and Programs
</span>
|
|
Анализировать url |
| /engineering/about/outreach-and-diversity |
<span class="link-text">
Outreach and Diversity
</span>
|
|
Анализировать url |
| /engineering/about/strategic-plan |
<span class="link-text">
Strategic Plan
</span>
|
|
Анализировать url |
| /engineering/about/rankings |
<span class="link-text">
Engineering Rankings
</span>
|
|
Анализировать url |
| /engineering/about/faculty-engineering-statistics |
<span class="link-text">
Faculty of Engineering Statistics
</span>
|
|
Анализировать url |
| /engineering/publications |
<span class="link-text">
Publications
</span>
|
|
Анализировать url |
| /engineering/research |
<span class="link-text">
Research
</span>
|
|
Анализировать url |
| /engineering/research/engineering-research-office-centres-and-institutes |
<span class="link-text">
Centres and Institutes
</span>
|
|
Анализировать url |
| /engineering/research/industry-partnerships |
<span class="link-text">
Industry partnerships
</span>
|
|
Анализировать url |
| /engineering/labs-and-facilities |
<span class="link-text">
Labs and Facilities
</span>
|
|
Анализировать url |
| /engineering/research/engineering-research-office-research-chairs-and-awards |
<span class="link-text">
Research Chairs and Awards
</span>
|
|
Анализировать url |
| /engineering/research/engineering-research-office-research-videos |
<span class="link-text">
Research videos
</span>
|
|
Анализировать url |
| /engineering/research/resources-researchers |
<span class="link-text">
Resources for researchers
</span>
|
|
Анализировать url |
| /engineering/entrepreneurship |
<span class="link-text">
Entrepreneurship
</span>
|
|
Анализировать url |
| /engineering/entrepreneurship/funding |
<span class="link-text">
Funding
</span>
|
|
Анализировать url |
| /engineering/entrepreneurship/funding/engineer-future-trust |
<span class="link-text">
Engineer of the Future Fund
</span>
|
|
Анализировать url |
| /engineering/entrepreneurship/insight-creation-speaker-series |
<span class="link-text">
Insight To Creation Speaker Series
</span>
|
|
Анализировать url |
| /engineering/news |
<span class="link-text">
News
</span>
|
|
Анализировать url |
| /engineering/events |
<span class="link-text">
Events
</span>
|
|
Анализировать url |
| /engineering/digital-screen-advertisement-request-form |
<span class="link-text">
Digital Screen Advertisement Request Form
</span>
|
|
Анализировать url |
| /engineering/events/engineering-events-initiatives-promotion-request-form |
<span class="link-text">
Engineering events & initiatives promotion request form
</span>
|
|
Анализировать url |
| /engineering/contact-us |
<span class="link-text">
Contact us
</span>
|
|
Анализировать url |
| /engineering/future-students |
<span class="link-text">
Future Students
</span>
|
|
Анализировать url |
| /engineering/future-students/why-engineering |
<span class="link-text">
Why engineering?
</span>
|
|
Анализировать url |
| /engineering/future-students/engineering-program-compatibility-quiz |
<span class="link-text">
Take the engineering program compatibility quiz
</span>
|
|
Анализировать url |
| /engineering/future-students/program-overview |
<span class="link-text">
Choose a program
</span>
|
|
Анализировать url |
| /engineering/future-students/applying |
<span class="link-text">
Applying
</span>
|
|
Анализировать url |
| /engineering/future-students/paying-school |
<span class="link-text">
Paying for school
</span>
|
|
Анализировать url |
| /engineering/future-students/after-accepting |
<span class="link-text">
After accepting
</span>
|
|
Анализировать url |
| /engineering/future-students/future-careers |
<span class="link-text">
Explore future careers
</span>
|
|
Анализировать url |
| /engineering/future-students/co-op-future-students |
<span class="link-text">
Learn more about co-op
</span>
|
|
Анализировать url |
| /engineering/future-students/student-life |
<span class="link-text">
Get involved in student life
</span>
|
|
Анализировать url |
| /engineering/future-students/connect-us |
<span class="link-text">
Connect with us
</span>
|
|
Анализировать url |
| /engineering/future-students/interested-graduate-studies |
<span class="link-text">
Interested in Graduate Studies?
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students |
<span class="link-text">
Undergraduate Students
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/first-year |
<span class="link-text">
First year
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/academic-support |
<span class="link-text">
Academics
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/academic-support/accreditation-information |
<span class="link-text">
Accreditation unit information
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/academic-support/altering-course-load |
<span class="link-text">
Altering course load
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/academic-support/graduate-attributes |
<span class="link-text">
Graduate attributes
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/academic-support/course-and-exam-information |
<span class="link-text">
Courses and enrolment
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/academic-support/gene-courses |
<span class="link-text">
GENE courses
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/academic-support/letter-permission |
<span class="link-text">
Letter of permission
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/academic-support/projected-course-offerings |
<span class="link-text">
Projected course offerings
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/academic-support/promotion-rules |
<span class="link-text">
Promotion rules
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/academic-support/non-degree-term |
<span class="link-text">
Non-degree term
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/co-op-experience |
<span class="link-text">
Co-op
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/co-op-experience/co-op-study-sequences |
<span class="link-text">
Co-op streams
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/co-op-experience/co-op-fundamentals-engineering-cfe |
<span class="link-text">
Co-op Fundamentals for Engineering (CFE)
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/co-op-experience/professional-development |
<span class="link-text">
Professional development
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/getting-support |
<span class="link-text">
Getting support
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/getting-support/academic-advisors |
<span class="link-text">
Academic advising
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/getting-support/accessibility |
<span class="link-text">
Accessibility
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/getting-support/engineering-counselling |
<span class="link-text">
Counselling
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/getting-support/declaring-absences |
<span class="link-text">
Declaring absences
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/getting-support/engineering-undergrad-office |
<span class="link-text">
Engineering undergrad office
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/getting-support/engineering-wellness |
<span class="link-text">
Engineering wellness
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/getting-support/international-students |
<span class="link-text">
International students
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/programs-engineering |
<span class="link-text">
Programs in Engineering
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/degree-enhancement |
<span class="link-text">
Degree enhancement
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/degree-enhancement/accelerated-masters-applied-science-program |
<span class="link-text">
Accelerated Master's program
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/degree-enhancement/international-exchange |
<span class="link-text">
Exchange
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/degree-enhancement/options |
<span class="link-text">
Options
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/degree-enhancement/research-opportunities |
<span class="link-text">
Research opportunities
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/degree-enhancement/specializations-and-more |
<span class="link-text">
Specializations and more
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/policies-regulations |
<span class="link-text">
Policies and regulations
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/policies-regulations/academic-integrity |
<span class="link-text">
Academic integrity
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/policies-regulations/petitions-grievances-and-requests-reassessment |
<span class="link-text">
Petitions, Grievances and Requests for Reassessment
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/policies-regulations/transfers |
<span class="link-text">
Transfers
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/scholarships-and-awards |
<span class="link-text">
Scholarships and awards
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/student-life |
<span class="link-text">
Student life
</span>
|
|
Анализировать url |
| /engineering/spotlights |
<span class="link-text">
Engineering spotlights
</span>
|
|
Анализировать url |
| /engineering/studyspaces |
<span class="link-text">
Engineering study spaces
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/capstone-design |
<span class="link-text">
Capstone design
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/get-ready-graduate |
<span class="link-text">
Get ready to graduate
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/get-ready-graduate/convocation |
<span class="link-text">
Convocation
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/get-ready-graduate/engineer-your-future |
<span class="link-text">
Engineer Your Future
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/get-ready-graduate/roadmap-to-graduation |
<span class="link-text">
Roadmap to graduation
</span>
|
|
Анализировать url |
| /engineering/undergraduate-students/get-ready-graduate/iron-ring |
<span class="link-text">
Iron ring
</span>
|
|
Анализировать url |
| /engineering/graduate-students |
<span class="link-text">
Graduate Students
</span>
|
|
Анализировать url |
| /engineering/graduate-students/future-graduate-students |
<span class="link-text">
Future Graduate Students
</span>
|
|
Анализировать url |
| /engineering/graduate-students/future-graduate-students/programs |
<span class="link-text">
Programs
</span>
|
|
Анализировать url |
| /engineering/graduate-students/future-graduate-students/programs/collaborative-masters-engineering-program-health |
<span class="link-text">
Collaborative Masters of Engineering Program in Health Technologies
</span>
|
|
Анализировать url |
| /engineering/graduate-students/future-graduate-students/programs/masters-engineering-professional-masters-course-work |
<span class="link-text">
Masters of Engineering - Professional Master's Course Work in Engineering
</span>
|
|
Анализировать url |
| /engineering/graduate-students/future-graduate-students/admission-requirements |
<span class="link-text">
Admission Requirements
</span>
|
|
Анализировать url |
| /engineering/graduate-students/future-graduate-students/international-students |
<span class="link-text">
International Students
</span>
|
|
Анализировать url |
| /engineering/graduate-students/future-graduate-students/research-and-supervisors |
<span class="link-text">
Research and Supervisors
</span>
|
|
Анализировать url |
| /engineering/graduate-students/future-graduate-students/region-waterloo-and-housing |
<span class="link-text">
The Region of Waterloo and housing
</span>
|
|
Анализировать url |
| /engineering/graduate-students/new-students |
<span class="link-text">
New Students
</span>
|
|
Анализировать url |
| /engineering/graduate-students/current-students |
<span class="link-text">
Current students
</span>
|
|
Анализировать url |
| /engineering/graduate-students/current-students/program-guidelines |
<span class="link-text">
Program guidelines
</span>
|
|
Анализировать url |
Внешние ссылки
Кол-во: 51
Ссылки на сторонние сайты
?
Исходящие внешние ссылки передают часть ссылочного веса на чужие сайты. Ссылки на авторитетные ресурсы безопасны; ссылки на мусорные сайты могут навредить репутации страницы.
Внешних ссылок на странице 51 слишком много. Спрячьте лишние ссылки в тег noindex или атрибут rel='nofollow'!
На странице присутствуют внешние ссылки с пустым анкором: 1!
Показать внешние ссылки
| Url | Анкор | Анализировать |
|---|---|---|
| uwaterloo.ca |
Пустой анкор
|
Анализировать url |
| uwaterloo.ca |
<span class="link-text">
Admissions
</span>
|
Анализировать url |
| uwaterloo.ca |
<span class="link-text">
About Waterloo
</span>
|
Анализировать url |
| uwaterloo.ca |
<span class="link-text">
Faculties & Academics
</span>
|
Анализировать url |
| uwaterloo.ca |
<span class="link-text">
Offices & Services
</span>
|
Анализировать url |
| uwaterloo.ca |
<span class="link-text">
Support Waterloo
</span>
|
Анализировать url |
| uwaterloo.ca |
<div class="uw-site-name__text">Engineering</div>
|
Анализировать url |
| uwaterloo.ca |
<div class="uw-icon uw-svg uw-svg__home">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24">
<circle class="bg-circle" cx="12" cy="11.9" r="11.6"></circle>
<path class="house" d="M15.9,6.6c0-0.2-0.2-0.4-0.4-0.4c0,0,0,0,0,0h-1.1c-0.2,0-0.4,0.2-0.4,0.4c0,0,0,0,0,0v1.1l-1.7-1.6
c-0.2-0.2-0.5-0.2-0.6,0l-5.8,5.2l0.6,0.8l0.9-0.8V18c0,0.2,0.2,0.4,0.4,0.4c0,0,0,0,0,0h2.9c0.2,0,0.4-0.2,0.4-0.4c0,0,0,0,0,0
v-3.4h2V18c0,0.2,0.2,0.4,0.4,0.4c0,0,0,0,0,0h2.9c0.2,0,0.4-0.2,0.4-0.4c0,0,0,0,0,0v-6.5l0.9,0.8l0.6-0.8l-2.2-2L15.9,6.6z"></path>
</svg>
</div>
<span class="off-screen">Engineering Home</span>
|
Анализировать url |
| uwaterloo.ca |
<!--If banner text overlay is split then always show
the H1 in the top white bar. -->
<div class="card__banner--media">
<picture class="uw-picture">
<!--[if IE 9]><video style="display: none;"><![endif]-->
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_large/public/uploads/images/jason-pulsipher-banner.jpg?itok=bYKRnj-x 1x" media="all and (min-width: 63.19em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_large/public/uploads/images/jason-pulsipher-banner.jpg?itok=vQ6DnqZq 1x" media="all and (min-width: 49.81em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_medium/public/uploads/images/jason-pulsipher-banner.jpg?itok=HnafZPyJ 1x" media="all and (min-width: 30em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_small/public/uploads/images/jason-pulsipher-banner.jpg?itok=cvzsQx9C 1x" media="all and (min-width: 25em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_small/public/uploads/images/jason-pulsipher-banner.jpg?itok=vSiI37XX 1x" media="all and (min-width: 15em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_portrait/public/uploads/images/jason-pulsipher-banner.jpg?itok=Aiwlcnej 1x" media="all and (min-width: 1em)" type="image/jpeg">
<!--[if IE 9]></video><![endif]-->
<img class="uw-picture__fallback" src="/engineering/sites/default/files/styles/large/public/uploads/images/jason-pulsipher-banner.jpg?itok=Uz6AkTem" alt="Professor Jason Pulsipher">
</picture>
</div>
<div class="card__banner--caption uw_para_image_banner">
<span class="card__banner--title">
<strong>
Fighting fire with data
</strong>
</span>
</div>
|
Анализировать url |
| uwaterloo.ca |
<!--If banner text overlay is split then always show
the H1 in the top white bar. -->
<div class="card__banner--media">
<picture class="uw-picture">
<!--[if IE 9]><video style="display: none;"><![endif]-->
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_large/public/uploads/images/cancer-banner-3.jpg?itok=Vu7U-pBH 1x" media="all and (min-width: 63.19em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_large/public/uploads/images/cancer-banner-3.jpg?itok=WJTbLmma 1x" media="all and (min-width: 49.81em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_medium/public/uploads/images/cancer-banner-3.jpg?itok=mAXncYLx 1x" media="all and (min-width: 30em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_small/public/uploads/images/cancer-banner-3.jpg?itok=yeGQYrAI 1x" media="all and (min-width: 25em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_small/public/uploads/images/cancer-banner-3.jpg?itok=MiciqVlR 1x" media="all and (min-width: 15em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_portrait/public/uploads/images/cancer-banner-3.jpg?itok=dind3UOB 1x" media="all and (min-width: 1em)" type="image/jpeg">
<!--[if IE 9]></video><![endif]-->
<img class="uw-picture__fallback" src="/engineering/sites/default/files/styles/large/public/uploads/images/cancer-banner-3.jpg?itok=TMZJA4p5" alt="Waterloo Engineering researchers fighting cancer.">
</picture>
</div>
<div class="card__banner--caption uw_para_image_banner">
<span class="card__banner--title">
<strong>
Engineering bacteria to eat cancer tumours
</strong>
</span>
</div>
|
Анализировать url |
| uwaterloo.ca |
<!--If banner text overlay is split then always show
the H1 in the top white bar. -->
<div class="card__banner--media">
<picture class="uw-picture">
<!--[if IE 9]><video style="display: none;"><![endif]-->
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_large/public/uploads/images/bus_push_eng-news_banner-image.jpg?itok=he6x2HyY 1x" media="all and (min-width: 63.19em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_large/public/uploads/images/bus_push_eng-news_banner-image.jpg?itok=5jYEyDpC 1x" media="all and (min-width: 49.81em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_medium/public/uploads/images/bus_push_eng-news_banner-image.jpg?itok=QRrx0tMI 1x" media="all and (min-width: 30em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_small/public/uploads/images/bus_push_eng-news_banner-image.jpg?itok=7PbTttT2 1x" media="all and (min-width: 25em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_small/public/uploads/images/bus_push_eng-news_banner-image.jpg?itok=6A1-BRal 1x" media="all and (min-width: 15em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_portrait/public/uploads/images/bus_push_eng-news_banner-image.jpg?itok=cp4ZW8R2 1x" media="all and (min-width: 1em)" type="image/jpeg">
<!--[if IE 9]></video><![endif]-->
<img class="uw-picture__fallback" src="/engineering/sites/default/files/styles/large/public/uploads/images/bus_push_eng-news_banner-image.jpg?itok=wh4o-Ryq" alt="Students pulling a school bus">
</picture>
</div>
<div class="card__banner--caption uw_para_image_banner">
<span class="card__banner--title">
<strong>
Waterloo students refuel a beloved tradition
</strong>
</span>
</div>
|
Анализировать url |
| uwaterloo.ca |
<!--If banner text overlay is split then always show
the H1 in the top white bar. -->
<div class="card__banner--media">
<picture class="uw-picture">
<!--[if IE 9]><video style="display: none;"><![endif]-->
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_large/public/uploads/images/coop_student_of_the_year_award_speech.jpg?itok=sEiWC6UM 1x" media="all and (min-width: 63.19em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_large/public/uploads/images/coop_student_of_the_year_award_speech.jpg?itok=Djf_djqJ 1x" media="all and (min-width: 49.81em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_medium/public/uploads/images/coop_student_of_the_year_award_speech.jpg?itok=GhIjJ-K4 1x" media="all and (min-width: 30em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_small/public/uploads/images/coop_student_of_the_year_award_speech.jpg?itok=KF3XkFSC 1x" media="all and (min-width: 25em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_small/public/uploads/images/coop_student_of_the_year_award_speech.jpg?itok=MoKEP6vZ 1x" media="all and (min-width: 15em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_portrait/public/uploads/images/coop_student_of_the_year_award_speech.jpg?itok=WBLiMbzj 1x" media="all and (min-width: 1em)" type="image/jpeg">
<!--[if IE 9]></video><![endif]-->
<img class="uw-picture__fallback" src="/engineering/sites/default/files/styles/large/public/uploads/images/coop_student_of_the_year_award_speech.jpg?itok=aQwCVKZz" alt="Student at podium">
</picture>
</div>
<div class="card__banner--caption uw_para_image_banner">
<span class="card__banner--title">
<strong>
Going all in on what matters
</strong>
</span>
</div>
|
Анализировать url |
| uwaterloo.ca |
<!--If banner text overlay is split then always show
the H1 in the top white bar. -->
<div class="card__banner--media">
<picture class="uw-picture">
<!--[if IE 9]><video style="display: none;"><![endif]-->
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_large/public/uploads/images/smoke-b.jpg?itok=K3NzfRUz 1x" media="all and (min-width: 63.19em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_large/public/uploads/images/smoke-b.jpg?itok=u4GXGyW5 1x" media="all and (min-width: 49.81em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_medium/public/uploads/images/smoke-b.jpg?itok=NJkpvEmV 1x" media="all and (min-width: 30em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_small/public/uploads/images/smoke-b.jpg?itok=FibbyFQh 1x" media="all and (min-width: 25em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_media_x_small/public/uploads/images/smoke-b.jpg?itok=CJw6kEF0 1x" media="all and (min-width: 15em)" type="image/jpeg">
<source srcset="/engineering/sites/default/files/styles/uw_is_portrait/public/uploads/images/smoke-b.jpg?itok=qzaU-aiL 1x" media="all and (min-width: 1em)" type="image/jpeg">
<!--[if IE 9]></video><![endif]-->
<img class="uw-picture__fallback" src="/engineering/sites/default/files/styles/large/public/uploads/images/smoke-b.jpg?itok=oyefqvFn" alt="A photo of two cylinders in a wind tunnel in a study on drag.">
</picture>
</div>
<div class="card__banner--caption uw_para_image_banner">
<span class="card__banner--title">
<strong>
Shooting for research photography honours
</strong>
</span>
</div>
|
Анализировать url |
| uwaterloo.ca |
with 10,898 enrolled in 2025
|
Анализировать url |
| uwaterloo.ca |
<div class="uw-cta__wrapper">
<div class="call-to-action-theme-org-eng">
<div class="uw-cta__text uw-cta__text--small">WATERLOO ENGINEERING</div>
<div class="uw-cta__text uw-cta__text--big">RESEARCH STRENGTHS</div>
</div>
</div>
|
Анализировать url |
| uwaterloo.ca |
<div class="uw-cta__wrapper">
<div class="call-to-action-theme-org-eng">
<div class="uw-cta__text uw-cta__text--small">WELLNESS AND MENTAL HEALTH</div>
<div class="uw-cta__text uw-cta__text--big">RESOURCES</div>
</div>
</div>
|
Анализировать url |
| imodules.uwaterloo.ca |
<div class="uw-cta__wrapper">
<div class="call-to-action-theme-org-eng">
<div class="uw-cta__text uw-cta__text--small">Support</div>
<div class="uw-cta__text uw-cta__text--big">WATERLOO ENGINEERING</div>
</div>
</div>
|
Анализировать url |
| uwaterloo.ca |
Electrical & Computer
|
Анализировать url |
| uwaterloo.ca |
Mechanical & Mechatronics
|
Анализировать url |
| uwaterloo.ca |
Mechanical & Mechatronics
|
Анализировать url |
| uwaterloo.ca |
Civil Engineering
|
Анализировать url |
| uwaterloo.ca |
<span>Global Futures</span>
|
Анализировать url |
| uwaterloo.ca |
reception
|
Анализировать url |
| uwaterloo.ca |
lecture
|
Анализировать url |
| uwaterloo.ca |
Alumni
|
Анализировать url |
| uwaterloo.ca |
Systems Design
|
Анализировать url |
| instagram.com |
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="30" viewbox="0 0 40 30">
<title>Instagram</title>
<path d="M14.3,1.2c-1.5,0.1-2.5,0.3-3.4,0.7C10,2.2,9.2,2.7,8.5,3.5C7.7,4.3,7.3,5.1,6.9,6C6.6,6.9,6.3,7.9,6.3,9.4
c-0.1,1.5-0.1,2-0.1,5.7c0,3.8,0,4.2,0.1,5.7s0.3,2.5,0.6,3.4c0.4,0.9,0.8,1.7,1.6,2.4c0.8,0.8,1.5,1.2,2.5,1.6
c0.9,0.3,1.9,0.6,3.4,0.6c1.5,0.1,2,0.1,5.7,0.1c3.8,0,4.2,0,5.7-0.1s2.5-0.3,3.4-0.6c0.9-0.4,1.7-0.8,2.4-1.6
c0.8-0.8,1.2-1.5,1.6-2.5c0.3-0.9,0.6-1.9,0.6-3.4c0.1-1.5,0.1-2,0.1-5.7c0-3.8,0-4.2-0.1-5.7s-0.3-2.5-0.6-3.4
c-0.4-0.9-0.9-1.7-1.7-2.4C30.7,2.7,30,2.3,29,1.9c-0.9-0.3-1.9-0.6-3.4-0.6c-1.5-0.1-2-0.1-5.7-0.1C16.2,1.2,15.8,1.2,14.3,1.2
M14.5,26.3c-1.4-0.1-2.1-0.3-2.6-0.5c-0.6-0.3-1.1-0.5-1.6-1s-0.8-0.9-1-1.6c-0.2-0.5-0.4-1.2-0.5-2.6c-0.1-1.5-0.1-1.9-0.1-5.6
s0-4.1,0.1-5.6c0-1.3,0.3-2.1,0.5-2.6c0.3-0.6,0.5-1.1,1-1.6s0.9-0.8,1.6-1c0.5-0.2,1.2-0.4,2.6-0.5c1.5-0.1,1.9-0.1,5.6-0.1
s4.1,0,5.6,0.1c1.4,0.1,2.1,0.3,2.6,0.5c0.6,0.3,1.1,0.5,1.6,1s0.8,0.9,1,1.6c0.2,0.5,0.4,1.2,0.5,2.6c0.1,1.5,0.1,1.9,0.1,5.6
s0,4.1-0.1,5.6c-0.1,1.4-0.3,2.1-0.5,2.6c-0.3,0.6-0.5,1.1-1,1.6s-0.9,0.8-1.6,1c-0.5,0.2-1.2,0.4-2.6,0.5
c-1.5,0.1-1.9,0.1-5.6,0.1S15.9,26.4,14.5,26.3 M25.8,7.6c0,0.9,0.8,1.7,1.7,1.7s1.7-0.8,1.7-1.7s-0.8-1.7-1.7-1.7
C26.5,5.9,25.8,6.7,25.8,7.6 M12.9,15c0,3.9,3.2,7.1,7.1,7.1s7.1-3.2,7.1-7.1S23.9,7.9,20,7.9S12.9,11.1,12.9,15 M15.4,15
c0-2.5,2.1-4.6,4.6-4.6s4.6,2.1,4.6,4.6s-2.1,4.6-4.6,4.6S15.4,17.6,15.4,15"></path>
</svg>
</div>
<span class="off-screen">
Instagram
</span>
|
|
| twitter.com |
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewbox="0 0 32 32">
<title>X (formerly Twitter)</title>
<path d="M18.4,14.6L26,5.8h-1.8l-6.6,7.6l-5.2-7.6H6.3l8,11.6l-8,9.2H8l7-8.1l5.5,8.1h6.1L18.4,14.6L18.4,14.6z M15.9,17.5l-0.8-1.1
L8.7,7.2h2.8l5.2,7.4l0.8,1.1l6.8,9.7h-2.8L15.9,17.5L15.9,17.5z"></path>
</svg>
</div>
<span class="off-screen">
X (formerly Twitter)
</span>
|
|
| linkedin.com |
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="30" viewbox="0 0 40 30">
<title>LinkedIn</title>
<path d="M12,29V10.1H5.7v18.8H12V29z M8.9,7.5c2.2,0,3.5-1.4,3.5-3.3S11.1,1,8.9,1C6.8,1,5.4,2.4,5.4,4.3S6.7,7.5,8.9,7.5L8.9,7.5
L8.9,7.5z M15.5,29h6.3V18.4c0-0.5,0-1.1,0.2-1.5c0.4-1.1,1.4-2.3,3.2-2.3c2.3,0,3.2,1.8,3.2,4.3V29h6.3V18.2c0-5.8-3.1-8.5-7.2-8.5
c-3.4,0-4.8,1.9-5.7,3.2l0,0V10h-6.3C15.5,11.8,15.5,29,15.5,29L15.5,29L15.5,29z"></path>
</svg>
</div>
<span class="off-screen">
LinkedIn
</span>
|
Анализировать url |
| facebook.com |
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="30" viewbox="0 0 40 30">
<title>Facebook</title>
<path d="M26.4,16l0.6-4.9h-4.9v-3c0-1.4,0.4-2.3,2.5-2.3h2.6V1.5c-0.5-0.1-2-0.2-3.8-0.2c-3.8,0-6.4,2.2-6.4,6.3v3.6h-4.3v4.9H17
v12.4h5.1V16H26.4L26.4,16z"></path>
</svg>
</div>
<span class="off-screen">
Facebook
</span>
|
|
| youtube.com |
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="30" viewbox="0 0 40 30">
<title>YouTube</title>
<path d="M39.1,5.4c-0.4-1.7-1.8-3.1-3.5-3.5C32.5,1,20,1,20,1S7.5,1,4.4,1.8c-1.7,0.5-3,1.9-3.5,3.6C0.1,8.5,0.1,15,0.1,15
s0,6.5,0.8,9.6c0.4,1.7,1.8,3.1,3.5,3.5C7.5,29,20,29,20,29s12.5,0,15.6-0.8c1.7-0.4,3.1-1.8,3.5-3.5c0.8-3.1,0.8-9.6,0.8-9.6
S39.9,8.5,39.1,5.4z M15.9,20.9V9.1L26.4,15L15.9,20.9z"></path>
</svg>
</div>
<span class="off-screen">
Youtube
</span>
|
Анализировать url |
| imodules.uwaterloo.ca |
Support
Waterloo
Engineering
|
Анализировать url |
| uwaterloo.atlassian.net |
Engineering Website Help
|
Анализировать url |
| uwaterloo.ca |
<div class="uw-icon">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewbox="0 0 32 32">
<title>Campus map</title>
<g transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)">
<path d="M5.2,0.2C3,0.2,1.3,2,1.3,4.1c0,1,0.3,1.8,0.9,2.5l3,3.5l3-3.5C8.7,6,9.1,5.1,9.1,4.1C9.1,2,7.3,0.2,5.2,0.2z M5.2,5.6
C4.3,5.6,3.6,4.9,3.6,4s0.7-1.6,1.6-1.6S6.8,3.1,6.8,4S6.1,5.6,5.2,5.6z"></path>
</g>
</svg>
</div>
<span class="off-screen">
Campus map
</span>
|
Анализировать url |
| uwaterloo.ca |
<span class="link-text">
Contact Waterloo
</span>
|
Анализировать url |
| uwaterloo.ca |
<span class="link-text">
Campus status
</span>
|
Анализировать url |
| uwaterloo.ca |
<span class="link-text">
News
</span>
|
Анализировать url |
| uwaterloo.ca |
<span class="link-text">
Maps & directions
</span>
|
Анализировать url |
| uwaterloo.ca |
<span class="link-text">
Accessibility
</span>
|
Анализировать url |
| uwaterloo.ca |
<span class="link-text">
Careers
</span>
|
Анализировать url |
| uwaterloo.ca |
<span class="link-text">
Emergency notifications
</span>
|
Анализировать url |
| uwaterloo.ca |
<span class="link-text">
Privacy
</span>
|
Анализировать url |
| uwaterloo.ca |
<span class="link-text">
Feedback
</span>
|
Анализировать url |
| uwaterloo.ca |
Office of Indigenous Relations
|
Анализировать url |
| instagram.com |
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="30" viewbox="0 0 40 30">
<title>Instagram</title>
<path d="M14.3,1.2c-1.5,0.1-2.5,0.3-3.4,0.7C10,2.2,9.2,2.7,8.5,3.5C7.7,4.3,7.3,5.1,6.9,6C6.6,6.9,6.3,7.9,6.3,9.4
c-0.1,1.5-0.1,2-0.1,5.7c0,3.8,0,4.2,0.1,5.7s0.3,2.5,0.6,3.4c0.4,0.9,0.8,1.7,1.6,2.4c0.8,0.8,1.5,1.2,2.5,1.6
c0.9,0.3,1.9,0.6,3.4,0.6c1.5,0.1,2,0.1,5.7,0.1c3.8,0,4.2,0,5.7-0.1s2.5-0.3,3.4-0.6c0.9-0.4,1.7-0.8,2.4-1.6
c0.8-0.8,1.2-1.5,1.6-2.5c0.3-0.9,0.6-1.9,0.6-3.4c0.1-1.5,0.1-2,0.1-5.7c0-3.8,0-4.2-0.1-5.7s-0.3-2.5-0.6-3.4
c-0.4-0.9-0.9-1.7-1.7-2.4C30.7,2.7,30,2.3,29,1.9c-0.9-0.3-1.9-0.6-3.4-0.6c-1.5-0.1-2-0.1-5.7-0.1C16.2,1.2,15.8,1.2,14.3,1.2
M14.5,26.3c-1.4-0.1-2.1-0.3-2.6-0.5c-0.6-0.3-1.1-0.5-1.6-1s-0.8-0.9-1-1.6c-0.2-0.5-0.4-1.2-0.5-2.6c-0.1-1.5-0.1-1.9-0.1-5.6
s0-4.1,0.1-5.6c0-1.3,0.3-2.1,0.5-2.6c0.3-0.6,0.5-1.1,1-1.6s0.9-0.8,1.6-1c0.5-0.2,1.2-0.4,2.6-0.5c1.5-0.1,1.9-0.1,5.6-0.1
s4.1,0,5.6,0.1c1.4,0.1,2.1,0.3,2.6,0.5c0.6,0.3,1.1,0.5,1.6,1s0.8,0.9,1,1.6c0.2,0.5,0.4,1.2,0.5,2.6c0.1,1.5,0.1,1.9,0.1,5.6
s0,4.1-0.1,5.6c-0.1,1.4-0.3,2.1-0.5,2.6c-0.3,0.6-0.5,1.1-1,1.6s-0.9,0.8-1.6,1c-0.5,0.2-1.2,0.4-2.6,0.5
c-1.5,0.1-1.9,0.1-5.6,0.1S15.9,26.4,14.5,26.3 M25.8,7.6c0,0.9,0.8,1.7,1.7,1.7s1.7-0.8,1.7-1.7s-0.8-1.7-1.7-1.7
C26.5,5.9,25.8,6.7,25.8,7.6 M12.9,15c0,3.9,3.2,7.1,7.1,7.1s7.1-3.2,7.1-7.1S23.9,7.9,20,7.9S12.9,11.1,12.9,15 M15.4,15
c0-2.5,2.1-4.6,4.6-4.6s4.6,2.1,4.6,4.6s-2.1,4.6-4.6,4.6S15.4,17.6,15.4,15"></path>
</svg>
</div>
<span class="off-screen">
Instagram
</span>
|
|
| linkedin.com |
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="30" viewbox="0 0 40 30">
<title>LinkedIn</title>
<path d="M12,29V10.1H5.7v18.8H12V29z M8.9,7.5c2.2,0,3.5-1.4,3.5-3.3S11.1,1,8.9,1C6.8,1,5.4,2.4,5.4,4.3S6.7,7.5,8.9,7.5L8.9,7.5
L8.9,7.5z M15.5,29h6.3V18.4c0-0.5,0-1.1,0.2-1.5c0.4-1.1,1.4-2.3,3.2-2.3c2.3,0,3.2,1.8,3.2,4.3V29h6.3V18.2c0-5.8-3.1-8.5-7.2-8.5
c-3.4,0-4.8,1.9-5.7,3.2l0,0V10h-6.3C15.5,11.8,15.5,29,15.5,29L15.5,29L15.5,29z"></path>
</svg>
</div>
<span class="off-screen">
LinkedIn
</span>
|
Анализировать url |
| facebook.com |
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="30" viewbox="0 0 40 30">
<title>Facebook</title>
<path d="M26.4,16l0.6-4.9h-4.9v-3c0-1.4,0.4-2.3,2.5-2.3h2.6V1.5c-0.5-0.1-2-0.2-3.8-0.2c-3.8,0-6.4,2.2-6.4,6.3v3.6h-4.3v4.9H17
v12.4h5.1V16H26.4L26.4,16z"></path>
</svg>
</div>
<span class="off-screen">
Facebook
</span>
|
|
| youtube.com |
<div class="uw-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="30" viewbox="0 0 40 30">
<title>YouTube</title>
<path d="M39.1,5.4c-0.4-1.7-1.8-3.1-3.5-3.5C32.5,1,20,1,20,1S7.5,1,4.4,1.8c-1.7,0.5-3,1.9-3.5,3.6C0.1,8.5,0.1,15,0.1,15
s0,6.5,0.8,9.6c0.4,1.7,1.8,3.1,3.5,3.5C7.5,29,20,29,20,29s12.5,0,15.6-0.8c1.7-0.4,3.1-1.8,3.5-3.5c0.8-3.1,0.8-9.6,0.8-9.6
S39.9,8.5,39.1,5.4z M15.9,20.9V9.1L26.4,15L15.9,20.9z"></path>
</svg>
</div>
<span class="off-screen">
YouTube
</span>
|
Анализировать url |
| uwaterloo.ca |
@uwaterloo social directory
|
Анализировать url |
| uwaterloo.ca |
<i>Learn how → </i>
|
Анализировать url |
| uwaterloo.ca |
©2026 All rights reserved
|
Анализировать url |
Конкуренты Готовность: 0%
Конкуренты в Яндексе
Кол-во: 0
Топ сайтов-конкурентов в Яндексе
?
Сайты, чаще всего появляющиеся в ТОПе Яндекса по запросам из семантического ядра этой страницы.
Мы не нашли у вас конкурентов в Яндексе. Сайт или очень молодой или плохо продвигается.
Конкурентов в ТОП-10 Яндекса не нашлось.
Конкуренты в Google
Кол-во: 0
Топ сайтов-конкурентов в Google
?
Сайты, чаще всего появляющиеся в ТОПе Google по запросам из семантического ядра этой страницы.
Конкуренты в Google тоже не найдены. Займитесь продвижением сайта!
Конкурентов в ТОП-10 Google не нашлось.
ЗоЗПП: права потребителей Готовность: 100%
Нарушения
Не выявлены
Признаков дистанционной продажи товаров (интернет-магазина) не обнаружено — требования ЗоЗПП о раскрытии информации продавца к сайту не применяются. Нарушений нет.
ФЗ-149: рекомендательные технологии Готовность: 100%
Нарушения
Не выявлены
Рекомендательные блоки («с этим покупают», «похожие товары» и т.п.) на сайте не обнаружены — требования ст. 10.7 ФЗ-149 к сайту не применяются. Нарушений нет.
ФЗ-38: реклама Готовность: 100%
Нарушения
Не выявлены
Рекламных тематик с обязательными оговорками (медицина, БАД, кредиты и займы, новостройки) на сайте не обнаружено. Нарушений нет.
ФЗ-436: защита детей Готовность: 100%
Нарушения
Не выявлены
Признаков информационной продукции (новости, видео, книги, игры, курсы) не обнаружено — обязательная возрастная маркировка по ФЗ-436 сайту не требуется. Нарушений нет.
Вердикт
Таким сайт engineerthefuture.ca видят поисковые системы. Процент оптимизации невысокий - 45%. Чтобы улучшить сайт и попасть в ТОП необходимо:
Исправьте ошибки в мета-тегах.
Исправьте ошибки индексации.
Поделитесь с друзьями: