1(function(){function ready(fn){if(document.readyState!=='loading'){fn()}else{document.addEventListener('DOMContentLoaded',fn)}} 2ready(function(){var hdr=document.querySelector('.escx');if(hdr){var onScroll=function(){hdr.classList.toggle('escx--scrolled',window.scrollY>4)};window.addEventListener('scroll',onScroll,{passive:!0});onScroll()} 3var sBtn=document.getElementById('escxSearchBtn');var sRow=document.getElementById('escxSearch');if(sBtn&&sRow){sBtn.addEventListener('click',function(){sRow.classList.toggle('escx--open');var i=sRow.querySelector('input');if(i&&sRow.classList.contains('escx--open'))i.focus();})} 4var bg=document.getElementById('escxDbg');var dw=document.getElementById('escxDrawer');var burger=document.getElementById('escxBurger');var close=document.getElementById('escxDclose');var lastFocus=null;function focusables(){if(!dw)return[];return[].slice.call(dw.querySelectorAll('a[href],button,summary,input,[tabindex]:not([tabindex="-1"])')).filter(function(el){return el.offsetParent!==null})} 5function onKey(e){if(e.key==='Escape'){shut();return} 6if(e.key!=='Tab')return;var f=focusables();if(!f.length)return;var first=f[0],last=f[f.length-1];if(e.shiftKey&&document.activeElement===first){e.preventDefault();last.focus()}else if(!e.shiftKey&&document.activeElement===last){e.preventDefault();first.focus()}} 7function open(){lastFocus=document.activeElement;if(bg)bg.classList.add('escx--open');if(dw){dw.classList.add('escx--open');var f=focusables();if(f.length)f[0].focus();} 8document.addEventListener('keydown',onKey)} 9function shut(){if(bg)bg.classList.remove('escx--open');if(dw)dw.classList.remove('escx--open');document.removeEventListener('keydown',onKey);if(lastFocus&&lastFocus.focus)lastFocus.focus();} 10if(burger)burger.addEventListener('click',open);if(close)close.addEventListener('click',shut);if(bg)bg.addEventListener('click',shut);})})()
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.