CINXE.COM
Finance | HPL
<!DOCTYPE html> <html lang="en" dir="ltr" > <head> <!-- 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-PL2D929'); </script> <!-- End Google Tag Manager --> <!-- Google tag (gtag.js) <script async src="https://www.googletagmanager.com/gtag/js?id=G-WF76KPQR9X"></script> <script> window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments); } gtag('js', new Date()); gtag('config', 'G-WF76KPQR9X'); </script> --> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="Generator" content="Drupal 7 (http://drupal.org)" /> <link rel="canonical" href="https://www.hpl.ca/events/finance/all" /> <link rel="shortcut icon" href="https://www.hpl.ca/sites/all/themes/hpl_primary/images/primary-fav.png" /> <title>Finance | HPL</title> <meta content='width=device-width,height=device-height,width=100,initial-scale=1' name='viewport'> <meta http-equiv="X-UA-Compatible" content="IE=edge"><script type="text/javascript">(window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:["bam.nr-data.net"]},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"1103299206",accountID:"4284799",trustKey:"66686",xpid:"UAQPVVFaARABVFZaAggDUlwJ",licenseKey:"NRJS-b9330086d4848dc0310",applicationID:"1078594488"};;/*! For license information please see nr-loader-spa-1.286.0.min.js.LICENSE.txt */ (()=>{var e,t,r={8122:(e,t,r)=>{"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555:(e,t,r)=>{"use strict";r.d(t,{Vp:()=>c,fn:()=>s,x1:()=>u});var n=r(384),i=r(8122);const o={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){try{const t=c(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}function c(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function u(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.info=a[e])}},9417:(e,t,r)=>{"use strict";r.d(t,{D0:()=>h,gD:()=>g,xN:()=>p});var n=r(3333);const i=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var o=r(2614),a=r(944),s=r(384),c=r(8122);const u="[data-nr-mask]",d=()=>{const e={feature_flags:[],experimental:{marks:!1,measures:!1,resources:!1},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{get capture_marks(){return e.feature_flags.includes(n.$v.MARKS)||e.experimental.marks},set capture_marks(t){e.experimental.marks=t},get capture_measures(){return e.feature_flags.includes(n.$v.MEASURES)||e.experimental.measures},set capture_measures(t){e.experimental.measures=t},capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(n.$v.RESOURCES)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:o.wk,inactiveMs:o.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){i(t)?e.mask_selector="".concat(t,",").concat(u):""===t||null===t?e.mask_selector=u:(0,a.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){i(t)?e.block_selector+=",".concat(t):""!==t&&(0,a.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,a.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},spa:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]}}},l={},f="All configuration objects require an agent identifier!";function h(e){if(!e)throw new Error(f);if(!l[e])throw new Error("Configuration for ".concat(e," was never set"));return l[e]}function p(e,t){if(!e)throw new Error(f);l[e]=(0,c.a)(t,d());const r=(0,s.nY)(e);r&&(r.init=l[e])}function g(e,t){if(!e)throw new Error(f);var r=h(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}},5603:(e,t,r)=>{"use strict";r.d(t,{a:()=>c,o:()=>s});var n=r(384),i=r(8122);const o={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},a={};function s(e){if(!e)throw new Error("All loader-config objects require an agent identifier!");if(!a[e])throw new Error("LoaderConfig for ".concat(e," was never set"));return a[e]}function c(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.loader_config=a[e])}},3371:(e,t,r)=>{"use strict";r.d(t,{V:()=>f,f:()=>l});var n=r(8122),i=r(384),o=r(6154),a=r(9324);let s=0;const c={buildEnv:a.F3,distMethod:a.Xs,version:a.xv,originTime:o.WN},u={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,timeKeeper:void 0,obfuscator:void 0,harvester:void 0},d={};function l(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!d[e])throw new Error("Runtime for ".concat(e," was never set"));return d[e]}function f(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");d[e]={...(0,n.a)(t,u),...c},Object.hasOwnProperty.call(d[e],"harvestCount")||Object.defineProperty(d[e],"harvestCount",{get:()=>++s});const r=(0,i.nY)(e);r&&(r.runtime=d[e])}},9324:(e,t,r)=>{"use strict";r.d(t,{F3:()=>i,Xs:()=>o,Yq:()=>a,xv:()=>n});const n="1.286.0",i="PROD",o="CDN",a="^2.0.0-alpha.18"},6154:(e,t,r)=>{"use strict";r.d(t,{A4:()=>s,OF:()=>d,RI:()=>i,WN:()=>h,bv:()=>o,gm:()=>a,lR:()=>f,m:()=>u,mw:()=>c,sb:()=>l});var n=r(1863);const i="undefined"!=typeof window&&!!window.document,o="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),s="complete"===a?.document?.readyState,c=Boolean("hidden"===a?.document?.visibilityState),u=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),l=d&&"undefined"==typeof SharedWorker,f=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),h=Date.now()-(0,n.t)()},7295:(e,t,r)=>{"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>o});var n=[];function i(e){if(!e||o(e))return!1;if(0===n.length)return!0;for(var t=0;t<n.length;t++){var r=n[t];if("*"===r.hostname)return!1;if(s(r.hostname,e.hostname)&&c(r.pathname,e.pathname))return!1}return!0}function o(e){return void 0===e.hostname}function a(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let o,a;i>0?(o=r.substring(0,i),a=r.substring(i)):(o=r,a="");let[s]=o.split(":");n.push({hostname:s,pathname:a})}}function s(e,t){return!(e.length>t.length)&&t.indexOf(e)===t.length-e.length}function c(e,t){return 0===e.indexOf("/")&&(e=e.substring(1)),0===t.indexOf("/")&&(t=t.substring(1)),""===e||e===t}},3241:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(6154);const i="newrelic";function o(e={}){try{n.gm.dispatchEvent(new CustomEvent(i,{detail:e}))}catch(e){}}},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>l,x3:()=>u});var n=r(7836),i=r(3606),o=r(860),a=r(2646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),h(e,t,!1),s[e].size&&f(e))}function d(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function l(e="",t="feature",r=!1){if(d(e),!e||!s[e].get(t)||r)return h(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((([e,t])=>t.staged))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((([t])=>{s[e].delete(t),h(e,t)})))}function h(e,t,r=!0){const o=e?n.ee.get(e):n.ee,s=i.i.handlers;if(!o.aborted&&o.backlog&&s){if(r){const e=o.backlog[t],r=s[t];if(r){for(let t=0;e&&t<e.length;++t)p(e[t],r);Object.entries(r).forEach((([e,t])=>{Object.values(t||{}).forEach((t=>{t[0]?.on&&t[0]?.context()instanceof a.y&&t[0].on(e,t[1])}))}))}}o.isolatedBacklog||delete s[t],o.backlog[t]=null,o.emit("drain-"+t,[])}}function p(e,t){var r=e[1];Object.values(t[r]||{}).forEach((t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],o=e[2];n.apply(i,o)}}))}},7836:(e,t,r)=>{"use strict";r.d(t,{P:()=>c,ee:()=>u});var n=r(384),i=r(8990),o=r(3371),a=r(2646),s=r(5607);const c="nr@context:".concat(s.W),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&(0,o.f)(r).isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=h(n),c=g(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=v()[s[e]];p&&p.push([f,e,r,a]);return a},get:m,listeners:g,context:h,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach((([e,n])=>{s[n]=t,t in r||(r[t]=[])}))},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach((e=>{delete f.backlog[e]}))},isBuffering:function(e){return!!v()[s[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function h(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return d[t]=d[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=u)},2646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(9908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,ZF:()=>c,bz:()=>a,el:()=>u});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}function c(){return s(16)}function u(){return s(32)}},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},7485:(e,t,r)=>{"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},944:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.debug&&console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t)}r.d(t,{R:()=>n})},5701:(e,t,r)=>{"use strict";r.d(t,{B:()=>a,t:()=>s});var n=r(7836),i=r(3241);const o=new Set,a={};function s(e,t){const r=n.ee.get(t);a[t]??={},e&&"object"==typeof e&&(o.has(t)||(r.emit("rumresp",[e]),a[t]=e,o.add(t),(0,i.W)({agentIdentifier:t,loaded:!0,drained:!0,type:"lifecycle",name:"load",feature:void 0,data:e})))}},8990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout((()=>{i=clearTimeout(i)}),t)),n||(clearTimeout(i),i=setTimeout((()=>{e.apply(this,r)}),t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},3304:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(7836);const i=()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}};function o(e){try{return JSON.stringify(e,i())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},5289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,sB:()=>a});var n=r(3878);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.sp)("load",e,t)}function a(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}},384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>o,US:()=>d,Zm:()=>a,bQ:()=>c,dV:()=>s,nY:()=>u,pV:()=>l});var n=r(6154),i=r(1863);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function s(){let e=a();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},2843:(e,t,r)=>{"use strict";r.d(t,{u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},8139:(e,t,r)=>{"use strict";r.d(t,{u:()=>f});var n=r(7836),i=r(3434),o=r(8990),a=r(6154);const s={},c=a.gm.XMLHttpRequest,u="addEventListener",d="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e){var t=function(e){return(e||n.ee).get("events")}(e);if(s[t.debugId]++)return t;s[t.debugId]=1;var r=(0,i.YM)(t,!0);function f(e){r.inPlace(e,[u,d],"-",p)}function p(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,f),c&&h(c.prototype,f),h(a.gm,f)),t.on(u+"-start",(function(e,t){var n=e[1];if(null!==n&&("function"==typeof n||"object"==typeof n)){var i=(0,o.I)(n,l,(function(){var e={object:function(){if("function"!=typeof n.handleEvent)return;return n.handleEvent.apply(n,arguments)},function:n}[typeof n];return e?r(e,"fn-",null,e.name||"anonymous"):n}));this.wrapped=e[1]=i}})),t.on(d+"-start",(function(e){e[1]=this.wrapped||e[1]})),t}function h(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,u);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434:(e,t,r)=>{"use strict";r.d(t,{Jt:()=>o,YM:()=>c});var n=r(7836),i=r(5607);const o="nr@original:".concat(i.W);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach((function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})})),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}},9414:(e,t,r)=>{"use strict";r.d(t,{J:()=>c});var n=r(7836),i=r(2646),o=r(944),a=r(3434);const s=new Map;function c(e,t,r,c){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,o.R)(29);const u=function(e){return(e||n.ee).get("logger")}(e),d=(0,a.YM)(u),l=new i.y(n.P);l.level=c.level,l.customAttributes=c.customAttributes;const f=t[r]?.[a.Jt]||t[r];return s.set(f,l),d.inPlace(t,[r],"wrap-logger-",(()=>s.get(f))),u}},9300:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.ajax},3333:(e,t,r)=>{"use strict";r.d(t,{$v:()=>u,TZ:()=>n,Zp:()=>i,kd:()=>c,mq:()=>s,nf:()=>a,qN:()=>o});const n=r(860).K7.genericEvents,i=["auxclick","click","copy","keydown","paste","scrollend"],o=["focus","blur"],a=4,s=1e3,c=["PageAction","UserAction","BrowserPerformance"],u={MARKS:"experimental.marks",MEASURES:"experimental.measures",RESOURCES:"experimental.resources"}},6774:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.jserrors},993:(e,t,r)=>{"use strict";r.d(t,{A$:()=>o,ET:()=>a,TZ:()=>s,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o={OFF:0,ERROR:1,WARN:2,INFO:3,DEBUG:4,TRACE:5},a="log",s=n.K7.logging},3785:(e,t,r)=>{"use strict";r.d(t,{R:()=>c,b:()=>u});var n=r(9908),i=r(1863),o=r(860),a=r(8154),s=r(993);function c(e,t,r={},c=s.p_.INFO){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,o.K7.metrics,e),(0,n.p)(s.ET,[(0,i.t)(),t,r,c],void 0,o.K7.logging,e)}function u(e){return"string"==typeof e&&Object.values(s.p_).some((t=>t===e.toUpperCase().trim()))}},8154:(e,t,r)=>{"use strict";r.d(t,{z_:()=>o,XG:()=>s,TZ:()=>n,rs:()=>i,xV:()=>a});r(6154),r(9566),r(384);const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},6344:(e,t,r)=>{"use strict";r.d(t,{BB:()=>d,G4:()=>o,Qb:()=>l,TZ:()=>i,Ug:()=>a,_s:()=>s,bc:()=>u,yP:()=>c});var n=r(2614);const i=r(860).K7.sessionReplay,o={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"},a=.12,s={DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},c={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0},u={RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},d=5e3,l={API:"api"}},5270:(e,t,r)=>{"use strict";r.d(t,{Aw:()=>c,CT:()=>u,SR:()=>s,rF:()=>d});var n=r(384),i=r(9417),o=r(7767),a=r(6154);function s(e){return!!(0,n.dV)().o.MO&&(0,o.V)(e)&&!0===(0,i.gD)(e,"session_trace.enabled")}function c(e){return!0===(0,i.gD)(e,"session_replay.preload")&&s(e)}function u(e,t){const r=t.correctAbsoluteTimestamp(e);return{originalTimestamp:e,correctedTimestamp:r,timestampDiff:e-r,originTime:a.WN,correctedOriginTime:t.correctedOriginTime,originTimeDiff:Math.floor(a.WN-t.correctedOriginTime)}}function d(e,t){try{if("string"==typeof t?.type){if("password"===t.type.toLowerCase())return"*".repeat(e?.length||0);if(void 0!==t?.dataset?.nrUnmask||t?.classList?.contains("nr-unmask"))return e}}catch(e){}return"string"==typeof e?e.replace(/[\S]/g,"*"):"*".repeat(e?.length||0)}},3738:(e,t,r)=>{"use strict";r.d(t,{He:()=>i,Kp:()=>s,Lc:()=>u,Rz:()=>d,TZ:()=>n,bD:()=>o,d3:()=>a,jx:()=>l,uP:()=>c});const n=r(860).K7.sessionTrace,i="bstResource",o="resource",a="-start",s="-end",c="fn"+a,u="fn"+s,d="pushState",l=1e3},3962:(e,t,r)=>{"use strict";r.d(t,{AM:()=>o,O2:()=>c,Qu:()=>u,TZ:()=>s,ih:()=>d,pP:()=>a,tC:()=>i});var n=r(860);const i=["click","keydown","submit","popstate"],o="api",a="initialPageLoad",s=n.K7.softNav,c={INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},u={INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},d={IP:"in progress",FIN:"finished",CAN:"cancelled"}},7378:(e,t,r)=>{"use strict";r.d(t,{$p:()=>x,BR:()=>b,Kp:()=>R,L3:()=>y,Lc:()=>c,NC:()=>o,SG:()=>d,TZ:()=>i,U6:()=>p,UT:()=>m,d3:()=>w,dT:()=>f,e5:()=>A,gx:()=>v,l9:()=>l,oW:()=>h,op:()=>g,rw:()=>u,tH:()=>T,uP:()=>s,wW:()=>E,xq:()=>a});var n=r(384);const i=r(860).K7.spa,o=["click","submit","keypress","keydown","keyup","change"],a=999,s="fn-start",c="fn-end",u="cb-start",d="api-ixn-",l="remaining",f="interaction",h="spaNode",p="jsonpNode",g="fetch-start",m="fetch-done",v="fetch-body-",b="jsonp-end",y=(0,n.dV)().o.ST,w="-start",R="-end",x="-body",E="cb"+R,A="jsTime",T="fetch"},4234:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(7836),i=r(1687);class o{constructor(e,t){this.agentIdentifier=e,this.ee=n.ee.get(e),this.featureName=t,this.blocked=!1}deregisterDrain(){(0,i.x3)(this.agentIdentifier,this.featureName)}}},7767:(e,t,r)=>{"use strict";r.d(t,{V:()=>o});var n=r(9417),i=r(6154);const o=e=>i.RI&&!0===(0,n.gD)(e,"privacy.cookies_enabled")},8969:(e,t,r)=>{"use strict";r.d(t,{j:()=>I});var n=r(860),i=r(2555),o=r(9908),a=r(1687),s=r(5289),c=r(6154),u=r(944),d=r(8154),l=r(384),f=r(6344);const h=["setErrorHandler","finished","addToTrace","addRelease","recordCustomEvent","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",f.G4.RECORD,f.G4.PAUSE,"log","wrapLogger"],p=["setErrorHandler","finished","addToTrace","addRelease"];var g=r(1863),m=r(2614),v=r(993),b=r(3785),y=r(9414),w=r(3241),R=r(5701);function x(){const e=(0,l.pV)();h.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.runtime?e.exposed&&e[t]&&"micro-agent"!==e.runtime.loaderType&&n.push(e[t](...r)):(0,u.R)(38,t)})),n[0]}(t,...r)}))}const E={};var A=r(9417),T=r(5603),S=r(3371);const N=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};var O=r(7836);const _=new Set;function I(e,t={},h,I){let{init:P,info:j,loader_config:C,runtime:k={},exposed:L=!0}=t;k.loaderType=h;const H=(0,l.pV)();j||(P=H.init,j=H.info,C=H.loader_config),(0,A.xN)(e.agentIdentifier,P||{}),(0,T.a)(e.agentIdentifier,C||{}),j.jsAttributes??={},c.bv&&(j.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,j);const M=e.init,D=[j.beacon,j.errorBeacon];_.has(e.agentIdentifier)||(M.proxy.assets&&(N(M.proxy.assets),D.push(M.proxy.assets)),M.proxy.beacon&&D.push(M.proxy.beacon),x(),(0,l.US)("activatedFeatures",R.B),e.runSoftNavOverSpa&&=!0===M.soft_navigations.enabled&&M.feature_flags.includes("soft_nav")),k.denyList=[...M.ajax.deny_list||[],...M.ajax.block_internal?D:[]],k.ptid=e.agentIdentifier,(0,S.V)(e.agentIdentifier,k),_.has(e.agentIdentifier)||(e.ee=O.ee.get(e.agentIdentifier),e.exposed=L,function(e,t){t||(0,a.Ak)(e.agentIdentifier,"api");const l=e.ee.get("tracer");E[e.agentIdentifier]=m.g.OFF,e.ee.on(f.G4.REPLAY_RUNNING,(t=>{E[e.agentIdentifier]=t}));const h="api-",x=h+"ixn-";function A(t,r,n,o){const a=e.info;return null===r?delete a.jsAttributes[t]:(0,i.x1)(e.agentIdentifier,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),N(h,n,!0,o||null===r?"session":void 0)(t,r)}function T(){}e.log=function(t,{customAttributes:r={},level:i=v.p_.INFO}={}){(0,o.p)(d.xV,["API/log/called"],void 0,n.K7.metrics,e.ee),(0,b.R)(e.ee,t,r,i)},e.wrapLogger=(t,r,{customAttributes:i={},level:a=v.p_.INFO}={})=>{(0,o.p)(d.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,e.ee),(0,y.J)(e.ee,t,r,{customAttributes:i,level:a})},p.forEach((t=>{e[t]=N(h,t,!0,"api")})),e.addPageAction=N(h,"addPageAction",!0,n.K7.genericEvents),e.recordCustomEvent=N(h,"recordCustomEvent",!0,n.K7.genericEvents),e.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),e.runtime.customTransaction=(r||"http://custom.transaction")+t,N(h,"setPageViewName",!0)()},e.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return A(e,t,"setCustomAttribute",r);(0,u.R)(40,typeof t)}else(0,u.R)(39,typeof e)},e.setUserId=function(e){if("string"==typeof e||null===e)return A("enduser.id",e,"setUserId",!0);(0,u.R)(41,typeof e)},e.setApplicationVersion=function(e){if("string"==typeof e||null===e)return A("application.version",e,"setApplicationVersion",!1);(0,u.R)(42,typeof e)},e.start=()=>{try{(0,o.p)(d.xV,["API/start/called"],void 0,n.K7.metrics,e.ee),e.ee.emit("manual-start-all")}catch(e){(0,u.R)(23,e)}},e[f.G4.RECORD]=function(){(0,o.p)(d.xV,["API/recordReplay/called"],void 0,n.K7.metrics,e.ee),(0,o.p)(f.G4.RECORD,[],void 0,n.K7.sessionReplay,e.ee)},e[f.G4.PAUSE]=function(){(0,o.p)(d.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,e.ee),(0,o.p)(f.G4.PAUSE,[],void 0,n.K7.sessionReplay,e.ee)},e.interaction=function(e){return(new T).get("object"==typeof e?e:{})};const S=T.prototype={createTracer:function(t,r){var i={},a=this,s="function"==typeof r;return(0,o.p)(d.xV,["API/createTracer/called"],void 0,n.K7.metrics,e.ee),e.runSoftNavOverSpa||(0,o.p)(x+"tracer",[(0,g.t)(),t,i],a,n.K7.spa,e.ee),function(){if(l.emit((s?"":"no-")+"fn-start",[(0,g.t)(),a,s],i),s)try{return r.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw l.emit("fn-err",[arguments,this,t],i),t}finally{l.emit("fn-end",[(0,g.t)()],i)}}}};function N(t,r,i,a){return function(){return(0,o.p)(d.xV,["API/"+r+"/called"],void 0,n.K7.metrics,e.ee),(0,w.W)({agentIdentifier:e.agentIdentifier,drained:!!R.B?.[e.agentIdentifier],type:"data",name:"api",feature:t+r,data:{notSpa:i,bufferGroup:a}}),a&&(0,o.p)(t+r,[i?(0,g.t)():performance.now(),...arguments],i?null:this,a,e.ee),i?void 0:this}}function O(){r.e(478).then(r.bind(r,8778)).then((({setAsyncAPI:t})=>{t(e),(0,a.Ze)(e.agentIdentifier,"api")})).catch((t=>{(0,u.R)(27,t),e.ee.abort()}))}["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((t=>{S[t]=N(x,t,void 0,e.runSoftNavOverSpa?n.K7.softNav:n.K7.spa)})),e.setCurrentRouteName=e.runSoftNavOverSpa?N(x,"routeName",void 0,n.K7.softNav):N(h,"routeName",!0,n.K7.spa),e.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,o.p)(d.xV,["API/noticeError/called"],void 0,n.K7.metrics,e.ee),(0,o.p)("err",[t,(0,g.t)(),!1,r,!!E[e.agentIdentifier]],void 0,n.K7.jserrors,e.ee)},c.RI?(0,s.GG)((()=>O()),!0):O()}(e,I),(0,w.W)({agentIdentifier:e.agentIdentifier,drained:!!R.B?.[e.agentIdentifier],type:"lifecycle",name:"initialize",feature:void 0,data:e.config})),_.add(e.agentIdentifier)}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>d,K7:()=>c,P3:()=>u,XX:()=>i,Yy:()=>s,df:()=>o,qY:()=>n,v4:()=>a});const n="events",i="jserrors",o="browser/blobs",a="rum",s="browser/logs",c={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},u={[c.pageViewEvent]:1,[c.pageViewTiming]:2,[c.metrics]:3,[c.jserrors]:4,[c.spa]:5,[c.ajax]:6,[c.sessionTrace]:7,[c.softNav]:8,[c.sessionReplay]:9,[c.logging]:10,[c.genericEvents]:11},d={[c.pageViewEvent]:a,[c.pageViewTiming]:n,[c.ajax]:n,[c.spa]:n,[c.softNav]:n,[c.metrics]:i,[c.jserrors]:i,[c.sessionTrace]:o,[c.sessionReplay]:o,[c.logging]:s,[c.genericEvents]:"ins"}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>({212:"nr-spa-compressor",249:"nr-spa-recorder",478:"nr-spa"}[e]+"-1.286.0.min.js"),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.286.0.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d<u.length;d++){var l=u[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+o){s=l;break}}if(!s){c=!0;var f={478:"sha512-xt9QypT23DNupLy9wXPzK6uGCHucLx9ieBiprVZwJD/HfkKcTY5t9xUrMvJ/ybOBfVDiFPL8R/YCJHdANxjV3g==",249:"sha512-KxJzV7dF4ry7RzxsxRBMJPnHjRdZUbseWowgGkDemMtubSveBZAlqlWb/489Lpd5K2u0Q2zTSBK599A9+u9jpA==",212:"sha512-ges3wTNuYgFINvgkoryTYKsHZWBqvLFD9qo1XJQWq5OYq+1DVXuGFs9cYogVoQEoCQxuaUdKAXcxF/sl3Ntbrg=="};(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),f[a]&&(s.integrity=f[a])}e[r]=[n];var h=(t,n)=>{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(h.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=h.bind(null,s.onerror),s.onload=h.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={38:0,788:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.286.0.PROD"]=self["webpackChunk:NRBA-1.286.0.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8374);var e=i(944),t=i(6344),r=i(9566);class n{agentIdentifier;constructor(){this.agentIdentifier=(0,r.LA)(16)}#e(t,...r){if(this[t]!==n.prototype[t])return this[t](...r);(0,e.R)(35,t)}addPageAction(e,t){return this.#e("addPageAction",e,t)}recordCustomEvent(e,t){return this.#e("recordCustomEvent",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}addRelease(e,t){return this.#e("addRelease",e,t)}log(e,t){return this.#e("log",e,t)}}class o extends n{#e(t,...r){if(this[t]!==o.prototype[t]&&this[t]!==n.prototype[t])return this[t](...r);(0,e.R)(35,t)}start(){return this.#e("start")}finished(e){return this.#e("finished",e)}recordReplay(){return this.#e(t.G4.RECORD)}pauseReplay(){return this.#e(t.G4.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}wrapLogger(e,t,r){return this.#e("wrapLogger",e,t,r)}}var a=i(860),s=i(9417);const c=Object.values(a.K7);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.gD)(t,"".concat(e,".enabled"))}(r,e)})),t}var d=i(8969);var l=i(1687),f=i(4234),h=i(5289),p=i(6154),g=i(5270),m=i(7767),v=i(6389);class b extends f.W{constructor(e,t,r=!0){super(e.agentIdentifier,t),this.auto=r,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===e.init[this.featureName].autoStart&&(this.auto=!1),this.auto?(0,l.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,v.J)((()=>{(0,l.Ak)(e.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator(e)})))}importAggregator(t,r={}){if(this.featAggregate||!this.auto)return;let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let o;try{if((0,m.V)(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(478).then(i.bind(i,6526));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(!this.#t(this.featureName,o))return(0,l.Ze)(this.agentIdentifier,this.featureName),void n(!1);const{lazyFeatureLoader:e}=await i.e(478).then(i.bind(i,6103)),{Aggregate:a}=await e(this.featureName,"aggregate");this.featAggregate=new a(t,r),t.runtime.harvester.initializedAggregates.push(this.featAggregate),n(!0)}catch(t){(0,e.R)(34,t),this.abortHandler?.(),(0,l.Ze)(this.agentIdentifier,this.featureName,!0),n(!1),this.ee&&this.ee.abort()}};p.RI?(0,h.GG)((()=>o()),!0):o()}#t(e,t){switch(e){case a.K7.sessionReplay:return(0,g.SR)(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var y=i(6630);class w extends b{static featureName=y.T;constructor(e,t=!0){super(e,y.T,t),this.importAggregator(e)}}var R=i(384);var x=i(9908),E=i(2843),A=i(3878),T=i(782),S=i(1863);class N extends b{static featureName=T.T;constructor(e,t=!0){super(e,T.T,t),p.RI&&((0,E.u)((()=>(0,x.p)("docHidden",[(0,S.t)()],void 0,T.T,this.ee)),!0),(0,A.sp)("pagehide",(()=>(0,x.p)("winPagehide",[(0,S.t)()],void 0,T.T,this.ee))),this.importAggregator(e))}}var O=i(8154);class _ extends b{static featureName=O.TZ;constructor(e,t=!0){super(e,O.TZ,t),p.RI&&document.addEventListener("securitypolicyviolation",(e=>{(0,x.p)(O.xV,["Generic/CSPViolation/Detected"],void 0,this.featureName,this.ee)})),this.importAggregator(e)}}var I=i(6774),P=i(3304);class j{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,P.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function C(e){return H(e)?e:new j(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic)}function k(e){const t="Unhandled Promise Rejection: ";if(!e?.reason)return;if(H(e.reason)){try{e.reason.message.startsWith(t)||(e.reason.message=t+e.reason.message)}catch(e){}return C(e.reason)}const r=C(e.reason);return(r.message||"").startsWith(t)||(r.message=t+r.message),r}function L(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new j(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic);return t.name=SyntaxError.name,t}return H(e.error)?e.error:C(e)}function H(e){return e instanceof Error&&!!e.stack}class M extends b{static featureName=I.T;#r=!1;constructor(e,r=!0){super(e,I.T,r);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",((e,t)=>{this.abortHandler&&(0,x.p)("ierr",[C(e),(0,S.t)(),!0,{},this.#r,t],void 0,this.featureName,this.ee)})),this.ee.on(t.G4.REPLAY_RUNNING,(e=>{this.#r=e})),p.gm.addEventListener("unhandledrejection",(e=>{this.abortHandler&&(0,x.p)("err",[k(e),(0,S.t)(),!1,{unhandledPromiseRejection:1},this.#r],void 0,this.featureName,this.ee)}),(0,A.jT)(!1,this.removeOnAbort?.signal)),p.gm.addEventListener("error",(e=>{this.abortHandler&&(0,x.p)("err",[L(e),(0,S.t)(),!1,{},this.#r],void 0,this.featureName,this.ee)}),(0,A.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var D=i(8990);let K=1;const U="nr@id";function V(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===p.gm?0:(0,D.I)(e,U,(function(){return K++}))}function G(e){if("string"==typeof e&&e.length)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,P.A)(e).length}catch(e){return}}}var F=i(8139),B=i(7836),W=i(3434);const z={},q=["open","send"];function Z(t){var r=t||B.ee;const n=function(e){return(e||B.ee).get("xhr")}(r);if(void 0===p.gm.XMLHttpRequest)return n;if(z[n.debugId]++)return n;z[n.debugId]=1,(0,F.u)(r);var i=(0,W.YM)(n),o=p.gm.XMLHttpRequest,a=p.gm.MutationObserver,s=p.gm.Promise,c=p.gm.setInterval,u="readystatechange",d=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],l=[],f=p.gm.XMLHttpRequest=function(t){const r=new o(t),a=n.context(r);try{n.emit("new-xhr",[r],a),r.addEventListener(u,(s=a,function(){var e=this;e.readyState>3&&!s.resolved&&(s.resolved=!0,n.emit("xhr-resolved",[],e)),i.inPlace(e,d,"fn-",y)}),(0,A.jT)(!1))}catch(t){(0,e.R)(15,t);try{n.emit("internal-error",[t])}catch(e){}}var s;return r};function h(e,t){i.inPlace(t,["onreadystatechange"],"fn-",y)}if(function(e,t){for(var r in e)t[r]=e[r]}(o,f),f.prototype=o.prototype,i.inPlace(f.prototype,q,"-xhr-",y),n.on("send-xhr-start",(function(e,t){h(e,t),function(e){l.push(e),a&&(g?g.then(b):c?c(b):(m=-m,v.data=m))}(t)})),n.on("open-xhr-start",h),a){var g=s&&s.resolve();if(!c&&!s){var m=1,v=document.createTextNode(m);new a(b).observe(v,{characterData:!0})}}else r.on("fn-end",(function(e){e[0]&&e[0].type===u||b()}));function b(){for(var e=0;e<l.length;e++)h(0,l[e]);l.length&&(l=[])}function y(e,t){return t}return n}var Y="fetch-",J=Y+"body-",X=["arrayBuffer","blob","json","text","formData"],Q=p.gm.Request,ee=p.gm.Response,te="prototype";const re={};function ne(e){const t=function(e){return(e||B.ee).get("fetch")}(e);if(!(Q&&ee&&p.gm.fetch))return t;if(re[t.debugId]++)return t;function r(e,r,n){var i=e[r];"function"==typeof i&&(e[r]=function(){var e,r=[...arguments],o={};t.emit(n+"before-start",[r],o),o[B.P]&&o[B.P].dt&&(e=o[B.P].dt);var a=i.apply(this,r);return t.emit(n+"start",[r,e],a),a.then((function(e){return t.emit(n+"end",[null,e],a),e}),(function(e){throw t.emit(n+"end",[e],a),e}))})}return re[t.debugId]=1,X.forEach((e=>{r(Q[te],e,J),r(ee[te],e,J)})),r(p.gm,"fetch",Y),t.on(Y+"end",(function(e,r){var n=this;if(r){var i=r.headers.get("content-length");null!==i&&(n.rxSize=i),t.emit(Y+"done",[null,r],n)}else t.emit(Y+"done",[e],n)})),t}var ie=i(7485),oe=i(5603);class ae{constructor(e){this.agentIdentifier=e}generateTracePayload(e){if(!this.shouldGenerateTrace(e))return null;var t=(0,oe.o)(this.agentIdentifier);if(!t)return null;var n=(t.accountID||"").toString()||null,i=(t.agentID||"").toString()||null,o=(t.trustKey||"").toString()||null;if(!n||!i)return null;var a=(0,r.ZF)(),s=(0,r.el)(),c=Date.now(),u={spanId:a,traceId:s,timestamp:c};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(u.traceContextParentHeader=this.generateTraceContextParentHeader(a,s),u.traceContextStateHeader=this.generateTraceContextStateHeader(a,c,n,i,o)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(u.newrelicHeader=this.generateTraceHeader(a,s,c,n,i,o)),u}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,o){if(!("function"==typeof p.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return o&&n!==o&&(a.d.tk=o),btoa((0,P.A)(a))}shouldGenerateTrace(e){return this.isDtEnabled()&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1,r={};if((0,s.gD)(this.agentIdentifier,"distributed_tracing")&&(r=(0,s.D0)(this.agentIdentifier).distributed_tracing),e.sameOrigin)t=!0;else if(r.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,ie.D)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}isDtEnabled(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.enabled}excludeNewrelicHeader(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.cors_use_tracecontext_headers}}var se=i(9300),ce=i(7295),ue=["load","error","abort","timeout"],de=ue.length,le=(0,R.dV)().o.REQ,fe=(0,R.dV)().o.XHR;const he="X-NewRelic-App-Data";class pe extends b{static featureName=se.T;constructor(e,t=!0){super(e,se.T,t),this.dt=new ae(e.agentIdentifier),this.handler=(e,t,r,n)=>(0,x.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};p.gm?.performance?.getEntriesByType("resource").forEach((t=>{if(t.initiatorType in e&&0!==t.responseStatus){const r={status:t.responseStatus},n={rxSize:t.transferSize,duration:Math.floor(t.duration),cbTime:0};ge(r,t.name),this.handler("xhr",[r,n,t.startTime,t.responseEnd,e[t.initiatorType]],void 0,a.K7.ajax)}}))}catch(e){}ne(this.ee),Z(this.ee),function(e,t,r,n){function i(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=R,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},e.addEventListener("load",(function(r){E(t,e)}),(0,A.jT)(!1)),p.lR||e.addEventListener("progress",(function(e){t.lastSize=e.loaded}),(0,A.jT)(!1))}function o(e){this.params={method:e[0]},ge(this,e[1]),this.metrics={}}function s(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var i=n.generateTracePayload(this.parsedOrigin);if(i){var o=!1;i.newrelicHeader&&(r.setRequestHeader("newrelic",i.newrelicHeader),o=!0),i.traceContextParentHeader&&(r.setRequestHeader("traceparent",i.traceContextParentHeader),i.traceContextStateHeader&&r.setRequestHeader("tracestate",i.traceContextStateHeader),o=!0),o&&(this.dt=i)}}function c(e,r){var n=this.metrics,i=e[0],o=this;if(n&&i){var a=G(i);a&&(n.txSize=a)}this.startTime=(0,S.t)(),this.body=i,this.listener=function(e){try{"abort"!==e.type||o.loadCaptureCalled||(o.params.aborted=!0),("load"!==e.type||o.called===o.totalCbs&&(o.onloadCalled||"function"!=typeof r.onload)&&"function"==typeof o.end)&&o.end(r)}catch(e){try{t.emit("internal-error",[e])}catch(e){}}};for(var s=0;s<de;s++)r.addEventListener(ue[s],this.listener,(0,A.jT)(!1))}function u(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function d(e,t){var r=""+V(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function l(e,t){var r=""+V(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function f(){this.endTime=(0,S.t)()}function h(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-added",[e[1],e[2]],r)}function g(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-removed",[e[1],e[2]],r)}function m(e,t,r){t instanceof fe&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,S.t)()))}function v(e,r){this.xhrCbStart&&t.emit("xhr-cb-time",[(0,S.t)()-this.xhrCbStart,this.onload,r],r)}function b(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&p.RI&&(t=""+p.gm.location.href):e[0]&&e[0].url?t=e[0].url:p.gm?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,ie.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var i=n.generateTracePayload(this.parsedOrigin);if(i&&(i.newrelicHeader||i.traceContextParentHeader))if(e[0]&&e[0].headers)s(e[0].headers,i)&&(this.dt=i);else{var o={};for(var a in r)o[a]=r[a];o.headers=new Headers(r.headers||{}),s(o.headers,i)&&(this.dt=i),e.length>1?e[1]=o:e.push(o)}}function s(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function y(e,t){this.params={},this.metrics={},this.startTime=(0,S.t)(),this.dt=t,e.length>=1&&(this.target=e[0]),e.length>=2&&(this.opts=e[1]);var r,n=this.opts||{},i=this.target;"string"==typeof i?r=i:"object"==typeof i&&i instanceof le?r=i.url:p.gm?.URL&&"object"==typeof i&&i instanceof URL&&(r=i.href),ge(this,r);var o=(""+(i&&i instanceof le&&i.method||n.method||"GET")).toUpperCase();this.params.method=o,this.body=n.body,this.txSize=G(n.body)||0}function w(e,t){if(this.endTime=(0,S.t)(),this.params||(this.params={}),(0,ce.iW)(this.params))return;let n;this.params.status=t?t.status:0,"string"==typeof this.rxSize&&this.rxSize.length>0&&(n=+this.rxSize);const i={txSize:this.txSize,rxSize:n,duration:(0,S.t)()-this.startTime};r("xhr",[this.params,i,this.startTime,this.endTime,"fetch"],this,a.K7.ajax)}function R(e){const t=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(let t=0;t<de;t++)e.removeEventListener(ue[t],this.listener,!1);t.aborted||(0,ce.iW)(t)||(n.duration=(0,S.t)()-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==t.status&&(t.status=0):E(this,e),n.cbTime=this.cbTime,r("xhr",[t,n,this.startTime,this.endTime,"xhr"],this,a.K7.ajax))}}function E(e,r){e.params.status=r.status;var n=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?G(e.response):"text"===r||""===r||void 0===r?G(e.responseText):void 0}(r,e.lastSize);if(n&&(e.metrics.rxSize=n),e.sameOrigin&&r.getAllResponseHeaders().indexOf(he)>=0){var i=r.getResponseHeader(he);i&&((0,x.p)(O.rs,["Ajax/CrossApplicationTracing/Header/Seen"],void 0,a.K7.metrics,t),e.params.cat=i.split(", ").pop())}e.loadCaptureCalled=!0}t.on("new-xhr",i),t.on("open-xhr-start",o),t.on("open-xhr-end",s),t.on("send-xhr-start",c),t.on("xhr-cb-time",u),t.on("xhr-load-added",d),t.on("xhr-load-removed",l),t.on("xhr-resolved",f),t.on("addEventListener-end",h),t.on("removeEventListener-end",g),t.on("fn-end",v),t.on("fetch-before-start",b),t.on("fetch-start",y),t.on("fn-start",m),t.on("fetch-done",w)}(e,this.ee,this.handler,this.dt),this.importAggregator(e)}}function ge(e,t){var r=(0,ie.D)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}const me={},ve=["pushState","replaceState"];function be(e){const t=function(e){return(e||B.ee).get("history")}(e);return!p.RI||me[t.debugId]++||(me[t.debugId]=1,(0,W.YM)(t).inPlace(window.history,ve,"-")),t}var ye=i(3738);const{He:we,bD:Re,d3:xe,Kp:Ee,TZ:Ae,Lc:Te,uP:Se,Rz:Ne}=ye;class Oe extends b{static featureName=Ae;constructor(e,t=!0){super(e,Ae,t);if(!(0,m.V)(this.agentIdentifier))return void this.deregisterDrain();const r=this.ee;let n;be(r),this.eventsEE=(0,F.u)(r),this.eventsEE.on(Se,(function(e,t){this.bstStart=(0,S.t)()})),this.eventsEE.on(Te,(function(e,t){(0,x.p)("bst",[e[0],t,this.bstStart,(0,S.t)()],void 0,a.K7.sessionTrace,r)})),r.on(Ne+xe,(function(e){this.time=(0,S.t)(),this.startPath=location.pathname+location.hash})),r.on(Ne+Ee,(function(e){(0,x.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,a.K7.sessionTrace,r)}));try{n=new PerformanceObserver((e=>{const t=e.getEntries();(0,x.p)(we,[t],void 0,a.K7.sessionTrace,r)})),n.observe({type:Re,buffered:!0})}catch(e){}this.importAggregator(e,{resourceObserver:n})}}var _e=i(2614);class Ie extends b{static featureName=t.TZ;#i;#o;constructor(e,r=!0){let n;super(e,t.TZ,r),this.replayRunning=!1,this.#o=e;try{n=JSON.parse(localStorage.getItem("".concat(_e.H3,"_").concat(_e.uh)))}catch(e){}(0,g.SR)(e.agentIdentifier)&&this.ee.on(t.G4.RECORD,(()=>this.#a())),this.#s(n)?(this.#i=n?.sessionReplayMode,this.#c()):this.importAggregator(e),this.ee.on("err",(e=>{this.replayRunning&&(this.errorNoticed=!0,(0,x.p)(t.G4.ERROR_DURING_REPLAY,[e],void 0,this.featureName,this.ee))})),this.ee.on(t.G4.REPLAY_RUNNING,(e=>{this.replayRunning=e}))}#s(e){return e&&(e.sessionReplayMode===_e.g.FULL||e.sessionReplayMode===_e.g.ERROR)||(0,g.Aw)(this.agentIdentifier)}#u=!1;async#c(e){if(!this.#u){this.#u=!0;try{const{Recorder:t}=await Promise.all([i.e(478),i.e(249)]).then(i.bind(i,8589));this.recorder??=new t({mode:this.#i,agentIdentifier:this.agentIdentifier,trigger:e,ee:this.ee,agentRef:this.#o}),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording}catch(e){}this.importAggregator(this.#o,{recorder:this.recorder,errorNoticed:this.errorNoticed})}}#a(){this.featAggregate?this.featAggregate.mode!==_e.g.FULL&&this.featAggregate.initializeRecording(_e.g.FULL,!0):(this.#i=_e.g.FULL,this.#c(t.Qb.API),this.recorder&&this.recorder.parent.mode!==_e.g.FULL&&(this.recorder.parent.mode=_e.g.FULL,this.recorder.stopRecording(),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording))}}var Pe=i(3962);class je extends b{static featureName=Pe.TZ;constructor(e,t=!0){if(super(e,Pe.TZ,t),!p.RI||!(0,R.dV)().o.MO)return;const r=be(this.ee);Pe.tC.forEach((e=>{(0,A.sp)(e,(e=>{a(e)}),!0)}));const n=()=>(0,x.p)("newURL",[(0,S.t)(),""+window.location],void 0,this.featureName,this.ee);r.on("pushState-end",n),r.on("replaceState-end",n);try{this.removeOnAbort=new AbortController}catch(e){}(0,A.sp)("popstate",(e=>(0,x.p)("newURL",[e.timeStamp,""+window.location],void 0,this.featureName,this.ee)),!0,this.removeOnAbort?.signal);let i=!1;const o=new((0,R.dV)().o.MO)(((e,t)=>{i||(i=!0,requestAnimationFrame((()=>{(0,x.p)("newDom",[(0,S.t)()],void 0,this.featureName,this.ee),i=!1})))})),a=(0,v.s)((e=>{(0,x.p)("newUIEvent",[e],void 0,this.featureName,this.ee),o.observe(document.body,{attributes:!0,childList:!0,subtree:!0,characterData:!0})}),100,{leading:!0});this.abortHandler=function(){this.removeOnAbort?.abort(),o.disconnect(),this.abortHandler=void 0},this.importAggregator(e,{domObserver:o})}}var Ce=i(7378);const ke={},Le=["appendChild","insertBefore","replaceChild"];function He(e){const t=function(e){return(e||B.ee).get("jsonp")}(e);if(!p.RI||ke[t.debugId])return t;ke[t.debugId]=!0;var r=(0,W.YM)(t),n=/[?&](?:callback|cb)=([^&#]+)/,i=/(.*)\.([^.]+)/,o=/^(\w+)(\.|$)(.*)$/;function a(e,t){if(!e)return t;const r=e.match(o),n=r[1];return a(r[3],t[n])}return r.inPlace(Node.prototype,Le,"dom-"),t.on("dom-start",(function(e){!function(e){if(!e||"string"!=typeof e.nodeName||"script"!==e.nodeName.toLowerCase())return;if("function"!=typeof e.addEventListener)return;var o=(s=e.src,c=s.match(n),c?c[1]:null);var s,c;if(!o)return;var u=function(e){var t=e.match(i);if(t&&t.length>=3)return{key:t[2],parent:a(t[1],window)};return{key:e,parent:window}}(o);if("function"!=typeof u.parent[u.key])return;var d={};function l(){t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,A.jT)(!1)),e.removeEventListener("error",f,(0,A.jT)(!1))}function f(){t.emit("jsonp-error",[],d),t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,A.jT)(!1)),e.removeEventListener("error",f,(0,A.jT)(!1))}r.inPlace(u.parent,[u.key],"cb-",d),e.addEventListener("load",l,(0,A.jT)(!1)),e.addEventListener("error",f,(0,A.jT)(!1)),t.emit("new-jsonp",[e.src],d)}(e[0])})),t}const Me={};function De(e){const t=function(e){return(e||B.ee).get("promise")}(e);if(Me[t.debugId])return t;Me[t.debugId]=!0;var r=t.context,n=(0,W.YM)(t),i=p.gm.Promise;return i&&function(){function e(r){var o=t.context(),a=n(r,"executor-",o,null,!1);const s=Reflect.construct(i,[a],e);return t.context(s).getCtx=function(){return o},s}p.gm.Promise=e,Object.defineProperty(e,"name",{value:"Promise"}),e.toString=function(){return i.toString()},Object.setPrototypeOf(e,i),["all","race"].forEach((function(r){const n=i[r];e[r]=function(e){let i=!1;[...e||[]].forEach((e=>{this.resolve(e).then(a("all"===r),a(!1))}));const o=n.apply(this,arguments);return o;function a(e){return function(){t.emit("propagate",[null,!i],o,!1,!1),i=i||!e}}}})),["resolve","reject"].forEach((function(r){const n=i[r];e[r]=function(e){const r=n.apply(this,arguments);return e!==r&&t.emit("propagate",[e,!0],r,!1,!1),r}})),e.prototype=i.prototype;const o=i.prototype.then;i.prototype.then=function(...e){var i=this,a=r(i);a.promise=i,e[0]=n(e[0],"cb-",a,null,!1),e[1]=n(e[1],"cb-",a,null,!1);const s=o.apply(this,e);return a.nextPromise=s,t.emit("propagate",[i,!0],s,!1,!1),s},i.prototype.then[W.Jt]=o,t.on("executor-start",(function(e){e[0]=n(e[0],"resolve-",this,null,!1),e[1]=n(e[1],"resolve-",this,null,!1)})),t.on("executor-err",(function(e,t,r){e[1](r)})),t.on("cb-end",(function(e,r,n){t.emit("propagate",[n,!0],this.nextPromise,!1,!1)})),t.on("propagate",(function(e,r,n){this.getCtx&&!r||(this.getCtx=function(){if(e instanceof Promise)var r=t.context(e);return r&&r.getCtx?r.getCtx():this})}))}(),t}const Ke={},Ue="setTimeout",Ve="setInterval",Ge="clearTimeout",Fe="-start",Be=[Ue,"setImmediate",Ve,Ge,"clearImmediate"];function We(e){const t=function(e){return(e||B.ee).get("timer")}(e);if(Ke[t.debugId]++)return t;Ke[t.debugId]=1;var r=(0,W.YM)(t);return r.inPlace(p.gm,Be.slice(0,2),Ue+"-"),r.inPlace(p.gm,Be.slice(2,3),Ve+"-"),r.inPlace(p.gm,Be.slice(3),Ge+"-"),t.on(Ve+Fe,(function(e,t,n){e[0]=r(e[0],"fn-",null,n)})),t.on(Ue+Fe,(function(e,t,n){this.method=n,this.timerDuration=isNaN(e[1])?0:+e[1],e[0]=r(e[0],"fn-",this,n)})),t}const ze={};function qe(e){const t=function(e){return(e||B.ee).get("mutation")}(e);if(!p.RI||ze[t.debugId])return t;ze[t.debugId]=!0;var r=(0,W.YM)(t),n=p.gm.MutationObserver;return n&&(window.MutationObserver=function(e){return this instanceof n?new n(r(e,"fn-")):n.apply(this,arguments)},MutationObserver.prototype=n.prototype),t}const{TZ:Ze,d3:Ye,Kp:Je,$p:Xe,wW:$e,e5:Qe,tH:et,uP:tt,rw:rt,Lc:nt}=Ce;class it extends b{static featureName=Ze;constructor(e,t=!0){if(super(e,Ze,t),!p.RI)return;try{this.removeOnAbort=new AbortController}catch(e){}let r,n=0;const i=this.ee.get("tracer"),o=He(this.ee),a=De(this.ee),s=We(this.ee),c=Z(this.ee),u=this.ee.get("events"),d=ne(this.ee),l=be(this.ee),f=qe(this.ee);function h(e,t){l.emit("newURL",[""+window.location,t])}function g(){n++,r=window.location.hash,this[tt]=(0,S.t)()}function m(){n--,window.location.hash!==r&&h(0,!0);var e=(0,S.t)();this[Qe]=~~this[Qe]+e-this[tt],this[nt]=e}function v(e,t){e.on(t,(function(){this[t]=(0,S.t)()}))}this.ee.on(tt,g),a.on(rt,g),o.on(rt,g),this.ee.on(nt,m),a.on($e,m),o.on($e,m),this.ee.on("fn-err",((...t)=>{t[2]?.__newrelic?.[e.agentIdentifier]||(0,x.p)("function-err",[...t],void 0,this.featureName,this.ee)})),this.ee.buffer([tt,nt,"xhr-resolved"],this.featureName),u.buffer([tt],this.featureName),s.buffer(["setTimeout"+Je,"clearTimeout"+Ye,tt],this.featureName),c.buffer([tt,"new-xhr","send-xhr"+Ye],this.featureName),d.buffer([et+Ye,et+"-done",et+Xe+Ye,et+Xe+Je],this.featureName),l.buffer(["newURL"],this.featureName),f.buffer([tt],this.featureName),a.buffer(["propagate",rt,$e,"executor-err","resolve"+Ye],this.featureName),i.buffer([tt,"no-"+tt],this.featureName),o.buffer(["new-jsonp","cb-start","jsonp-error","jsonp-end"],this.featureName),v(d,et+Ye),v(d,et+"-done"),v(o,"new-jsonp"),v(o,"jsonp-end"),v(o,"cb-start"),l.on("pushState-end",h),l.on("replaceState-end",h),window.addEventListener("hashchange",h,(0,A.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("load",h,(0,A.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("popstate",(function(){h(0,n>1)}),(0,A.jT)(!0,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var ot=i(3333);class at extends b{static featureName=ot.TZ;constructor(e,t=!0){super(e,ot.TZ,t);const r=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.user_actions.enabled,e.init.performance.resources.enabled];if(p.RI&&(e.init.user_actions.enabled&&(ot.Zp.forEach((e=>(0,A.sp)(e,(e=>(0,x.p)("ua",[e],void 0,this.featureName,this.ee)),!0))),ot.qN.forEach((e=>{const t=(0,v.s)((e=>{(0,x.p)("ua",[e],void 0,this.featureName,this.ee)}),500,{leading:!0});(0,A.sp)(e,t)}))),e.init.performance.resources.enabled&&p.gm.PerformanceObserver?.supportedEntryTypes.includes("resource"))){new PerformanceObserver((e=>{e.getEntries().forEach((e=>{(0,x.p)("browserPerformance.resource",[e],void 0,this.featureName,this.ee)}))})).observe({type:"resource",buffered:!0})}r.some((e=>e))?this.importAggregator(e):this.deregisterDrain()}}var st=i(993),ct=i(3785),ut=i(9414);class dt extends b{static featureName=st.TZ;constructor(e,t=!0){super(e,st.TZ,t);const r=this.ee;(0,ut.J)(r,p.gm.console,"log",{level:"info"}),(0,ut.J)(r,p.gm.console,"error",{level:"error"}),(0,ut.J)(r,p.gm.console,"warn",{level:"warn"}),(0,ut.J)(r,p.gm.console,"info",{level:"info"}),(0,ut.J)(r,p.gm.console,"debug",{level:"debug"}),(0,ut.J)(r,p.gm.console,"trace",{level:"trace"}),this.ee.on("wrap-logger-end",(function([e]){const{level:t,customAttributes:n}=this;(0,ct.R)(r,e,n,t)})),this.importAggregator(e)}}new class extends o{constructor(t){super(),p.gm?(this.features={},(0,R.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(w),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=>e.featureName===a.K7.softNav)),(0,d.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}get api(){return this}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.P3[e.featureName]-a.P3[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.K7.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.K7.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.K7.softNav)return;const n=function(e){switch(e){case a.K7.ajax:return[a.K7.jserrors];case a.K7.sessionTrace:return[a.K7.ajax,a.K7.pageViewEvent];case a.K7.sessionReplay:return[a.K7.sessionTrace];case a.K7.pageViewTiming:return[a.K7.pageViewEvent];default:return[]}}(r.featureName).filter((e=>!(e in this.features)));n.length>0&&(0,e.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)}))}catch(t){(0,e.R)(22,t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,R.Zm)();delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[pe,w,N,Oe,Ie,_,M,at,dt,je,it],loaderType:"spa"})})()})();</script> <!-- Moved to preprocess_page function <script src="//fast.fonts.net/jsapi/75f9de55-eaef-40a8-9a7b-e1b375756402.js"></script> <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css" rel="stylesheet" /> <link href='http://fonts.googleapis.com/css?family=Amatic+SC:700' rel='stylesheet' /> <link href='http://fonts.googleapis.com/css?family=Life+Savers:400,700' rel='stylesheet' /> --> <link rel="stylesheet" href="https://www.hpl.ca/sites/default/files/css/css_xE-rWrJf-fncB6ztZfd2huxqgxu4WO-qwma6Xer30m4.css" media="all" /> <link rel="stylesheet" href="https://www.hpl.ca/sites/default/files/css/css__LeQxW73LSYscb1O__H6f-j_jdAzhZBaesGL19KEB6U.css" media="all" /> <link rel="stylesheet" href="https://www.hpl.ca/sites/default/files/css/css__wcZVYpJTylqLfEhLbFiOu_RRbNap8VcqCjYeYh-Lg4.css" media="all" /> <link rel="stylesheet" href="https://www.hpl.ca/sites/default/files/css/css_wG9W496BiKhZgUfsiVOvaZzEZM3MBCapjJEEIu8rkIE.css" media="all" /> <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css" media="all" /> <link rel="stylesheet" href="//fonts.googleapis.com/css?family=Amatic+SC:700" media="all" /> <link rel="stylesheet" href="//fonts.googleapis.com/css?family=Life+Savers:400,700" media="all" /> <link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:300" media="all" /> <link rel="stylesheet" href="https://www.hpl.ca/sites/default/files/css/css_E4VlyxyL3JMcT6dslWLGb0uQdoI2bh_Xj0N65V-bcWo.css" media="all" /> <!--[if IE 8]> <link rel="stylesheet" href="/sites/default/files/Primary/ie8.css?suiy3u" media="all" /> <![endif]--> <link rel="stylesheet" href="https://www.hpl.ca/sites/default/files/css/css_d8rSUio9JBmfGknb08fMg9Bi_0SBPZj5y54bsJJglDM.css" media="all" /> <link rel="stylesheet" href="https://www.hpl.ca/sites/default/files/css/css_ko5n3HmujIVve022VNXEHeu6BKBskUfN_R57aw8z6Zw.css" media="all" /> <!--[if lt IE 9]> <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> <![endif]--> <script src="//ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script> <script>window.jQuery || document.write("<script src='/sites/all/modules/jquery_update/replace/jquery/2.2/jquery.min.js'>\x3C/script>")</script> <script src="https://www.hpl.ca/sites/default/files/js/js_GOikDsJOX04Aww72M-XK1hkq4qiL_1XgGsRdkL0XlDo.js"></script> <script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.2/jquery-ui.min.js"></script> <script>window.jQuery.ui || document.write("<script src='/sites/all/modules/jquery_update/replace/ui/ui/minified/jquery-ui.min.js'>\x3C/script>")</script> <script src="https://www.hpl.ca/sites/default/files/js/js_NpQFy4NWHBHFtoJaFKk6AseR-P7p_c-mnqnAKAvjj5g.js"></script> <script>document.createElement( "picture" );</script> <script src="https://www.hpl.ca/sites/default/files/js/js_x0iEt40Qze1l_rfkQIhuTdzA36ePUZJWYbL5WLY95Go.js"></script> <script>(function(i,s,o,g,r,a,m){i["GoogleAnalyticsObject"]=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window,document,"script","https://www.hpl.ca/sites/default/files/googleanalytics/analytics.js?suiy3u","ga");ga("create", "UA-34022084-1", {"cookieDomain":".hpl.ca","siteSpeedSampleRate":100});ga("set", "anonymizeIp", true);ga("send", "pageview");</script> <script src="//fast.fonts.net/jsapi/75f9de55-eaef-40a8-9a7b-e1b375756402.js"></script> <script src="https://www.hpl.ca/sites/default/files/js/js_rfx-GYsBGIfG74FTET3sGdV6a8KXHvzfKpuKLf7fxOw.js"></script> <script src="https://www.hpl.ca/sites/default/files/js/js_m2GEq2uQBSbbzETLYNCDZQ6ZqI2c-FkZ15QI2b4eFDk.js"></script> <script>jQuery.extend(Drupal.settings, {"basePath":"\/","pathPrefix":"","setHasJsCookie":0,"ajaxPageState":{"theme":"hpl_primary","theme_token":"5Ws1lbGMqRP_aEMH6lK9nERZNJ2FCvu_LqdKPDU7dUA","jquery_version":"2.2","jquery_version_token":"4n2QTeRwge44DAl8WREgLnsClLUpofRx7s2Whm6sGZw","js":{"sites\/all\/modules\/picture\/picturefill2\/picturefill.min.js":1,"sites\/all\/modules\/picture\/picture.min.js":1,"\/\/ajax.googleapis.com\/ajax\/libs\/jquery\/2.2.4\/jquery.min.js":1,"0":1,"misc\/jquery-extend-3.4.0.js":1,"misc\/jquery-html-prefilter-3.5.0-backport.js":1,"misc\/jquery.once.js":1,"misc\/drupal.js":1,"sites\/all\/modules\/jquery_update\/js\/jquery_browser.js":1,"\/\/ajax.googleapis.com\/ajax\/libs\/jqueryui\/1.10.2\/jquery-ui.min.js":1,"1":1,"sites\/all\/modules\/jquery_update\/replace\/ui\/external\/jquery.cookie.js":1,"sites\/all\/modules\/jquery_update\/replace\/jquery.form\/4\/jquery.form.min.js":1,"misc\/ajax.js":1,"sites\/all\/modules\/jquery_update\/js\/jquery_update.js":1,"2":1,"sites\/all\/modules\/lightbox2\/js\/lightbox.js":1,"misc\/progress.js":1,"sites\/all\/modules\/ctools\/js\/modal.js":1,"sites\/all\/modules\/modal_forms\/js\/modal_forms_popup.js":1,"sites\/all\/modules\/custom\/communicoData\/communicoData.js":1,"sites\/all\/modules\/google_analytics\/googleanalytics.js":1,"3":1,"\/\/fast.fonts.net\/jsapi\/75f9de55-eaef-40a8-9a7b-e1b375756402.js":1,"sites\/all\/modules\/field_group\/field_group.js":1,"sites\/all\/libraries\/superfish\/jquery.hoverIntent.minified.js":1,"sites\/all\/libraries\/superfish\/sftouchscreen.js":1,"sites\/all\/libraries\/superfish\/supposition.js":1,"sites\/all\/libraries\/superfish\/superfish.js":1,"sites\/all\/modules\/superfish\/superfish.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/nav-primary.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/nav-static.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/search.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/quick-links.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/slideshow-height-hack.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/catalogue-slider.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/hours.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/events.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/sidebar.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/alerts.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/service-alerts.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/high-contrast.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/vendor\/html5shiv\/dist\/html5shiv.min.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/online-resources.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/program-events.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/bookmobile.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/vendor\/jquery.rwdImageMaps.min.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/vendor\/rrssb.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/jquery.actual.js":1,"sites\/all\/themes\/hpl_primary\/scripts\/jquery.countdown.min.js":1},"css":{"modules\/system\/system.base.css":1,"modules\/system\/system.menus.css":1,"modules\/system\/system.messages.css":1,"modules\/system\/system.theme.css":1,"misc\/ui\/jquery.ui.core.css":1,"misc\/ui\/jquery.ui.theme.css":1,"sites\/all\/modules\/date\/date_repeat_field\/date_repeat_field.css":1,"modules\/field\/theme\/field.css":1,"modules\/node\/node.css":1,"sites\/all\/modules\/office_hours\/office_hours.css":1,"sites\/all\/modules\/picture\/picture_wysiwyg.css":1,"modules\/user\/user.css":1,"sites\/all\/modules\/custom\/calendar\/css\/calendar_multiday.css":1,"sites\/all\/modules\/views\/css\/views.css":1,"sites\/all\/modules\/ctools\/css\/ctools.css":1,"sites\/all\/modules\/lightbox2\/css\/lightbox.css":1,"sites\/all\/modules\/ctools\/css\/modal.css":1,"sites\/all\/modules\/modal_forms\/css\/modal_forms_popup.css":1,"\/\/maxcdn.bootstrapcdn.com\/font-awesome\/4.1.0\/css\/font-awesome.min.css":1,"\/\/fonts.googleapis.com\/css?family=Amatic+SC:700":1,"\/\/fonts.googleapis.com\/css?family=Life+Savers:400,700":1,"\/\/fonts.googleapis.com\/css?family=Roboto:300":1,"sites\/all\/modules\/date\/date_api\/date.css":1,"\/sites\/default\/files\/Primary\/ie8.css":1,"sites\/all\/libraries\/superfish\/css\/superfish.css":1,"sites\/all\/libraries\/superfish\/css\/superfish-vertical.css":1,"sites\/all\/themes\/hpl_primary\/stylesheets\/vendor\/normalize.css":1,"sites\/all\/themes\/hpl_primary\/stylesheets\/vendor\/rrssb.css":1,"sites\/all\/themes\/hpl_primary\/stylesheets\/style.css":1}},"jcarousel":{"ajaxPath":"\/jcarousel\/ajax\/views"},"lightbox2":{"rtl":0,"file_path":"\/(\\w\\w\/)public:\/","default_image":"\/sites\/all\/modules\/lightbox2\/images\/brokenimage.jpg","border_size":10,"font_color":"000","box_color":"fff","top_position":"","overlay_opacity":"0.8","overlay_color":"000","disable_close_click":1,"resize_sequence":0,"resize_speed":400,"fade_in_speed":400,"slide_down_speed":600,"use_alt_layout":0,"disable_resize":0,"disable_zoom":1,"force_show_nav":1,"show_caption":1,"loop_items":0,"node_link_text":"View Image Details","node_link_target":0,"image_count":"Image !current of !total","video_count":"Video !current of !total","page_count":"Page !current of !total","lite_press_x_close":"press \u003Ca href=\u0022#\u0022 onclick=\u0022hideLightbox(); return FALSE;\u0022\u003E\u003Ckbd\u003Ex\u003C\/kbd\u003E\u003C\/a\u003E to close","download_link_text":"","enable_login":false,"enable_contact":false,"keys_close":"c x 27","keys_previous":"p 37","keys_next":"n 39","keys_zoom":"z","keys_play_pause":"32","display_image_size":"original","image_node_sizes":"()","trigger_lightbox_classes":"","trigger_lightbox_group_classes":"","trigger_slideshow_classes":"","trigger_lightframe_classes":"","trigger_lightframe_group_classes":"","custom_class_handler":0,"custom_trigger_classes":"","disable_for_gallery_lists":1,"disable_for_acidfree_gallery_lists":true,"enable_acidfree_videos":true,"slideshow_interval":7000,"slideshow_automatic_start":1,"slideshow_automatic_exit":1,"show_play_pause":1,"pause_on_next_click":0,"pause_on_previous_click":1,"loop_slides":0,"iframe_width":640,"iframe_height":480,"iframe_border":1,"enable_video":0,"useragent":"Mozilla\/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/87.0.4280.141 Safari\/537.36"},"CToolsModal":{"loadingText":"Loading...","closeText":"Close Window","closeImage":"\u003Cimg src=\u0022https:\/\/www.hpl.ca\/sites\/all\/modules\/ctools\/images\/icon-close-window.png\u0022 alt=\u0022Close window\u0022 title=\u0022Close window\u0022 \/\u003E","throbber":"\u003Cimg src=\u0022https:\/\/www.hpl.ca\/sites\/all\/modules\/ctools\/images\/throbber.gif\u0022 alt=\u0022Loading\u0022 title=\u0022Loading...\u0022 \/\u003E"},"modal-popup-small":{"modalSize":{"type":"fixed","width":300,"height":300},"modalOptions":{"opacity":0.45,"background":"#000"},"animation":"fadeIn","modalTheme":"ModalFormsPopup","throbber":"\u003Cimg src=\u0022https:\/\/www.hpl.ca\/sites\/all\/modules\/modal_forms\/images\/loading_animation.gif\u0022 alt=\u0022Loading...\u0022 title=\u0022Loading\u0022 \/\u003E","closeText":"Close"},"modal-popup-medium":{"modalSize":{"type":"fixed","width":550,"height":450},"modalOptions":{"opacity":0.45,"background":"#000"},"animation":"fadeIn","modalTheme":"ModalFormsPopup","throbber":"\u003Cimg src=\u0022https:\/\/www.hpl.ca\/sites\/all\/modules\/modal_forms\/images\/loading_animation.gif\u0022 alt=\u0022Loading...\u0022 title=\u0022Loading\u0022 \/\u003E","closeText":"Close"},"modal-popup-large":{"modalSize":{"type":"scale","width":0.8,"height":0.8},"modalOptions":{"opacity":0.45,"background":"#000"},"animation":"fadeIn","modalTheme":"ModalFormsPopup","throbber":"\u003Cimg src=\u0022https:\/\/www.hpl.ca\/sites\/all\/modules\/modal_forms\/images\/loading_animation.gif\u0022 alt=\u0022Loading...\u0022 title=\u0022Loading\u0022 \/\u003E","closeText":"Close"},"better_exposed_filters":{"views":{"alerts_and_notifications":{"displays":{"block_1":{"filters":[]}}},"notices":{"displays":{"block_2":{"filters":[]}}}}},"field_group":{"hidden":"full"},"picture":{"mappings":[["900 Height","900_height"],["100 Height","100_height"],["527 Height","527_height"],["335 Height","335_height"],["294 Height","294_height"],["109 Height","109_height"],["172 Height","172_height"],["77 Height","77_height"],["189 Height","189_height"],["876x405","876x405"],["Feature - Medium","feature_medium"],["Featured","featured"],["HPLOR - Icon","hplor_icon"],["HPLOR - Sm. Feature","hplor_sm_feature"],["Feature - Small","hplor_feature"],["HPLOR - Tiles","hplor_tiles"],["Square Headshot - 318px","square_headshot_318px"],["Not Set","not_set"]],"label":"Image size (required)"},"googleanalytics":{"trackOutbound":1,"trackMailto":1,"trackDownload":1,"trackDownloadExtensions":"7z|aac|arc|arj|asf|asx|avi|bin|csv|doc(x|m)?|dot(x|m)?|exe|flv|gif|gz|gzip|hqx|jar|jpe?g|js|mp(2|3|4|e?g)|mov(ie)?|msi|msp|pdf|phps|png|ppt(x|m)?|pot(x|m)?|pps(x|m)?|ppam|sld(x|m)?|thmx|qtm?|ra(m|r)?|sea|sit|tar|tgz|torrent|txt|wav|wma|wmv|wpd|xls(x|m|b)?|xlt(x|m)|xlam|xml|z|zip","trackDomainMode":1},"superfish":{"1":{"id":"1","sf":{"pathLevels":"3","animation":{"opacity":"show"},"speed":0,"autoArrows":false,"dropShadows":false},"plugins":{"touchscreen":{"behaviour":"0","disableHover":true,"mode":"useragent_predefined"},"supposition":true}}}});</script> <!-- Hotjar Tracking Code for www.hpl.ca --> <!--<script> (function(h, o, t, j, a, r) { h.hj = h.hj || function() { (h.hj.q = h.hj.q || []).push(arguments) }; h._hjSettings = { hjid: 708877, hjsv: 6 }; a = o.getElementsByTagName('head')[0]; r = o.createElement('script'); r.async = 1; r.src = t + h._hjSettings.hjid + j + h._hjSettings.hjsv; a.appendChild(r); })(window, document, 'https://static.hotjar.com/c/hotjar-', '.js?sv='); </script> removed Sept 24 2024 --> </head> <body class="html not-front not-logged-in no-sidebars page-events page-events-finance page-events-finance-all" > <div id="skip-link"> <a href="#main-content" class="element-invisible element-focusable">Skip to main content</a> </div> <!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-PL2D929" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <!--[if lte IE 7]> <p>Your version of Internet Explorer is not capable of handling the updated styling that modern browsers now support. Please update your browser to Internet Explorer 8 or please consider switching to a self updating browser such as <a href="http://www.google.com/chrome/">Google Chrome</a> or <a href="https://www.mozilla.org/en-US/firefox/new/">Mozilla Firefox</a>. If this is not an option, then you can always browse our website from one of our public computers, available at any of our branch locations.<br /><br />Thank you,<br />from the Hamilton Public Library.</p> <![endif]--> <div class='top-bar'> <div class='container'> <div id="block-menu-menu-tabs" class="block block-menu"> <div class="content"> <ul class="menu"><li class="first leaf"><a href="https://www.hpl.ca" class="primary active">HPL</a></li> <li class="leaf"><a href="https://kids.hpl.ca" class="kids">Kids</a></li> <li class="leaf"><a href="https://teens.hpl.ca" class="teens">Teens</a></li> <li class="last leaf"><a href="https://lha.hpl.ca" class="local-history">Local History</a></li> </ul> </div> </div> <div id="block-menu-menu-static-navigation" class="block block-menu" > <div class="content"> <ul class="menu"><li class="first leaf"><a href="https://hpl.bibliocommons.com" class="responsive-hidden-link">Catalogue</a></li> <li class="leaf"><a href="https://hpl.overdrive.com/">eBooks</a></li> <li class="leaf"><a href="https://events.hpl.ca/events?r=thismonth" id="menu-upcoming-events" class="responsive-hidden-link">Events</a></li> <li class="leaf"><a href="/hours">Hours</a></li> <li class="leaf"><a href="/forms/contact-us">Contact Us</a></li> <li class="last leaf"><a href="/donate-now" class="responsive-hidden-link">Donate</a></li> </ul> </div> </div> <div id="static-nav"> </div> <div id="my-hpl-container"> <button id="my-hpl" class="my-hpl-primary"><span id="my-hpl-text">My HPL</span></button> <div id="my-hpl-links"> <div class="my-hpl-link-container"><a class='my-hpl-link' href="https://hpl.bibliocommons.com/user/login" title="Go to the Catalogue">Log in to Catalogue <span class="my-hpl-icon"><img src='/sites/all/themes/hpl_primary/images/myhpl_catalogue.png' alt="Log in to Catalogue Icon" /></span></a></div> <div class="my-hpl-link-container"><a class='my-hpl-link' href="/online-registration" title="Go get a Library Card Online">Get a Library Card Online <span class="my-hpl-icon"><img src='/sites/all/themes/hpl_primary/images/myhpl_card.png' alt="Get a Library Card" /></span></a></div> <div class="my-hpl-link-container"><a class='my-hpl-link' href="/update-your-info" title="Update Your Information">Update Your Info <span class="my-hpl-icon"><img src='/sites/all/themes/hpl_primary/images/myhpl_account.png' style="width:54px; height:50px;" alt="Update Your Information" /></span></a></div> <div class="my-hpl-link-container"><a class='my-hpl-link' href="https://events.hpl.ca/myevents" title="Go to My Programs and Events">My Programs & Events <span class="my-hpl-icon"><img src='/sites/all/themes/hpl_primary/images/myhpl_events.png' alt="My Programs and Events Icon" /></span></a></div> <div class="my-hpl-link-container"><a class='my-hpl-link' href="https://print.hpl.ca/" title="Print on the Go">Print on the Go <span class="my-hpl-icon"><img src='/sites/all/themes/hpl_primary/images/myhpl_printgo.png' alt="Print on the Go Icon" /></span></a></div> </div> </div> </div> </div> <div class='banner-bar row'></div> <div class='main-content container'> <div class='right-content column width9 push3'> <div class="region region-content"> <div id="block-alert-tabs-alert-tab" class="block block-alert-tabs"> <div class="content"> <div class='alerts-holder'></div> </div> </div> <div id="block-views-0f1fa0eeba7b10650b6c2d878c2701dd" class="block block-views"> <div class="content"> <div class="view view-alerts-and-notifications view-id-alerts_and_notifications view-display-id-block_1 view-dom-id-0489047db6d3cfa254559d562475ea10"> <div class="view-empty"> <!--smart_paging_filter--><!--smart_paging_autop_filter-->There is nothing to display at this time </div> </div> </div> </div> <div id="block-alert-tabs-notice-tab" class="block block-alert-tabs"> <div class="content"> <div class='notices-holder'><a href='#'> <div class='notification-tab notices'> Notices <div class='count'>5</div> <span class='bang fa fa-exclamation-circle'></span> </div> </a></div> </div> </div> <div id="block-views-notices-block-2" class="block block-views"> <div class="content"> <div class="view view-notices view-id-notices view-display-id-block_2 view-dom-id-bfce112f6f09f7dcc4028c3655fe39dd"> <div class="view-content"> <div> <div id="node-441040" class="node node-notice contextual-links-region clearfix"> <h1 >Microfilm Machine - Central Library</h1> <div class="content"> <div class="field field-name-field-all-full-text field-type-text-long field-label-hidden"><div class="field-items"><div class="field-item even"><p>The digital microfilm machines at Central Library are not working. A single analog machine is available, but it doesn't print. We aim to have the digital devices repaired as soon as possible. We apologize for the inconvenience.</p> </div></div></div><div class="field field-name-field-affected-branch field-type-node-reference field-label-inline clearfix"><div class="field-label">Affected Branch: </div><div class="field-items"><div class="field-item even"><a href="/central">Central Library</a></div></div></div><div class="field field-name-field-publish-date field-type-datestamp field-label-inline clearfix"><div class="field-label">Publish Date: </div><div class="field-items"><div class="field-item even"><span class="date-display-single">Thursday, April 10, 2025 - 3:30pm</span></div></div></div> </div> <div class="clearfix"></div> </div> </div> <div> <div id="node-440950" class="node node-notice contextual-links-region clearfix"> <h1 >Barton Branch - Roof Repair</h1> <div class="content"> <div class="field field-name-field-all-full-text field-type-text-long field-label-hidden"><div class="field-items"><div class="field-item even"><p>Due to the ongoing roof repair project, noise and parking disruptions will continue until April 19. Thank you for your patience.</p> </div></div></div><div class="field field-name-field-affected-branch field-type-node-reference field-label-inline clearfix"><div class="field-label">Affected Branch: </div><div class="field-items"><div class="field-item even"><a href="/barton">Barton Branch</a></div></div></div><div class="field field-name-field-nearest-branches field-type-node-reference field-label-inline clearfix"><div class="field-label">Nearest Branches: </div><div class="field-items"><div class="field-item even"><a href="/central">Central Library</a></div></div></div><div class="field field-name-field-publish-date field-type-datestamp field-label-inline clearfix"><div class="field-label">Publish Date: </div><div class="field-items"><div class="field-item even"><span class="date-display-single">Tuesday, April 8, 2025 - 3:45pm</span></div></div></div> </div> <div class="clearfix"></div> </div> </div> <div> <div id="node-440795" class="node node-notice contextual-links-region clearfix"> <h1 >All Branches - Easter Closure</h1> <div class="content"> <div class="field field-name-field-all-full-text field-type-text-long field-label-hidden"><div class="field-items"><div class="field-item even"><p>All HPL Branches are closed on Good Friday, April 18, Easter Sunday, April 20, and Easter Monday, April 21. Bookmobile service is off the road. Extended Hours and Study Hall services are not available. Regular service hours resume Saturday, April 19, and Tuesday, April 22.</p> </div></div></div><div class="field field-name-field-publish-date field-type-datestamp field-label-inline clearfix"><div class="field-label">Publish Date: </div><div class="field-items"><div class="field-item even"><span class="date-display-single">Monday, April 7, 2025 - 9:00am</span></div></div></div> </div> <div class="clearfix"></div> </div> </div> <div> <div id="node-426900" class="node node-notice contextual-links-region clearfix"> <h1 >Phishing Scheme</h1> <div class="content"> <div class="field field-name-field-all-full-text field-type-text-long field-label-hidden"><div class="field-items"><div class="field-item even"><p>Please be aware of online phishing attempts impersonating Hamilton Public Library and Library Staff. HPL does not solicit paid freelance opportunities through social media or other messaging applications. HPL does not request personal or banking information through social media or require financial compensation when reviewing job applications. Please report phishing schemes to <a href="mailto:communications@hpl.ca">communications@hpl.ca</a>. If you think you are a victim of fraud, please call the <a href="https://www.antifraudcentre-centreantifraude.ca/index-eng.htm">Canadian Anti-Fraud Centre</a> at 1-888-495-8501.</p> </div></div></div><div class="field field-name-field-publish-date field-type-datestamp field-label-inline clearfix"><div class="field-label">Publish Date: </div><div class="field-items"><div class="field-item even"><span class="date-display-single">Thursday, April 3, 2025 - 10:30am</span></div></div></div> </div> <div class="clearfix"></div> </div> </div> <div> <div id="node-440742" class="node node-notice contextual-links-region clearfix"> <h1 >Sherwood Branch - Basement Renovation</h1> <div class="content"> <div class="field field-name-field-all-full-text field-type-text-long field-label-hidden"><div class="field-items"><div class="field-item even"><p>The first phase of renovations will begin at the Sherwood Branch from April 10 to May 2. During this time, noise disruptions may occur throughout the branch due to a basement renovation. Parking, access to the building, and collections will not be affected. Thank you for your patience. <a href="http://www.hpl.ca/sherwood">www.hpl.ca/sherwood</a></p> </div></div></div><div class="field field-name-field-affected-branch field-type-node-reference field-label-inline clearfix"><div class="field-label">Affected Branch: </div><div class="field-items"><div class="field-item even"><a href="/sherwood">Sherwood Branch</a></div></div></div><div class="field field-name-field-publish-date field-type-datestamp field-label-inline clearfix"><div class="field-label">Publish Date: </div><div class="field-items"><div class="field-item even"><span class="date-display-single">Thursday, April 3, 2025 - 10:15am</span></div></div></div> </div> <div class="clearfix"></div> </div> </div> </div> </div> </div> </div> <div id="block-block-126" class="block block-block"> <div class="content"> <!--smart_paging_autop_filter--><div class="search-fields" id="search-field-hpl"><form action="/search" method="get"><div class="form-type-textfield form-item-search-block-form"><label class="element-hidden" for="search-keywords">Search</label> <input aria-label="search" class="form-text" id="search-keywords" maxlength="128" name="search_api_views_fulltext" placeholder="Search" size="15" title="Enter the terms you wish to search for." type="text" value=""></div><div class="form-wrapper" id="search-action"><input class="form-submit" id="submit-search" name="search" type="submit" value="Search"></div></form></div> </div> </div> <div id="block-system-main" class="block block-system content-wrapper" > <div class="content"> <div id="communicoEvents"> <div class='breadcrumb'> <a href="/">Home</a> > <a href="/node/24496">Programs</a> > Finance </div> <h1>Finance Events</h1> <div class="node-event vevent cancelled-event"> <div class="container event-row"> <div class="node-event-5w width4 column push0"> <div class="event-flag"> <div class="event-flag-icon"> <i class="fa fa-calendar-o"></i> </div> <div class="event-flag-triangle"></div> </div> <div class="event-details"> <div class="node-event-date"> <time class="dtstart" datetime="2025-04-10 09:30:00"> Thu Apr 10, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/concession-branch">Concession Branch</a></li> <li class="addr"> <span class="street-address">565 Concession Street</span> <span class="locality sr-only">Hamilton</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="43.240986"></span> </span> <span class="longitude"> <span class="value-title" title="-79.851379"></span> </span> </li> <li> <time datetime="2025-04-10 09:30:00"> 9:30 AM </time> </li> </ul> </div> </div> </div> <div class="node-event-details width8 column push4"> <div class="node-event-header"> <div class='cancelled-title'>CANCELED</div> <div class="node-event-title"> <h2><a href="https://events.hpl.ca/event/13074527" title="Free Tax Preparation Service - CLINIC FULL at Concession Branch on 2025-04-10 09:30:00">Free Tax Preparation Service - CLINIC FULL</a></h2> </div> <div class="node-event-subtitle"> <h3>Social Planning and Research Council of Hamilton </h3> </div> </div> <div class="node-event-description"> Trained volunteers help file your taxes at select branches. </div> </div> </div> </div> <div class="clearfix"></div> <div class="node-event vevent"> <div class="container event-row"> <div class="node-event-5w width4 column push0"> <div class="event-flag"> <div class="event-flag-icon"> <i class="fa fa-calendar-o"></i> </div> <div class="event-flag-triangle"></div> </div> <div class="event-details"> <div class="node-event-date"> <time class="dtstart" datetime="2025-04-12 10:00:00"> Sat Apr 12, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/barton-branch">Barton Branch</a></li> <li class="addr"> <span class="street-address">571 Barton Street East</span> <span class="locality sr-only">Hamilton</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="43.257949"></span> </span> <span class="longitude"> <span class="value-title" title="-79.841529"></span> </span> </li> <li> <time datetime="2025-04-12 10:00:00"> 10:00 AM </time> </li> </ul> </div> </div> </div> <div class="node-event-details width8 column push4"> <div class="node-event-header"> <div class="node-event-title"> <h2><a href="https://events.hpl.ca/event/12870370" title="Free Tax Preparation Service Drop-In at Barton Branch on 2025-04-12 10:00:00">Free Tax Preparation Service Drop-In</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch</h3> </div> </div> <div class="node-event-description"> Trained volunteers help file your taxes at select branches. </div> </div> </div> </div> <div class="clearfix"></div> <div class="node-event vevent cancelled-event"> <div class="container event-row"> <div class="node-event-5w width4 column push0"> <div class="event-flag"> <div class="event-flag-icon"> <i class="fa fa-calendar-o"></i> </div> <div class="event-flag-triangle"></div> </div> <div class="event-details"> <div class="node-event-date"> <time class="dtstart" datetime="2025-04-14 09:30:00"> Mon Apr 14, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/barton-branch">Barton Branch</a></li> <li class="addr"> <span class="street-address">571 Barton Street East</span> <span class="locality sr-only">Hamilton</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="43.257949"></span> </span> <span class="longitude"> <span class="value-title" title="-79.841529"></span> </span> </li> <li> <time datetime="2025-04-14 09:30:00"> 9:30 AM </time> </li> </ul> </div> </div> </div> <div class="node-event-details width8 column push4"> <div class="node-event-header"> <div class='cancelled-title'>CANCELED</div> <div class="node-event-title"> <h2><a href="https://events.hpl.ca/event/12877409" title="Free Tax Preparation Service - CLINIC FULL at Barton Branch on 2025-04-14 09:30:00">Free Tax Preparation Service - CLINIC FULL</a></h2> </div> <div class="node-event-subtitle"> <h3>Social Planning and Research Council of Hamilton </h3> </div> </div> <div class="node-event-description"> Trained volunteers help file your taxes at select branches. </div> </div> </div> </div> <div class="clearfix"></div> <div class="node-event vevent"> <div class="container event-row"> <div class="node-event-5w width4 column push0"> <div class="event-flag"> <div class="event-flag-icon"> <i class="fa fa-calendar-o"></i> </div> <div class="event-flag-triangle"></div> </div> <div class="event-details"> <div class="node-event-date"> <time class="dtstart" datetime="2025-04-14 09:30:00"> Mon Apr 14, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/barton-branch">Barton Branch</a></li> <li class="addr"> <span class="street-address">571 Barton Street East</span> <span class="locality sr-only">Hamilton</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="43.257949"></span> </span> <span class="longitude"> <span class="value-title" title="-79.841529"></span> </span> </li> <li> <time datetime="2025-04-14 09:30:00"> 9:30 AM </time> </li> </ul> </div> </div> </div> <div class="node-event-details width8 column push4"> <div class="node-event-header"> <div class="node-event-title"> <h2><a href="https://events.hpl.ca/event/13074480" title="Free Tax Preparation Service - CLINIC FULL at Barton Branch on 2025-04-14 09:30:00">Free Tax Preparation Service - CLINIC FULL</a></h2> </div> <div class="node-event-subtitle"> <h3>Social Planning and Research Council of Hamilton </h3> </div> </div> <div class="node-event-description"> Trained volunteers help file your taxes at select branches. </div> </div> </div> </div> <div class="clearfix"></div> <div class="node-event vevent"> <div class="container event-row"> <div class="node-event-5w width4 column push0"> <div class="event-flag"> <div class="event-flag-icon"> <i class="fa fa-calendar-o"></i> </div> <div class="event-flag-triangle"></div> </div> <div class="event-details"> <div class="node-event-date"> <time class="dtstart" datetime="2025-04-22 09:30:00"> Tue Apr 22, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/red-hill-branch">Red Hill Branch</a></li> <li class="addr"> <span class="street-address">695 Queenston Road</span> <span class="locality sr-only">Hamilton</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="43.229725"></span> </span> <span class="longitude"> <span class="value-title" title="-79.772417"></span> </span> </li> <li> <time datetime="2025-04-22 09:30:00"> 9:30 AM </time> </li> </ul> </div> </div> </div> <div class="node-event-details width8 column push4"> <div class="node-event-header"> <div class="node-event-title"> <h2><a href="https://events.hpl.ca/event/12787963" title="Free Tax Preparation Service - CLINIC FULL at Red Hill Branch on 2025-04-22 09:30:00">Free Tax Preparation Service - CLINIC FULL</a></h2> </div> <div class="node-event-subtitle"> <h3>Social Planning and Research Council of Hamilton </h3> </div> </div> <div class="node-event-description"> Trained volunteers help file your taxes at select branches. </div> </div> </div> </div> <div class="clearfix"></div> <div class="node-event vevent cancelled-event"> <div class="container event-row"> <div class="node-event-5w width4 column push0"> <div class="event-flag"> <div class="event-flag-icon"> <i class="fa fa-calendar-o"></i> </div> <div class="event-flag-triangle"></div> </div> <div class="event-details"> <div class="node-event-date"> <time class="dtstart" datetime="2025-04-24 09:30:00"> Thu Apr 24, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/central-library">Central Library</a></li> <li class="addr"> <span class="street-address">55 York Boulevard</span> <span class="locality sr-only">Hamilton</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="43.259097"></span> </span> <span class="longitude"> <span class="value-title" title="-79.870670"></span> </span> </li> <li> <time datetime="2025-04-24 09:30:00"> 9:30 AM </time> </li> </ul> </div> </div> </div> <div class="node-event-details width8 column push4"> <div class="node-event-header"> <div class='cancelled-title'>CANCELED</div> <div class="node-event-title"> <h2><a href="https://events.hpl.ca/event/12881154" title="Free Tax Preparation Service - CLINIC FULL at Central Library on 2025-04-24 09:30:00">Free Tax Preparation Service - CLINIC FULL</a></h2> </div> <div class="node-event-subtitle"> <h3>Social Planning and Research Council of Hamilton </h3> </div> </div> <div class="node-event-description"> Trained volunteers help file your taxes at select branches. </div> </div> </div> </div> <div class="clearfix"></div> <div class="node-event vevent"> <div class="container event-row"> <div class="node-event-5w width4 column push0"> <div class="event-flag"> <div class="event-flag-icon"> <i class="fa fa-calendar-o"></i> </div> <div class="event-flag-triangle"></div> </div> <div class="event-details"> <div class="node-event-date"> <time class="dtstart" datetime="2025-04-24 09:30:00"> Thu Apr 24, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/central-library">Central Library</a></li> <li class="addr"> <span class="street-address">55 York Boulevard</span> <span class="locality sr-only">Hamilton</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="43.259097"></span> </span> <span class="longitude"> <span class="value-title" title="-79.870670"></span> </span> </li> <li> <time datetime="2025-04-24 09:30:00"> 9:30 AM </time> </li> </ul> </div> </div> </div> <div class="node-event-details width8 column push4"> <div class="node-event-header"> <div class="node-event-title"> <h2><a href="https://events.hpl.ca/event/13074404" title="Free Tax Preparation Service - CLINIC FULL at Central Library on 2025-04-24 09:30:00">Free Tax Preparation Service - CLINIC FULL</a></h2> </div> <div class="node-event-subtitle"> <h3>Social Planning and Research Council of Hamilton </h3> </div> </div> <div class="node-event-description"> Trained volunteers help file your taxes at select branches. </div> </div> </div> </div> <div class="clearfix"></div> <div class="node-event vevent"> <div class="container event-row"> <div class="node-event-5w width4 column push0"> <div class="event-flag"> <div class="event-flag-icon"> <i class="fa fa-calendar-o"></i> </div> <div class="event-flag-triangle"></div> </div> <div class="event-details"> <div class="node-event-date"> <time class="dtstart" datetime="2025-04-26 10:00:00"> Sat Apr 26, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/central-library">Central Library</a></li> <li class="addr"> <span class="street-address">55 York Boulevard</span> <span class="locality sr-only">Hamilton</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="43.259097"></span> </span> <span class="longitude"> <span class="value-title" title="-79.870670"></span> </span> </li> <li> <time datetime="2025-04-26 10:00:00"> 10:00 AM </time> </li> </ul> </div> </div> </div> <div class="node-event-details width8 column push4"> <div class="node-event-header"> <div class="node-event-title"> <h2><a href="https://events.hpl.ca/event/12877370" title="Free Tax Preparation Service Drop-In at Central Library on 2025-04-26 10:00:00">Free Tax Preparation Service Drop-In</a></h2> </div> <div class="node-event-subtitle"> <h3>In Branch</h3> </div> </div> <div class="node-event-description"> Trained volunteers help file your taxes at select branches. </div> </div> </div> </div> <div class="clearfix"></div> <div class="node-event vevent cancelled-event"> <div class="container event-row"> <div class="node-event-5w width4 column push0"> <div class="event-flag"> <div class="event-flag-icon"> <i class="fa fa-calendar-o"></i> </div> <div class="event-flag-triangle"></div> </div> <div class="event-details"> <div class="node-event-date"> <time class="dtstart" datetime="2025-04-29 09:30:00"> Tue Apr 29, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/red-hill-branch">Red Hill Branch</a></li> <li class="addr"> <span class="street-address">695 Queenston Road</span> <span class="locality sr-only">Hamilton</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="43.229725"></span> </span> <span class="longitude"> <span class="value-title" title="-79.772417"></span> </span> </li> <li> <time datetime="2025-04-29 09:30:00"> 9:30 AM </time> </li> </ul> </div> </div> </div> <div class="node-event-details width8 column push4"> <div class="node-event-header"> <div class='cancelled-title'>CANCELED</div> <div class="node-event-title"> <h2><a href="https://events.hpl.ca/event/12787964" title="Free Tax Preparation Service - CLINIC FULL at Red Hill Branch on 2025-04-29 09:30:00">Free Tax Preparation Service - CLINIC FULL</a></h2> </div> <div class="node-event-subtitle"> <h3>Social Planning and Research Council of Hamilton </h3> </div> </div> <div class="node-event-description"> Trained volunteers help file your taxes at select branches. </div> </div> </div> </div> <div class="clearfix"></div> <div class="node-event vevent"> <div class="container event-row"> <div class="node-event-5w width4 column push0"> <div class="event-flag"> <div class="event-flag-icon"> <i class="fa fa-calendar-o"></i> </div> <div class="event-flag-triangle"></div> </div> <div class="event-details"> <div class="node-event-date"> <time class="dtstart" datetime="2025-04-29 09:30:00"> Tue Apr 29, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/red-hill-branch">Red Hill Branch</a></li> <li class="addr"> <span class="street-address">695 Queenston Road</span> <span class="locality sr-only">Hamilton</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="43.229725"></span> </span> <span class="longitude"> <span class="value-title" title="-79.772417"></span> </span> </li> <li> <time datetime="2025-04-29 09:30:00"> 9:30 AM </time> </li> </ul> </div> </div> </div> <div class="node-event-details width8 column push4"> <div class="node-event-header"> <div class="node-event-title"> <h2><a href="https://events.hpl.ca/event/13074240" title="Free Tax Preparation Service - CLINIC FULL at Red Hill Branch on 2025-04-29 09:30:00">Free Tax Preparation Service - CLINIC FULL</a></h2> </div> <div class="node-event-subtitle"> <h3>Social Planning and Research Council of Hamilton </h3> </div> </div> <div class="node-event-description"> Trained volunteers help file your taxes at select branches. </div> </div> </div> </div> <div class="clearfix"></div> <div class="node-event vevent"> <div class="container event-row"> <div class="node-event-5w width4 column push0"> <div class="event-flag"> <div class="event-flag-icon"> <i class="fa fa-calendar-o"></i> </div> <div class="event-flag-triangle"></div> </div> <div class="event-details"> <div class="node-event-date"> <time class="dtstart" datetime="2025-04-29 14:00:00"> Tue Apr 29, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/terryberry-branch">Terryberry Branch</a></li> <li class="addr"> <span class="street-address">100 Mohawk Road West</span> <span class="locality sr-only">Hamilton</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="43.230094"></span> </span> <span class="longitude"> <span class="value-title" title="-79.886472"></span> </span> </li> <li> <time datetime="2025-04-29 14:00:00"> 2:00 PM </time> </li> </ul> </div> </div> </div> <div class="node-event-details width8 column push4"> <div class="node-event-header"> <div class="node-event-title"> <h2><a href="https://events.hpl.ca/event/12887036" title="How to Save Money on Groceries at Terryberry Branch on 2025-04-29 14:00:00">How to Save Money on Groceries</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Learn how to save money on groceries using apps, reward programs and online resources. </div> </div> </div> </div> <div class="clearfix"></div> <div class="node-event vevent"> <div class="container event-row"> <div class="node-event-5w width4 column push0"> <div class="event-flag"> <div class="event-flag-icon"> <i class="fa fa-calendar-o"></i> </div> <div class="event-flag-triangle"></div> </div> <div class="event-details"> <div class="node-event-date"> <time class="dtstart" datetime="2025-05-03 10:00:00"> Sat May 03, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/central-library">Central Library</a></li> <li class="addr"> <span class="street-address">55 York Boulevard</span> <span class="locality sr-only">Hamilton</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="43.259097"></span> </span> <span class="longitude"> <span class="value-title" title="-79.870670"></span> </span> </li> <li> <time datetime="2025-05-03 10:00:00"> 10:00 AM </time> </li> </ul> </div> </div> </div> <div class="node-event-details width8 column push4"> <div class="node-event-header"> <div class="node-event-title"> <h2><a href="https://events.hpl.ca/event/12877371" title="Free Tax Preparation Service Drop-In at Central Library on 2025-05-03 10:00:00">Free Tax Preparation Service Drop-In</a></h2> </div> <div class="node-event-subtitle"> <h3>In Branch</h3> </div> </div> <div class="node-event-description"> Trained volunteers help file your taxes at select branches. </div> </div> </div> </div> <div class="clearfix"></div> <div class="node-event vevent"> <div class="container event-row"> <div class="node-event-5w width4 column push0"> <div class="event-flag"> <div class="event-flag-icon"> <i class="fa fa-calendar-o"></i> </div> <div class="event-flag-triangle"></div> </div> <div class="event-details"> <div class="node-event-date"> <time class="dtstart" datetime="2025-05-09 10:30:00"> Fri May 09, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/red-hill-branch">Red Hill Branch</a></li> <li class="addr"> <span class="street-address">695 Queenston Road</span> <span class="locality sr-only">Hamilton</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="43.229725"></span> </span> <span class="longitude"> <span class="value-title" title="-79.772417"></span> </span> </li> <li> <time datetime="2025-05-09 10:30:00"> 10:30 AM </time> </li> </ul> </div> </div> </div> <div class="node-event-details width8 column push4"> <div class="node-event-header"> <div class="node-event-title"> <h2><a href="https://events.hpl.ca/event/13236184" title="Fraud Protection at Red Hill Branch on 2025-05-09 10:30:00">Fraud Protection</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Learn how to protect yourself against fraud. </div> </div> </div> </div> <div class="clearfix"></div> <div class="node-event vevent"> <div class="container event-row"> <div class="node-event-5w width4 column push0"> <div class="event-flag"> <div class="event-flag-icon"> <i class="fa fa-calendar-o"></i> </div> <div class="event-flag-triangle"></div> </div> <div class="event-details"> <div class="node-event-date"> <time class="dtstart" datetime="2025-05-21 16:30:00"> Wed May 21, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/saltfleet-branch">Saltfleet Branch</a></li> <li class="addr"> <span class="street-address">131 Grays Road</span> <span class="locality sr-only">Stoney Creek</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="0.000000"></span> </span> <span class="longitude"> <span class="value-title" title="0.000000"></span> </span> </li> <li> <time datetime="2025-05-21 16:30:00"> 4:30 PM </time> </li> </ul> </div> </div> </div> <div class="node-event-details width8 column push4"> <div class="node-event-header"> <div class="node-event-title"> <h2><a href="https://events.hpl.ca/event/13223912" title="Fund your Education: Scholarships, Grants, Loans at Saltfleet Branch on 2025-05-21 16:30:00">Fund your Education: Scholarships, Grants, Loans</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Explore the multiple pathways available to help fund your education. Learn the differences between grants, scholarships and loans. </div> </div> </div> </div> <div class="clearfix"></div> <div id="more-events"> <div class="item-list"> <ul class="pager pager-load-more"> <li class="pager-next first last"> <button id="communicoAjaxTrigger" onclick="communicoData_ajax_load('more-events','/events/ajax/finance/all/1')">Load more</button> </li> </ul> </div> </div> </div> </div> </div> </div> </div> <div class='left-content column width3 push0'> <div class='sidebar-left'> <div id="block-block-41" class="block block-block"> <div class="content"> <!--smart_paging_filter--><!--smart_paging_autop_filter--><div id="block-blockify-blockify-logo"><div class="content"><a href="/" id="logo" rel="home" title="Return to Hamilton Public Library home page"><img alt="Hamilton Public Library logo" src="https://www.hpl.ca/sites/all/themes/hpl_primary/images/logo_header.png" /></a></div></div><p> </p> </div> </div> <div id="block-superfish-1" class="block block-superfish primary-navigation-holder" > <img alt="Mobile Menu Button" src='/sites/all/themes/hpl_primary/images/hamburger-white.png' class='primary-navigation-toggle primary-navigation-hamburger' /> <div class='primary-navigation'> <img alt="Menu style background image" src='/sites/all/themes/hpl_teens/images/teens_primary_nav_top.png' class='primary-navigation-teens top' /> <img alt="Menu style background image" src='/sites/all/themes/hpl_teens/images/teens_primary_nav_bottom.png' class='primary-navigation-teens bottom' /> <img alt="Menu style background image" src='/sites/all/themes/hpl_primary/images/x-white.png' class='primary-navigation-toggle primary-navigation-x' /> <div class="content"> <ul id="superfish-1" class="menu sf-menu sf-menu-primary-navigation sf-vertical sf-style-none sf-total-items-9 sf-parent-items-9 sf-single-items-0"><li id="menu-28215-1" class="first odd sf-item-1 sf-depth-1 sf-total-children-8 sf-parent-children-4 sf-single-children-4 menuparent"><a href="/about-hpl" class="sf-depth-1 nav-primary-link menuparent">About HPL</a><ul><li id="menu-29496-1" class="first odd sf-item-1 sf-depth-2 sf-no-children"><a href="/articles/mission-statement-and-values" class="sf-depth-2 nav-primary-link">Mission and Values</a></li><li id="menu-30266-1" class="middle even sf-item-2 sf-depth-2 sf-no-children"><a href="/articles/strategic-priorities-2023-2026" class="sf-depth-2 nav-primary-link">Strategic Plan</a></li><li id="menu-30236-1" class="middle odd sf-item-3 sf-depth-2 sf-total-children-2 sf-parent-children-0 sf-single-children-2 menuparent"><a href="/library-board" class="sf-depth-2 nav-primary-link menuparent">Library Board</a><ul><li id="menu-30241-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/board-meetings" class="sf-depth-3 nav-primary-link">Meetings, Agendas, Minutes</a></li><li id="menu-36966-1" class="last even sf-item-2 sf-depth-3 sf-no-children"><a href="/articles/hamilton-public-library-board" class="sf-depth-3 nav-primary-link">About the Board</a></li></ul></li><li id="menu-30231-1" class="middle even sf-item-4 sf-depth-2 sf-no-children"><a href="/articles/management" class="sf-depth-2 nav-primary-link">Management</a></li><li id="menu-30291-1" class="middle odd sf-item-5 sf-depth-2 sf-total-children-3 sf-parent-children-0 sf-single-children-3 menuparent"><a href="/policies-and-reports" class="sf-depth-2 nav-primary-link menuparent">Policies and Reports</a><ul><li id="menu-30296-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/articles/hamilton-public-library-policies" class="sf-depth-3 nav-primary-link">Policies</a></li><li id="menu-30301-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/articles/key-reports" class="sf-depth-3 nav-primary-link">Key Reports</a></li><li id="menu-78916-1" class="last odd sf-item-3 sf-depth-3 sf-no-children"><a href="https://www.hpl.ca/node/373591" class="sf-depth-3 nav-primary-link">Annual Report</a></li></ul></li><li id="menu-40926-1" class="middle even sf-item-6 sf-depth-2 sf-total-children-4 sf-parent-children-1 sf-single-children-3 menuparent"><a href="/building-updates" class="sf-depth-2 nav-primary-link menuparent">Branch Improvements</a><ul><li id="menu-130241-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="https://www.hpl.ca/articles/discovery-centre" class="sf-depth-3 nav-primary-link">Discovery Centre</a></li><li id="menu-81591-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/articles/valley-park-branch-improvement-project" class="sf-depth-3 nav-primary-link">Valley Park Branch Improvement Project</a></li><li id="menu-130116-1" class="middle odd sf-item-3 sf-depth-3 sf-no-children"><a href="https://www.hpl.ca/articles/mount-hope-branch-renovation-project" class="sf-depth-3 nav-primary-link">Mount Hope Branch Renovation Project</a></li><li id="menu-133743-1" class="last even sf-item-4 sf-depth-3 sf-total-children-5 sf-parent-children-0 sf-single-children-5 menuparent"><a href="/previous-projects" class="sf-depth-3 nav-primary-link menuparent">Previous Projects</a><ul><li id="menu-129531-1" class="first odd sf-item-1 sf-depth-4 sf-no-children"><a href="https://www.hpl.ca/articles/barton-branch-renovation-update" class="sf-depth-4 nav-primary-link">Barton Branch Renovation Update</a></li><li id="menu-100731-1" class="middle even sf-item-2 sf-depth-4 sf-no-children"><a href="/news/carlisle-branch-construction-updates" class="sf-depth-4 nav-primary-link">Carlisle Branch Construction Updates</a></li><li id="menu-131538-1" class="middle odd sf-item-3 sf-depth-4 sf-no-children"><a href="https://www.hpl.ca/articles/kenilworth-branch-renovation" class="sf-depth-4 nav-primary-link">Kenilworth Branch Improvements</a></li><li id="menu-114501-1" class="middle even sf-item-4 sf-depth-4 sf-no-children"><a href="/public-art" class="sf-depth-4 nav-primary-link">Valley Park Branch Public Art Mural</a></li><li id="menu-130226-1" class="last odd sf-item-5 sf-depth-4 sf-no-children"><a href="https://www.hpl.ca/articles/waterdown-computer-lab-update" class="sf-depth-4 nav-primary-link">Waterdown Branch Makerspace Update</a></li></ul></li></ul></li><li id="menu-28216-1" class="middle odd sf-item-7 sf-depth-2 sf-total-children-3 sf-parent-children-0 sf-single-children-3 menuparent"><a href="/news" class="sf-depth-2 nav-primary-link menuparent">News</a><ul><li id="menu-45141-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/articles/subscribe-our-enewsletters" class="sf-depth-3 nav-primary-link">eNewsletter</a></li><li id="menu-37816-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/news-archive" class="sf-depth-3 nav-primary-link">News Archive</a></li><li id="menu-39836-1" class="last odd sf-item-3 sf-depth-3 sf-no-children"><a href="/media-releases" class="sf-depth-3 nav-primary-link">Media Releases</a></li></ul></li><li id="menu-29506-1" class="last even sf-item-8 sf-depth-2 sf-no-children"><a href="/jobs" class="sf-depth-2 nav-primary-link">Jobs at HPL</a></li></ul></li><li id="menu-28217-1" class="middle even sf-item-2 sf-depth-1 sf-total-children-12 sf-parent-children-0 sf-single-children-12 menuparent"><a href="/node/15871" class="sf-depth-1 nav-primary-link menuparent">Using the Library</a><ul><li id="menu-30316-1" class="first odd sf-item-1 sf-depth-2 sf-no-children"><a href="/librarycard" class="sf-depth-2 nav-primary-link">Get a Library Card</a></li><li id="menu-36576-1" class="middle even sf-item-2 sf-depth-2 sf-no-children"><a href="/articles/my-hpl" class="sf-depth-2 nav-primary-link">My HPL</a></li><li id="menu-29618-1" class="middle odd sf-item-3 sf-depth-2 sf-no-children"><a href="/app" class="sf-depth-2 nav-primary-link">Get the HPL App</a></li><li id="menu-39456-1" class="middle even sf-item-4 sf-depth-2 sf-no-children"><a href="/articles/library-collections-0" class="sf-depth-2 nav-primary-link">Discover Books and More</a></li><li id="menu-30206-1" class="middle odd sf-item-5 sf-depth-2 sf-no-children"><a href="/articles/borrowing" class="sf-depth-2 nav-primary-link">Borrowing</a></li><li id="menu-36581-1" class="middle even sf-item-6 sf-depth-2 sf-no-children"><a href="/articles/service-fees" class="sf-depth-2 nav-primary-link">Service Fees</a></li><li id="menu-114571-1" class="middle odd sf-item-7 sf-depth-2 sf-no-children"><a href="/articles/working-us" class="sf-depth-2 nav-primary-link">Working With Us</a></li><li id="menu-36586-1" class="middle even sf-item-8 sf-depth-2 sf-no-children"><a href="/articles/requesting-items" class="sf-depth-2 nav-primary-link">Requesting Items</a></li><li id="menu-40426-1" class="middle odd sf-item-9 sf-depth-2 sf-no-children"><a href="/articles/member-and-service-commitment" class="sf-depth-2 nav-primary-link">Member and Service Commitment</a></li><li id="menu-133258-1" class="middle even sf-item-10 sf-depth-2 sf-no-children"><a href="https://www.hpl.ca/forms/commercial-photography-and-filming" class="sf-depth-2 nav-primary-link">Commercial Photography and Filming</a></li><li id="menu-124191-1" class="middle odd sf-item-11 sf-depth-2 sf-no-children"><a href="/news/frequently-asked-questions" class="sf-depth-2 nav-primary-link">Frequently Asked Questions</a></li><li id="menu-133874-1" class="last even sf-item-12 sf-depth-2 sf-no-children"><a href="/articles/lendporium" class="sf-depth-2 nav-primary-link">Lendporium</a></li></ul></li><li id="menu-114496-1" class="middle odd sf-item-3 sf-depth-1 sf-total-children-7 sf-parent-children-3 sf-single-children-4 menuparent"><a href="/hours" class="sf-depth-1 nav-primary-link menuparent">Visiting the Library</a><ul><li id="menu-30216-1" class="first odd sf-item-1 sf-depth-2 sf-no-children"><a href="/hours" class="sf-depth-2 nav-primary-link">Branches</a></li><li id="menu-30221-1" class="middle even sf-item-2 sf-depth-2 sf-total-children-2 sf-parent-children-0 sf-single-children-2 menuparent"><a href="/bookmobile" class="sf-depth-2 nav-primary-link menuparent">Bookmobile</a><ul><li id="menu-84476-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/bookmobile" class="sf-depth-3 nav-primary-link">Bookmobile Service</a></li><li id="menu-84491-1" class="last even sf-item-2 sf-depth-3 sf-no-children"><a href="/articles/history-bookmobile" class="sf-depth-3 nav-primary-link">History of the Bookmobile</a></li></ul></li><li id="menu-41146-1" class="middle odd sf-item-3 sf-depth-2 sf-total-children-1 sf-parent-children-0 sf-single-children-1 menuparent"><a href="/articles/library-visit-program" class="sf-depth-2 nav-primary-link menuparent">Library Visits</a><ul><li id="menu-114096-1" class="firstandlast odd sf-item-1 sf-depth-3 sf-no-children"><a href="/forms/photo-and-video-release-form" class="sf-depth-3 nav-primary-link">Photo and Video Release Form</a></li></ul></li><li id="menu-130989-1" class="middle even sf-item-4 sf-depth-2 sf-no-children"><a href="https://www.hpl.ca/Researcher-in-Residence" class="sf-depth-2 nav-primary-link">Researcher in Residence</a></li><li id="menu-40446-1" class="middle odd sf-item-5 sf-depth-2 sf-total-children-4 sf-parent-children-1 sf-single-children-3 menuparent"><a href="/circuit" class="sf-depth-2 nav-primary-link menuparent">The Circuit 4.0</a><ul><li id="menu-40466-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="https://www.hpl.ca/node/108926/" class="sf-depth-3 nav-primary-link">About the Circuit 4.0</a></li><li id="menu-40511-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/makerspaces" class="sf-depth-3 nav-primary-link">Central Makerspace</a></li><li id="menu-41621-1" class="middle odd sf-item-3 sf-depth-3 sf-total-children-5 sf-parent-children-0 sf-single-children-5 menuparent"><a href="/circuit-40-partners" class="sf-depth-3 nav-primary-link menuparent">Circuit 4.0 Partners</a><ul><li id="menu-41626-1" class="first odd sf-item-1 sf-depth-4 sf-no-children"><a href="https://www.mohawkcollege.ca/city-school-by-mohawk.html" target="_blank" class="sf-depth-4 nav-primary-link">City School by Mohawk</a></li><li id="menu-41636-1" class="middle even sf-item-2 sf-depth-4 sf-no-children"><a href="http://www.iechamilton.ca/" target="_blank" class="sf-depth-4 nav-primary-link">Industry Education Council</a></li><li id="menu-41631-1" class="middle odd sf-item-3 sf-depth-4 sf-no-children"><a href="https://www.mcyu.ca/" target="_blank" class="sf-depth-4 nav-primary-link">McMaster Child and Youth University</a></li><li id="menu-40491-1" class="middle even sf-item-4 sf-depth-4 sf-no-children"><a href="https://abea.on.ca/" target="_blank" class="sf-depth-4 nav-primary-link">Adult Basic Education Association (ABEA)</a></li><li id="menu-41616-1" class="last odd sf-item-5 sf-depth-4 sf-no-children"><a href="/articles/xperience-annex" class="sf-depth-4 nav-primary-link">Xperience Annex</a></li></ul></li><li id="menu-40501-1" class="last even sf-item-4 sf-depth-3 sf-no-children"><a href="https://events.hpl.ca/events?r=thismonth&t=Special+Events&term=Circuit" class="sf-depth-3 nav-primary-link">Circuit Special Events</a></li></ul></li><li id="menu-57106-1" class="middle even sf-item-6 sf-depth-2 sf-no-children"><a href="/articles/about-self-serve-access-service" class="sf-depth-2 nav-primary-link">Extended Access Service</a></li><li id="menu-129526-1" class="last odd sf-item-7 sf-depth-2 sf-no-children"><a href="/study-halls" class="sf-depth-2 nav-primary-link">After Hours Study Halls</a></li></ul></li><li id="menu-28218-1" class="active-trail middle even sf-item-4 sf-depth-1 sf-total-children-13 sf-parent-children-1 sf-single-children-12 menuparent"><a href="/node/24496" class="sf-depth-1 nav-primary-link menuparent">Programs</a><ul><li id="menu-29628-1" class="first odd sf-item-1 sf-depth-2 sf-no-children"><a href="https://events.hpl.ca/events?r=thismonth" class="sf-depth-2 nav-primary-link">Find Programs and Events</a></li><li id="menu-115376-1" class="middle even sf-item-2 sf-depth-2 sf-no-children"><a href="/e-news" class="sf-depth-2 nav-primary-link">Program Guide</a></li><li id="menu-36531-1" class="middle odd sf-item-3 sf-depth-2 sf-no-children"><a href="/events/arts-%26-culture/all" class="sf-depth-2 nav-primary-link">Arts and Culture</a></li><li id="menu-133706-1" class="middle even sf-item-4 sf-depth-2 sf-no-children"><a href="https://www.hpl.ca/events/digital-literacy/all" class="sf-depth-2 nav-primary-link">Digital Literacy</a></li><li id="menu-29648-1" class="active-trail middle odd sf-item-5 sf-depth-2 sf-no-children"><a href="/events/finance/all" class="sf-depth-2 nav-primary-link active">Finance</a></li><li id="menu-29645-1" class="middle even sf-item-6 sf-depth-2 sf-no-children"><a href="/events/games/all" class="sf-depth-2 nav-primary-link">Games</a></li><li id="menu-29644-1" class="middle odd sf-item-7 sf-depth-2 sf-no-children"><a href="/events/health-%26-wellness/all" class="sf-depth-2 nav-primary-link">Health and Wellness</a></li><li id="menu-133707-1" class="middle even sf-item-8 sf-depth-2 sf-no-children"><a href="https://www.hpl.ca/events/hobbies/all" class="sf-depth-2 nav-primary-link">Hobbies</a></li><li id="menu-133708-1" class="middle odd sf-item-9 sf-depth-2 sf-no-children"><a href="https://www.hpl.ca/events/language/all" class="sf-depth-2 nav-primary-link">Language</a></li><li id="menu-29633-1" class="middle even sf-item-10 sf-depth-2 sf-total-children-4 sf-parent-children-0 sf-single-children-4 menuparent"><a href="/literary-programs" class="sf-depth-2 nav-primary-link menuparent">Literary</a><ul><li id="menu-29636-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/events/literary/writing" class="sf-depth-3 nav-primary-link">Writing Workshops</a></li><li id="menu-132491-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="https://www.hpl.ca/articles/author-events" class="sf-depth-3 nav-primary-link">Author Series</a></li><li id="menu-132379-1" class="middle odd sf-item-3 sf-depth-3 sf-no-children"><a href="/Hamilton-Reads-2025" class="sf-depth-3 nav-primary-link">Hamilton Reads</a></li><li id="menu-132380-1" class="last even sf-item-4 sf-depth-3 sf-no-children"><a href="https://www.hpl.ca/writer-residence" class="sf-depth-3 nav-primary-link">Writer in Residence </a></li></ul></li><li id="menu-29638-1" class="middle odd sf-item-11 sf-depth-2 sf-no-children"><a href="/events/movies/all" class="sf-depth-2 nav-primary-link">Movies</a></li><li id="menu-29634-1" class="middle even sf-item-12 sf-depth-2 sf-no-children"><a href="/events/literary/book-club" class="sf-depth-2 nav-primary-link">Book Clubs</a></li><li id="menu-74601-1" class="last odd sf-item-13 sf-depth-2 sf-no-children"><a href="/forms/hpl-program-application-form" class="sf-depth-2 nav-primary-link">Program Application Form </a></li></ul></li><li id="menu-28219-1" class="middle odd sf-item-5 sf-depth-1 sf-total-children-13 sf-parent-children-3 sf-single-children-10 menuparent"><a href="/services-0" class="sf-depth-1 nav-primary-link menuparent">Services</a><ul><li id="menu-95891-1" class="first odd sf-item-1 sf-depth-2 sf-no-children"><a href="/grab-and-go" class="sf-depth-2 nav-primary-link">Grab and Go Bags</a></li><li id="menu-121261-1" class="middle even sf-item-2 sf-depth-2 sf-no-children"><a href="/which-book-next" class="sf-depth-2 nav-primary-link">Which Book Next?</a></li><li id="menu-104211-1" class="middle odd sf-item-3 sf-depth-2 sf-no-children"><a href="/articles/print-copy-and-scan" class="sf-depth-2 nav-primary-link">Print, Copy and Scan</a></li><li id="menu-130221-1" class="middle even sf-item-4 sf-depth-2 sf-no-children"><a href="https://www.hpl.ca/articles/health-and-wellness" class="sf-depth-2 nav-primary-link">Health and Wellness</a></li><li id="menu-29666-1" class="middle odd sf-item-5 sf-depth-2 sf-no-children"><a href="/articles/public-computers-and-wifi" class="sf-depth-2 nav-primary-link">Computers and WiFi</a></li><li id="menu-121266-1" class="middle even sf-item-6 sf-depth-2 sf-total-children-3 sf-parent-children-1 sf-single-children-2 menuparent"><a href="/career-centre" class="sf-depth-2 nav-primary-link menuparent">Career Centre</a><ul><li id="menu-121271-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/hpl-online/job-search-resources" class="sf-depth-3 nav-primary-link">Job Search Resources</a></li><li id="menu-119856-1" class="middle even sf-item-2 sf-depth-3 sf-total-children-6 sf-parent-children-1 sf-single-children-5 menuparent"><a href="/career-and-skills-development" class="sf-depth-3 nav-primary-link menuparent">Career and Skills Development</a><ul><li id="menu-119871-1" class="first odd sf-item-1 sf-depth-4 sf-no-children"><a href="https://www.digitalliteracyassessment.org/locations/central" class="sf-depth-4 nav-primary-link">NorthStar Digital Literacy</a></li><li id="menu-119866-1" class="middle even sf-item-2 sf-depth-4 sf-no-children"><a href="https://www.mohawkcollege.ca/programs/get-prepared-for-college/city-school-by-mohawk" class="sf-depth-4 nav-primary-link">Mohawk City School</a></li><li id="menu-120796-1" class="middle odd sf-item-3 sf-depth-4 sf-no-children"><a href="https://libbyapp.com/library/hpl/extras/the-great-courses/card" class="sf-depth-4 nav-primary-link">Great Courses on Libby</a></li><li id="menu-120791-1" class="middle even sf-item-4 sf-depth-4 sf-no-children"><a href="https://www.linkedin.com/learning-login/go/account/70820388" class="sf-depth-4 nav-primary-link">LinkedIn Learning</a></li><li id="menu-120801-1" class="middle odd sf-item-5 sf-depth-4 sf-no-children"><a href="https://connect.mangolanguages.com/hpl/start" class="sf-depth-4 nav-primary-link">Mango Languages</a></li><li id="menu-32331-1" class="last even sf-item-6 sf-depth-4 sf-total-children-5 sf-parent-children-0 sf-single-children-5 menuparent"><a href="/tech-programs" class="sf-depth-4 nav-primary-link menuparent">Tech</a><ul><li id="menu-36521-1" class="first odd sf-item-1 sf-depth-5 sf-no-children"><a href="/events/makerspace/all" class="sf-depth-5 nav-primary-link">Makerspace Programs</a></li><li id="menu-29632-1" class="middle even sf-item-2 sf-depth-5 sf-no-children"><a href="/events/digital-literacy/all" class="sf-depth-5 nav-primary-link">All Tech Programs</a></li><li id="menu-40391-1" class="middle odd sf-item-3 sf-depth-5 sf-no-children"><a href="/career-and-skills-development" class="sf-depth-5 nav-primary-link">Other Tech Learning</a></li><li id="menu-29631-1" class="middle even sf-item-4 sf-depth-5 sf-no-children"><a href="/forms/book-appointment" class="sf-depth-5 nav-primary-link">Book an Appointment</a></li><li id="menu-29630-1" class="last odd sf-item-5 sf-depth-5 sf-no-children"><a href="/events/digital-literacy/computer-classes" class="sf-depth-5 nav-primary-link">Computer Classes</a></li></ul></li></ul></li><li id="menu-121276-1" class="last odd sf-item-3 sf-depth-3 sf-no-children"><a href="/jobs" class="sf-depth-3 nav-primary-link">Jobs at HPL</a></li></ul></li><li id="menu-29654-1" class="middle odd sf-item-7 sf-depth-2 sf-total-children-4 sf-parent-children-0 sf-single-children-4 menuparent"><a href="/nlc" class="sf-depth-2 nav-primary-link menuparent">Newcomers</a><ul><li id="menu-29655-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/nlc" class="sf-depth-3 nav-primary-link">Learn English</a></li><li id="menu-38846-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/events/newcomers/all" class="sf-depth-3 nav-primary-link">Come to a Program</a></li><li id="menu-29658-1" class="middle odd sf-item-3 sf-depth-3 sf-no-children"><a href="/volunteer/newcomer-learning-centre-english-tutoring" class="sf-depth-3 nav-primary-link">Volunteer as an English Tutor</a></li><li id="menu-100716-1" class="last even sf-item-4 sf-depth-3 sf-no-children"><a href="/forms/newcomer-learning-centre-request-english-tutoring" class="sf-depth-3 nav-primary-link">Request English Tutoring</a></li></ul></li><li id="menu-40411-1" class="middle even sf-item-8 sf-depth-2 sf-no-children"><a href="/forms/book-appointment" class="sf-depth-2 nav-primary-link">Book an Appointment</a></li><li id="menu-29659-1" class="middle odd sf-item-9 sf-depth-2 sf-no-children"><a href="/Home-Library-Service" class="sf-depth-2 nav-primary-link">Home Library Service</a></li><li id="menu-29660-1" class="middle even sf-item-10 sf-depth-2 sf-total-children-5 sf-parent-children-0 sf-single-children-5 menuparent"><a href="/access" class="sf-depth-2 nav-primary-link menuparent">Accessibility Services</a><ul><li id="menu-37016-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/articles/accessibility-tools" class="sf-depth-3 nav-primary-link">Tools</a></li><li id="menu-36996-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/articles/accessible-collections" class="sf-depth-3 nav-primary-link">Accessible Collections</a></li><li id="menu-37001-1" class="middle odd sf-item-3 sf-depth-3 sf-no-children"><a href="/articles/aoda-accessibility-ontarians-disabilities" class="sf-depth-3 nav-primary-link">HPL AODA</a></li><li id="menu-29662-1" class="middle even sf-item-4 sf-depth-3 sf-no-children"><a href="/articles/cela-centre-equitable-library-access" class="sf-depth-3 nav-primary-link">Centre for Equitable Library Access</a></li><li id="menu-48376-1" class="last odd sf-item-5 sf-depth-3 sf-no-children"><a href="/articles/magnuscards" class="sf-depth-3 nav-primary-link">MagnusCards</a></li></ul></li><li id="menu-37456-1" class="middle odd sf-item-11 sf-depth-2 sf-no-children"><a href="/articles/library-spaces-and-room-rentals" class="sf-depth-2 nav-primary-link">Meeting Rooms</a></li><li id="menu-29665-1" class="middle even sf-item-12 sf-depth-2 sf-no-children"><a href="/articles/library-spaces-and-room-rentals" class="sf-depth-2 nav-primary-link">Piano Room</a></li><li id="menu-41611-1" class="last odd sf-item-13 sf-depth-2 sf-no-children"><a href="/articles/xperience-annex" class="sf-depth-2 nav-primary-link">Xperience Annex</a></li></ul></li><li id="menu-28220-1" class="middle even sf-item-6 sf-depth-1 sf-total-children-11 sf-parent-children-0 sf-single-children-11 menuparent"><a href="/articles/read-watch-listen" class="sf-depth-1 nav-primary-link menuparent">HPL Online</a><ul><li id="menu-118841-1" class="first odd sf-item-1 sf-depth-2 sf-no-children"><a href="/app" class="sf-depth-2 nav-primary-link">HPL App</a></li><li id="menu-81991-1" class="middle even sf-item-2 sf-depth-2 sf-no-children"><a href="/hpl-online/ebooks-and-eaudio" class="sf-depth-2 nav-primary-link">eBooks and eAudio</a></li><li id="menu-81996-1" class="middle odd sf-item-3 sf-depth-2 sf-no-children"><a href="/hpl-online/magazines-and-newspapers" class="sf-depth-2 nav-primary-link">Magazines and Newspapers</a></li><li id="menu-82001-1" class="middle even sf-item-4 sf-depth-2 sf-no-children"><a href="/hpl-online/movies-and-music" class="sf-depth-2 nav-primary-link">Movies and Music</a></li><li id="menu-29673-1" class="middle odd sf-item-5 sf-depth-2 sf-no-children"><a href="/learning-at-hpl" class="sf-depth-2 nav-primary-link">Educational Resources</a></li><li id="menu-82011-1" class="middle even sf-item-6 sf-depth-2 sf-no-children"><a href="/hpl-online/research-and-reference" class="sf-depth-2 nav-primary-link">Research and Reference</a></li><li id="menu-82016-1" class="middle odd sf-item-7 sf-depth-2 sf-no-children"><a href="/hpl-online/health-and-wellness" class="sf-depth-2 nav-primary-link">Health and Wellness</a></li><li id="menu-82021-1" class="middle even sf-item-8 sf-depth-2 sf-no-children"><a href="/hpl-online/business" class="sf-depth-2 nav-primary-link">Business</a></li><li id="menu-82026-1" class="middle odd sf-item-9 sf-depth-2 sf-no-children"><a href="/hpl-online/job-search-resources" class="sf-depth-2 nav-primary-link">Job Search Resources</a></li><li id="menu-82006-1" class="middle even sf-item-10 sf-depth-2 sf-no-children"><a href="/hpl-online/do-it-yourself" class="sf-depth-2 nav-primary-link">Do It Yourself</a></li><li id="menu-33976-1" class="last odd sf-item-11 sf-depth-2 sf-no-children"><a href="/at-home" class="sf-depth-2 nav-primary-link">Fun Stuff to do Online at Home</a></li></ul></li><li id="menu-29649-1" class="middle odd sf-item-7 sf-depth-1 sf-total-children-9 sf-parent-children-0 sf-single-children-9 menuparent"><a href="/makerspaces" class="sf-depth-1 nav-primary-link menuparent">Makerspaces</a><ul><li id="menu-29650-1" class="first odd sf-item-1 sf-depth-2 sf-no-children"><a href="/makerspaces" class="sf-depth-2 nav-primary-link">Discover the Makerspace</a></li><li id="menu-37831-1" class="middle even sf-item-2 sf-depth-2 sf-no-children"><a href="/node/add/dml-bookings" class="sf-depth-2 nav-primary-link">Request a Booking (in person)</a></li><li id="menu-41111-1" class="middle odd sf-item-3 sf-depth-2 sf-no-children"><a href="/dml-booking-calendar?field_equipment_nid=179781" class="sf-depth-2 nav-primary-link">Booking Calendar</a></li><li id="menu-39481-1" class="middle even sf-item-4 sf-depth-2 sf-no-children"><a href="/events/makerspace/all" class="sf-depth-2 nav-primary-link">Makerspace Events</a></li><li id="menu-132490-1" class="middle odd sf-item-5 sf-depth-2 sf-no-children"><a href="https://www.hpl.ca/articles/video-games-library" class="sf-depth-2 nav-primary-link">Video Games at the Library</a></li><li id="menu-29653-1" class="middle even sf-item-6 sf-depth-2 sf-no-children"><a href="/articles/makerspace-guidelines" class="sf-depth-2 nav-primary-link">Guidelines</a></li><li id="menu-74596-1" class="middle odd sf-item-7 sf-depth-2 sf-no-children"><a href="/makerspaces/in-action" class="sf-depth-2 nav-primary-link">In Action</a></li><li id="menu-98336-1" class="middle even sf-item-8 sf-depth-2 sf-no-children"><a href="/makerspaces/tutorials" class="sf-depth-2 nav-primary-link">Makerspace Tutorials</a></li><li id="menu-133394-1" class="last odd sf-item-9 sf-depth-2 sf-no-children"><a href="https://www.hpl.ca/articles/3d-printing-has-returned" class="sf-depth-2 nav-primary-link">3D Printing</a></li></ul></li><li id="menu-28221-1" class="middle even sf-item-8 sf-depth-1 sf-total-children-4 sf-parent-children-1 sf-single-children-3 menuparent"><a href="/node/24606" class="sf-depth-1 nav-primary-link menuparent">Community</a><ul><li id="menu-29689-1" class="first odd sf-item-1 sf-depth-2 sf-total-children-3 sf-parent-children-0 sf-single-children-3 menuparent"><a href="/art-galleries" class="sf-depth-2 nav-primary-link menuparent">Gallery HPL</a><ul><li id="menu-57596-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/articles/great-art-great-lakes-lake-ontario-portrait" class="sf-depth-3 nav-primary-link">Great Art for Great Lakes</a></li><li id="menu-40421-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/articles/core" class="sf-depth-3 nav-primary-link">The Core</a></li><li id="menu-36796-1" class="last odd sf-item-3 sf-depth-3 sf-no-children"><a href="/forms/gallery-hpl-call-entry" class="sf-depth-3 nav-primary-link">Call for Entry</a></li></ul></li><li id="menu-29694-1" class="middle even sf-item-2 sf-depth-2 sf-no-children"><a href="https://redbook.hpl.ca" class="sf-depth-2 nav-primary-link">Red Book of Hamilton</a></li><li id="menu-119346-1" class="middle odd sf-item-3 sf-depth-2 sf-no-children"><a href="/museum" class="sf-depth-2 nav-primary-link">Free Museum Access</a></li><li id="menu-133833-1" class="last even sf-item-4 sf-depth-2 sf-no-children"><a href="/articles/community-desk" class="sf-depth-2 nav-primary-link">Community Desk</a></li></ul></li><li id="menu-28222-1" class="last odd sf-item-9 sf-depth-1 sf-total-children-3 sf-parent-children-1 sf-single-children-2 menuparent"><a href="/supportHPL" class="sf-depth-1 nav-primary-link menuparent">Support HPL</a><ul><li id="menu-29699-1" class="first odd sf-item-1 sf-depth-2 sf-total-children-4 sf-parent-children-0 sf-single-children-4 menuparent"><a href="/donations" class="sf-depth-2 nav-primary-link menuparent">Donations</a><ul><li id="menu-49751-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/donate-now" class="sf-depth-3 nav-primary-link">Donate Now</a></li><li id="menu-29701-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/articles/donations-sponsorship-and-fundraising-policy" class="sf-depth-3 nav-primary-link">Donations Policy</a></li><li id="menu-37671-1" class="middle odd sf-item-3 sf-depth-3 sf-no-children"><a href="/articles/lha-collections-policy" class="sf-depth-3 nav-primary-link">LH&A Collections Policy</a></li><li id="menu-29700-1" class="last even sf-item-4 sf-depth-3 sf-no-children"><a href="/articles/book-donations" class="sf-depth-3 nav-primary-link">Book Donations</a></li></ul></li><li id="menu-29696-1" class="middle even sf-item-2 sf-depth-2 sf-no-children"><a href="/volunteer-opportunities" class="sf-depth-2 nav-primary-link">Volunteer</a></li><li id="menu-29697-1" class="last odd sf-item-3 sf-depth-2 sf-no-children"><a href="/shop" class="sf-depth-2 nav-primary-link">Shop HPL</a></li></ul></li></ul> </div> <div class='clearfix'></div> </div> </div> <div id="main-content"></div> <!-- <div class='clearfix'></div> --></div> </div> </div> <div class="clearfix"></div> <div class='row'> <div id='homepage-features' class='container'> </div> </div> <!--<div class="covid-notice"><a href="/news/library-questions-during-covid-19" title="Library questions during COVID-19"></a><button id="covid-notice-close" title="close COVID notice">X</button></div>--> <div class='footer-holder row padded'> <img alt="stylistic image element" src='/sites/all/themes/hpl_kids/images/kids-wavy-foot.png' class='kids-wavy-foot' /> <div class='container width12'> <div class='footer-nav row'> <div id="block-menu-menu-secondary-navigation--2" class="block block-menu"> <div class="content"> <ul class="menu"><li class="first expanded column width3 push0"><a href="/">HPL Sites</a><ul class="menu"><li class="first leaf"><a href="https://www.hpl.ca">Hamilton Public Library</a></li> <li class="leaf"><a href="https://kids.hpl.ca">HPL Kids</a></li> <li class="leaf"><a href="https://teens.hpl.ca">HPL Teens</a></li> <li class="leaf"><a href="https://lha.hpl.ca">Local History and Archives</a></li> <li class="leaf"><a href="https://www.hamiltonstories.ca">Love Your City – Share Your Stories</a></li> <li class="leaf"><a href="https://arvr.hpl.ca">ExperienceCommons</a></li> <li class="last leaf"><a href="https://redbook.hpl.ca">Red Book by HPL</a></li> </ul></li> <li class="expanded column width3 push3"><a href="/articles/read-watch-listen">HPL Online</a><ul class="menu"><li class="first leaf"><a href="/hpl-online/ebooks-and-eaudio">eBooks & Audio</a></li> <li class="leaf"><a href="/hpl-online/magazines-and-newspapers">Magazines and Newspapers</a></li> <li class="leaf"><a href="/hpl-online/movies-and-music">Movies and Music</a></li> <li class="leaf"><a href="/learning-at-hpl">Learning at HPL</a></li> <li class="leaf"><a href="/hpl-online/do-it-yourself">Do It Yourself</a></li> <li class="leaf"><a href="/hpl-online/health-and-wellness">Health and Wellness</a></li> <li class="leaf"><a href="/hpl-online/research-and-reference">Research and Reference</a></li> <li class="leaf"><a href="/hpl-online/business">Business</a></li> <li class="last leaf"><a href="/hpl-online/job-search-resources">Jobs and Careers</a></li> </ul></li> <li class="expanded active-trail column width3 push6"><a href="/node/24496" class="active-trail">Programs</a><ul class="menu"><li class="first leaf"><a href="/e-news">Program Guide</a></li> <li class="last leaf"><a href="/articles/subscribe-our-enewsletters">eNewsletter</a></li> </ul></li> <li class="last expanded column width3 push9"><a href="/services-0">Services</a><ul class="menu"><li class="first leaf"><a href="/forms/book-appointment">Book an Appointment</a></li> <li class="leaf"><a href="/nlc">Newcomers</a></li> <li class="leaf"><a href="/Home-Library-Service">Home Library Service</a></li> <li class="leaf"><a href="/access">Accessibility</a></li> <li class="leaf"><a href="/meeting-rooms">Rooms</a></li> <li class="last leaf"><a href="/articles/public-computers-and-wifi">Public Computers and Wi-Fi</a></li> </ul></li> </ul> </div> </div> </div> <div class='row'> <div id="block-block-71--2" class="block block-block"> <div class="content"> <!--smart_paging_filter--><!--smart_paging_autop_filter--><div class="footer-logo"><div class="content"><a href="/" id="footer-logo" rel="home" title="Return to the HPL home page"><img alt="HPL logo" src="/sites/all/themes/hpl_primary/images/logo_header.png" /></a></div></div> </div> </div> <div class='legal'> <div id="social-media" class='buttons'> <a class='button small icon' href="https://www.youtube.com/user/HamiltonLibraryVideo" title="Go to the Hamilton Public Library YouTube page" target="_blank"> <span class='fa' role="img" aria-label="YouTube"> <span class='hidden'>YouTube</span></span> </a> <a class='button small icon' href="http://www.pinterest.com/hamiltonlibrary/" title="Go to the Hamilton Public Library Pinterest page" target="_blank"> <span class='fa' role="img" aria-label="Pinterest"> <span class='hidden'>Pinterest</span></span> </a> <a class='button small icon' href="https://twitter.com/HamiltonLibrary" title="Go to the Hamilton Public Library Twitter page" target="_blank"> <span class='fa' role="img" aria-label="Twitter"> <span class='hidden'>Twitter</span></span> </a> <a class='button small icon' href="https://www.facebook.com/hamiltonpubliclibrary" title="Go to the Hamilton Public Library Facebook page" target="_blank"> <span class='fa' role="img" aria-label="Facebook"> <span class='hidden'>Facebook</span></span> </a> <a class='button small icon' href="https://www.instagram.com/hamiltonlibrary/" title="Go to the Hamilton Public Library Instagram page" target="_blank"> <span class='fa' role="img" aria-label="Instagram"> <span class='hidden'>Instagram</span></span> </a> <a id='contrast-toggle' class='button small icon' href="#" title="Change this site to high visibility colour mode"> <span class='fa' role="img" aria-label="Adjust Contrast"> <span class='hidden'>Adjust Contrast</span></span> </a> </div> <div id="block-menu-menu-legal-menu--2" class="block block-menu"> <div class="content"> <ul class="menu"><li class="first leaf"><a href="http://hpl.ca/accessibility-services">AODA</a></li> <li class="last leaf"><a href="/articles/privacy-policy-library-members">Privacy Policy</a></li> </ul> </div> </div> <br /> <div class='legal-text'> © 2025 Hamilton Public Library. All rights reserved. </div> </div> </div> <div class='clearfix'></div> </div> </div> <script src="https://www.hpl.ca/sites/default/files/js/js_7Ukqb3ierdBEL0eowfOKzTkNu-Le97OPm-UqTS5NENU.js"></script> <script> function initFreshChat() { window.fcWidget.init({ token: "aca44cbf-6b4d-4250-b554-812f07dce4cc", host: "https://wchat.freshchat.com", config: { disableEvents: true, cssNames: { widget: 'fc_frame', open: 'fc_open', expanded: 'fc_expanded' }, showFAQOnOpen: true, hideFAQ: true, agent: { hideName: false, hidePic: true, hideBio: true, }, content: { placeholders: { search_field: 'Search', reply_field: 'Reply', csat_reply: 'Add your comments here' }, headers: { chat: 'Let\'s Chat.', chat_help: 'Reach out to us if you have any questions', push_notification: 'Don\'t miss out on any replies! Allow push notifications?', csat_question: 'Did we address your concerns??', csat_yes_question: 'How would you rate this interaction?', csat_no_question: 'How could we have helped better?', csat_thankyou: 'Thanks for the response', csat_rate_here: 'Submit your rating here', channel_response: { offline: 'We are currently away. Please leave us a message', online: { minutes: { one: "Currently replying in {!time!} minutes ", more: "Typically replies in {!time!} minutes" }, hours: { one: "Currently replying in under an hour", more: "Typically replies in {!time!} hours", } } } } } } }); } function initialize(i, t) { var e; i.getElementById(t) ? initFreshChat() : ((e = i.createElement("script")).id = t, e.async = !0, e.src = "https://wchat.freshchat.com/js/widget.js", e.onload = initFreshChat, i.head.appendChild(e)) } function initiateCall() { initialize(document, "freshchat-js-sdk") } window.addEventListener ? window.addEventListener("load", initiateCall, !1) : window.attachEvent("load", initiateCall, !1); </script> <script src="/sites/all/themes/hpl_primary/scripts/vendor/Respond/dest/respond.min.js"></script> <script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"NRJS-b9330086d4848dc0310","applicationID":"1078594488","transactionName":"ZlABN0BTXkQHBURYW18aNhFbHR9eCAJVSRpBXRM=","queueTime":0,"applicationTime":11,"atts":"ShcCQQhJTUo=","errorBeacon":"bam.nr-data.net","agent":""}</script></body> </html>