/*! Wowchemy v5.5.0 | https://wowchemy.com/ */ /*! Copyright 2016-present George Cushen (https://georgecushen.com/) */ /*! License: https://github.com/wowchemy/wowchemy-hugo-themes/blob/main/LICENSE.md */ ; (()=>{(()=>{var e,i,a,r,d,f,b,j,x,C,k,t=Object.assign||function(s){for(var e,n,t=1;t1&&arguments[1]!==void 0?arguments[1]:{},h=window.Promise||function(t){function e(){}t(e,e)},M=function(t){var e=t.target;if(e===l){r();return}if(a.indexOf(e)===-1)return;f({target:e})},S=function(){if(c||!e.original)return;var t=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0;Math.abs(p-t)>s.scrollOffset&&setTimeout(r,150)},A=function(t){var e=t.key||t.keyCode;(e==="Escape"||e==="Esc"||e===27)&&r()},k=function(){var c,e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=e;return e.background&&(l.style.background=e.background),e.container&&e.container instanceof Object&&(r.container=t({},s.container,e.container)),e.template&&(c=o(e.template)?e.template:document.querySelector(e.template),r.template=c),s=t({},s,r),a.forEach(function(e){e.dispatchEvent(n("medium-zoom:update",{detail:{zoom:i}}))}),i},E=function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return y(t({},s,e))},m=function(){for(var t,n=arguments.length,s=Array(n),e=0;e0?s.reduce(function(e,t){return[].concat(e,_(t))},[]):a,o.forEach(function(e){e.classList.remove("medium-zoom-image"),e.dispatchEvent(n("medium-zoom:detach",{detail:{zoom:i}}))}),a=a.filter(function(e){return o.indexOf(e)===-1}),i},b=function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return a.forEach(function(s){s.addEventListener("medium-zoom:"+e,t,n)}),u.push({type:"medium-zoom:"+e,listener:t,options:n}),i},v=function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return a.forEach(function(s){s.removeEventListener("medium-zoom:"+e,t,n)}),u=u.filter(function(n){return n.type!=="medium-zoom:"+e||n.listener.toString()!==t.toString()}),i},g=function(){var m=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},d=m.target,u=function(){if(n={width:document.documentElement.clientWidth,height:document.documentElement.clientHeight,left:0,top:0,right:0,bottom:0},i=void 0,a=void 0,s.container)if(s.container instanceof Object)n=t({},n,s.container),i=n.width-n.left-n.right-s.margin*2,a=n.height-n.top-n.bottom-s.margin*2;else{var n,C=o(s.container)?s.container:document.querySelector(s.container),c=C.getBoundingClientRect(),_=c.width,y=c.height,v=c.left,g=c.top;n=t({},n,{width:_,height:y,left:v,top:g})}var i=i||n.width-s.margin*2,a=a||n.height-s.margin*2,r=e.zoomedHd||e.original,p=w(r)?i:r.naturalWidth||i,f=w(r)?a:r.naturalHeight||a,l=r.getBoundingClientRect(),b=l.top,j=l.left,h=l.width,u=l.height,O=Math.min(p,i)/h,x=Math.min(f,a)/u,d=Math.min(O,x),E=(-j+(i-h)/2+s.margin+n.left)/d,k=(-b+(a-u)/2+s.margin+n.top)/d,m="scale("+d+") translate3d("+E+"px, "+k+"px, 0)";e.zoomed.style.transform=m,e.zoomedHd&&(e.zoomedHd.style.transform=m)};return new h(function(t){if(d&&a.indexOf(d)===-1){t(i);return}var h,m,f,g,v=function s(){c=!1,e.zoomed.removeEventListener("transitionend",s),e.original.dispatchEvent(n("medium-zoom:opened",{detail:{zoom:i}})),t(i)};if(e.zoomed){t(i);return}if(d)e.original=d;else if(a.length>0)m=a,e.original=m[0];else{t(i);return}e.original.dispatchEvent(n("medium-zoom:open",{detail:{zoom:i}})),p=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0,c=!0,e.zoomed=N(e.original),document.body.appendChild(l),s.template&&(f=o(s.template)?s.template:document.querySelector(s.template),e.template=document.createElement("div"),e.template.appendChild(f.content.cloneNode(!0)),document.body.appendChild(e.template)),document.body.appendChild(e.zoomed),window.requestAnimationFrame(function(){document.body.classList.add("medium-zoom--opened")}),e.original.classList.add("medium-zoom-image--hidden"),e.zoomed.classList.add("medium-zoom-image--opened"),e.zoomed.addEventListener("click",r),e.zoomed.addEventListener("transitionend",v),e.original.getAttribute("data-zoom-src")?(e.zoomedHd=e.zoomed.cloneNode(),e.zoomedHd.removeAttribute("srcset"),e.zoomedHd.removeAttribute("sizes"),e.zoomedHd.src=e.zoomed.getAttribute("data-zoom-src"),e.zoomedHd.onerror=function(){clearInterval(h),console.warn("Unable to reach the zoom image target "+e.zoomedHd.src),e.zoomedHd=null,u()},h=setInterval(function(){e.zoomedHd.complete&&(clearInterval(h),e.zoomedHd.classList.add("medium-zoom-image--opened"),e.zoomedHd.addEventListener("click",r),document.body.appendChild(e.zoomedHd),u())},10)):e.original.hasAttribute("srcset")?(e.zoomedHd=e.zoomed.cloneNode(),e.zoomedHd.removeAttribute("sizes"),e.zoomedHd.removeAttribute("loading"),g=e.zoomedHd.addEventListener("load",function(){e.zoomedHd.removeEventListener("load",g),e.zoomedHd.classList.add("medium-zoom-image--opened"),e.zoomedHd.addEventListener("click",r),document.body.appendChild(e.zoomedHd),u()})):u()})},r=function(){return new h(function(t){if(c||!e.original){t(i);return}var s=function s(){e.original.classList.remove("medium-zoom-image--hidden"),document.body.removeChild(e.zoomed),e.zoomedHd&&document.body.removeChild(e.zoomedHd),document.body.removeChild(l),e.zoomed.classList.remove("medium-zoom-image--opened"),e.template&&document.body.removeChild(e.template),c=!1,e.zoomed.removeEventListener("transitionend",s),e.original.dispatchEvent(n("medium-zoom:closed",{detail:{zoom:i}})),e.original=null,e.zoomed=null,e.zoomedHd=null,e.template=null,t(i)};c=!0,document.body.classList.remove("medium-zoom--opened"),e.zoomed.style.transform="",e.zoomedHd&&(e.zoomedHd.style.transform=""),e.template&&(e.template.style.transition="opacity 150ms",e.template.style.opacity=0),e.original.dispatchEvent(n("medium-zoom:close",{detail:{zoom:i}})),e.zoomed.addEventListener("transitionend",s)})},f=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=t.target;return e.original?r():g({target:n})},j=function(){return s},O=function(){return a},x=function(){return e.original},a=[],u=[],c=!1,p=0,s=F,e={original:null,zoomed:null,zoomedHd:null,template:null};return Object.prototype.toString.call(d)==="[object Object]"?s=d:(d||typeof d=="string")&&m(d),s=t({margin:0,background:"#fff",scrollOffset:40,container:null,template:null},s),l=L(s.background),document.addEventListener("click",M),document.addEventListener("keyup",A),document.addEventListener("scroll",S),window.addEventListener("resize",r),i={open:g,close:r,toggle:f,update:k,clone:E,attach:m,detach:C,on:b,off:v,getOptions:j,getImages:O,getZoomedImage:x},i};function D(n,s){s===void 0&&(s={});var e,t,o=s.insertAt;if(!n||typeof document=="undefined")return;t=document.head||document.getElementsByTagName("head")[0],e=document.createElement("style"),e.type="text/css",o==="top"?t.firstChild?t.insertBefore(e,t.firstChild):t.appendChild(e):t.appendChild(e),e.styleSheet?e.styleSheet.cssText=n:e.appendChild(document.createTextNode(n))}j=".medium-zoom-overlay{position:fixed;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .3s;will-change:opacity}.medium-zoom--opened .medium-zoom-overlay{cursor:pointer;cursor:zoom-out;opacity:1}.medium-zoom-image{cursor:pointer;cursor:zoom-in;transition:transform .3s cubic-bezier(.2,0,.2,1)!important}.medium-zoom-image--hidden{visibility:hidden}.medium-zoom-image--opened{position:relative;cursor:pointer;cursor:zoom-out;will-change:transform}",D(j),b=y,C=!1,f="production",i=!0;function g(e,s){const t=e.getBoundingClientRect(),o={height:e.clientHeight,width:e.clientWidth},n=s.getBoundingClientRect(),i=n.top>=t.top&&n.bottom<=t.top+o.height;i||(e.scrollTop=n.top+e.scrollTop-t.top)}function v(e,s=600){e.style.display="",e.style.opacity="0";let n=+new Date,t=function(){e.style.opacity=(+e.style.opacity+(new Date-n)/s).toString(),n=+new Date,+e.style.opacity<1&&(window.requestAnimationFrame&&requestAnimationFrame(t)||setTimeout(t,16))};t()}e=document.body;function E(){return parseInt(localStorage.getItem("wcTheme")||2)}function l(){return Boolean(window.wc.darkLightEnabled)}function T(){if(!l())return console.debug("User theming disabled."),{isDarkTheme:window.wc.isSiteThemeDark,themeMode:window.wc.isSiteThemeDark?1:0};console.debug("User theming enabled.");let t,n=E();switch(console.debug(`User's theme variation: ${n}`),n){case 0:t=!1;break;case 1:t=!0;break;default:window.matchMedia("(prefers-color-scheme: dark)").matches?t=!0:window.matchMedia("(prefers-color-scheme: light)").matches?t=!1:t=window.wc.isSiteThemeDark;break}return t&&!e.classList.contains("dark")?(console.debug("Applying Wowchemy dark theme"),document.body.classList.add("dark")):!t&&e.classList.contains("dark")&&(console.debug("Applying Wowchemy light theme"),document.body.classList.remove("dark")),{isDarkTheme:t,themeMode:n}}function u(t){if(!l()){console.debug("Cannot change theme - user theming disabled.");return}let e;switch(t){case 0:localStorage.setItem("wcTheme","0"),e=!1,console.debug("User changed theme variation to Light.");break;case 1:localStorage.setItem("wcTheme","1"),e=!0,console.debug("User changed theme variation to Dark.");break;default:localStorage.setItem("wcTheme","2"),window.matchMedia("(prefers-color-scheme: dark)").matches?e=!0:window.matchMedia("(prefers-color-scheme: light)").matches?e=!1:e=window.wc.isSiteThemeDark,console.debug("User changed theme variation to Auto.");break}h(e,t)}function S(s){let e=document.querySelector(".js-set-theme-light"),t=document.querySelector(".js-set-theme-dark"),n=document.querySelector(".js-set-theme-auto");if(e===null)return;switch(s){case 0:e.classList.add("dropdown-item-active"),t.classList.remove("dropdown-item-active"),n.classList.remove("dropdown-item-active");break;case 1:e.classList.remove("dropdown-item-active"),t.classList.add("dropdown-item-active"),n.classList.remove("dropdown-item-active");break;default:e.classList.remove("dropdown-item-active"),t.classList.remove("dropdown-item-active"),n.classList.add("dropdown-item-active");break}}function h(t,r=2,n=!1){const s=document.querySelector("link[title=hl-light]"),o=document.querySelector("link[title=hl-dark]"),i=s!==null||o!==null,a=document.querySelector("script[title=mermaid]")!==null;S(r);const c=new CustomEvent("wcThemeChange",{detail:{isDarkTheme:()=>t}});if(document.dispatchEvent(c),!n&&(t===!1&&!e.classList.contains("dark")||t===!0&&e.classList.contains("dark")))return;t===!1?(n||(Object.assign(document.body.style,{opacity:0,visibility:"visible"}),v(document.body,600)),e.classList.remove("dark"),i&&(console.debug("Setting HLJS theme to light"),s&&(s.disabled=!1),o&&(o.disabled=!0)),a&&(console.debug("Initializing Mermaid with light theme"),n?window.mermaid.initialize({startOnLoad:!0,theme:"default",securityLevel:"loose"}):location.reload())):t===!0&&(n||(Object.assign(document.body.style,{opacity:0,visibility:"visible"}),v(document.body,600)),e.classList.add("dark"),i&&(console.debug("Setting HLJS theme to dark"),s&&(s.disabled=!0),o&&(o.disabled=!1)),a&&(console.debug("Initializing Mermaid with dark theme"),n?window.mermaid.initialize({startOnLoad:!0,theme:"dark",securityLevel:"loose"}):location.reload()))}function A(n){if(!l())return;const s=n.matches;console.debug(`OS dark mode preference changed to ${s?"\u{1F312} on":"\u2600\uFE0F off"}.`);let t=E(),e;t===2&&(window.matchMedia("(prefers-color-scheme: dark)").matches?e=!0:window.matchMedia("(prefers-color-scheme: light)").matches?e=!1:e=window.wc.isSiteThemeDark,h(e,t))}console.debug(`Environment: ${f}`);function m(){let e=document.getElementById("navbar-main"),t=e?e.getBoundingClientRect().height:0;return console.debug("Navbar height: "+t),t}function p(e,t=0){if(e=typeof e=="undefined"||typeof e=="object"?decodeURIComponent(window.location.hash):e,$(e).length){e="#"+$.escapeSelector(e.substring(1));let n=Math.ceil($(e).offset().top-m());$("body").addClass("scrolling"),$("html, body").animate({scrollTop:n},t,function(){$("body").removeClass("scrolling")})}else console.debug("Cannot scroll to target `#"+e+"`. ID not found!")}function O(){let e=$("body"),t=e.data("bs.scrollspy");t&&(t._config.offset=m(),e.data("bs.scrollspy",t),e.scrollspy("refresh"))}function M(){if(window.history.replaceState){let e=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.hash;window.history.replaceState({path:e},"",e)}}window.addEventListener("hashchange",p),$("#navbar-main li.nav-item a.nav-link, .js-scroll").on("click",function(t){let e=this.hash;if(this.pathname===window.location.pathname&&e&&$(e).length&&$(".js-widget-page").length>0){t.preventDefault();let n=Math.ceil($(e).offset().top-m());$("html, body").animate({scrollTop:n},800)}}),$(document).on("click",".navbar-collapse.show",function(e){let t=$(e.target).is("a")?$(e.target):$(e.target).parent();t.is("a")&&t.attr("class")!="dropdown-toggle"&&$(this).collapse("hide")});function F(e,t){f==="production"&&$.getJSON("https://api.github.com/repos/"+t+"/tags").done(function(t){let n=t[0];$(e).append(" "+n.name)}).fail(function(s,e,t){let n=e+", "+t;console.log("Request Failed: "+n)})}function c(){if($("body").hasClass("searching"))$("[id=search-query]").blur(),$("body").removeClass("searching compensate-for-scrollbar"),M(),$("#fancybox-style-noscroll").remove();else{!$("#fancybox-style-noscroll").length&&document.body.scrollHeight>window.innerHeight&&($("head").append('"),$("body").addClass("compensate-for-scrollbar")),$("body").addClass("searching"),$(".search-results").css({opacity:0,visibility:"visible"}).animate({opacity:1},200);let e=document.querySelector(".ais-SearchBox-input");e?e.focus():$("#search-query").focus()}}function P(){$("#TableOfContents").addClass("nav flex-column"),$("#TableOfContents li").addClass("nav-item"),$("#TableOfContents li a").addClass("nav-link"),$("input[type='checkbox'][disabled]").parents("ul").addClass("task-list"),$("table").addClass(".table")}function z(e){return Array.prototype.filter.call(e.parentNode.children,function(t){return t!==e})}$(document).ready(function(){P();let{isDarkTheme:n,themeMode:s}=T();h(n,s,!0),C&&hljs.initHighlighting();let e=document.querySelector(".docs-links .active"),t=document.querySelector(".docs-links");e&&t&&g(t,e)}),$(window).on("load",function(){O();let n=document.querySelectorAll(".projects-container"),r=n.length;window.location.hash&&r===0&&p(decodeURIComponent(window.location.hash),0);let s=document.querySelector(".docs-toc .nav-link.active"),o=document.querySelector(".docs-toc");s&&o&&g(o,s);let t={};document.body.classList.contains("dark")?t.background="rgba(0,0,0,0.9)":t.background="rgba(255,255,255,0.9)",b("[data-zoomable]",t);let a=0;n.forEach(function(e,a){console.debug(`Loading Isotope instance ${a}`);let o,t=e.closest("section"),n="";t.querySelector(".isotope").classList.contains("js-layout-row")?n="fitRows":n="masonry";let i=t.querySelector(".default-project-filter"),s="*";i!==null&&(s=i.textContent),console.debug(`Default Isotope filter: ${s}`),imagesLoaded(e,function(){o=new Isotope(e,{itemSelector:".isotope-item",layoutMode:n,masonry:{gutter:20},filter:s});let i=t.querySelectorAll(".project-filters a");i.forEach(e=>e.addEventListener("click",n=>{n.preventDefault();let t=e.getAttribute("data-filter");console.debug(`Updating Isotope filter to ${t}`),o.arrange({filter:t}),e.classList.remove("active"),e.classList.add("active");let s=z(e);s.forEach(e=>{e.classList.remove("active"),e.classList.remove("all")})})),l()})});function l(){a++,a===r&&(console.debug(`All Portfolio Isotope instances loaded.`),window.location.hash&&p(decodeURIComponent(window.location.hash),0))}let e=".js-github-release";$(e).length>0&&F(e,$(e).data("repo")),document.addEventListener("keyup",e=>{if(e.code==="Escape"){const e=document.body;e.classList.contains("searching")&&c()}if(e.key==="/"){let t=document.hasFocus()&&document.activeElement!==document.body&&document.activeElement!==document.documentElement&&document.activeElement||null,n=t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement;i&&!n&&(e.preventDefault(),c())}}),i&&$(".js-search").click(function(e){e.preventDefault(),c()}),$('[data-toggle="tooltip"]').tooltip()}),d=document.querySelector(".js-set-theme-light"),r=document.querySelector(".js-set-theme-dark"),a=document.querySelector(".js-set-theme-auto"),d&&r&&a&&(d.addEventListener("click",e=>{e.preventDefault(),u(0)}),r.addEventListener("click",e=>{e.preventDefault(),u(1)}),a.addEventListener("click",e=>{e.preventDefault(),u(2)})),x=window.matchMedia("(prefers-color-scheme: dark)"),x.addEventListener("change",e=>{A(e)}),$("body").on("mouseenter mouseleave",".dropdown",function(n){var e=$(n.target).closest(".dropdown"),t=$(".dropdown-menu",e);e.addClass("show"),t.addClass("show"),setTimeout(function(){e[e.is(":hover")?"addClass":"removeClass"]("show"),t[e.is(":hover")?"addClass":"removeClass"]("show")},300)}),$(window).resize(function(){clearTimeout(k),k=setTimeout(O,200)})})(),(()=>{var o={authors:"Authors",event:"Events",post:"Posts",project:"Projects",publication:"Publications",slides:"Slides"},i={no_results:"No results found",placeholder:"Search...",results:"results found"},n={indexURI:"/index.json",minLength:1,threshold:.3},s={shouldSort:!0,includeMatches:!0,tokenize:!0,threshold:n.threshold,location:0,distance:100,maxPatternLength:32,minMatchCharLength:n.minLength,keys:[{name:"title",weight:.99},{name:"summary",weight:.6},{name:"authors",weight:.5},{name:"content",weight:.2},{name:"tags",weight:.5},{name:"categories",weight:.5}]},e=60;function a(e){return decodeURIComponent((location.search.split(e+"=")[1]||"").split("&")[0]).replace(/\+/g," ")}function r(e){history.replaceState&&window.history.replaceState({path:e},"",e)}function t(t,n){let e=$("#search-query").val();if(e.length<1&&($("#search-hits").empty(),$("#search-common-queries").show()),!t&&e.length0?($("#search-hits").append('

'+e.length+" "+i.results+"

"),l(t,e)):$("#search-hits").append('
'+i.no_results+"
")}function l(t,n){$.each(n,function(l,n){let i=n.item.section,a="",r="",c=[];["publication","event"].includes(i)?a=n.item.summary:a=n.item.content,s.tokenize?c.push(t):$.each(n.matches,function(n,t){if(t.key=="content"){let n=t.indices[0][0]-e>0?t.indices[0][0]-e:0,s=t.indices[0][1]+e