(function(jtd,undefined){jtd.addEvent=function(el,type,handler){if(el.attachEvent)el.attachEvent("on"+type,handler);else el.addEventListener(type,handler)};jtd.removeEvent=function(el,type,handler){if(el.detachEvent)el.detachEvent("on"+type,handler);else el.removeEventListener(type,handler)};jtd.onReady=function(ready){if(document.readyState!="loading")ready();else if(document.addEventListener)document.addEventListener("DOMContentLoaded",ready);else document.attachEvent("onreadystatechange",(function(){if(document.readyState=="complete")ready()}))};function makeClickToEdit(){const el=document.getElementById("main-content");if(!el.dataset||!el.dataset.sourceFile){console.log("no source file");return}const sourceFile=el.dataset.sourceFile;console.log(sourceFile);el.addEventListener("click",(function(event){if(!event.target.dataset)return;if(event.shiftKey&&event.metaKey){const sourceLine=event.target.dataset.sourceLine;console.log(sourceLine);const link=`vscode://file/${sourceFile}:${sourceLine}`;console.log(link);window.location=link}}))}function initNav(){jtd.addEvent(document,"click",(function(e){var target=e.target;while(target&&!(target.classList&&target.classList.contains("nav-list-expander"))){target=target.parentNode}if(target){e.preventDefault();target.parentNode.classList.toggle("active")}}));const siteNav=document.getElementById("site-nav");const mainHeader=document.getElementById("main-header");const menuButton=document.getElementById("menu-button");jtd.addEvent(menuButton,"click",(function(e){e.preventDefault();if(menuButton.classList.toggle("nav-open")){siteNav.classList.add("nav-open");mainHeader.classList.add("nav-open")}else{siteNav.classList.remove("nav-open");mainHeader.classList.remove("nav-open")}}))}function initSearch(){var index;var docs;var itemsDone=0;function callSearchLoadedIfAllItemsLoaded(){itemsDone+=1;if(itemsDone===2){searchLoaded(index,docs)}}var request1=new XMLHttpRequest;request1.open("GET","/assets/js/lunr-index.json",true);request1.onload=function(){if(request1.status>=200&&request1.status<400){var data=JSON.parse(request1.responseText);index=lunr.Index.load(data);callSearchLoadedIfAllItemsLoaded()}else{console.log("Error loading lunr. Request status:"+request1.status)}};var request2=new XMLHttpRequest;request2.open("GET","/assets/js/search-data.json",true);request2.onload=function(){if(request2.status>=200&&request2.status<400){console.log("request2",request2.status);docs=JSON.parse(request2.response);callSearchLoadedIfAllItemsLoaded()}else{console.log("Error loading docs for search. Request status:"+request2.status)}};request1.onerror=function(){console.log("There was a connection error")};request2.onerror=function(){console.log("There was a connection error")};request1.send();request2.send()}function searchLoaded(index,docs){var index=index;var docs=docs;var searchInput=document.getElementById("search-input");var searchResults=document.getElementById("search-results");var mainHeader=document.getElementById("main-header");var currentInput;var currentSearchIndex=0;function showSearch(){document.documentElement.classList.add("search-active")}function hideSearch(){document.documentElement.classList.remove("search-active")}function update(){currentSearchIndex++;var input=searchInput.value;if(input===""){hideSearch()}else{showSearch();window.scroll(0,-1);setTimeout((function(){window.scroll(0,0)}),0)}if(input===currentInput){return}currentInput=input;searchResults.innerHTML="";if(input===""){return}var results=index.query((function(query){var tokens=lunr.tokenizer(input);query.term(tokens,{boost:10});query.term(tokens,{wildcard:lunr.Query.wildcard.TRAILING})}));if(results.length==0&&input.length>2){var tokens=lunr.tokenizer(input).filter((function(token,i){return token.str.length<20}));if(tokens.length>0){results=index.query((function(query){query.term(tokens,{editDistance:Math.round(Math.sqrt(input.length/2-1))})}))}}if(results.length==0){var noResultsDiv=document.createElement("div");noResultsDiv.classList.add("search-no-result");noResultsDiv.innerText="No results found";searchResults.appendChild(noResultsDiv)}else{var resultsList=document.createElement("ul");resultsList.classList.add("search-results-list");searchResults.appendChild(resultsList);addResults(resultsList,results,0,10,100,currentSearchIndex)}function addResults(resultsList,results,start,batchSize,batchMillis,searchIndex){if(searchIndex!=currentSearchIndex){return}for(var i=start;i';resultTitle.appendChild(resultDoc);var resultDocTitle=document.createElement("div");resultDocTitle.classList.add("search-result-doc-title");resultDocTitle.innerHTML=doc.doc;resultDoc.appendChild(resultDocTitle);var resultDocOrSection=resultDocTitle;if(doc.doc!=doc.title){resultDoc.classList.add("search-result-doc-parent");var resultSection=document.createElement("div");resultSection.classList.add("search-result-section");resultSection.innerHTML=doc.title;resultTitle.appendChild(resultSection);resultDocOrSection=resultSection}var metadata=result.matchData.metadata;var titlePositions=[];var contentPositions=[];for(var j in metadata){var meta=metadata[j];if(meta.title){var positions=meta.title.position;for(var k in positions){titlePositions.push(positions[k])}}if(meta.content){var positions=meta.content.position;for(var k in positions){var position=positions[k];var previewStart=position[0];var previewEnd=position[0]+position[1];var ellipsesBefore=true;var ellipsesAfter=true;for(var k=0;k<5;k++){var nextSpace=doc.content.lastIndexOf(" ",previewStart-2);var nextDot=doc.content.lastIndexOf(". ",previewStart-2);if(nextDot>=0&&nextDot>nextSpace){previewStart=nextDot+1;ellipsesBefore=false;break}if(nextSpace<0){previewStart=0;ellipsesBefore=false;break}previewStart=nextSpace+1}for(var k=0;k<10;k++){var nextSpace=doc.content.indexOf(" ",previewEnd+1);var nextDot=doc.content.indexOf(". ",previewEnd+1);if(nextDot>=0&&nextDot0){titlePositions.sort((function(p1,p2){return p1[0]-p2[0]}));resultDocOrSection.innerHTML="";addHighlightedText(resultDocOrSection,doc.title,0,doc.title.length,titlePositions)}if(contentPositions.length>0){contentPositions.sort((function(p1,p2){return p1.highlight[0]-p2.highlight[0]}));var contentPosition=contentPositions[0];var previewPosition={highlight:[contentPosition.highlight],previewStart:contentPosition.previewStart,previewEnd:contentPosition.previewEnd,ellipsesBefore:contentPosition.ellipsesBefore,ellipsesAfter:contentPosition.ellipsesAfter};var previewPositions=[previewPosition];for(var j=1;j