CINXE.COM
Makerspace Programs | 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/makerspace/all" /> <link rel="shortcut icon" href="https://www.hpl.ca/sites/all/themes/hpl_primary/images/primary-fav.png" /> <title>Makerspace Programs | 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.281.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:()=>p,gD:()=>m,xN:()=>g});var n=r(3333),i=r(993);const o=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var a=r(2614),s=r(944),c=r(384),u=r(8122);const d="[data-nr-mask]",l=()=>{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,level:i.p_.INFO},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,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:a.wk,inactiveMs:a.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){o(t)?e.mask_selector="".concat(t,",").concat(d):""===t||null===t?e.mask_selector=d:(0,s.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){o(t)?e.block_selector+=",".concat(t):""!==t&&(0,s.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,s.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"]}}},f={},h="All configuration objects require an agent identifier!";function p(e){if(!e)throw new Error(h);if(!f[e])throw new Error("Configuration for ".concat(e," was never set"));return f[e]}function g(e,t){if(!e)throw new Error(h);f[e]=(0,u.a)(t,l());const r=(0,c.nY)(e);r&&(r.init=f[e])}function m(e,t){if(!e)throw new Error(h);var r=p(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.281.0",i="PROD",o="CDN",a="^2.0.0-alpha.17"},6154:(e,t,r)=>{"use strict";r.d(t,{A4:()=>s,OF:()=>d,RI:()=>i,WN:()=>h,bv:()=>o,gm:()=>a,lR:()=>f,m:()=>u,mw:()=>c,sb:()=>l});var n=r(1863);const i="undefined"!=typeof window&&!!window.document,o="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),s="complete"===a?.document?.readyState,c=Boolean("hidden"===a?.document?.visibilityState),u=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),l=d&&"undefined"==typeof SharedWorker,f=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),h=Date.now()-(0,n.t)()},7295:(e,t,r)=>{"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>o});var n=[];function i(e){if(!e||o(e))return!1;if(0===n.length)return!0;for(var t=0;t<n.length;t++){var r=n[t];if("*"===r.hostname)return!1;if(s(r.hostname,e.hostname)&&c(r.pathname,e.pathname))return!1}return!0}function o(e){return void 0===e.hostname}function a(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let o,a;i>0?(o=r.substring(0,i),a=r.substring(i)):(o=r,a="");let[s]=o.split(":");n.push({hostname:s,pathname:a})}}function s(e,t){return!(e.length>t.length)&&t.indexOf(e)===t.length-e.length}function c(e,t){return 0===e.indexOf("/")&&(e=e.substring(1)),0===t.indexOf("/")&&(t=t.substring(1)),""===e||e===t}},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>l,x3:()=>u});var n=r(7836),i=r(3606),o=r(860),a=r(2646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),h(e,t,!1),s[e].size&&f(e))}function d(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function l(e="",t="feature",r=!1){if(d(e),!e||!s[e].get(t)||r)return h(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((([e,t])=>t.staged))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((([t])=>{s[e].delete(t),h(e,t)})))}function h(e,t,r=!0){const o=e?n.ee.get(e):n.ee,s=i.i.handlers;if(!o.aborted&&o.backlog&&s){if(r){const e=o.backlog[t],r=s[t];if(r){for(let t=0;e&&t<e.length;++t)p(e[t],r);Object.entries(r).forEach((([e,t])=>{Object.values(t||{}).forEach((t=>{t[0]?.on&&t[0]?.context()instanceof a.y&&t[0].on(e,t[1])}))}))}}o.isolatedBacklog||delete s[t],o.backlog[t]=null,o.emit("drain-"+t,[])}}function p(e,t){var r=e[1];Object.values(t[r]||{}).forEach((t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],o=e[2];n.apply(i,o)}}))}},7836:(e,t,r)=>{"use strict";r.d(t,{P:()=>c,ee:()=>u});var n=r(384),i=r(8990),o=r(3371),a=r(2646),s=r(5607);const c="nr@context:".concat(s.W),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&(0,o.f)(r).isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=h(n),c=g(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=v()[s[e]];p&&p.push([f,e,r,a]);return a},get:m,listeners:g,context:h,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach((([e,n])=>{s[n]=t,t in r||(r[t]=[])}))},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach((e=>{delete f.backlog[e]}))},isBuffering:function(e){return!!v()[s[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function h(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return d[t]=d[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=u)},2646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(9908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,ZF:()=>c,bz:()=>a,el:()=>u});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}function c(){return s(16)}function u(){return s(32)}},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},7485:(e,t,r)=>{"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},944:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.debug&&console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t)}r.d(t,{R:()=>n})},5284:(e,t,r)=>{"use strict";r.d(t,{t:()=>c,B:()=>s});var n=r(7836),i=r(6154);const o="newrelic";const a=new Set,s={};function c(e,t){const r=n.ee.get(t);s[t]??={},e&&"object"==typeof e&&(a.has(t)||(r.emit("rumresp",[e]),s[t]=e,a.add(t),function(e={}){try{i.gm.dispatchEvent(new CustomEvent(o,{detail:e}))}catch(e){}}({loaded:!0})))}},8990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout((()=>{i=clearTimeout(i)}),t)),n||(clearTimeout(i),i=setTimeout((()=>{e.apply(this,r)}),t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},3304:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(7836);const i=()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}};function o(e){try{return JSON.stringify(e,i())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},5289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,sB:()=>a});var n=r(3878);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.sp)("load",e,t)}function a(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}},384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>o,US:()=>d,Zm:()=>a,bQ:()=>c,dV:()=>s,nY:()=>u,pV:()=>l});var n=r(6154),i=r(1863);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function s(){let e=a();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},2843:(e,t,r)=>{"use strict";r.d(t,{u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},8139:(e,t,r)=>{"use strict";r.d(t,{u:()=>f});var n=r(7836),i=r(3434),o=r(8990),a=r(6154);const s={},c=a.gm.XMLHttpRequest,u="addEventListener",d="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e){var t=function(e){return(e||n.ee).get("events")}(e);if(s[t.debugId]++)return t;s[t.debugId]=1;var r=(0,i.YM)(t,!0);function f(e){r.inPlace(e,[u,d],"-",p)}function p(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,f),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])}},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,{ET:()=>o,TZ:()=>a,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o="log",a=n.K7.logging},3785:(e,t,r)=>{"use strict";r.d(t,{R:()=>c,b:()=>u});var n=r(9908),i=r(1863),o=r(860),a=r(3969),s=r(993);function c(e,t,r={},c=s.p_.INFO){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,o.K7.metrics,e),(0,n.p)(s.ET,[(0,i.t)(),t,r,c],void 0,o.K7.logging,e)}function u(e){return"string"==typeof e&&Object.values(s.p_).some((t=>t===e.toUpperCase().trim()))}},3969:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,XG:()=>s,rs:()=>i,xV:()=>a,z_:()=>o});const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},6344:(e,t,r)=>{"use strict";r.d(t,{BB:()=>d,G4:()=>o,Qb:()=>l,TZ:()=>i,Ug:()=>a,_s:()=>s,bc:()=>u,yP:()=>c});var n=r(2614);const i=r(860).K7.sessionReplay,o={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"},a=.12,s={DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},c={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0},u={RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},d=5e3,l={API:"api"}},5270:(e,t,r)=>{"use strict";r.d(t,{Aw:()=>c,CT:()=>u,SR:()=>s});var n=r(384),i=r(9417),o=r(7767),a=r(6154);function s(e){return!!(0,n.dV)().o.MO&&(0,o.V)(e)&&!0===(0,i.gD)(e,"session_trace.enabled")}function c(e){return!0===(0,i.gD)(e,"session_replay.preload")&&s(e)}function u(e,t){const r=t.correctAbsoluteTimestamp(e);return{originalTimestamp:e,correctedTimestamp:r,timestampDiff:e-r,originTime:a.WN,correctedOriginTime:t.correctedOriginTime,originTimeDiff:Math.floor(a.WN-t.correctedOriginTime)}}},3738:(e,t,r)=>{"use strict";r.d(t,{He:()=>i,Kp:()=>s,Lc:()=>u,Rz:()=>d,TZ:()=>n,bD:()=>o,d3:()=>a,jx:()=>l,uP:()=>c});const n=r(860).K7.sessionTrace,i="bstResource",o="resource",a="-start",s="-end",c="fn"+a,u="fn"+s,d="pushState",l=1e3},3962:(e,t,r)=>{"use strict";r.d(t,{AM:()=>o,O2:()=>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:()=>T,gx:()=>v,l9:()=>l,oW:()=>h,op:()=>g,rw:()=>u,tH:()=>A,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,T="jsTime",A="fetch"},4234:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(7836),i=r(1687);class o{constructor(e,t){this.agentIdentifier=e,this.ee=n.ee.get(e),this.featureName=t,this.blocked=!1}deregisterDrain(){(0,i.x3)(this.agentIdentifier,this.featureName)}}},7767:(e,t,r)=>{"use strict";r.d(t,{V:()=>o});var n=r(9417),i=r(6154);const o=e=>i.RI&&!0===(0,n.gD)(e,"privacy.cookies_enabled")},425:(e,t,r)=>{"use strict";r.d(t,{j:()=>j});var n=r(860),i=r(2555),o=r(3371),a=r(9908),s=r(7836),c=r(1687),u=r(5289),d=r(6154),l=r(944),f=r(3969),h=r(384),p=r(6344);const g=["setErrorHandler","finished","addToTrace","addRelease","recordCustomEvent","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",p.G4.RECORD,p.G4.PAUSE,"log","wrapLogger"],m=["setErrorHandler","finished","addToTrace","addRelease"];var v=r(1863),b=r(2614),y=r(993),w=r(3785),R=r(2646),x=r(3434);const E=new Map;function T(e,t,r,n){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const i=function(e){return(e||s.ee).get("logger")}(e),o=(0,x.YM)(i),a=new R.y(s.P);a.level=n.level,a.customAttributes=n.customAttributes;const c=t[r]?.[x.Jt]||t[r];return E.set(c,a),o.inPlace(t,[r],"wrap-logger-",(()=>E.get(c))),i}function A(){const e=(0,h.pV)();g.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.api?e.exposed&&e.api[t]&&n.push(e.api[t](...r)):(0,l.R)(38,t)})),n.length>1?n:n[0]}(t,...r)}))}const S={};var N=r(9417),_=r(5603),O=r(5284);const I=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let P=!1;function j(e,t={},g,R){let{init:x,info:E,loader_config:j,runtime:C={},exposed:k=!0}=t;C.loaderType=g;const L=(0,h.pV)();E||(x=L.init,E=L.info,j=L.loader_config),(0,N.xN)(e.agentIdentifier,x||{}),(0,_.a)(e.agentIdentifier,j||{}),E.jsAttributes??={},d.bv&&(E.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,E);const H=(0,N.D0)(e.agentIdentifier),M=[E.beacon,E.errorBeacon];P||(H.proxy.assets&&(I(H.proxy.assets),M.push(H.proxy.assets)),H.proxy.beacon&&M.push(H.proxy.beacon),A(),(0,h.US)("activatedFeatures",O.B),e.runSoftNavOverSpa&&=!0===H.soft_navigations.enabled&&H.feature_flags.includes("soft_nav")),C.denyList=[...H.ajax.deny_list||[],...H.ajax.block_internal?M:[]],C.ptid=e.agentIdentifier,(0,o.V)(e.agentIdentifier,C),e.ee=s.ee.get(e.agentIdentifier),void 0===e.api&&(e.api=function(e,t,h=!1){t||(0,c.Ak)(e,"api");const g={};var R=s.ee.get(e),x=R.get("tracer");S[e]=b.g.OFF,R.on(p.G4.REPLAY_RUNNING,(t=>{S[e]=t}));var E="api-",A=E+"ixn-";function N(t,r,n,o){const a=(0,i.Vp)(e);return null===r?delete a.jsAttributes[t]:(0,i.x1)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),I(E,n,!0,o||null===r?"session":void 0)(t,r)}function _(){}g.log=function(e,{customAttributes:t={},level:r=y.p_.INFO}={}){(0,a.p)(f.xV,["API/log/called"],void 0,n.K7.metrics,R),(0,w.R)(R,e,t,r)},g.wrapLogger=(e,t,{customAttributes:r={},level:i=y.p_.INFO}={})=>{(0,a.p)(f.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,R),T(R,e,t,{customAttributes:r,level:i})},m.forEach((e=>{g[e]=I(E,e,!0,"api")})),g.addPageAction=I(E,"addPageAction",!0,n.K7.genericEvents),g.recordCustomEvent=I(E,"recordCustomEvent",!0,n.K7.genericEvents),g.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,o.f)(e).customTransaction=(r||"http://custom.transaction")+t,I(E,"setPageViewName",!0)()},g.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return N(e,t,"setCustomAttribute",r);(0,l.R)(40,typeof t)}else(0,l.R)(39,typeof e)},g.setUserId=function(e){if("string"==typeof e||null===e)return N("enduser.id",e,"setUserId",!0);(0,l.R)(41,typeof e)},g.setApplicationVersion=function(e){if("string"==typeof e||null===e)return N("application.version",e,"setApplicationVersion",!1);(0,l.R)(42,typeof e)},g.start=()=>{try{(0,a.p)(f.xV,["API/start/called"],void 0,n.K7.metrics,R),R.emit("manual-start-all")}catch(e){(0,l.R)(23,e)}},g[p.G4.RECORD]=function(){(0,a.p)(f.xV,["API/recordReplay/called"],void 0,n.K7.metrics,R),(0,a.p)(p.G4.RECORD,[],void 0,n.K7.sessionReplay,R)},g[p.G4.PAUSE]=function(){(0,a.p)(f.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,R),(0,a.p)(p.G4.PAUSE,[],void 0,n.K7.sessionReplay,R)},g.interaction=function(e){return(new _).get("object"==typeof e?e:{})};const O=_.prototype={createTracer:function(e,t){var r={},i=this,o="function"==typeof t;return(0,a.p)(f.xV,["API/createTracer/called"],void 0,n.K7.metrics,R),h||(0,a.p)(A+"tracer",[(0,v.t)(),e,r],i,n.K7.spa,R),function(){if(x.emit((o?"":"no-")+"fn-start",[(0,v.t)(),i,o],r),o)try{return t.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw x.emit("fn-err",[arguments,this,t],r),t}finally{x.emit("fn-end",[(0,v.t)()],r)}}}};function I(e,t,r,i){return function(){return(0,a.p)(f.xV,["API/"+t+"/called"],void 0,n.K7.metrics,R),i&&(0,a.p)(e+t,[r?(0,v.t)():performance.now(),...arguments],r?null:this,i,R),r?void 0:this}}function P(){r.e(478).then(r.bind(r,8778)).then((({setAPI:t})=>{t(e),(0,c.Ze)(e,"api")})).catch((e=>{(0,l.R)(27,e),R.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{O[e]=I(A,e,void 0,h?n.K7.softNav:n.K7.spa)})),g.setCurrentRouteName=h?I(A,"routeName",void 0,n.K7.softNav):I(E,"routeName",!0,n.K7.spa),g.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,a.p)(f.xV,["API/noticeError/called"],void 0,n.K7.metrics,R),(0,a.p)("err",[t,(0,v.t)(),!1,r,!!S[e]],void 0,n.K7.jserrors,R)},d.RI?(0,u.GG)((()=>P()),!0):P(),g}(e.agentIdentifier,R,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=k),P=!0}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>u,K7:()=>s,P3:()=>c,XX:()=>i,qY:()=>n,v4:()=>a});const n="events",i="jserrors",o="browser/blobs",a="rum",s={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"},c={[s.pageViewEvent]:1,[s.pageViewTiming]:2,[s.metrics]:3,[s.jserrors]:4,[s.spa]:5,[s.ajax]:6,[s.sessionTrace]:7,[s.softNav]:8,[s.sessionReplay]:9,[s.logging]:10,[s.genericEvents]:11},u={[s.pageViewEvent]:a,[s.pageViewTiming]:n,[s.ajax]:n,[s.spa]:n,[s.softNav]:n,[s.metrics]:i,[s.jserrors]:i,[s.sessionTrace]:o,[s.sessionReplay]:o,[s.logging]:"browser/logs",[s.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.281.0.min.js"),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.281.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-jmvAlmjCn64ans8tLueqHRlBI/iWekylsDWb94A77CG0ukSriVDvgD3dThx+XjUSBBBMYhFn8B1a18fViyBPEQ==",249:"sha512-ICY/ZrcytM/86t5KFy+9OAWVYmNNJy10EBtxoSUGjQWuZx53p/eLo+L8HfrGjvHuRHRnutqLTGSnvNttffJkaA==",212:"sha512-pQSn+X/RfBOvx/49HvlghaiXMLhhDQXTi13n1N2XMpDquWJgs9U0pbqE3RbAnYC9nsdaTu/RVGvneEPv1fpCxA=="};(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.281.0.PROD"]=self["webpackChunk:NRBA-1.281.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("function"==typeof this.api?.[t])return this.api[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("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}start(){return this.#e("start")}finished(e){return this.#e("finished",e)}recordReplay(){return this.#e(t.G4.RECORD)}pauseReplay(){return this.#e(t.G4.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}wrapLogger(e,t,r){return this.#e("wrapLogger",e,t,r)}}var a=i(860),s=i(9417);const c=Object.values(a.K7);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.gD)(t,"".concat(e,".enabled"))}(r,e)})),t}var d=i(425);var l=i(1687),f=i(4234),h=i(5289),p=i(6154),g=i(5270),m=i(7767),v=i(6389);class b extends f.W{constructor(e,t,r=!0){super(e.agentIdentifier,t),this.auto=r,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===e.init[this.featureName].autoStart&&(this.auto=!1),this.auto?(0,l.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,v.J)((()=>{(0,l.Ak)(e.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator(e)})))}importAggregator(t,r={}){if(this.featAggregate||!this.auto)return;let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let o;try{if((0,m.V)(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(478).then(i.bind(i,6526));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(!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),T=i(3878),A=i(782),S=i(1863);class N extends b{static featureName=A.T;constructor(e,t=!0){super(e,A.T,t),p.RI&&((0,E.u)((()=>(0,x.p)("docHidden",[(0,S.t)()],void 0,A.T,this.ee)),!0),(0,T.sp)("pagehide",(()=>(0,x.p)("winPagehide",[(0,S.t)()],void 0,A.T,this.ee))),this.importAggregator(e))}}var _=i(3969);class O extends b{static featureName=_.TZ;constructor(e,t=!0){super(e,_.TZ,t),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{return e.reason.message=t+": "+e.reason.message,C(e.reason)}catch(t){return C(e.reason)}const r=C(e.reason);return r.message=t+": "+r?.message,r}function L(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new 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,T.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,T.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,T.jT)(!1))}catch(t){(0,e.R)(15,t);try{n.emit("internal-error",[t])}catch(e){}}var s;return r};function h(e,t){i.inPlace(t,["onreadystatechange"],"fn-",y)}if(function(e,t){for(var r in e)t[r]=e[r]}(o,f),f.prototype=o.prototype,i.inPlace(f.prototype,q,"-xhr-",y),n.on("send-xhr-start",(function(e,t){h(e,t),function(e){l.push(e),a&&(g?g.then(b):c?c(b):(m=-m,v.data=m))}(t)})),n.on("open-xhr-start",h),a){var g=s&&s.resolve();if(!c&&!s){var m=1,v=document.createTextNode(m);new a(b).observe(v,{characterData:!0})}}else r.on("fn-end",(function(e){e[0]&&e[0].type===u||b()}));function b(){for(var e=0;e<l.length;e++)h(0,l[e]);l.length&&(l=[])}function y(e,t){return t}return n}var Y="fetch-",X=Y+"body-",J=["arrayBuffer","blob","json","text","formData"],Q=p.gm.Request,ee=p.gm.Response,te="prototype";const re={};function ne(e){const t=function(e){return(e||B.ee).get("fetch")}(e);if(!(Q&&ee&&p.gm.fetch))return t;if(re[t.debugId]++)return t;function r(e,r,n){var i=e[r];"function"==typeof i&&(e[r]=function(){var e,r=[...arguments],o={};t.emit(n+"before-start",[r],o),o[B.P]&&o[B.P].dt&&(e=o[B.P].dt);var a=i.apply(this,r);return t.emit(n+"start",[r,e],a),a.then((function(e){return t.emit(n+"end",[null,e],a),e}),(function(e){throw t.emit(n+"end",[e],a),e}))})}return re[t.debugId]=1,J.forEach((e=>{r(Q[te],e,X),r(ee[te],e,X)})),r(p.gm,"fetch",Y),t.on(Y+"end",(function(e,r){var n=this;if(r){var i=r.headers.get("content-length");null!==i&&(n.rxSize=i),t.emit(Y+"done",[null,r],n)}else t.emit(Y+"done",[e],n)})),t}var ie=i(7485),oe=i(5603);class ae{constructor(e){this.agentIdentifier=e}generateTracePayload(e){if(!this.shouldGenerateTrace(e))return null;var t=(0,oe.o)(this.agentIdentifier);if(!t)return null;var n=(t.accountID||"").toString()||null,i=(t.agentID||"").toString()||null,o=(t.trustKey||"").toString()||null;if(!n||!i)return null;var a=(0,r.ZF)(),s=(0,r.el)(),c=Date.now(),u={spanId:a,traceId:s,timestamp:c};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(u.traceContextParentHeader=this.generateTraceContextParentHeader(a,s),u.traceContextStateHeader=this.generateTraceContextStateHeader(a,c,n,i,o)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(u.newrelicHeader=this.generateTraceHeader(a,s,c,n,i,o)),u}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,o){if(!("function"==typeof p.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return o&&n!==o&&(a.d.tk=o),btoa((0,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;class he extends b{static featureName=se.T;constructor(e,t=!0){super(e,se.T,t),this.dt=new ae(e.agentIdentifier),this.handler=(e,t,r,n)=>(0,x.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};p.gm?.performance?.getEntriesByType("resource").forEach((t=>{if(t.initiatorType in e&&0!==t.responseStatus){const r={status:t.responseStatus},n={rxSize:t.transferSize,duration:Math.floor(t.duration),cbTime:0};pe(r,t.name),this.handler("xhr",[r,n,t.startTime,t.responseEnd,e[t.initiatorType]],void 0,a.K7.ajax)}}))}catch(e){}ne(this.ee),Z(this.ee),function(e,t,r,n){function i(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=R,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},e.addEventListener("load",(function(r){E(t,e)}),(0,T.jT)(!1)),p.lR||e.addEventListener("progress",(function(e){t.lastSize=e.loaded}),(0,T.jT)(!1))}function o(e){this.params={method:e[0]},pe(this,e[1]),this.metrics={}}function s(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var i=n.generateTracePayload(this.parsedOrigin);if(i){var o=!1;i.newrelicHeader&&(r.setRequestHeader("newrelic",i.newrelicHeader),o=!0),i.traceContextParentHeader&&(r.setRequestHeader("traceparent",i.traceContextParentHeader),i.traceContextStateHeader&&r.setRequestHeader("tracestate",i.traceContextStateHeader),o=!0),o&&(this.dt=i)}}function c(e,r){var n=this.metrics,i=e[0],o=this;if(n&&i){var a=G(i);a&&(n.txSize=a)}this.startTime=(0,S.t)(),this.body=i,this.listener=function(e){try{"abort"!==e.type||o.loadCaptureCalled||(o.params.aborted=!0),("load"!==e.type||o.called===o.totalCbs&&(o.onloadCalled||"function"!=typeof r.onload)&&"function"==typeof o.end)&&o.end(r)}catch(e){try{t.emit("internal-error",[e])}catch(e){}}};for(var s=0;s<de;s++)r.addEventListener(ue[s],this.listener,(0,T.jT)(!1))}function u(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function d(e,t){var r=""+V(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function l(e,t){var r=""+V(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function f(){this.endTime=(0,S.t)()}function h(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-added",[e[1],e[2]],r)}function g(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-removed",[e[1],e[2]],r)}function m(e,t,r){t instanceof fe&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,S.t)()))}function v(e,r){this.xhrCbStart&&t.emit("xhr-cb-time",[(0,S.t)()-this.xhrCbStart,this.onload,r],r)}function b(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&p.RI&&(t=""+p.gm.location.href):e[0]&&e[0].url?t=e[0].url:p.gm?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,ie.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var i=n.generateTracePayload(this.parsedOrigin);if(i&&(i.newrelicHeader||i.traceContextParentHeader))if(e[0]&&e[0].headers)s(e[0].headers,i)&&(this.dt=i);else{var o={};for(var a in r)o[a]=r[a];o.headers=new Headers(r.headers||{}),s(o.headers,i)&&(this.dt=i),e.length>1?e[1]=o:e.push(o)}}function s(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function y(e,t){this.params={},this.metrics={},this.startTime=(0,S.t)(),this.dt=t,e.length>=1&&(this.target=e[0]),e.length>=2&&(this.opts=e[1]);var r,n=this.opts||{},i=this.target;"string"==typeof i?r=i:"object"==typeof i&&i instanceof le?r=i.url:p.gm?.URL&&"object"==typeof i&&i instanceof URL&&(r=i.href),pe(this,r);var o=(""+(i&&i instanceof le&&i.method||n.method||"GET")).toUpperCase();this.params.method=o,this.body=n.body,this.txSize=G(n.body)||0}function w(e,t){if(this.endTime=(0,S.t)(),this.params||(this.params={}),(0,ce.iW)(this.params))return;let n;this.params.status=t?t.status:0,"string"==typeof this.rxSize&&this.rxSize.length>0&&(n=+this.rxSize);const i={txSize:this.txSize,rxSize:n,duration:(0,S.t)()-this.startTime};r("xhr",[this.params,i,this.startTime,this.endTime,"fetch"],this,a.K7.ajax)}function R(e){const t=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(let t=0;t<de;t++)e.removeEventListener(ue[t],this.listener,!1);t.aborted||(0,ce.iW)(t)||(n.duration=(0,S.t)()-this.startTime,this.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){var i=r.getResponseHeader("X-NewRelic-App-Data");i&&((0,x.p)(_.rs,["Ajax/CrossApplicationTracing/Header/Seen"],void 0,a.K7.metrics,t),e.params.cat=i.split(", ").pop())}e.loadCaptureCalled=!0}t.on("new-xhr",i),t.on("open-xhr-start",o),t.on("open-xhr-end",s),t.on("send-xhr-start",c),t.on("xhr-cb-time",u),t.on("xhr-load-added",d),t.on("xhr-load-removed",l),t.on("xhr-resolved",f),t.on("addEventListener-end",h),t.on("removeEventListener-end",g),t.on("fn-end",v),t.on("fetch-before-start",b),t.on("fetch-start",y),t.on("fn-start",m),t.on("fetch-done",w)}(e,this.ee,this.handler,this.dt),this.importAggregator(e)}}function pe(e,t){var r=(0,ie.D)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}const ge={},me=["pushState","replaceState"];function ve(e){const t=function(e){return(e||B.ee).get("history")}(e);return!p.RI||ge[t.debugId]++||(ge[t.debugId]=1,(0,W.YM)(t).inPlace(window.history,me,"-")),t}var be=i(3738);const{He:ye,bD:we,d3:Re,Kp:xe,TZ:Ee,Lc:Te,uP:Ae,Rz:Se}=be;class Ne extends b{static featureName=Ee;constructor(e,t=!0){super(e,Ee,t);if(!(0,m.V)(this.agentIdentifier))return void this.deregisterDrain();const r=this.ee;let n;ve(r),this.eventsEE=(0,F.u)(r),this.eventsEE.on(Ae,(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(Se+Re,(function(e){this.time=(0,S.t)(),this.startPath=location.pathname+location.hash})),r.on(Se+xe,(function(e){(0,x.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,a.K7.sessionTrace,r)}));try{n=new PerformanceObserver((e=>{const t=e.getEntries();(0,x.p)(ye,[t],void 0,a.K7.sessionTrace,r)})),n.observe({type:we,buffered:!0})}catch(e){}this.importAggregator(e,{resourceObserver:n})}}var _e=i(2614);class Oe extends b{static featureName=t.TZ;#i;#o;constructor(e,r=!0){let n;super(e,t.TZ,r),this.replayRunning=!1,this.#o=e;try{n=JSON.parse(localStorage.getItem("".concat(_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 Ie=i(3962);class Pe extends b{static featureName=Ie.TZ;constructor(e,t=!0){if(super(e,Ie.TZ,t),!p.RI||!(0,R.dV)().o.MO)return;const r=ve(this.ee);Ie.tC.forEach((e=>{(0,T.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,T.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 je=i(7378);const Ce={},ke=["appendChild","insertBefore","replaceChild"];function Le(e){const t=function(e){return(e||B.ee).get("jsonp")}(e);if(!p.RI||Ce[t.debugId])return t;Ce[t.debugId]=!0;var r=(0,W.YM)(t),n=/[?&](?:callback|cb)=([^&#]+)/,i=/(.*)\.([^.]+)/,o=/^(\w+)(\.|$)(.*)$/;function a(e,t){if(!e)return t;const r=e.match(o),n=r[1];return a(r[3],t[n])}return r.inPlace(Node.prototype,ke,"dom-"),t.on("dom-start",(function(e){!function(e){if(!e||"string"!=typeof e.nodeName||"script"!==e.nodeName.toLowerCase())return;if("function"!=typeof e.addEventListener)return;var o=(s=e.src,c=s.match(n),c?c[1]:null);var s,c;if(!o)return;var u=function(e){var t=e.match(i);if(t&&t.length>=3)return{key:t[2],parent:a(t[1],window)};return{key:e,parent:window}}(o);if("function"!=typeof u.parent[u.key])return;var d={};function l(){t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,T.jT)(!1)),e.removeEventListener("error",f,(0,T.jT)(!1))}function f(){t.emit("jsonp-error",[],d),t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,T.jT)(!1)),e.removeEventListener("error",f,(0,T.jT)(!1))}r.inPlace(u.parent,[u.key],"cb-",d),e.addEventListener("load",l,(0,T.jT)(!1)),e.addEventListener("error",f,(0,T.jT)(!1)),t.emit("new-jsonp",[e.src],d)}(e[0])})),t}const He={};function Me(e){const t=function(e){return(e||B.ee).get("promise")}(e);if(He[t.debugId])return t;He[t.debugId]=!0;var r=t.context,n=(0,W.YM)(t),i=p.gm.Promise;return i&&function(){function e(r){var o=t.context(),a=n(r,"executor-",o,null,!1);const s=Reflect.construct(i,[a],e);return t.context(s).getCtx=function(){return o},s}p.gm.Promise=e,Object.defineProperty(e,"name",{value:"Promise"}),e.toString=function(){return i.toString()},Object.setPrototypeOf(e,i),["all","race"].forEach((function(r){const n=i[r];e[r]=function(e){let i=!1;[...e||[]].forEach((e=>{this.resolve(e).then(a("all"===r),a(!1))}));const o=n.apply(this,arguments);return o;function a(e){return function(){t.emit("propagate",[null,!i],o,!1,!1),i=i||!e}}}})),["resolve","reject"].forEach((function(r){const n=i[r];e[r]=function(e){const r=n.apply(this,arguments);return e!==r&&t.emit("propagate",[e,!0],r,!1,!1),r}})),e.prototype=i.prototype;const o=i.prototype.then;i.prototype.then=function(...e){var i=this,a=r(i);a.promise=i,e[0]=n(e[0],"cb-",a,null,!1),e[1]=n(e[1],"cb-",a,null,!1);const s=o.apply(this,e);return a.nextPromise=s,t.emit("propagate",[i,!0],s,!1,!1),s},i.prototype.then[W.Jt]=o,t.on("executor-start",(function(e){e[0]=n(e[0],"resolve-",this,null,!1),e[1]=n(e[1],"resolve-",this,null,!1)})),t.on("executor-err",(function(e,t,r){e[1](r)})),t.on("cb-end",(function(e,r,n){t.emit("propagate",[n,!0],this.nextPromise,!1,!1)})),t.on("propagate",(function(e,r,n){this.getCtx&&!r||(this.getCtx=function(){if(e instanceof Promise)var r=t.context(e);return r&&r.getCtx?r.getCtx():this})}))}(),t}const De={},Ke="setTimeout",Ue="setInterval",Ve="clearTimeout",Ge="-start",Fe=[Ke,"setImmediate",Ue,Ve,"clearImmediate"];function Be(e){const t=function(e){return(e||B.ee).get("timer")}(e);if(De[t.debugId]++)return t;De[t.debugId]=1;var r=(0,W.YM)(t);return r.inPlace(p.gm,Fe.slice(0,2),Ke+"-"),r.inPlace(p.gm,Fe.slice(2,3),Ue+"-"),r.inPlace(p.gm,Fe.slice(3),Ve+"-"),t.on(Ue+Ge,(function(e,t,n){e[0]=r(e[0],"fn-",null,n)})),t.on(Ke+Ge,(function(e,t,n){this.method=n,this.timerDuration=isNaN(e[1])?0:+e[1],e[0]=r(e[0],"fn-",this,n)})),t}const We={};function ze(e){const t=function(e){return(e||B.ee).get("mutation")}(e);if(!p.RI||We[t.debugId])return t;We[t.debugId]=!0;var r=(0,W.YM)(t),n=p.gm.MutationObserver;return n&&(window.MutationObserver=function(e){return this instanceof n?new n(r(e,"fn-")):n.apply(this,arguments)},MutationObserver.prototype=n.prototype),t}const{TZ:qe,d3:Ze,Kp:Ye,$p:Xe,wW:$e,e5:Je,tH:Qe,uP:et,rw:tt,Lc:rt}=je;class nt extends b{static featureName=qe;constructor(e,t=!0){if(super(e,qe,t),!p.RI)return;try{this.removeOnAbort=new AbortController}catch(e){}let r,n=0;const i=this.ee.get("tracer"),o=Le(this.ee),a=Me(this.ee),s=Be(this.ee),c=Z(this.ee),u=this.ee.get("events"),d=ne(this.ee),l=ve(this.ee),f=ze(this.ee);function h(e,t){l.emit("newURL",[""+window.location,t])}function g(){n++,r=window.location.hash,this[et]=(0,S.t)()}function m(){n--,window.location.hash!==r&&h(0,!0);var e=(0,S.t)();this[Je]=~~this[Je]+e-this[et],this[rt]=e}function v(e,t){e.on(t,(function(){this[t]=(0,S.t)()}))}this.ee.on(et,g),a.on(tt,g),o.on(tt,g),this.ee.on(rt,m),a.on($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([et,rt,"xhr-resolved"],this.featureName),u.buffer([et],this.featureName),s.buffer(["setTimeout"+Ye,"clearTimeout"+Ze,et],this.featureName),c.buffer([et,"new-xhr","send-xhr"+Ze],this.featureName),d.buffer([Qe+Ze,Qe+"-done",Qe+Xe+Ze,Qe+Xe+Ye],this.featureName),l.buffer(["newURL"],this.featureName),f.buffer([et],this.featureName),a.buffer(["propagate",tt,$e,"executor-err","resolve"+Ze],this.featureName),i.buffer([et,"no-"+et],this.featureName),o.buffer(["new-jsonp","cb-start","jsonp-error","jsonp-end"],this.featureName),v(d,Qe+Ze),v(d,Qe+"-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,T.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("load",h,(0,T.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("popstate",(function(){h(0,n>1)}),(0,T.jT)(!0,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var it=i(3333);class ot extends b{static featureName=it.TZ;constructor(e,t=!0){super(e,it.TZ,t);const r=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.user_actions.enabled,e.init.performance.resources.enabled];if(p.RI&&(e.init.user_actions.enabled&&(it.Zp.forEach((e=>(0,T.sp)(e,(e=>(0,x.p)("ua",[e],void 0,this.featureName,this.ee)),!0))),it.qN.forEach((e=>{const t=(0,v.s)((e=>{(0,x.p)("ua",[e],void 0,this.featureName,this.ee)}),500,{leading:!0});(0,T.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 at=i(993),st=i(3785);class ct extends b{static featureName=at.TZ;constructor(e,t=!0){super(e,at.TZ,t);const r=this.ee;this.ee.on("wrap-logger-end",(function([e]){const{level:t,customAttributes:n}=this;(0,st.R)(r,e,n,t)})),this.importAggregator(e)}}new class extends o{constructor(t){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}}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.P3[e.featureName]-a.P3[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.K7.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.K7.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.K7.softNav)return;const n=function(e){switch(e){case a.K7.ajax:return[a.K7.jserrors];case a.K7.sessionTrace:return[a.K7.ajax,a.K7.pageViewEvent];case a.K7.sessionReplay:return[a.K7.sessionTrace];case a.K7.pageViewTiming:return[a.K7.pageViewEvent];default:return[]}}(r.featureName).filter((e=>!(e in this.features)));n.length>0&&(0,e.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)}))}catch(t){(0,e.R)(22,t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,R.Zm)();delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[he,w,N,Ne,Oe,O,M,ot,ct,Pe,nt],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?srv0vg" 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_xtg2KWHWXRN3kXw3gnc3qJUlCtygQVBaTUWTuO4RnxU.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?srv0vg","ga");ga("create", "UA-34022084-1", {"cookieDomain":".www.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":"JYhD4RqnN11mXunwYVkvJO_qdWW0qk8BAI2wH_mG9g0","jquery_version":"2.2","jquery_version_token":"x2V5V0vVaeEJU7zQi_kPmuyjpQSg59bTSG9vUVf4VWU","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\/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506; .NET CLR 3.5.21022; .NET CLR 1.0.3705; .NET CLR 1.1.4322)"},"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-makerspace page-events-makerspace-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> </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-aac61a9dc1fcd54c87e6db2745454bad"> <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'>2</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-92802d5357d082fac729e424df119429"> <div class="view-content"> <div> <div id="node-439256" class="node node-notice contextual-links-region clearfix"> <h1 >Central Libray - Large Format Printer Unavailable</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 large format printer in the Makerspace is currently unavailable. Please utilize our other Makerspace locations if needed. We will advise once it is restored to service.</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-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="/terryberry">Terryberry Branch</a></div><div class="field-item odd"><a href="/turner-park">Turner Park Branch</a></div><div class="field-item even"><a href="/waterdown">Waterdown 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">Friday, February 14, 2025 - 2:00pm</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">Tuesday, February 11, 2025 - 10:30am</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-www"><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> > Makerspace Programs </div> <h1>Makerspace Events</h1> <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-02-19 18:30:00"> Wed Feb 19, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/waterdown-branch">Waterdown Branch</a></li> <li class="addr"> <span class="street-address">163 Dundas St E</span> <span class="locality sr-only">Waterdown</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="43.323605"></span> </span> <span class="longitude"> <span class="value-title" title="-79.904836"></span> </span> </li> <li> <time datetime="2025-02-19 18:30:00"> 6: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/12302277" title="Cricut Design Space at Waterdown Branch on 2025-02-19 18:30:00">Cricut Design Space</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Learn to design and create projects on this crafting machine. </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-02-22 14:30:00"> Sat Feb 22, 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-02-22 14:30:00"> 2: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/12378182" title="Hatch Embroidery Digitizer Introduction at Central Library on 2025-02-22 14:30:00">Hatch Embroidery Digitizer Introduction</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Learn how to create embroidery designs with Hatch Embroidery Digitizer. </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-02-25 10:00:00"> Tue Feb 25, 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-02-25 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/12277872" title="Cricut Design Space at Concession Branch on 2025-02-25 10:00:00">Cricut Design Space</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Learn to design and create projects on this crafting machine. </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-02-25 18:00:00"> Tue Feb 25, 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-02-25 18:00:00"> 6: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/12378135" title="Visible Mending with the Embroidery Machine at Central Library on 2025-02-25 18:00:00">Visible Mending with the Embroidery Machine </a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Learn how to mend small stains, tears and holes in your clothes using the embroidery machine in Makerspace. </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-02-26 18:30:00"> Wed Feb 26, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/waterdown-branch">Waterdown Branch</a></li> <li class="addr"> <span class="street-address">163 Dundas St E</span> <span class="locality sr-only">Waterdown</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="43.323605"></span> </span> <span class="longitude"> <span class="value-title" title="-79.904836"></span> </span> </li> <li> <time datetime="2025-02-26 18:30:00"> 6: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/12377917" title="Tour the Makerspace at Waterdown Branch on 2025-02-26 18:30:00">Tour the Makerspace </a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Learn about the equipment available in the Makerspace. </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-02-27 11:00:00"> Thu Feb 27, 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-02-27 11:00:00"> 11: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/12377663" title="Cricut Design Space at Barton Branch on 2025-02-27 11:00:00">Cricut Design Space</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Learn to design and create projects on this crafting machine. </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-02-27 14:00:00"> Thu Feb 27, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/kenilworth-branch">Kenilworth Branch</a></li> <li class="addr"> <span class="street-address">103 Kenilworth Avenue North</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.243497"></span> </span> <span class="longitude"> <span class="value-title" title="-79.808892"></span> </span> </li> <li> <time datetime="2025-02-27 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/12244149" title="Cricut Design Space at Kenilworth Branch on 2025-02-27 14:00:00">Cricut Design Space</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Learn to design and create projects on this crafting machine. </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-02-27 14:30:00"> Thu Feb 27, 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-02-27 14:30:00"> 2: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/12358600" title="3D Design Intro at Terryberry Branch on 2025-02-27 14:30:00">3D Design Intro </a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Learn about 3D design. </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-02-28 10:30:00"> Fri Feb 28, 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-02-28 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/12262023" title="Maker Cart Drop-In at Terryberry Branch on 2025-02-28 10:30:00">Maker Cart Drop-In</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Choose from an assortment of tech devices and traditional crafting materials. </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-02-28 13:00:00"> Fri Feb 28, 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-02-28 13:00:00"> 1: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/12349596" title="3D Printing Escape Room at Central Library on 2025-02-28 13:00:00">3D Printing Escape Room</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Use the resources and equipment from our Makerspaces to beat the clock and escape the room. </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-02-28 14:30:00"> Fri Feb 28, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/valley-park-branch">Valley Park Branch</a></li> <li class="addr"> <span class="street-address">970 Paramount Dr.</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="43.199314"></span> </span> <span class="longitude"> <span class="value-title" title="-79.793790"></span> </span> </li> <li> <time datetime="2025-02-28 14:30:00"> 2: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/12349631" title="Make a Button with Adobe Photoshop at Valley Park Branch on 2025-02-28 14:30:00">Make a Button with Adobe Photoshop</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Design and create custom buttons. </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-03-01 14:00:00"> Sat Mar 01, 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-03-01 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/12872656" title="Hatch Embroidery Digitizer Intro at Central Library on 2025-03-01 14:00:00">Hatch Embroidery Digitizer Intro </a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Learn how to create embroidery designs with Hatch Embroidery Digitizer. </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-03-05 14:00:00"> Wed Mar 05, 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-03-05 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/12876918" title="Make Stickers With a Vinyl Printer at Central Library on 2025-03-05 14:00:00">Make Stickers With a Vinyl Printer</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Learn how to create custom designs, print and cut them out using a vinyl printer. </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-03-05 18:30:00"> Wed Mar 05, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/waterdown-branch">Waterdown Branch</a></li> <li class="addr"> <span class="street-address">163 Dundas St E</span> <span class="locality sr-only">Waterdown</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="43.323605"></span> </span> <span class="longitude"> <span class="value-title" title="-79.904836"></span> </span> </li> <li> <time datetime="2025-03-05 18:30:00"> 6: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/12879669" title="Embroidery Machine Intro at Waterdown Branch on 2025-03-05 18:30:00">Embroidery Machine Intro</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Learn how to use an embroidery machine. </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-03-08 14:00:00"> Sat Mar 08, 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-03-08 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/12877393" title="Make a Button with Adobe Photoshop at Central Library on 2025-03-08 14:00:00">Make a Button with Adobe Photoshop</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Design and create custom buttons. </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-03-10 14:00:00"> Mon Mar 10, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/sherwood-branch">Sherwood Branch</a></li> <li class="addr"> <span class="street-address">467 Upper Ottawa 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.226551"></span> </span> <span class="longitude"> <span class="value-title" title="-79.828668"></span> </span> </li> <li> <time datetime="2025-03-10 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/12882837" title="Circuits With littleBits Electronics at Sherwood Branch on 2025-03-10 14:00:00">Circuits With littleBits Electronics</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Design and build electronic creations and learn about the circuits and their power. </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-03-12 11:00:00"> Wed Mar 12, 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-03-12 11:00:00"> 11: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/12880826" title="Maker Cart Drop-In at Central Library on 2025-03-12 11:00:00">Maker Cart Drop-In</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Choose from an assortment of tech devices and traditional crafting materials. </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-03-12 18:30:00"> Wed Mar 12, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/waterdown-branch">Waterdown Branch</a></li> <li class="addr"> <span class="street-address">163 Dundas St E</span> <span class="locality sr-only">Waterdown</span> <span class="region sr-only">ON</span> </li> <li class="geo sr-only"> <span class="latitude"> <span class="value-title" title="43.323605"></span> </span> <span class="longitude"> <span class="value-title" title="-79.904836"></span> </span> </li> <li> <time datetime="2025-03-12 18:30:00"> 6: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/12855483" title="Hatch Embroidery Digitizer Intro at Waterdown Branch on 2025-03-12 18:30:00">Hatch Embroidery Digitizer Intro </a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Learn how to create embroidery designs with Hatch Embroidery Digitizer. </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-03-13 11:00:00"> Thu Mar 13, 2025 </time> </div> <div class="node-event-location"> <ul class="vcard"> <li class="fn org"><a href="/branches/westdale-branch">Westdale Branch</a></li> <li class="addr"> <span class="street-address">955 King Street 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.262643"></span> </span> <span class="longitude"> <span class="value-title" title="-79.903471"></span> </span> </li> <li> <time datetime="2025-03-13 11:00:00"> 11: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/12866059" title="LEGO Mindstorms at Westdale Branch on 2025-03-13 11:00:00">LEGO Mindstorms</a></h2> </div> <div class="node-event-subtitle"> <h3>Build and Code a Robot</h3> </div> </div> <div class="node-event-description"> Build, code, and drive a LEGO rover. </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-03-14 13:00:00"> Fri Mar 14, 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-03-14 13:00:00"> 1: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/12880904" title="Maker Cart Drop-In at Central Library on 2025-03-14 13:00:00">Maker Cart Drop-In</a></h2> </div> <div class="node-event-subtitle"> <h3>In-Branch Program</h3> </div> </div> <div class="node-event-description"> Choose from an assortment of tech devices and traditional crafting materials. </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/makerspace/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-11 sf-parent-children-0 sf-single-children-11 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="last 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></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="middle odd sf-item-5 sf-depth-2 sf-no-children"><a href="/events/finance/all" class="sf-depth-2 nav-primary-link">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="https://hpl.bibliocommons.com/list/share/345214937_hplcollections/2701148077_hamilton_reads_through_the_years" 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 active">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 active">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-3 sf-parent-children-1 sf-single-children-2 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="last 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></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 id="block-menu-block-5" class="block block-menu-block"> <div class="content"> <div class="menu-block-wrapper menu-block-5 menu-name-menu-sub-navigation---makerspace parent-mlid-0 menu-level-1"> <ul class="menu"><li class="first leaf menu-mlid-66861"><a href="/node/add/dml-bookings"><div class="fullflag"><div class="flag"><i class="fa fa-arrow-circle-right"></i><div class="flagtail"></div></div></div> Request a Booking (in person)</a></li> <li class="leaf menu-mlid-98321"><a href="/makerspaces/tutorials"><div class="fullflag"><div class="flag"><i class="fa fa-arrow-circle-right"></i><div class="flagtail"></div></div></div> Makerspace Tutorials</a></li> <li class="leaf menu-mlid-66866"><a href="/articles/makerspace-guidelines"><div class="fullflag"><div class="flag"><i class="fa fa-arrow-circle-right"></i><div class="flagtail"></div></div></div> Guidelines</a></li> <li class="leaf menu-mlid-69806"><a href="/articles/makerspace-price-guide"><div class="fullflag"><div class="flag"><i class="fa fa-arrow-circle-right"></i><div class="flagtail"></div></div></div> Price Guide</a></li> <li class="leaf menu-mlid-68236"><a href="/dml-booking-calendar?field_equipment_nid=179781"><div class="fullflag"><div class="flag"><i class="fa fa-arrow-circle-right"></i><div class="flagtail"></div></div></div> Central Calendar</a></li> <li class="leaf menu-mlid-132489"><a href="/dml-booking-calendar-branches?field_makerspace_location_nid=108986"><div class="fullflag"><div class="flag"><i class="fa fa-arrow-circle-right"></i><div class="flagtail"></div></div></div> Branch Calendar</a></li> <li class="leaf menu-mlid-68241"><a href="https://www.hpl.ca/events/makerspace/all"><div class="fullflag"><div class="flag"><i class="fa fa-arrow-circle-right"></i><div class="flagtail"></div></div></div> Makerspace Events</a></li> <li class="last leaf menu-mlid-78866"><a href="/articles/makerspace-equipment-list"><div class="fullflag"><div class="flag"><i class="fa fa-arrow-circle-right"></i><div class="flagtail"></div></div></div> Makerspace Equipment</a></li> </ul></div> </div> </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 column width3 push6"><a href="/node/24496">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":808,"atts":"ShcCQQhJTUo=","errorBeacon":"bam.nr-data.net","agent":""}</script></body> </html>