From 6d566e4658eb6805e14da36eb972508c921dbf64 Mon Sep 17 00:00:00 2001 From: EclecticGriffin Date: Fri, 14 Jun 2024 16:16:44 +0000 Subject: [PATCH] deploy: 885b3e484b8d2a001c1fe7633e3439e4f4d1761a --- ...lio8PE.wasm => calyx_web_bg-S36FoNP8.wasm} | Bin 2469466 -> 2469395 bytes .../{index-GRqLJkOC.js => index-B65puSJz.js} | 2 +- index.html | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename assets/{calyx_web_bg-B9lio8PE.wasm => calyx_web_bg-S36FoNP8.wasm} (98%) rename assets/{index-GRqLJkOC.js => index-B65puSJz.js} (99%) diff --git a/assets/calyx_web_bg-B9lio8PE.wasm b/assets/calyx_web_bg-S36FoNP8.wasm similarity index 98% rename from assets/calyx_web_bg-B9lio8PE.wasm rename to assets/calyx_web_bg-S36FoNP8.wasm index 835efc27dd036cf611fea62129470b209efeedc5..68bd17b1bc44275e1c3dd4d5b2309fa7e9e7a402 100644 GIT binary patch delta 6367 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 delta 6366 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 diff --git a/assets/index-GRqLJkOC.js b/assets/index-B65puSJz.js similarity index 99% rename from assets/index-GRqLJkOC.js rename to assets/index-B65puSJz.js index 854dc31da5..13978364e0 100644 --- a/assets/index-GRqLJkOC.js +++ b/assets/index-B65puSJz.js @@ -1,4 +1,4 @@ -(async()=>{(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const t of document.querySelectorAll('link[rel="modulepreload"]'))n(t);new MutationObserver(t=>{for(const s of t)if(s.type==="childList")for(const d of s.addedNodes)d.tagName==="LINK"&&d.rel==="modulepreload"&&n(d)}).observe(document,{childList:!0,subtree:!0});function r(t){const s={};return t.integrity&&(s.integrity=t.integrity),t.referrerPolicy&&(s.referrerPolicy=t.referrerPolicy),t.crossOrigin==="use-credentials"?s.credentials="include":t.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function n(t){if(t.ep)return;t.ep=!0;const s=r(t);fetch(t.href,s)}})();const Me=""+new URL("calyx_web_bg-B9lio8PE.wasm",import.meta.url).href,ze=async(e={},r)=>{let n;if(r.startsWith("data:")){const t=r.replace(/^data:.*?base64,/,"");let s;if(typeof Buffer=="function"&&typeof Buffer.from=="function")s=Buffer.from(t,"base64");else if(typeof atob=="function"){const d=atob(t);s=new Uint8Array(d.length);for(let l=0;l"u"?(0,module.require)("util").TextEncoder:TextEncoder;let G=new Ne("utf-8");const Oe=typeof G.encodeInto=="function"?function(e,r){return G.encodeInto(e,r)}:function(e,r){const n=G.encode(e);return r.set(n),{read:e.length,written:n.length}};function J(e,r,n){if(n===void 0){const a=G.encode(e),c=r(a.length);return U().subarray(c,c+a.length).set(a),z=a.length,c}let t=e.length,s=r(t);const d=U();let l=0;for(;l127)break;d[s+l]=a}if(l!==t){l!==0&&(e=e.slice(l)),s=n(s,t,t=l+e.length*3);const a=U().subarray(s+l,s+t),c=Oe(e,a);l+=c.written}return z=l,s}let K=null;function N(){return(K===null||K.buffer!==X.buffer)&&(K=new Int32Array(X.buffer)),K}let q=C.length;function Ie(e){e<36||(C[e]=q,q=e)}function qe(e){const r=ie(e);return Ie(e),r}let V=32;function He(e){if(V==1)throw new Error("out of js stack");return C[--V]=e,V}const Be=typeof TextDecoder>"u"?(0,module.require)("util").TextDecoder:TextDecoder;let he=new Be("utf-8",{ignoreBOM:!0,fatal:!0});he.decode();function ve(e,r){return he.decode(U().subarray(e,e+r))}function Re(e,r,n){try{const d=ye(-16),l=J(r,Y,Q),a=z,c=J(n,Y,Q),v=z;Ke(d,He(e),l,a,c,v);var t=N()[d/4+0],s=N()[d/4+1];return ve(t,s)}finally{ye(16),C[V++]=void 0,be(t,s)}}function De(e){q===C.length&&C.push(C.length+1);const r=q;return q=C[r],C[r]=e,r}function We(e,r){const n=ie(r),t=JSON.stringify(n===void 0?null:n),s=J(t,Y,Q),d=z;N()[e/4+1]=d,N()[e/4+0]=s}function Ze(){const e=new Error;return De(e)}function Ue(e,r){const n=ie(r).stack,t=J(n,Y,Q),s=z;N()[e/4+1]=s,N()[e/4+0]=t}function Ge(e,r){try{console.error(ve(e,r))}finally{be(e,r)}}function Je(e){qe(e)}URL=globalThis.URL;const O=await ze({"./calyx_web_bg.js":{__wbindgen_json_serialize:We,__wbg_new_693216e109162396:Ze,__wbg_stack_0ddaca5d1abfb52f:Ue,__wbg_error_09919627ac0992f5:Ge,__wbindgen_object_drop_ref:Je}},Me),X=O.memory,Ke=O.run,Y=O.__wbindgen_malloc,Q=O.__wbindgen_realloc,ye=O.__wbindgen_add_to_stack_pointer,be=O.__wbindgen_free,Ve="https://raw.githubusercontent.com/calyxir/calyx/",Xe=[{name:"Sequence",file:"tests/correctness/seq.futil",root:"/",passes:["tdcc"]},{name:"Conditional",file:"tests/correctness/if.futil",root:"/",passes:["simplify-with-control","tdcc"]},{name:"Loops",file:"tests/correctness/while.futil",root:"/",passes:["simplify-with-control","tdcc"]},{name:"Invoke (call)",file:"tests/passes/compile-invoke/compile-invoke.futil",root:"/",passes:["compile-invoke"]},{name:"Parallel",file:"tests/correctness/par.futil",root:"/",passes:["tdcc"]},{name:"Externalize",file:"tests/passes/externalize.futil",root:"/",passes:["externalize"]},{name:"Minimize Regs Simple",file:"tests/passes/cell-share/simple-liveness.futil",root:"/",passes:["dead-cell-removal"]},{name:"Minimize Regs (Nested Par)",file:"tests/passes/cell-share/nested-par.futil",root:"/",passes:["dead-cell-removal"]}],H={url_prefix:Ve,examples:Xe},Ye=[{name:"well-formed",title:"Well Formed",description:"well-formed"},{name:"papercut",title:"Papercut",description:"papercut"},{name:"externalize",title:"Externalize Memories",description:"externalize"},{name:"compile-invoke",title:"Compile Invoke",description:"compile-invoke"},{name:"collapse-control",title:"Collapse Control",description:"collapse-control"},{name:"simplify-with-control",title:"Remove combinational groups",description:"tdcc"},{name:"tdcc",title:"Top Down Compile Control",description:"tdcc"},{name:"dead-cell-removal",title:"Dead Cell Removal",description:"dead-cell-removal"},{name:"dead-group-removal",title:"Dead Group Removal",description:"dead-group-removal"},{name:"go-insertion",title:"Go Insertion",description:"go-insertion"},{name:"hole-inliner",title:"Hole Inliner",description:"hole-inliner"},{name:"clk-insertion",title:"Clk Insertion",description:"clk-insertion"}],se={passes:Ye},Qe="5250bf96cf202ebf4a567a0bb7052a332cf96d55",le={version:Qe};function L(){}L.prototype={diff:function(e,r){var n,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=t.callback;typeof t=="function"&&(s=t,t={}),this.options=t;var d=this;function l(o){return s?(setTimeout(function(){s(void 0,o)},0),!0):o}e=this.castInput(e),r=this.castInput(r),e=this.removeEmpty(this.tokenize(e)),r=this.removeEmpty(this.tokenize(r));var a=r.length,c=e.length,v=1,y=a+c;t.maxEditLength&&(y=Math.min(y,t.maxEditLength));var h=(n=t.timeout)!==null&&n!==void 0?n:1/0,k=Date.now()+h,E=[{oldPos:-1,lastComponent:void 0}],_=this.extractCommon(E[0],r,e,0);if(E[0].oldPos+1>=c&&_+1>=a)return l([{value:this.join(r),count:r.length}]);var x=-1/0,w=1/0;function F(){for(var o=Math.max(x,-v);o<=Math.min(w,v);o+=2){var u=void 0,p=E[o-1],g=E[o+1];p&&(E[o-1]=void 0);var f=!1;if(g){var b=g.oldPos-o;f=g&&0<=b&&b=c&&_+1>=a)return l(et(d,u.lastComponent,r,e,d.useLongestToken));E[o]=u,u.oldPos+1>=c&&(w=Math.min(w,o-1)),_+1>=a&&(x=Math.max(x,o+1))}v++}if(s)(function o(){setTimeout(function(){if(v>y||Date.now()>k)return s();F()||o()},0)})();else for(;v<=y&&Date.now()<=k;){var i=F();if(i)return i}},addToPath:function(e,r,n,t){var s=e.lastComponent;return s&&s.added===r&&s.removed===n?{oldPos:e.oldPos+t,lastComponent:{count:s.count+1,added:r,removed:n,previousComponent:s.previousComponent}}:{oldPos:e.oldPos+t,lastComponent:{count:1,added:r,removed:n,previousComponent:s}}},extractCommon:function(e,r,n,t){for(var s=r.length,d=n.length,l=e.oldPos,a=l-t,c=0;a+1x.length?F:x}),h.value=e.join(E)}else h.value=e.join(n.slice(v,v+h.count));v+=h.count,h.added||(y+=h.count)}}var _=d[c-1];return c>1&&typeof _.value=="string"&&(_.added||_.removed)&&e.equals("",_.value)&&(d[c-2].value+=_.value,d.pop()),d}var we=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,xe=/\S/,ke=new L;ke.equals=function(e,r){return this.options.ignoreCase&&(e=e.toLowerCase(),r=r.toLowerCase()),e===r||this.options.ignoreWhitespace&&!xe.test(e)&&!xe.test(r)},ke.tokenize=function(e){for(var r=e.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/),n=0;n{(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const t of document.querySelectorAll('link[rel="modulepreload"]'))n(t);new MutationObserver(t=>{for(const s of t)if(s.type==="childList")for(const d of s.addedNodes)d.tagName==="LINK"&&d.rel==="modulepreload"&&n(d)}).observe(document,{childList:!0,subtree:!0});function r(t){const s={};return t.integrity&&(s.integrity=t.integrity),t.referrerPolicy&&(s.referrerPolicy=t.referrerPolicy),t.crossOrigin==="use-credentials"?s.credentials="include":t.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function n(t){if(t.ep)return;t.ep=!0;const s=r(t);fetch(t.href,s)}})();const Me=""+new URL("calyx_web_bg-S36FoNP8.wasm",import.meta.url).href,ze=async(e={},r)=>{let n;if(r.startsWith("data:")){const t=r.replace(/^data:.*?base64,/,"");let s;if(typeof Buffer=="function"&&typeof Buffer.from=="function")s=Buffer.from(t,"base64");else if(typeof atob=="function"){const d=atob(t);s=new Uint8Array(d.length);for(let l=0;l"u"?(0,module.require)("util").TextEncoder:TextEncoder;let G=new Ne("utf-8");const Oe=typeof G.encodeInto=="function"?function(e,r){return G.encodeInto(e,r)}:function(e,r){const n=G.encode(e);return r.set(n),{read:e.length,written:n.length}};function J(e,r,n){if(n===void 0){const a=G.encode(e),c=r(a.length);return U().subarray(c,c+a.length).set(a),z=a.length,c}let t=e.length,s=r(t);const d=U();let l=0;for(;l127)break;d[s+l]=a}if(l!==t){l!==0&&(e=e.slice(l)),s=n(s,t,t=l+e.length*3);const a=U().subarray(s+l,s+t),c=Oe(e,a);l+=c.written}return z=l,s}let K=null;function N(){return(K===null||K.buffer!==X.buffer)&&(K=new Int32Array(X.buffer)),K}let q=C.length;function Ie(e){e<36||(C[e]=q,q=e)}function qe(e){const r=ie(e);return Ie(e),r}let V=32;function He(e){if(V==1)throw new Error("out of js stack");return C[--V]=e,V}const Be=typeof TextDecoder>"u"?(0,module.require)("util").TextDecoder:TextDecoder;let he=new Be("utf-8",{ignoreBOM:!0,fatal:!0});he.decode();function ve(e,r){return he.decode(U().subarray(e,e+r))}function Re(e,r,n){try{const d=ye(-16),l=J(r,Y,Q),a=z,c=J(n,Y,Q),v=z;Ke(d,He(e),l,a,c,v);var t=N()[d/4+0],s=N()[d/4+1];return ve(t,s)}finally{ye(16),C[V++]=void 0,be(t,s)}}function De(e){q===C.length&&C.push(C.length+1);const r=q;return q=C[r],C[r]=e,r}function We(e,r){const n=ie(r),t=JSON.stringify(n===void 0?null:n),s=J(t,Y,Q),d=z;N()[e/4+1]=d,N()[e/4+0]=s}function Ze(){const e=new Error;return De(e)}function Ue(e,r){const n=ie(r).stack,t=J(n,Y,Q),s=z;N()[e/4+1]=s,N()[e/4+0]=t}function Ge(e,r){try{console.error(ve(e,r))}finally{be(e,r)}}function Je(e){qe(e)}URL=globalThis.URL;const O=await ze({"./calyx_web_bg.js":{__wbindgen_json_serialize:We,__wbg_new_693216e109162396:Ze,__wbg_stack_0ddaca5d1abfb52f:Ue,__wbg_error_09919627ac0992f5:Ge,__wbindgen_object_drop_ref:Je}},Me),X=O.memory,Ke=O.run,Y=O.__wbindgen_malloc,Q=O.__wbindgen_realloc,ye=O.__wbindgen_add_to_stack_pointer,be=O.__wbindgen_free,Ve="https://raw.githubusercontent.com/calyxir/calyx/",Xe=[{name:"Sequence",file:"tests/correctness/seq.futil",root:"/",passes:["tdcc"]},{name:"Conditional",file:"tests/correctness/if.futil",root:"/",passes:["simplify-with-control","tdcc"]},{name:"Loops",file:"tests/correctness/while.futil",root:"/",passes:["simplify-with-control","tdcc"]},{name:"Invoke (call)",file:"tests/passes/compile-invoke/compile-invoke.futil",root:"/",passes:["compile-invoke"]},{name:"Parallel",file:"tests/correctness/par.futil",root:"/",passes:["tdcc"]},{name:"Externalize",file:"tests/passes/externalize.futil",root:"/",passes:["externalize"]},{name:"Minimize Regs Simple",file:"tests/passes/cell-share/simple-liveness.futil",root:"/",passes:["dead-cell-removal"]},{name:"Minimize Regs (Nested Par)",file:"tests/passes/cell-share/nested-par.futil",root:"/",passes:["dead-cell-removal"]}],H={url_prefix:Ve,examples:Xe},Ye=[{name:"well-formed",title:"Well Formed",description:"well-formed"},{name:"papercut",title:"Papercut",description:"papercut"},{name:"externalize",title:"Externalize Memories",description:"externalize"},{name:"compile-invoke",title:"Compile Invoke",description:"compile-invoke"},{name:"collapse-control",title:"Collapse Control",description:"collapse-control"},{name:"simplify-with-control",title:"Remove combinational groups",description:"tdcc"},{name:"tdcc",title:"Top Down Compile Control",description:"tdcc"},{name:"dead-cell-removal",title:"Dead Cell Removal",description:"dead-cell-removal"},{name:"dead-group-removal",title:"Dead Group Removal",description:"dead-group-removal"},{name:"go-insertion",title:"Go Insertion",description:"go-insertion"},{name:"hole-inliner",title:"Hole Inliner",description:"hole-inliner"},{name:"clk-insertion",title:"Clk Insertion",description:"clk-insertion"}],se={passes:Ye},Qe="885b3e484b8d2a001c1fe7633e3439e4f4d1761a",le={version:Qe};function L(){}L.prototype={diff:function(e,r){var n,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=t.callback;typeof t=="function"&&(s=t,t={}),this.options=t;var d=this;function l(o){return s?(setTimeout(function(){s(void 0,o)},0),!0):o}e=this.castInput(e),r=this.castInput(r),e=this.removeEmpty(this.tokenize(e)),r=this.removeEmpty(this.tokenize(r));var a=r.length,c=e.length,v=1,y=a+c;t.maxEditLength&&(y=Math.min(y,t.maxEditLength));var h=(n=t.timeout)!==null&&n!==void 0?n:1/0,k=Date.now()+h,E=[{oldPos:-1,lastComponent:void 0}],_=this.extractCommon(E[0],r,e,0);if(E[0].oldPos+1>=c&&_+1>=a)return l([{value:this.join(r),count:r.length}]);var x=-1/0,w=1/0;function F(){for(var o=Math.max(x,-v);o<=Math.min(w,v);o+=2){var u=void 0,p=E[o-1],g=E[o+1];p&&(E[o-1]=void 0);var f=!1;if(g){var b=g.oldPos-o;f=g&&0<=b&&b=c&&_+1>=a)return l(et(d,u.lastComponent,r,e,d.useLongestToken));E[o]=u,u.oldPos+1>=c&&(w=Math.min(w,o-1)),_+1>=a&&(x=Math.max(x,o+1))}v++}if(s)(function o(){setTimeout(function(){if(v>y||Date.now()>k)return s();F()||o()},0)})();else for(;v<=y&&Date.now()<=k;){var i=F();if(i)return i}},addToPath:function(e,r,n,t){var s=e.lastComponent;return s&&s.added===r&&s.removed===n?{oldPos:e.oldPos+t,lastComponent:{count:s.count+1,added:r,removed:n,previousComponent:s.previousComponent}}:{oldPos:e.oldPos+t,lastComponent:{count:1,added:r,removed:n,previousComponent:s}}},extractCommon:function(e,r,n,t){for(var s=r.length,d=n.length,l=e.oldPos,a=l-t,c=0;a+1x.length?F:x}),h.value=e.join(E)}else h.value=e.join(n.slice(v,v+h.count));v+=h.count,h.added||(y+=h.count)}}var _=d[c-1];return c>1&&typeof _.value=="string"&&(_.added||_.removed)&&e.equals("",_.value)&&(d[c-2].value+=_.value,d.pop()),d}var we=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,xe=/\S/,ke=new L;ke.equals=function(e,r){return this.options.ignoreCase&&(e=e.toLowerCase(),r=r.toLowerCase()),e===r||this.options.ignoreWhitespace&&!xe.test(e)&&!xe.test(r)},ke.tokenize=function(e){for(var r=e.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/),n=0;n"u"?n:l}:t;return typeof e=="string"?e:JSON.stringify(ue(e,null,null,s),s," ")},B.equals=function(e,r){return L.prototype.equals.call(B,e.replace(/,([\r\n])/g,"$1"),r.replace(/,([\r\n])/g,"$1"))};function ue(e,r,n,t,s){r=r||[],n=n||[],t&&(e=t(s,e));var d;for(d=0;d"u")return null;if("currentScript"in document&&1<2)return document.currentScript;try{throw new Error}catch(p){var i=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(p.stack)||[])[1];if(i){var o=document.getElementsByTagName("script");for(var u in o)if(o[u].src==i)return o[u]}return null}},isActive:function(i,o,u){for(var p="no-"+o;i;){var g=i.classList;if(g.contains(o))return!0;if(g.contains(p))return!1;i=i.parentElement}return!!u}},languages:{plain:l,plaintext:l,text:l,txt:l,extend:function(i,o){var u=a.util.clone(a.languages[i]);for(var p in o)u[p]=o[p];return u},insertBefore:function(i,o,u,p){p=p||a.languages;var g=p[i],f={};for(var b in g)if(g.hasOwnProperty(b)){if(b==o)for(var m in u)u.hasOwnProperty(m)&&(f[m]=u[m]);u.hasOwnProperty(b)||(f[b]=g[b])}var A=p[i];return p[i]=f,a.languages.DFS(a.languages,function(S,j){j===A&&S!=i&&(this[S]=f)}),f},DFS:function i(o,u,p,g){g=g||{};var f=a.util.objId;for(var b in o)if(o.hasOwnProperty(b)){u.call(o,b,o[b],p||b);var m=o[b],A=a.util.type(m);A==="Object"&&!g[f(m)]?(g[f(m)]=!0,i(m,u,null,g)):A==="Array"&&!g[f(m)]&&(g[f(m)]=!0,i(m,u,b,g))}}},plugins:{},highlightAll:function(i,o){a.highlightAllUnder(document,i,o)},highlightAllUnder:function(i,o,u){var p={callback:u,container:i,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};a.hooks.run("before-highlightall",p),p.elements=Array.prototype.slice.apply(p.container.querySelectorAll(p.selector)),a.hooks.run("before-all-elements-highlight",p);for(var g=0,f;f=p.elements[g++];)a.highlightElement(f,o===!0,p.callback)},highlightElement:function(i,o,u){var p=a.util.getLanguage(i),g=a.languages[p];a.util.setLanguage(i,p);var f=i.parentElement;f&&f.nodeName.toLowerCase()==="pre"&&a.util.setLanguage(f,p);var b=i.textContent,m={element:i,language:p,grammar:g,code:b};function A(j){m.highlightedCode=j,a.hooks.run("before-insert",m),m.element.innerHTML=m.highlightedCode,a.hooks.run("after-highlight",m),a.hooks.run("complete",m),u&&u.call(m.element)}if(a.hooks.run("before-sanity-check",m),f=m.element.parentElement,f&&f.nodeName.toLowerCase()==="pre"&&!f.hasAttribute("tabindex")&&f.setAttribute("tabindex","0"),!m.code){a.hooks.run("complete",m),u&&u.call(m.element);return}if(a.hooks.run("before-highlight",m),!m.grammar){A(a.util.encode(m.code));return}if(o&&t.Worker){var S=new Worker(a.filename);S.onmessage=function(j){A(j.data)},S.postMessage(JSON.stringify({language:m.language,code:m.code,immediateClose:!0}))}else A(a.highlight(m.code,m.grammar,m.language))},highlight:function(i,o,u){var p={code:i,grammar:o,language:u};if(a.hooks.run("before-tokenize",p),!p.grammar)throw new Error('The language "'+p.language+'" has no grammar.');return p.tokens=a.tokenize(p.code,p.grammar),a.hooks.run("after-tokenize",p),c.stringify(a.util.encode(p.tokens),p.language)},tokenize:function(i,o){var u=o.rest;if(u){for(var p in u)o[p]=u[p];delete o.rest}var g=new h;return k(g,g.head,i),y(i,g,o,g.head,0),_(g)},hooks:{all:{},add:function(i,o){var u=a.hooks.all;u[i]=u[i]||[],u[i].push(o)},run:function(i,o){var u=a.hooks.all[i];if(!(!u||!u.length))for(var p=0,g;g=u[p++];)g(o)}},Token:c};t.Prism=a;function c(i,o,u,p){this.type=i,this.content=o,this.alias=u,this.length=(p||"").length|0}c.stringify=function i(o,u){if(typeof o=="string")return o;if(Array.isArray(o)){var p="";return o.forEach(function(A){p+=i(A,u)}),p}var g={type:o.type,content:i(o.content,u),tag:"span",classes:["token",o.type],attributes:{},language:u},f=o.alias;f&&(Array.isArray(f)?Array.prototype.push.apply(g.classes,f):g.classes.push(f)),a.hooks.run("wrap",g);var b="";for(var m in g.attributes)b+=" "+m+'="'+(g.attributes[m]||"").replace(/"/g,""")+'"';return"<"+g.tag+' class="'+g.classes.join(" ")+'"'+b+">"+g.content+""};function v(i,o,u,p){i.lastIndex=o;var g=i.exec(u);if(g&&p&&g[1]){var f=g[1].length;g.index+=f,g[0]=g[0].slice(f)}return g}function y(i,o,u,p,g,f){for(var b in u)if(!(!u.hasOwnProperty(b)||!u[b])){var m=u[b];m=Array.isArray(m)?m:[m];for(var A=0;A=f.reach);T+=$.value.length,$=$.next){var I=$.value;if(o.length>i.length)return;if(!(I instanceof c)){var ne=1,P;if(Te){if(P=v(Le,T,i,Pe),!P||P.index>=i.length)break;var re=P.index,mt=P.index+P[0].length,M=T;for(M+=$.value.length;re>=M;)$=$.next,M+=$.value.length;if(M-=$.value.length,T=M,$.value instanceof c)continue;for(var W=$;W!==o.tail&&(Mf.reach&&(f.reach=fe);var oe=$.prev;ge&&(oe=k(o,oe,ge),T+=ge.length),E(o,oe,ne);var ht=new c(b,j?a.tokenize(ae,j):ae,gt,ae);if($=k(o,oe,ht),je&&k(o,$,je),ne>1){var me={cause:b+","+A,reach:fe};y(i,o,u,$.prev,T,me),f&&me.reach>f.reach&&(f.reach=me.reach)}}}}}}function h(){var i={value:null,prev:null,next:null},o={value:null,prev:i,next:null};i.next=o,this.head=i,this.tail=o,this.length=0}function k(i,o,u){var p=o.next,g={value:u,prev:o,next:p};return o.next=g,p.prev=g,i.length++,g}function E(i,o,u){for(var p=o.next,g=0;g/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},n.languages.markup.tag.inside["attr-value"].inside.entity=n.languages.markup.entity,n.languages.markup.doctype.inside["internal-subset"].inside=n.languages.markup,n.hooks.add("wrap",function(t){t.type==="entity"&&(t.attributes.title=t.content.replace(/&/,"&"))}),Object.defineProperty(n.languages.markup.tag,"addInlined",{value:function(t,s){var d={};d["language-"+s]={pattern:/(^$)/i,lookbehind:!0,inside:n.languages[s]},d.cdata=/^$/i;var l={"included-cdata":{pattern://i,inside:d}};l["language-"+s]={pattern:/[\s\S]+/,inside:n.languages[s]};var a={};a[t]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,function(){return t}),"i"),lookbehind:!0,greedy:!0,inside:l},n.languages.insertBefore("markup","cdata",a)}}),Object.defineProperty(n.languages.markup.tag,"addAttribute",{value:function(t,s){n.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+t+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[s,"language-"+s],inside:n.languages[s]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),n.languages.html=n.languages.markup,n.languages.mathml=n.languages.markup,n.languages.svg=n.languages.markup,n.languages.xml=n.languages.extend("markup",{}),n.languages.ssml=n.languages.xml,n.languages.atom=n.languages.xml,n.languages.rss=n.languages.xml,function(t){var s=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;t.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+s.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+s.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+s.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+s.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:s,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},t.languages.css.atrule.inside.rest=t.languages.css;var d=t.languages.markup;d&&(d.tag.addInlined("style","css"),d.tag.addAttribute("style","css"))}(n),n.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},n.languages.javascript=n.languages.extend("clike",{"class-name":[n.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),n.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,n.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:n.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:n.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:n.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:n.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:n.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),n.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:n.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),n.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),n.languages.markup&&(n.languages.markup.tag.addInlined("script","javascript"),n.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),n.languages.js=n.languages.javascript,function(){if(typeof n>"u"||typeof document>"u")return;Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector);var t="Loading\u2026",s=function(x,w){return"\u2716 Error "+x+" while fetching file: "+w},d="\u2716 Error: File does not exist or is empty",l={js:"javascript",py:"python",rb:"ruby",ps1:"powershell",psm1:"powershell",sh:"bash",bat:"batch",h:"c",tex:"latex"},a="data-src-status",c="loading",v="loaded",y="failed",h="pre[data-src]:not(["+a+'="'+v+'"]):not(['+a+'="'+c+'"])';function k(x,w,F){var i=new XMLHttpRequest;i.open("GET",x,!0),i.onreadystatechange=function(){i.readyState==4&&(i.status<400&&i.responseText?w(i.responseText):i.status>=400?F(s(i.status,i.statusText)):F(d))},i.send(null)}function E(x){var w=/^\s*(\d+)\s*(?:(,)\s*(?:(\d+)\s*)?)?$/.exec(x||"");if(w){var F=Number(w[1]),i=w[2],o=w[3];return i?o?[F,Number(o)]:[F,void 0]:[F,F]}}n.hooks.add("before-highlightall",function(x){x.selector+=", "+h}),n.hooks.add("before-sanity-check",function(x){var w=x.element;if(w.matches(h)){x.code="",w.setAttribute(a,c);var F=w.appendChild(document.createElement("CODE"));F.textContent=t;var i=w.getAttribute("data-src"),o=x.language;if(o==="none"){var u=(/\.(\w+)$/.exec(i)||[,"none"])[1];o=l[u]||u}n.util.setLanguage(F,o),n.util.setLanguage(w,o);var p=n.plugins.autoloader;p&&p.loadLanguages(o),k(i,function(g){w.setAttribute(a,v);var f=E(w.getAttribute("data-range"));if(f){var b=g.split(/\r\n?|\n/g),m=f[0],A=f[1]==null?b.length:f[1];m<0&&(m+=b.length),m=Math.max(0,Math.min(m-1,b.length)),A<0&&(A+=b.length),A=Math.max(0,Math.min(A,b.length)),g=b.slice(m,A).join(` `),w.hasAttribute("data-start")||w.setAttribute("data-start",String(m+1))}F.textContent=g,n.highlightElement(F)},function(g){w.setAttribute(a,y),F.textContent=g})}}),n.plugins.fileHighlight={highlight:function(x){for(var w=(x||document).querySelectorAll(h),F=0,i;i=w[F++];)n.highlightElement(i)}};var _=!1;n.fileHighlight=function(){_||(console.warn("Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead."),_=!0),n.plugins.fileHighlight.highlight.apply(this,arguments)}}()})(Ee);var ot=Ee.exports;const R=at(ot);R.languages.futil={"diff-addition":{pattern:/^\+.*$/m},"diff-deletion":{pattern:/^-.*$/m},comment:R.languages.clike.comment,string:{pattern:/(["])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},namespace:{pattern:/\b(?:extern|component|primitive)\b/,lookbehind:!0},function:{pattern:/\b(?:cells|wires|control|group|comb)\b/,lookbehind:!0},keyword:{pattern:/\b(?:|seq|par|if|while|with|invoke)\b/,lookbehind:!0},number:[{pattern:/\b[0-9]+'b[0-1]+\b/},{pattern:/\b[0-9]+'d[0-9]+\b/},{pattern:/\b[0-9]+'x[0-9A-Fa-f]+\b/},{pattern:/\b[0-9]+'o[0-7]+\b/},{pattern:/\b(?:[0-9]+)(?!')\b/}]},function(){typeof Prism>"u"||typeof document>"u"||!document.createRange||(Prism.plugins.KeepMarkup=!0,Prism.hooks.add("before-highlight",function(e){if(!e.element.children.length||!Prism.util.isActive(e.element,"keep-markup",!0))return;var r=Prism.util.isActive(e.element,"drop-tokens",!1);function n(a){return!(r&&a.nodeName.toLowerCase()==="span"&&a.classList.contains("token"))}var t=0,s=[];function d(a){if(!n(a)){l(a);return}var c={element:a,posOpen:t};s.push(c),l(a),c.posClose=t}function l(a){for(var c=0,v=a.childNodes.length;ct.node.posOpen&&(t.nodeStart=l,t.nodeStartPos=t.node.posOpen-t.pos),t.nodeStart&&t.pos+l.data.length>=t.node.posClose&&(t.nodeEnd=l,t.nodeEndPos=t.node.posClose-t.pos),t.pos+=l.data.length);if(t.nodeStart&&t.nodeEnd){var a=document.createRange();return a.setStart(t.nodeStart,t.nodeStartPos),a.setEnd(t.nodeEnd,t.nodeEndPos),t.node.element.innerHTML="",t.node.element.appendChild(a.extractContents()),a.insertNode(t.node.element),a.detach(),!1}}return!0};e.keepMarkup.forEach(function(n){r(e.element,{node:n,pos:0})}),e.highlightedCode=e.element.innerHTML}}))}(),function(){if(typeof Prism>"u"||typeof document>"u")return;var e="line-numbers",r=/\n(?!$)/g,n=Prism.plugins.lineNumbers={getLine:function(l,a){if(!(l.tagName!=="PRE"||!l.classList.contains(e))){var c=l.querySelector(".line-numbers-rows");if(c){var v=parseInt(l.getAttribute("data-start"),10)||1,y=v+(c.children.length-1);ay&&(a=y);var h=a-v;return c.children[h]}}},resize:function(l){t([l])},assumeViewportIndependence:!0};function t(l){if(l=l.filter(function(c){var v=s(c),y=v["white-space"];return y==="pre-wrap"||y==="pre-line"}),l.length!=0){var a=l.map(function(c){var v=c.querySelector("code"),y=c.querySelector(".line-numbers-rows");if(!(!v||!y)){var h=c.querySelector(".line-numbers-sizer"),k=v.textContent.split(r);h||(h=document.createElement("span"),h.className="line-numbers-sizer",v.appendChild(h)),h.innerHTML="0",h.style.display="block";var E=h.getBoundingClientRect().height;return h.innerHTML="",{element:c,lines:k,lineHeights:[],oneLinerHeight:E,sizer:h}}}).filter(Boolean);a.forEach(function(c){var v=c.sizer,y=c.lines,h=c.lineHeights,k=c.oneLinerHeight;h[y.length-1]=void 0,y.forEach(function(E,_){if(E&&E.length>1){var x=v.appendChild(document.createElement("span"));x.style.display="block",x.textContent=E}else h[_]=k})}),a.forEach(function(c){for(var v=c.sizer,y=c.lineHeights,h=0,k=0;k");h=document.createElement("span"),h.setAttribute("aria-hidden","true"),h.className="line-numbers-rows",h.innerHTML=k,c.hasAttribute("data-start")&&(c.style.counterReset="linenumber "+(parseInt(c.getAttribute("data-start"),10)-1)),l.element.appendChild(h),t([c]),Prism.hooks.run("line-numbers",l)}}}),Prism.hooks.add("line-numbers",function(l){l.plugins=l.plugins||{},l.plugins.lineNumbers=!0})}();var de={},D={};H.url_prefix=H.url_prefix+le.version;function _e(e,r){e.active=r,r?e.button.classList.replace("off","on"):e.button.classList.replace("on","off")}function it(e){let r=document.createElement("button");return r.classList.add("toggle"),r.classList.add("off"),r.innerHTML=e.title,r.onclick=function(){_e(e,!e.active)},r}const st=document.getElementById("passes");for(let e of se.passes){let r=it(e);e.button=r,st.appendChild(r)}function lt(){return se.passes.filter(e=>e.active).map(e=>e.name)}function ut(e){if("passes"in e)for(let r of se.passes)_e(r,e.passes.includes(r.name))}document.getElementById("compile").onclick=function(){ct()};function ct(){let e=lt(),r=D.libraries.map(l=>l.code).join(` `);var n=Re(e,r,D.code);const t=document.getElementById("diffEditor"),s=t.querySelector("#input"),d=t.querySelector("#output");d.innerHTML=n,R.highlightElement(s),R.highlightElement(d)}async function dt(e,r){if(e in de)return await de[e];{let n=`${H.url_prefix}${r}${e}`,t=await(await fetch(n)).text();if(/import/g.test(t)){let s=e.split("/").slice(0,-1).join("/"),d=Array.from(t.matchAll(/import "(.*)";/g)).map(c=>c[1]),l=await Se(d,`${r}/${s}/`),a=/import "(.*)";/g;t=t.replaceAll(a,"");for(let c of l)t+=c.code}return de[e]=t,t}}async function Se(e,r){let n=e.map(async function(t){let s=await dt(t,r);return{name:t,code:s}});return await Promise.all(n)}const $e=document.getElementById("input");$e.oninput=function(){D.code=$e.innerText};const te=document.getElementById("examples-select");for(let e of H.examples){let r=document.createElement("option");r.text=e.name,r.value=JSON.stringify(e),te.add(r)}async function pt(e,r){let n=`${H.url_prefix}${r}${e}`,t=await(await fetch(n)).text(),s=/import "(.*)";/g,d=Array.from(t.matchAll(s)).map(a=>a[1]),l=await Se(d,r);return t=t.replaceAll(s,""),{code:t.trim(),libraries:l}}te.onchange=function(){const e=document.getElementById("input"),r=document.getElementById("output");e.innerHTML="loading...",r.innerHTML="Compile `compile` to generate output.";let n=JSON.parse(te.value);pt(n.file,n.root).then(t=>D=t).then(()=>{e.innerHTML=D.code;const t=document.getElementById("diffEditor").querySelector("#input");R.highlightElement(t)}).then(()=>ut(n))},te.onchange();const Ce=document.getElementById("calyx-version"),pe=document.createElement("a");pe.appendChild(document.createTextNode(le.version.slice(0,8))),pe.href="https://github.com/calyxir/calyx/tree/"+le.version,Ce.appendChild(document.createTextNode("Built with Calyx version ")),Ce.appendChild(pe)})(); diff --git a/index.html b/index.html index 278168b7bd..ce9faf6711 100644 --- a/index.html +++ b/index.html @@ -9,7 +9,7 @@ - +