1(()=>{const e=window.matchMedia("(max-width: 760px)");function t(){const t=new Map;function n(e){t.forEach(({note:t,toggle:n},a)=>{a!==e&&(t.classList.remove("is-expanded"),n.classList.remove("is-expanded"),n.setAttribute("aria-expanded","false"))})}function a(e,t){e.classList.add("is-expanded"),t.classList.add("is-expanded"),t.setAttribute("aria-expanded","true"),e.scrollIntoView({block:"nearest",behavior:"smooth"})}function s(s){if(!e.matches)return;s.preventDefault();const o=s.currentTarget.dataset.marginnoteTarget,i=t.get(o);if(!i)return;const{note:d,toggle:r}=i;!d.classList.contains("is-expanded")?(n(o),a(d,r)):function(e,t){e.classList.remove("is-expanded"),t.classList.remove("is-expanded"),t.setAttribute("aria-expanded","false")}(d,r)}function o(){if(!e.matches)return;const s=window.location.hash;if(!s)return;const o=decodeURIComponent(s.slice(1)),i=t.get(o);i&&(n(o),a(i.note,i.toggle))}document.querySelectorAll("sup.footnote-ref > a.footnote-ref-link").forEach(e=>{const n=e.getAttribute("href")||"";if(!n.startsWith("#"))return;const a=decodeURIComponent(n.slice(1)),o=document.getElementById(a);o&&(e.classList.add("marginnote-toggle"),e.setAttribute("aria-controls",a),e.setAttribute("aria-expanded","false"),function(e,n){e&&n&&(e.dataset.marginnoteTarget=n.id,t.set(n.id,{note:n,toggle:e}),e.addEventListener("click",s))}(e,o))}),o(),window.addEventListener("hashchange",o),e.addEventListener("change",()=>{e.matches||t.forEach(({note:e,toggle:t})=>{e.classList.remove("is-expanded"),t.classList.remove("is-expanded"),t.setAttribute("aria-expanded","false")})})}"loading"===document.readyState?document.addEventListener("DOMContentLoaded",t):t()})();
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.