function parseNovaSheets(){let e=document.querySelectorAll('link[rel="novasheet"]'),t=[];for(let n of e)t.push(n.href);let n=[];for(let e of t)try{let t=new XMLHttpRequest;t.open("GET",e,!1),t.send();let r=t.responseText;n.push(r.toString())}catch(t){console.error(`NovaSheets parsing failed: File "${e}" cannot be accessed.`)}let r=document.querySelectorAll('template[type="novasheet"]');for(let e of r)n.push(e.innerHTML);for(let e of n){let t=e.split("\n"),n=[],r=[],o={};for(let e in t)if(t[e]=t[e].replace(/[\r\n]/g,"").replace(/^(.*?)\s?\/\/.+$/,"$1"),t[e].match(/\s*---\s*/)&&(t[e]="---"),t[e].match(/^\s*@var\s/)){let r=t[e].replace(/^\s*@var\s/,"");n.push({line:Number(e),contents:r,name:r.split("|")[0].trim(),subvars:r.split("|").splice(1)})}const l=t.indexOf("---"),s=t.slice(l+1).join("\n"),a=Math.random().toString().hashCode(6);for(let e in n){let s=n[e].line+1,i=n[e].name.trim(),p=n[e+1]&&n[e+1].line||l;for(o[i]="";s-1&&i++