1!function(){"use strict";var e,t={4492:function(e,t,s){var o=Drupal,n=s.n(o),i=once,r=s.n(i),u=s(6345);var l=function(e){return e.toLowerCase().replace(" ","-")},a=s(9807);function h(e,t){let s=e.nextElementSibling;if(!t)return s;for(;s;){if(s.matches(t))return s;s=s.nextElementSibling}return null}class d extends u.A{constructor(e,t,{siteLogoClass:s=".c-site-logo",donateButtonClass:o=".c-button--donate",searchBlockClass:n=".c-search-form",utilityNavClass:i=".c-menu--utility",toggleSubnav:r=!0,mobileMenuBreakpoint:u=`(min-width: ${a.LO["mobile-menu"]})`,classPrefix:l=""}={}){super(null),this.menu=e,this.navbar=document.createElement("div"),this.navbar.classList.add("c-mobile-menu__navbar"),this.siteLogo=s?t.querySelector(s):null,this.donateButton=o?t.querySelector(o):null,this.searchBlock=n?t.querySelector(n):null,this.utilityNav=i?t.querySelector(i):null,this.options={toggleSubnav:r,mobileMenuBreakpoint:u,classPrefix:l},this.toggleMenuDisplay=this.toggleMenuDisplay.bind(this)}createMenuOverlay(){const e=document.createElement("nav");return e.setAttribute("aria-modal","true"),e.setAttribute("id","mobile-menu"),e.classList.add("c-mobile-menu"),this.menu.insertAdjacentElement("afterend",e)}createCloseButton(){const e=document.createElement("div");e.classList.add("c-mobile-menu__navbar-close");const t=document.createElement("button");return t.classList.add("c-hamburger-button","c-hamburger-button--close"),t.setAttribute("aria-controls",this.overlay.id),t.setAttribute("aria-expanded","true"),t.innerHTML='\n <span class="u-visually-hidden">Close Menu</span>\n <span class="c-hamburger-button__line"></span>\n <span class="c-hamburger-button__line"></span>\n <span class="c-hamburger-button__line"></span>',e.appendChild(t),this.navbar.insertAdjacentElement("beforeend",e)}cloneBlock(e,t=""){const s=e.cloneNode(!0);t&&s.classList.add(t),s.id&&(s.id=`${s.id}-mobile`);const o=s.querySelectorAll("[id]");o.length&&o.forEach(e=>{e.id=`${e.id}-mobile`});const n=s.querySelectorAll("[for]");return n.length&&n.forEach(e=>{const t=e.getAttribute("for");e.setAttribute("for",`${t}-mobile`)}),s}setupToggleButton(e,t){e.classList.add("c-mobile-menu__subnav-arrow"),e.setAttribute("aria-controls",t.id),e.setAttribute("aria-expanded","false"),e.innerHTML='<span class="u-visually-hidden">Toggle Subnav</span>'}createToggleButton(e){const t=document.createElement("button");return this.setupToggleButton(t,e),e.insertAdjacentElement("beforebegin",t)}updateToggleButton(e,t){return e.classList.remove(`${this.options.classPrefix}__subnav-toggle`),this.setupToggleButton(e,t),e}setupSubnav(e,t,s){let o;o="BUTTON"===e.tagName?e:s?this.updateToggleButton(s,t):this.createToggleButton(t),t.style.display="none",o.addEventListener("click",e=>{e.preventDefault(),"true"===o.getAttribute("aria-expanded")?(t.style.display="none",o.setAttribute("aria-expanded","false"),t.classList.remove("is-open"),this.enableTab(this.overlay)):(t.style.display="block",o.setAttribute("aria-expanded","true"),t.classList.add("is-open"),t.hidden=!1,t.querySelector(".c-mobile-menu__link").focus(),this.enableTab(this.overlay))})}cloneMenu(e,t=""){const s=e.cloneNode(!0);t&&(s.classList.remove(`${this.options.classPrefix}`),s.classList.add(t));const o=this.options.toggleSubNav?"c-mobile-menu__menu--toggle-subnav":"c-mobile-menu__menu--show-subnav";s.classList.add(o);const n=s.querySelectorAll(`.${this.options.classPrefix}__item`);n.length&&n.forEach(e=>{e.classList.remove(`${this.options.classPrefix}__item`),e.classList.add("c-mobile-menu__item")});s.querySelectorAll(`.${this.options.classPrefix}__link`).forEach((e,t)=>{e.classList.remove(`${this.options.classPrefix}__link`),e.classList.add("c-mobile-menu__link"),e.hasAttribute("aria-controls")&&(e.setAttribute("aria-controls",`mobile-menu-${t+1}`),e.nextElementSibling.id=`mobile-menu-${t+1}`)});const i=s.querySelectorAll(`.${this.options.classPrefix}__section`);i.length&&i.forEach(e=>{e.classList.remove(`${this.options.classPrefix}__section`),e.classList.add("c-mobile-menu__section");const t=e.querySelector(`.${this.options.classPrefix}__section-inner`);t&&(t.classList.remove(`${this.options.classPrefix}__section-inner`),t.classList.add("c-mobile-menu__section-inner"));const s=e.querySelector(`.${this.options.classPrefix}__overview`);s&&s.classList.remove(`${this.options.classPrefix}__overview`)});const r=s.querySelectorAll(`.${this.options.classPrefix}__subnav`);return r.length&&r.forEach((e,t)=>{const s=e.closest(".c-mobile-menu__item").querySelector(".c-mobile-menu__link");e.classList.add("c-mobile-menu__subnav"),e.classList.remove(`${this.options.classPrefix}__subnav`),e.id=l(`mobile-menu-${s.innerText.trim()}${t||""}`);const o=h(s,`.${this.options.classPrefix}__subnav-toggle`);if(this.options.toggleSubnav){const e=h(s);e&&this.setupSubnav(s,e,o)}else o&&o.parentElement.removeChild(o)}),s}toggleMenuDisplay(){window.matchMedia(this.options.mobileMenuBreakp
1oint).matches?(this.closeMenu(),this.menuButton.style.display="none",this.searchBlock&&(this.searchBlock.style.display=""),this.menu.style.display="",this.utilityNav&&(this.utilityNav.style.display="")):(this.menuButton.style.display="block",this.searchBlock&&(this.searchBlock.style.display="none"),this.menu.style.display="none",this.utilityNav&&(this.utilityNav.style.display="none"),this.closeMenu())}enableTab(e){if(super.enableTab(e),this.options.toggleSubnav){let t=e.querySelectorAll(".c-mobile-menu__section");t.length||(t=e.querySelectorAll(".c-mobile-menu__subnav")),t.forEach(e=>{if(e.hidden||!e.classList.contains("is-open")){e.querySelectorAll("button, [href], input, select, textarea, [tabindex]").forEach(e=>{e.setAttribute("tabindex","-1")})}})}}init(){if(!this.menu)return;this.overlay=this.overlay??this.createMenuOverlay();const e=document.createElement("div");e.classList.add("c-mobile-menu__navbar-logo"),this.siteLogo&&e.appendChild(this.cloneBlock(this.siteLogo,"c-mobile-menu__site-logo")),this.navbar.appendChild(e),super.init();const t=document.createElement("div");t.classList.add("c-mobile-menu__navbar-donate"),this.donateButton&&t.appendChild(this.cloneBlock(this.donateButton,"c-mobile-menu__donate-button")),this.navbar.appendChild(t),this.overlay.appendChild(this.navbar);const s=document.createElement("div");s.classList.add("c-mobile-menu__content"),s.appendChild(this.cloneMenu(this.menu,"c-mobile-menu__menu")),this.utilityNav&&s.appendChild(this.cloneMenu(this.utilityNav,"c-mobile-menu__menu")),this.searchBlock&&s.appendChild(this.cloneBlock(this.searchBlock,"c-mobile-menu__search")),this.overlay.appendChild(s),this.toggleMenuDisplay();let o=!1,n=window.innerWidth;window.addEventListener("resize",()=>{const e=window.innerWidth;n!==e&&(!1!==o&&clearTimeout(o),o=setTimeout(this.toggleMenuDisplay,200),n=e)})}}var c=d;var m=class{constructor(e,{useArrowKeys:t=!0,displayMenuOnHover:s=!0,submenuSelector:o=".c-dropdown-menu__subnav"}={}){this.domNode=e,this.menuItems=[],this.firstItem=null,this.lastItem=null,this.hasFocus=!1,this.hasHover=!1,this.isMenubar=!1,this.options={useArrowKeys:t,displayMenuOnHover:s,submenuSelector:o}}createMenuItem(e){}isValidTag(e){return"A"===e||"BUTTON"===e}init(){if(this.domNode.children.length>0){Array.from(this.domNode.children).forEach(e=>{const t=e.firstElementChild;if(t&&this.isValidTag(t.tagName)){"BUTTON"===t.tagName&&(this.options.displayMenuOnHover=!1);const e=this.createMenuItem(t);e.init(),this.menuItems.push(e)}})}const e=this.menuItems.length;e>0&&([this.firstItem]=this.menuItems,this.lastItem=this.menuItems[e-1])}destroy(){this.menuItems.forEach(e=>{e.destroy()})}setFocus(e){this.hasFocus=e}setHover(e){this.hasHover=e}setFocusToItem(e){e.domNode.focus()}setFocusToFirstItem(){this.setFocusToItem(this.firstItem)}setFocusToLastItem(){this.setFocusToItem(this.lastItem)}setFocusToPreviousItem(e){let t;if(e===this.firstItem)t=this.lastItem;else{const s=this.menuItems.indexOf(e);t=this.menuItems[s-1]}t&&this.setFocusToItem(t)}setFocusToNextItem(e){let t;if(e===this.lastItem)t=this.firstItem;else{const s=this.menuItems.indexOf(e);t=this.menuItems[s+1]}t&&this.setFocusToItem(t)}};var p=class{constructor(e,t){this.menu=t,this.domNode=e,this.popupMenu=!1,this.isMenubarItem=!1,this.hasFocus=!1,this.hasHover=!1,this.handleKeydown=this.handleKeydown.bind(this),this.handleFocus=this.handleFocus.bind(this),this.handleBlur=this.handleBlur.bind(this),this.handleMouseover=this.handleMouseover.bind(this),this.handleMouseout=this.handleMouseout.bind(this)}init(){this.domNode.addEventListener("keydown",this.handleKeydown),this.domNode.addEventListener("focus",this.handleFocus),this.domNode.addEventListener("blur",this.handleBlur),this.domNode.addEventListener("mouseover",this.handleMouseover),this.domNode.addEventListener("mouseout",this.handleMouseout)}destroy(){this.domNode.removeEventListener("keydown",this.handleKeydown),this.domNode.removeEventListener("focus",this.handleFocus),this.domNode.removeEventListener("blur",this.handleBlur),this.domNode.removeEventListener("mouseover",this.handleMouseover),this.domNode.removeEventListener("mouseout",this.handleMouseout)}setExpanded(e){e?this.domNode.setAttribute("aria-expanded","true"):this.domNode.setAttribute("aria-expanded","fal
1se")}getBoundaries(){return this.domNode.getBoundingClientRect()}getIsMenubarItem(){return this.isMenubarItem}getHover(){return this.hasHover}handleFocus(){this.menu.setFocus(!0)}handleBlur(e){this.menu.setFocus(!1)}handleMouseover(){this.hasHover=!0,this.popupMenu&&this.menu.options.displayMenuOnHover&&(this.popupMenu.setHover(!0),this.popupMenu.open())}handleMouseout(){this.hasHover=!1,this.popupMenu&&this.menu.options.displayMenuOnHover&&(this.popupMenu.setHover(!1),setTimeout(this.popupMenu.close.bind(this.popupMenu,!1),300))}handleKeydown(e){}focusOnSelf(){this.domNode.focus()}focusOnPreviousSibling(){this.menu.setFocusToPreviousItem(this)}focusOnNextSibling(){this.menu.setFocusToNextItem(this)}};var v=class extends p{constructor(e,t){super(e,t),this.menu=t,this.handleClick=this.handleClick.bind(this),this.handleToggleClick=this.handleToggleClick.bind(this),this.handleToggleKeydown=this.handleToggleKeydown.bind(this)}init(){super.init();const e=this.domNode.parentElement.querySelector(this.menu.options.submenuSelector);e&&(this.menu.options.displayMenuOnHover||(this.toggleButton=document.createElement("button"),this.toggleButton.innerHTML='<span class="u-visually-hidden">Toggle Subnav</span>',this.toggleButton.classList.add("c-dropdown-menu__subnav-toggle"),this.toggleButton.addEventListener("click",this.handleToggleClick),this.toggleButton.addEventListener("keydown",this.handleToggleKeydown),this.toggleButton.addEventListener("focus",this.handleFocus),this.toggleButton.addEventListener("blur",this.handleBlur),this.domNode.classList.remove("has-subnav"),e.insertAdjacentElement("beforebegin",this.toggleButton)),this.popupMenu=new b(e,this,{displayMenuOnHover:this.menu.options.displayMenuOnHover}),this.popupMenu.init()),this.domNode.addEventListener("click",this.handleClick)}destroy(){super.destroy(),this.popupMenu&&this.popupMenu.destroy(),this.domNode.removeEventListener("click",this.handleClick),this.toggleButton&&(this.toggleButton.removeEventListener("click",this.handleToggleClick),this.toggleButton.removeEventListener("keydown",this.handleToggleKeydown),this.toggleButton.parentElement.removeChild(this.toggleButton))}handleKeydown(e){const{currentTarget:t,key:s}=e;let o,n=!1;if(this.menu.options.useArrowKeys||" "===this.key||"Spacebar"===this.key||"Escape"===this.key){switch(s){case" ":case"Spacebar":this.popupMenu?(this.popupMenu.open(),this.popupMenu.setFocusToFirstItem()):(o=new MouseEvent("click",{view:window,bubbles:!0,cancelable:!0}),t.dispatchEvent(o)),n=!0;break;case"ArrowUp":this.menu.setFocusToPreviousItem(this),n=!0;break;case"ArrowDown":this.menu.setFocusToNextItem(this),n=!0;break;case"ArrowRight":this.menu.setFocusToController("next"),this.menu.close(!0),n=!0;break;case"ArrowLeft":this.popupMenu?(this.popupMenu.open(),this.popupMenu.setFocusToFirstItem()):(this.menu.setFocusToController("previous"),this.menu.close(!0)),n=!0;break;case"Home":case"PageUp":this.menu.setFocusToFirstItem(),n=!0;break;case"End":case"PageDown":this.menu.setFocusToLastItem(),n=!0;break;case"Escape":this.menu.setFocusToController(""),this.menu.close(!0),n=!0}n&&(e.stopPropagation(),e.preventDefault())}}handleClick(){"BUTTON"===this.domNode.tagName&&(this.menu.setFocusToController(""),this.menu.close(!0))}handleBlur(e){const{relatedTarget:t,target:s}=e;t&&(this.domNode.parentElement.contains(t)||t?.parentElement?.nextElementSibling===s)||(super.handleBlur(e),setTimeout(this.menu.close.bind(this.menu,!1),300))}handleMouseover(){this.menu.setHover(!0),this.menu.options.displayMenuOnHover&&this.menu.open(),super.handleMouseover()}handleMouseout(){if(super.handleMouseout(),this.menu.setHover(!1),this.menu.options.displayMenuOnHover){setTimeout(this.menu.close.bind(this.menu,!1),300);const e=this.menu.controller.menu;e&&!e.isMenubar&&setTimeout(e.close.bind(e,!1),300)}}setExpanded(e){const t=this.toggleButton?this.toggleButton:this.domNode;e?t.setAttribute("aria-expanded","true"):t.setAttribute("aria-expanded","false")}handleToggleClick(){"true"===this.toggleButton.getAttribute("aria-expanded")?this.popupMenu.close():this.popupMenu.open()}handleToggleKeydown(e){const{key:t}=e;"ArrowLeft"!==t&&"ArrowRight"!==t||this.handleToggleClick()}};var b=class extends m{constructor(e,t,{useArrowKeys:s=!0,displayMenuOnHover:o=!0,submenuSelector:n=".c-dropdown-menu__subnav"}={}){super(e,{useArrowKeys:s,displayMenuOnHover:o,submenuSelector:n}),this.controller=t,this.handleMouseout=this.handleMouseout.bind(this),this.handleMouseover=this.handleMouseover.bind(this)}createMenuItem(e){return new v(e,this)}init(){super.init(),this.domNode.addEventListener("mouseover",this.handleMouseover),this.domNode.addEventListener("mouseout",this.handleMouseout)}destroy(){super.destroy(),this.domNode.removeEventListener("mouseover",this.handleMouseover),this.domNode.removeEventListener("mouseout",this.handleMouseover)}setFocusToController(e){let t=e;"string"!=typeof t&&(t=""),""!==t?"previous"===t?this.controller.focusOnPreviousSibling():"next"===t&&this.controller.focusOnNextSibling():this.controller&&this.controller.focusOnSelf()}open(){const e=this.controller.getBoundaries();this.controller.getIsMenubarItem()?(this.domNode.style.display="block",this.domNode.style.position="absolute",this.domNode.style.top=e.height-1+"px",this.domNode.style.zIndex=a.Mu.drawer.toString()):(this.domNode.parentNode.style.position="relative",this.domNode.style.display="block",this.domNode.style.position="absolute",this.domNode.style.right=`${e.width+8}px`,this.domNode.style.zIndex=a.Mu.drawer.toString()),this.controller.setExpanded(!0)}close(e){let t=this.controller.getHover(),{hasFocus:s}=this;const o=[];for(let e=0;e<this.menuItems.length;e+=1){const t=this.menuItems[e];t.popupMenu&&(s=s||t.popupMenu.hasFocus,o.push(t.popupMenu))}this.controller.getIsMenubarItem()||(t=!1),!e&&(s||this.hasHover||t)||(o.length&&o.forEach(e
1=>e.close(!0)),this.domNode.style.display="none",this.domNode.style.zIndex="0",this.controller.setExpanded(!1))}handleMouseover(){this.controller.menu.options.displayMenuOnHover&&(this.hasHover=!0)}handleMouseout(){this.controller.menu.options.displayMenuOnHover&&(this.hasHover=!1)}};var g=class extends p{constructor(e,t){super(e,t),this.isMenubarItem=!0,this.handleClick=this.handleClick.bind(this)}init(){super.init();const e=this.domNode.parentElement.querySelector(this.menu.options.submenuSelector);e&&(this.popupMenu=new b(e,this,this.menu.options),this.popupMenu.init()),"BUTTON"===this.domNode.tagName&&this.domNode.addEventListener("click",this.handleClick)}destroy(){super.destroy(),this.popupMenu&&this.popupMenu.destroy(),"BUTTON"===this.domNode.tagName&&this.domNode.removeEventListener("click",this.handleClick)}handleKeydown(e){const{key:t}=e;let s=!1;if(this.menu.options.useArrowKeys||" "===this.key||"Spacebar"===this.key||"Escape"===this.key){switch(t){case" ":case"Spacebar":case"ArrowDown":this.popupMenu&&(this.popupMenu.open(),this.popupMenu.setFocusToFirstItem()),s=!0;break;case"ArrowLeft":this.menu.setFocusToPreviousItem(this),s=!0;break;case"ArrowRight":this.menu.setFocusToNextItem(this),s=!0;break;case"ArrowUp":this.popupMenu&&(this.popupMenu.open(),this.popupMenu.setFocusToLastItem()),s=!0;break;case"Home":case"PageUp":this.menu.setFocusToFirstItem(),s=!0;break;case"End":case"PageDown":this.menu.setFocusToLastItem(),s=!0;break;case"Tab":case"Escape":this.popupMenu&&this.popupMenu.close(!0)}s&&(e.stopPropagation(),e.preventDefault())}}handleClick(e){e.preventDefault(),this.popupMenu&&("true"===this.domNode.getAttribute("aria-expanded")?this.popupMenu.close(!0):(this.menu.menuItems.forEach(e=>{e.popupMenu&&e.popupMenu.close()}),this.popupMenu.open()))}};var y=class extends m{constructor(e,{useArrowKeys:t=!0,displayMenuOnHover:s=!0,submenuSelector:o=".c-dropdown-menu__subnav"}={}){super(e,{useArrowKeys:t,displayMenuOnHover:s,submenuSelector:o});const n="Menubar constructor argument menuBarNode";if(!(e instanceof Element))throw new TypeError(`${n} is not a Dom Element`);if(0===e.childElementCount)throw new Error(`${n} does not have element children`);let i=e.firstElementChild;for(;i;){const e=i.firstElementChild;if(i&&e&&!this.isValidTag(e.tagName))throw new Error(`${n} has child elements that are not A or Button elements. If you need to create a non-linked menu item within your menu, use '<button>' instead of '<nolink>' in the link field.`);i=i.nextElementSibling}this.isMenubar=!0}createMenuItem(e){return new g(e,this)}};n().behaviors.dropdownMenu={attach(e){r()("dropdown-menu",".c-dropdown-menu",e).forEach(t=>{new y(t).init();new c(t,e,{classPrefix:"c-dropdown-menu"}).init()})}}}},s={};function o(e){var n=s[e];if(void 0!==n)return n.exports;var i=s[e]={exports:{}};return t[e].call(i.exports,i,i.exports,o),i.exports}o.m=t,e=[],o.O=function(t,s,n,i){if(!s){var r=1/0;for(h=0;h<e.length;h++){s=e[h][0],n=e[h][1],i=e[h][2];for(var u=!0,l=0;l<s.length;l++)(!1&i||r>=i)&&Object.keys(o.O).every(function(e){return o.O[e](s[l])})?s.splice(l--,1):(u=!1,i<r&&(r=i));if(u){e.splice(h--,1);var a=n();void 0!==a&&(t=a)}}return t}i=i||0;for(var h=e.length;h>0&&e[h-1][2]>i;h--)e[h]=e[h-1];e[h]=[s,n,i]},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,{a:t}),t},o.d=function(e,t){for(var s in t)o.o(t,s)&&!o.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:t[s]})},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.j=1746,function(){var e={1746:0};o.O.j=function(t){return 0===e[t]};var t=function(t,s){var n,i,r=s[0],u=s[1],l=s[2],a=0;if(r.some(function(t){return 0!==e[t]})){for(n in u)o.o(u,n)&&(o.m[n]=u[n]);if(l)var h=l(o)}for(t&&t(s);a<r.length;a++)i=r[a],o.o(e,i)&&e[i]&&e[i][0](),e[i]=0;return o.O(h)},s=self.webpackChunkgesso=self.webpackChunkgesso||[];s.forEach(t.bind(null,0)),s.push=t.bind(null,s.push.bind(s))}();var n=o.O(void 0,[5202],function(){return o(4492)});n=o.O(n)}();
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.