diff --git a/taisei-dev.html b/taisei-dev.html index c811b6d..80ea33d 100644 --- a/taisei-dev.html +++ b/taisei-dev.html @@ -1 +1 @@ -Taisei Project — Web version (Experimental!)

Note: this web port is experimental and may not perform as well as the original game, which you can download here.

Girls are now downloading, please wait warmly…
\ No newline at end of file +Taisei Project — Web version (Experimental!)

Note: this web port is experimental and may not perform as well as the original game, which you can download here.

Girls are now downloading, please wait warmly…
\ No newline at end of file diff --git a/taisei-dev.js b/taisei-dev.js index 088d51d..3e6f038 100644 --- a/taisei-dev.js +++ b/taisei-dev.js @@ -1,223 +1,209 @@ -var h;h||=typeof Module !== 'undefined' ? Module : {};var aa=document.getElementById("status"),ba=document.getElementById("progress"),ca=document.getElementById("spinner"),da=document.getElementById("canvas"),ea=document.getElementById("canvasContainer"),fa=document.getElementById("logToggle"),ha=document.getElementById("logToggleContainer"),ia=document.getElementById("logContainer"),ja=document.getElementById("output"),la=aa.innerText;fa.checked=!1; -window.toggleLog=function(){ia.hidden=!fa.checked;ja.scrollTop=ja.scrollHeight};var ma=da.getContext("webgl2",{alpha:!1,antialias:!1,depth:!1,powerPreference:"high-performance",premultipliedAlpha:!0,preserveDrawingBuffer:!1,stencil:!1});if(!ma)throw"Could not create a WebGL 2 context";ma.getSupportedExtensions().forEach(function(a){ma.getExtension(a)});da.addEventListener("webglcontextlost",function(a){alert("WebGL context lost. You will need to reload the page.");a.preventDefault()},!1); -ja.value=""; -h={preRun:[function(){na.TAISEI_NOASYNC="1";na.TAISEI_NOUNLOAD="1";na.TAISEI_PREFER_SDL_VIDEODRIVERS="emscripten";na.TAISEI_RENDERER="gles30";k("/persistent");oa(l,"/persistent")}],postRun:[],onFirstFrame:function(){ea.hidden=!1;ha.style.display="inline-block";h.setStatus("",!0)},print:function(a){1d-c.xj.time||(c.xj.time=d,c.xj.text=a,b?(a=b[1],ba.value=100*parseInt(b[2]),ba.max=100*parseInt(b[4]),ba.hidden=!1,ca.hidden=!da.hidden):(ba.value=null,ba.max=null,ba.hidden=!0,a||(ca.hidden=!0)),aa.innerText=a.replace(/^Downloading(?: data)?\.\.\./,la).replace("...","\u2026"),console.log("[STATUS] "+ -aa.innerText))}},totalDependencies:0,monitorRunDependencies:function(a){h.totalDependencies=Math.max(h.totalDependencies,a);h.setStatus(a?"Preparing\u2026 ("+(h.totalDependencies-a)+"/"+h.totalDependencies+")":"All downloads complete.")}};window.onerror=function(a){h.setStatus("Error: "+a)};function pa(a,b){qa(a,function(c){h.ccall("vfs_sync_callback",null,["boolean","string","number"],[a,c,b],{async:!0})})} -(function(){function a(){var b=h.SDL2;"undefined"!==typeof b&&("suspended"==b.Ui.state&&b.Ui.resume(),"running"==b.Ui.state&&(da.removeEventListener("click",a),document.removeEventListener("keydown",a)))}da.addEventListener("click",a);document.addEventListener("keydown",a)})();"undefined"===typeof ra&&(ra=window.dynCall=h.dynCall=function(a,b,c){return sa.get(b).apply(this,c)});var ta=Object.assign({},h),va=[],wa="./this.program",xa=(a,b)=>{throw b;},ya="",za,Aa; -"undefined"!=typeof document&&document.currentScript&&(ya=document.currentScript.src);ya=0!==ya.indexOf("blob:")?ya.substr(0,ya.replace(/[?#].*/,"").lastIndexOf("/")+1):"";za=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText};Aa=(a,b,c)=>{var d=new XMLHttpRequest;d.open("GET",a,!0);d.responseType="arraybuffer";d.onload=()=>{200==d.status||0==d.status&&d.response?b(d.response):c()};d.onerror=c;d.send(null)};var Da=h.print||console.log.bind(console),Ea=h.printErr||console.error.bind(console); -Object.assign(h,ta);ta=null;h.arguments&&(va=h.arguments);h.thisProgram&&(wa=h.thisProgram);h.quit&&(xa=h.quit);var Fa;h.wasmBinary&&(Fa=h.wasmBinary);"object"!=typeof WebAssembly&&Ga("no native wasm support detected");var Ha,Ia=!1,Ja,u,v,Ka,La,Ma,Na,x,Oa,z; -function Pa(){var a=Ha.buffer;h.HEAP_DATA_VIEW=z=new DataView(a);h.HEAP8=u=new Int8Array(a);h.HEAP16=Ka=new Int16Array(a);h.HEAPU8=v=new Uint8Array(a);h.HEAPU16=La=new Uint16Array(a);h.HEAP32=Ma=new Int32Array(a);h.HEAPU32=Na=new Uint32Array(a);h.HEAPF32=x=new Float32Array(a);h.HEAPF64=new Float64Array(a);h.HEAP64=Oa=new BigInt64Array(a);h.HEAPU64=new BigUint64Array(a)}var Qa=[],Ra=[],Sa=[],Ta=[],Ua=[];function Va(){var a=h.preRun.shift();Qa.unshift(a)}var Wa=0,Xa=null,Ya=null; -function Za(){Wa++;h.monitorRunDependencies?.(Wa)}function $a(){Wa--;h.monitorRunDependencies?.(Wa);if(0==Wa&&(null!==Xa&&(clearInterval(Xa),Xa=null),Ya)){var a=Ya;Ya=null;a()}}function Ga(a){h.onAbort?.(a);a="Aborted("+a+")";Ea(a);Ia=!0;Ja=1;throw new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");}var ab=a=>a.startsWith("data:application/octet-stream;base64,"),bb;bb="taisei-dev.wasm";if(!ab(bb)){var cb=bb;bb=h.locateFile?h.locateFile(cb,ya):ya+cb} -function db(a){if(a==bb&&Fa)return new Uint8Array(Fa);throw"both async and sync fetching of the wasm failed";}function eb(a){return Fa||"function"!=typeof fetch?Promise.resolve().then(()=>db(a)):fetch(a,{credentials:"same-origin"}).then(b=>{if(!b.ok)throw"failed to load wasm binary file at '"+a+"'";return b.arrayBuffer()}).catch(()=>db(a))}function fb(a,b,c){return eb(a).then(d=>WebAssembly.instantiate(d,b)).then(d=>d).then(c,d=>{Ea(`failed to asynchronously prepare wasm: ${d}`);Ga(d)})} -function gb(a,b){var c=bb;Fa||"function"!=typeof WebAssembly.instantiateStreaming||ab(c)||"function"!=typeof fetch?fb(c,a,b):fetch(c,{credentials:"same-origin"}).then(d=>WebAssembly.instantiateStreaming(d,a).then(b,function(e){Ea(`wasm streaming compile failed: ${e}`);Ea("falling back to ArrayBuffer instantiation");return fb(c,a,b)}))} -var jb={1143464:(a,b)=>{pa(a,b)},1143484:()=>"undefined"!==typeof AudioContext||"undefined"!==typeof webkitAudioContext?!0:!1,1143631:()=>"undefined"!==typeof navigator.mediaDevices&&"undefined"!==typeof navigator.mediaDevices.getUserMedia||"undefined"!==typeof navigator.webkitGetUserMedia?!0:!1,1143865:a=>{"undefined"===typeof h.SDL2&&(h.SDL2={});var b=h.SDL2;a?b.capture={}:b.audio={};b.Ui||("undefined"!==typeof AudioContext?b.Ui=new AudioContext:"undefined"!==typeof webkitAudioContext&&(b.Ui=new webkitAudioContext), -b.Ui&&hb(b.Ui));return void 0===b.Ui?-1:0},1144358:()=>h.SDL2.Ui.sampleRate,1144426:(a,b,c,d)=>{function e(){}function f(m){void 0!==g.capture.Dj&&(clearTimeout(g.capture.Dj),g.capture.Dj=void 0);g.capture.Nj=g.Ui.createMediaStreamSource(m);g.capture.Zi=g.Ui.createScriptProcessor(b,a,1);g.capture.Zi.onaudioprocess=function(n){void 0!==g&&void 0!==g.capture&&(n.outputBuffer.getChannelData(0).fill(0),g.capture.$j=n.inputBuffer,ra("vi",c,[d]))};g.capture.Nj.connect(g.capture.Zi);g.capture.Zi.connect(g.Ui.destination); -g.capture.stream=m}var g=h.SDL2;g.capture.Tj=g.Ui.createBuffer(a,b,g.Ui.sampleRate);g.capture.Tj.getChannelData(0).fill(0);g.capture.Dj=setTimeout(function(){g.capture.$j=g.capture.Tj;ra("vi",c,[d])},b/g.Ui.sampleRate*1E3);void 0!==navigator.mediaDevices&&void 0!==navigator.mediaDevices.getUserMedia?navigator.mediaDevices.getUserMedia({audio:!0,video:!1}).then(f).catch(e):void 0!==navigator.webkitGetUserMedia&&navigator.webkitGetUserMedia({audio:!0,video:!1},f,e)},1146078:(a,b,c,d)=>{var e=h.SDL2; -e.audio.Zi=e.Ui.createScriptProcessor(b,0,a);e.audio.Zi.onaudioprocess=function(f){void 0!==e&&void 0!==e.audio&&(e.audio.mk=f.outputBuffer,ra("vi",c,[d]))};e.audio.Zi.connect(e.Ui.destination)},1146488:(a,b)=>{for(var c=h.SDL2,d=c.capture.$j.numberOfChannels,e=0;e{for(var c=h.SDL2,d=c.audio.mk.numberOfChannels,e=0;e>2),!0)}},1147573:a=>{var b=h.SDL2;if(a){void 0!==b.capture.Dj&&clearTimeout(b.capture.Dj);if(void 0!==b.capture.stream){a=b.capture.stream.getAudioTracks();for(var c=0;cwindow.innerWidth,1148775:()=>window.innerHeight,1148806:(a, -b,c)=>{h.SDL2||(h.SDL2={});var d=h.SDL2;d.Ik!==h.canvas&&(d.ej=h.createContext(h.canvas,!1,!0),d.Ik=h.canvas);if(d.w!==a||d.h!==b||d.Yk!==d.ej)d.image=d.ej.createImageData(a,b),d.w=a,d.h=b,d.Yk=d.ej;a=d.image.data;b=c>>2;var e=0;if("undefined"!==typeof CanvasPixelArray&&a instanceof CanvasPixelArray)for(c=a.length;e>8&255;a[e+2]=f>>16&255;a[e+3]=255;b++;e+=4}else if(d.Lk!==a&&(d.Kk=new Int32Array(a.buffer),d.Mk=new Uint8Array(a.buffer),d.Lk=a),a=d.Kk, -c=a.length,a.set(Ma.subarray(b,b+c)),a=d.Mk,b=3,e=b+4*c,0==c%8)for(;b{var f=document.createElement("canvas");f.width=a;f.height=b;var g=f.getContext("2d");a=g.createImageData(a,b);b=a.data;e>>=2;var m=0,n;if("undefined"!==typeof CanvasPixelArray&&b instanceof CanvasPixelArray)for(n= -b.length;m>8&255;b[m+2]=q>>16&255;b[m+3]=q>>24&255;e++;m+=4}else b=new Int32Array(b.buffer),n=b.length,b.set(Ma.subarray(e,e+n));g.putImageData(a,0,0);c=0===c&&0===d?"url("+f.toDataURL()+"), auto":"url("+f.toDataURL()+") "+c+" "+d+", auto";d=A(c.length+1);C(c,v,d,c.length+1);return d},1151264:a=>{h.canvas&&(h.canvas.style.cursor=a?E(v,a):"")},1151347:()=>{h.canvas&&(h.canvas.style.cursor="none")},1151416:()=>{h.onFirstFrame()}}; -function kb(a){this.name="ExitStatus";this.message=`Program terminated with exit(${a})`;this.status=a}var lb=(a,b,c)=>{a.addEventListener(b,c,{once:!0})},hb=a=>{var b;b||=[document,document.getElementById("canvas")];["keydown","mousedown","touchstart"].forEach(c=>{b.forEach(d=>{d&&lb(d,c,()=>{"suspended"===a.state&&a.resume()})})})},mb=a=>{for(;0>0]=b;break;case "i8":u[a>>0]=b;break;case "i16":z.setInt16(2*(a>>1),b,!0);break;case "i32":z.setInt32(4*(a>>2),b,!0);break;case "i64":Oa[a>>3]=BigInt(b);break;case "float":z.setFloat32(4*(a>>2),b,!0);break;case "double":z.setFloat64(8*(a>>3),b,!0);break;case "*":z.setUint32(4*(a>>2),b,!0);break;default:Ga(`invalid type for setValue: ${c}`)}} -var ob=(a,b)=>{for(var c=0,d=a.length-1;0<=d;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c;c--)a.unshift("..");return a},pb=a=>{var b="/"===a.charAt(0),c="/"===a.substr(-1);(a=ob(a.split("/").filter(d=>!!d),!b).join("/"))||b||(a=".");a&&c&&(a+="/");return(b?"/":"")+a},qb=a=>{var b=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(a).slice(1);a=b[0];b=b[1];if(!a&&!b)return".";b&&=b.substr(0,b.length-1);return a+b},rb=a=>{if("/"=== -a)return"/";a=pb(a);a=a.replace(/\/$/,"");var b=a.lastIndexOf("/");return-1===b?a:a.substr(b+1)},sb=()=>{if("object"==typeof crypto&&"function"==typeof crypto.getRandomValues)return a=>crypto.getRandomValues(a);Ga("initRandomDevice")},tb=a=>(tb=sb())(a); -function ub(){for(var a="",b=!1,c=arguments.length-1;-1<=c&&!b;c--){b=0<=c?arguments[c]:"/";if("string"!=typeof b)throw new TypeError("Arguments to path.resolve must be strings");if(!b)return"";a=b+"/"+a;b="/"===b.charAt(0)}a=ob(a.split("/").filter(d=>!!d),!b).join("/");return(b?"/":"")+a||"."} -var vb="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0,E=(a,b,c)=>{var d=b+c;for(c=b;a[c]&&!(c>=d);)++c;if(16e?d+=String.fromCharCode(e):(e-=65536,d+=String.fromCharCode(55296|e>>10,56320|e&1023))}}else d+=String.fromCharCode(e)}return d}, -wb=[],xb=a=>{for(var b=0,c=0;c=d?b++:2047>=d?b+=2:55296<=d&&57343>=d?(b+=4,++c):b+=3}return b},C=(a,b,c,d)=>{if(!(0=g){var m=a.charCodeAt(++f);g=65536+((g&1023)<<10)|m&1023}if(127>=g){if(c>=d)break;b[c++]=g}else{if(2047>=g){if(c+1>=d)break;b[c++]=192|g>>6}else{if(65535>=g){if(c+2>=d)break;b[c++]=224|g>>12}else{if(c+3>=d)break;b[c++]=240|g>>18;b[c++]=128|g>>12& -63}b[c++]=128|g>>6&63}b[c++]=128|g&63}}b[c]=0;return c-e};function zb(a,b){var c=Array(xb(a)+1);a=C(a,c,0,c.length);b&&(c.length=a);return c}var Ab=[];function Bb(a,b){Ab[a]={input:[],Xi:[],jj:b};Cb(a,Db)} -var Db={open(a){var b=Ab[a.node.Bj];if(!b)throw new F(43);a.Si=b;a.seekable=!1},close(a){a.Si.jj.Jj(a.Si)},Jj(a){a.Si.jj.Jj(a.Si)},read(a,b,c,d){if(!a.Si||!a.Si.jj.qk)throw new F(60);for(var e=0,f=0;f{a=65536*Math.ceil(a/65536);var b=Gb(65536,a);b?(v.fill(0,b,b+a),a=b):a=0;return a};function Ib(a,b){var c=a.Qi?a.Qi.length:0;c>=b||(b=Math.max(b,c*(1048576>c?2:1.125)>>>0),0!=c&&(b=Math.max(b,256)),c=a.Qi,a.Qi=new Uint8Array(b),0=a.node.Ti)return 0;a=Math.min(a.node.Ti-e,d);if(8b)throw new F(28);return b},Fj(a,b,c){Ib(a.node,b+c);a.node.Ti=Math.max(a.node.Ti,b+c)},zj(a,b,c,d,e){if(32768!==(a.node.mode&61440))throw new F(43);a=a.node.Qi;if(e&2||a.buffer!==u.buffer){if(0{var d=`al ${a}`;Aa(a,e=>{e||Ga(`Loading data file "${a}" failed (no arrayBuffer).`);b(new Uint8Array(e));d&&$a(d)},()=>{if(c)c();else throw`Loading data file "${a}" failed.`;});d&&Za(d)},Ob=h.preloadPlugins||[],Rb=(a,b,c,d)=>{"undefined"!=typeof Pb&&Qb();var e=!1;Ob.forEach(f=>{!e&&f.canHandle(b)&&(f.handle(a,b,c,d),e=!0)});return e},Tb=(a, -b,c,d,e,f,g,m,n,q)=>{function r(p){function B(D){q?.();m||Sb(a,b,D,d,e,n);f?.();$a(w)}Rb(p,t,B,()=>{g?.();$a(w)})||B(p)}var t=b?ub(pb(a+"/"+b)):a,w=`cp ${t}`;Za(w);"string"==typeof c?Nb(c,p=>r(p),g):r(c)},Ub=(a,b)=>{var c=0;a&&(c|=365);b&&(c|=146);return c},l={Ij:{},indexedDB:()=>{if("undefined"!=typeof indexedDB)return indexedDB;var a=null;"object"==typeof window&&(a=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB);a||Ga("IDBFS used, but indexedDB not supported"); -return a},Bk:21,nj:"FILE_DATA",Yi:function(a){return G.Yi.apply(null,arguments)},Vj:(a,b,c)=>{l.Uk(a,(d,e)=>{if(d)return c(d);l.Vk(a,(f,g)=>{if(f)return c(f);l.hl(b?g:e,b?e:g,c)})})},Ll:()=>{Object.values(l.Ij).forEach(a=>a.close());l.Ij={}},Tk:(a,b)=>{var c=l.Ij[a];if(c)return b(null,c);try{var d=l.indexedDB().open(a,l.Bk)}catch(e){return b(e)}if(!d)return b("Unable to connect to IndexedDB");d.onupgradeneeded=e=>{var f=e.target.result;e=e.target.transaction;var g;f.objectStoreNames.contains(l.nj)? -g=e.objectStore(l.nj):g=f.createObjectStore(l.nj);g.indexNames.contains("timestamp")||g.createIndex("timestamp","timestamp",{unique:!1})};d.onsuccess=()=>{c=d.result;l.Ij[a]=c;b(null,c)};d.onerror=e=>{b(e.target.error);e.preventDefault()}},Uk:(a,b)=>{function c(m){return"."!==m&&".."!==m}function d(m){return n=>pb(m+"/"+n)}var e={};for(a=Vb(a.Aj).filter(c).map(d(a.Aj));a.length;){var f=a.pop();try{var g=Wb(f)}catch(m){return b(m)}H(g.mode)&&a.push.apply(a,Vb(f).filter(c).map(d(f)));e[f]={timestamp:g.Qj}}return b(null, -{type:"local",entries:e})},Vk:(a,b)=>{var c={};l.Tk(a.Aj,(d,e)=>{if(d)return b(d);try{var f=e.transaction([l.nj],"readonly");f.onerror=g=>{b(g.target.error);g.preventDefault()};f.objectStore(l.nj).index("timestamp").openKeyCursor().onsuccess=g=>{g=g.target.result;if(!g)return b(null,{type:"remote",db:e,entries:c});c[g.primaryKey]={timestamp:g.key};g.continue()}}catch(g){return b(g)}})},el:(a,b)=>{try{var c=I(a).node;var d=Wb(a)}catch(f){return b(f)}if(H(d.mode))return b(null,{timestamp:d.Qj,mode:d.mode}); -if(32768===(d.mode&61440)){a=c;var e=c.Qi?c.Qi.subarray?c.Qi.subarray(0,c.Ti):new Uint8Array(c.Qi):new Uint8Array(0);a.Qi=e;return b(null,{timestamp:d.Qj,mode:d.mode,contents:c.Qi})}return b(Error("node type not supported"))},ml:(a,b,c)=>{try{if(H(b.mode))for(var d=b.mode,e=a.split("/"),f="",g=0;g{try{var c=Wb(a);H(c.mode)?ac(a):32768===(c.mode&61440)&&bc(a)}catch(d){return b(d)}b(null)},fl:(a,b,c)=>{a=a.get(b);a.onsuccess=d=> -c(null,d.target.result);a.onerror=d=>{c(d.target.error);d.preventDefault()}},nl:(a,b,c,d)=>{try{var e=a.put(c,b)}catch(f){d(f);return}e.onsuccess=()=>d();e.onerror=f=>{d(f.target.error);f.preventDefault()}},jl:(a,b,c)=>{a=a.delete(b);a.onsuccess=()=>c();a.onerror=d=>{c(d.target.error);d.preventDefault()}},hl:(a,b,c)=>{function d(r){if(r&&!m)return m=!0,c(r)}var e=0,f=[];Object.keys(a.entries).forEach(function(r){var t=a.entries[r],w=b.entries[r];w&&t.timestamp.getTime()==w.timestamp.getTime()||(f.push(r), -e++)});var g=[];Object.keys(b.entries).forEach(function(r){a.entries[r]||(g.push(r),e++)});if(!e)return c(null);var m=!1,n=("remote"===a.type?a.db:b.db).transaction([l.nj],"readwrite"),q=n.objectStore(l.nj);n.onerror=r=>{d(this.error);r.preventDefault()};n.oncomplete=()=>{m||c(null)};f.sort().forEach(r=>{"local"===b.type?l.fl(q,r,(t,w)=>{if(t)return d(t);l.ml(r,w,d)}):l.el(r,(t,w)=>{if(t)return d(t);l.nl(q,r,w,d)})});g.sort().reverse().forEach(r=>{"local"===b.type?l.il(r,d):l.jl(q,r,d)})}},cc=null, -dc={},ec=[],fc=1,gc=null,hc=!0,F=null,Lb={},ic=0;function I(a,b={}){a=ub(a);if(!a)return{path:"",node:null};b=Object.assign({nk:!0,dk:0},b);if(8!!g);for(var c=cc,d="/",e=0;e>>0)%gc.length}function mc(a){var b=lc(a.parent.id,a.name);if(gc[b]===a)gc[b]=a.vj;else for(b=gc[b];b;){if(b.vj===a){b.vj=a.vj;break}b=b.vj}} -function Mb(a,b){var c;if(c=(c=nc(a,"x"))?c:a.Pi.yj?0:2)throw new F(c,a);for(c=gc[lc(a.id,b)];c;c=c.vj){var d=c.name;if(c.parent.id===a.id&&d===b)return c}return a.Pi.yj(a,b)}function Kb(a,b,c,d){a=new oc(a,b,c,d);b=lc(a.parent.id,a.name);a.vj=gc[b];return gc[b]=a}function H(a){return 16384===(a&61440)}function pc(a){var b=["r","w","rw"][a&3];a&512&&(b+="w");return b} -function nc(a,b){if(hc)return 0;if(!b.includes("r")||a.mode&292){if(b.includes("w")&&!(a.mode&146)||b.includes("x")&&!(a.mode&73))return 2}else return 2;return 0}function qc(a,b){try{return Mb(a,b),20}catch(c){}return nc(a,"wx")}function rc(a,b,c){try{var d=Mb(a,b)}catch(e){return e.Vi}if(a=nc(a,"wx"))return a;if(c){if(!H(d.mode))return 54;if(d===d.parent||"/"===kc(d))return 10}else if(H(d.mode))return 31;return 0}function sc(){for(var a=0;4096>=a;a++)if(!ec[a])return a;throw new F(33);} -function L(a){a=ec[a];if(!a)throw new F(8);return a}function tc(a,b=-1){uc||(uc=function(){this.dj={}},uc.prototype={},Object.defineProperties(uc.prototype,{object:{get(){return this.node},set(c){this.node=c}},flags:{get(){return this.dj.flags},set(c){this.dj.flags=c}},position:{get(){return this.dj.position},set(c){this.dj.position=c}}}));a=Object.assign(new uc,a);-1==b&&(b=sc());a.fd=b;return ec[b]=a}var Jb={open(a){a.Ri=dc[a.node.Bj].Ri;a.Ri.open?.(a)},qj(){throw new F(70);}}; -function Cb(a,b){dc[a]={Ri:b}}function vc(){for(var a=[],b=[cc.Yi];b.length;){var c=b.pop();a.push(c);b.push.apply(b,c.uk)}return a}function qa(a,b){function c(g){ic--;return b(g)}function d(g){if(g){if(!d.Pk)return d.Pk=!0,c(g)}else++f>=e.length&&c(null)}"function"==typeof a&&(b=a,a=!1);ic++;1{if(!g.type.Vj)return d(null);g.type.Vj(g,a,d)})} -function oa(a,b){var c="/"===b,d=!b;if(c&&cc)throw new F(10);if(!c&&!d){var e=I(b,{nk:!1});b=e.path;e=e.node;if(e.uj)throw new F(10);if(!H(e.mode))throw new F(54);}b={type:a,Jl:{},Aj:b,uk:[]};a=a.Yi(b);a.Yi=b;b.root=a;c?cc=a:e&&(e.uj=b,e.Yi&&e.Yi.uk.push(b))}function wc(a,b,c){var d=I(a,{parent:!0}).node;a=rb(a);if(!a||"."===a||".."===a)throw new F(28);var e=qc(d,a);if(e)throw new F(e);if(!d.Pi.Oj)throw new F(63);return d.Pi.Oj(d,a,b,c)} -function k(a,b){return wc(a,(void 0!==b?b:511)&1023|16384,0)}function xc(a,b,c){"undefined"==typeof c&&(c=b,b=438);return wc(a,b|8192,c)}function yc(a,b){if(!ub(a))throw new F(44);var c=I(b,{parent:!0}).node;if(!c)throw new F(44);b=rb(b);var d=qc(c,b);if(d)throw new F(d);if(!c.Pi.Uj)throw new F(63);c.Pi.Uj(c,b,a)}function ac(a){var b=I(a,{parent:!0}).node;a=rb(a);var c=Mb(b,a),d=rc(b,a,!0);if(d)throw new F(d);if(!b.Pi.Sj)throw new F(63);if(c.uj)throw new F(10);b.Pi.Sj(b,a);mc(c)} -function Vb(a){a=I(a,{tj:!0}).node;if(!a.Pi.Rj)throw new F(54);return a.Pi.Rj(a)}function bc(a){var b=I(a,{parent:!0}).node;if(!b)throw new F(44);a=rb(a);var c=Mb(b,a),d=rc(b,a,!1);if(d)throw new F(d);if(!b.Pi.Yj)throw new F(63);if(c.uj)throw new F(10);b.Pi.Yj(b,a);mc(c)}function jc(a){a=I(a).node;if(!a)throw new F(44);if(!a.Pi.Cj)throw new F(28);return ub(kc(a.parent),a.Pi.Cj(a))}function Wb(a,b){a=I(a,{tj:!b}).node;if(!a)throw new F(44);if(!a.Pi.gj)throw new F(63);return a.Pi.gj(a)} -function zc(a){return Wb(a,!0)}function $b(a,b){a="string"==typeof a?I(a,{tj:!0}).node:a;if(!a.Pi.$i)throw new F(63);a.Pi.$i(a,{mode:b&4095|a.mode&-4096,timestamp:Date.now()})} -function Xb(a,b,c){if(""===a)throw new F(44);if("string"==typeof b){var d={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[b];if("undefined"==typeof d)throw Error(`Unknown file open mode: ${b}`);b=d}c=b&64?("undefined"==typeof c?438:c)&4095|32768:0;if("object"==typeof a)var e=a;else{a=pb(a);try{e=I(a,{tj:!(b&131072)}).node}catch(f){}}d=!1;if(b&64)if(e){if(b&128)throw new F(20);}else e=wc(a,c,0),d=!0;if(!e)throw new F(44);8192===(e.mode&61440)&&(b&=-513);if(b&65536&&!H(e.mode))throw new F(54);if(!d&&(c= -e?40960===(e.mode&61440)?32:H(e.mode)&&("r"!==pc(b)||b&512)?31:nc(e,pc(b)):44))throw new F(c);if(b&512&&!d){c=e;c="string"==typeof c?I(c,{tj:!0}).node:c;if(!c.Pi.$i)throw new F(63);if(H(c.mode))throw new F(31);if(32768!==(c.mode&61440))throw new F(28);if(d=nc(c,"w"))throw new F(d);c.Pi.$i(c,{size:0,timestamp:Date.now()})}b&=-131713;e=tc({node:e,path:kc(e),flags:b,seekable:!0,position:0,Ri:e.Ri,sl:[],error:!1});e.Ri.open&&e.Ri.open(e);!h.logReadFiles||b&1||(Ac||={},a in Ac||(Ac[a]=1));return e} -function Zb(a){if(null===a.fd)throw new F(8);a.pj&&(a.pj=null);try{a.Ri.close&&a.Ri.close(a)}catch(b){throw b;}finally{ec[a.fd]=null}a.fd=null}function Bc(a,b,c){if(null===a.fd)throw new F(8);if(!a.seekable||!a.Ri.qj)throw new F(70);if(0!=c&&1!=c&&2!=c)throw new F(28);a.position=a.Ri.qj(a,b,c);a.sl=[];return a.position} -function Yb(a,b,c,d,e,f){if(0>d||0>e)throw new F(28);if(null===a.fd)throw new F(8);if(0===(a.flags&2097155))throw new F(8);if(H(a.node.mode))throw new F(31);if(!a.Ri.write)throw new F(28);a.seekable&&a.flags&1024&&Bc(a,0,2);var g="undefined"!=typeof e;if(!g)e=a.position;else if(!a.seekable)throw new F(70);b=a.Ri.write(a,b,c,d,e,f);g||(a.position+=b);return b} -function Cc(){F||(F=function(a,b){this.name="ErrnoError";this.node=b;this.kl=function(c){this.Vi=c};this.kl(a);this.message="FS error"},F.prototype=Error(),F.prototype.constructor=F,[44].forEach(a=>{Lb[a]=new F(a);Lb[a].stack=""}))}var Dc;function Ec(a,b){a="string"==typeof a?a:kc(a);for(b=b.split("/").reverse();b.length;){var c=b.pop();if(c){var d=pb(a+"/"+c);try{k(d)}catch(e){}a=d}}return d} -function Fc(a,b,c,d){a=pb(("string"==typeof a?a:kc(a))+"/"+b);c=Ub(c,d);return wc(a,(void 0!==c?c:438)&4095|32768,0)}function Sb(a,b,c,d,e,f){var g=b;a&&(a="string"==typeof a?a:kc(a),g=b?pb(a+"/"+b):a);a=Ub(d,e);g=wc(g,(void 0!==a?a:438)&4095|32768,0);if(c){if("string"==typeof c){b=Array(c.length);d=0;for(e=c.length;d=n.length)return 0;t=Math.min(n.length-w,t);if(n.slice)for(var p=0;p{var q=g.Ri[n];m[n]=function(){Hc(g);return q.apply(null,arguments)}});m.read=(n,q,r,t,w)=>{Hc(g);return f(n,q,r,t,w)};m.zj=(n,q,r)=>{Hc(g);var t=Hb(q);if(!t)throw new F(48);f(n,u,t,q,r);return{xk:t,kj:!0}};g.Ri=m;return g}var M={},uc,Ac,Jc=(a,b)=>a?E(v,a,b):"";function Kc(a,b,c){if("/"===b.charAt(0))return b;a=-100===a?"/":L(a).path;if(0==b.length){if(!c)throw new F(44);return a}return pb(a+"/"+b)} -function Lc(a,b,c){try{var d=a(b)}catch(f){if(f&&f.node&&pb(b)!==pb(kc(f.node)))return-54;throw f;}z.setInt32(4*(c>>2),d.Ok,!0);z.setInt32(4*(c+4>>2),d.mode,!0);z.setUint32(4*(c+8>>2),d.gl,!0);z.setInt32(4*(c+12>>2),d.uid,!0);z.setInt32(4*(c+16>>2),d.Wk,!0);z.setInt32(4*(c+20>>2),d.Bj,!0);Oa[c+24>>3]=BigInt(d.size);z.setInt32(4*(c+32>>2),4096,!0);z.setInt32(4*(c+36>>2),d.Gk,!0);a=d.Ek.getTime();b=d.Qj.getTime();var e=d.Hk.getTime();Oa[c+40>>3]=BigInt(Math.floor(a/1E3));z.setUint32(4*(c+48>>2),a%1E3* -1E3,!0);Oa[c+56>>3]=BigInt(Math.floor(b/1E3));z.setUint32(4*(c+64>>2),b%1E3*1E3,!0);Oa[c+72>>3]=BigInt(Math.floor(e/1E3));z.setUint32(4*(c+80>>2),e%1E3*1E3,!0);Oa[c+88>>3]=BigInt(d.Zk);return 0}var Mc=void 0;function Nc(){var a=z.getInt32(4*(+Mc>>2),!0);Mc+=4;return a} -var Oc=a=>0===a%4&&(0!==a%100||0===a%400),Pc=[0,31,60,91,121,152,182,213,244,274,305,335],Qc=[0,31,59,90,120,151,181,212,243,273,304,334],Rc=a=>{var b=xb(a)+1,c=A(b);c&&C(a,v,c,b);return c},bd=(a,b)=>{Sc=a;Tc=b;if(Uc)if(Vc||=!0,0==a)Wc=function(){var d=Math.max(0,Xc+b-Yc())|0;setTimeout(Zc,d)};else if(1==a)Wc=function(){$c(Zc)};else if(2==a){if("undefined"==typeof ad)if("undefined"==typeof setImmediate){var c=[];addEventListener("message",d=>{if("setimmediate"===d.data||"setimmediate"===d.data.target)d.stopPropagation(), -c.shift()()},!0);ad=function(d){c.push(d);postMessage("setimmediate","*")}}else ad=setImmediate;Wc=function(){ad(Zc)}}},Yc;Yc=()=>performance.now(); -var kd=(a,b,c,d,e)=>{!Uc||Ga("emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Uc=a;cd=d;var f=dd;Vc=!1;Zc=function(){if(!Ia)if(0{a instanceof kb||"unwind"==a||xa(1,a)},md=0,nd=a=>{Ja=a;nb||0{Ja=a;nd(a)},jd=a=>{if(!Ia)try{if(a(),!(nb||0 -setTimeout(()=>{jd(a)},b),Vc=!1,Wc=null,dd=0,Uc=null,cd=0,Sc=0,Tc=0,hd=0,ed=[];function qd(){Wc=null;dd++}function rd(){dd++;var a=Sc,b=Tc,c=Uc;Uc=null;kd(c,0,!1,cd,!0);bd(a,b);Wc()}var gd={},Xc,Zc,fd,sd=!1,td=!1,ud=[]; -function Qb(){function a(){td=document.pointerLockElement===h.canvas||document.mozPointerLockElement===h.canvas||document.webkitPointerLockElement===h.canvas||document.msPointerLockElement===h.canvas}if(!vd){vd=!0;Ob.push({canHandle:function(c){return!h.Il&&/\.(jpg|jpeg|png|bmp)$/i.test(c)},handle:function(c,d,e,f){var g=new Blob([c],{type:wd(d)});g.size!==c.length&&(g=new Blob([(new Uint8Array(c)).buffer],{type:wd(d)}));var m=URL.createObjectURL(g),n=new Image;n.onload=()=>{n.complete||Ga(`Image ${d} could not be decoded`); -var q=document.createElement("canvas");q.width=n.width;q.height=n.height;q.getContext("2d").drawImage(n,0,0);URL.revokeObjectURL(m);e?.(c)};n.onerror=()=>{Ea(`Image ${m} could not be decoded`);f?.()};n.src=m}});Ob.push({canHandle:function(c){return!h.Hl&&c.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(c,d,e){function f(){g||(g=!0,e?.(c))}var g=!1,m=URL.createObjectURL(new Blob([c],{type:wd(d)})),n=new Audio;n.addEventListener("canplaythrough",()=>f(n),!1);n.onerror=function(){if(!g){Ea(`warning: browser could not fully decode audio ${d}, trying slower base64 approach`); -for(var q="",r=0,t=0,w=0;w>t-6&63;t-=6;q+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[p]}2==t?(q+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(r&3)<<4],q+="=="):4==t&&(q+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(r&15)<<2],q+="=");n.src="data:audio/x-"+d.substr(-3)+";base64,"+q;f(n)}};n.src=m;pd(()=>{f(n)},1E4)}});var b=h.canvas;b&&(b.requestPointerLock=b.requestPointerLock||b.mozRequestPointerLock|| +var h;h||=typeof Module != 'undefined' ? Module : {};var ba=document.getElementById("status"),ca=document.getElementById("progress"),da=document.getElementById("spinner"),ea=document.getElementById("canvas"),fa=document.getElementById("canvasContainer"),ha=document.getElementById("logToggle"),ia=document.getElementById("logToggleContainer"),ja=document.getElementById("logContainer"),ka=document.getElementById("output"),la=ba.innerText;ha.checked=!1; +window.toggleLog=function(){ja.hidden=!ha.checked;ka.scrollTop=ka.scrollHeight};var ma=ea.getContext("webgl2",{alpha:!1,antialias:!1,depth:!1,powerPreference:"high-performance",premultipliedAlpha:!0,preserveDrawingBuffer:!1,stencil:!1});if(!ma)throw"Could not create a WebGL 2 context";ma.getSupportedExtensions().forEach(function(a){ma.getExtension(a)});ea.addEventListener("webglcontextlost",function(a){alert("WebGL context lost. You will need to reload the page.");a.preventDefault()},!1); +ka.value=""; +h={preRun:[function(){na.TAISEI_NOASYNC="1";na.TAISEI_NOUNLOAD="1";na.TAISEI_PREFER_SDL_VIDEODRIVERS="emscripten";na.TAISEI_RENDERER="gles30";k("/persistent");oa(l,"/persistent")}],postRun:[],onFirstFrame:function(){fa.hidden=!1;ia.style.display="inline-block";h.setStatus("",!0)},print:function(a){1d-c.Ej.time||(c.Ej.time=d,c.Ej.text=a,b?(a=b[1],ca.value=100*parseInt(b[2]),ca.max=100*parseInt(b[4]),ca.hidden=!1,da.hidden=!ea.hidden):(ca.value=null,ca.max=null,ca.hidden=!0,a||(da.hidden=!0)),ba.innerText=a.replace(/^Downloading(?: data)?\.\.\./,la).replace("...","\u2026"),console.log("[STATUS] "+ +ba.innerText))}},totalDependencies:0,monitorRunDependencies:function(a){h.totalDependencies=Math.max(h.totalDependencies,a);h.setStatus(a?"Preparing\u2026 ("+(h.totalDependencies-a)+"/"+h.totalDependencies+")":"All downloads complete.")}};window.onerror=function(a){h.setStatus("Error: "+a)};function qa(a,b){sa(a,function(c){h.ccall("vfs_sync_callback",null,["boolean","string","number"],[a,c,b],{async:!0})})} +(function(){function a(){var b=h.SDL2;"undefined"!==typeof b&&("suspended"==b.Wi.state&&b.Wi.resume(),"running"==b.Wi.state&&(ea.removeEventListener("click",a),document.removeEventListener("keydown",a)))}ea.addEventListener("click",a);document.addEventListener("keydown",a)})();"undefined"===typeof ta&&(ta=window.dynCall=h.dynCall=function(a,b,c){return ua.get(b).apply(this,c)});var va=Object.assign({},h),wa=[],ya="./this.program",za="",Aa; +"undefined"!=typeof document&&document.currentScript&&(za=document.currentScript.src);za=za.startsWith("blob:")?"":za.substr(0,za.replace(/[?#].*/,"").lastIndexOf("/")+1);Aa=a=>fetch(a,{credentials:"same-origin"}).then(b=>b.ok?b.arrayBuffer():Promise.reject(Error(b.status+" : "+b.url)));var Ba=h.print||console.log.bind(console),Ca=h.printErr||console.error.bind(console);Object.assign(h,va);va=null;h.arguments&&(wa=h.arguments);h.thisProgram&&(ya=h.thisProgram); +var Da=h.wasmBinary,Ea,Fa=!1,Ga,t,v,Ha,Ia,Ja,Ka,w,x,z;function La(){var a=Ea.buffer;h.HEAP_DATA_VIEW=z=new DataView(a);h.HEAP8=t=new Int8Array(a);h.HEAP16=Ha=new Int16Array(a);h.HEAPU8=v=new Uint8Array(a);h.HEAPU16=Ia=new Uint16Array(a);h.HEAP32=Ja=new Int32Array(a);h.HEAPU32=Ka=new Uint32Array(a);h.HEAPF32=w=new Float32Array(a);h.HEAPF64=new Float64Array(a);h.HEAP64=x=new BigInt64Array(a);h.HEAPU64=new BigUint64Array(a)}var Ma=[],Na=[],Oa=[],Pa=[]; +function Qa(){var a=h.preRun.shift();Ma.unshift(a)}var Ra=0,Sa=null,Ta=null;function Ua(){Ra++;h.monitorRunDependencies?.(Ra)}function Va(){Ra--;h.monitorRunDependencies?.(Ra);if(0==Ra&&(null!==Sa&&(clearInterval(Sa),Sa=null),Ta)){var a=Ta;Ta=null;a()}}function Wa(a){h.onAbort?.(a);a="Aborted("+a+")";Ca(a);Fa=!0;throw new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");}var Xa=a=>a.startsWith("data:application/octet-stream;base64,"),Ya; +function Za(a){if(a==Ya&&Da)return new Uint8Array(Da);throw"both async and sync fetching of the wasm failed";}function $a(a){return Da?Promise.resolve().then(()=>Za(a)):Aa(a).then(b=>new Uint8Array(b),()=>Za(a))}function ab(a,b,c){return $a(a).then(d=>WebAssembly.instantiate(d,b)).then(c,d=>{Ca(`failed to asynchronously prepare wasm: ${d}`);Wa(d)})} +function bb(a,b){var c=Ya;Da||"function"!=typeof WebAssembly.instantiateStreaming||Xa(c)||"function"!=typeof fetch?ab(c,a,b):fetch(c,{credentials:"same-origin"}).then(d=>WebAssembly.instantiateStreaming(d,a).then(b,function(e){Ca(`wasm streaming compile failed: ${e}`);Ca("falling back to ArrayBuffer instantiation");return ab(c,a,b)}))} +var eb={1145560:(a,b)=>{qa(a,b)},1145580:()=>"undefined"!==typeof AudioContext||"undefined"!==typeof webkitAudioContext?!0:!1,1145727:()=>"undefined"!==typeof navigator.mediaDevices&&"undefined"!==typeof navigator.mediaDevices.getUserMedia||"undefined"!==typeof navigator.webkitGetUserMedia?!0:!1,1145961:a=>{"undefined"===typeof h.SDL2&&(h.SDL2={});var b=h.SDL2;a?b.capture={}:b.audio={};b.Wi||("undefined"!==typeof AudioContext?b.Wi=new AudioContext:"undefined"!==typeof webkitAudioContext&&(b.Wi=new webkitAudioContext), +b.Wi&&cb(b.Wi));return void 0===b.Wi?-1:0},1146454:()=>h.SDL2.Wi.sampleRate,1146522:(a,b,c,d)=>{function e(){}function f(m){void 0!==g.capture.Kj&&(clearTimeout(g.capture.Kj),g.capture.Kj=void 0);g.capture.Wj=g.Wi.createMediaStreamSource(m);g.capture.bj=g.Wi.createScriptProcessor(b,a,1);g.capture.bj.onaudioprocess=function(n){void 0!==g&&void 0!==g.capture&&(n.outputBuffer.getChannelData(0).fill(0),g.capture.dk=n.inputBuffer,ta("vi",c,[d]))};g.capture.Wj.connect(g.capture.bj);g.capture.bj.connect(g.Wi.destination); +g.capture.stream=m}var g=h.SDL2;g.capture.bk=g.Wi.createBuffer(a,b,g.Wi.sampleRate);g.capture.bk.getChannelData(0).fill(0);g.capture.Kj=setTimeout(function(){g.capture.dk=g.capture.bk;ta("vi",c,[d])},b/g.Wi.sampleRate*1E3);void 0!==navigator.mediaDevices&&void 0!==navigator.mediaDevices.getUserMedia?navigator.mediaDevices.getUserMedia({audio:!0,video:!1}).then(f).catch(e):void 0!==navigator.webkitGetUserMedia&&navigator.webkitGetUserMedia({audio:!0,video:!1},f,e)},1148174:(a,b,c,d)=>{var e=h.SDL2; +e.audio.bj=e.Wi.createScriptProcessor(b,0,a);e.audio.bj.onaudioprocess=function(f){void 0!==e&&void 0!==e.audio&&(e.audio.Bk=f.outputBuffer,ta("vi",c,[d]))};e.audio.bj.connect(e.Wi.destination)},1148584:(a,b)=>{for(var c=h.SDL2,d=c.capture.dk.numberOfChannels,e=0;e{for(var c=h.SDL2,d=c.audio.Bk.numberOfChannels,e=0;e>2),!0)}},1149669:a=>{var b=h.SDL2;if(a){void 0!==b.capture.Kj&&clearTimeout(b.capture.Kj);if(void 0!==b.capture.stream){a=b.capture.stream.getAudioTracks();for(var c=0;cwindow.innerWidth,1150871:()=>window.innerHeight,1150902:(a, +b,c)=>{h.SDL2||(h.SDL2={});var d=h.SDL2;d.Wk!==h.canvas&&(d.hj=h.createContext(h.canvas,!1,!0),d.Wk=h.canvas);if(d.w!==a||d.h!==b||d.ll!==d.hj)d.image=d.hj.createImageData(a,b),d.w=a,d.h=b,d.ll=d.hj;a=d.image.data;b=c>>2;var e=0;if("undefined"!==typeof CanvasPixelArray&&a instanceof CanvasPixelArray)for(c=a.length;e>8&255;a[e+2]=f>>16&255;a[e+3]=255;b++;e+=4}else if(d.$k!==a&&(d.Zk=new Int32Array(a.buffer),d.al=new Uint8Array(a.buffer),d.$k=a),a=d.Zk, +c=a.length,a.set(Ja.subarray(b,b+c)),a=d.al,b=3,e=b+4*c,0==c%8)for(;b{var f=document.createElement("canvas");f.width=a;f.height=b;var g=f.getContext("2d");a=g.createImageData(a,b);b=a.data;e>>=2;var m=0,n;if("undefined"!==typeof CanvasPixelArray&&b instanceof CanvasPixelArray)for(n= +b.length;m>8&255;b[m+2]=p>>16&255;b[m+3]=p>>24&255;e++;m+=4}else b=new Int32Array(b.buffer),n=b.length,b.set(Ja.subarray(e,e+n));g.putImageData(a,0,0);c=0===c&&0===d?"url("+f.toDataURL()+"), auto":"url("+f.toDataURL()+") "+c+" "+d+", auto";d=A(c.length+1);B(c,v,d,c.length+1);return d},1153360:a=>{h.canvas&&(h.canvas.style.cursor=a?C(v,a):"")},1153443:()=>{h.canvas&&(h.canvas.style.cursor="none")},1153512:()=>{h.onFirstFrame()}}; +function fb(a){this.name="ExitStatus";this.message=`Program terminated with exit(${a})`;this.status=a}var gb=(a,b,c)=>{a.addEventListener(b,c,{once:!0})},cb=a=>{var b;b||=[document,document.getElementById("canvas")];["keydown","mousedown","touchstart"].forEach(c=>{b.forEach(d=>{d&&gb(d,c,()=>{"suspended"===a.state&&a.resume()})})})},hb=a=>{for(;0>1),b,!0);break;case "i32":z.setInt32(4*(a>>2),b,!0);break;case "i64":x[a>>3]=BigInt(b);break;case "float":z.setFloat32(4*(a>>2),b,!0);break;case "double":z.setFloat64(8*(a>>3),b,!0);break;case "*":z.setUint32(4*(a>>2),b,!0);break;default:Wa(`invalid type for setValue: ${c}`)}}function jb(){var a=z.getInt32(4*(+kb>>2),!0);kb+=4;return a} +var mb=(a,b)=>{for(var c=0,d=a.length-1;0<=d;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c;c--)a.unshift("..");return a},nb=a=>{var b="/"===a.charAt(0),c="/"===a.substr(-1);(a=mb(a.split("/").filter(d=>!!d),!b).join("/"))||b||(a=".");a&&c&&(a+="/");return(b?"/":"")+a},pb=a=>{var b=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(a).slice(1);a=b[0];b=b[1];if(!a&&!b)return".";b&&=b.substr(0,b.length-1);return a+b},qb=a=>{if("/"=== +a)return"/";a=nb(a);a=a.replace(/\/$/,"");var b=a.lastIndexOf("/");return-1===b?a:a.substr(b+1)},rb=()=>{if("object"==typeof crypto&&"function"==typeof crypto.getRandomValues)return a=>crypto.getRandomValues(a);Wa("initRandomDevice")},sb=a=>(sb=rb())(a),tb=(...a)=>{for(var b="",c=!1,d=a.length-1;-1<=d&&!c;d--){c=0<=d?a[d]:"/";if("string"!=typeof c)throw new TypeError("Arguments to path.resolve must be strings");if(!c)return"";b=c+"/"+b;c="/"===c.charAt(0)}b=mb(b.split("/").filter(e=>!!e),!c).join("/"); +return(c?"/":"")+b||"."},ub="undefined"!=typeof TextDecoder?new TextDecoder:void 0,C=(a,b,c)=>{var d=b+c;for(c=b;a[c]&&!(c>=d);)++c;if(16e?d+=String.fromCharCode(e):(e-=65536,d+=String.fromCharCode(55296|e>>10,56320|e&1023))}}else d+=String.fromCharCode(e)}return d}, +vb=[],wb=a=>{for(var b=0,c=0;c=d?b++:2047>=d?b+=2:55296<=d&&57343>=d?(b+=4,++c):b+=3}return b},B=(a,b,c,d)=>{if(!(0=g){var m=a.charCodeAt(++f);g=65536+((g&1023)<<10)|m&1023}if(127>=g){if(c>=d)break;b[c++]=g}else{if(2047>=g){if(c+1>=d)break;b[c++]=192|g>>6}else{if(65535>=g){if(c+2>=d)break;b[c++]=224|g>>12}else{if(c+3>=d)break;b[c++]=240|g>>18;b[c++]=128|g>>12& +63}b[c++]=128|g>>6&63}b[c++]=128|g&63}}b[c]=0;return c-e},xb=[];function yb(a,b){xb[a]={input:[],$i:[],lj:b};zb(a,Ab)} +var Ab={open(a){var b=xb[a.node.Ij];if(!b)throw new D(43);a.Ui=b;a.seekable=!1},close(a){a.Ui.lj.Rj(a.Ui)},Rj(a){a.Ui.lj.Rj(a.Ui)},read(a,b,c,d){if(!a.Ui||!a.Ui.lj.Ek)throw new D(60);for(var e=0,f=0;f{a=65536*Math.ceil(a/65536);var b=Db(65536,a);b?(v.fill(0,b,b+a),a=b):a=0;return a};function Fb(a,b){var c=a.Ti?a.Ti.length:0;c>=b||(b=Math.max(b,c*(1048576>c?2:1.125)>>>0),0!=c&&(b=Math.max(b,256)),c=a.Ti,a.Ti=new Uint8Array(b),0=a.node.Vi)return 0;a=Math.min(a.node.Vi-e,d);if(8b)throw new D(28);return b},Nj(a,b,c){Fb(a.node,b+c);a.node.Vi=Math.max(a.node.Vi,b+c)},Gj(a,b,c,d,e){if(32768!==(a.node.mode&61440))throw new D(43);a=a.node.Ti;if(e&2||!a||a.buffer!==t.buffer){d=!0;e=Eb(b);if(!e)throw new D(48);if(a){if(0{var d=`al ${a}`;Aa(a).then(e=>{b(new Uint8Array(e));d&&Va(d)},()=>{if(c)c();else throw`Loading data file "${a}" failed.`;});d&&Ua(d)},Lb=h.preloadPlugins||[],Ob=(a,b,c,d)=>{"undefined"!=typeof Mb&&Nb();var e=!1;Lb.forEach(f=>{!e&&f.canHandle(b)&&(f.handle(a,b,c,d),e=!0)});return e},Qb=(a,b,c,d,e,f,g,m,n,p)=>{function q(H){function Z(pa){p?.();m||Pb(a,b,pa,d,e,n);f?.();Va(u)} +Ob(H,r,Z,()=>{g?.();Va(u)})||Z(H)}var r=b?tb(nb(a+"/"+b)):a,u=`cp ${r}`;Ua(u);"string"==typeof c?Kb(c,q,g):q(c)},Rb=(a,b)=>{var c=0;a&&(c|=365);b&&(c|=146);return c},l={Qj:{},indexedDB:()=>{if("undefined"!=typeof indexedDB)return indexedDB;var a=null;"object"==typeof window&&(a=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB);return a},Pk:21,qj:"FILE_DATA",zj:a=>{function b(){"again"===a.tj?c():a.tj=0}function c(){a.tj="idb";l.Lj(a,!1,b)}a.tj?"idb"===a.tj&&(a.tj= +"again"):a.tj=setTimeout(c,0)},Yi:a=>{var b=E.Yi(a);if(a?.wl?.Il){b.tj=0;var c=b.Ri;b.Ri=Object.assign({},b.Ri);b.Ri.wj=(d,e,f,g)=>{var m=c.wj(d,e,f,g);m.Ri=b.Ri;m.kl=b.Yi;m.lk=m.Si;m.Si=Object.assign({},m.Si);m.Si.write=(n,p,q,r,u,H)=>{n.node.Hk=!0;return m.lk.write(n,p,q,r,u,H)};m.Si.close=n=>{var p=n.node;p.Hk&&(l.zj(p.kl),p.Hk=!1);if(p.lk.close)return p.lk.close(n)};return m};b.Ri.ul=(...d)=>(l.zj(b.Yi),c.ul(...d));b.Ri.Aj=(...d)=>(l.zj(b.Yi),c.Aj(...d));b.Ri.Bj=(...d)=>(l.zj(b.Yi),c.Bj(...d)); +b.Ri.Cj=(...d)=>(l.zj(b.Yi),c.Cj(...d));b.Ri.ak=(...d)=>(l.zj(b.Yi),c.ak(...d))}return b},Lj:(a,b,c)=>{l.gl(a,(d,e)=>{if(d)return c(d);l.hl(a,(f,g)=>{if(f)return c(f);l.yl(b?g:e,b?e:g,c)})})},am:()=>{Object.values(l.Qj).forEach(a=>a.close());l.Qj={}},fl:(a,b)=>{var c=l.Qj[a];if(c)return b(null,c);try{var d=l.indexedDB().open(a,l.Pk)}catch(e){return b(e)}if(!d)return b("Unable to connect to IndexedDB");d.onupgradeneeded=e=>{var f=e.target.result;e=e.target.transaction;var g;f.objectStoreNames.contains(l.qj)? +g=e.objectStore(l.qj):g=f.createObjectStore(l.qj);g.indexNames.contains("timestamp")||g.createIndex("timestamp","timestamp",{unique:!1})};d.onsuccess=()=>{c=d.result;l.Qj[a]=c;b(null,c)};d.onerror=e=>{b(e.target.error);e.preventDefault()}},gl:(a,b)=>{function c(m){return"."!==m&&".."!==m}function d(m){return n=>nb(m+"/"+n)}var e={};for(a=Sb(a.Hj).filter(c).map(d(a.Hj));a.length;){var f=a.pop();try{var g=Tb(f)}catch(m){return b(m)}F(g.mode)&&a.push(...Sb(f).filter(c).map(d(f)));e[f]={timestamp:g.Zj}}return b(null, +{type:"local",entries:e})},hl:(a,b)=>{var c={};l.fl(a.Hj,(d,e)=>{if(d)return b(d);try{var f=e.transaction([l.qj],"readonly");f.onerror=g=>{b(g.target.error);g.preventDefault()};f.objectStore(l.qj).index("timestamp").openKeyCursor().onsuccess=g=>{g=g.target.result;if(!g)return b(null,{type:"remote",db:e,entries:c});c[g.primaryKey]={timestamp:g.key};g.continue()}}catch(g){return b(g)}})},sl:(a,b)=>{try{var c=G(a).node;var d=Tb(a)}catch(f){return b(f)}if(F(d.mode))return b(null,{timestamp:d.Zj,mode:d.mode}); +if(32768===(d.mode&61440)){a=c;var e=c.Ti?c.Ti.subarray?c.Ti.subarray(0,c.Vi):new Uint8Array(c.Ti):new Uint8Array(0);a.Ti=e;return b(null,{timestamp:d.Zj,mode:d.mode,contents:c.Ti})}return b(Error("node type not supported"))},Dl:(a,b,c)=>{try{if(F(b.mode))for(var d=b.mode,e=a.split("/"),f="",g=0;g{try{var c=Tb(a);F(c.mode)?Zb(a):32768===(c.mode&61440)&&$b(a)}catch(d){return b(d)}b(null)},tl:(a,b,c)=>{a=a.get(b);a.onsuccess=d=> +c(null,d.target.result);a.onerror=d=>{c(d.target.error);d.preventDefault()}},El:(a,b,c,d)=>{try{var e=a.put(c,b)}catch(f){d(f);return}e.onsuccess=()=>d();e.onerror=f=>{d(f.target.error);f.preventDefault()}},Bl:(a,b,c)=>{a=a.delete(b);a.onsuccess=()=>c();a.onerror=d=>{c(d.target.error);d.preventDefault()}},yl:(a,b,c)=>{function d(q){if(q&&!m)return m=!0,c(q)}var e=0,f=[];Object.keys(a.entries).forEach(q=>{var r=a.entries[q],u=b.entries[q];u&&r.timestamp.getTime()==u.timestamp.getTime()||(f.push(q), +e++)});var g=[];Object.keys(b.entries).forEach(q=>{a.entries[q]||(g.push(q),e++)});if(!e)return c(null);var m=!1,n=("remote"===a.type?a.db:b.db).transaction([l.qj],"readwrite"),p=n.objectStore(l.qj);n.onerror=n.onabort=q=>{d(q.target.error);q.preventDefault()};n.oncomplete=()=>{m||c(null)};f.sort().forEach(q=>{"local"===b.type?l.tl(p,q,(r,u)=>{if(r)return d(r);l.Dl(q,u,d)}):l.sl(q,(r,u)=>{if(r)return d(r);l.El(p,q,u,d)})});g.sort().reverse().forEach(q=>{"local"===b.type?l.Al(q,d):l.Bl(p,q,d)})}}, +ac=null,bc={},cc=[],dc=1,ec=null,fc=!1,gc=!0,D=class{constructor(a){this.name="ErrnoError";this.Xi=a}},Ib={},hc=0,ic={},jc=class{constructor(){this.aj={};this.node=null}get flags(){return this.aj.flags}set flags(a){this.aj.flags=a}get position(){return this.aj.position}set position(a){this.aj.position=a}},kc=class{constructor(a,b,c,d){a||=this;this.parent=a;this.Yi=a.Yi;this.xj=null;this.id=dc++;this.name=b;this.mode=c;this.Ri={};this.Si={};this.Ij=d}get read(){return 365===(this.mode&365)}set read(a){a? +this.mode|=365:this.mode&=-366}get write(){return 146===(this.mode&146)}set write(a){a?this.mode|=146:this.mode&=-147}get rl(){return F(this.mode)}get Gk(){return 8192===(this.mode&61440)}}; +function G(a,b={}){a=tb(a);if(!a)return{path:"",node:null};b=Object.assign({Dk:!0,pk:0},b);if(8!!g);for(var c=ac,d="/",e=0;e>>0)%ec.length}function oc(a){var b=nc(a.parent.id,a.name);if(ec[b]===a)ec[b]=a.yj;else for(b=ec[b];b;){if(b.yj===a){b.yj=a.yj;break}b=b.yj}} +function Jb(a,b){var c=F(a.mode)?(c=pc(a,"x"))?c:a.Ri.Fj?0:2:54;if(c)throw new D(c);for(c=ec[nc(a.id,b)];c;c=c.yj){var d=c.name;if(c.parent.id===a.id&&d===b)return c}return a.Ri.Fj(a,b)}function Hb(a,b,c,d){a=new kc(a,b,c,d);b=nc(a.parent.id,a.name);a.yj=ec[b];return ec[b]=a}function F(a){return 16384===(a&61440)}function qc(a){var b=["r","w","rw"][a&3];a&512&&(b+="w");return b} +function pc(a,b){if(gc)return 0;if(!b.includes("r")||a.mode&292){if(b.includes("w")&&!(a.mode&146)||b.includes("x")&&!(a.mode&73))return 2}else return 2;return 0}function rc(a,b){try{return Jb(a,b),20}catch(c){}return pc(a,"wx")}function sc(a,b,c){try{var d=Jb(a,b)}catch(e){return e.Xi}if(a=pc(a,"wx"))return a;if(c){if(!F(d.mode))return 54;if(d===d.parent||"/"===mc(d))return 10}else if(F(d.mode))return 31;return 0}function J(a){a=cc[a];if(!a)throw new D(8);return a} +function tc(a,b=-1){a=Object.assign(new jc,a);if(-1==b)a:{for(b=0;4096>=b;b++)if(!cc[b])break a;throw new D(33);}a.fd=b;return cc[b]=a}function uc(a,b=-1){a=tc(a,b);a.Si?.Tl?.(a);return a}var Gb={open(a){a.Si=bc[a.node.Ij].Si;a.Si.open?.(a)},uj(){throw new D(70);}};function zb(a,b){bc[a]={Si:b}}function vc(){for(var a=[],b=[ac.Yi];b.length;){var c=b.pop();a.push(c);b.push(...c.Jk)}return a} +function sa(a,b){function c(g){hc--;return b(g)}function d(g){if(g){if(!d.dl)return d.dl=!0,c(g)}else++f>=e.length&&c(null)}"function"==typeof a&&(b=a,a=!1);hc++;1{if(!g.type.Lj)return d(null);g.type.Lj(g,a,d)})} +function oa(a,b){var c="/"===b;if(c&&ac)throw new D(10);if(!c&&b){var d=G(b,{Dk:!1});b=d.path;d=d.node;if(d.xj)throw new D(10);if(!F(d.mode))throw new D(54);}b={type:a,wl:{},Hj:b,Jk:[]};a=a.Yi(b);a.Yi=b;b.root=a;c?ac=a:d&&(d.xj=b,d.Yi&&d.Yi.Jk.push(b))}function wc(a,b,c){var d=G(a,{parent:!0}).node;a=qb(a);if(!a||"."===a||".."===a)throw new D(28);var e=rc(d,a);if(e)throw new D(e);if(!d.Ri.wj)throw new D(63);return d.Ri.wj(d,a,b,c)}function k(a,b){return wc(a,(void 0!==b?b:511)&1023|16384,0)} +function xc(a,b,c){"undefined"==typeof c&&(c=b,b=438);return wc(a,b|8192,c)}function yc(a,b){if(!tb(a))throw new D(44);var c=G(b,{parent:!0}).node;if(!c)throw new D(44);b=qb(b);var d=rc(c,b);if(d)throw new D(d);if(!c.Ri.Bj)throw new D(63);c.Ri.Bj(c,b,a)}function Zb(a){var b=G(a,{parent:!0}).node;a=qb(a);var c=Jb(b,a),d=sc(b,a,!0);if(d)throw new D(d);if(!b.Ri.Aj)throw new D(63);if(c.xj)throw new D(10);b.Ri.Aj(b,a);oc(c)} +function Sb(a){a=G(a,{vj:!0}).node;if(!a.Ri.$j)throw new D(54);return a.Ri.$j(a)}function $b(a){var b=G(a,{parent:!0}).node;if(!b)throw new D(44);a=qb(a);var c=Jb(b,a),d=sc(b,a,!1);if(d)throw new D(d);if(!b.Ri.Cj)throw new D(63);if(c.xj)throw new D(10);b.Ri.Cj(b,a);oc(c)}function lc(a){a=G(a).node;if(!a)throw new D(44);if(!a.Ri.Jj)throw new D(28);return tb(mc(a.parent),a.Ri.Jj(a))}function Tb(a,b){a=G(a,{vj:!b}).node;if(!a)throw new D(44);if(!a.Ri.jj)throw new D(63);return a.Ri.jj(a)} +function zc(a){return Tb(a,!0)}function Yb(a,b){a="string"==typeof a?G(a,{vj:!0}).node:a;if(!a.Ri.cj)throw new D(63);a.Ri.cj(a,{mode:b&4095|a.mode&-4096,timestamp:Date.now()})} +function Ub(a,b,c){if(""===a)throw new D(44);if("string"==typeof b){var d={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[b];if("undefined"==typeof d)throw Error(`Unknown file open mode: ${b}`);b=d}c=b&64?("undefined"==typeof c?438:c)&4095|32768:0;if("object"==typeof a)var e=a;else{a=nb(a);try{e=G(a,{vj:!(b&131072)}).node}catch(f){}}d=!1;if(b&64)if(e){if(b&128)throw new D(20);}else e=wc(a,c,0),d=!0;if(!e)throw new D(44);8192===(e.mode&61440)&&(b&=-513);if(b&65536&&!F(e.mode))throw new D(54);if(!d&&(c= +e?40960===(e.mode&61440)?32:F(e.mode)&&("r"!==qc(b)||b&512)?31:pc(e,qc(b)):44))throw new D(c);if(b&512&&!d){c=e;c="string"==typeof c?G(c,{vj:!0}).node:c;if(!c.Ri.cj)throw new D(63);if(F(c.mode))throw new D(31);if(32768!==(c.mode&61440))throw new D(28);if(d=pc(c,"w"))throw new D(d);c.Ri.cj(c,{size:0,timestamp:Date.now()})}b&=-131713;e=tc({node:e,path:mc(e),flags:b,seekable:!0,position:0,Si:e.Si,Fl:[],error:!1});e.Si.open&&e.Si.open(e);!h.logReadFiles||b&1||a in ic||(ic[a]=1);return e} +function Xb(a){if(null===a.fd)throw new D(8);a.sj&&(a.sj=null);try{a.Si.close&&a.Si.close(a)}catch(b){throw b;}finally{cc[a.fd]=null}a.fd=null}function Ac(a,b,c){if(null===a.fd)throw new D(8);if(!a.seekable||!a.Si.uj)throw new D(70);if(0!=c&&1!=c&&2!=c)throw new D(28);a.position=a.Si.uj(a,b,c);a.Fl=[];return a.position} +function Wb(a,b,c,d,e,f){if(0>d||0>e)throw new D(28);if(null===a.fd)throw new D(8);if(0===(a.flags&2097155))throw new D(8);if(F(a.node.mode))throw new D(31);if(!a.Si.write)throw new D(28);a.seekable&&a.flags&1024&&Ac(a,0,2);var g="undefined"!=typeof e;if(!g)e=a.position;else if(!a.seekable)throw new D(70);b=a.Si.write(a,b,c,d,e,f);g||(a.position+=b);return b} +function Bc(a,b){a="string"==typeof a?a:mc(a);for(b=b.split("/").reverse();b.length;){var c=b.pop();if(c){var d=nb(a+"/"+c);try{k(d)}catch(e){}a=d}}return d}function Cc(a,b,c,d){a=nb(("string"==typeof a?a:mc(a))+"/"+b);c=Rb(c,d);return wc(a,(void 0!==c?c:438)&4095|32768,0)} +function Pb(a,b,c,d,e,f){var g=b;a&&(a="string"==typeof a?a:mc(a),g=b?nb(a+"/"+b):a);a=Rb(d,e);g=wc(g,(void 0!==a?a:438)&4095|32768,0);if(c){if("string"==typeof c){b=Array(c.length);d=0;for(e=c.length;d=n.length)return 0;r=Math.min(n.length-u,r);if(n.slice)for(var H=0;H{var p=g.Si[n];m[n]=(...q)=>{Ec(g);return p(...q)}});m.read=(n,p,q,r,u)=>{Ec(g);return f(n,p,q,r,u)};m.Gj=(n,p,q)=>{Ec(g);var r=Eb(p);if(!r)throw new D(48);f(n,t,r,p,q);return{Mk:r,mj:!0}};g.Si=m;return g}var K={},Gc=(a,b)=>a?C(v,a,b):"";function Hc(a,b,c){if("/"===b.charAt(0))return b;a=-100===a?"/":J(a).path;if(0==b.length){if(!c)throw new D(44);return a}return nb(a+"/"+b)} +function Ic(a,b,c){a=a(b);z.setInt32(4*(c>>2),a.cl,!0);z.setInt32(4*(c+4>>2),a.mode,!0);z.setUint32(4*(c+8>>2),a.vl,!0);z.setInt32(4*(c+12>>2),a.uid,!0);z.setInt32(4*(c+16>>2),a.il,!0);z.setInt32(4*(c+20>>2),a.Ij,!0);x[c+24>>3]=BigInt(a.size);z.setInt32(4*(c+32>>2),4096,!0);z.setInt32(4*(c+36>>2),a.Uk,!0);b=a.Sk.getTime();var d=a.Zj.getTime(),e=a.Vk.getTime();x[c+40>>3]=BigInt(Math.floor(b/1E3));z.setUint32(4*(c+48>>2),b%1E3*1E6,!0);x[c+56>>3]=BigInt(Math.floor(d/1E3));z.setUint32(4*(c+64>>2),d%1E3* +1E6,!0);x[c+72>>3]=BigInt(Math.floor(e/1E3));z.setUint32(4*(c+80>>2),e%1E3*1E6,!0);x[c+88>>3]=BigInt(a.ml);return 0} +var kb=void 0,Jc=[0,31,60,91,121,152,182,213,244,274,305,335],Kc=[0,31,59,90,120,151,181,212,243,273,304,334],Lc=a=>{if(!(a instanceof fb||"unwind"==a))throw a;},Mc=0,Nc=a=>{Ga=a;ib||0{Ga=a;Nc(a)},Pc=()=>{if(!(ib||0{if(!Fa)try{a(),Pc()}catch(b){Lc(b)}},Rc=(a,b)=>setTimeout(()=>{Qc(a)},b),Sc=!1,Tc=!1,Uc=[]; +function Nb(){function a(){Tc=document.pointerLockElement===h.canvas||document.mozPointerLockElement===h.canvas||document.webkitPointerLockElement===h.canvas||document.msPointerLockElement===h.canvas}if(!Vc){Vc=!0;Lb.push({canHandle:function(c){return!h.noImageDecoding&&/\.(jpg|jpeg|png|bmp|webp)$/i.test(c)},handle:function(c,d,e,f){var g=new Blob([c],{type:Wc(d)});g.size!==c.length&&(g=new Blob([(new Uint8Array(c)).buffer],{type:Wc(d)}));var m=URL.createObjectURL(g),n=new Image;n.onload=()=>{var p= +document.createElement("canvas");p.width=n.width;p.height=n.height;p.getContext("2d").drawImage(n,0,0);URL.revokeObjectURL(m);e?.(c)};n.onerror=()=>{Ca(`Image ${m} could not be decoded`);f?.()};n.src=m}});Lb.push({canHandle:function(c){return!h.noAudioDecoding&&c.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(c,d,e){function f(){g||(g=!0,e?.(c))}var g=!1,m=URL.createObjectURL(new Blob([c],{type:Wc(d)})),n=new Audio;n.addEventListener("canplaythrough",()=>f(n),!1);n.onerror=function(){if(!g){Ca(`warning: browser could not fully decode audio ${d}, trying slower base64 approach`); +for(var p="",q=0,r=0,u=0;u>r-6&63;r-=6;p+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[H]}2==r?(p+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(q&3)<<4],p+="=="):4==r&&(p+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(q&15)<<2],p+="=");n.src="data:audio/x-"+d.substr(-3)+";base64,"+p;f(n)}};n.src=m;Rc(()=>{f(n)},1E4)}});var b=h.canvas;b&&(b.requestPointerLock=b.requestPointerLock||b.mozRequestPointerLock|| b.webkitRequestPointerLock||b.msRequestPointerLock||(()=>{}),b.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||(()=>{}),b.exitPointerLock=b.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",a,!1),document.addEventListener("mozpointerlockchange",a,!1),document.addEventListener("webkitpointerlockchange",a,!1),document.addEventListener("mspointerlockchange",a,!1),h.elementPointerLock&&b.addEventListener("click", -c=>{!td&&h.canvas.requestPointerLock&&(h.canvas.requestPointerLock(),c.preventDefault())},!1))}}var xd=!1,yd=void 0,zd=void 0;function Ad(){if(!sd)return!1;(document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||(()=>{})).apply(document,[]);return!0}var Bd=0; -function $c(a){if("function"==typeof requestAnimationFrame)requestAnimationFrame(a);else{var b=Date.now();if(0===Bd)Bd=b+1E3/60;else for(;b+2>=Bd;)Bd+=1E3/60;setTimeout(a,Math.max(Bd-b,0))}}function wd(a){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[a.substr(a.lastIndexOf(".")+1)]}var Cd=[];function Dd(){var a=h.canvas;Cd.forEach(b=>b(a.width,a.height))} -function Ed(a,b,c){b&&c?(a.ul=b,a.Xk=c):(b=a.ul,c=a.Xk);var d=b,e=c;h.forcedAspectRatio&&0{for(var b=Ld++,c=a.length;c{if(h.preinitializedWebGLContext){var c=h.preinitializedWebGLContext;b.bk=Number(c.getParameter(c.VERSION).match(/^WebGL (\d+).\d+/)[1])}else a.dj||(a.dj=a.getContext,a.getContext=function(f,g){g=a.dj(f,g);return"webgl"==f==g instanceof WebGLRenderingContext? -g:null}),c=a.getContext("webgl2",b);if(!c)return 0;b=Yd(c,b);var d=c.getSupportedExtensions,e="EXT_color_buffer_float EXT_disjoint_timer_query_webgl2 EXT_texture_norm16 WEBGL_clip_cull_distance EXT_color_buffer_half_float EXT_float_blend EXT_texture_compression_bptc EXT_texture_compression_rgtc EXT_texture_filter_anisotropic KHR_parallel_shader_compile OES_texture_float_linear WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context WEBGL_multi_draw".split(" "); -c.getSupportedExtensions=function(){return(d.apply(this)||[]).filter(f=>e.includes(f))};return b},Yd=(a,b)=>{var c=Xd(Rd);b={handle:c,attributes:b,version:b.bk,oj:a};a.canvas&&(a.canvas.wj=b);Rd[c]=b;return c},ae=a=>{$d=Rd[a];h.ej=S=$d?.oj};function be(){var a=S.getSupportedExtensions()||[];return a=a.concat(a.map(b=>"GL_"+b))} -var ce={},$d,de=[],ee=(a,b)=>{de.length=0;for(var c;c=v[a++];){var d=105!=c;d&=112!=c;b+=d&&b%8?4:0;de.push(112==c?z.getUint32(4*(b>>2),!0):106==c?Oa[b>>3]:105==c?z.getInt32(4*(b>>2),!0):z.getFloat64(8*(b>>3),!0));b+=d?8:4}return de},fe=a=>{var b=T();a=a();U(b);return a},ge=0;function he(){for(var a=ie.length-1;0<=a;--a)je(a);ie=[];ke=[]}var ke=[]; -function le(a,b,c){function d(g,m){if(g.length!=m.length)return!1;for(var n in g)if(g[n]!=m[n])return!1;return!0}for(var e in ke){var f=ke[e];if(f.fk==a&&d(f.ik,c))return}ke.push({fk:a,wk:b,ik:c});ke.sort((g,m)=>g.wk{a=2{var b=xb(a)+1,c=Je(b);C(a,v,c,b);return c},Le=a=>fe(()=>{var b=Je(8),c=b+4,d=Ke(a.id);if(d=V(d))z.setInt32(4*(b>>2),d.width,!0),z.setInt32(4*(c>>2),d.height,!0);return[z.getInt32(4*(b>>2),!0),z.getInt32(4*(c>>2),!0)]}),Me=(a,b,c)=>{a=V(a);if(!a)return-4;a.width=b;a.height=c;return 0},Ne=(a,b,c)=>{a.Bl?fe(()=>{var d=Ke(a.id);Me(d,b,c)}):(a.width= -b,a.height=c)},Oe=a=>{function b(){document.fullscreenElement||document.webkitFullscreenElement||(document.removeEventListener("fullscreenchange",b),document.removeEventListener("webkitfullscreenchange",b),Ne(a,d,e),a.style.width=f,a.style.height=g,a.style.backgroundColor=m,n||(document.body.style.backgroundColor="white"),document.body.style.backgroundColor=n,a.style.paddingLeft=q,a.style.paddingRight=r,a.style.paddingTop=t,a.style.paddingBottom=w,a.style.marginLeft=p,a.style.marginRight=B,a.style.marginTop= -D,a.style.marginBottom=J,document.body.style.margin=ka,document.documentElement.style.overflow=Ba,document.body.scroll=y,a.style.mj=Ca,a.wj&&a.wj.oj.viewport(0,0,d,e),He.Hj&&W.apply(null,[He.Hj,37,0,He.kk]))}var c=Le(a),d=c[0],e=c[1],f=a.style.width,g=a.style.height,m=a.style.backgroundColor,n=document.body.style.backgroundColor,q=a.style.paddingLeft,r=a.style.paddingRight,t=a.style.paddingTop,w=a.style.paddingBottom,p=a.style.marginLeft,B=a.style.marginRight,D=a.style.marginTop,J=a.style.marginBottom, -ka=document.body.style.margin,Ba=document.documentElement.style.overflow,y=document.body.scroll,Ca=a.style.mj;document.addEventListener("fullscreenchange",b);document.addEventListener("webkitfullscreenchange",b)},Pe=(a,b,c)=>{a.style.paddingLeft=a.style.paddingRight=c+"px";a.style.paddingTop=a.style.paddingBottom=b+"px"},Qe=a=>0>Ie.indexOf(a)?a.getBoundingClientRect():{left:0,top:0},Re=(a,b)=>{if(0!=b.ek||0!=b.Zj){Oe(a);var c=b.ll?innerWidth:screen.width,d=b.ll?innerHeight:screen.height,e=Qe(a),f= -e.width;e=e.height;var g=Le(a),m=g[0];g=g[1];3==b.ek?(Pe(a,(d-e)/2,(c-f)/2),c=f,d=e):2==b.ek&&(c*g{if(a.requestPointerLock)a.requestPointerLock();else return document.body.requestPointerLock?-3:-1;return 0},Te=a=>{try{a()}catch(b){Ga(b)}}; -function Ue(){var a=X,b={};for(let [c,d]of Object.entries(a))b[c]="function"==typeof d?function(){Ve.push(c);try{return d.apply(null,arguments)}finally{if(!Ia&&(Ve.pop(),Y&&1===We&&0===Ve.length&&(We=0,Te(Xe),"undefined"!=typeof Ye&&!Ze&&$e))){Ze=!0;do{var e=$e;$e=0;var f=z.getUint32(4*(e>>2),!0),g=z.getUint32(4*(e+4>>2),!0);af(f,g);U(z.getUint32(4*(e+8>>2),!0));f=z.getUint32(4*(e+12>>2),!0);0!==f?(Y=null,z.setUint32(4*(e+12>>2),0,!0),dynCall_vi.apply(null,[f,z.getUint32(4*(e+16>>2),!0)])):(Y=e+= -20,We=2,bf(e),cf(e)())}while($e);Ze=!1}}}:d;return b}var We=0,Y=null,df=0,Ve=[],ef={},ff={},gf=0,hf=null,jf=[];function kf(){return new Promise((a,b)=>{hf={resolve:a,reject:b}})}function lf(){var a=A(4108),b=a+12;z.setUint32(4*(a>>2),b,!0);z.setUint32(4*(a+4>>2),b+4096,!0);mf(a);return a}function mf(a){var b=Ve[0],c=ef[b];void 0===c&&(c=gf++,ef[b]=c,ff[c]=b);z.setInt32(4*(a+8>>2),c,!0)}function cf(a){a=z.getInt32(4*(a+8>>2),!0);return X[ff[a]]} -function nf(a){if(!Ia){if(0===We){var b=!1,c=!1;a((d=0)=>{if(!Ia&&(df=d,b=!0,c)){We=2;Te(()=>bf(Y));"undefined"!=typeof Pb&&Uc&&rd();d=!1;try{var e=cf(Y)()}catch(m){e=m,d=!0}var f=!1;if(!Y){var g=hf;g&&(hf=null,(d?g.reject:g.resolve)(e),f=!0)}if(d&&!f)throw e;}});c=!0;b||(We=1,Y=lf(),"undefined"!=typeof Pb&&Uc&&qd(),Te(()=>of(Y)))}else 2===We?(We=0,Te(pf),qf(Y),Y=null,jf.forEach(d=>jd(d))):Ga(`invalid state: ${We}`);return df}} -var $e=0,Ze=!1,Ye={},rf=(a,b)=>{z.setFloat64(8*(a>>3),b.timestamp,!0);for(var c=0;c>3),b.axes[c],!0);for(c=0;c>3),b.buttons[c].value,!0):z.setFloat64(8*(a+8*c+528>>3),b.buttons[c],!0);for(c=0;c>2),b.buttons[c].pressed,!0):z.setInt32(4*(a+4*c+1040>>2),1==b.buttons[c],!0);z.setInt32(4*(a+1296>>2),b.connected, -!0);z.setInt32(4*(a+1300>>2),b.index,!0);z.setInt32(4*(a+8>>2),b.axes.length,!0);z.setInt32(4*(a+12>>2),b.buttons.length,!0);C(b.id,v,a+1304,64);C(b.mapping,v,a+1368,64)};function sf(a){S.activeTexture(a)}var tf=(a,b)=>{S.attachShader(P[a],Q[b])},uf=(a,b,c)=>{S.bindAttribLocation(P[a],b,c?E(v,c):"")},vf=(a,b)=>{35051==a?S.ak=b:35052==a&&(S.fj=b);S.bindBuffer(a,Md[b])},wf=(a,b)=>{S.bindFramebuffer(a,Nd[b])},xf=(a,b)=>{S.bindTexture(a,Pd[b])},yf=a=>{S.bindVertexArray(Qd[a])}; -function zf(a,b){S.blendEquationSeparate(a,b)}function Af(a,b,c,d){S.blendFuncSeparate(a,b,c,d)}function Bf(a,b,c,d,e,f,g,m,n,q){S.blitFramebuffer(a,b,c,d,e,f,g,m,n,q)}var Cf=(a,b,c,d)=>{c&&b?S.bufferData(a,v,d,c,b):S.bufferData(a,b,d)},Df=(a,b,c,d)=>{c&&S.bufferSubData(a,b,v,d,c)};function Ef(a){S.clear(a)}function Ff(a,b,c,d){S.clearColor(a,b,c,d)}function Gf(a){S.clearDepth(a)} -var Hf=a=>{S.compileShader(Q[a])},If=(a,b,c,d,e,f,g,m)=>{S.fj||!g?S.compressedTexImage2D(a,b,c,d,e,f,g,m):S.compressedTexImage2D(a,b,c,d,e,f,v,m,g)},Jf=(a,b,c,d,e,f,g,m,n)=>{S.fj||!m?S.compressedTexSubImage2D(a,b,c,d,e,f,g,m,n):S.compressedTexSubImage2D(a,b,c,d,e,f,g,v,n,m)},Kf=()=>{var a=Xd(P),b=S.createProgram();b.name=a;b.Mj=b.Kj=b.Lj=0;b.hk=1;P[a]=b;return a},Lf=a=>{var b=Xd(Q);Q[b]=S.createShader(a);return b};function Mf(a){S.cullFace(a)} -var Nf=(a,b)=>{for(var c=0;c>2),!0),e=Md[d];e&&(S.deleteBuffer(e),e.name=0,Md[d]=null,d==S.ak&&(S.ak=0),d==S.fj&&(S.fj=0))}},Of=(a,b)=>{for(var c=0;c>2),!0),e=Nd[d];e&&(S.deleteFramebuffer(e),e.name=0,Nd[d]=null)}},Pf=a=>{if(a){var b=P[a];b&&(S.deleteProgram(b),b.name=0,P[a]=null)}},Qf=a=>{if(a){var b=Q[a];b&&(S.deleteShader(b),Q[a]=null)}},Rf=(a,b)=>{for(var c=0;c>2),!0),e=Pd[d];e&&(S.deleteTexture(e), -e.name=0,Pd[d]=null)}},Sf=(a,b)=>{for(var c=0;c>2),!0);S.deleteVertexArray(Qd[d]);Qd[d]=null}};function Tf(a){S.depthFunc(a)}var Uf=a=>{S.depthMask(!!a)};function Vf(a){S.disable(a)} -var Wf=a=>{S.disableVertexAttribArray(a)},Xf=(a,b,c)=>{S.drawArrays(a,b,c)},Yf=(a,b,c,d)=>{S.drawArraysInstanced(a,b,c,d)},Zf=[],$f=(a,b)=>{for(var c=Zf[a],d=0;d>2),!0);S.drawBuffers(c)},ag=(a,b,c,d)=>{S.drawElements(a,b,c,d)},bg=(a,b,c,d,e)=>{S.drawElementsInstanced(a,b,c,d,e)};function cg(a){S.enable(a)}var dg=a=>{S.enableVertexAttribArray(a)},eg=(a,b,c,d,e)=>{S.framebufferTexture2D(a,b,c,Pd[d],e)};function fg(a){S.frontFace(a)} -var gg=(a,b,c,d)=>{for(var e=0;e>2),g,!0)}},hg=(a,b)=>{gg(a,b,"createBuffer",Md)},ig=(a,b)=>{gg(a,b,"createFramebuffer",Nd)},jg=(a,b)=>{gg(a,b,"createTexture",Pd)};function kg(a,b){gg(a,b,"createVertexArray",Qd)}function lg(a){S.generateMipmap(a)} -var mg=(a,b,c,d,e,f,g,m)=>{b=P[b];if(a=S[a](b,c))d=m&&C(a.name,v,m,d),e&&z.setInt32(4*(e>>2),d,!0),f&&z.setInt32(4*(f>>2),a.size,!0),g&&z.setInt32(4*(g>>2),a.type,!0)},ng=(a,b,c,d,e,f,g)=>{mg("getActiveUniform",a,b,c,d,e,f,g)},og=(a,b)=>{z.setUint32(4*(a>>2),b,!0);var c=z.getUint32(4*(a>>2),!0);z.setUint32(4*(a+4>>2),(b-c)/4294967296,!0)},pg=(a,b,c)=>{if(b){var d=void 0;switch(a){case 36346:d=1;break;case 36344:return;case 34814:case 36345:d=0;break;case 34466:var e=S.getParameter(34467);d=e?e.length: -0;break;case 33309:d=2*(S.getSupportedExtensions()||[]).length;break;case 33307:case 33308:d=33307==a?3:0}if(void 0===d)switch(e=S.getParameter(a),typeof e){case "number":d=e;break;case "boolean":d=e?1:0;break;case "string":return;case "object":if(null===e)switch(a){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 36662:case 36663:case 35053:case 35055:case 36010:case 35097:case 35869:case 32874:case 36389:case 35983:case 35368:case 34068:d=0;break;default:return}else{if(e instanceof -Float32Array||e instanceof Uint32Array||e instanceof Int32Array||e instanceof Array){for(a=0;a>2),e[a],!0);break;case 2:z.setFloat32(4*(b+4*a>>2),e[a],!0);break;case 4:u[b+a>>0]=e[a]?1:0}return}d=e.name|0}}switch(c){case 1:og(b,d);break;case 0:z.setInt32(4*(b>>2),d,!0);break;case 2:z.setFloat32(4*(b>>2),d,!0);break;case 4:u[b>>0]=d?1:0}}},qg=(a,b,c,d)=>{b=S.getIndexedParameter(a,b);switch(typeof b){case "boolean":a=b?1:0;break;case "number":a=b;break; -case "object":if(null===b)switch(a){case 35983:case 35368:a=0;break;default:return}else if(b instanceof WebGLBuffer)a=b.name|0;else return;break;default:return}switch(d){case 1:og(c,a);break;case 0:z.setInt32(4*(c>>2),a,!0);break;case 2:z.setFloat32(4*(c>>2),a,!0);break;case 4:u[c>>0]=a?1:0;break;default:throw"internal emscriptenWebGLGetIndexed() error, bad type: "+d;}},rg=(a,b)=>pg(a,b,0),sg=(a,b,c,d)=>{a=S.getProgramInfoLog(P[a]);b=0>2),b,!0)},tg=(a,b,c)=>{if(c&& -!(a>=Ld))if(a=P[a],35716==b)z.setInt32(4*(c>>2),S.getProgramInfoLog(a).length+1,!0);else if(35719==b){if(!a.Mj)for(b=0;b>2),a.Mj,!0)}else if(35722==b){if(!a.Kj)for(b=0;b>2),a.Kj,!0)}else if(35381==b){if(!a.Lj)for(b=0;b>2),a.Lj,!0)}else z.setInt32(4*(c>>2),S.getProgramParameter(a,b),!0)},ug=(a,b,c)=>{if(c){a=R[a];b=2>$d.version?S.lj.getQueryObjectEXT(a,b):S.getQueryParameter(a,b);var d;"boolean"==typeof b?d=b?1:0:d=b;og(c,d)}},vg=(a,b,c)=>{if(c){a=S.lj.getQueryObjectEXT(R[a],b);var d;"boolean"==typeof a?d=a?1:0:d=a;z.setInt32(4*(c>>2),d,!0)}},wg=(a,b,c,d)=>{a=S.getShaderInfoLog(Q[a]);b=0>2),b,!0)},xg=(a,b,c)=>{c&&(35716==b?(a=S.getShaderInfoLog(Q[a]), -z.setInt32(4*(c>>2),a?a.length+1:0,!0)):35720==b?(a=S.getShaderSource(Q[a]),z.setInt32(4*(c>>2),a?a.length+1:0,!0)):z.setInt32(4*(c>>2),S.getShaderParameter(Q[a],b),!0))},yg=a=>{var b=Vd[a];if(!b){switch(a){case 7939:b=Rc(be().join(" "));break;case 7936:case 7937:case 37445:case 37446:b=(b=S.getParameter(a))?Rc(b):0;break;case 7938:b=Rc(`OpenGL ES 3.0 (${S.getParameter(7938)})`);break;case 35724:b=S.getParameter(35724);var c=b.match(/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/);null!==c&&(3==c[1].length&& -(c[1]+="0"),b=`OpenGL ES GLSL ES ${c[1]} (${b})`);b=Rc(b)}Vd[a]=b}return b},zg=(a,b)=>{if(2>$d.version)return 0;var c=Wd[a];if(c)return 0>b||b>=c.length?0:c[b];switch(a){case 7939:return c=be().map(d=>Rc(d)),c=Wd[a]=c,0>b||b>=c.length?0:c[b];default:return 0}},Ag=a=>"]"==a.slice(-1)&&a.lastIndexOf("["),Bg=a=>{var b=a.Ej,c=a.Ak,d;if(!b)for(a.Ej=b={},a.zk={},d=0;d{b=b?E(v,b):"";if(a=P[a]){Bg(a);var c=a.Ej,d=0,e=b,f=Ag(b);0>>0,e=b.slice(0,f));if((e=a.Ak[e])&&d{var b=S.Jk,c=b.Ej[a];"number"==typeof c&&(b.Ej[a]=c=S.getUniformLocation(b,b.zk[a]+(0{if(c)if(a=P[a],Bg(a),a=S.getUniform(a,Z(b)),"number"==typeof a||"boolean"==typeof a)switch(d){case 0:z.setInt32(4* -(c>>2),a,!0);break;case 2:z.setFloat32(4*(c>>2),a,!0)}else for(b=0;b>2),a[b],!0);break;case 2:z.setFloat32(4*(c+4*b>>2),a[b],!0)}},Eg=(a,b,c)=>{Dg(a,b,c,2)},Fg=(a,b,c)=>{Dg(a,b,c,0)},Gg=(a,b,c,d)=>{if(c)if(a=S.getVertexAttrib(a,b),34975==b)z.setInt32(4*(c>>2),a&&a.name,!0);else if("number"==typeof a||"boolean"==typeof a)switch(d){case 0:z.setInt32(4*(c>>2),a,!0);break;case 2:z.setFloat32(4*(c>>2),a,!0);break;case 5:d=Math.fround(a),z.setInt32(4*(c>> -2),d,!0)}else for(b=0;b>2),a[b],!0);break;case 2:z.setFloat32(4*(c+4*b>>2),a[b],!0);break;case 5:var e=Math.fround(a[b]);z.setInt32(4*(c+4*b>>2),e,!0)}},Hg=(a,b,c)=>{Gg(a,b,c,0)},Ig=a=>(a=Qd[a])?S.isVertexArray(a):0,Jg=a=>{a=P[a];S.linkProgram(a);a.Ej=0;a.Ak={}},Kg=(a,b)=>{S.pixelStorei(a,b)};function Lg(a){S.readBuffer(a)} -var Mg=a=>{a-=5120;return 0==a?u:1==a?v:2==a?Ka:4==a?Ma:6==a?x:5==a||28922==a||28520==a||30779==a||30782==a?Na:La},Ng=(a,b,c,d,e,f,g)=>{if(S.ak)S.readPixels(a,b,c,d,e,f,g);else{var m=Mg(f);S.readPixels(a,b,c,d,e,f,m,g>>31-Math.clz32(m.BYTES_PER_ELEMENT))}};function Og(a,b,c,d){S.scissor(a,b,c,d)} -var Pg=(a,b,c,d)=>{for(var e="",f=0;f>2),!0):-1;e+=Jc(z.getInt32(4*(c+4*f>>2),!0),0>g?void 0:g)}S.shaderSource(Q[a],e)},Qg=(a,b,c,d,e,f,g,m,n)=>{if(S.fj)S.texImage2D(a,b,c,d,e,f,g,m,n);else if(n){var q=Mg(m);S.texImage2D(a,b,c,d,e,f,g,m,q,n>>31-Math.clz32(q.BYTES_PER_ELEMENT))}else S.texImage2D(a,b,c,d,e,f,g,m,null)};function Rg(a,b,c){S.texParameteri(a,b,c)} -var Sg=(a,b,c,d,e,f,g,m,n)=>{if(S.fj)S.texSubImage2D(a,b,c,d,e,f,g,m,n);else if(n){var q=Mg(m);S.texSubImage2D(a,b,c,d,e,f,g,m,q,n>>31-Math.clz32(q.BYTES_PER_ELEMENT))}else S.texSubImage2D(a,b,c,d,e,f,g,m,null)},Tg=(a,b,c)=>{b&&S.uniform1fv(Z(a),x,c>>2,b)},Ug=(a,b,c)=>{b&&S.uniform1iv(Z(a),Ma,c>>2,b)},Vg=(a,b,c)=>{b&&S.uniform2fv(Z(a),x,c>>2,2*b)},Wg=(a,b,c)=>{b&&S.uniform2iv(Z(a),Ma,c>>2,2*b)},Xg=(a,b,c)=>{b&&S.uniform3fv(Z(a),x,c>>2,3*b)},Yg=(a,b,c)=>{b&&S.uniform3iv(Z(a),Ma,c>>2,3*b)},Zg=(a,b, -c)=>{b&&S.uniform4fv(Z(a),x,c>>2,4*b)},$g=(a,b,c)=>{b&&S.uniform4iv(Z(a),Ma,c>>2,4*b)},ah=(a,b,c,d)=>{b&&S.uniformMatrix3fv(Z(a),!!c,x,d>>2,9*b)},bh=(a,b,c,d)=>{b&&S.uniformMatrix4fv(Z(a),!!c,x,d>>2,16*b)},ch=a=>{a=P[a];S.useProgram(a);S.Jk=a},dh=(a,b)=>{S.vertexAttribDivisor(a,b)},eh=(a,b,c,d,e)=>{S.vertexAttribIPointer(a,b,c,d,e)},fh=(a,b,c,d,e,f)=>{S.vertexAttribPointer(a,b,c,!!d,e,f)};function gh(a,b,c,d){S.viewport(a,b,c,d)} -var hh=(a,b)=>{if(!te())return-1;a=V(a);return a?a.requestFullscreen||a.webkitRequestFullscreen?ne()?Re(a,b):b.Nk?(le(Re,1,[a,b]),1):-2:-3:-4},ih=()=>{try{navigator.getGamepads()}catch(a){return navigator.getGamepads=null,1}},jh=(a,b)=>{var c={target:V(2),Wi:"beforeunload",bj:b,cj:(d=event)=>{var e=W.apply(null,[b,28,0,a]);e&&=e?E(v,e):"";if(e)return d.preventDefault(),d.returnValue=e},aj:!0};return qe(c)},kh=(a,b,c,d,e,f)=>{we||=A(256);a={target:V(a),Wi:f,bj:d,cj:(g=event)=>{var m=g.target.id?g.target.id: -"",n=we;C(se(g.target),v,n+0,128);C(m,v,n+128,128);W.apply(null,[d,e,n,b])&&g.preventDefault()},aj:c};return qe(a)},lh=(a,b,c,d,e)=>{ye||=A(280);return qe({target:a,Wi:e,bj:d,cj:(f=event)=>{var g=ye,m=document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement,n=!!m;z.setInt32(4*(g>>2),n,!0);z.setInt32(4*(g+4>>2),te(),!0);var q=n?m:xe,r=q?.id||"";C(se(q),v,g+8,128);C(r,v,g+136,128);z.setInt32(4*(g+264>>2),q?q.clientWidth:0,!0);z.setInt32(4* -(g+268>>2),q?q.clientHeight:0,!0);z.setInt32(4*(g+272>>2),screen.width,!0);z.setInt32(4*(g+276>>2),screen.height,!0);n&&(xe=m);W.apply(null,[d,19,g,b])&&f.preventDefault()},aj:c})},mh=(a,b,c,d,e)=>{ze||=A(1432);b={target:V(2),Gj:!0,Wi:e,bj:c,cj:(f=event)=>{var g=ze;rf(g,f.gamepad);W.apply(null,[c,d,g,a])&&f.preventDefault()},aj:b};return qe(b)},nh=(a,b,c,d,e,f)=>{Ae||=A(176);a={target:V(a),Wi:f,bj:d,cj:g=>{var m=Ae;z.setFloat64(8*(m>>3),g.timeStamp,!0);var n=m>>2;z.setInt32(4*(n+2),g.location,!0); -z.setInt32(4*(n+3),g.ctrlKey,!0);z.setInt32(4*(n+4),g.shiftKey,!0);z.setInt32(4*(n+5),g.altKey,!0);z.setInt32(4*(n+6),g.metaKey,!0);z.setInt32(4*(n+7),g.repeat,!0);z.setInt32(4*(n+8),g.charCode,!0);z.setInt32(4*(n+9),g.keyCode,!0);z.setInt32(4*(n+10),g.which,!0);C(g.key||"",v,m+44,32);C(g.code||"",v,m+76,32);C(g.char||"",v,m+108,32);C(g.locale||"",v,m+140,32);W.apply(null,[d,e,m,b])&&g.preventDefault()},aj:c};return qe(a)},oh=(a,b,c)=>{z.setFloat64(8*(a>>3),b.timeStamp,!0);a>>=2;z.setInt32(4*(a+2), -b.screenX,!0);z.setInt32(4*(a+3),b.screenY,!0);z.setInt32(4*(a+4),b.clientX,!0);z.setInt32(4*(a+5),b.clientY,!0);z.setInt32(4*(a+6),b.ctrlKey,!0);z.setInt32(4*(a+7),b.shiftKey,!0);z.setInt32(4*(a+8),b.altKey,!0);z.setInt32(4*(a+9),b.metaKey,!0);z.setInt16(2*(2*a+20),b.button,!0);z.setInt16(2*(2*a+21),b.buttons,!0);z.setInt32(4*(a+11),b.movementX,!0);z.setInt32(4*(a+12),b.movementY,!0);c=Qe(c);z.setInt32(4*(a+13),b.clientX-c.left,!0);z.setInt32(4*(a+14),b.clientY-c.top,!0)},ph=(a,b,c,d,e,f)=>{Be||= -A(72);a=V(a);return qe({target:a,Gj:"mousemove"!=f&&"mouseenter"!=f&&"mouseleave"!=f,Wi:f,bj:d,cj:(g=event)=>{oh(Be,g,a);W.apply(null,[d,e,Be,b])&&g.preventDefault()},aj:c})},qh=(a,b,c,d,e)=>{Ce||=A(260);return qe({target:a,Wi:e,bj:d,cj:(f=event)=>{var g=Ce,m=document.pointerLockElement||document.dj||document.Dk||document.Ck;z.setInt32(4*(g>>2),!!m,!0);var n=m?.id||"";C(se(m),v,g+4,128);C(n,v,g+132,128);W.apply(null,[d,20,g,b])&&f.preventDefault()},aj:c})},rh=(a,b,c,d)=>{De||=A(36);a=V(a);return qe({target:a, -Wi:"resize",bj:d,cj:(e=event)=>{if(e.target==a){var f=document.body;if(f){var g=De;z.setInt32(4*(g>>2),e.detail,!0);z.setInt32(4*(g+4>>2),f.clientWidth,!0);z.setInt32(4*(g+8>>2),f.clientHeight,!0);z.setInt32(4*(g+12>>2),innerWidth,!0);z.setInt32(4*(g+16>>2),innerHeight,!0);z.setInt32(4*(g+20>>2),outerWidth,!0);z.setInt32(4*(g+24>>2),outerHeight,!0);z.setInt32(4*(g+28>>2),pageXOffset,!0);z.setInt32(4*(g+32>>2),pageYOffset,!0);W.apply(null,[d,10,g,b])&&e.preventDefault()}}},aj:c})},sh=(a,b,c,d,e,f)=> -{Ee||=A(1696);a=V(a);return qe({target:a,Gj:"touchstart"==f||"touchend"==f,Wi:f,bj:d,cj:g=>{for(var m,n={},q=g.touches,r=0;r>3),g.timeStamp,!0);var t=q>>2;z.setInt32(4*(t+3),g.ctrlKey,!0);z.setInt32(4*(t+4),g.shiftKey,!0);z.setInt32(4*(t+5),g.altKey,!0);z.setInt32(4* -(t+6),g.metaKey,!0);t+=7;var w=Qe(a),p=0;for(r in n)if(m=n[r],z.setInt32(4*t,m.identifier,!0),z.setInt32(4*(t+1),m.screenX,!0),z.setInt32(4*(t+2),m.screenY,!0),z.setInt32(4*(t+3),m.clientX,!0),z.setInt32(4*(t+4),m.clientY,!0),z.setInt32(4*(t+5),m.pageX,!0),z.setInt32(4*(t+6),m.pageY,!0),z.setInt32(4*(t+7),m.rk,!0),z.setInt32(4*(t+8),m.vk,!0),z.setInt32(4*(t+9),m.clientX-w.left,!0),z.setInt32(4*(t+10),m.clientY-w.top,!0),t+=13,31<++p)break;z.setInt32(4*(q+8>>2),p,!0);W.apply(null,[d,e,q,b])&&g.preventDefault()}, -aj:c})},th=(a,b,c)=>{var d=Ie[1];Fe||=A(8);return qe({target:d,Wi:"visibilitychange",bj:c,cj:(e=event)=>{var f=Fe,g=["hidden","visible","prerender","unloaded"].indexOf(document.visibilityState);z.setInt32(4*(f>>2),document.hidden,!0);z.setInt32(4*(f+4>>2),g,!0);W.apply(null,[c,21,f,a])&&e.preventDefault()},aj:b})},uh=(a,b,c,d)=>{Ge||=A(104);return qe({target:a,Gj:!0,Wi:"wheel",bj:d,cj:(e=event)=>{var f=Ge;oh(f,e,a);z.setFloat64(8*(f+72>>3),e.deltaX,!0);z.setFloat64(8*(f+80>>3),e.deltaY,!0);z.setFloat64(8* -(f+88>>3),e.deltaZ,!0);z.setInt32(4*(f+96>>2),e.deltaMode,!0);W.apply(null,[d,9,f,b])&&e.preventDefault()},aj:c})};function vh(){this.kj=[void 0];this.pk=[]}var wh; -function xh(a,b,c,d,e){function f(){var K=0,ua=0;y.response&&ka&&0===z.getUint32(4*(a+12>>2),!0)&&(ua=y.response.byteLength);0>2),K,!0);og(a+16,ua);og(a+24,0);(K=y.response?y.response.byteLength:0)&&og(a+32,K);z.setUint16(2*(a+40>>1),y.readyState,!0);z.setUint16(2*(a+42>>1),y.status,!0);y.statusText&&C(y.statusText,v,a+44,64)}var g=z.getUint32(4*(a+8>>2),!0);if(g){var m=g?E(v,g):"",n=a+112,q=Jc(n+0);q||="GET";var r=z.getUint32(4* -(n+56>>2),!0),t=z.getUint32(4*(n+68>>2),!0),w=z.getUint32(4*(n+72>>2),!0);g=z.getUint32(4*(n+76>>2),!0);var p=z.getUint32(4*(n+80>>2),!0),B=z.getUint32(4*(n+84>>2),!0),D=z.getUint32(4*(n+88>>2),!0),J=z.getUint32(4*(n+52>>2),!0),ka=!!(J&1),Ba=!!(J&2);J=!!(J&64);t=t?t?E(v,t):"":void 0;w=w?w?E(v,w):"":void 0;var y=new XMLHttpRequest;y.withCredentials=!!v[n+60>>0];y.open(q,m,!J,t,w);J||(y.timeout=r);y.dj=m;y.responseType="arraybuffer";p&&(m=p?E(v,p):"",y.overrideMimeType(m));if(g)for(;;){n=z.getUint32(4* -(g>>2),!0);if(!n)break;m=z.getUint32(4*(g+4>>2),!0);if(!m)break;g+=8;n=n?E(v,n):"";m=m?E(v,m):"";y.setRequestHeader(n,m)}var Ca=wh.Fj(y);z.setUint32(4*(a>>2),Ca,!0);g=B&&D?v.slice(B,B+D):null;y.onload=K=>{wh.has(Ca)&&(f(),200<=y.status&&300>y.status?b?.(a,y,K):c?.(a,y,K))};y.onerror=K=>{wh.has(Ca)&&(f(),c?.(a,y,K))};y.ontimeout=K=>{wh.has(Ca)&&c?.(a,y,K)};y.onprogress=K=>{if(wh.has(Ca)){var ua=ka&&Ba&&y.response?y.response.byteLength:0,yb=0;0>2),yb,!0);og(a+16,ua);og(a+24,K.loaded-ua);og(a+32,K.total);z.setUint16(2*(a+40>>1),y.readyState,!0);3<=y.readyState&&0===y.status&&0>1),y.status,!0);y.statusText&&C(y.statusText,v,a+44,64);d?.(a,y,K);yb&&qf(yb)}};y.onreadystatechange=K=>{wh.has(Ca)&&(z.setUint16(2*(a+40>>1),y.readyState,!0),2<=y.readyState&&z.setUint16(2*(a+42>>1),y.status,!0),e?.(a,y,K))};try{y.send(g)}catch(K){c?.(a,y,K)}}else c(a,0,"no url specified!")} -var na={},zh=()=>{if(!yh){var a={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:wa||"./this.program"},b;for(b in na)void 0===na[b]?delete a[b]:a[b]=na[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);yh=c}return yh},yh,Ah=[31,29,31,30,31,30,31,31,30,31,30,31],Bh=[31,28,31,30,31,30,31,31,30,31,30,31],sa,ra=(a,b,c)=>{a=h["dynCall_"+a];return c&&c.length?a.apply(null, -[b].concat(c)):a.call(null,b)};function oc(a,b,c,d){a||=this;this.parent=a;this.Yi=a.Yi;this.uj=null;this.id=fc++;this.name=b;this.mode=c;this.Pi={};this.Ri={};this.Bj=d}Object.defineProperties(oc.prototype,{read:{get:function(){return 365===(this.mode&365)},set:function(a){a?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146===(this.mode&146)},set:function(a){a?this.mode|=146:this.mode&=-147}},dl:{get:function(){return H(this.mode)}},sk:{get:function(){return 8192===(this.mode&61440)}}}); -Cc();gc=Array(4096);oa(G,"/");k("/tmp");k("/home");k("/home/web_user");(function(){k("/dev");Cb(259,{read:()=>0,write:(d,e,f,g)=>g});xc("/dev/null",259);Bb(1280,Eb);Bb(1536,Fb);xc("/dev/tty",1280);xc("/dev/tty1",1536);var a=new Uint8Array(1024),b=0,c=()=>{0===b&&(b=tb(a).byteLength);return a[--b]};Gc("/dev","random",c);Gc("/dev","urandom",c);k("/dev/shm");k("/dev/shm/tmp")})(); -(function(){k("/proc");var a=k("/proc/self");k("/proc/self/fd");oa({Yi(){var b=Kb(a,"fd",16895,73);b.Pi={yj(c,d){var e=L(+d);c={parent:null,Yi:{Aj:"fake"},Pi:{Cj:()=>e.path}};return c.parent=c}};return b}},"/proc/self/fd")})();h.FS_createPath=Ec;h.FS_createDataFile=Sb;h.FS_createPreloadedFile=Tb;h.FS_unlink=bc;h.FS_createLazyFile=Ic;h.FS_createDevice=Gc; -h.requestFullscreen=function(a,b){function c(){sd=!1;var f=d.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===f?(d.exitFullscreen=Ad,yd&&d.requestPointerLock(),sd=!0,zd?("undefined"!=typeof SDL&&(f=z.getUint32(4*(SDL.screen>>2),!0),z.setInt32(4*(SDL.screen>>2),f|8388608,!0)),Ed(h.canvas),Dd()):Ed(d)):(f.parentNode.insertBefore(d,f),f.parentNode.removeChild(f),zd?("undefined"!= -typeof SDL&&(f=z.getUint32(4*(SDL.screen>>2),!0),z.setInt32(4*(SDL.screen>>2),f&-8388609,!0)),Ed(h.canvas),Dd()):Ed(d));h.onFullScreen?.(sd);h.onFullscreen?.(sd)}yd=a;zd=b;"undefined"==typeof yd&&(yd=!0);"undefined"==typeof zd&&(zd=!1);var d=h.canvas;xd||(xd=!0,document.addEventListener("fullscreenchange",c,!1),document.addEventListener("mozfullscreenchange",c,!1),document.addEventListener("webkitfullscreenchange",c,!1),document.addEventListener("MSFullscreenChange",c,!1));var e=document.createElement("div"); -d.parentNode.insertBefore(e,d);e.appendChild(d);e.requestFullscreen=e.requestFullscreen||e.mozRequestFullScreen||e.msRequestFullscreen||(e.webkitRequestFullscreen?()=>e.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT):null)||(e.webkitRequestFullScreen?()=>e.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT):null);e.requestFullscreen()};h.requestAnimationFrame=$c;h.setCanvasSize=function(a,b,c){Ed(h.canvas,a,b);c||Dd()};h.pauseMainLoop=qd;h.resumeMainLoop=rd; -h.getUserMedia=function(a){let b;(b=window).getUserMedia||(b.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia);window.getUserMedia(a)}; -h.createContext=function(a,b,c,d){if(b&&h.ej&&a==h.canvas)return h.ej;var e;if(b){var f={antialias:!1,alpha:!1,bk:2};if(d)for(var g in d)f[g]=d[g];if("undefined"!=typeof ce&&(e=Zd(a,f)))var m=Rd[e].oj}else m=a.getContext("2d");if(!m)return null;c&&(b||"undefined"==typeof S||Ga("cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),h.ej=m,b&&ae(e),h.tl=b,ud.forEach(n=>n()),Qb());return m};for(var S,Ch=0;32>Ch;++Ch)Zf.push(Array(Ch));wh=new vh; -Object.assign(vh.prototype,{get(a){return this.kj[a]},has(a){return void 0!==this.kj[a]},Fj(a){var b=this.pk.pop()||this.kj.length;this.kj[b]=a;return b},Sk(a){this.kj[a]=void 0;this.pk.push(a)}}); -var Ph={H:function(a,b,c){Mc=c;try{var d=L(a);switch(b){case 0:var e=Nc();if(0>e)return-28;for(;ec[e];)e++;return tc(d,e).fd;case 1:case 2:return 0;case 3:return d.flags;case 4:return e=Nc(),d.flags|=e,0;case 5:return e=Nc(),z.setInt16(2*(e+0>>1),2,!0),0;case 6:case 7:return 0;case 16:case 8:return-28;case 9:var f=4*(Dh()>>2);z.setInt32(f,28,!0);return-1;default:return-28}}catch(g){if("undefined"==typeof M||"ErrnoError"!==g.name)throw g;return-g.Vi}},Cd:function(a,b){try{var c=L(a);return Lc(Wb,c.path, -b)}catch(d){if("undefined"==typeof M||"ErrnoError"!==d.name)throw d;return-d.Vi}},yd:function(a,b,c){try{var d=L(a);d.pj||(d.pj=Vb(d.path));a=0;for(var e=Bc(d,0,1),f=Math.floor(e/280);f>3]=BigInt(m);Oa[b+a+8>>3]=BigInt(280*(f+1));z.setInt16(2*(b+a+16>>1),280,!0);u[b+a+ -18>>0]=n;C(g,v,b+a+19,256);a+=280;f+=1}Bc(d,280*f,0);return a}catch(r){if("undefined"==typeof M||"ErrnoError"!==r.name)throw r;return-r.Vi}},Md:function(a,b,c){Mc=c;try{var d=L(a);switch(b){case 21509:return d.Si?0:-59;case 21505:if(!d.Si)return-59;if(d.Si.jj.al){b=[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var e=Nc();z.setInt32(4*(e>>2),25856,!0);z.setInt32(4*(e+4>>2),5,!0);z.setInt32(4*(e+8>>2),191,!0);z.setInt32(4*(e+12>>2),35387,!0);for(var f=0;32>f;f++)u[e+f+ -17>>0]=b[f]||0}return 0;case 21510:case 21511:case 21512:return d.Si?0:-59;case 21506:case 21507:case 21508:if(!d.Si)return-59;if(d.Si.jj.bl)for(e=Nc(),z.getInt32(4*(e>>2),!0),z.getInt32(4*(e+4>>2),!0),z.getInt32(4*(e+8>>2),!0),z.getInt32(4*(e+12>>2),!0),b=[],f=0;32>f;f++)b.push(u[e+f+17>>0]);return 0;case 21519:if(!d.Si)return-59;e=Nc();z.setInt32(4*(e>>2),0,!0);return 0;case 21520:return d.Si?-28:-59;case 21531:e=Nc();if(!d.Ri.$k)throw new F(59);return d.Ri.$k(d,b,e);case 21523:if(!d.Si)return-59; -d.Si.jj.cl&&(f=[24,80],e=Nc(),z.setInt16(2*(e>>1),f[0],!0),z.setInt16(2*(e+2>>1),f[1],!0));return 0;case 21524:return d.Si?0:-59;case 21515:return d.Si?0:-59;default:return-28}}catch(g){if("undefined"==typeof M||"ErrnoError"!==g.name)throw g;return-g.Vi}},zd:function(a,b){try{return a=a?E(v,a):"",Lc(zc,a,b)}catch(c){if("undefined"==typeof M||"ErrnoError"!==c.name)throw c;return-c.Vi}},xd:function(a,b,c){try{return b=b?E(v,b):"",b=Kc(a,b),b=pb(b),"/"===b[b.length-1]&&(b=b.substr(0,b.length-1)),k(b, -c),0}catch(d){if("undefined"==typeof M||"ErrnoError"!==d.name)throw d;return-d.Vi}},Ad:function(a,b,c,d){try{b=b?E(v,b):"";var e=d&256;b=Kc(a,b,d&4096);return Lc(e?zc:Wb,b,c)}catch(f){if("undefined"==typeof M||"ErrnoError"!==f.name)throw f;return-f.Vi}},wa:function(a,b,c,d){Mc=d;try{b=b?E(v,b):"";b=Kc(a,b);var e=d?Nc():0;return Xb(b,c,e).fd}catch(f){if("undefined"==typeof M||"ErrnoError"!==f.name)throw f;return-f.Vi}},Bd:function(a,b){try{return a=a?E(v,a):"",Lc(Wb,a,b)}catch(c){if("undefined"==typeof M|| -"ErrnoError"!==c.name)throw c;return-c.Vi}},Sc:function(a,b,c){try{return b=b?E(v,b):"",b=Kc(a,b),0===c?bc(b):512===c?ac(b):Ga("Invalid flags passed to unlinkat"),0}catch(d){if("undefined"==typeof M||"ErrnoError"!==d.name)throw d;return-d.Vi}},wf:function(a){if(wh.has(a)){var b=wh.get(a);wh.Sk(a);0b.readyState&&b.abort()}},Td:()=>1,Fb:()=>{throw Infinity;},Dd:function(a,b){a=-9007199254740992>a||9007199254740992>2),a.getSeconds(), -!0);z.setInt32(4*(b+4>>2),a.getMinutes(),!0);z.setInt32(4*(b+8>>2),a.getHours(),!0);z.setInt32(4*(b+12>>2),a.getDate(),!0);z.setInt32(4*(b+16>>2),a.getMonth(),!0);z.setInt32(4*(b+20>>2),a.getFullYear()-1900,!0);z.setInt32(4*(b+24>>2),a.getDay(),!0);z.setInt32(4*(b+28>>2),(Oc(a.getFullYear())?Pc:Qc)[a.getMonth()]+a.getDate()-1|0,!0);z.setInt32(4*(b+36>>2),-(60*a.getTimezoneOffset()),!0);var c=(new Date(a.getFullYear(),6,1)).getTimezoneOffset(),d=(new Date(a.getFullYear(),0,1)).getTimezoneOffset(); -z.setInt32(4*(b+32>>2),(c!=d&&a.getTimezoneOffset()==Math.min(d,c))|0,!0)},Jd:function(a,b,c,d,e,f,g){e=-9007199254740992>e||9007199254740992>2),n.kj,!0);z.setUint32(4*(g>>2),q,!0);return 0}catch(r){if("undefined"==typeof M||"ErrnoError"!==r.name)throw r;return-r.Vi}}, -Kd:function(a,b,c,d,e,f){f=-9007199254740992>f||9007199254740992{function d(n){return(n=n.toTimeString().match(/\(([A-Za-z ]+)\)$/))?n[1]:"GMT"}var e=(new Date).getFullYear(),f=new Date(e,0,1),g=new Date(e,6,1);e=f.getTimezoneOffset();var m=g.getTimezoneOffset(); -z.setUint32(4*(a>>2),60*Math.max(e,m),!0);z.setInt32(4*(b>>2),Number(e!=m),!0);a=d(f);b=d(g);a=Rc(a);b=Rc(b);m>2),a,!0),z.setUint32(4*(c+4>>2),b,!0)):(z.setUint32(4*(c>>2),b,!0),z.setUint32(4*(c+4>>2),a,!0))},m:()=>{Ga("")},cd:a=>{if(12448==a)return N=12288,1;N=12300;return 0},od:(a,b,c,d,e)=>{if(62E3!=a)N=12296,c=0;else{if(b)for(;;){a=z.getInt32(4*(b>>2),!0);if(12321==a)a=z.getInt32(4*(b+4>>2),!0),O.alpha=0>2),!0),O.depth=0>2),!0),O.stencil=0>2),!0),O.antialias=0>2),!0),O.antialias=1==a;else if(12544==a)a=z.getInt32(4*(b+4>>2),!0),O.Fl=12547!=a;else if(12344==a)break;b+=8}c&&d||e?(e&&z.setInt32(4*(e>>2),1,!0),c&&0>2),62002,!0),N=12288,c=1):(N=12300,c=0)}return c},md:(a,b,c,d)=>{if(62E3!=a)return N=12296,0;for(a=1;;){b=z.getInt32(4*(d>>2),!0);if(12440==b)a=z.getInt32(4*(d+4>>2),!0);else if(12344== -b)break;else return N=12292,0;d+=8}if(2>a||3{if(62E3!=a)return N=12296,0;if(62002!=b)return N=12293,0;N=12288;return 62006},ld:(a,b)=>{if(62E3!=a)return N=12296,0;if(62004!=b)return N=12294,0;a=Kd;$d===Rd[a]&&($d=null);if("object"==typeof ue)for(var c=Rd[a].oj.canvas,d=0;d{if(62E3!=a)return N=12296,0;if(62006!=b)return N=12301,1;Hd==b&&(Hd=0);Id==b&&(Id=0);N=12288;return 1},nd:(a,b,c,d)=>{if(62E3!=a)return N=12296,0;if(62002!=b)return N=12293,0;if(!d)return N=12300,0;N=12288;switch(c){case 12320:return z.setInt32(4*(d>>2),O.alpha?32:24,!0),1;case 12321:return z.setInt32(4*(d>>2),O.alpha?8:0,!0),1;case 12322:return z.setInt32(4*(d>>2),8,!0),1;case 12323:return z.setInt32(4*(d>>2),8,!0), -1;case 12324:return z.setInt32(4*(d>>2),8,!0),1;case 12325:return z.setInt32(4*(d>>2),O.depth?24:0,!0),1;case 12326:return z.setInt32(4*(d>>2),O.stencil?8:0,!0),1;case 12327:return z.setInt32(4*(d>>2),12344,!0),1;case 12328:return z.setInt32(4*(d>>2),62002,!0),1;case 12329:return z.setInt32(4*(d>>2),0,!0),1;case 12330:return z.setInt32(4*(d>>2),4096,!0),1;case 12331:return z.setInt32(4*(d>>2),16777216,!0),1;case 12332:return z.setInt32(4*(d>>2),4096,!0),1;case 12333:return z.setInt32(4*(d>>2),0,!0), -1;case 12334:return z.setInt32(4*(d>>2),0,!0),1;case 12335:return z.setInt32(4*(d>>2),12344,!0),1;case 12337:return z.setInt32(4*(d>>2),O.antialias?4:0,!0),1;case 12338:return z.setInt32(4*(d>>2),O.antialias?1:0,!0),1;case 12339:return z.setInt32(4*(d>>2),4,!0),1;case 12340:return z.setInt32(4*(d>>2),12344,!0),1;case 12341:case 12342:case 12343:return z.setInt32(4*(d>>2),-1,!0),1;case 12345:case 12346:return z.setInt32(4*(d>>2),0,!0),1;case 12347:return z.setInt32(4*(d>>2),0,!0),1;case 12348:return z.setInt32(4* -(d>>2),1,!0),1;case 12349:case 12350:return z.setInt32(4*(d>>2),0,!0),1;case 12351:return z.setInt32(4*(d>>2),12430,!0),1;case 12352:return z.setInt32(4*(d>>2),4,!0),1;case 12354:return z.setInt32(4*(d>>2),0,!0),1;default:return N=12292,0}},sd:a=>{N=12288;return 0!=a&&1!=a?0:62E3},ad:()=>N,qd:(a,b,c)=>{if(62E3!=a)return N=12296,0;b&&z.setInt32(4*(b>>2),1,!0);c&&z.setInt32(4*(c>>2),4,!0);Fd=!0;N=12288;return 1},id:(a,b,c,d)=>{if(62E3!=a)return N=12296,0;if(0!=d&&62004!=d)return N=12294,0;if(0!=c&& -62006!=c||0!=b&&62006!=b)return N=12301,0;ae(d?Kd:null);Gd=d;Id=b;Hd=c;N=12288;return 1},bd:(a,b)=>{if(62E3!=a)return N=12296,0;N=12288;if(Jd[b])return Jd[b];switch(b){case 12371:a=Rc("Emscripten");break;case 12372:a=Rc("1.4 Emscripten EGL");break;case 12373:a=Rc("");break;case 12429:a=Rc("OpenGL_ES");break;default:return N=12300,0}return Jd[b]=a},hd:()=>{if(Fd)if(h.ej)if(h.ej.isContextLost())N=12302;else return N=12288,1;else N=12290;else N=12289;return 0},fd:(a,b)=>{if(62E3!=a)return N=12296,0; -0==b?bd(0,0):bd(1,b);N=12288;return 1},pd:a=>{if(62E3!=a)return N=12296,0;Id=Hd=Gd=0;Fd=!1;N=12288;return 1},dd:()=>{N=12288;return 1},ed:()=>{N=12288;return 1},E:(a,b,c)=>{b=ee(b,c);return jb[a].apply(null,b)},e:(a,b,c)=>{b=ee(b,c);return jb[a].apply(null,b)},td:(a,b,c)=>{b=ee(b,c);return jb[a].apply(null,b)},ua:()=>{qd();Uc=null},K:()=>Date.now(),Uc:()=>{if(!te())return-1;me(Re);var a=Ie[1];if(a.exitFullscreen)a.fullscreenElement&&a.exitFullscreen();else if(a.webkitExitFullscreen)a.webkitFullscreenElement&& -a.webkitExitFullscreen();else return-1;return 0},_c:()=>{me(Se);if(document.exitPointerLock)document.exitPointerLock();else return-1;return 0},Ld:(a,b)=>{if(!Ia)if(0===We){We=1;var c=a+20;mf(c);Y=c;of(c);c=T();z.setUint32(4*(a+8>>2),c,!0);$e=b}else We=0,pf(),Y=null},r:()=>devicePixelRatio,j:(a,b,c)=>{a=V(a);if(!a)return-4;a=Qe(a);z.setFloat64(8*(b>>3),a.width,!0);z.setFloat64(8*(c>>3),a.height,!0);return 0},sa:(a,b)=>{if(0>a||a>=ve.length)return-5;if(!ve[a])return-7;rf(b,ve[a]);return 0},Id:()=>2147483648, -J:Yc,ud:()=>ve.length,$c:(a,b)=>{z.setInt32(4*(a>>2),screen.width,!0);z.setInt32(4*(b>>2),screen.height,!0)},_e:sf,Pe:tf,Uf:(a,b)=>{S.beginQuery(a,R[b])},nb:(a,b)=>{S.lj.beginQueryEXT(a,R[b])},zf:function(a){S.beginTransformFeedback(a)},Ee:uf,te:vf,uf:(a,b,c)=>{S.bindBufferBase(a,b,Md[c])},xf:(a,b,c,d,e)=>{S.bindBufferRange(a,b,Md[c],d,e)},ie:wf,Zd:(a,b)=>{S.bindRenderbuffer(a,Od[b])},xe:(a,b)=>{S.bindSampler(a,Sd[b])},Sd:xf,oe:(a,b)=>{S.bindTransformFeedback(a,Td[b])},Ef:yf,Ig:yf,Nd:function(a,b, -c,d){S.blendColor(a,b,c,d)},Fd:function(a){S.blendEquation(a)},vd:zf,rd:function(a,b){S.blendFunc(a,b)},gd:Af,If:Bf,Zc:Cf,Yc:Df,Xc:function(a){return S.checkFramebufferStatus(a)},Rc:Ef,We:function(a,b,c,d){S.clearBufferfi(a,b,c,d)},Xe:(a,b,c)=>{S.clearBufferfv(a,b,x,c>>2)},Ze:(a,b,c)=>{S.clearBufferiv(a,b,Ma,c>>2)},Ye:(a,b,c)=>{S.clearBufferuiv(a,b,Na,c>>2)},Mc:Ff,Dc:Gf,tc:function(a){S.clearStencil(a)},He:(a,b,c)=>{c=Number(c);return S.clientWaitSync(Ud[a],b,c)},lc:(a,b,c,d)=>{S.colorMask(!!a,!!b, -!!c,!!d)},bc:Hf,Sb:If,Zf:(a,b,c,d,e,f,g,m,n)=>{S.fj?S.compressedTexImage3D(a,b,c,d,e,f,g,m,n):S.compressedTexImage3D(a,b,c,d,e,f,g,v,n,m)},Kb:Jf,Yf:(a,b,c,d,e,f,g,m,n,q,r)=>{S.fj?S.compressedTexSubImage3D(a,b,c,d,e,f,g,m,n,q,r):S.compressedTexSubImage3D(a,b,c,d,e,f,g,m,n,v,r,q)},Ue:function(a,b,c,d,e){S.copyBufferSubData(a,b,c,d,e)},Eb:function(a,b,c,d,e,f,g,m){S.copyTexImage2D(a,b,c,d,e,f,g,m)},Cb:function(a,b,c,d,e,f,g,m){S.copyTexSubImage2D(a,b,c,d,e,f,g,m)},_f:function(a,b,c,d,e,f,g,m,n){S.copyTexSubImage3D(a, -b,c,d,e,f,g,m,n)},Bb:Kf,Ab:Lf,zb:Mf,xb:Nf,wb:Of,vb:Pf,Wf:(a,b)=>{for(var c=0;c>2),!0),e=R[d];e&&(S.deleteQuery(e),R[d]=null)}},uc:(a,b)=>{for(var c=0;c>2),!0),e=R[d];e&&(S.lj.deleteQueryEXT(e),R[d]=null)}},ub:(a,b)=>{for(var c=0;c>2),!0),e=Od[d];e&&(S.deleteRenderbuffer(e),e.name=0,Od[d]=null)}},ze:(a,b)=>{for(var c=0;c>2),!0),e=Sd[d];e&&(S.deleteSampler(e),e.name= -0,Sd[d]=null)}},tb:Qf,Ie:a=>{if(a){var b=Ud[a];b&&(S.deleteSync(b),b.name=0,Ud[a]=null)}},sb:Rf,ne:(a,b)=>{for(var c=0;c>2),!0),e=Td[d];e&&(S.deleteTransformFeedback(e),e.name=0,Td[d]=null)}},Df:Sf,xg:Sf,rb:Tf,qb:Uf,pb:function(a,b){S.depthRange(a,b)},ob:(a,b)=>{S.detachShader(P[a],Q[b])},mb:Vf,lb:Wf,kb:Xf,Me:Yf,Hf:Yf,Xd:Yf,gg:Yf,Yd:Yf,Pf:$f,eg:$f,Sf:$f,jb:ag,Le:bg,vf:bg,Vd:bg,Wd:bg,fg:bg,cg:(a,b,c,d,e,f)=>{S.drawElements(a,d,e,f)},ib:cg,hb:dg,Tf:function(a){S.endQuery(a)}, -cb:a=>{S.lj.endQueryEXT(a)},yf:function(){S.endTransformFeedback()},Ke:(a,b)=>(a=S.fenceSync(a,b))?(b=Xd(Ud),a.name=b,Ud[b]=a,b):0,gb:function(){S.finish()},fb:function(){S.flush()},eb:(a,b,c,d)=>{S.framebufferRenderbuffer(a,b,c,Od[d])},db:eg,Ff:(a,b,c,d,e)=>{S.framebufferTextureLayer(a,b,Pd[c],d,e)},bb:fg,ab:hg,_a:ig,Xf:(a,b)=>{gg(a,b,"createQuery",R)},Gd:(a,b)=>{for(var c=0;c>2),z.setInt32(d,0,!0);break}var e=Xd(R);d.name=e;R[e]= -d;z.setInt32(4*(b+4*c>>2),e,!0)}},Za:(a,b)=>{gg(a,b,"createRenderbuffer",Od)},Ae:(a,b)=>{gg(a,b,"createSampler",Sd)},Ya:jg,me:(a,b)=>{gg(a,b,"createTransformFeedback",Td)},Cf:kg,mg:kg,$a:lg,Xa:(a,b,c,d,e,f,g)=>{mg("getActiveAttrib",a,b,c,d,e,f,g)},Wa:ng,Oe:(a,b,c,d,e)=>{a=P[a];if(a=S.getActiveUniformBlockName(a,b))e&&0>2),c,!0)):d&&z.setInt32(4*(d>>2),0,!0)},Qe:(a,b,c,d)=>{a=P[a];if(35393==c)z.setInt32(4*(d>>2),S.getActiveUniformBlockName(a,b).length+1,!0);else if(a= -S.getActiveUniformBlockParameter(a,b,c),null!==a)if(35395==c)for(c=0;c>2),a[c],!0);else z.setInt32(4*(d>>2),a,!0)},Se:(a,b,c,d,e)=>{a=P[a];for(var f=[],g=0;g>2),!0));if(a=S.getActiveUniforms(a,f,d))for(b=a.length,g=0;g>2),a[g],!0)},Va:(a,b,c,d)=>{a=S.getAttachedShaders(P[a]);var e=a.length;e>b&&(e=b);z.setInt32(4*(c>>2),e,!0);for(b=0;b>2),Q.indexOf(a[b]),!0)},Ua:(a,b)=>S.getAttribLocation(P[a], -b?E(v,b):""),Sa:(a,b)=>pg(a,b,4),Be:(a,b,c)=>{og(c,S.getBufferParameter(a,b))},Ra:(a,b,c)=>{c&&z.setInt32(4*(c>>2),S.getBufferParameter(a,b),!0)},Qa:()=>S.getError(),Pa:(a,b)=>pg(a,b,2),hf:(a,b)=>S.getFragDataLocation(P[a],b?E(v,b):""),Oa:(a,b,c,d)=>{a=S.getFramebufferAttachmentParameter(a,b,c);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;z.setInt32(4*(d>>2),a,!0)},Ce:(a,b,c)=>qg(a,b,c,1),Fe:(a,b)=>{pg(a,b,1)},Af:(a,b,c)=>qg(a,b,c,0),Na:rg,ae:(a,b,c,d,e)=>{a=S.getInternalformatParameter(a, -b,c);if(null!==a)for(b=0;b>2),a[b],!0)},he:()=>{},La:sg,Ma:tg,ch:ug,yh:vg,Tg:ug,Qf:(a,b,c)=>{a=S.getQueryParameter(R[a],b);var d;"boolean"==typeof a?d=a?1:0:d=a;z.setInt32(4*(c>>2),d,!0)},nh:vg,Rf:(a,b,c)=>{z.setInt32(4*(c>>2),S.getQuery(a,b),!0)},Ia:(a,b,c)=>{c&&(a=S.lj.getQueryEXT(a,b),z.setInt32(4*(c>>2),a,!0))},Ka:(a,b,c)=>{c&&z.setInt32(4*(c>>2),S.getRenderbufferParameter(a,b),!0)},qe:(a,b,c)=>{z.setFloat32(4*(c>>2),S.getSamplerParameter(Sd[a],b),!0)},re:(a, -b,c)=>{z.setInt32(4*(c>>2),S.getSamplerParameter(Sd[a],b),!0)},Ha:wg,Ga:(a,b,c,d)=>{a=S.getShaderPrecisionFormat(a,b);z.setInt32(4*(c>>2),a.rangeMin,!0);z.setInt32(4*(c+4>>2),a.rangeMax,!0);z.setInt32(4*(d>>2),a.precision,!0)},Fa:(a,b,c,d)=>{if(a=S.getShaderSource(Q[a]))b=0>2),b,!0)},Ja:xg,Ea:yg,Ve:zg,De:(a,b,c,d,e)=>{a=S.getSyncParameter(Ud[a],b);null!==a&&(z.setInt32(4*(e>>2),a,!0),d&&z.setInt32(4*(d>>2),1,!0))},Da:(a,b,c)=>{c&&z.setFloat32(4*(c>>2),S.getTexParameter(a, -b),!0)},Ca:(a,b,c)=>{c&&z.setInt32(4*(c>>2),S.getTexParameter(a,b),!0)},sf:(a,b,c,d,e,f,g)=>{a=P[a];if(a=S.getTransformFeedbackVarying(a,b))g&&0>2),c,!0)):d&&z.setInt32(4*(d>>2),0,!0),e&&z.setInt32(4*(e>>2),a.size,!0),f&&z.setInt32(4*(f>>2),a.type,!0)},Re:(a,b)=>S.getUniformBlockIndex(P[a],b?E(v,b):""),Te:(a,b,c,d)=>{a=P[a];for(var e=[],f=0;f>2),!0)));if(a=S.getUniformIndices(a,e))for(b=a.length,f=0;f>2),a[f],!0)},za:Cg,Ba:Eg,Aa:Fg,jf:(a,b,c)=>Dg(a,b,c,0),qf:Hg,pf:Hg,wh:(a,b,c)=>{c&&z.setInt32(4*(c>>2),S.getVertexAttribOffset(a,b),!0)},ya:(a,b,c)=>{Gg(a,b,c,2)},xh:(a,b,c)=>{Gg(a,b,c,5)},vh:function(a,b){S.hint(a,b)},ee:(a,b,c)=>{for(var d=Zf[b],e=0;e>2),!0);S.invalidateFramebuffer(a,d)},de:(a,b,c,d,e,f,g)=>{for(var m=Zf[b],n=0;n>2),!0);S.invalidateSubFramebuffer(a,m,d,e,f,g)},uh:a=>(a=Md[a])?S.isBuffer(a):0,th:function(a){return S.isEnabled(a)}, -sh:a=>(a=Nd[a])?S.isFramebuffer(a):0,rh:a=>(a=P[a])?S.isProgram(a):0,Vf:a=>(a=R[a])?S.isQuery(a):0,yb:a=>(a=R[a])?S.lj.isQueryEXT(a):0,qh:a=>(a=Od[a])?S.isRenderbuffer(a):0,ye:a=>(a=Sd[a])?S.isSampler(a):0,ph:a=>(a=Q[a])?S.isShader(a):0,Je:a=>S.isSync(Ud[a]),oh:a=>(a=Pd[a])?S.isTexture(a):0,le:a=>S.isTransformFeedback(Td[a]),Bf:Ig,bg:Ig,mh:function(a){S.lineWidth(a)},lh:Jg,ke:function(){S.pauseTransformFeedback()},kh:Kg,jh:function(a,b){S.polygonOffset(a,b)},ge:()=>{},fe:()=>{},Ta:(a,b)=>{S.lj.queryCounterEXT(R[a], -b)},dg:Lg,ih:Ng,hh:()=>{},gh:function(a,b,c,d){S.renderbufferStorage(a,b,c,d)},Gf:function(a,b,c,d,e){S.renderbufferStorageMultisample(a,b,c,d,e)},je:function(){S.resumeTransformFeedback()},fh:(a,b)=>{S.sampleCoverage(a,!!b)},ue:(a,b,c)=>{S.samplerParameterf(Sd[a],b,c)},se:(a,b,c)=>{c=z.getFloat32(4*(c>>2),!0);S.samplerParameterf(Sd[a],b,c)},we:(a,b,c)=>{S.samplerParameteri(Sd[a],b,c)},ve:(a,b,c)=>{c=z.getInt32(4*(c>>2),!0);S.samplerParameteri(Sd[a],b,c)},eh:Og,dh:()=>{},bh:Pg,ah:function(a,b,c){S.stencilFunc(a, -b,c)},$g:function(a,b,c,d){S.stencilFuncSeparate(a,b,c,d)},_g:function(a){S.stencilMask(a)},Zg:function(a,b){S.stencilMaskSeparate(a,b)},Yg:function(a,b,c){S.stencilOp(a,b,c)},Xg:function(a,b,c,d){S.stencilOpSeparate(a,b,c,d)},Wg:Qg,ag:(a,b,c,d,e,f,g,m,n,q)=>{if(S.fj)S.texImage3D(a,b,c,d,e,f,g,m,n,q);else if(q){var r=Mg(n);S.texImage3D(a,b,c,d,e,f,g,m,n,r,q>>31-Math.clz32(r.BYTES_PER_ELEMENT))}else S.texImage3D(a,b,c,d,e,f,g,m,n,null)},Vg:function(a,b,c){S.texParameterf(a,b,c)},Ug:(a,b,c)=>{c=z.getFloat32(4* -(c>>2),!0);S.texParameterf(a,b,c)},Sg:Rg,Rg:(a,b,c)=>{c=z.getInt32(4*(c>>2),!0);S.texParameteri(a,b,c)},ce:function(a,b,c,d,e){S.texStorage2D(a,b,c,d,e)},be:function(a,b,c,d,e,f){S.texStorage3D(a,b,c,d,e,f)},Qg:Sg,$f:(a,b,c,d,e,f,g,m,n,q,r)=>{if(S.fj)S.texSubImage3D(a,b,c,d,e,f,g,m,n,q,r);else if(r){var t=Mg(q);S.texSubImage3D(a,b,c,d,e,f,g,m,n,q,t,r>>31-Math.clz32(t.BYTES_PER_ELEMENT))}else S.texSubImage3D(a,b,c,d,e,f,g,m,n,q,null)},tf:(a,b,c,d)=>{a=P[a];for(var e=[],f=0;f>2),!0)));S.transformFeedbackVaryings(a,e,d)},Pg:(a,b)=>{S.uniform1f(Z(a),b)},Og:Tg,Ng:(a,b)=>{S.uniform1i(Z(a),b)},Mg:Ug,gf:(a,b)=>{S.uniform1ui(Z(a),b)},cf:(a,b,c)=>{b&&S.uniform1uiv(Z(a),Na,c>>2,b)},Lg:(a,b,c)=>{S.uniform2f(Z(a),b,c)},Kg:Vg,Jg:(a,b,c)=>{S.uniform2i(Z(a),b,c)},Hg:Wg,ff:(a,b,c)=>{S.uniform2ui(Z(a),b,c)},bf:(a,b,c)=>{b&&S.uniform2uiv(Z(a),Na,c>>2,2*b)},Gg:(a,b,c,d)=>{S.uniform3f(Z(a),b,c,d)},Fg:Xg,Eg:(a,b,c,d)=>{S.uniform3i(Z(a),b,c,d)},Dg:Yg,ef:(a,b,c,d)=>{S.uniform3ui(Z(a), -b,c,d)},af:(a,b,c)=>{b&&S.uniform3uiv(Z(a),Na,c>>2,3*b)},Cg:(a,b,c,d,e)=>{S.uniform4f(Z(a),b,c,d,e)},Bg:Zg,Ag:(a,b,c,d,e)=>{S.uniform4i(Z(a),b,c,d,e)},zg:$g,df:(a,b,c,d,e)=>{S.uniform4ui(Z(a),b,c,d,e)},$e:(a,b,c)=>{b&&S.uniform4uiv(Z(a),Na,c>>2,4*b)},Ne:(a,b,c)=>{a=P[a];S.uniformBlockBinding(a,b,c)},yg:(a,b,c,d)=>{b&&S.uniformMatrix2fv(Z(a),!!c,x,d>>2,4*b)},Of:(a,b,c,d)=>{b&&S.uniformMatrix2x3fv(Z(a),!!c,x,d>>2,6*b)},Mf:(a,b,c,d)=>{b&&S.uniformMatrix2x4fv(Z(a),!!c,x,d>>2,8*b)},wg:ah,Nf:(a,b,c,d)=> -{b&&S.uniformMatrix3x2fv(Z(a),!!c,x,d>>2,6*b)},Kf:(a,b,c,d)=>{b&&S.uniformMatrix3x4fv(Z(a),!!c,x,d>>2,12*b)},vg:bh,Lf:(a,b,c,d)=>{b&&S.uniformMatrix4x2fv(Z(a),!!c,x,d>>2,8*b)},Jf:(a,b,c,d)=>{b&&S.uniformMatrix4x3fv(Z(a),!!c,x,d>>2,12*b)},ug:ch,tg:a=>{S.validateProgram(P[a])},sg:function(a,b){S.vertexAttrib1f(a,b)},rg:(a,b)=>{S.vertexAttrib1f(a,z.getFloat32(4*(b>>2),!0))},qg:function(a,b,c){S.vertexAttrib2f(a,b,c)},pg:(a,b)=>{S.vertexAttrib2f(a,z.getFloat32(4*(b>>2),!0),z.getFloat32(4*(b+4>>2),!0))}, -og:function(a,b,c,d){S.vertexAttrib3f(a,b,c,d)},ng:(a,b)=>{S.vertexAttrib3f(a,z.getFloat32(4*(b>>2),!0),z.getFloat32(4*(b+4>>2),!0),z.getFloat32(4*(b+8>>2),!0))},lg:function(a,b,c,d,e){S.vertexAttrib4f(a,b,c,d,e)},kg:(a,b)=>{S.vertexAttrib4f(a,z.getFloat32(4*(b>>2),!0),z.getFloat32(4*(b+4>>2),!0),z.getFloat32(4*(b+8>>2),!0),z.getFloat32(4*(b+12>>2),!0))},pe:dh,kf:dh,_d:dh,hg:dh,$d:dh,of:function(a,b,c,d,e){S.vertexAttribI4i(a,b,c,d,e)},mf:(a,b)=>{S.vertexAttribI4i(a,z.getInt32(4*(b>>2),!0),z.getInt32(4* -(b+4>>2),!0),z.getInt32(4*(b+8>>2),!0),z.getInt32(4*(b+12>>2),!0))},nf:function(a,b,c,d,e){S.vertexAttribI4ui(a,b,c,d,e)},lf:(a,b)=>{S.vertexAttribI4ui(a,z.getUint32(4*(b>>2),!0),z.getUint32(4*(b+4>>2),!0),z.getUint32(4*(b+8>>2),!0),z.getUint32(4*(b+12>>2),!0))},rf:eh,jg:fh,ig:gh,Ge:(a,b,c)=>{c=Number(c);S.waitSync(Ud[a],b,c)},I:()=>1,Ah:()=>!0,Vc:(a,b,c)=>{b={ek:z.getInt32(4*(c>>2),!0),Zj:z.getInt32(4*(c+4>>2),!0),Rk:z.getInt32(4*(c+8>>2),!0),Nk:b,Hj:z.getInt32(4*(c+12>>2),!0),kk:z.getInt32(4*(c+ -16>>2),!0)};return hh(a,b)},pa:(a,b)=>{a=V(a);return a?a.requestPointerLock?ne()?Se(a):b?(le(Se,2,[a]),1):-2:-1:-4},Ud:a=>{var b=v.length;a>>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,a+100663296);var e=Math;d=Math.max(a,d);a:{e=(e.min.call(e,2147483648,d+(65536-d%65536)%65536)-Ha.buffer.byteLength+65535)/65536;try{Ha.grow(e);Pa();var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},ta:()=>!navigator.getGamepads||ih()?-1:(ve=navigator.getGamepads())?0: --1,X:(a,b,c)=>"undefined"==typeof onbeforeunload?-1:1!==c?-5:jh(a,b),ha:(a,b,c,d)=>kh(a,b,c,d,12,"blur"),q:Me,D:(a,b,c)=>{a=V(a);if(!a)return-4;a.style.width=b+"px";a.style.height=c+"px";return 0},ia:(a,b,c,d)=>kh(a,b,c,d,13,"focus"),_:(a,b,c,d)=>{if(!te())return-1;a=V(a);if(!a)return-4;lh(a,b,c,d,"webkitfullscreenchange");return lh(a,b,c,d,"fullscreenchange")},ra:(a,b,c)=>!navigator.getGamepads||ih()?-1:mh(a,b,c,26,"gamepadconnected"),qa:(a,b,c)=>!navigator.getGamepads||ih()?-1:mh(a,b,c,27,"gamepaddisconnected"), -ba:(a,b,c,d)=>nh(a,b,c,d,2,"keydown"),$:(a,b,c,d)=>nh(a,b,c,d,1,"keypress"),aa:(a,b,c,d)=>nh(a,b,c,d,3,"keyup"),N:(a,b,c)=>{kd(()=>dynCall_v.call(null,a),b,c)},na:(a,b,c,d)=>ph(a,b,c,d,5,"mousedown"),la:(a,b,c,d)=>ph(a,b,c,d,33,"mouseenter"),ka:(a,b,c,d)=>ph(a,b,c,d,34,"mouseleave"),oa:(a,b,c,d)=>ph(a,b,c,d,8,"mousemove"),ma:(a,b,c,d)=>ph(a,b,c,d,6,"mouseup"),ca:(a,b,c,d)=>{if(!document||!document.body||!(document.body.requestPointerLock||document.body.dj||document.body.Dk||document.body.Ck))return-1; -a=V(a);if(!a)return-4;qh(a,b,c,d,"mozpointerlockchange");qh(a,b,c,d,"webkitpointerlockchange");qh(a,b,c,d,"mspointerlockchange");return qh(a,b,c,d,"pointerlockchange")},Z:(a,b,c,d)=>rh(a,b,c,d),da:(a,b,c,d)=>sh(a,b,c,d,25,"touchcancel"),fa:(a,b,c,d)=>sh(a,b,c,d,23,"touchend"),ea:(a,b,c,d)=>sh(a,b,c,d,24,"touchmove"),ga:(a,b,c,d)=>sh(a,b,c,d,22,"touchstart"),Y:(a,b,c)=>th(a,b,c),ja:(a,b,c,d)=>(a=V(a))?"undefined"!=typeof a.onwheel?uh(a,b,c,d):-1:-4,Wc:a=>document.title=a?E(v,a):"",A:a=>nf(b=>pd(b, -a)),zh:function(a,b,c,d,e){function f(w){t?w():jd(w)}var g=a+112,m=z.getUint32(4*(g+36>>2),!0),n=z.getUint32(4*(g+40>>2),!0),q=z.getUint32(4*(g+44>>2),!0),r=z.getUint32(4*(g+48>>2),!0),t=!!(z.getUint32(4*(g+52>>2),!0)&64);xh(a,w=>{f(()=>{m?dynCall_vi.apply(null,[m,w]):b?.(w)})},w=>{f(()=>{n?dynCall_vi.apply(null,[n,w]):c?.(w)})},w=>{f(()=>{q?dynCall_vi.apply(null,[q,w]):d?.(w)})},w=>{f(()=>{r?dynCall_vi.apply(null,[r,w]):e?.(w)})});return a},Qd:(a,b)=>{var c=0;zh().forEach((d,e)=>{var f=b+c;z.setUint32(4* -(a+4*e>>2),f,!0);e=f;for(f=0;f>0]=d.charCodeAt(f);u[e>>0]=0;c+=d.length+1});return 0},Rd:(a,b)=>{var c=zh();z.setUint32(4*(a>>2),c.length,!0);var d=0;c.forEach(e=>d+=e.length+1);z.setUint32(4*(b>>2),d,!0);return 0},s:od,z:function(a){try{var b=L(a);Zb(b);return 0}catch(c){if("undefined"==typeof M||"ErrnoError"!==c.name)throw c;return c.Vi}},Pd:function(a,b){try{var c=L(a);u[b>>0]=c.Si?2:H(c.mode)?3:40960===(c.mode&61440)?7:4;z.setInt16(2*(b+2>>1),0,!0);Oa[b+8>>3]=BigInt(0);Oa[b+ -16>>3]=BigInt(0);return 0}catch(d){if("undefined"==typeof M||"ErrnoError"!==d.name)throw d;return d.Vi}},va:function(a,b,c,d){try{a:{var e=L(a);a=b;for(var f,g=b=0;g>2),!0),n=z.getUint32(4*(a+4>>2),!0);a+=8;var q=e,r=m,t=n,w=f,p=u;if(0>t||0>w)throw new F(28);if(null===q.fd)throw new F(8);if(1===(q.flags&2097155))throw new F(8);if(H(q.node.mode))throw new F(31);if(!q.Ri.read)throw new F(28);var B="undefined"!=typeof w;if(!B)w=q.position;else if(!q.seekable)throw new F(70); -var D=q.Ri.read(q,p,r,t,w);B||(q.position+=D);var J=D;if(0>J){var ka=-1;break a}b+=J;if(J>2),ka,!0);return 0}catch(Ba){if("undefined"==typeof M||"ErrnoError"!==Ba.name)throw Ba;return Ba.Vi}},Od:function(a,b,c,d){b=-9007199254740992>b||9007199254740992>3]=BigInt(e.position);e.pj&&0===b&&0===c&&(e.pj=null);return 0}catch(f){if("undefined"==typeof M||"ErrnoError"!==f.name)throw f; -return f.Vi}},wd:function(a){try{var b=L(a);return nf(c=>{var d=b.node.Yi;d.type.Vj?d.type.Vj(d,!1,e=>{e?c(29):c(0)}):c(0)})}catch(c){if("undefined"==typeof M||"ErrnoError"!==c.name)throw c;return c.Vi}},xa:function(a,b,c,d){try{a:{var e=L(a);a=b;for(var f,g=b=0;g>2),!0),n=z.getUint32(4*(a+4>>2),!0);a+=8;var q=Yb(e,u,m,n,f);if(0>q){var r=-1;break a}b+=q;"undefined"!==typeof f&&(f+=q)}r=b}z.setUint32(4*(d>>2),r,!0);return 0}catch(t){if("undefined"==typeof M||"ErrnoError"!== -t.name)throw t;return t.Vi}},Ob:sf,wc:tf,vc:uf,C:vf,x:wf,P:xf,Kc:yf,zc:zf,yc:Af,Bc:Bf,y:Cf,R:Df,Cc:Ef,Xb:Ff,Wb:Gf,Tb:Hf,Lc:If,Pc:Jf,xc:Kf,Vb:Lf,Jc:Mf,U:Nf,Fc:Of,S:Pf,B:Qf,V:Rf,cc:Sf,Ic:Tf,Pb:Uf,p:Vf,Yb:Wf,Mb:Xf,Nb:Yf,Ec:$f,Jb:ag,Lb:bg,o:cg,ac:dg,Gc:eg,Ib:fg,W:hg,Hc:ig,Qc:jg,dc:kg,Nc:lg,fc:ng,k:rg,gc:sg,w:tg,Rb:wg,Q:xg,i:yg,G:zg,ec:Cg,l:Eg,v:Fg,sc:Jg,O:Kg,T:Lg,Qb:Ng,Tc:Og,Ub:Pg,d:Qg,g:Rg,Oc:Sg,rc:Tg,nc:Ug,qc:Vg,mc:Wg,pc:Xg,kc:Yg,oc:Zg,jc:$g,ic:ah,hc:bh,Ac:ch,Zb:dh,_b:eh,$b:fh,Hb:gh,L:Eh,f:Fh,u:Gh, -t:Hh,M:Ih,h:Jh,a:Kh,b:Lh,c:Mh,n:Nh,Db:Oh,F:(a,b,c,d)=>{function e(p,B,D){for(p="number"==typeof p?p.toString():p||"";p.lengthka?-1:0J-p.getDate())B-=J-p.getDate()+1,p.setDate(1),11>D?p.setMonth(D+1):(p.setMonth(0),p.setFullYear(p.getFullYear()+1));else{p.setDate(p.getDate()+B);break}}D=new Date(p.getFullYear()+ -1,0,4);B=m(new Date(p.getFullYear(),0,4));D=m(D);return 0>=g(B,p)?0>=g(D,p)?p.getFullYear()+1:p.getFullYear():p.getFullYear()-1}var q=z.getUint32(4*(d+40>>2),!0);d={ql:z.getInt32(4*(d>>2),!0),pl:z.getInt32(4*(d+4>>2),!0),Wj:z.getInt32(4*(d+8>>2),!0),gk:z.getInt32(4*(d+12>>2),!0),Xj:z.getInt32(4*(d+16>>2),!0),sj:z.getInt32(4*(d+20>>2),!0),ij:z.getInt32(4*(d+24>>2),!0),rj:z.getInt32(4*(d+28>>2),!0),Ml:z.getInt32(4*(d+32>>2),!0),ol:z.getInt32(4*(d+36>>2),!0),rl:q?q?E(v,q):"":""};c=c?E(v,c):"";q={"%c":"%a %b %d %H:%M:%S %Y", -"%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var r in q)c=c.replace(new RegExp(r,"g"),q[r]);var t="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),w="January February March April May June July August September October November December".split(" "); -q={"%a":p=>t[p.ij].substring(0,3),"%A":p=>t[p.ij],"%b":p=>w[p.Xj].substring(0,3),"%B":p=>w[p.Xj],"%C":p=>f((p.sj+1900)/100|0,2),"%d":p=>f(p.gk,2),"%e":p=>e(p.gk,2," "),"%g":p=>n(p).toString().substring(2),"%G":p=>n(p),"%H":p=>f(p.Wj,2),"%I":p=>{p=p.Wj;0==p?p=12:12{for(var B=0,D=0;D<=p.Xj-1;B+=(Oc(p.sj+1900)?Ah:Bh)[D++]);return f(p.gk+B,3)},"%m":p=>f(p.Xj+1,2),"%M":p=>f(p.pl,2),"%n":()=>"\n","%p":p=>0<=p.Wj&&12>p.Wj?"AM":"PM","%S":p=>f(p.ql,2),"%t":()=>"\t","%u":p=> -p.ij||7,"%U":p=>f(Math.floor((p.rj+7-p.ij)/7),2),"%V":p=>{var B=Math.floor((p.rj+7-(p.ij+6)%7)/7);2>=(p.ij+371-p.rj-2)%7&&B++;if(B)53==B&&(D=(p.ij+371-p.rj)%7,4==D||3==D&&Oc(p.sj)||(B=1));else{B=52;var D=(p.ij+7-p.rj-1)%7;(4==D||5==D&&Oc(p.sj%400-1))&&B++}return f(B,2)},"%w":p=>p.ij,"%W":p=>f(Math.floor((p.rj+7-(p.ij+6)%7)/7),2),"%y":p=>(p.sj+1900).toString().substring(2),"%Y":p=>p.sj+1900,"%z":p=>{p=p.ol;var B=0<=p;p=Math.abs(p)/60;return(B?"+":"-")+String("0000"+(p/60*100+p%60)).slice(-4)},"%Z":p=> -p.rl,"%%":()=>"%"};c=c.replace(/%%/g,"\x00\x00");for(r in q)c.includes(r)&&(c=c.replace(new RegExp(r,"g"),q[r](d)));c=c.replace(/\0\0/g,"%");r=zb(c,!1);if(r.length>b)return 0;u.set(r,a);return r.length-1},Gb:function(a,b){h.setStatus(a>=b?"":"Prefetching resources\u2026 ("+a+"/"+b+")",!0)},Hd:function(){try{return!!navigator.platform.match(/mac/i)}catch(a){return!1}}},X=function(){function a(c){X=c.exports;X=Ue();Ha=X.Bh;Pa();sa=X.Hh;Ra.unshift(X.Ch);$a("wasm-instantiate");return X}var b={a:Ph};Za("wasm-instantiate"); -if(h.instantiateWasm)try{return h.instantiateWasm(b,a)}catch(c){return Ea(`Module.instantiateWasm callback failed with error: ${c}`),!1}gb(b,function(c){a(c.instance)});return{}}();h._vfs_sync_callback=(a,b,c)=>(h._vfs_sync_callback=X.Dh)(a,b,c); -var Qh=h._main=(a,b)=>(Qh=h._main=X.Eh)(a,b),A=a=>(A=X.Fh)(a),qf=a=>(qf=X.Gh)(a),Dh=()=>(Dh=X.Ih)(),Gb=(a,b)=>(Gb=X.Jh)(a,b),Rh=(a,b)=>(Rh=X.Kh)(a,b),af=(a,b)=>(af=X.Lh)(a,b),T=()=>(T=X.Mh)(),U=a=>(U=X.Nh)(a),Je=a=>(Je=X.Oh)(a),dynCall_vii=h.dynCall_vii=(a,b,c)=>(dynCall_vii=h.dynCall_vii=X.Ph)(a,b,c),Sh=h.dynCall_ii=(a,b)=>(Sh=h.dynCall_ii=X.Qh)(a,b),dynCall_vi=h.dynCall_vi=(a,b)=>(dynCall_vi=h.dynCall_vi=X.Rh)(a,b),Th=h.dynCall_viii=(a,b,c,d)=>(Th=h.dynCall_viii=X.Sh)(a,b,c,d),Uh=h.dynCall_viiii= -(a,b,c,d,e)=>(Uh=h.dynCall_viiii=X.Th)(a,b,c,d,e);h.dynCall_viiiii=(a,b,c,d,e,f)=>(h.dynCall_viiiii=X.Uh)(a,b,c,d,e,f);h.dynCall_vffff=(a,b,c,d,e)=>(h.dynCall_vffff=X.Vh)(a,b,c,d,e);h.dynCall_vf=(a,b)=>(h.dynCall_vf=X.Wh)(a,b);h.dynCall_viiiiiiii=(a,b,c,d,e,f,g,m,n)=>(h.dynCall_viiiiiiii=X.Xh)(a,b,c,d,e,f,g,m,n);var Vh=h.dynCall_viiiiiiiii=(a,b,c,d,e,f,g,m,n,q)=>(Vh=h.dynCall_viiiiiiiii=X.Yh)(a,b,c,d,e,f,g,m,n,q),Wh=h.dynCall_i=a=>(Wh=h.dynCall_i=X.Zh)(a); -h.dynCall_vff=(a,b,c)=>(h.dynCall_vff=X._h)(a,b,c);var dynCall_v=h.dynCall_v=a=>(dynCall_v=h.dynCall_v=X.$h)(a);h.dynCall_viiiiiii=(a,b,c,d,e,f,g,m)=>(h.dynCall_viiiiiii=X.ai)(a,b,c,d,e,f,g,m);var dynCall_iii=h.dynCall_iii=(a,b,c)=>(dynCall_iii=h.dynCall_iii=X.bi)(a,b,c);h.dynCall_vfi=(a,b,c)=>(h.dynCall_vfi=X.ci)(a,b,c);h.dynCall_viif=(a,b,c,d)=>(h.dynCall_viif=X.di)(a,b,c,d);h.dynCall_vif=(a,b,c)=>(h.dynCall_vif=X.ei)(a,b,c);h.dynCall_viff=(a,b,c,d)=>(h.dynCall_viff=X.fi)(a,b,c,d); -h.dynCall_vifff=(a,b,c,d,e)=>(h.dynCall_vifff=X.gi)(a,b,c,d,e);h.dynCall_viffff=(a,b,c,d,e,f)=>(h.dynCall_viffff=X.hi)(a,b,c,d,e,f);var Xh=h.dynCall_viiiiii=(a,b,c,d,e,f,g)=>(Xh=h.dynCall_viiiiii=X.ii)(a,b,c,d,e,f,g);h.dynCall_viiiiiiiiii=(a,b,c,d,e,f,g,m,n,q,r)=>(h.dynCall_viiiiiiiiii=X.ji)(a,b,c,d,e,f,g,m,n,q,r);h.dynCall_viiiiiiiiiii=(a,b,c,d,e,f,g,m,n,q,r,t)=>(h.dynCall_viiiiiiiiiii=X.ki)(a,b,c,d,e,f,g,m,n,q,r,t);h.dynCall_viifi=(a,b,c,d,e)=>(h.dynCall_viifi=X.li)(a,b,c,d,e); -var Yh=h.dynCall_iiiii=(a,b,c,d,e)=>(Yh=h.dynCall_iiiii=X.mi)(a,b,c,d,e),W=h.dynCall_iiii=(a,b,c,d)=>(W=h.dynCall_iiii=X.ni)(a,b,c,d);h.dynCall_iidiiii=(a,b,c,d,e,f,g)=>(h.dynCall_iidiiii=X.oi)(a,b,c,d,e,f,g);h.dynCall_jiji=(a,b,c,d)=>(h.dynCall_jiji=X.pi)(a,b,c,d);h.dynCall_ji=(a,b)=>(h.dynCall_ji=X.qi)(a,b);h.dynCall_iiiiiiiiiiii=(a,b,c,d,e,f,g,m,n,q,r,t)=>(h.dynCall_iiiiiiiiiiii=X.ri)(a,b,c,d,e,f,g,m,n,q,r,t);h.dynCall_iiiiiiiii=(a,b,c,d,e,f,g,m,n)=>(h.dynCall_iiiiiiiii=X.si)(a,b,c,d,e,f,g,m,n); -h.dynCall_iiiiii=(a,b,c,d,e,f)=>(h.dynCall_iiiiii=X.ti)(a,b,c,d,e,f);h.dynCall_iiiiiii=(a,b,c,d,e,f,g)=>(h.dynCall_iiiiiii=X.ui)(a,b,c,d,e,f,g);h.dynCall_vd=(a,b)=>(h.dynCall_vd=X.vi)(a,b);h.dynCall_iiji=(a,b,c,d)=>(h.dynCall_iiji=X.wi)(a,b,c,d);h.dynCall_viidi=(a,b,c,d,e)=>(h.dynCall_viidi=X.xi)(a,b,c,d,e);h.dynCall_iiif=(a,b,c,d)=>(h.dynCall_iiif=X.yi)(a,b,c,d);h.dynCall_ff=(a,b)=>(h.dynCall_ff=X.zi)(a,b); -h.dynCall_iiiiiiiiiii=(a,b,c,d,e,f,g,m,n,q,r)=>(h.dynCall_iiiiiiiiiii=X.Ai)(a,b,c,d,e,f,g,m,n,q,r);h.dynCall_viiif=(a,b,c,d,e)=>(h.dynCall_viiif=X.Bi)(a,b,c,d,e);h.dynCall_iiiiiiii=(a,b,c,d,e,f,g,m)=>(h.dynCall_iiiiiiii=X.Ci)(a,b,c,d,e,f,g,m);h.dynCall_iiiiiiiiii=(a,b,c,d,e,f,g,m,n,q)=>(h.dynCall_iiiiiiiiii=X.Di)(a,b,c,d,e,f,g,m,n,q);h.dynCall_iiidd=(a,b,c,d,e)=>(h.dynCall_iiidd=X.Ei)(a,b,c,d,e);h.dynCall_id=(a,b)=>(h.dynCall_id=X.Fi)(a,b);h.dynCall_dd=(a,b)=>(h.dynCall_dd=X.Gi)(a,b); -h.dynCall_d=a=>(h.dynCall_d=X.Hi)(a);h.dynCall_iid=(a,b,c)=>(h.dynCall_iid=X.Ii)(a,b,c);h.dynCall_di=(a,b)=>(h.dynCall_di=X.Ji)(a,b);h.dynCall_dii=(a,b,c)=>(h.dynCall_dii=X.Ki)(a,b,c);var of=a=>(of=X.Li)(a),Xe=()=>(Xe=X.Mi)(),bf=a=>(bf=X.Ni)(a),pf=()=>(pf=X.Oi)();h.___start_em_js=1151446;h.___stop_em_js=1151673;function Gh(a,b,c){var d=T();try{return dynCall_iii(a,b,c)}catch(e){U(d);if(e!==e+0)throw e;Rh(1,0)}} -function Ih(a,b,c,d,e){var f=T();try{return Yh(a,b,c,d,e)}catch(g){U(f);if(g!==g+0)throw g;Rh(1,0)}}function Hh(a,b,c,d){var e=T();try{return W(a,b,c,d)}catch(f){U(e);if(f!==f+0)throw f;Rh(1,0)}}function Eh(a){var b=T();try{return Wh(a)}catch(c){U(b);if(c!==c+0)throw c;Rh(1,0)}}function Lh(a,b,c,d){var e=T();try{Th(a,b,c,d)}catch(f){U(e);if(f!==f+0)throw f;Rh(1,0)}}function Fh(a,b){var c=T();try{return Sh(a,b)}catch(d){U(c);if(d!==d+0)throw d;Rh(1,0)}} -function Nh(a,b,c,d,e,f,g){var m=T();try{Xh(a,b,c,d,e,f,g)}catch(n){U(m);if(n!==n+0)throw n;Rh(1,0)}}function Kh(a,b,c){var d=T();try{dynCall_vii(a,b,c)}catch(e){U(d);if(e!==e+0)throw e;Rh(1,0)}}function Jh(a,b){var c=T();try{dynCall_vi(a,b)}catch(d){U(c);if(d!==d+0)throw d;Rh(1,0)}}function Mh(a,b,c,d,e){var f=T();try{Uh(a,b,c,d,e)}catch(g){U(f);if(g!==g+0)throw g;Rh(1,0)}}function Oh(a,b,c,d,e,f,g,m,n,q){var r=T();try{Vh(a,b,c,d,e,f,g,m,n,q)}catch(t){U(r);if(t!==t+0)throw t;Rh(1,0)}} -h.addRunDependency=Za;h.removeRunDependency=$a;h.FS_createPath=Ec;h.FS_createLazyFile=Ic;h.FS_createDevice=Gc; -h.ccall=(a,b,c,d,e)=>{function f(t){--md;0!==n&&U(n);return"string"===b?t?E(v,t):"":"boolean"===b?!!t:t}var g={string:t=>{var w=0;null!==t&&void 0!==t&&0!==t&&(w=Ke(t));return w},array:t=>{var w=Je(t.length);u.set(t,w);return w}};a=h["_"+a];var m=[],n=0;if(d)for(var q=0;q{g=Ke(g);z.setUint32(4*(e>>2),g,!0);e+=4});z.setUint32(4*(e>>2),0,!0);try{var f=b(c,d);od(f,!0)}catch(g){ld(g)}} -function ai(){var a=va;function b(){if(!Zh&&(Zh=!0,h.calledRun=!0,!Ia)){h.noFSInit||Dc||(Dc=!0,Cc(),h.stdin=h.stdin,h.stdout=h.stdout,h.stderr=h.stderr,h.stdin?Gc("/dev","stdin",h.stdin):yc("/dev/tty","/dev/stdin"),h.stdout?Gc("/dev","stdout",null,h.stdout):yc("/dev/tty","/dev/stdout"),h.stderr?Gc("/dev","stderr",null,h.stderr):yc("/dev/tty1","/dev/stderr"),Xb("/dev/stdin",0),Xb("/dev/stdout",1),Xb("/dev/stderr",1));hc=!1;mb(Ra);mb(Sa);if(h.onRuntimeInitialized)h.onRuntimeInitialized();ci&&bi(a); -if(h.postRun)for("function"==typeof h.postRun&&(h.postRun=[h.postRun]);h.postRun.length;){var c=h.postRun.shift();Ua.unshift(c)}mb(Ua)}}if(!(0{!Tc&&h.canvas.requestPointerLock&&(h.canvas.requestPointerLock(),c.preventDefault())},!1))}}var Xc=!1,Yc=void 0,Zc=void 0;function $c(){if(!Sc)return!1;(document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||(()=>{})).apply(document,[]);return!0} +function Wc(a){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[a.substr(a.lastIndexOf(".")+1)]}var ad=[];function bd(){var a=h.canvas;ad.forEach(b=>b(a.width,a.height))} +function cd(a,b,c){b&&c?(a.Gl=b,a.jl=c):(b=a.Gl,c=a.jl);var d=b,e=c;h.forcedAspectRatio&&0{for(var b=kd++,c=a.length;c{for(var e=0;e>2),g,!0)}},Bd=(a,b)=>{if(h.preinitializedWebGLContext){var c=h.preinitializedWebGLContext;b.kk=Number(c.getParameter(c.VERSION).match(/^WebGL (\d+).\d+/)[1])}else a.aj|| +(a.aj=a.getContext,a.getContext=function(d,e){e=a.aj(d,e);return"webgl"==d==e instanceof WebGLRenderingContext?e:null}),c=a.getContext("webgl2",b);return c?Ad(c,b):0},Ad=(a,b)=>{var c=yd(qd);b={handle:c,attributes:b,version:b.kk,rj:a};a.canvas&&(a.canvas.Dj=b);qd[c]=b;return c},Dd=a=>{Cd=qd[a];h.hj=N=Cd?.rj},Ed={},Cd,Fd=a=>{var b=wb(a)+1,c=A(b);c&&B(a,v,c,b);return c},Wd=(a,b,c,d,e)=>{function f(){return g=Zd;)Zd+=1E3/60;setTimeout(a,Math.max(Zd-b,0))}} +var Nd={},Kd,Md,Sd,ae,Vd=(a,b)=>{Pd=a;Qd=b;if(Hd)if(Jd||=!0,0==a)Rd=function(){setTimeout(Kd,Math.max(0,Sd+b-performance.now())|0)};else if(1==a)Rd=function(){$d(Kd)};else if(2==a){if("undefined"==typeof ae)if("undefined"==typeof setImmediate){var c=[];addEventListener("message",d=>{if("setimmediate"===d.data||"setimmediate"===d.data.target)d.stopPropagation(),c.shift()()},!0);ae=d=>{c.push(d);postMessage("setimmediate","*")}}else ae=setImmediate;Rd=function(){ae(Kd)}}},be=[],ce=(a,b)=>{be.length= +0;for(var c;c=v[a++];){var d=105!=c;d&=112!=c;b+=d&&b%8?4:0;be.push(112==c?z.getUint32(4*(b>>2),!0):106==c?x[b>>3]:105==c?z.getInt32(4*(b>>2),!0):z.getFloat64(8*(b>>3),!0));b+=d?8:4}return be};function de(a){var b=R.fj[a];b.target.removeEventListener(b.Zi,b.Ck,b.dj);R.fj.splice(a,1)}function ee(a,b,c){function d(f,g){if(f.length!=g.length)return!1;for(var m in f)if(f[m]!=g[m])return!1;return!0}for(var e of R.nj)if(e.rk==a&&d(e.xk,c))return;R.nj.push({rk:a,Lk:b,xk:c});R.nj.sort((f,g)=>f.Lkb.rk!=a)}function ge(){return navigator.userActivation?navigator.userActivation.isActive:R.ik&&R.Xk.Oj}function he(){if(ge()){var a=R.nj;R.nj=[];for(var b of a)b.rk(...b.xk)}}function ie(a){if(!a.target)return-4;if(a.ej)a.Ck=function(c){++R.ik;R.Xk=a;he();a.gj(c);he();--R.ik},a.target.addEventListener(a.Zi,a.Ck,a.dj),R.fj.push(a);else for(var b=0;b{for(var c=0;c{a=2{var b=wb(a)+1,c=me(b);B(a,v,c,b);return c},oe=a=>{var b=T(),c=me(8),d=c+4;a=ne(a.id); +if(a=S(a))z.setInt32(4*(c>>2),a.width,!0),z.setInt32(4*(d>>2),a.height,!0);c=[z.getInt32(4*(c>>2),!0),z.getInt32(4*(d>>2),!0)];U(b);return c},pe=(a,b,c)=>{a=S(a);if(!a)return-4;a.width=b;a.height=c;return 0},qe=(a,b,c)=>{if(a.Pl){var d=T();a=ne(a.id);pe(a,b,c);U(d)}else a.width=b,a.height=c},re=a=>{function b(){document.fullscreenElement||document.webkitFullscreenElement||(document.removeEventListener("fullscreenchange",b),document.removeEventListener("webkitfullscreenchange",b),qe(a,d,e),a.style.width= +f,a.style.height=g,a.style.backgroundColor=m,n||(document.body.style.backgroundColor="white"),document.body.style.backgroundColor=n,a.style.paddingLeft=p,a.style.paddingRight=q,a.style.paddingTop=r,a.style.paddingBottom=u,a.style.marginLeft=H,a.style.marginRight=Z,a.style.marginTop=pa,a.style.marginBottom=aa,document.body.style.margin=lb,document.documentElement.style.overflow=Vb,document.body.scroll=y,a.style.pj=xa,a.Dj&&a.Dj.rj.viewport(0,0,d,e),ke.Pj&&V(ke.Pj,37,0,ke.zk))}var c=oe(a),d=c[0],e= +c[1],f=a.style.width,g=a.style.height,m=a.style.backgroundColor,n=document.body.style.backgroundColor,p=a.style.paddingLeft,q=a.style.paddingRight,r=a.style.paddingTop,u=a.style.paddingBottom,H=a.style.marginLeft,Z=a.style.marginRight,pa=a.style.marginTop,aa=a.style.marginBottom,lb=document.body.style.margin,Vb=document.documentElement.style.overflow,y=document.body.scroll,xa=a.style.pj;document.addEventListener("fullscreenchange",b);document.addEventListener("webkitfullscreenchange",b)},se=(a,b, +c)=>{a.style.paddingLeft=a.style.paddingRight=c+"px";a.style.paddingTop=a.style.paddingBottom=b+"px"},te=a=>0>le.indexOf(a)?a.getBoundingClientRect():{left:0,top:0},ue=(a,b)=>{if(0!=b.qk||0!=b.ck){re(a);var c=b.Cl?innerWidth:screen.width,d=b.Cl?innerHeight:screen.height,e=te(a),f=e.width;e=e.height;var g=oe(a),m=g[0];g=g[1];3==b.qk?(se(a,(d-e)/2,(c-f)/2),c=f,d=e):2==b.qk&&(c*g{if(a.requestPointerLock)a.requestPointerLock();else return document.body.requestPointerLock?-3:-1;return 0},we=a=>{try{a()}catch(b){Wa(b)}}; +function xe(){var a=W,b={};for(let [c,d]of Object.entries(a))b[c]="function"==typeof d?(...e)=>{ye.push(c);try{return d(...e)}finally{if(!Fa&&(ye.pop(),X&&1===ze&&0===ye.length&&(ze=0,we(Ae),"undefined"!=typeof Be&&!Ce&&De))){Ce=!0;do{e=De;De=0;var f=z.getUint32(4*(e>>2),!0),g=z.getUint32(4*(e+4>>2),!0);Ee(f,g);U(z.getUint32(4*(e+8>>2),!0));f=z.getUint32(4*(e+12>>2),!0);0!==f?(X=null,z.setUint32(4*(e+12>>2),0,!0),dynCall_vi(f,z.getUint32(4*(e+16>>2),!0))):(X=e+=20,ze=2,Fe(e),Ge(e))}while(De);Ce=!1}}}: +d;return b}var ze=0,X=null,He=0,ye=[],Ie={},Je={},Ke=0,Le=null,Me=[];function Ne(){return new Promise((a,b)=>{Le={resolve:a,reject:b}})}function Oe(){var a=A(4108),b=a+12;z.setUint32(4*(a>>2),b,!0);z.setUint32(4*(a+4>>2),b+4096,!0);Pe(a);return a}function Pe(a){var b=ye[0],c=Ie[b];void 0===c&&(c=Ke++,Ie[b]=c,Je[c]=b);z.setInt32(4*(a+8>>2),c,!0)}function Ge(a){a=z.getInt32(4*(a+8>>2),!0);return(0,W[Je[a]])()} +function Qe(a){if(!Fa){if(0===ze){var b=!1,c=!1;a((d=0)=>{if(!Fa&&(He=d,b=!0,c)){ze=2;we(()=>Fe(X));"undefined"!=typeof Nd&&Hd&&Yd();d=!1;try{var e=Ge(X)}catch(m){e=m,d=!0}var f=!1;if(!X){var g=Le;g&&(Le=null,(d?g.reject:g.resolve)(e),f=!0)}if(d&&!f)throw e;}});c=!0;b||(ze=1,X=Oe(),"undefined"!=typeof Nd&&Hd&&Xd(),we(()=>Re(X)))}else 2===ze?(ze=0,we(Se),Te(X),X=null,Me.forEach(Qc)):Wa(`invalid state: ${ze}`);return He}} +var De=0,Ce=!1,Be={},Ue=(a,b)=>{z.setFloat64(8*(a>>3),b.timestamp,!0);for(var c=0;c>3),b.axes[c],!0);for(c=0;c>3),b.buttons[c].value,!0):z.setFloat64(8*(a+8*c+528>>3),b.buttons[c],!0);for(c=0;c>2),b.index,!0);z.setInt32(4*(a+8>>2),b.axes.length, +!0);z.setInt32(4*(a+12>>2),b.buttons.length,!0);B(b.id,v,a+1112,64);B(b.mapping,v,a+1176,64)},Ve=a=>N.activeTexture(a),We=(a,b)=>{N.attachShader(O[a],P[b])},Xe=(a,b,c)=>{N.bindAttribLocation(O[a],b,c?C(v,c):"")},Ye=(a,b)=>{35051==a?N.ek=b:35052==a&&(N.ij=b);N.bindBuffer(a,ld[b])},Ze=(a,b)=>{N.bindFramebuffer(a,md[b])},$e=(a,b)=>{N.bindTexture(a,od[b])},af=a=>{N.bindVertexArray(pd[a])},bf=(a,b)=>N.blendEquationSeparate(a,b),cf=(a,b,c,d)=>N.blendFuncSeparate(a,b,c,d),df=(a,b,c,d,e,f,g,m,n,p)=>N.blitFramebuffer(a, +b,c,d,e,f,g,m,n,p),ef=(a,b,c,d)=>{c&&b?N.bufferData(a,v,d,c,b):N.bufferData(a,b,d)},ff=(a,b,c,d)=>{c&&N.bufferSubData(a,b,v,d,c)},gf=a=>N.clear(a),hf=(a,b,c,d)=>N.clearColor(a,b,c,d),jf=a=>N.clearDepth(a),kf=a=>{N.compileShader(P[a])},lf=(a,b,c,d,e,f,g,m)=>{N.ij||!g?N.compressedTexImage2D(a,b,c,d,e,f,g,m):N.compressedTexImage2D(a,b,c,d,e,f,v,m,g)},mf=(a,b,c,d,e,f,g,m,n)=>{N.ij||!m?N.compressedTexSubImage2D(a,b,c,d,e,f,g,m,n):N.compressedTexSubImage2D(a,b,c,d,e,f,g,v,n,m)},nf=()=>{var a=yd(O),b=N.createProgram(); +b.name=a;b.Vj=b.Tj=b.Uj=0;b.uk=1;O[a]=b;return a},of=a=>{var b=yd(P);P[b]=N.createShader(a);return b},pf=a=>N.cullFace(a),qf=(a,b)=>{for(var c=0;c>2),!0),e=ld[d];e&&(N.deleteBuffer(e),e.name=0,ld[d]=null,d==N.ek&&(N.ek=0),d==N.ij&&(N.ij=0))}},rf=(a,b)=>{for(var c=0;c>2),!0),e=md[d];e&&(N.deleteFramebuffer(e),e.name=0,md[d]=null)}},sf=a=>{if(a){var b=O[a];b&&(N.deleteProgram(b),b.name=0,O[a]=null)}},tf=a=>{if(a){var b=P[a];b&&(N.deleteShader(b), +P[a]=null)}},uf=(a,b)=>{for(var c=0;c>2),!0),e=od[d];e&&(N.deleteTexture(e),e.name=0,od[d]=null)}},vf=(a,b)=>{for(var c=0;c>2),!0);N.deleteVertexArray(pd[d]);pd[d]=null}},wf=a=>N.depthFunc(a),xf=a=>{N.depthMask(!!a)},yf=a=>N.disable(a),zf=a=>{N.disableVertexAttribArray(a)},Af=(a,b,c)=>{N.drawArrays(a,b,c)},Bf=(a,b,c,d)=>{N.drawArraysInstanced(a,b,c,d)},Cf=[],Df=(a,b)=>{for(var c=Cf[a],d=0;d>2),!0); +N.drawBuffers(c)},Ef=(a,b,c,d)=>{N.drawElements(a,b,c,d)},Ff=(a,b,c,d,e)=>{N.drawElementsInstanced(a,b,c,d,e)},Gf=a=>N.enable(a),Hf=a=>{N.enableVertexAttribArray(a)},If=(a,b,c,d,e)=>{N.framebufferTexture2D(a,b,c,od[d],e)},Jf=a=>N.frontFace(a),Kf=(a,b)=>{zd(a,b,"createBuffer",ld)},Lf=(a,b)=>{zd(a,b,"createFramebuffer",md)},Mf=(a,b)=>{zd(a,b,"createTexture",od)},Nf=(a,b)=>{zd(a,b,"createVertexArray",pd)},Of=a=>N.generateMipmap(a),Pf=(a,b,c,d,e,f,g,m)=>{b=O[b];if(a=N[a](b,c))d=m&&B(a.name,v,m,d),e&& +z.setInt32(4*(e>>2),d,!0),f&&z.setInt32(4*(f>>2),a.size,!0),g&&z.setInt32(4*(g>>2),a.type,!0)},Qf=(a,b,c,d,e,f,g)=>{Pf("getActiveUniform",a,b,c,d,e,f,g)},Rf=(a,b)=>{z.setUint32(4*(a>>2),b,!0);var c=z.getUint32(4*(a>>2),!0);z.setUint32(4*(a+4>>2),(b-c)/4294967296,!0)},Sf=()=>{var a="EXT_color_buffer_float EXT_conservative_depth EXT_disjoint_timer_query_webgl2 EXT_texture_norm16 NV_shader_noperspective_interpolation WEBGL_clip_cull_distance EXT_clip_control EXT_color_buffer_half_float EXT_depth_clamp EXT_float_blend EXT_polygon_offset_clamp EXT_texture_compression_bptc EXT_texture_compression_rgtc EXT_texture_filter_anisotropic KHR_parallel_shader_compile OES_texture_float_linear WEBGL_blend_func_extended WEBGL_compressed_texture_astc WEBGL_compressed_texture_etc WEBGL_compressed_texture_etc1 WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context WEBGL_multi_draw WEBGL_polygon_mode".split(" "); +return(N.getSupportedExtensions()||[]).filter(b=>a.includes(b))};function Tf(){var a=Sf();return a=a.concat(a.map(b=>"GL_"+b))} +var Uf=(a,b,c)=>{if(b){var d=void 0;switch(a){case 36346:d=1;break;case 36344:return;case 34814:case 36345:d=0;break;case 34466:var e=N.getParameter(34467);d=e?e.length:0;break;case 33309:d=Tf().length;break;case 33307:case 33308:d=33307==a?3:0}if(void 0===d)switch(e=N.getParameter(a),typeof e){case "number":d=e;break;case "boolean":d=e?1:0;break;case "string":return;case "object":if(null===e)switch(a){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 36662:case 36663:case 35053:case 35055:case 36010:case 35097:case 35869:case 32874:case 36389:case 35983:case 35368:case 34068:d= +0;break;default:return}else{if(e instanceof Float32Array||e instanceof Uint32Array||e instanceof Int32Array||e instanceof Array){for(a=0;a>2),e[a],!0);break;case 2:z.setFloat32(4*(b+4*a>>2),e[a],!0);break;case 4:t[b+a]=e[a]?1:0}return}d=e.name|0}}switch(c){case 1:Rf(b,d);break;case 0:z.setInt32(4*(b>>2),d,!0);break;case 2:z.setFloat32(4*(b>>2),d,!0);break;case 4:t[b]=d?1:0}}},Vf=(a,b,c,d)=>{b=N.getIndexedParameter(a,b);switch(typeof b){case "boolean":a= +b?1:0;break;case "number":a=b;break;case "object":if(null===b)switch(a){case 35983:case 35368:a=0;break;default:return}else if(b instanceof WebGLBuffer)a=b.name|0;else return;break;default:return}switch(d){case 1:Rf(c,a);break;case 0:z.setInt32(4*(c>>2),a,!0);break;case 2:z.setFloat32(4*(c>>2),a,!0);break;case 4:t[c]=a?1:0;break;default:throw"internal emscriptenWebGLGetIndexed() error, bad type: "+d;}},Wf=(a,b)=>Uf(a,b,0),Xf=(a,b,c,d)=>{a=N.getProgramInfoLog(O[a]);b=0>2),b,!0)},Yf=(a,b,c)=>{if(c&&!(a>=kd))if(a=O[a],35716==b)z.setInt32(4*(c>>2),N.getProgramInfoLog(a).length+1,!0);else if(35719==b){if(!a.Vj){var d=N.getProgramParameter(a,35718);for(b=0;b>2),a.Vj,!0)}else if(35722==b){if(!a.Tj)for(d=N.getProgramParameter(a,35721),b=0;b>2),a.Tj,!0)}else if(35381==b){if(!a.Uj)for(d=N.getProgramParameter(a, +35382),b=0;b>2),a.Uj,!0)}else z.setInt32(4*(c>>2),N.getProgramParameter(a,b),!0)},Zf=(a,b,c)=>{if(c){a=Q[a];b=2>Cd.version?N.oj.getQueryObjectEXT(a,b):N.getQueryParameter(a,b);var d;"boolean"==typeof b?d=b?1:0:d=b;Rf(c,d)}},$f=(a,b,c)=>{if(c){a=N.oj.getQueryObjectEXT(Q[a],b);var d;"boolean"==typeof a?d=a?1:0:d=a;z.setInt32(4*(c>>2),d,!0)}},ag=(a,b,c,d)=>{a=N.getShaderInfoLog(P[a]);b=0>2),b,!0)},bg=(a,b,c)=>{c&&(35716==b?(a=N.getShaderInfoLog(P[a]),z.setInt32(4*(c>>2),a?a.length+1:0,!0)):35720==b?(a=N.getShaderSource(P[a]),z.setInt32(4*(c>>2),a?a.length+1:0,!0)):z.setInt32(4*(c>>2),N.getShaderParameter(P[a],b),!0))},cg=a=>{var b=ud[a];if(!b){switch(a){case 7939:b=Fd(Tf().join(" "));break;case 7936:case 7937:case 37445:case 37446:b=(b=N.getParameter(a))?Fd(b):0;break;case 7938:b=Fd(`OpenGL ES 3.0 (${N.getParameter(7938)})`);break;case 35724:b=N.getParameter(35724);var c=b.match(/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/); +null!==c&&(3==c[1].length&&(c[1]+="0"),b=`OpenGL ES GLSL ES ${c[1]} (${b})`);b=Fd(b)}ud[a]=b}return b},dg=(a,b)=>{if(2>Cd.version)return 0;var c=vd[a];if(c)return 0>b||b>=c.length?0:c[b];switch(a){case 7939:return c=Tf().map(Fd),c=vd[a]=c,0>b||b>=c.length?0:c[b];default:return 0}},eg=a=>"]"==a.slice(-1)&&a.lastIndexOf("["),fg=a=>{var b=a.Mj,c=a.Ok,d;if(!b){a.Mj=b={};a.Nk={};var e=N.getProgramParameter(a,35718);for(d=0;d{b=b?C(v,b):"";if(a=O[a]){fg(a);var c=a.Mj,d=0,e=b,f=eg(b);0>>0,e=b.slice(0,f));if((e=a.Ok[e])&&d{var b=N.Yk,c=b.Mj[a];"number"==typeof c&&(b.Mj[a]=c=N.getUniformLocation(b,b.Nk[a]+(0{if(c)if(a=O[a],fg(a),a=N.getUniform(a,Y(b)),"number"==typeof a||"boolean"== +typeof a)switch(d){case 0:z.setInt32(4*(c>>2),a,!0);break;case 2:z.setFloat32(4*(c>>2),a,!0)}else for(b=0;b>2),a[b],!0);break;case 2:z.setFloat32(4*(c+4*b>>2),a[b],!0)}},ig=(a,b,c)=>{hg(a,b,c,2)},jg=(a,b,c)=>{hg(a,b,c,0)},kg=(a,b,c,d)=>{if(c)if(a=N.getVertexAttrib(a,b),34975==b)z.setInt32(4*(c>>2),a&&a.name,!0);else if("number"==typeof a||"boolean"==typeof a)switch(d){case 0:z.setInt32(4*(c>>2),a,!0);break;case 2:z.setFloat32(4*(c>>2),a,!0);break; +case 5:d=Math.fround(a),z.setInt32(4*(c>>2),d,!0)}else for(b=0;b>2),a[b],!0);break;case 2:z.setFloat32(4*(c+4*b>>2),a[b],!0);break;case 5:var e=Math.fround(a[b]);z.setInt32(4*(c+4*b>>2),e,!0)}},lg=(a,b,c)=>{kg(a,b,c,0)},mg=a=>(a=pd[a])?N.isVertexArray(a):0,ng=a=>{a=O[a];N.linkProgram(a);a.Mj=0;a.Ok={}},og=(a,b)=>{3317==a?wd=b:3314==a&&(xd=b);N.pixelStorei(a,b)},pg=a=>N.readBuffer(a),qg=a=>{a-=5120;return 0==a?t:1==a?v:2==a?Ha:4==a?Ja:6==a?w:5==a|| +28922==a||28520==a||30779==a||30782==a?Ka:Ia},rg=(a,b,c,d,e)=>{a=qg(a);b=d*((xd||c)*({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[b-6402]||1)*a.BYTES_PER_ELEMENT+wd-1&-wd);return a.subarray(e>>>31-Math.clz32(a.BYTES_PER_ELEMENT),e+b>>>31-Math.clz32(a.BYTES_PER_ELEMENT))},sg=(a,b,c,d,e,f,g)=>{if(N.ek)N.readPixels(a,b,c,d,e,f,g);else{var m=qg(f);g>>>=31-Math.clz32(m.BYTES_PER_ELEMENT);N.readPixels(a,b,c,d,e,f,m,g)}},tg=(a,b,c,d)=>N.scissor(a,b,c,d),ug=(a,b,c,d)=>{for(var e="",f=0;f< +b;++f){var g=d?z.getUint32(4*(d+4*f>>2),!0):void 0;e+=Gc(z.getUint32(4*(c+4*f>>2),!0),g)}N.shaderSource(P[a],e)},vg=(a,b,c,d,e,f,g,m,n)=>{if(N.ij)N.texImage2D(a,b,c,d,e,f,g,m,n);else if(n){var p=qg(m);n>>>=31-Math.clz32(p.BYTES_PER_ELEMENT);N.texImage2D(a,b,c,d,e,f,g,m,p,n)}else p=n?rg(m,g,d,e,n):null,N.texImage2D(a,b,c,d,e,f,g,m,p)},wg=(a,b,c)=>N.texParameteri(a,b,c),xg=(a,b,c,d,e,f,g,m,n)=>{if(N.ij)N.texSubImage2D(a,b,c,d,e,f,g,m,n);else if(n){var p=qg(m);N.texSubImage2D(a,b,c,d,e,f,g,m,p,n>>>31- +Math.clz32(p.BYTES_PER_ELEMENT))}else n=n?rg(m,g,e,f,n):null,N.texSubImage2D(a,b,c,d,e,f,g,m,n)},yg=(a,b,c)=>{b&&N.uniform1fv(Y(a),w,c>>2,b)},zg=(a,b,c)=>{b&&N.uniform1iv(Y(a),Ja,c>>2,b)},Ag=(a,b,c)=>{b&&N.uniform2fv(Y(a),w,c>>2,2*b)},Bg=(a,b,c)=>{b&&N.uniform2iv(Y(a),Ja,c>>2,2*b)},Cg=(a,b,c)=>{b&&N.uniform3fv(Y(a),w,c>>2,3*b)},Dg=(a,b,c)=>{b&&N.uniform3iv(Y(a),Ja,c>>2,3*b)},Eg=(a,b,c)=>{b&&N.uniform4fv(Y(a),w,c>>2,4*b)},Fg=(a,b,c)=>{b&&N.uniform4iv(Y(a),Ja,c>>2,4*b)},Gg=(a,b,c,d)=>{b&&N.uniformMatrix3fv(Y(a), +!!c,w,d>>2,9*b)},Hg=(a,b,c,d)=>{b&&N.uniformMatrix4fv(Y(a),!!c,w,d>>2,16*b)},Ig=a=>{a=O[a];N.useProgram(a);N.Yk=a},Jg=(a,b)=>{N.vertexAttribDivisor(a,b)},Kg=(a,b,c,d,e)=>{N.vertexAttribIPointer(a,b,c,d,e)},Lg=(a,b,c,d,e,f)=>{N.vertexAttribPointer(a,b,c,!!d,e,f)},Mg=(a,b,c,d)=>N.viewport(a,b,c,d),Ng=(a,b)=>{if(!R.fullscreenEnabled())return-1;a=S(a);return a?a.requestFullscreen||a.webkitRequestFullscreen?ge()?ue(a,b):b.bl?(ee(ue,1,[a,b]),1):-2:-3:-4},Og=()=>{try{if(navigator.getGamepads)return(R.Sj= +navigator.getGamepads())?0:-1}catch(a){navigator.getGamepads=null}return-1},Pg=(a,b)=>{var c={target:S(2),Zi:"beforeunload",ej:b,gj:(d=event)=>{var e=V(b,28,0,a);e&&=e?C(v,e):"";if(e)return d.preventDefault(),d.returnValue=e},dj:!0};return ie(c)},Qg=(a,b,c,d,e,f)=>{R.fk||(R.fk=A(256));a={target:S(a),Zi:f,ej:d,gj:(g=event)=>{var m=g.target.id?g.target.id:"",n=R.fk;B(je(g.target),v,n+0,128);B(m,v,n+128,128);V(d,e,n,b)&&g.preventDefault()},dj:c};return ie(a)},Rg=(a,b,c,d,e)=>{R.gk||(R.gk=A(276));return ie({target:a, +Zi:e,ej:d,gj:(f=event)=>{var g=R.gk,m=document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement,n=!!m;t[g]=n;t[g+1]=R.fullscreenEnabled();var p=n?m:R.xl,q=p?.id||"";B(je(p),v,g+2,128);B(q,v,g+130,128);z.setInt32(4*(g+260>>2),p?p.clientWidth:0,!0);z.setInt32(4*(g+264>>2),p?p.clientHeight:0,!0);z.setInt32(4*(g+268>>2),screen.width,!0);z.setInt32(4*(g+272>>2),screen.height,!0);n&&(R.xl=m);V(d,19,g,b)&&f.preventDefault()},dj:c})},Sg=(a,b, +c,d,e)=>{R.hk||(R.hk=A(1240));b={target:S(2),Oj:!0,Zi:e,ej:c,gj:(f=event)=>{var g=R.hk;Ue(g,f.gamepad);V(c,d,g,a)&&f.preventDefault()},dj:b};return ie(b)},Tg=(a,b,c,d,e,f)=>{R.jk||(R.jk=A(160));a={target:S(a),Zi:f,ej:d,gj:g=>{var m=R.jk;z.setFloat64(8*(m>>3),g.timeStamp,!0);var n=m>>2;z.setInt32(4*(n+2),g.location,!0);t[m+12]=g.ctrlKey;t[m+13]=g.shiftKey;t[m+14]=g.altKey;t[m+15]=g.metaKey;t[m+16]=g.repeat;z.setInt32(4*(n+5),g.charCode,!0);z.setInt32(4*(n+6),g.keyCode,!0);z.setInt32(4*(n+7),g.which, +!0);B(g.key||"",v,m+32,32);B(g.code||"",v,m+64,32);B(g.char||"",v,m+96,32);B(g.locale||"",v,m+128,32);V(d,e,m,b)&&g.preventDefault()},dj:c};return ie(a)},Ug=(a,b,c)=>{z.setFloat64(8*(a>>3),b.timeStamp,!0);var d=a>>2;z.setInt32(4*(d+2),b.screenX,!0);z.setInt32(4*(d+3),b.screenY,!0);z.setInt32(4*(d+4),b.clientX,!0);z.setInt32(4*(d+5),b.clientY,!0);t[a+24]=b.ctrlKey;t[a+25]=b.shiftKey;t[a+26]=b.altKey;t[a+27]=b.metaKey;z.setInt16(2*(2*d+14),b.button,!0);z.setInt16(2*(2*d+15),b.buttons,!0);z.setInt32(4* +(d+8),b.movementX,!0);z.setInt32(4*(d+9),b.movementY,!0);a=te(c);z.setInt32(4*(d+10),b.clientX-(a.left|0),!0);z.setInt32(4*(d+11),b.clientY-(a.top|0),!0)},Vg=(a,b,c,d,e,f)=>{R.Xj||(R.Xj=A(64));a=S(a);return ie({target:a,Oj:"mousemove"!=f&&"mouseenter"!=f&&"mouseleave"!=f,Zi:f,ej:d,gj:(g=event)=>{Ug(R.Xj,g,a);V(d,e,R.Xj,b)&&g.preventDefault()},dj:c})},Wg=(a,b,c,d,e)=>{R.mk||(R.mk=A(257));return ie({target:a,Zi:e,ej:d,gj:(f=event)=>{var g=R.mk,m=document.pointerLockElement||document.aj||document.Rk|| +document.Qk;t[g]=!!m;var n=m?.id||"";B(je(m),v,g+1,128);B(n,v,g+129,128);V(d,20,g,b)&&f.preventDefault()},dj:c})},Xg=(a,b,c,d)=>{R.tk||(R.tk=A(36));a=S(a);return ie({target:a,Zi:"resize",ej:d,gj:(e=event)=>{if(e.target==a){var f=document.body;if(f){var g=R.tk;z.setInt32(4*(g>>2),0,!0);z.setInt32(4*(g+4>>2),f.clientWidth,!0);z.setInt32(4*(g+8>>2),f.clientHeight,!0);z.setInt32(4*(g+12>>2),innerWidth,!0);z.setInt32(4*(g+16>>2),innerHeight,!0);z.setInt32(4*(g+20>>2),outerWidth,!0);z.setInt32(4*(g+24>> +2),outerHeight,!0);z.setInt32(4*(g+28>>2),pageXOffset|0,!0);z.setInt32(4*(g+32>>2),pageYOffset|0,!0);V(d,10,g,b)&&e.preventDefault()}}},dj:c})},Yg=(a,b,c,d,e,f)=>{R.sk||(R.sk=A(1552));a=S(a);return ie({target:a,Oj:"touchstart"==f||"touchend"==f,Zi:f,ej:d,gj:g=>{var m={},n=g.touches;for(var p of n)p.Fk=p.Kk=0,m[p.identifier]=p;for(var q of g.changedTouches)q.Fk=1,m[q.identifier]=q;for(var r of g.targetTouches)m[r.identifier].Kk=1;n=R.sk;z.setFloat64(8*(n>>3),g.timeStamp,!0);t[n+12]=g.ctrlKey;t[n+13]= +g.shiftKey;t[n+14]=g.altKey;t[n+15]=g.metaKey;p=n+16;q=te(a);r=0;for(let u of Object.values(m))if(m=p>>2,z.setInt32(4*m,u.identifier,!0),z.setInt32(4*(m+1),u.screenX,!0),z.setInt32(4*(m+2),u.screenY,!0),z.setInt32(4*(m+3),u.clientX,!0),z.setInt32(4*(m+4),u.clientY,!0),z.setInt32(4*(m+5),u.pageX,!0),z.setInt32(4*(m+6),u.pageY,!0),t[p+28]=u.Fk,t[p+29]=u.Kk,z.setInt32(4*(m+8),u.clientX-(q.left|0),!0),z.setInt32(4*(m+9),u.clientY-(q.top|0),!0),p+=48,31<++r)break;z.setInt32(4*(n+8>>2),r,!0);V(d,e,n,b)&& +g.preventDefault()},dj:c})},Zg=(a,b,c)=>{var d=le[1];R.vk||(R.vk=A(8));return ie({target:d,Zi:"visibilitychange",ej:c,gj:(e=event)=>{var f=R.vk,g=["hidden","visible","prerender","unloaded"].indexOf(document.visibilityState);t[f]=document.hidden;z.setInt32(4*(f+4>>2),g,!0);V(c,21,f,a)&&e.preventDefault()},dj:b})},$g=(a,b,c,d)=>{R.wk||(R.wk=A(96));return ie({target:a,Oj:!0,Zi:"wheel",ej:d,gj:(e=event)=>{var f=R.wk;Ug(f,e,a);z.setFloat64(8*(f+64>>3),e.deltaX,!0);z.setFloat64(8*(f+72>>3),e.deltaY,!0); +z.setFloat64(8*(f+80>>3),e.deltaZ,!0);z.setInt32(4*(f+88>>2),e.deltaMode,!0);V(d,9,f,b)&&e.preventDefault()},dj:c})};class ah{constructor(){this.mj=[void 0];this.aj=[]}get(a){return this.mj[a]}has(a){return void 0!==this.mj[a]}Nj(a){var b=this.aj.pop()||this.mj.length;this.mj[b]=a;return b}}var bh; +function ch(a,b,c,d,e){function f(){var I=0,ra=0;y.response&&lb&&0===z.getUint32(4*(a+12>>2),!0)&&(ra=y.response.byteLength);0>2),I,!0);Rf(a+16,ra);Rf(a+24,0);(I=y.response?y.response.byteLength:0)&&Rf(a+32,I);z.setInt16(2*(a+40>>1),y.readyState,!0);z.setInt16(2*(a+42>>1),y.status,!0);y.statusText&&B(y.statusText,v,a+44,64)}var g=z.getUint32(4*(a+8>>2),!0);if(g){var m=g?C(v,g):"",n=a+108,p=Gc(n+0);p||="GET";var q=z.getUint32(4* +(n+56>>2),!0),r=z.getUint32(4*(n+68>>2),!0),u=z.getUint32(4*(n+72>>2),!0);g=z.getUint32(4*(n+76>>2),!0);var H=z.getUint32(4*(n+80>>2),!0),Z=z.getUint32(4*(n+84>>2),!0),pa=z.getUint32(4*(n+88>>2),!0),aa=z.getUint32(4*(n+52>>2),!0),lb=!!(aa&1),Vb=!!(aa&2);aa=!!(aa&64);r=r?r?C(v,r):"":void 0;u=u?u?C(v,u):"":void 0;var y=new XMLHttpRequest;y.withCredentials=!!v[n+60];y.open(p,m,!aa,r,u);aa||(y.timeout=q);y.aj=m;y.responseType="arraybuffer";H&&(m=H?C(v,H):"",y.overrideMimeType(m));if(g)for(;;){n=z.getUint32(4* +(g>>2),!0);if(!n)break;m=z.getUint32(4*(g+4>>2),!0);if(!m)break;g+=8;n=n?C(v,n):"";m=m?C(v,m):"";y.setRequestHeader(n,m)}var xa=bh.Nj(y);z.setUint32(4*(a>>2),xa,!0);g=Z&&pa?v.slice(Z,Z+pa):null;y.onload=I=>{bh.has(xa)&&(f(),200<=y.status&&300>y.status?b?.(a,y,I):c?.(a,y,I))};y.onerror=I=>{bh.has(xa)&&(f(),c?.(a,y,I))};y.ontimeout=I=>{bh.has(xa)&&c?.(a,y,I)};y.onprogress=I=>{if(bh.has(xa)){var ra=lb&&Vb&&y.response?y.response.byteLength:0,ob=0;0>2),ob,!0);Rf(a+16,ra);Rf(a+24,I.loaded-ra);Rf(a+32,I.total);z.setInt16(2*(a+40>>1),y.readyState,!0);3<=y.readyState&&0===y.status&&0>1),y.status,!0);y.statusText&&B(y.statusText,v,a+44,64);d?.(a,y,I);ob&&Te(ob)}};y.onreadystatechange=I=>{bh.has(xa)&&(z.setInt16(2*(a+40>>1),y.readyState,!0),2<=y.readyState&&z.setInt16(2*(a+42>>1),y.status,!0),e?.(a,y,I))};try{y.send(g)}catch(I){c?.(a,y,I)}}else c(a,0,"no url specified!")} +var na={},eh=()=>{if(!dh){var a={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:ya||"./this.program"},b;for(b in na)void 0===na[b]?delete a[b]:a[b]=na[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);dh=c}return dh},dh,ua,ta=(a,b,c=[])=>{a=a.replace(/p/g,"i");return(0,h["dynCall_"+a])(b,...c)};[44].forEach(a=>{Ib[a]=new D(a);Ib[a].stack=""}); +ec=Array(4096);oa(E,"/");k("/tmp");k("/home");k("/home/web_user");(function(){k("/dev");zb(259,{read:()=>0,write:(d,e,f,g)=>g});xc("/dev/null",259);yb(1280,Bb);yb(1536,Cb);xc("/dev/tty",1280);xc("/dev/tty1",1536);var a=new Uint8Array(1024),b=0,c=()=>{0===b&&(b=sb(a).byteLength);return a[--b]};Dc("/dev","random",c);Dc("/dev","urandom",c);k("/dev/shm");k("/dev/shm/tmp")})(); +(function(){k("/proc");var a=k("/proc/self");k("/proc/self/fd");oa({Yi(){var b=Hb(a,"fd",16895,73);b.Ri={Fj(c,d){var e=J(+d);c={parent:null,Yi:{Hj:"fake"},Ri:{Jj:()=>e.path}};return c.parent=c}};return b}},"/proc/self/fd")})();h.FS_createPath=Bc;h.FS_createDataFile=Pb;h.FS_createPreloadedFile=Qb;h.FS_unlink=$b;h.FS_createLazyFile=Fc;h.FS_createDevice=Dc; +h.requestFullscreen=function(a,b){function c(){Sc=!1;var f=d.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===f?(d.exitFullscreen=$c,Yc&&d.requestPointerLock(),Sc=!0,Zc?("undefined"!=typeof SDL&&(f=z.getUint32(4*(SDL.screen>>2),!0),z.setInt32(4*(SDL.screen>>2),f|8388608,!0)),cd(h.canvas),bd()):cd(d)):(f.parentNode.insertBefore(d,f),f.parentNode.removeChild(f),Zc?("undefined"!= +typeof SDL&&(f=z.getUint32(4*(SDL.screen>>2),!0),z.setInt32(4*(SDL.screen>>2),f&-8388609,!0)),cd(h.canvas),bd()):cd(d));h.onFullScreen?.(Sc);h.onFullscreen?.(Sc)}Yc=a;Zc=b;"undefined"==typeof Yc&&(Yc=!0);"undefined"==typeof Zc&&(Zc=!1);var d=h.canvas;Xc||(Xc=!0,document.addEventListener("fullscreenchange",c,!1),document.addEventListener("mozfullscreenchange",c,!1),document.addEventListener("webkitfullscreenchange",c,!1),document.addEventListener("MSFullscreenChange",c,!1));var e=document.createElement("div"); +d.parentNode.insertBefore(e,d);e.appendChild(d);e.requestFullscreen=e.requestFullscreen||e.mozRequestFullScreen||e.msRequestFullscreen||(e.webkitRequestFullscreen?()=>e.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT):null)||(e.webkitRequestFullScreen?()=>e.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT):null);e.requestFullscreen()};h.setCanvasSize=function(a,b,c){cd(h.canvas,a,b);c||bd()}; +h.getUserMedia=function(a){let b;(b=window).getUserMedia||(b.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia);window.getUserMedia(a)};h.createContext=function(a,b,c,d){if(b&&h.hj&&a==h.canvas)return h.hj;var e;if(b){var f={antialias:!1,alpha:!1,kk:2};if(d)for(var g in d)f[g]=d[g];if("undefined"!=typeof Ed&&(e=Bd(a,f)))var m=qd[e].rj}else m=a.getContext("2d");if(!m)return null;c&&(h.hj=m,b&&Dd(e),Uc.forEach(n=>n()),Nb());return m};h.requestAnimationFrame=$d;h.pauseMainLoop=Xd; +h.resumeMainLoop=Yd;h.preMainLoop&&Td.push(h.preMainLoop);h.postMainLoop&&Ud.push(h.postMainLoop);for(var fh=0;32>fh;++fh)Cf.push(Array(fh));bh=new ah; +var rh={H:function(a,b,c){kb=c;try{var d=J(a);switch(b){case 0:var e=jb();if(0>e)break;for(;cc[e];)e++;return uc(d,e).fd;case 1:case 2:return 0;case 3:return d.flags;case 4:return e=jb(),d.flags|=e,0;case 12:return e=jb(),z.setInt16(2*(e+0>>1),2,!0),0;case 13:case 14:return 0}return-28}catch(f){if("undefined"==typeof K||"ErrnoError"!==f.name)throw f;return-f.Xi}},Yd:function(a,b){try{var c=J(a);return Ic(Tb,c.path,b)}catch(d){if("undefined"==typeof K||"ErrnoError"!==d.name)throw d;return-d.Xi}},gd:function(a, +b,c){try{var d=J(a);d.sj||(d.sj=Sb(d.path));a=0;for(var e=Ac(d,0,1),f=Math.floor(e/280);f>3]=BigInt(m);x[b+a+8>>3]=BigInt(280*(f+1));z.setInt16(2*(b+a+16>>1),280,!0);t[b+a+18]=n;B(g,v,b+a+19,256);a+=280;f+=1}Ac(d,280*f,0);return a}catch(q){if("undefined"==typeof K||"ErrnoError"!== +q.name)throw q;return-q.Xi}},sg:function(a,b,c){kb=c;try{var d=J(a);switch(b){case 21509:return d.Ui?0:-59;case 21505:if(!d.Ui)return-59;if(d.Ui.lj.ol){a=[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var e=jb();z.setInt32(4*(e>>2),25856,!0);z.setInt32(4*(e+4>>2),5,!0);z.setInt32(4*(e+8>>2),191,!0);z.setInt32(4*(e+12>>2),35387,!0);for(var f=0;32>f;f++)t[e+f+17]=a[f]||0}return 0;case 21510:case 21511:case 21512:return d.Ui?0:-59;case 21506:case 21507:case 21508:if(!d.Ui)return-59; +if(d.Ui.lj.pl)for(e=jb(),z.getInt32(4*(e>>2),!0),z.getInt32(4*(e+4>>2),!0),z.getInt32(4*(e+8>>2),!0),z.getInt32(4*(e+12>>2),!0),a=[],f=0;32>f;f++)a.push(t[e+f+17]);return 0;case 21519:if(!d.Ui)return-59;e=jb();z.setInt32(4*(e>>2),0,!0);return 0;case 21520:return d.Ui?-28:-59;case 21531:e=jb();if(!d.Si.nl)throw new D(59);return d.Si.nl(d,b,e);case 21523:if(!d.Ui)return-59;d.Ui.lj.ql&&(f=[24,80],e=jb(),z.setInt16(2*(e>>1),f[0],!0),z.setInt16(2*(e+2>>1),f[1],!0));return 0;case 21524:return d.Ui?0:-59; +case 21515:return d.Ui?0:-59;default:return-28}}catch(g){if("undefined"==typeof K||"ErrnoError"!==g.name)throw g;return-g.Xi}},rd:function(a,b){try{return a=a?C(v,a):"",Ic(zc,a,b)}catch(c){if("undefined"==typeof K||"ErrnoError"!==c.name)throw c;return-c.Xi}},Xc:function(a,b,c){try{return b=b?C(v,b):"",b=Hc(a,b),b=nb(b),"/"===b[b.length-1]&&(b=b.substr(0,b.length-1)),k(b,c),0}catch(d){if("undefined"==typeof K||"ErrnoError"!==d.name)throw d;return-d.Xi}},Cd:function(a,b,c,d){try{b=b?C(v,b):"";var e= +d&256;b=Hc(a,b,d&4096);return Ic(e?zc:Tb,b,c)}catch(f){if("undefined"==typeof K||"ErrnoError"!==f.name)throw f;return-f.Xi}},ua:function(a,b,c,d){kb=d;try{b=b?C(v,b):"";b=Hc(a,b);var e=d?jb():0;return Ub(b,c,e).fd}catch(f){if("undefined"==typeof K||"ErrnoError"!==f.name)throw f;return-f.Xi}},Nd:function(a,b){try{return a=a?C(v,a):"",Ic(Tb,a,b)}catch(c){if("undefined"==typeof K||"ErrnoError"!==c.name)throw c;return-c.Xi}},Kc:function(a,b,c){try{return b=b?C(v,b):"",b=Hc(a,b),0===c?$b(b):512===c?Zb(b): +Wa("Invalid flags passed to unlinkat"),0}catch(d){if("undefined"==typeof K||"ErrnoError"!==d.name)throw d;return-d.Xi}},Xg:()=>{Wa("")},Bb:function(a){if(bh.has(a)){var b=bh.get(a),c=bh;c.mj[a]=void 0;c.aj.push(a);0b.readyState&&b.abort()}},Df:()=>1,Ab:()=>{throw Infinity;},he:function(a,b){a=-9007199254740992>a||9007199254740992>2),a.getSeconds(),!0);z.setInt32(4*(b+4>>2),a.getMinutes(),!0);z.setInt32(4*(b+8>>2),a.getHours(),!0); +z.setInt32(4*(b+12>>2),a.getDate(),!0);z.setInt32(4*(b+16>>2),a.getMonth(),!0);z.setInt32(4*(b+20>>2),a.getFullYear()-1900,!0);z.setInt32(4*(b+24>>2),a.getDay(),!0);var c=a.getFullYear();z.setInt32(4*(b+28>>2),(0!==c%4||0===c%100&&0!==c%400?Kc:Jc)[a.getMonth()]+a.getDate()-1|0,!0);z.setInt32(4*(b+36>>2),-(60*a.getTimezoneOffset()),!0);c=(new Date(a.getFullYear(),6,1)).getTimezoneOffset();var d=(new Date(a.getFullYear(),0,1)).getTimezoneOffset();z.setInt32(4*(b+32>>2),(c!=d&&a.getTimezoneOffset()== +Math.min(d,c))|0,!0)},Cf:function(a,b,c,d,e,f,g){e=-9007199254740992>e||9007199254740992>2),n.mj,!0);z.setUint32(4*(g>>2),p,!0);return 0}catch(q){if("undefined"==typeof K||"ErrnoError"!==q.name)throw q;return-q.Xi}},Of:function(a,b,c,d,e,f){f= +-9007199254740992>f||9007199254740992{var e=(new Date).getFullYear(),f=(new Date(e,0,1)).getTimezoneOffset();e=(new Date(e,6,1)).getTimezoneOffset();z.setUint32(4*(a>>2),60*Math.max(f,e),!0);z.setInt32(4*(b>>2),Number(f!=e),!0);b=g=>{var m=Math.abs(g);return`UTC${0<=g?"-":"+"}${String(Math.floor(m/ +60)).padStart(2,"0")}${String(m%60).padStart(2,"0")}`};a=b(f);b=b(e);e{if(12448==a)return L=12288,1;L=12300;return 0},ed:(a,b,c,d,e)=>{if(62E3!=a)L=12296,c=0;else{if(b)for(;;){a=z.getInt32(4*(b>>2),!0);if(12321==a)a=z.getInt32(4*(b+4>>2),!0),M.alpha=0>2),!0),M.depth=0>2),!0),M.stencil=0>2),!0),M.antialias=0>2),!0),M.antialias=1==a;else if(12544==a)a=z.getInt32(4*(b+4>>2),!0),M.Yl=12547!=a;else if(12344==a)break;b+=8}c&&d||e?(e&&z.setInt32(4*(e>>2),1,!0),c&&0>2),62002,!0),L=12288,c=1):(L=12300,c=0)}return c},cd:(a,b,c,d)=>{if(62E3!=a)return L=12296,0;for(a=1;;){b=z.getInt32(4*(d>>2),!0);if(12440==b)a=z.getInt32(4*(d+4>>2),!0);else if(12344==b)break;else return L=12292,0;d+=8}if(2>a||3e()),Dd(null),62004;L=12297;return 0},ad:(a,b)=>{if(62E3!=a)return L=12296,0;if(62002!=b)return L=12293,0;L=12288;return 62006},bd:(a,b)=>{if(62E3!=a)return L=12296,0;if(62004!=b)return L=12294,0;a=jd;Cd===qd[a]&&(Cd=null);"object"==typeof R&&R.zl(qd[a].rj.canvas);qd[a]&&qd[a].rj.canvas&&(qd[a].rj.canvas.Dj=void 0);qd[a]=null;L=12288;ed==b&&(ed=0);return 1},$c:(a,b)=>{if(62E3!=a)return L=12296,0;if(62006!=b)return L=12301,1;fd==b&&(fd=0);gd==b&&(gd=0);L=12288;return 1},dd:(a, +b,c,d)=>{if(62E3!=a)return L=12296,0;if(62002!=b)return L=12293,0;if(!d)return L=12300,0;L=12288;switch(c){case 12320:return z.setInt32(4*(d>>2),M.alpha?32:24,!0),1;case 12321:return z.setInt32(4*(d>>2),M.alpha?8:0,!0),1;case 12322:return z.setInt32(4*(d>>2),8,!0),1;case 12323:return z.setInt32(4*(d>>2),8,!0),1;case 12324:return z.setInt32(4*(d>>2),8,!0),1;case 12325:return z.setInt32(4*(d>>2),M.depth?24:0,!0),1;case 12326:return z.setInt32(4*(d>>2),M.stencil?8:0,!0),1;case 12327:return z.setInt32(4* +(d>>2),12344,!0),1;case 12328:return z.setInt32(4*(d>>2),62002,!0),1;case 12329:return z.setInt32(4*(d>>2),0,!0),1;case 12330:return z.setInt32(4*(d>>2),4096,!0),1;case 12331:return z.setInt32(4*(d>>2),16777216,!0),1;case 12332:return z.setInt32(4*(d>>2),4096,!0),1;case 12333:return z.setInt32(4*(d>>2),0,!0),1;case 12334:return z.setInt32(4*(d>>2),0,!0),1;case 12335:return z.setInt32(4*(d>>2),12344,!0),1;case 12337:return z.setInt32(4*(d>>2),M.antialias?4:0,!0),1;case 12338:return z.setInt32(4*(d>> +2),M.antialias?1:0,!0),1;case 12339:return z.setInt32(4*(d>>2),4,!0),1;case 12340:return z.setInt32(4*(d>>2),12344,!0),1;case 12341:case 12342:case 12343:return z.setInt32(4*(d>>2),-1,!0),1;case 12345:case 12346:return z.setInt32(4*(d>>2),0,!0),1;case 12347:return z.setInt32(4*(d>>2),0,!0),1;case 12348:return z.setInt32(4*(d>>2),1,!0),1;case 12349:case 12350:return z.setInt32(4*(d>>2),0,!0),1;case 12351:return z.setInt32(4*(d>>2),12430,!0),1;case 12352:return z.setInt32(4*(d>>2),4,!0),1;case 12354:return z.setInt32(4* +(d>>2),0,!0),1;default:return L=12292,0}},id:a=>{L=12288;return 0!=a&&1!=a?0:62E3},Sc:()=>L,hd:(a,b,c)=>{if(62E3!=a)return L=12296,0;b&&z.setInt32(4*(b>>2),1,!0);c&&z.setInt32(4*(c>>2),4,!0);dd=!0;L=12288;return 1},_c:(a,b,c,d)=>{if(62E3!=a)return L=12296,0;if(0!=d&&62004!=d)return L=12294,0;if(0!=c&&62006!=c||0!=b&&62006!=b)return L=12301,0;Dd(d?jd:null);ed=d;gd=b;fd=c;L=12288;return 1},Tc:(a,b)=>{if(62E3!=a)return L=12296,0;L=12288;if(hd[b])return hd[b];switch(b){case 12371:a=Fd("Emscripten");break; +case 12372:a=Fd("1.4 Emscripten EGL");break;case 12373:a=Fd("");break;case 12429:a=Fd("OpenGL_ES");break;default:return L=12300,0}return hd[b]=a},Zc:()=>{if(dd)if(h.hj)if(h.hj.isContextLost())L=12302;else return L=12288,1;else L=12290;else L=12289;return 0},Yc:(a,b)=>{if(62E3!=a)return L=12296,0;0==b?Vd(0,0):Vd(1,b);L=12288;return 1},fd:a=>{if(62E3!=a)return L=12296,0;gd=fd=ed=0;dd=!1;L=12288;return 1},Vc:()=>{L=12288;return 1},Wc:()=>{L=12288;return 1},B:(a,b,c)=>{b=ce(b,c);return eb[a](...b)},e:(a, +b,c)=>{b=ce(b,c);return eb[a](...b)},Qb:(a,b,c)=>{b=ce(b,c);return eb[a](...b)},ja:()=>{Xd();Hd=null},I:()=>Date.now(),Mc:()=>{if(!R.fullscreenEnabled())return-1;fe(ue);var a=le[1];if(a.exitFullscreen)a.fullscreenElement&&a.exitFullscreen();else if(a.webkitExitFullscreen)a.webkitFullscreenElement&&a.webkitExitFullscreen();else return-1;return 0},Qc:()=>{fe(ve);if(document.exitPointerLock)document.exitPointerLock();else return-1;return 0},Zf:(a,b)=>{if(!Fa)if(0===ze){ze=1;var c=a+20;Pe(c);X=c;Re(c); +c=T();z.setUint32(4*(a+8>>2),c,!0);De=b}else ze=0,Se(),X=null},r:()=>devicePixelRatio,j:(a,b,c)=>{a=S(a);if(!a)return-4;a=te(a);z.setFloat64(8*(b>>3),a.width,!0);z.setFloat64(8*(c>>3),a.height,!0);return 0},U:(a,b)=>{if(0>a||a>=R.Sj.length)return-5;if(!R.Sj[a])return-7;Ue(b,R.Sj[a]);return 0},rf:()=>2147483648,F:()=>performance.now(),Ic:()=>R.Sj.length,Rc:(a,b)=>{z.setInt32(4*(a>>2),screen.width,!0);z.setInt32(4*(b>>2),screen.height,!0)},fb:Ve,eb:We,df:(a,b)=>{N.beginQuery(a,Q[b])},wb:(a,b)=>{N.oj.beginQueryEXT(a, +Q[b])},Le:a=>N.beginTransformFeedback(a),db:Xe,cb:Ye,Ie:(a,b,c)=>{N.bindBufferBase(a,b,ld[c])},Je:(a,b,c,d,e)=>{N.bindBufferRange(a,b,ld[c],d,e)},bb:Ze,ab:(a,b)=>{N.bindRenderbuffer(a,nd[b])},Md:(a,b)=>{N.bindSampler(a,rd[b])},$a:$e,Ed:(a,b)=>{N.bindTransformFeedback(a,sd[b])},Re:af,ob:af,Za:(a,b,c,d)=>N.blendColor(a,b,c,d),Ya:a=>N.blendEquation(a),Xa:bf,Wa:(a,b)=>N.blendFunc(a,b),Va:cf,Ue:df,Ua:ef,Ta:ff,Sa:a=>N.checkFramebufferStatus(a),Ra:gf,ke:(a,b,c,d)=>N.clearBufferfi(a,b,c,d),le:(a,b,c)=>{N.clearBufferfv(a, +b,w,c>>2)},ne:(a,b,c)=>{N.clearBufferiv(a,b,Ja,c>>2)},me:(a,b,c)=>{N.clearBufferuiv(a,b,Ka,c>>2)},Qa:hf,Pa:jf,Oa:a=>N.clearStencil(a),Wd:(a,b,c)=>{c=Number(c);return N.clientWaitSync(td[a],b,c)},vf:(a,b)=>{N.Vl.clipControlEXT(a,b)},Na:(a,b,c,d)=>{N.colorMask(!!a,!!b,!!c,!!d)},Ma:kf,La:lf,jf:(a,b,c,d,e,f,g,m,n)=>{N.ij?N.compressedTexImage3D(a,b,c,d,e,f,g,m,n):N.compressedTexImage3D(a,b,c,d,e,f,g,v,n,m)},Ka:mf,hf:(a,b,c,d,e,f,g,m,n,p,q)=>{N.ij?N.compressedTexSubImage3D(a,b,c,d,e,f,g,m,n,p,q):N.compressedTexSubImage3D(a, +b,c,d,e,f,g,m,n,v,q,p)},ie:(a,b,c,d,e)=>N.copyBufferSubData(a,b,c,d,e),Ja:(a,b,c,d,e,f,g,m)=>N.copyTexImage2D(a,b,c,d,e,f,g,m),Ia:(a,b,c,d,e,f,g,m)=>N.copyTexSubImage2D(a,b,c,d,e,f,g,m),kf:(a,b,c,d,e,f,g,m,n)=>N.copyTexSubImage3D(a,b,c,d,e,f,g,m,n),Ha:nf,Ga:of,Fa:pf,Ea:qf,Da:rf,Ca:sf,ff:(a,b)=>{for(var c=0;c>2),!0),e=Q[d];e&&(N.deleteQuery(e),Q[d]=null)}},zb:(a,b)=>{for(var c=0;c>2),!0),e=Q[d];e&&(N.oj.deleteQueryEXT(e),Q[d]=null)}}, +Ba:(a,b)=>{for(var c=0;c>2),!0),e=nd[d];e&&(N.deleteRenderbuffer(e),e.name=0,nd[d]=null)}},Pd:(a,b)=>{for(var c=0;c>2),!0),e=rd[d];e&&(N.deleteSampler(e),e.name=0,rd[d]=null)}},Aa:tf,Xd:a=>{if(a){var b=td[a];b&&(N.deleteSync(b),b.name=0,td[a]=null)}},za:uf,Dd:(a,b)=>{for(var c=0;c>2),!0),e=sd[d];e&&(N.deleteTransformFeedback(e),e.name=0,sd[d]=null)}},Qe:vf,nb:vf,ya:wf,xa:xf,wa:(a,b)=>N.depthRange(a, +b),Ah:(a,b)=>{N.detachShader(O[a],P[b])},zh:yf,yh:zf,xh:Af,ae:Bf,ib:Bf,ld:Bf,sf:Bf,md:Bf,$e:Df,pf:Df,kb:Df,wh:Ef,$d:Ff,hb:Ff,jd:Ff,kd:Ff,qf:Ff,nf:(a,b,c,d,e,f)=>{N.drawElements(a,d,e,f)},vh:Gf,uh:Hf,cf:a=>N.endQuery(a),vb:a=>{N.oj.endQueryEXT(a)},Ke:()=>N.endTransformFeedback(),_d:(a,b)=>(a=N.fenceSync(a,b))?(b=yd(td),a.name=b,td[b]=a,b):0,th:()=>N.finish(),sh:()=>N.flush(),rh:(a,b,c,d)=>{N.framebufferRenderbuffer(a,b,c,nd[d])},qh:If,Se:(a,b,c,d,e)=>{N.framebufferTextureLayer(a,b,od[c],d,e)},ph:Jf, +oh:Kf,mh:Lf,gf:(a,b)=>{zd(a,b,"createQuery",Q)},Hb:(a,b)=>{for(var c=0;c>2),z.setInt32(d,0,!0);break}var e=yd(Q);d.name=e;Q[e]=d;z.setInt32(4*(b+4*c>>2),e,!0)}},lh:(a,b)=>{zd(a,b,"createRenderbuffer",nd)},Qd:(a,b)=>{zd(a,b,"createSampler",rd)},kh:Mf,Bd:(a,b)=>{zd(a,b,"createTransformFeedback",sd)},Pe:Nf,mb:Nf,nh:Of,jh:(a,b,c,d,e,f,g)=>{Pf("getActiveAttrib",a,b,c,d,e,f,g)},ih:Qf,ce:(a,b,c,d,e)=>{a=O[a];if(a=N.getActiveUniformBlockName(a, +b))e&&0>2),c,!0)):d&&z.setInt32(4*(d>>2),0,!0)},de:(a,b,c,d)=>{a=O[a];if(35393==c)z.setInt32(4*(d>>2),N.getActiveUniformBlockName(a,b).length+1,!0);else if(a=N.getActiveUniformBlockParameter(a,b,c),null!==a)if(35395==c)for(c=0;c>2),a[c],!0);else z.setInt32(4*(d>>2),a,!0)},fe:(a,b,c,d,e)=>{a=O[a];for(var f=[],g=0;g>2),!0));if(a=N.getActiveUniforms(a,f,d))for(b=a.length,g=0;g>2),a[g],!0)},hh:(a,b,c,d)=>{a=N.getAttachedShaders(O[a]);var e=a.length;e>b&&(e=b);z.setInt32(4*(c>>2),e,!0);for(b=0;b>2),P.indexOf(a[b]),!0)},fh:(a,b)=>N.getAttribLocation(O[a],b?C(v,b):""),eh:(a,b)=>Uf(a,b,4),Rd:(a,b,c)=>{Rf(c,N.getBufferParameter(a,b))},dh:(a,b,c)=>{c&&z.setInt32(4*(c>>2),N.getBufferParameter(a,b),!0)},ch:()=>N.getError(),bh:(a,b)=>Uf(a,b,2),xe:(a,b)=>N.getFragDataLocation(O[a],b?C(v,b):""),ah:(a,b,c,d)=>{a=N.getFramebufferAttachmentParameter(a, +b,c);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;z.setInt32(4*(d>>2),a,!0)},Sd:(a,b,c)=>Vf(a,b,c,1),Ud:(a,b)=>{Uf(a,b,1)},Me:(a,b,c)=>Vf(a,b,c,0),$g:Wf,pd:(a,b,c,d,e)=>{a=N.getInternalformatParameter(a,b,c);if(null!==a)for(b=0;b>2),a[b],!0)},xd:()=>{},Zg:Xf,_g:Yf,qb:Zf,sb:$f,pb:Zf,af:(a,b,c)=>{a=N.getQueryParameter(Q[a],b);var d;"boolean"==typeof a?d=a?1:0:d=a;z.setInt32(4*(c>>2),d,!0)},rb:$f,bf:(a,b,c)=>{z.setInt32(4*(c>>2),N.getQuery(a, +b),!0)},tb:(a,b,c)=>{c&&(a=N.oj.getQueryEXT(a,b),z.setInt32(4*(c>>2),a,!0))},Yg:(a,b,c)=>{c&&z.setInt32(4*(c>>2),N.getRenderbufferParameter(a,b),!0)},Gd:(a,b,c)=>{z.setFloat32(4*(c>>2),N.getSamplerParameter(rd[a],b),!0)},Hd:(a,b,c)=>{z.setInt32(4*(c>>2),N.getSamplerParameter(rd[a],b),!0)},Vg:ag,Ug:(a,b,c,d)=>{a=N.getShaderPrecisionFormat(a,b);z.setInt32(4*(c>>2),a.rangeMin,!0);z.setInt32(4*(c+4>>2),a.rangeMax,!0);z.setInt32(4*(d>>2),a.precision,!0)},Tg:(a,b,c,d)=>{if(a=N.getShaderSource(P[a]))b=0< +b&&d?B(a,v,d,b):0,c&&z.setInt32(4*(c>>2),b,!0)},Wg:bg,Sg:cg,je:dg,Td:(a,b,c,d,e)=>{a=N.getSyncParameter(td[a],b);null!==a&&(z.setInt32(4*(e>>2),a,!0),d&&z.setInt32(4*(d>>2),1,!0))},Rg:(a,b,c)=>{c&&z.setFloat32(4*(c>>2),N.getTexParameter(a,b),!0)},Qg:(a,b,c)=>{c&&z.setInt32(4*(c>>2),N.getTexParameter(a,b),!0)},Ge:(a,b,c,d,e,f,g)=>{a=O[a];if(a=N.getTransformFeedbackVarying(a,b))g&&0>2),c,!0)):d&&z.setInt32(4*(d>>2),0,!0),e&&z.setInt32(4*(e>>2),a.size,!0),f&& +z.setInt32(4*(f>>2),a.type,!0)},ee:(a,b)=>N.getUniformBlockIndex(O[a],b?C(v,b):""),ge:(a,b,c,d)=>{a=O[a];for(var e=[],f=0;f>2),!0)));if(a=N.getUniformIndices(a,e))for(b=a.length,f=0;f>2),a[f],!0)},Ng:gg,Pg:ig,Og:jg,ye:(a,b,c)=>hg(a,b,c,0),Ee:lg,De:lg,Kg:(a,b,c)=>{c&&z.setInt32(4*(c>>2),N.getVertexAttribOffset(a,b),!0)},Mg:(a,b,c)=>{kg(a,b,c,2)},Lg:(a,b,c)=>{kg(a,b,c,5)},Jg:(a,b)=>N.hint(a,b),ud:(a,b,c)=>{for(var d=Cf[b],e=0;e>2),!0);N.invalidateFramebuffer(a,d)},td:(a,b,c,d,e,f,g)=>{for(var m=Cf[b],n=0;n>2),!0);N.invalidateSubFramebuffer(a,m,d,e,f,g)},Ig:a=>(a=ld[a])?N.isBuffer(a):0,Hg:a=>N.isEnabled(a),Gg:a=>(a=md[a])?N.isFramebuffer(a):0,Fg:a=>(a=O[a])?N.isProgram(a):0,ef:a=>(a=Q[a])?N.isQuery(a):0,xb:a=>(a=Q[a])?N.oj.isQueryEXT(a):0,Eg:a=>(a=nd[a])?N.isRenderbuffer(a):0,Od:a=>(a=rd[a])?N.isSampler(a):0,Dg:a=>(a=P[a])?N.isShader(a):0,Zd:a=>N.isSync(td[a]),Cg:a=>(a= +od[a])?N.isTexture(a):0,Ad:a=>N.isTransformFeedback(sd[a]),Oe:mg,lb:mg,Bg:a=>N.lineWidth(a),Ag:ng,zd:()=>N.pauseTransformFeedback(),zg:og,uf:(a,b)=>{N.cm.polygonModeWEBGL(a,b)},yg:(a,b)=>N.polygonOffset(a,b),wf:(a,b,c)=>{N.Wl.polygonOffsetClampEXT(a,b,c)},wd:()=>{},vd:()=>{},ub:(a,b)=>{N.oj.queryCounterEXT(Q[a],b)},of:pg,xg:sg,wg:()=>{},vg:(a,b,c,d)=>N.renderbufferStorage(a,b,c,d),Te:(a,b,c,d,e)=>N.renderbufferStorageMultisample(a,b,c,d,e),yd:()=>N.resumeTransformFeedback(),ug:(a,b)=>{N.sampleCoverage(a, +!!b)},Jd:(a,b,c)=>{N.samplerParameterf(rd[a],b,c)},Id:(a,b,c)=>{c=z.getFloat32(4*(c>>2),!0);N.samplerParameterf(rd[a],b,c)},Ld:(a,b,c)=>{N.samplerParameteri(rd[a],b,c)},Kd:(a,b,c)=>{c=z.getInt32(4*(c>>2),!0);N.samplerParameteri(rd[a],b,c)},tg,rg:()=>{},qg:ug,pg:(a,b,c)=>N.stencilFunc(a,b,c),og:(a,b,c,d)=>N.stencilFuncSeparate(a,b,c,d),ng:a=>N.stencilMask(a),mg:(a,b)=>N.stencilMaskSeparate(a,b),lg:(a,b,c)=>N.stencilOp(a,b,c),kg:(a,b,c,d)=>N.stencilOpSeparate(a,b,c,d),jg:vg,mf:(a,b,c,d,e,f,g,m,n,p)=> +{if(N.ij)N.texImage3D(a,b,c,d,e,f,g,m,n,p);else if(p){var q=qg(n);N.texImage3D(a,b,c,d,e,f,g,m,n,q,p>>>31-Math.clz32(q.BYTES_PER_ELEMENT))}else N.texImage3D(a,b,c,d,e,f,g,m,n,null)},ig:(a,b,c)=>N.texParameterf(a,b,c),hg:(a,b,c)=>{c=z.getFloat32(4*(c>>2),!0);N.texParameterf(a,b,c)},gg:wg,fg:(a,b,c)=>{c=z.getInt32(4*(c>>2),!0);N.texParameteri(a,b,c)},sd:(a,b,c,d,e)=>N.texStorage2D(a,b,c,d,e),qd:(a,b,c,d,e,f)=>N.texStorage3D(a,b,c,d,e,f),eg:xg,lf:(a,b,c,d,e,f,g,m,n,p,q)=>{if(N.ij)N.texSubImage3D(a,b, +c,d,e,f,g,m,n,p,q);else if(q){var r=qg(p);N.texSubImage3D(a,b,c,d,e,f,g,m,n,p,r,q>>>31-Math.clz32(r.BYTES_PER_ELEMENT))}else N.texSubImage3D(a,b,c,d,e,f,g,m,n,p,null)},He:(a,b,c,d)=>{a=O[a];for(var e=[],f=0;f>2),!0)));N.transformFeedbackVaryings(a,e,d)},dg:(a,b)=>{N.uniform1f(Y(a),b)},cg:yg,bg:(a,b)=>{N.uniform1i(Y(a),b)},ag:zg,we:(a,b)=>{N.uniform1ui(Y(a),b)},re:(a,b,c)=>{b&&N.uniform1uiv(Y(a),Ka,c>>2,b)},$f:(a,b,c)=>{N.uniform2f(Y(a),b,c)},_f:Ag,Yf:(a,b,c)=> +{N.uniform2i(Y(a),b,c)},Xf:Bg,ve:(a,b,c)=>{N.uniform2ui(Y(a),b,c)},qe:(a,b,c)=>{b&&N.uniform2uiv(Y(a),Ka,c>>2,2*b)},Wf:(a,b,c,d)=>{N.uniform3f(Y(a),b,c,d)},Vf:Cg,Uf:(a,b,c,d)=>{N.uniform3i(Y(a),b,c,d)},Tf:Dg,ue:(a,b,c,d)=>{N.uniform3ui(Y(a),b,c,d)},pe:(a,b,c)=>{b&&N.uniform3uiv(Y(a),Ka,c>>2,3*b)},Sf:(a,b,c,d,e)=>{N.uniform4f(Y(a),b,c,d,e)},Rf:Eg,Qf:(a,b,c,d,e)=>{N.uniform4i(Y(a),b,c,d,e)},Pf:Fg,te:(a,b,c,d,e)=>{N.uniform4ui(Y(a),b,c,d,e)},oe:(a,b,c)=>{b&&N.uniform4uiv(Y(a),Ka,c>>2,4*b)},be:(a,b,c)=> +{a=O[a];N.uniformBlockBinding(a,b,c)},Nf:(a,b,c,d)=>{b&&N.uniformMatrix2fv(Y(a),!!c,w,d>>2,4*b)},_e:(a,b,c,d)=>{b&&N.uniformMatrix2x3fv(Y(a),!!c,w,d>>2,6*b)},Ye:(a,b,c,d)=>{b&&N.uniformMatrix2x4fv(Y(a),!!c,w,d>>2,8*b)},Mf:Gg,Ze:(a,b,c,d)=>{b&&N.uniformMatrix3x2fv(Y(a),!!c,w,d>>2,6*b)},We:(a,b,c,d)=>{b&&N.uniformMatrix3x4fv(Y(a),!!c,w,d>>2,12*b)},Lf:Hg,Xe:(a,b,c,d)=>{b&&N.uniformMatrix4x2fv(Y(a),!!c,w,d>>2,8*b)},Ve:(a,b,c,d)=>{b&&N.uniformMatrix4x3fv(Y(a),!!c,w,d>>2,12*b)},Kf:Ig,Jf:a=>{N.validateProgram(O[a])}, +If:(a,b)=>N.vertexAttrib1f(a,b),Hf:(a,b)=>{N.vertexAttrib1f(a,z.getFloat32(4*(b>>2),!0))},Gf:(a,b,c)=>N.vertexAttrib2f(a,b,c),Ff:(a,b)=>{N.vertexAttrib2f(a,z.getFloat32(4*(b>>2),!0),z.getFloat32(4*(b+4>>2),!0))},Ef:(a,b,c,d)=>N.vertexAttrib3f(a,b,c,d),Bf:(a,b)=>{N.vertexAttrib3f(a,z.getFloat32(4*(b>>2),!0),z.getFloat32(4*(b+4>>2),!0),z.getFloat32(4*(b+8>>2),!0))},Af:(a,b,c,d,e)=>N.vertexAttrib4f(a,b,c,d,e),zf:(a,b)=>{N.vertexAttrib4f(a,z.getFloat32(4*(b>>2),!0),z.getFloat32(4*(b+4>>2),!0),z.getFloat32(4* +(b+8>>2),!0),z.getFloat32(4*(b+12>>2),!0))},Fd:Jg,gb:Jg,nd:Jg,tf:Jg,od:Jg,Ce:(a,b,c,d,e)=>N.vertexAttribI4i(a,b,c,d,e),Ae:(a,b)=>{N.vertexAttribI4i(a,z.getInt32(4*(b>>2),!0),z.getInt32(4*(b+4>>2),!0),z.getInt32(4*(b+8>>2),!0),z.getInt32(4*(b+12>>2),!0))},Be:(a,b,c,d,e)=>N.vertexAttribI4ui(a,b,c,d,e),ze:(a,b)=>{N.vertexAttribI4ui(a,z.getUint32(4*(b>>2),!0),z.getUint32(4*(b+4>>2),!0),z.getUint32(4*(b+8>>2),!0),z.getUint32(4*(b+12>>2),!0))},Fe:Kg,yf:Lg,xf:Mg,Vd:(a,b,c)=>{c=Number(c);N.waitSync(td[a], +b,c)},C:()=>1,Db:()=>!0,Nc:(a,b,c)=>{b={qk:z.getInt32(4*(c>>2),!0),ck:z.getInt32(4*(c+4>>2),!0),el:z.getInt32(4*(c+8>>2),!0),bl:b,Pj:z.getInt32(4*(c+12>>2),!0),zk:z.getInt32(4*(c+16>>2),!0)};return Ng(a,b)},sa:(a,b)=>{a=S(a);return a?a.requestPointerLock?ge()?ve(a):b?(ee(ve,2,[a]),1):-2:-1:-4},Ch:a=>{var b=v.length;a>>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,a+100663296);a:{d=(Math.min(2147483648,65536*Math.ceil(Math.max(a,d)/65536))-Ea.buffer.byteLength+65535)/ +65536;try{Ea.grow(d);La();var e=1;break a}catch(f){}e=void 0}if(e)return!0}return!1},_:Og,Y:(a,b,c)=>"undefined"==typeof onbeforeunload?-1:1!==c?-5:Pg(a,b),ka:(a,b,c,d)=>Qg(a,b,c,d,12,"blur"),q:pe,E:(a,b,c)=>{a=S(a);if(!a)return-4;a.style.width=b+"px";a.style.height=c+"px";return 0},la:(a,b,c,d)=>Qg(a,b,c,d,13,"focus"),aa:(a,b,c,d)=>{if(!R.fullscreenEnabled())return-1;a=S(a);if(!a)return-4;Rg(a,b,c,d,"webkitfullscreenchange");return Rg(a,b,c,d,"fullscreenchange")},T:(a,b,c)=>Og()?-1:Sg(a,b,c,26,"gamepadconnected"), +Q:(a,b,c)=>Og()?-1:Sg(a,b,c,27,"gamepaddisconnected"),da:(a,b,c,d)=>Tg(a,b,c,d,2,"keydown"),ba:(a,b,c,d)=>Tg(a,b,c,d,1,"keypress"),ca:(a,b,c,d)=>Tg(a,b,c,d,3,"keyup"),L:(a,b,c)=>{Wd(()=>dynCall_v(a),b,c)},qa:(a,b,c,d)=>Vg(a,b,c,d,5,"mousedown"),oa:(a,b,c,d)=>Vg(a,b,c,d,33,"mouseenter"),na:(a,b,c,d)=>Vg(a,b,c,d,34,"mouseleave"),ra:(a,b,c,d)=>Vg(a,b,c,d,8,"mousemove"),pa:(a,b,c,d)=>Vg(a,b,c,d,6,"mouseup"),ea:(a,b,c,d)=>{if(!document||!document.body||!(document.body.requestPointerLock||document.body.aj|| +document.body.Rk||document.body.Qk))return-1;a=S(a);if(!a)return-4;Wg(a,b,c,d,"mozpointerlockchange");Wg(a,b,c,d,"webkitpointerlockchange");Wg(a,b,c,d,"mspointerlockchange");return Wg(a,b,c,d,"pointerlockchange")},$:(a,b,c,d)=>Xg(a,b,c,d),fa:(a,b,c,d)=>Yg(a,b,c,d,25,"touchcancel"),ha:(a,b,c,d)=>Yg(a,b,c,d,23,"touchend"),ga:(a,b,c,d)=>Yg(a,b,c,d,24,"touchmove"),ia:(a,b,c,d)=>Yg(a,b,c,d,22,"touchstart"),Z:(a,b,c)=>Zg(a,b,c),ma:(a,b,c,d)=>(a=S(a))?"undefined"!=typeof a.onwheel?$g(a,b,c,d):-1:-4,Oc:a=> +document.title=a?C(v,a):"",t:a=>Qe(b=>Rc(b,a)),Cb:function(a,b,c,d,e){function f(u){r?u():Qc(u)}var g=a+108,m=z.getUint32(4*(g+36>>2),!0),n=z.getUint32(4*(g+40>>2),!0),p=z.getUint32(4*(g+44>>2),!0),q=z.getUint32(4*(g+48>>2),!0),r=!!(z.getUint32(4*(g+52>>2),!0)&64);ch(a,u=>{f(()=>{m?dynCall_vi(m,u):b?.(u)})},u=>{f(()=>{n?dynCall_vi(n,u):c?.(u)})},u=>{f(()=>{p?dynCall_vi(p,u):d?.(u)})},u=>{f(()=>{q?dynCall_vi(q,u):e?.(u)})});return a},_a:(a,b)=>{var c=0;eh().forEach((d,e)=>{var f=b+c;z.setUint32(4* +(a+4*e>>2),f,!0);e=f;for(f=0;f{var c=eh();z.setUint32(4*(a>>2),c.length,!0);var d=0;c.forEach(e=>d+=e.length+1);z.setUint32(4*(b>>2),d,!0);return 0},m:Oc,s:function(a){try{var b=J(a);Xb(b);return 0}catch(c){if("undefined"==typeof K||"ErrnoError"!==c.name)throw c;return c.Xi}},Bh:function(a,b){try{var c=J(a);t[b]=c.Ui?2:F(c.mode)?3:40960===(c.mode&61440)?7:4;z.setInt16(2*(b+2>>1),0,!0);x[b+8>>3]=BigInt(0);x[b+16>>3]=BigInt(0); +return 0}catch(d){if("undefined"==typeof K||"ErrnoError"!==d.name)throw d;return d.Xi}},ta:function(a,b,c,d){try{a:{var e=J(a);a=b;for(var f,g=b=0;g>2),!0),n=z.getUint32(4*(a+4>>2),!0);a+=8;var p=e,q=f,r=t;if(0>n||0>q)throw new D(28);if(null===p.fd)throw new D(8);if(1===(p.flags&2097155))throw new D(8);if(F(p.node.mode))throw new D(31);if(!p.Si.read)throw new D(28);var u="undefined"!=typeof q;if(!u)q=p.position;else if(!p.seekable)throw new D(70);var H=p.Si.read(p,r, +m,n,q);u||(p.position+=H);var Z=H;if(0>Z){var pa=-1;break a}b+=Z;if(Z>2),pa,!0);return 0}catch(aa){if("undefined"==typeof K||"ErrnoError"!==aa.name)throw aa;return aa.Xi}},gh:function(a,b,c,d){b=-9007199254740992>b||9007199254740992>3]=BigInt(e.position);e.sj&&0===b&&0===c&&(e.sj=null);return 0}catch(f){if("undefined"==typeof K||"ErrnoError"!==f.name)throw f;return f.Xi}}, +Pc:function(a){try{var b=J(a);return Qe(c=>{var d=b.node.Yi;d.type.Lj?d.type.Lj(d,!1,e=>{e?c(29):c(0)}):c(0)})}catch(c){if("undefined"==typeof K||"ErrnoError"!==c.name)throw c;return c.Xi}},va:function(a,b,c,d){try{a:{var e=J(a);a=b;for(var f,g=b=0;g>2),!0),n=z.getUint32(4*(a+4>>2),!0);a+=8;var p=Wb(e,t,m,n,f);if(0>p){var q=-1;break a}b+=p;if(p>2),q,!0);return 0}catch(r){if("undefined"==typeof K||"ErrnoError"!== +r.name)throw r;return r.Xi}},Mb:Ve,qc:We,pc:Xe,D:Ye,y:Ze,N:$e,Dc:af,tc:bf,sc:cf,vc:df,z:ef,P:ff,wc:gf,Vb:hf,Ub:jf,Rb:kf,Ec:lf,Hc:mf,rc:nf,Tb:of,Cc:pf,V:qf,yc:rf,R:sf,A:tf,W:uf,$b:vf,Bc:wf,Nb:xf,p:yf,Wb:zf,Kb:Af,Lb:Bf,xc:Df,Ib:Ef,Jb:Ff,o:Gf,_b:Hf,zc:If,Gb:Jf,X:Kf,Ac:Lf,Jc:Mf,ac:Nf,Fc:Of,cc:Qf,k:Wf,dc:Xf,x:Yf,Pb:ag,O:bg,i:cg,G:dg,bc:gg,l:ig,w:jg,oc:ng,M:og,S:pg,Ob:sg,Lc:tg,Sb:ug,d:vg,g:wg,Gc:xg,nc:yg,jc:zg,mc:Ag,ic:Bg,lc:Cg,hc:Dg,kc:Eg,gc:Fg,fc:Gg,ec:Hg,uc:Ig,Xb:Jg,Yb:Kg,Zb:Lg,Fb:Mg,J:gh,f:hh,v:ih, +u:jh,K:kh,h:lh,a:mh,b:nh,c:oh,n:ph,yb:qh,Eb:function(a,b){h.setStatus(a>=b?"":"Prefetching resources\u2026 ("+a+"/"+b+")",!0)},Ne:function(){try{return!!navigator.platform.match(/mac/i)}catch(a){return!1}}},W=function(){function a(c){W=c.exports;W=xe();Ea=W.Dh;La();ua=W.Ph;Na.unshift(W.Eh);Va("wasm-instantiate");return W}var b={a:rh};Ua("wasm-instantiate");if(h.instantiateWasm)try{return h.instantiateWasm(b,a)}catch(c){return Ca(`Module.instantiateWasm callback failed with error: ${c}`),!1}Ya??=Xa("taisei-dev.wasm")? +"taisei-dev.wasm":h.locateFile?h.locateFile("taisei-dev.wasm",za):za+"taisei-dev.wasm";bb(b,function(c){a(c.instance)});return{}}();h._vfs_sync_callback=(a,b,c)=>(h._vfs_sync_callback=W.Fh)(a,b,c);var sh=h._main=(a,b)=>(sh=h._main=W.Gh)(a,b),Db=(a,b)=>(Db=W.Hh)(a,b),A=a=>(A=W.Ih)(a),Te=a=>(Te=W.Jh)(a),th=(a,b)=>(th=W.Kh)(a,b),Ee=(a,b)=>(Ee=W.Lh)(a,b),U=a=>(U=W.Mh)(a),me=a=>(me=W.Nh)(a),T=()=>(T=W.Oh)(),V=h.dynCall_iiii=(a,b,c,d)=>(V=h.dynCall_iiii=W.Qh)(a,b,c,d); +h.dynCall_iidiiii=(a,b,c,d,e,f,g)=>(h.dynCall_iidiiii=W.Rh)(a,b,c,d,e,f,g);var dynCall_vii=h.dynCall_vii=(a,b,c)=>(dynCall_vii=h.dynCall_vii=W.Sh)(a,b,c),uh=h.dynCall_ii=(a,b)=>(uh=h.dynCall_ii=W.Th)(a,b);h.dynCall_jiji=(a,b,c,d)=>(h.dynCall_jiji=W.Uh)(a,b,c,d);var dynCall_vi=h.dynCall_vi=(a,b)=>(dynCall_vi=h.dynCall_vi=W.Vh)(a,b),vh=h.dynCall_viii=(a,b,c,d)=>(vh=h.dynCall_viii=W.Wh)(a,b,c,d),wh=h.dynCall_viiii=(a,b,c,d,e)=>(wh=h.dynCall_viiii=W.Xh)(a,b,c,d,e); +h.dynCall_viiiii=(a,b,c,d,e,f)=>(h.dynCall_viiiii=W.Yh)(a,b,c,d,e,f);h.dynCall_vffff=(a,b,c,d,e)=>(h.dynCall_vffff=W.Zh)(a,b,c,d,e);h.dynCall_vf=(a,b)=>(h.dynCall_vf=W._h)(a,b);h.dynCall_viiiiiiii=(a,b,c,d,e,f,g,m,n)=>(h.dynCall_viiiiiiii=W.$h)(a,b,c,d,e,f,g,m,n);var xh=h.dynCall_viiiiiiiii=(a,b,c,d,e,f,g,m,n,p)=>(xh=h.dynCall_viiiiiiiii=W.ai)(a,b,c,d,e,f,g,m,n,p),yh=h.dynCall_i=a=>(yh=h.dynCall_i=W.bi)(a);h.dynCall_vff=(a,b,c)=>(h.dynCall_vff=W.ci)(a,b,c); +var dynCall_v=h.dynCall_v=a=>(dynCall_v=h.dynCall_v=W.di)(a);h.dynCall_viiiiiii=(a,b,c,d,e,f,g,m)=>(h.dynCall_viiiiiii=W.ei)(a,b,c,d,e,f,g,m);var dynCall_iii=h.dynCall_iii=(a,b,c)=>(dynCall_iii=h.dynCall_iii=W.fi)(a,b,c);h.dynCall_vfi=(a,b,c)=>(h.dynCall_vfi=W.gi)(a,b,c);h.dynCall_viif=(a,b,c,d)=>(h.dynCall_viif=W.hi)(a,b,c,d);h.dynCall_vif=(a,b,c)=>(h.dynCall_vif=W.ii)(a,b,c);h.dynCall_viff=(a,b,c,d)=>(h.dynCall_viff=W.ji)(a,b,c,d);h.dynCall_vifff=(a,b,c,d,e)=>(h.dynCall_vifff=W.ki)(a,b,c,d,e); +h.dynCall_viffff=(a,b,c,d,e,f)=>(h.dynCall_viffff=W.li)(a,b,c,d,e,f);var zh=h.dynCall_viiiiii=(a,b,c,d,e,f,g)=>(zh=h.dynCall_viiiiii=W.mi)(a,b,c,d,e,f,g);h.dynCall_vfff=(a,b,c,d)=>(h.dynCall_vfff=W.ni)(a,b,c,d);h.dynCall_viiiiiiiiii=(a,b,c,d,e,f,g,m,n,p,q)=>(h.dynCall_viiiiiiiiii=W.oi)(a,b,c,d,e,f,g,m,n,p,q);h.dynCall_viiiiiiiiiii=(a,b,c,d,e,f,g,m,n,p,q,r)=>(h.dynCall_viiiiiiiiiii=W.pi)(a,b,c,d,e,f,g,m,n,p,q,r);h.dynCall_viifi=(a,b,c,d,e)=>(h.dynCall_viifi=W.qi)(a,b,c,d,e); +var Ah=h.dynCall_iiiii=(a,b,c,d,e)=>(Ah=h.dynCall_iiiii=W.ri)(a,b,c,d,e);h.dynCall_ji=(a,b)=>(h.dynCall_ji=W.si)(a,b);h.dynCall_iiiiiiiiiiii=(a,b,c,d,e,f,g,m,n,p,q,r)=>(h.dynCall_iiiiiiiiiiii=W.ti)(a,b,c,d,e,f,g,m,n,p,q,r);h.dynCall_iiiiii=(a,b,c,d,e,f)=>(h.dynCall_iiiiii=W.ui)(a,b,c,d,e,f);h.dynCall_iiiiiii=(a,b,c,d,e,f,g)=>(h.dynCall_iiiiiii=W.vi)(a,b,c,d,e,f,g);h.dynCall_vd=(a,b)=>(h.dynCall_vd=W.wi)(a,b);h.dynCall_iiji=(a,b,c,d)=>(h.dynCall_iiji=W.xi)(a,b,c,d); +h.dynCall_viidi=(a,b,c,d,e)=>(h.dynCall_viidi=W.yi)(a,b,c,d,e);h.dynCall_ff=(a,b)=>(h.dynCall_ff=W.zi)(a,b);h.dynCall_iiif=(a,b,c,d)=>(h.dynCall_iiif=W.Ai)(a,b,c,d);h.dynCall_iiiiiiiii=(a,b,c,d,e,f,g,m,n)=>(h.dynCall_iiiiiiiii=W.Bi)(a,b,c,d,e,f,g,m,n);h.dynCall_iiiiiiiiiii=(a,b,c,d,e,f,g,m,n,p,q)=>(h.dynCall_iiiiiiiiiii=W.Ci)(a,b,c,d,e,f,g,m,n,p,q);h.dynCall_viiif=(a,b,c,d,e)=>(h.dynCall_viiif=W.Di)(a,b,c,d,e);h.dynCall_iiiiiiii=(a,b,c,d,e,f,g,m)=>(h.dynCall_iiiiiiii=W.Ei)(a,b,c,d,e,f,g,m); +h.dynCall_iiiiiiiiii=(a,b,c,d,e,f,g,m,n,p)=>(h.dynCall_iiiiiiiiii=W.Fi)(a,b,c,d,e,f,g,m,n,p);h.dynCall_iiidd=(a,b,c,d,e)=>(h.dynCall_iiidd=W.Gi)(a,b,c,d,e);h.dynCall_id=(a,b)=>(h.dynCall_id=W.Hi)(a,b);h.dynCall_dd=(a,b)=>(h.dynCall_dd=W.Ii)(a,b);h.dynCall_d=a=>(h.dynCall_d=W.Ji)(a);h.dynCall_iid=(a,b,c)=>(h.dynCall_iid=W.Ki)(a,b,c);h.dynCall_di=(a,b)=>(h.dynCall_di=W.Li)(a,b);h.dynCall_dii=(a,b,c)=>(h.dynCall_dii=W.Mi)(a,b,c); +var Re=a=>(Re=W.Ni)(a),Ae=()=>(Ae=W.Oi)(),Fe=a=>(Fe=W.Pi)(a),Se=()=>(Se=W.Qi)();function ih(a,b,c){var d=T();try{return dynCall_iii(a,b,c)}catch(e){U(d);if(e!==e+0)throw e;th(1,0)}}function kh(a,b,c,d,e){var f=T();try{return Ah(a,b,c,d,e)}catch(g){U(f);if(g!==g+0)throw g;th(1,0)}}function jh(a,b,c,d){var e=T();try{return V(a,b,c,d)}catch(f){U(e);if(f!==f+0)throw f;th(1,0)}}function gh(a){var b=T();try{return yh(a)}catch(c){U(b);if(c!==c+0)throw c;th(1,0)}} +function nh(a,b,c,d){var e=T();try{vh(a,b,c,d)}catch(f){U(e);if(f!==f+0)throw f;th(1,0)}}function hh(a,b){var c=T();try{return uh(a,b)}catch(d){U(c);if(d!==d+0)throw d;th(1,0)}}function ph(a,b,c,d,e,f,g){var m=T();try{zh(a,b,c,d,e,f,g)}catch(n){U(m);if(n!==n+0)throw n;th(1,0)}}function mh(a,b,c){var d=T();try{dynCall_vii(a,b,c)}catch(e){U(d);if(e!==e+0)throw e;th(1,0)}}function lh(a,b){var c=T();try{dynCall_vi(a,b)}catch(d){U(c);if(d!==d+0)throw d;th(1,0)}} +function oh(a,b,c,d,e){var f=T();try{wh(a,b,c,d,e)}catch(g){U(f);if(g!==g+0)throw g;th(1,0)}}function qh(a,b,c,d,e,f,g,m,n,p){var q=T();try{xh(a,b,c,d,e,f,g,m,n,p)}catch(r){U(q);if(r!==r+0)throw r;th(1,0)}}h.addRunDependency=Ua;h.removeRunDependency=Va; +h.ccall=(a,b,c,d,e)=>{function f(r){--Mc;0!==n&&U(n);return"string"===b?r?C(v,r):"":"boolean"===b?!!r:r}var g={string:r=>{var u=0;null!==r&&void 0!==r&&0!==r&&(u=ne(r));return u},array:r=>{var u=me(r.length);t.set(r,u);return u}};a=h["_"+a];var m=[],n=0;if(d)for(var p=0;p$b(a); +h.FS_createPath=Bc;h.FS_createDevice=Dc;h.FS_createDataFile=(a,b,c,d,e,f)=>{Pb(a,b,c,d,e,f)};h.FS_createLazyFile=Fc;var Bh;Ta=function Ch(){Bh||Dh();Bh||(Ta=Ch)};function Eh(a=[]){var b=sh;a.unshift(ya);var c=a.length,d=me(4*(c+1)),e=d;a.forEach(g=>{g=ne(g);z.setUint32(4*(e>>2),g,!0);e+=4});z.setUint32(4*(e>>2),0,!0);try{var f=b(c,d);Oc(f,!0)}catch(g){Lc(g)}} +function Dh(){var a=wa;function b(){if(!Bh&&(Bh=!0,h.calledRun=!0,!Fa)){if(!h.noFSInit&&!fc){var c,d;fc=!0;e??=h.stdin;c??=h.stdout;d??=h.stderr;e?Dc("/dev","stdin",e):yc("/dev/tty","/dev/stdin");c?Dc("/dev","stdout",null,c):yc("/dev/tty","/dev/stdout");d?Dc("/dev","stderr",null,d):yc("/dev/tty1","/dev/stderr");Ub("/dev/stdin",0);Ub("/dev/stdout",1);Ub("/dev/stderr",1)}gc=!1;hb(Na);hb(Oa);h.onRuntimeInitialized?.();Fh&&Eh(a);if(h.postRun)for("function"==typeof h.postRun&&(h.postRun=[h.postRun]);h.postRun.length;){var e= +h.postRun.shift();Pa.unshift(e)}hb(Pa)}}if(!(0{setTimeout(()=>h.setStatus(""),1);b()},1)):b())}}if(h.preInit)for("function"==typeof h.preInit&&(h.preInit=[h.preInit]);0Taisei Project — Web version (Experimental!)

Note: this web port is experimental and may not perform as well as the original game, which you can download here.

Girls are now downloading, please wait warmly…
\ No newline at end of file +Taisei Project — Web version (Experimental!)

Note: this web port is experimental and may not perform as well as the original game, which you can download here.

Girls are now downloading, please wait warmly…
\ No newline at end of file diff --git a/taisei.js b/taisei.js index e6d0574..8513d50 100644 --- a/taisei.js +++ b/taisei.js @@ -1,223 +1,209 @@ -var h;h||=typeof Module !== 'undefined' ? Module : {};var aa=document.getElementById("status"),ba=document.getElementById("progress"),ca=document.getElementById("spinner"),da=document.getElementById("canvas"),ea=document.getElementById("canvasContainer"),fa=document.getElementById("logToggle"),ha=document.getElementById("logToggleContainer"),ia=document.getElementById("logContainer"),ja=document.getElementById("output"),la=aa.innerText;fa.checked=!1; -window.toggleLog=function(){ia.hidden=!fa.checked;ja.scrollTop=ja.scrollHeight};var ma=da.getContext("webgl2",{alpha:!1,antialias:!1,depth:!1,powerPreference:"high-performance",premultipliedAlpha:!0,preserveDrawingBuffer:!1,stencil:!1});if(!ma)throw"Could not create a WebGL 2 context";ma.getSupportedExtensions().forEach(function(a){ma.getExtension(a)});da.addEventListener("webglcontextlost",function(a){alert("WebGL context lost. You will need to reload the page.");a.preventDefault()},!1); -ja.value=""; -h={preRun:[function(){na.TAISEI_NOASYNC="1";na.TAISEI_NOUNLOAD="1";na.TAISEI_PREFER_SDL_VIDEODRIVERS="emscripten";na.TAISEI_RENDERER="gles30";k("/persistent");oa(l,"/persistent")}],postRun:[],onFirstFrame:function(){ea.hidden=!1;ha.style.display="inline-block";h.setStatus("",!0)},print:function(a){1d-c.xj.time||(c.xj.time=d,c.xj.text=a,b?(a=b[1],ba.value=100*parseInt(b[2]),ba.max=100*parseInt(b[4]),ba.hidden=!1,ca.hidden=!da.hidden):(ba.value=null,ba.max=null,ba.hidden=!0,a||(ca.hidden=!0)),aa.innerText=a.replace(/^Downloading(?: data)?\.\.\./,la).replace("...","\u2026"),console.log("[STATUS] "+ -aa.innerText))}},totalDependencies:0,monitorRunDependencies:function(a){h.totalDependencies=Math.max(h.totalDependencies,a);h.setStatus(a?"Preparing\u2026 ("+(h.totalDependencies-a)+"/"+h.totalDependencies+")":"All downloads complete.")}};window.onerror=function(a){h.setStatus("Error: "+a)};function pa(a,b){qa(a,function(c){h.ccall("vfs_sync_callback",null,["boolean","string","number"],[a,c,b],{async:!0})})} -(function(){function a(){var b=h.SDL2;"undefined"!==typeof b&&("suspended"==b.Ui.state&&b.Ui.resume(),"running"==b.Ui.state&&(da.removeEventListener("click",a),document.removeEventListener("keydown",a)))}da.addEventListener("click",a);document.addEventListener("keydown",a)})();"undefined"===typeof ra&&(ra=window.dynCall=h.dynCall=function(a,b,c){return sa.get(b).apply(this,c)});var ta=Object.assign({},h),va=[],wa="./this.program",xa=(a,b)=>{throw b;},ya="",za,Aa; -"undefined"!=typeof document&&document.currentScript&&(ya=document.currentScript.src);ya=0!==ya.indexOf("blob:")?ya.substr(0,ya.replace(/[?#].*/,"").lastIndexOf("/")+1):"";za=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText};Aa=(a,b,c)=>{var d=new XMLHttpRequest;d.open("GET",a,!0);d.responseType="arraybuffer";d.onload=()=>{200==d.status||0==d.status&&d.response?b(d.response):c()};d.onerror=c;d.send(null)};var Da=h.print||console.log.bind(console),Ea=h.printErr||console.error.bind(console); -Object.assign(h,ta);ta=null;h.arguments&&(va=h.arguments);h.thisProgram&&(wa=h.thisProgram);h.quit&&(xa=h.quit);var Fa;h.wasmBinary&&(Fa=h.wasmBinary);"object"!=typeof WebAssembly&&Ga("no native wasm support detected");var Ha,Ia=!1,Ja,u,v,Ka,La,Ma,Na,w,Oa,z; -function Pa(){var a=Ha.buffer;h.HEAP_DATA_VIEW=z=new DataView(a);h.HEAP8=u=new Int8Array(a);h.HEAP16=Ka=new Int16Array(a);h.HEAPU8=v=new Uint8Array(a);h.HEAPU16=La=new Uint16Array(a);h.HEAP32=Ma=new Int32Array(a);h.HEAPU32=Na=new Uint32Array(a);h.HEAPF32=w=new Float32Array(a);h.HEAPF64=new Float64Array(a);h.HEAP64=Oa=new BigInt64Array(a);h.HEAPU64=new BigUint64Array(a)}var Qa=[],Ra=[],Sa=[],Ta=[],Ua=[];function Va(){var a=h.preRun.shift();Qa.unshift(a)}var Wa=0,Xa=null,Ya=null; -function Za(){Wa++;h.monitorRunDependencies?.(Wa)}function $a(){Wa--;h.monitorRunDependencies?.(Wa);if(0==Wa&&(null!==Xa&&(clearInterval(Xa),Xa=null),Ya)){var a=Ya;Ya=null;a()}}function Ga(a){h.onAbort?.(a);a="Aborted("+a+")";Ea(a);Ia=!0;Ja=1;throw new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");}var ab=a=>a.startsWith("data:application/octet-stream;base64,"),bb;bb="taisei.wasm";if(!ab(bb)){var cb=bb;bb=h.locateFile?h.locateFile(cb,ya):ya+cb} -function db(a){if(a==bb&&Fa)return new Uint8Array(Fa);throw"both async and sync fetching of the wasm failed";}function eb(a){return Fa||"function"!=typeof fetch?Promise.resolve().then(()=>db(a)):fetch(a,{credentials:"same-origin"}).then(b=>{if(!b.ok)throw"failed to load wasm binary file at '"+a+"'";return b.arrayBuffer()}).catch(()=>db(a))}function fb(a,b,c){return eb(a).then(d=>WebAssembly.instantiate(d,b)).then(d=>d).then(c,d=>{Ea(`failed to asynchronously prepare wasm: ${d}`);Ga(d)})} -function gb(a,b){var c=bb;Fa||"function"!=typeof WebAssembly.instantiateStreaming||ab(c)||"function"!=typeof fetch?fb(c,a,b):fetch(c,{credentials:"same-origin"}).then(d=>WebAssembly.instantiateStreaming(d,a).then(b,function(e){Ea(`wasm streaming compile failed: ${e}`);Ea("falling back to ArrayBuffer instantiation");return fb(c,a,b)}))} -var jb={1134192:(a,b)=>{pa(a,b)},1134212:(a,b)=>{alert((a?A(v,a):"")+"\n\n"+(b?A(v,b):""))},1134269:()=>"undefined"!==typeof AudioContext||"undefined"!==typeof webkitAudioContext?!0:!1,1134416:()=>"undefined"!==typeof navigator.mediaDevices&&"undefined"!==typeof navigator.mediaDevices.getUserMedia||"undefined"!==typeof navigator.webkitGetUserMedia?!0:!1,1134650:a=>{"undefined"===typeof h.SDL2&&(h.SDL2={});var b=h.SDL2;a?b.capture={}:b.audio={};b.Ui||("undefined"!==typeof AudioContext?b.Ui=new AudioContext: -"undefined"!==typeof webkitAudioContext&&(b.Ui=new webkitAudioContext),b.Ui&&hb(b.Ui));return void 0===b.Ui?-1:0},1135143:()=>h.SDL2.Ui.sampleRate,1135211:(a,b,c,d)=>{function e(){}function f(m){void 0!==g.capture.Dj&&(clearTimeout(g.capture.Dj),g.capture.Dj=void 0);g.capture.Nj=g.Ui.createMediaStreamSource(m);g.capture.Zi=g.Ui.createScriptProcessor(b,a,1);g.capture.Zi.onaudioprocess=function(n){void 0!==g&&void 0!==g.capture&&(n.outputBuffer.getChannelData(0).fill(0),g.capture.$j=n.inputBuffer,ra("vi", -c,[d]))};g.capture.Nj.connect(g.capture.Zi);g.capture.Zi.connect(g.Ui.destination);g.capture.stream=m}var g=h.SDL2;g.capture.Tj=g.Ui.createBuffer(a,b,g.Ui.sampleRate);g.capture.Tj.getChannelData(0).fill(0);g.capture.Dj=setTimeout(function(){g.capture.$j=g.capture.Tj;ra("vi",c,[d])},b/g.Ui.sampleRate*1E3);void 0!==navigator.mediaDevices&&void 0!==navigator.mediaDevices.getUserMedia?navigator.mediaDevices.getUserMedia({audio:!0,video:!1}).then(f).catch(e):void 0!==navigator.webkitGetUserMedia&&navigator.webkitGetUserMedia({audio:!0, -video:!1},f,e)},1136863:(a,b,c,d)=>{var e=h.SDL2;e.audio.Zi=e.Ui.createScriptProcessor(b,0,a);e.audio.Zi.onaudioprocess=function(f){void 0!==e&&void 0!==e.audio&&(e.audio.mk=f.outputBuffer,ra("vi",c,[d]))};e.audio.Zi.connect(e.Ui.destination)},1137273:(a,b)=>{for(var c=h.SDL2,d=c.capture.$j.numberOfChannels,e=0;e{for(var c=h.SDL2,d=c.audio.mk.numberOfChannels,e=0;e>2),!0)}},1138358:a=>{var b=h.SDL2;if(a){void 0!==b.capture.Dj&&clearTimeout(b.capture.Dj);if(void 0!==b.capture.stream){a=b.capture.stream.getAudioTracks(); -for(var c=0;c -window.innerWidth,1139560:()=>window.innerHeight,1139591:(a,b,c)=>{h.SDL2||(h.SDL2={});var d=h.SDL2;d.Ik!==h.canvas&&(d.ej=h.createContext(h.canvas,!1,!0),d.Ik=h.canvas);if(d.w!==a||d.h!==b||d.Yk!==d.ej)d.image=d.ej.createImageData(a,b),d.w=a,d.h=b,d.Yk=d.ej;a=d.image.data;b=c>>2;var e=0;if("undefined"!==typeof CanvasPixelArray&&a instanceof CanvasPixelArray)for(c=a.length;e>8&255;a[e+2]=f>>16&255;a[e+3]=255;b++;e+=4}else if(d.Lk!==a&&(d.Kk=new Int32Array(a.buffer), -d.Mk=new Uint8Array(a.buffer),d.Lk=a),a=d.Kk,c=a.length,a.set(Ma.subarray(b,b+c)),a=d.Mk,b=3,e=b+4*c,0==c%8)for(;b{var f=document.createElement("canvas");f.width=a;f.height=b;var g=f.getContext("2d");a=g.createImageData(a,b);b=a.data;e>>=2;var m=0,n;if("undefined"!==typeof CanvasPixelArray&& -b instanceof CanvasPixelArray)for(n=b.length;m>8&255;b[m+2]=q>>16&255;b[m+3]=q>>24&255;e++;m+=4}else b=new Int32Array(b.buffer),n=b.length,b.set(Ma.subarray(e,e+n));g.putImageData(a,0,0);c=0===c&&0===d?"url("+f.toDataURL()+"), auto":"url("+f.toDataURL()+") "+c+" "+d+", auto";d=C(c.length+1);E(c,v,d,c.length+1);return d},1142049:a=>{h.canvas&&(h.canvas.style.cursor=a?A(v,a):"")},1142132:()=>{h.canvas&&(h.canvas.style.cursor="none")},1142201:()=>{h.onFirstFrame()}}; -function kb(a){this.name="ExitStatus";this.message=`Program terminated with exit(${a})`;this.status=a}var lb=(a,b,c)=>{a.addEventListener(b,c,{once:!0})},hb=a=>{var b;b||=[document,document.getElementById("canvas")];["keydown","mousedown","touchstart"].forEach(c=>{b.forEach(d=>{d&&lb(d,c,()=>{"suspended"===a.state&&a.resume()})})})},mb=a=>{for(;0>0]=b;break;case "i8":u[a>>0]=b;break;case "i16":z.setInt16(2*(a>>1),b,!0);break;case "i32":z.setInt32(4*(a>>2),b,!0);break;case "i64":Oa[a>>3]=BigInt(b);break;case "float":z.setFloat32(4*(a>>2),b,!0);break;case "double":z.setFloat64(8*(a>>3),b,!0);break;case "*":z.setUint32(4*(a>>2),b,!0);break;default:Ga(`invalid type for setValue: ${c}`)}} -var ob=(a,b)=>{for(var c=0,d=a.length-1;0<=d;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c;c--)a.unshift("..");return a},pb=a=>{var b="/"===a.charAt(0),c="/"===a.substr(-1);(a=ob(a.split("/").filter(d=>!!d),!b).join("/"))||b||(a=".");a&&c&&(a+="/");return(b?"/":"")+a},qb=a=>{var b=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(a).slice(1);a=b[0];b=b[1];if(!a&&!b)return".";b&&=b.substr(0,b.length-1);return a+b},rb=a=>{if("/"=== -a)return"/";a=pb(a);a=a.replace(/\/$/,"");var b=a.lastIndexOf("/");return-1===b?a:a.substr(b+1)},sb=()=>{if("object"==typeof crypto&&"function"==typeof crypto.getRandomValues)return a=>crypto.getRandomValues(a);Ga("initRandomDevice")},tb=a=>(tb=sb())(a); -function ub(){for(var a="",b=!1,c=arguments.length-1;-1<=c&&!b;c--){b=0<=c?arguments[c]:"/";if("string"!=typeof b)throw new TypeError("Arguments to path.resolve must be strings");if(!b)return"";a=b+"/"+a;b="/"===b.charAt(0)}a=ob(a.split("/").filter(d=>!!d),!b).join("/");return(b?"/":"")+a||"."} -var vb="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0,A=(a,b,c)=>{var d=b+c;for(c=b;a[c]&&!(c>=d);)++c;if(16e?d+=String.fromCharCode(e):(e-=65536,d+=String.fromCharCode(55296|e>>10,56320|e&1023))}}else d+=String.fromCharCode(e)}return d}, -wb=[],xb=a=>{for(var b=0,c=0;c=d?b++:2047>=d?b+=2:55296<=d&&57343>=d?(b+=4,++c):b+=3}return b},E=(a,b,c,d)=>{if(!(0=g){var m=a.charCodeAt(++f);g=65536+((g&1023)<<10)|m&1023}if(127>=g){if(c>=d)break;b[c++]=g}else{if(2047>=g){if(c+1>=d)break;b[c++]=192|g>>6}else{if(65535>=g){if(c+2>=d)break;b[c++]=224|g>>12}else{if(c+3>=d)break;b[c++]=240|g>>18;b[c++]=128|g>>12& -63}b[c++]=128|g>>6&63}b[c++]=128|g&63}}b[c]=0;return c-e};function zb(a,b){var c=Array(xb(a)+1);a=E(a,c,0,c.length);b&&(c.length=a);return c}var Ab=[];function Bb(a,b){Ab[a]={input:[],Xi:[],jj:b};Cb(a,Db)} -var Db={open(a){var b=Ab[a.node.Bj];if(!b)throw new F(43);a.Si=b;a.seekable=!1},close(a){a.Si.jj.Jj(a.Si)},Jj(a){a.Si.jj.Jj(a.Si)},read(a,b,c,d){if(!a.Si||!a.Si.jj.qk)throw new F(60);for(var e=0,f=0;f{a=65536*Math.ceil(a/65536);var b=Gb(65536,a);b?(v.fill(0,b,b+a),a=b):a=0;return a};function Ib(a,b){var c=a.Qi?a.Qi.length:0;c>=b||(b=Math.max(b,c*(1048576>c?2:1.125)>>>0),0!=c&&(b=Math.max(b,256)),c=a.Qi,a.Qi=new Uint8Array(b),0=a.node.Ti)return 0;a=Math.min(a.node.Ti-e,d);if(8b)throw new F(28);return b},Fj(a,b,c){Ib(a.node,b+c);a.node.Ti=Math.max(a.node.Ti,b+c)},zj(a,b,c,d,e){if(32768!==(a.node.mode&61440))throw new F(43);a=a.node.Qi;if(e&2||a.buffer!==u.buffer){if(0{var d=`al ${a}`;Aa(a,e=>{e||Ga(`Loading data file "${a}" failed (no arrayBuffer).`);b(new Uint8Array(e));d&&$a(d)},()=>{if(c)c();else throw`Loading data file "${a}" failed.`;});d&&Za(d)},Ob=h.preloadPlugins||[],Rb=(a,b,c,d)=>{"undefined"!=typeof Pb&&Qb();var e=!1;Ob.forEach(f=>{!e&&f.canHandle(b)&&(f.handle(a,b,c,d),e=!0)});return e},Tb=(a, -b,c,d,e,f,g,m,n,q)=>{function r(p){function B(D){q?.();m||Sb(a,b,D,d,e,n);f?.();$a(x)}Rb(p,t,B,()=>{g?.();$a(x)})||B(p)}var t=b?ub(pb(a+"/"+b)):a,x=`cp ${t}`;Za(x);"string"==typeof c?Nb(c,p=>r(p),g):r(c)},Ub=(a,b)=>{var c=0;a&&(c|=365);b&&(c|=146);return c},l={Ij:{},indexedDB:()=>{if("undefined"!=typeof indexedDB)return indexedDB;var a=null;"object"==typeof window&&(a=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB);a||Ga("IDBFS used, but indexedDB not supported"); -return a},Bk:21,nj:"FILE_DATA",Yi:function(a){return G.Yi.apply(null,arguments)},Vj:(a,b,c)=>{l.Uk(a,(d,e)=>{if(d)return c(d);l.Vk(a,(f,g)=>{if(f)return c(f);l.hl(b?g:e,b?e:g,c)})})},Ll:()=>{Object.values(l.Ij).forEach(a=>a.close());l.Ij={}},Tk:(a,b)=>{var c=l.Ij[a];if(c)return b(null,c);try{var d=l.indexedDB().open(a,l.Bk)}catch(e){return b(e)}if(!d)return b("Unable to connect to IndexedDB");d.onupgradeneeded=e=>{var f=e.target.result;e=e.target.transaction;var g;f.objectStoreNames.contains(l.nj)? -g=e.objectStore(l.nj):g=f.createObjectStore(l.nj);g.indexNames.contains("timestamp")||g.createIndex("timestamp","timestamp",{unique:!1})};d.onsuccess=()=>{c=d.result;l.Ij[a]=c;b(null,c)};d.onerror=e=>{b(e.target.error);e.preventDefault()}},Uk:(a,b)=>{function c(m){return"."!==m&&".."!==m}function d(m){return n=>pb(m+"/"+n)}var e={};for(a=Vb(a.Aj).filter(c).map(d(a.Aj));a.length;){var f=a.pop();try{var g=Wb(f)}catch(m){return b(m)}H(g.mode)&&a.push.apply(a,Vb(f).filter(c).map(d(f)));e[f]={timestamp:g.Qj}}return b(null, -{type:"local",entries:e})},Vk:(a,b)=>{var c={};l.Tk(a.Aj,(d,e)=>{if(d)return b(d);try{var f=e.transaction([l.nj],"readonly");f.onerror=g=>{b(g.target.error);g.preventDefault()};f.objectStore(l.nj).index("timestamp").openKeyCursor().onsuccess=g=>{g=g.target.result;if(!g)return b(null,{type:"remote",db:e,entries:c});c[g.primaryKey]={timestamp:g.key};g.continue()}}catch(g){return b(g)}})},el:(a,b)=>{try{var c=I(a).node;var d=Wb(a)}catch(f){return b(f)}if(H(d.mode))return b(null,{timestamp:d.Qj,mode:d.mode}); -if(32768===(d.mode&61440)){a=c;var e=c.Qi?c.Qi.subarray?c.Qi.subarray(0,c.Ti):new Uint8Array(c.Qi):new Uint8Array(0);a.Qi=e;return b(null,{timestamp:d.Qj,mode:d.mode,contents:c.Qi})}return b(Error("node type not supported"))},ml:(a,b,c)=>{try{if(H(b.mode))for(var d=b.mode,e=a.split("/"),f="",g=0;g{try{var c=Wb(a);H(c.mode)?ac(a):32768===(c.mode&61440)&&bc(a)}catch(d){return b(d)}b(null)},fl:(a,b,c)=>{a=a.get(b);a.onsuccess=d=> -c(null,d.target.result);a.onerror=d=>{c(d.target.error);d.preventDefault()}},nl:(a,b,c,d)=>{try{var e=a.put(c,b)}catch(f){d(f);return}e.onsuccess=()=>d();e.onerror=f=>{d(f.target.error);f.preventDefault()}},jl:(a,b,c)=>{a=a.delete(b);a.onsuccess=()=>c();a.onerror=d=>{c(d.target.error);d.preventDefault()}},hl:(a,b,c)=>{function d(r){if(r&&!m)return m=!0,c(r)}var e=0,f=[];Object.keys(a.entries).forEach(function(r){var t=a.entries[r],x=b.entries[r];x&&t.timestamp.getTime()==x.timestamp.getTime()||(f.push(r), -e++)});var g=[];Object.keys(b.entries).forEach(function(r){a.entries[r]||(g.push(r),e++)});if(!e)return c(null);var m=!1,n=("remote"===a.type?a.db:b.db).transaction([l.nj],"readwrite"),q=n.objectStore(l.nj);n.onerror=r=>{d(this.error);r.preventDefault()};n.oncomplete=()=>{m||c(null)};f.sort().forEach(r=>{"local"===b.type?l.fl(q,r,(t,x)=>{if(t)return d(t);l.ml(r,x,d)}):l.el(r,(t,x)=>{if(t)return d(t);l.nl(q,r,x,d)})});g.sort().reverse().forEach(r=>{"local"===b.type?l.il(r,d):l.jl(q,r,d)})}},cc=null, -dc={},ec=[],fc=1,gc=null,hc=!0,F=null,Lb={},ic=0;function I(a,b={}){a=ub(a);if(!a)return{path:"",node:null};b=Object.assign({nk:!0,dk:0},b);if(8!!g);for(var c=cc,d="/",e=0;e>>0)%gc.length}function mc(a){var b=lc(a.parent.id,a.name);if(gc[b]===a)gc[b]=a.vj;else for(b=gc[b];b;){if(b.vj===a){b.vj=a.vj;break}b=b.vj}} -function Mb(a,b){var c;if(c=(c=nc(a,"x"))?c:a.Pi.yj?0:2)throw new F(c,a);for(c=gc[lc(a.id,b)];c;c=c.vj){var d=c.name;if(c.parent.id===a.id&&d===b)return c}return a.Pi.yj(a,b)}function Kb(a,b,c,d){a=new oc(a,b,c,d);b=lc(a.parent.id,a.name);a.vj=gc[b];return gc[b]=a}function H(a){return 16384===(a&61440)}function pc(a){var b=["r","w","rw"][a&3];a&512&&(b+="w");return b} -function nc(a,b){if(hc)return 0;if(!b.includes("r")||a.mode&292){if(b.includes("w")&&!(a.mode&146)||b.includes("x")&&!(a.mode&73))return 2}else return 2;return 0}function qc(a,b){try{return Mb(a,b),20}catch(c){}return nc(a,"wx")}function rc(a,b,c){try{var d=Mb(a,b)}catch(e){return e.Vi}if(a=nc(a,"wx"))return a;if(c){if(!H(d.mode))return 54;if(d===d.parent||"/"===kc(d))return 10}else if(H(d.mode))return 31;return 0}function sc(){for(var a=0;4096>=a;a++)if(!ec[a])return a;throw new F(33);} -function L(a){a=ec[a];if(!a)throw new F(8);return a}function tc(a,b=-1){uc||(uc=function(){this.dj={}},uc.prototype={},Object.defineProperties(uc.prototype,{object:{get(){return this.node},set(c){this.node=c}},flags:{get(){return this.dj.flags},set(c){this.dj.flags=c}},position:{get(){return this.dj.position},set(c){this.dj.position=c}}}));a=Object.assign(new uc,a);-1==b&&(b=sc());a.fd=b;return ec[b]=a}var Jb={open(a){a.Ri=dc[a.node.Bj].Ri;a.Ri.open?.(a)},qj(){throw new F(70);}}; -function Cb(a,b){dc[a]={Ri:b}}function vc(){for(var a=[],b=[cc.Yi];b.length;){var c=b.pop();a.push(c);b.push.apply(b,c.uk)}return a}function qa(a,b){function c(g){ic--;return b(g)}function d(g){if(g){if(!d.Pk)return d.Pk=!0,c(g)}else++f>=e.length&&c(null)}"function"==typeof a&&(b=a,a=!1);ic++;1{if(!g.type.Vj)return d(null);g.type.Vj(g,a,d)})} -function oa(a,b){var c="/"===b,d=!b;if(c&&cc)throw new F(10);if(!c&&!d){var e=I(b,{nk:!1});b=e.path;e=e.node;if(e.uj)throw new F(10);if(!H(e.mode))throw new F(54);}b={type:a,Jl:{},Aj:b,uk:[]};a=a.Yi(b);a.Yi=b;b.root=a;c?cc=a:e&&(e.uj=b,e.Yi&&e.Yi.uk.push(b))}function wc(a,b,c){var d=I(a,{parent:!0}).node;a=rb(a);if(!a||"."===a||".."===a)throw new F(28);var e=qc(d,a);if(e)throw new F(e);if(!d.Pi.Oj)throw new F(63);return d.Pi.Oj(d,a,b,c)} -function k(a,b){return wc(a,(void 0!==b?b:511)&1023|16384,0)}function xc(a,b,c){"undefined"==typeof c&&(c=b,b=438);return wc(a,b|8192,c)}function yc(a,b){if(!ub(a))throw new F(44);var c=I(b,{parent:!0}).node;if(!c)throw new F(44);b=rb(b);var d=qc(c,b);if(d)throw new F(d);if(!c.Pi.Uj)throw new F(63);c.Pi.Uj(c,b,a)}function ac(a){var b=I(a,{parent:!0}).node;a=rb(a);var c=Mb(b,a),d=rc(b,a,!0);if(d)throw new F(d);if(!b.Pi.Sj)throw new F(63);if(c.uj)throw new F(10);b.Pi.Sj(b,a);mc(c)} -function Vb(a){a=I(a,{tj:!0}).node;if(!a.Pi.Rj)throw new F(54);return a.Pi.Rj(a)}function bc(a){var b=I(a,{parent:!0}).node;if(!b)throw new F(44);a=rb(a);var c=Mb(b,a),d=rc(b,a,!1);if(d)throw new F(d);if(!b.Pi.Yj)throw new F(63);if(c.uj)throw new F(10);b.Pi.Yj(b,a);mc(c)}function jc(a){a=I(a).node;if(!a)throw new F(44);if(!a.Pi.Cj)throw new F(28);return ub(kc(a.parent),a.Pi.Cj(a))}function Wb(a,b){a=I(a,{tj:!b}).node;if(!a)throw new F(44);if(!a.Pi.gj)throw new F(63);return a.Pi.gj(a)} -function zc(a){return Wb(a,!0)}function $b(a,b){a="string"==typeof a?I(a,{tj:!0}).node:a;if(!a.Pi.$i)throw new F(63);a.Pi.$i(a,{mode:b&4095|a.mode&-4096,timestamp:Date.now()})} -function Xb(a,b,c){if(""===a)throw new F(44);if("string"==typeof b){var d={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[b];if("undefined"==typeof d)throw Error(`Unknown file open mode: ${b}`);b=d}c=b&64?("undefined"==typeof c?438:c)&4095|32768:0;if("object"==typeof a)var e=a;else{a=pb(a);try{e=I(a,{tj:!(b&131072)}).node}catch(f){}}d=!1;if(b&64)if(e){if(b&128)throw new F(20);}else e=wc(a,c,0),d=!0;if(!e)throw new F(44);8192===(e.mode&61440)&&(b&=-513);if(b&65536&&!H(e.mode))throw new F(54);if(!d&&(c= -e?40960===(e.mode&61440)?32:H(e.mode)&&("r"!==pc(b)||b&512)?31:nc(e,pc(b)):44))throw new F(c);if(b&512&&!d){c=e;c="string"==typeof c?I(c,{tj:!0}).node:c;if(!c.Pi.$i)throw new F(63);if(H(c.mode))throw new F(31);if(32768!==(c.mode&61440))throw new F(28);if(d=nc(c,"w"))throw new F(d);c.Pi.$i(c,{size:0,timestamp:Date.now()})}b&=-131713;e=tc({node:e,path:kc(e),flags:b,seekable:!0,position:0,Ri:e.Ri,sl:[],error:!1});e.Ri.open&&e.Ri.open(e);!h.logReadFiles||b&1||(Ac||={},a in Ac||(Ac[a]=1));return e} -function Zb(a){if(null===a.fd)throw new F(8);a.pj&&(a.pj=null);try{a.Ri.close&&a.Ri.close(a)}catch(b){throw b;}finally{ec[a.fd]=null}a.fd=null}function Bc(a,b,c){if(null===a.fd)throw new F(8);if(!a.seekable||!a.Ri.qj)throw new F(70);if(0!=c&&1!=c&&2!=c)throw new F(28);a.position=a.Ri.qj(a,b,c);a.sl=[];return a.position} -function Yb(a,b,c,d,e,f){if(0>d||0>e)throw new F(28);if(null===a.fd)throw new F(8);if(0===(a.flags&2097155))throw new F(8);if(H(a.node.mode))throw new F(31);if(!a.Ri.write)throw new F(28);a.seekable&&a.flags&1024&&Bc(a,0,2);var g="undefined"!=typeof e;if(!g)e=a.position;else if(!a.seekable)throw new F(70);b=a.Ri.write(a,b,c,d,e,f);g||(a.position+=b);return b} -function Cc(){F||(F=function(a,b){this.name="ErrnoError";this.node=b;this.kl=function(c){this.Vi=c};this.kl(a);this.message="FS error"},F.prototype=Error(),F.prototype.constructor=F,[44].forEach(a=>{Lb[a]=new F(a);Lb[a].stack=""}))}var Dc;function Ec(a,b){a="string"==typeof a?a:kc(a);for(b=b.split("/").reverse();b.length;){var c=b.pop();if(c){var d=pb(a+"/"+c);try{k(d)}catch(e){}a=d}}return d} -function Fc(a,b,c,d){a=pb(("string"==typeof a?a:kc(a))+"/"+b);c=Ub(c,d);return wc(a,(void 0!==c?c:438)&4095|32768,0)}function Sb(a,b,c,d,e,f){var g=b;a&&(a="string"==typeof a?a:kc(a),g=b?pb(a+"/"+b):a);a=Ub(d,e);g=wc(g,(void 0!==a?a:438)&4095|32768,0);if(c){if("string"==typeof c){b=Array(c.length);d=0;for(e=c.length;d=n.length)return 0;t=Math.min(n.length-x,t);if(n.slice)for(var p=0;p{var q=g.Ri[n];m[n]=function(){Hc(g);return q.apply(null,arguments)}});m.read=(n,q,r,t,x)=>{Hc(g);return f(n,q,r,t,x)};m.zj=(n,q,r)=>{Hc(g);var t=Hb(q);if(!t)throw new F(48);f(n,u,t,q,r);return{xk:t,kj:!0}};g.Ri=m;return g}var M={},uc,Ac,Jc=(a,b)=>a?A(v,a,b):"";function Kc(a,b,c){if("/"===b.charAt(0))return b;a=-100===a?"/":L(a).path;if(0==b.length){if(!c)throw new F(44);return a}return pb(a+"/"+b)} -function Lc(a,b,c){try{var d=a(b)}catch(f){if(f&&f.node&&pb(b)!==pb(kc(f.node)))return-54;throw f;}z.setInt32(4*(c>>2),d.Ok,!0);z.setInt32(4*(c+4>>2),d.mode,!0);z.setUint32(4*(c+8>>2),d.gl,!0);z.setInt32(4*(c+12>>2),d.uid,!0);z.setInt32(4*(c+16>>2),d.Wk,!0);z.setInt32(4*(c+20>>2),d.Bj,!0);Oa[c+24>>3]=BigInt(d.size);z.setInt32(4*(c+32>>2),4096,!0);z.setInt32(4*(c+36>>2),d.Gk,!0);a=d.Ek.getTime();b=d.Qj.getTime();var e=d.Hk.getTime();Oa[c+40>>3]=BigInt(Math.floor(a/1E3));z.setUint32(4*(c+48>>2),a%1E3* -1E3,!0);Oa[c+56>>3]=BigInt(Math.floor(b/1E3));z.setUint32(4*(c+64>>2),b%1E3*1E3,!0);Oa[c+72>>3]=BigInt(Math.floor(e/1E3));z.setUint32(4*(c+80>>2),e%1E3*1E3,!0);Oa[c+88>>3]=BigInt(d.Zk);return 0}var Mc=void 0;function Nc(){var a=z.getInt32(4*(+Mc>>2),!0);Mc+=4;return a} -var Oc=a=>0===a%4&&(0!==a%100||0===a%400),Pc=[0,31,60,91,121,152,182,213,244,274,305,335],Qc=[0,31,59,90,120,151,181,212,243,273,304,334],Rc=a=>{var b=xb(a)+1,c=C(b);c&&E(a,v,c,b);return c},bd=(a,b)=>{Sc=a;Tc=b;if(Uc)if(Vc||=!0,0==a)Wc=function(){var d=Math.max(0,Xc+b-Yc())|0;setTimeout(Zc,d)};else if(1==a)Wc=function(){$c(Zc)};else if(2==a){if("undefined"==typeof ad)if("undefined"==typeof setImmediate){var c=[];addEventListener("message",d=>{if("setimmediate"===d.data||"setimmediate"===d.data.target)d.stopPropagation(), -c.shift()()},!0);ad=function(d){c.push(d);postMessage("setimmediate","*")}}else ad=setImmediate;Wc=function(){ad(Zc)}}},Yc;Yc=()=>performance.now(); -var kd=(a,b,c,d,e)=>{!Uc||Ga("emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Uc=a;cd=d;var f=dd;Vc=!1;Zc=function(){if(!Ia)if(0{a instanceof kb||"unwind"==a||xa(1,a)},md=0,nd=a=>{Ja=a;nb||0{Ja=a;nd(a)},jd=a=>{if(!Ia)try{if(a(),!(nb||0 -setTimeout(()=>{jd(a)},b),Vc=!1,Wc=null,dd=0,Uc=null,cd=0,Sc=0,Tc=0,hd=0,ed=[];function qd(){Wc=null;dd++}function rd(){dd++;var a=Sc,b=Tc,c=Uc;Uc=null;kd(c,0,!1,cd,!0);bd(a,b);Wc()}var gd={},Xc,Zc,fd,sd=!1,td=!1,ud=[]; -function Qb(){function a(){td=document.pointerLockElement===h.canvas||document.mozPointerLockElement===h.canvas||document.webkitPointerLockElement===h.canvas||document.msPointerLockElement===h.canvas}if(!vd){vd=!0;Ob.push({canHandle:function(c){return!h.Il&&/\.(jpg|jpeg|png|bmp)$/i.test(c)},handle:function(c,d,e,f){var g=new Blob([c],{type:wd(d)});g.size!==c.length&&(g=new Blob([(new Uint8Array(c)).buffer],{type:wd(d)}));var m=URL.createObjectURL(g),n=new Image;n.onload=()=>{n.complete||Ga(`Image ${d} could not be decoded`); -var q=document.createElement("canvas");q.width=n.width;q.height=n.height;q.getContext("2d").drawImage(n,0,0);URL.revokeObjectURL(m);e?.(c)};n.onerror=()=>{Ea(`Image ${m} could not be decoded`);f?.()};n.src=m}});Ob.push({canHandle:function(c){return!h.Hl&&c.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(c,d,e){function f(){g||(g=!0,e?.(c))}var g=!1,m=URL.createObjectURL(new Blob([c],{type:wd(d)})),n=new Audio;n.addEventListener("canplaythrough",()=>f(n),!1);n.onerror=function(){if(!g){Ea(`warning: browser could not fully decode audio ${d}, trying slower base64 approach`); -for(var q="",r=0,t=0,x=0;x>t-6&63;t-=6;q+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[p]}2==t?(q+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(r&3)<<4],q+="=="):4==t&&(q+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(r&15)<<2],q+="=");n.src="data:audio/x-"+d.substr(-3)+";base64,"+q;f(n)}};n.src=m;pd(()=>{f(n)},1E4)}});var b=h.canvas;b&&(b.requestPointerLock=b.requestPointerLock||b.mozRequestPointerLock|| +var h;h||=typeof Module != 'undefined' ? Module : {};var ba=document.getElementById("status"),ca=document.getElementById("progress"),da=document.getElementById("spinner"),ea=document.getElementById("canvas"),fa=document.getElementById("canvasContainer"),ha=document.getElementById("logToggle"),ia=document.getElementById("logToggleContainer"),ja=document.getElementById("logContainer"),ka=document.getElementById("output"),la=ba.innerText;ha.checked=!1; +window.toggleLog=function(){ja.hidden=!ha.checked;ka.scrollTop=ka.scrollHeight};var ma=ea.getContext("webgl2",{alpha:!1,antialias:!1,depth:!1,powerPreference:"high-performance",premultipliedAlpha:!0,preserveDrawingBuffer:!1,stencil:!1});if(!ma)throw"Could not create a WebGL 2 context";ma.getSupportedExtensions().forEach(function(a){ma.getExtension(a)});ea.addEventListener("webglcontextlost",function(a){alert("WebGL context lost. You will need to reload the page.");a.preventDefault()},!1); +ka.value=""; +h={preRun:[function(){na.TAISEI_NOASYNC="1";na.TAISEI_NOUNLOAD="1";na.TAISEI_PREFER_SDL_VIDEODRIVERS="emscripten";na.TAISEI_RENDERER="gles30";k("/persistent");oa(l,"/persistent")}],postRun:[],onFirstFrame:function(){fa.hidden=!1;ia.style.display="inline-block";h.setStatus("",!0)},print:function(a){1d-c.Ej.time||(c.Ej.time=d,c.Ej.text=a,b?(a=b[1],ca.value=100*parseInt(b[2]),ca.max=100*parseInt(b[4]),ca.hidden=!1,da.hidden=!ea.hidden):(ca.value=null,ca.max=null,ca.hidden=!0,a||(da.hidden=!0)),ba.innerText=a.replace(/^Downloading(?: data)?\.\.\./,la).replace("...","\u2026"),console.log("[STATUS] "+ +ba.innerText))}},totalDependencies:0,monitorRunDependencies:function(a){h.totalDependencies=Math.max(h.totalDependencies,a);h.setStatus(a?"Preparing\u2026 ("+(h.totalDependencies-a)+"/"+h.totalDependencies+")":"All downloads complete.")}};window.onerror=function(a){h.setStatus("Error: "+a)};function qa(a,b){sa(a,function(c){h.ccall("vfs_sync_callback",null,["boolean","string","number"],[a,c,b],{async:!0})})} +(function(){function a(){var b=h.SDL2;"undefined"!==typeof b&&("suspended"==b.Wi.state&&b.Wi.resume(),"running"==b.Wi.state&&(ea.removeEventListener("click",a),document.removeEventListener("keydown",a)))}ea.addEventListener("click",a);document.addEventListener("keydown",a)})();"undefined"===typeof ta&&(ta=window.dynCall=h.dynCall=function(a,b,c){return ua.get(b).apply(this,c)});var va=Object.assign({},h),wa=[],ya="./this.program",za="",Aa; +"undefined"!=typeof document&&document.currentScript&&(za=document.currentScript.src);za=za.startsWith("blob:")?"":za.substr(0,za.replace(/[?#].*/,"").lastIndexOf("/")+1);Aa=a=>fetch(a,{credentials:"same-origin"}).then(b=>b.ok?b.arrayBuffer():Promise.reject(Error(b.status+" : "+b.url)));var Ba=h.print||console.log.bind(console),Ca=h.printErr||console.error.bind(console);Object.assign(h,va);va=null;h.arguments&&(wa=h.arguments);h.thisProgram&&(ya=h.thisProgram); +var Da=h.wasmBinary,Ea,Fa=!1,Ga,t,v,Ha,Ia,Ja,Ka,w,x,z;function La(){var a=Ea.buffer;h.HEAP_DATA_VIEW=z=new DataView(a);h.HEAP8=t=new Int8Array(a);h.HEAP16=Ha=new Int16Array(a);h.HEAPU8=v=new Uint8Array(a);h.HEAPU16=Ia=new Uint16Array(a);h.HEAP32=Ja=new Int32Array(a);h.HEAPU32=Ka=new Uint32Array(a);h.HEAPF32=w=new Float32Array(a);h.HEAPF64=new Float64Array(a);h.HEAP64=x=new BigInt64Array(a);h.HEAPU64=new BigUint64Array(a)}var Ma=[],Na=[],Oa=[],Pa=[]; +function Qa(){var a=h.preRun.shift();Ma.unshift(a)}var Ra=0,Sa=null,Ta=null;function Ua(){Ra++;h.monitorRunDependencies?.(Ra)}function Va(){Ra--;h.monitorRunDependencies?.(Ra);if(0==Ra&&(null!==Sa&&(clearInterval(Sa),Sa=null),Ta)){var a=Ta;Ta=null;a()}}function Wa(a){h.onAbort?.(a);a="Aborted("+a+")";Ca(a);Fa=!0;throw new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");}var Xa=a=>a.startsWith("data:application/octet-stream;base64,"),Ya; +function Za(a){if(a==Ya&&Da)return new Uint8Array(Da);throw"both async and sync fetching of the wasm failed";}function $a(a){return Da?Promise.resolve().then(()=>Za(a)):Aa(a).then(b=>new Uint8Array(b),()=>Za(a))}function ab(a,b,c){return $a(a).then(d=>WebAssembly.instantiate(d,b)).then(c,d=>{Ca(`failed to asynchronously prepare wasm: ${d}`);Wa(d)})} +function bb(a,b){var c=Ya;Da||"function"!=typeof WebAssembly.instantiateStreaming||Xa(c)||"function"!=typeof fetch?ab(c,a,b):fetch(c,{credentials:"same-origin"}).then(d=>WebAssembly.instantiateStreaming(d,a).then(b,function(e){Ca(`wasm streaming compile failed: ${e}`);Ca("falling back to ArrayBuffer instantiation");return ab(c,a,b)}))} +var eb={1136224:(a,b)=>{qa(a,b)},1136244:(a,b)=>{alert((a?A(v,a):"")+"\n\n"+(b?A(v,b):""))},1136301:()=>"undefined"!==typeof AudioContext||"undefined"!==typeof webkitAudioContext?!0:!1,1136448:()=>"undefined"!==typeof navigator.mediaDevices&&"undefined"!==typeof navigator.mediaDevices.getUserMedia||"undefined"!==typeof navigator.webkitGetUserMedia?!0:!1,1136682:a=>{"undefined"===typeof h.SDL2&&(h.SDL2={});var b=h.SDL2;a?b.capture={}:b.audio={};b.Wi||("undefined"!==typeof AudioContext?b.Wi=new AudioContext: +"undefined"!==typeof webkitAudioContext&&(b.Wi=new webkitAudioContext),b.Wi&&cb(b.Wi));return void 0===b.Wi?-1:0},1137175:()=>h.SDL2.Wi.sampleRate,1137243:(a,b,c,d)=>{function e(){}function f(m){void 0!==g.capture.Kj&&(clearTimeout(g.capture.Kj),g.capture.Kj=void 0);g.capture.Wj=g.Wi.createMediaStreamSource(m);g.capture.bj=g.Wi.createScriptProcessor(b,a,1);g.capture.bj.onaudioprocess=function(n){void 0!==g&&void 0!==g.capture&&(n.outputBuffer.getChannelData(0).fill(0),g.capture.dk=n.inputBuffer,ta("vi", +c,[d]))};g.capture.Wj.connect(g.capture.bj);g.capture.bj.connect(g.Wi.destination);g.capture.stream=m}var g=h.SDL2;g.capture.bk=g.Wi.createBuffer(a,b,g.Wi.sampleRate);g.capture.bk.getChannelData(0).fill(0);g.capture.Kj=setTimeout(function(){g.capture.dk=g.capture.bk;ta("vi",c,[d])},b/g.Wi.sampleRate*1E3);void 0!==navigator.mediaDevices&&void 0!==navigator.mediaDevices.getUserMedia?navigator.mediaDevices.getUserMedia({audio:!0,video:!1}).then(f).catch(e):void 0!==navigator.webkitGetUserMedia&&navigator.webkitGetUserMedia({audio:!0, +video:!1},f,e)},1138895:(a,b,c,d)=>{var e=h.SDL2;e.audio.bj=e.Wi.createScriptProcessor(b,0,a);e.audio.bj.onaudioprocess=function(f){void 0!==e&&void 0!==e.audio&&(e.audio.Bk=f.outputBuffer,ta("vi",c,[d]))};e.audio.bj.connect(e.Wi.destination)},1139305:(a,b)=>{for(var c=h.SDL2,d=c.capture.dk.numberOfChannels,e=0;e{for(var c=h.SDL2,d=c.audio.Bk.numberOfChannels,e=0;e>2),!0)}},1140390:a=>{var b=h.SDL2;if(a){void 0!==b.capture.Kj&&clearTimeout(b.capture.Kj);if(void 0!==b.capture.stream){a=b.capture.stream.getAudioTracks(); +for(var c=0;c +window.innerWidth,1141592:()=>window.innerHeight,1141623:(a,b,c)=>{h.SDL2||(h.SDL2={});var d=h.SDL2;d.Wk!==h.canvas&&(d.hj=h.createContext(h.canvas,!1,!0),d.Wk=h.canvas);if(d.w!==a||d.h!==b||d.ll!==d.hj)d.image=d.hj.createImageData(a,b),d.w=a,d.h=b,d.ll=d.hj;a=d.image.data;b=c>>2;var e=0;if("undefined"!==typeof CanvasPixelArray&&a instanceof CanvasPixelArray)for(c=a.length;e>8&255;a[e+2]=f>>16&255;a[e+3]=255;b++;e+=4}else if(d.$k!==a&&(d.Zk=new Int32Array(a.buffer), +d.al=new Uint8Array(a.buffer),d.$k=a),a=d.Zk,c=a.length,a.set(Ja.subarray(b,b+c)),a=d.al,b=3,e=b+4*c,0==c%8)for(;b{var f=document.createElement("canvas");f.width=a;f.height=b;var g=f.getContext("2d");a=g.createImageData(a,b);b=a.data;e>>=2;var m=0,n;if("undefined"!==typeof CanvasPixelArray&& +b instanceof CanvasPixelArray)for(n=b.length;m>8&255;b[m+2]=p>>16&255;b[m+3]=p>>24&255;e++;m+=4}else b=new Int32Array(b.buffer),n=b.length,b.set(Ja.subarray(e,e+n));g.putImageData(a,0,0);c=0===c&&0===d?"url("+f.toDataURL()+"), auto":"url("+f.toDataURL()+") "+c+" "+d+", auto";d=B(c.length+1);C(c,v,d,c.length+1);return d},1144081:a=>{h.canvas&&(h.canvas.style.cursor=a?A(v,a):"")},1144164:()=>{h.canvas&&(h.canvas.style.cursor="none")},1144233:()=>{h.onFirstFrame()}}; +function fb(a){this.name="ExitStatus";this.message=`Program terminated with exit(${a})`;this.status=a}var gb=(a,b,c)=>{a.addEventListener(b,c,{once:!0})},cb=a=>{var b;b||=[document,document.getElementById("canvas")];["keydown","mousedown","touchstart"].forEach(c=>{b.forEach(d=>{d&&gb(d,c,()=>{"suspended"===a.state&&a.resume()})})})},hb=a=>{for(;0>1),b,!0);break;case "i32":z.setInt32(4*(a>>2),b,!0);break;case "i64":x[a>>3]=BigInt(b);break;case "float":z.setFloat32(4*(a>>2),b,!0);break;case "double":z.setFloat64(8*(a>>3),b,!0);break;case "*":z.setUint32(4*(a>>2),b,!0);break;default:Wa(`invalid type for setValue: ${c}`)}}function jb(){var a=z.getInt32(4*(+kb>>2),!0);kb+=4;return a} +var mb=(a,b)=>{for(var c=0,d=a.length-1;0<=d;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c;c--)a.unshift("..");return a},nb=a=>{var b="/"===a.charAt(0),c="/"===a.substr(-1);(a=mb(a.split("/").filter(d=>!!d),!b).join("/"))||b||(a=".");a&&c&&(a+="/");return(b?"/":"")+a},pb=a=>{var b=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(a).slice(1);a=b[0];b=b[1];if(!a&&!b)return".";b&&=b.substr(0,b.length-1);return a+b},qb=a=>{if("/"=== +a)return"/";a=nb(a);a=a.replace(/\/$/,"");var b=a.lastIndexOf("/");return-1===b?a:a.substr(b+1)},rb=()=>{if("object"==typeof crypto&&"function"==typeof crypto.getRandomValues)return a=>crypto.getRandomValues(a);Wa("initRandomDevice")},sb=a=>(sb=rb())(a),tb=(...a)=>{for(var b="",c=!1,d=a.length-1;-1<=d&&!c;d--){c=0<=d?a[d]:"/";if("string"!=typeof c)throw new TypeError("Arguments to path.resolve must be strings");if(!c)return"";b=c+"/"+b;c="/"===c.charAt(0)}b=mb(b.split("/").filter(e=>!!e),!c).join("/"); +return(c?"/":"")+b||"."},ub="undefined"!=typeof TextDecoder?new TextDecoder:void 0,A=(a,b,c)=>{var d=b+c;for(c=b;a[c]&&!(c>=d);)++c;if(16e?d+=String.fromCharCode(e):(e-=65536,d+=String.fromCharCode(55296|e>>10,56320|e&1023))}}else d+=String.fromCharCode(e)}return d}, +vb=[],wb=a=>{for(var b=0,c=0;c=d?b++:2047>=d?b+=2:55296<=d&&57343>=d?(b+=4,++c):b+=3}return b},C=(a,b,c,d)=>{if(!(0=g){var m=a.charCodeAt(++f);g=65536+((g&1023)<<10)|m&1023}if(127>=g){if(c>=d)break;b[c++]=g}else{if(2047>=g){if(c+1>=d)break;b[c++]=192|g>>6}else{if(65535>=g){if(c+2>=d)break;b[c++]=224|g>>12}else{if(c+3>=d)break;b[c++]=240|g>>18;b[c++]=128|g>>12& +63}b[c++]=128|g>>6&63}b[c++]=128|g&63}}b[c]=0;return c-e},xb=[];function yb(a,b){xb[a]={input:[],$i:[],lj:b};zb(a,Ab)} +var Ab={open(a){var b=xb[a.node.Ij];if(!b)throw new D(43);a.Ui=b;a.seekable=!1},close(a){a.Ui.lj.Rj(a.Ui)},Rj(a){a.Ui.lj.Rj(a.Ui)},read(a,b,c,d){if(!a.Ui||!a.Ui.lj.Ek)throw new D(60);for(var e=0,f=0;f{a=65536*Math.ceil(a/65536);var b=Db(65536,a);b?(v.fill(0,b,b+a),a=b):a=0;return a};function Fb(a,b){var c=a.Ti?a.Ti.length:0;c>=b||(b=Math.max(b,c*(1048576>c?2:1.125)>>>0),0!=c&&(b=Math.max(b,256)),c=a.Ti,a.Ti=new Uint8Array(b),0=a.node.Vi)return 0;a=Math.min(a.node.Vi-e,d);if(8b)throw new D(28);return b},Nj(a,b,c){Fb(a.node,b+c);a.node.Vi=Math.max(a.node.Vi,b+c)},Gj(a,b,c,d,e){if(32768!==(a.node.mode&61440))throw new D(43);a=a.node.Ti;if(e&2||!a||a.buffer!==t.buffer){d=!0;e=Eb(b);if(!e)throw new D(48);if(a){if(0{var d=`al ${a}`;Aa(a).then(e=>{b(new Uint8Array(e));d&&Va(d)},()=>{if(c)c();else throw`Loading data file "${a}" failed.`;});d&&Ua(d)},Lb=h.preloadPlugins||[],Ob=(a,b,c,d)=>{"undefined"!=typeof Mb&&Nb();var e=!1;Lb.forEach(f=>{!e&&f.canHandle(b)&&(f.handle(a,b,c,d),e=!0)});return e},Qb=(a,b,c,d,e,f,g,m,n,p)=>{function q(H){function Z(pa){p?.();m||Pb(a,b,pa,d,e,n);f?.();Va(u)} +Ob(H,r,Z,()=>{g?.();Va(u)})||Z(H)}var r=b?tb(nb(a+"/"+b)):a,u=`cp ${r}`;Ua(u);"string"==typeof c?Kb(c,q,g):q(c)},Rb=(a,b)=>{var c=0;a&&(c|=365);b&&(c|=146);return c},l={Qj:{},indexedDB:()=>{if("undefined"!=typeof indexedDB)return indexedDB;var a=null;"object"==typeof window&&(a=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB);return a},Pk:21,qj:"FILE_DATA",zj:a=>{function b(){"again"===a.tj?c():a.tj=0}function c(){a.tj="idb";l.Lj(a,!1,b)}a.tj?"idb"===a.tj&&(a.tj= +"again"):a.tj=setTimeout(c,0)},Yi:a=>{var b=E.Yi(a);if(a?.wl?.Il){b.tj=0;var c=b.Ri;b.Ri=Object.assign({},b.Ri);b.Ri.wj=(d,e,f,g)=>{var m=c.wj(d,e,f,g);m.Ri=b.Ri;m.kl=b.Yi;m.lk=m.Si;m.Si=Object.assign({},m.Si);m.Si.write=(n,p,q,r,u,H)=>{n.node.Hk=!0;return m.lk.write(n,p,q,r,u,H)};m.Si.close=n=>{var p=n.node;p.Hk&&(l.zj(p.kl),p.Hk=!1);if(p.lk.close)return p.lk.close(n)};return m};b.Ri.ul=(...d)=>(l.zj(b.Yi),c.ul(...d));b.Ri.Aj=(...d)=>(l.zj(b.Yi),c.Aj(...d));b.Ri.Bj=(...d)=>(l.zj(b.Yi),c.Bj(...d)); +b.Ri.Cj=(...d)=>(l.zj(b.Yi),c.Cj(...d));b.Ri.ak=(...d)=>(l.zj(b.Yi),c.ak(...d))}return b},Lj:(a,b,c)=>{l.gl(a,(d,e)=>{if(d)return c(d);l.hl(a,(f,g)=>{if(f)return c(f);l.yl(b?g:e,b?e:g,c)})})},am:()=>{Object.values(l.Qj).forEach(a=>a.close());l.Qj={}},fl:(a,b)=>{var c=l.Qj[a];if(c)return b(null,c);try{var d=l.indexedDB().open(a,l.Pk)}catch(e){return b(e)}if(!d)return b("Unable to connect to IndexedDB");d.onupgradeneeded=e=>{var f=e.target.result;e=e.target.transaction;var g;f.objectStoreNames.contains(l.qj)? +g=e.objectStore(l.qj):g=f.createObjectStore(l.qj);g.indexNames.contains("timestamp")||g.createIndex("timestamp","timestamp",{unique:!1})};d.onsuccess=()=>{c=d.result;l.Qj[a]=c;b(null,c)};d.onerror=e=>{b(e.target.error);e.preventDefault()}},gl:(a,b)=>{function c(m){return"."!==m&&".."!==m}function d(m){return n=>nb(m+"/"+n)}var e={};for(a=Sb(a.Hj).filter(c).map(d(a.Hj));a.length;){var f=a.pop();try{var g=Tb(f)}catch(m){return b(m)}F(g.mode)&&a.push(...Sb(f).filter(c).map(d(f)));e[f]={timestamp:g.Zj}}return b(null, +{type:"local",entries:e})},hl:(a,b)=>{var c={};l.fl(a.Hj,(d,e)=>{if(d)return b(d);try{var f=e.transaction([l.qj],"readonly");f.onerror=g=>{b(g.target.error);g.preventDefault()};f.objectStore(l.qj).index("timestamp").openKeyCursor().onsuccess=g=>{g=g.target.result;if(!g)return b(null,{type:"remote",db:e,entries:c});c[g.primaryKey]={timestamp:g.key};g.continue()}}catch(g){return b(g)}})},sl:(a,b)=>{try{var c=G(a).node;var d=Tb(a)}catch(f){return b(f)}if(F(d.mode))return b(null,{timestamp:d.Zj,mode:d.mode}); +if(32768===(d.mode&61440)){a=c;var e=c.Ti?c.Ti.subarray?c.Ti.subarray(0,c.Vi):new Uint8Array(c.Ti):new Uint8Array(0);a.Ti=e;return b(null,{timestamp:d.Zj,mode:d.mode,contents:c.Ti})}return b(Error("node type not supported"))},Dl:(a,b,c)=>{try{if(F(b.mode))for(var d=b.mode,e=a.split("/"),f="",g=0;g{try{var c=Tb(a);F(c.mode)?Zb(a):32768===(c.mode&61440)&&$b(a)}catch(d){return b(d)}b(null)},tl:(a,b,c)=>{a=a.get(b);a.onsuccess=d=> +c(null,d.target.result);a.onerror=d=>{c(d.target.error);d.preventDefault()}},El:(a,b,c,d)=>{try{var e=a.put(c,b)}catch(f){d(f);return}e.onsuccess=()=>d();e.onerror=f=>{d(f.target.error);f.preventDefault()}},Bl:(a,b,c)=>{a=a.delete(b);a.onsuccess=()=>c();a.onerror=d=>{c(d.target.error);d.preventDefault()}},yl:(a,b,c)=>{function d(q){if(q&&!m)return m=!0,c(q)}var e=0,f=[];Object.keys(a.entries).forEach(q=>{var r=a.entries[q],u=b.entries[q];u&&r.timestamp.getTime()==u.timestamp.getTime()||(f.push(q), +e++)});var g=[];Object.keys(b.entries).forEach(q=>{a.entries[q]||(g.push(q),e++)});if(!e)return c(null);var m=!1,n=("remote"===a.type?a.db:b.db).transaction([l.qj],"readwrite"),p=n.objectStore(l.qj);n.onerror=n.onabort=q=>{d(q.target.error);q.preventDefault()};n.oncomplete=()=>{m||c(null)};f.sort().forEach(q=>{"local"===b.type?l.tl(p,q,(r,u)=>{if(r)return d(r);l.Dl(q,u,d)}):l.sl(q,(r,u)=>{if(r)return d(r);l.El(p,q,u,d)})});g.sort().reverse().forEach(q=>{"local"===b.type?l.Al(q,d):l.Bl(p,q,d)})}}, +ac=null,bc={},cc=[],dc=1,ec=null,fc=!1,gc=!0,D=class{constructor(a){this.name="ErrnoError";this.Xi=a}},Ib={},hc=0,ic={},jc=class{constructor(){this.aj={};this.node=null}get flags(){return this.aj.flags}set flags(a){this.aj.flags=a}get position(){return this.aj.position}set position(a){this.aj.position=a}},kc=class{constructor(a,b,c,d){a||=this;this.parent=a;this.Yi=a.Yi;this.xj=null;this.id=dc++;this.name=b;this.mode=c;this.Ri={};this.Si={};this.Ij=d}get read(){return 365===(this.mode&365)}set read(a){a? +this.mode|=365:this.mode&=-366}get write(){return 146===(this.mode&146)}set write(a){a?this.mode|=146:this.mode&=-147}get rl(){return F(this.mode)}get Gk(){return 8192===(this.mode&61440)}}; +function G(a,b={}){a=tb(a);if(!a)return{path:"",node:null};b=Object.assign({Dk:!0,pk:0},b);if(8!!g);for(var c=ac,d="/",e=0;e>>0)%ec.length}function oc(a){var b=nc(a.parent.id,a.name);if(ec[b]===a)ec[b]=a.yj;else for(b=ec[b];b;){if(b.yj===a){b.yj=a.yj;break}b=b.yj}} +function Jb(a,b){var c=F(a.mode)?(c=pc(a,"x"))?c:a.Ri.Fj?0:2:54;if(c)throw new D(c);for(c=ec[nc(a.id,b)];c;c=c.yj){var d=c.name;if(c.parent.id===a.id&&d===b)return c}return a.Ri.Fj(a,b)}function Hb(a,b,c,d){a=new kc(a,b,c,d);b=nc(a.parent.id,a.name);a.yj=ec[b];return ec[b]=a}function F(a){return 16384===(a&61440)}function qc(a){var b=["r","w","rw"][a&3];a&512&&(b+="w");return b} +function pc(a,b){if(gc)return 0;if(!b.includes("r")||a.mode&292){if(b.includes("w")&&!(a.mode&146)||b.includes("x")&&!(a.mode&73))return 2}else return 2;return 0}function rc(a,b){try{return Jb(a,b),20}catch(c){}return pc(a,"wx")}function sc(a,b,c){try{var d=Jb(a,b)}catch(e){return e.Xi}if(a=pc(a,"wx"))return a;if(c){if(!F(d.mode))return 54;if(d===d.parent||"/"===mc(d))return 10}else if(F(d.mode))return 31;return 0}function J(a){a=cc[a];if(!a)throw new D(8);return a} +function tc(a,b=-1){a=Object.assign(new jc,a);if(-1==b)a:{for(b=0;4096>=b;b++)if(!cc[b])break a;throw new D(33);}a.fd=b;return cc[b]=a}function uc(a,b=-1){a=tc(a,b);a.Si?.Tl?.(a);return a}var Gb={open(a){a.Si=bc[a.node.Ij].Si;a.Si.open?.(a)},uj(){throw new D(70);}};function zb(a,b){bc[a]={Si:b}}function vc(){for(var a=[],b=[ac.Yi];b.length;){var c=b.pop();a.push(c);b.push(...c.Jk)}return a} +function sa(a,b){function c(g){hc--;return b(g)}function d(g){if(g){if(!d.dl)return d.dl=!0,c(g)}else++f>=e.length&&c(null)}"function"==typeof a&&(b=a,a=!1);hc++;1{if(!g.type.Lj)return d(null);g.type.Lj(g,a,d)})} +function oa(a,b){var c="/"===b;if(c&&ac)throw new D(10);if(!c&&b){var d=G(b,{Dk:!1});b=d.path;d=d.node;if(d.xj)throw new D(10);if(!F(d.mode))throw new D(54);}b={type:a,wl:{},Hj:b,Jk:[]};a=a.Yi(b);a.Yi=b;b.root=a;c?ac=a:d&&(d.xj=b,d.Yi&&d.Yi.Jk.push(b))}function wc(a,b,c){var d=G(a,{parent:!0}).node;a=qb(a);if(!a||"."===a||".."===a)throw new D(28);var e=rc(d,a);if(e)throw new D(e);if(!d.Ri.wj)throw new D(63);return d.Ri.wj(d,a,b,c)}function k(a,b){return wc(a,(void 0!==b?b:511)&1023|16384,0)} +function xc(a,b,c){"undefined"==typeof c&&(c=b,b=438);return wc(a,b|8192,c)}function yc(a,b){if(!tb(a))throw new D(44);var c=G(b,{parent:!0}).node;if(!c)throw new D(44);b=qb(b);var d=rc(c,b);if(d)throw new D(d);if(!c.Ri.Bj)throw new D(63);c.Ri.Bj(c,b,a)}function Zb(a){var b=G(a,{parent:!0}).node;a=qb(a);var c=Jb(b,a),d=sc(b,a,!0);if(d)throw new D(d);if(!b.Ri.Aj)throw new D(63);if(c.xj)throw new D(10);b.Ri.Aj(b,a);oc(c)} +function Sb(a){a=G(a,{vj:!0}).node;if(!a.Ri.$j)throw new D(54);return a.Ri.$j(a)}function $b(a){var b=G(a,{parent:!0}).node;if(!b)throw new D(44);a=qb(a);var c=Jb(b,a),d=sc(b,a,!1);if(d)throw new D(d);if(!b.Ri.Cj)throw new D(63);if(c.xj)throw new D(10);b.Ri.Cj(b,a);oc(c)}function lc(a){a=G(a).node;if(!a)throw new D(44);if(!a.Ri.Jj)throw new D(28);return tb(mc(a.parent),a.Ri.Jj(a))}function Tb(a,b){a=G(a,{vj:!b}).node;if(!a)throw new D(44);if(!a.Ri.jj)throw new D(63);return a.Ri.jj(a)} +function zc(a){return Tb(a,!0)}function Yb(a,b){a="string"==typeof a?G(a,{vj:!0}).node:a;if(!a.Ri.cj)throw new D(63);a.Ri.cj(a,{mode:b&4095|a.mode&-4096,timestamp:Date.now()})} +function Ub(a,b,c){if(""===a)throw new D(44);if("string"==typeof b){var d={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[b];if("undefined"==typeof d)throw Error(`Unknown file open mode: ${b}`);b=d}c=b&64?("undefined"==typeof c?438:c)&4095|32768:0;if("object"==typeof a)var e=a;else{a=nb(a);try{e=G(a,{vj:!(b&131072)}).node}catch(f){}}d=!1;if(b&64)if(e){if(b&128)throw new D(20);}else e=wc(a,c,0),d=!0;if(!e)throw new D(44);8192===(e.mode&61440)&&(b&=-513);if(b&65536&&!F(e.mode))throw new D(54);if(!d&&(c= +e?40960===(e.mode&61440)?32:F(e.mode)&&("r"!==qc(b)||b&512)?31:pc(e,qc(b)):44))throw new D(c);if(b&512&&!d){c=e;c="string"==typeof c?G(c,{vj:!0}).node:c;if(!c.Ri.cj)throw new D(63);if(F(c.mode))throw new D(31);if(32768!==(c.mode&61440))throw new D(28);if(d=pc(c,"w"))throw new D(d);c.Ri.cj(c,{size:0,timestamp:Date.now()})}b&=-131713;e=tc({node:e,path:mc(e),flags:b,seekable:!0,position:0,Si:e.Si,Fl:[],error:!1});e.Si.open&&e.Si.open(e);!h.logReadFiles||b&1||a in ic||(ic[a]=1);return e} +function Xb(a){if(null===a.fd)throw new D(8);a.sj&&(a.sj=null);try{a.Si.close&&a.Si.close(a)}catch(b){throw b;}finally{cc[a.fd]=null}a.fd=null}function Ac(a,b,c){if(null===a.fd)throw new D(8);if(!a.seekable||!a.Si.uj)throw new D(70);if(0!=c&&1!=c&&2!=c)throw new D(28);a.position=a.Si.uj(a,b,c);a.Fl=[];return a.position} +function Wb(a,b,c,d,e,f){if(0>d||0>e)throw new D(28);if(null===a.fd)throw new D(8);if(0===(a.flags&2097155))throw new D(8);if(F(a.node.mode))throw new D(31);if(!a.Si.write)throw new D(28);a.seekable&&a.flags&1024&&Ac(a,0,2);var g="undefined"!=typeof e;if(!g)e=a.position;else if(!a.seekable)throw new D(70);b=a.Si.write(a,b,c,d,e,f);g||(a.position+=b);return b} +function Bc(a,b){a="string"==typeof a?a:mc(a);for(b=b.split("/").reverse();b.length;){var c=b.pop();if(c){var d=nb(a+"/"+c);try{k(d)}catch(e){}a=d}}return d}function Cc(a,b,c,d){a=nb(("string"==typeof a?a:mc(a))+"/"+b);c=Rb(c,d);return wc(a,(void 0!==c?c:438)&4095|32768,0)} +function Pb(a,b,c,d,e,f){var g=b;a&&(a="string"==typeof a?a:mc(a),g=b?nb(a+"/"+b):a);a=Rb(d,e);g=wc(g,(void 0!==a?a:438)&4095|32768,0);if(c){if("string"==typeof c){b=Array(c.length);d=0;for(e=c.length;d=n.length)return 0;r=Math.min(n.length-u,r);if(n.slice)for(var H=0;H{var p=g.Si[n];m[n]=(...q)=>{Ec(g);return p(...q)}});m.read=(n,p,q,r,u)=>{Ec(g);return f(n,p,q,r,u)};m.Gj=(n,p,q)=>{Ec(g);var r=Eb(p);if(!r)throw new D(48);f(n,t,r,p,q);return{Mk:r,mj:!0}};g.Si=m;return g}var K={},Gc=(a,b)=>a?A(v,a,b):"";function Hc(a,b,c){if("/"===b.charAt(0))return b;a=-100===a?"/":J(a).path;if(0==b.length){if(!c)throw new D(44);return a}return nb(a+"/"+b)} +function Ic(a,b,c){a=a(b);z.setInt32(4*(c>>2),a.cl,!0);z.setInt32(4*(c+4>>2),a.mode,!0);z.setUint32(4*(c+8>>2),a.vl,!0);z.setInt32(4*(c+12>>2),a.uid,!0);z.setInt32(4*(c+16>>2),a.il,!0);z.setInt32(4*(c+20>>2),a.Ij,!0);x[c+24>>3]=BigInt(a.size);z.setInt32(4*(c+32>>2),4096,!0);z.setInt32(4*(c+36>>2),a.Uk,!0);b=a.Sk.getTime();var d=a.Zj.getTime(),e=a.Vk.getTime();x[c+40>>3]=BigInt(Math.floor(b/1E3));z.setUint32(4*(c+48>>2),b%1E3*1E6,!0);x[c+56>>3]=BigInt(Math.floor(d/1E3));z.setUint32(4*(c+64>>2),d%1E3* +1E6,!0);x[c+72>>3]=BigInt(Math.floor(e/1E3));z.setUint32(4*(c+80>>2),e%1E3*1E6,!0);x[c+88>>3]=BigInt(a.ml);return 0} +var kb=void 0,Jc=[0,31,60,91,121,152,182,213,244,274,305,335],Kc=[0,31,59,90,120,151,181,212,243,273,304,334],Lc=a=>{if(!(a instanceof fb||"unwind"==a))throw a;},Mc=0,Nc=a=>{Ga=a;ib||0{Ga=a;Nc(a)},Pc=()=>{if(!(ib||0{if(!Fa)try{a(),Pc()}catch(b){Lc(b)}},Rc=(a,b)=>setTimeout(()=>{Qc(a)},b),Sc=!1,Tc=!1,Uc=[]; +function Nb(){function a(){Tc=document.pointerLockElement===h.canvas||document.mozPointerLockElement===h.canvas||document.webkitPointerLockElement===h.canvas||document.msPointerLockElement===h.canvas}if(!Vc){Vc=!0;Lb.push({canHandle:function(c){return!h.noImageDecoding&&/\.(jpg|jpeg|png|bmp|webp)$/i.test(c)},handle:function(c,d,e,f){var g=new Blob([c],{type:Wc(d)});g.size!==c.length&&(g=new Blob([(new Uint8Array(c)).buffer],{type:Wc(d)}));var m=URL.createObjectURL(g),n=new Image;n.onload=()=>{var p= +document.createElement("canvas");p.width=n.width;p.height=n.height;p.getContext("2d").drawImage(n,0,0);URL.revokeObjectURL(m);e?.(c)};n.onerror=()=>{Ca(`Image ${m} could not be decoded`);f?.()};n.src=m}});Lb.push({canHandle:function(c){return!h.noAudioDecoding&&c.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(c,d,e){function f(){g||(g=!0,e?.(c))}var g=!1,m=URL.createObjectURL(new Blob([c],{type:Wc(d)})),n=new Audio;n.addEventListener("canplaythrough",()=>f(n),!1);n.onerror=function(){if(!g){Ca(`warning: browser could not fully decode audio ${d}, trying slower base64 approach`); +for(var p="",q=0,r=0,u=0;u>r-6&63;r-=6;p+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[H]}2==r?(p+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(q&3)<<4],p+="=="):4==r&&(p+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(q&15)<<2],p+="=");n.src="data:audio/x-"+d.substr(-3)+";base64,"+p;f(n)}};n.src=m;Rc(()=>{f(n)},1E4)}});var b=h.canvas;b&&(b.requestPointerLock=b.requestPointerLock||b.mozRequestPointerLock|| b.webkitRequestPointerLock||b.msRequestPointerLock||(()=>{}),b.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||(()=>{}),b.exitPointerLock=b.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",a,!1),document.addEventListener("mozpointerlockchange",a,!1),document.addEventListener("webkitpointerlockchange",a,!1),document.addEventListener("mspointerlockchange",a,!1),h.elementPointerLock&&b.addEventListener("click", -c=>{!td&&h.canvas.requestPointerLock&&(h.canvas.requestPointerLock(),c.preventDefault())},!1))}}var xd=!1,yd=void 0,zd=void 0;function Ad(){if(!sd)return!1;(document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||(()=>{})).apply(document,[]);return!0}var Bd=0; -function $c(a){if("function"==typeof requestAnimationFrame)requestAnimationFrame(a);else{var b=Date.now();if(0===Bd)Bd=b+1E3/60;else for(;b+2>=Bd;)Bd+=1E3/60;setTimeout(a,Math.max(Bd-b,0))}}function wd(a){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[a.substr(a.lastIndexOf(".")+1)]}var Cd=[];function Dd(){var a=h.canvas;Cd.forEach(b=>b(a.width,a.height))} -function Ed(a,b,c){b&&c?(a.ul=b,a.Xk=c):(b=a.ul,c=a.Xk);var d=b,e=c;h.forcedAspectRatio&&0{for(var b=Ld++,c=a.length;c{if(h.preinitializedWebGLContext){var c=h.preinitializedWebGLContext;b.bk=Number(c.getParameter(c.VERSION).match(/^WebGL (\d+).\d+/)[1])}else a.dj||(a.dj=a.getContext,a.getContext=function(f,g){g=a.dj(f,g);return"webgl"==f==g instanceof WebGLRenderingContext? -g:null}),c=a.getContext("webgl2",b);if(!c)return 0;b=Yd(c,b);var d=c.getSupportedExtensions,e="EXT_color_buffer_float EXT_disjoint_timer_query_webgl2 EXT_texture_norm16 WEBGL_clip_cull_distance EXT_color_buffer_half_float EXT_float_blend EXT_texture_compression_bptc EXT_texture_compression_rgtc EXT_texture_filter_anisotropic KHR_parallel_shader_compile OES_texture_float_linear WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context WEBGL_multi_draw".split(" "); -c.getSupportedExtensions=function(){return(d.apply(this)||[]).filter(f=>e.includes(f))};return b},Yd=(a,b)=>{var c=Xd(Rd);b={handle:c,attributes:b,version:b.bk,oj:a};a.canvas&&(a.canvas.wj=b);Rd[c]=b;return c},ae=a=>{$d=Rd[a];h.ej=S=$d?.oj};function be(){var a=S.getSupportedExtensions()||[];return a=a.concat(a.map(b=>"GL_"+b))} -var ce={},$d,de=[],ee=(a,b)=>{de.length=0;for(var c;c=v[a++];){var d=105!=c;d&=112!=c;b+=d&&b%8?4:0;de.push(112==c?z.getUint32(4*(b>>2),!0):106==c?Oa[b>>3]:105==c?z.getInt32(4*(b>>2),!0):z.getFloat64(8*(b>>3),!0));b+=d?8:4}return de},fe=a=>{var b=T();a=a();U(b);return a},ge=0;function he(){for(var a=ie.length-1;0<=a;--a)je(a);ie=[];ke=[]}var ke=[]; -function le(a,b,c){function d(g,m){if(g.length!=m.length)return!1;for(var n in g)if(g[n]!=m[n])return!1;return!0}for(var e in ke){var f=ke[e];if(f.fk==a&&d(f.ik,c))return}ke.push({fk:a,wk:b,ik:c});ke.sort((g,m)=>g.wk{a=2{var b=xb(a)+1,c=Je(b);E(a,v,c,b);return c},Le=a=>fe(()=>{var b=Je(8),c=b+4,d=Ke(a.id);if(d=V(d))z.setInt32(4*(b>>2),d.width,!0),z.setInt32(4*(c>>2),d.height,!0);return[z.getInt32(4*(b>>2),!0),z.getInt32(4*(c>>2),!0)]}),Me=(a,b,c)=>{a=V(a);if(!a)return-4;a.width=b;a.height=c;return 0},Ne=(a,b,c)=>{a.Bl?fe(()=>{var d=Ke(a.id);Me(d,b,c)}):(a.width= -b,a.height=c)},Oe=a=>{function b(){document.fullscreenElement||document.webkitFullscreenElement||(document.removeEventListener("fullscreenchange",b),document.removeEventListener("webkitfullscreenchange",b),Ne(a,d,e),a.style.width=f,a.style.height=g,a.style.backgroundColor=m,n||(document.body.style.backgroundColor="white"),document.body.style.backgroundColor=n,a.style.paddingLeft=q,a.style.paddingRight=r,a.style.paddingTop=t,a.style.paddingBottom=x,a.style.marginLeft=p,a.style.marginRight=B,a.style.marginTop= -D,a.style.marginBottom=J,document.body.style.margin=ka,document.documentElement.style.overflow=Ba,document.body.scroll=y,a.style.mj=Ca,a.wj&&a.wj.oj.viewport(0,0,d,e),He.Hj&&W.apply(null,[He.Hj,37,0,He.kk]))}var c=Le(a),d=c[0],e=c[1],f=a.style.width,g=a.style.height,m=a.style.backgroundColor,n=document.body.style.backgroundColor,q=a.style.paddingLeft,r=a.style.paddingRight,t=a.style.paddingTop,x=a.style.paddingBottom,p=a.style.marginLeft,B=a.style.marginRight,D=a.style.marginTop,J=a.style.marginBottom, -ka=document.body.style.margin,Ba=document.documentElement.style.overflow,y=document.body.scroll,Ca=a.style.mj;document.addEventListener("fullscreenchange",b);document.addEventListener("webkitfullscreenchange",b)},Pe=(a,b,c)=>{a.style.paddingLeft=a.style.paddingRight=c+"px";a.style.paddingTop=a.style.paddingBottom=b+"px"},Qe=a=>0>Ie.indexOf(a)?a.getBoundingClientRect():{left:0,top:0},Re=(a,b)=>{if(0!=b.ek||0!=b.Zj){Oe(a);var c=b.ll?innerWidth:screen.width,d=b.ll?innerHeight:screen.height,e=Qe(a),f= -e.width;e=e.height;var g=Le(a),m=g[0];g=g[1];3==b.ek?(Pe(a,(d-e)/2,(c-f)/2),c=f,d=e):2==b.ek&&(c*g{if(a.requestPointerLock)a.requestPointerLock();else return document.body.requestPointerLock?-3:-1;return 0},Te=a=>{try{a()}catch(b){Ga(b)}}; -function Ue(){var a=X,b={};for(let [c,d]of Object.entries(a))b[c]="function"==typeof d?function(){Ve.push(c);try{return d.apply(null,arguments)}finally{if(!Ia&&(Ve.pop(),Y&&1===We&&0===Ve.length&&(We=0,Te(Xe),"undefined"!=typeof Ye&&!Ze&&$e))){Ze=!0;do{var e=$e;$e=0;var f=z.getUint32(4*(e>>2),!0),g=z.getUint32(4*(e+4>>2),!0);af(f,g);U(z.getUint32(4*(e+8>>2),!0));f=z.getUint32(4*(e+12>>2),!0);0!==f?(Y=null,z.setUint32(4*(e+12>>2),0,!0),dynCall_vi.apply(null,[f,z.getUint32(4*(e+16>>2),!0)])):(Y=e+= -20,We=2,bf(e),cf(e)())}while($e);Ze=!1}}}:d;return b}var We=0,Y=null,df=0,Ve=[],ef={},ff={},gf=0,hf=null,jf=[];function kf(){return new Promise((a,b)=>{hf={resolve:a,reject:b}})}function lf(){var a=C(4108),b=a+12;z.setUint32(4*(a>>2),b,!0);z.setUint32(4*(a+4>>2),b+4096,!0);mf(a);return a}function mf(a){var b=Ve[0],c=ef[b];void 0===c&&(c=gf++,ef[b]=c,ff[c]=b);z.setInt32(4*(a+8>>2),c,!0)}function cf(a){a=z.getInt32(4*(a+8>>2),!0);return X[ff[a]]} -function nf(a){if(!Ia){if(0===We){var b=!1,c=!1;a((d=0)=>{if(!Ia&&(df=d,b=!0,c)){We=2;Te(()=>bf(Y));"undefined"!=typeof Pb&&Uc&&rd();d=!1;try{var e=cf(Y)()}catch(m){e=m,d=!0}var f=!1;if(!Y){var g=hf;g&&(hf=null,(d?g.reject:g.resolve)(e),f=!0)}if(d&&!f)throw e;}});c=!0;b||(We=1,Y=lf(),"undefined"!=typeof Pb&&Uc&&qd(),Te(()=>of(Y)))}else 2===We?(We=0,Te(pf),qf(Y),Y=null,jf.forEach(d=>jd(d))):Ga(`invalid state: ${We}`);return df}} -var $e=0,Ze=!1,Ye={},rf=(a,b)=>{z.setFloat64(8*(a>>3),b.timestamp,!0);for(var c=0;c>3),b.axes[c],!0);for(c=0;c>3),b.buttons[c].value,!0):z.setFloat64(8*(a+8*c+528>>3),b.buttons[c],!0);for(c=0;c>2),b.buttons[c].pressed,!0):z.setInt32(4*(a+4*c+1040>>2),1==b.buttons[c],!0);z.setInt32(4*(a+1296>>2),b.connected, -!0);z.setInt32(4*(a+1300>>2),b.index,!0);z.setInt32(4*(a+8>>2),b.axes.length,!0);z.setInt32(4*(a+12>>2),b.buttons.length,!0);E(b.id,v,a+1304,64);E(b.mapping,v,a+1368,64)};function sf(a){S.activeTexture(a)}var tf=(a,b)=>{S.attachShader(P[a],Q[b])},uf=(a,b,c)=>{S.bindAttribLocation(P[a],b,c?A(v,c):"")},vf=(a,b)=>{35051==a?S.ak=b:35052==a&&(S.fj=b);S.bindBuffer(a,Md[b])},wf=(a,b)=>{S.bindFramebuffer(a,Nd[b])},xf=(a,b)=>{S.bindTexture(a,Pd[b])},yf=a=>{S.bindVertexArray(Qd[a])}; -function zf(a,b){S.blendEquationSeparate(a,b)}function Af(a,b,c,d){S.blendFuncSeparate(a,b,c,d)}function Bf(a,b,c,d,e,f,g,m,n,q){S.blitFramebuffer(a,b,c,d,e,f,g,m,n,q)}var Cf=(a,b,c,d)=>{c&&b?S.bufferData(a,v,d,c,b):S.bufferData(a,b,d)},Df=(a,b,c,d)=>{c&&S.bufferSubData(a,b,v,d,c)};function Ef(a){S.clear(a)}function Ff(a,b,c,d){S.clearColor(a,b,c,d)}function Gf(a){S.clearDepth(a)} -var Hf=a=>{S.compileShader(Q[a])},If=(a,b,c,d,e,f,g,m)=>{S.fj||!g?S.compressedTexImage2D(a,b,c,d,e,f,g,m):S.compressedTexImage2D(a,b,c,d,e,f,v,m,g)},Jf=(a,b,c,d,e,f,g,m,n)=>{S.fj||!m?S.compressedTexSubImage2D(a,b,c,d,e,f,g,m,n):S.compressedTexSubImage2D(a,b,c,d,e,f,g,v,n,m)},Kf=()=>{var a=Xd(P),b=S.createProgram();b.name=a;b.Mj=b.Kj=b.Lj=0;b.hk=1;P[a]=b;return a},Lf=a=>{var b=Xd(Q);Q[b]=S.createShader(a);return b};function Mf(a){S.cullFace(a)} -var Nf=(a,b)=>{for(var c=0;c>2),!0),e=Md[d];e&&(S.deleteBuffer(e),e.name=0,Md[d]=null,d==S.ak&&(S.ak=0),d==S.fj&&(S.fj=0))}},Of=(a,b)=>{for(var c=0;c>2),!0),e=Nd[d];e&&(S.deleteFramebuffer(e),e.name=0,Nd[d]=null)}},Pf=a=>{if(a){var b=P[a];b&&(S.deleteProgram(b),b.name=0,P[a]=null)}},Qf=a=>{if(a){var b=Q[a];b&&(S.deleteShader(b),Q[a]=null)}},Rf=(a,b)=>{for(var c=0;c>2),!0),e=Pd[d];e&&(S.deleteTexture(e), -e.name=0,Pd[d]=null)}},Sf=(a,b)=>{for(var c=0;c>2),!0);S.deleteVertexArray(Qd[d]);Qd[d]=null}};function Tf(a){S.depthFunc(a)}var Uf=a=>{S.depthMask(!!a)};function Vf(a){S.disable(a)} -var Wf=a=>{S.disableVertexAttribArray(a)},Xf=(a,b,c)=>{S.drawArrays(a,b,c)},Yf=(a,b,c,d)=>{S.drawArraysInstanced(a,b,c,d)},Zf=[],$f=(a,b)=>{for(var c=Zf[a],d=0;d>2),!0);S.drawBuffers(c)},ag=(a,b,c,d)=>{S.drawElements(a,b,c,d)},bg=(a,b,c,d,e)=>{S.drawElementsInstanced(a,b,c,d,e)};function cg(a){S.enable(a)}var dg=a=>{S.enableVertexAttribArray(a)},eg=(a,b,c,d,e)=>{S.framebufferTexture2D(a,b,c,Pd[d],e)};function fg(a){S.frontFace(a)} -var gg=(a,b,c,d)=>{for(var e=0;e>2),g,!0)}},hg=(a,b)=>{gg(a,b,"createBuffer",Md)},ig=(a,b)=>{gg(a,b,"createFramebuffer",Nd)},jg=(a,b)=>{gg(a,b,"createTexture",Pd)};function kg(a,b){gg(a,b,"createVertexArray",Qd)}function lg(a){S.generateMipmap(a)} -var mg=(a,b,c,d,e,f,g,m)=>{b=P[b];if(a=S[a](b,c))d=m&&E(a.name,v,m,d),e&&z.setInt32(4*(e>>2),d,!0),f&&z.setInt32(4*(f>>2),a.size,!0),g&&z.setInt32(4*(g>>2),a.type,!0)},ng=(a,b,c,d,e,f,g)=>{mg("getActiveUniform",a,b,c,d,e,f,g)},og=(a,b)=>{z.setUint32(4*(a>>2),b,!0);var c=z.getUint32(4*(a>>2),!0);z.setUint32(4*(a+4>>2),(b-c)/4294967296,!0)},pg=(a,b,c)=>{if(b){var d=void 0;switch(a){case 36346:d=1;break;case 36344:return;case 34814:case 36345:d=0;break;case 34466:var e=S.getParameter(34467);d=e?e.length: -0;break;case 33309:d=2*(S.getSupportedExtensions()||[]).length;break;case 33307:case 33308:d=33307==a?3:0}if(void 0===d)switch(e=S.getParameter(a),typeof e){case "number":d=e;break;case "boolean":d=e?1:0;break;case "string":return;case "object":if(null===e)switch(a){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 36662:case 36663:case 35053:case 35055:case 36010:case 35097:case 35869:case 32874:case 36389:case 35983:case 35368:case 34068:d=0;break;default:return}else{if(e instanceof -Float32Array||e instanceof Uint32Array||e instanceof Int32Array||e instanceof Array){for(a=0;a>2),e[a],!0);break;case 2:z.setFloat32(4*(b+4*a>>2),e[a],!0);break;case 4:u[b+a>>0]=e[a]?1:0}return}d=e.name|0}}switch(c){case 1:og(b,d);break;case 0:z.setInt32(4*(b>>2),d,!0);break;case 2:z.setFloat32(4*(b>>2),d,!0);break;case 4:u[b>>0]=d?1:0}}},qg=(a,b,c,d)=>{b=S.getIndexedParameter(a,b);switch(typeof b){case "boolean":a=b?1:0;break;case "number":a=b;break; -case "object":if(null===b)switch(a){case 35983:case 35368:a=0;break;default:return}else if(b instanceof WebGLBuffer)a=b.name|0;else return;break;default:return}switch(d){case 1:og(c,a);break;case 0:z.setInt32(4*(c>>2),a,!0);break;case 2:z.setFloat32(4*(c>>2),a,!0);break;case 4:u[c>>0]=a?1:0;break;default:throw"internal emscriptenWebGLGetIndexed() error, bad type: "+d;}},rg=(a,b)=>pg(a,b,0),sg=(a,b,c,d)=>{a=S.getProgramInfoLog(P[a]);b=0>2),b,!0)},tg=(a,b,c)=>{if(c&& -!(a>=Ld))if(a=P[a],35716==b)z.setInt32(4*(c>>2),S.getProgramInfoLog(a).length+1,!0);else if(35719==b){if(!a.Mj)for(b=0;b>2),a.Mj,!0)}else if(35722==b){if(!a.Kj)for(b=0;b>2),a.Kj,!0)}else if(35381==b){if(!a.Lj)for(b=0;b>2),a.Lj,!0)}else z.setInt32(4*(c>>2),S.getProgramParameter(a,b),!0)},ug=(a,b,c)=>{if(c){a=R[a];b=2>$d.version?S.lj.getQueryObjectEXT(a,b):S.getQueryParameter(a,b);var d;"boolean"==typeof b?d=b?1:0:d=b;og(c,d)}},vg=(a,b,c)=>{if(c){a=S.lj.getQueryObjectEXT(R[a],b);var d;"boolean"==typeof a?d=a?1:0:d=a;z.setInt32(4*(c>>2),d,!0)}},wg=(a,b,c,d)=>{a=S.getShaderInfoLog(Q[a]);b=0>2),b,!0)},xg=(a,b,c)=>{c&&(35716==b?(a=S.getShaderInfoLog(Q[a]), -z.setInt32(4*(c>>2),a?a.length+1:0,!0)):35720==b?(a=S.getShaderSource(Q[a]),z.setInt32(4*(c>>2),a?a.length+1:0,!0)):z.setInt32(4*(c>>2),S.getShaderParameter(Q[a],b),!0))},yg=a=>{var b=Vd[a];if(!b){switch(a){case 7939:b=Rc(be().join(" "));break;case 7936:case 7937:case 37445:case 37446:b=(b=S.getParameter(a))?Rc(b):0;break;case 7938:b=Rc(`OpenGL ES 3.0 (${S.getParameter(7938)})`);break;case 35724:b=S.getParameter(35724);var c=b.match(/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/);null!==c&&(3==c[1].length&& -(c[1]+="0"),b=`OpenGL ES GLSL ES ${c[1]} (${b})`);b=Rc(b)}Vd[a]=b}return b},zg=(a,b)=>{if(2>$d.version)return 0;var c=Wd[a];if(c)return 0>b||b>=c.length?0:c[b];switch(a){case 7939:return c=be().map(d=>Rc(d)),c=Wd[a]=c,0>b||b>=c.length?0:c[b];default:return 0}},Ag=a=>"]"==a.slice(-1)&&a.lastIndexOf("["),Bg=a=>{var b=a.Ej,c=a.Ak,d;if(!b)for(a.Ej=b={},a.zk={},d=0;d{b=b?A(v,b):"";if(a=P[a]){Bg(a);var c=a.Ej,d=0,e=b,f=Ag(b);0>>0,e=b.slice(0,f));if((e=a.Ak[e])&&d{var b=S.Jk,c=b.Ej[a];"number"==typeof c&&(b.Ej[a]=c=S.getUniformLocation(b,b.zk[a]+(0{if(c)if(a=P[a],Bg(a),a=S.getUniform(a,Z(b)),"number"==typeof a||"boolean"==typeof a)switch(d){case 0:z.setInt32(4* -(c>>2),a,!0);break;case 2:z.setFloat32(4*(c>>2),a,!0)}else for(b=0;b>2),a[b],!0);break;case 2:z.setFloat32(4*(c+4*b>>2),a[b],!0)}},Eg=(a,b,c)=>{Dg(a,b,c,2)},Fg=(a,b,c)=>{Dg(a,b,c,0)},Gg=(a,b,c,d)=>{if(c)if(a=S.getVertexAttrib(a,b),34975==b)z.setInt32(4*(c>>2),a&&a.name,!0);else if("number"==typeof a||"boolean"==typeof a)switch(d){case 0:z.setInt32(4*(c>>2),a,!0);break;case 2:z.setFloat32(4*(c>>2),a,!0);break;case 5:d=Math.fround(a),z.setInt32(4*(c>> -2),d,!0)}else for(b=0;b>2),a[b],!0);break;case 2:z.setFloat32(4*(c+4*b>>2),a[b],!0);break;case 5:var e=Math.fround(a[b]);z.setInt32(4*(c+4*b>>2),e,!0)}},Hg=(a,b,c)=>{Gg(a,b,c,0)},Ig=a=>(a=Qd[a])?S.isVertexArray(a):0,Jg=a=>{a=P[a];S.linkProgram(a);a.Ej=0;a.Ak={}},Kg=(a,b)=>{S.pixelStorei(a,b)};function Lg(a){S.readBuffer(a)} -var Mg=a=>{a-=5120;return 0==a?u:1==a?v:2==a?Ka:4==a?Ma:6==a?w:5==a||28922==a||28520==a||30779==a||30782==a?Na:La},Ng=(a,b,c,d,e,f,g)=>{if(S.ak)S.readPixels(a,b,c,d,e,f,g);else{var m=Mg(f);S.readPixels(a,b,c,d,e,f,m,g>>31-Math.clz32(m.BYTES_PER_ELEMENT))}};function Og(a,b,c,d){S.scissor(a,b,c,d)} -var Pg=(a,b,c,d)=>{for(var e="",f=0;f>2),!0):-1;e+=Jc(z.getInt32(4*(c+4*f>>2),!0),0>g?void 0:g)}S.shaderSource(Q[a],e)},Qg=(a,b,c,d,e,f,g,m,n)=>{if(S.fj)S.texImage2D(a,b,c,d,e,f,g,m,n);else if(n){var q=Mg(m);S.texImage2D(a,b,c,d,e,f,g,m,q,n>>31-Math.clz32(q.BYTES_PER_ELEMENT))}else S.texImage2D(a,b,c,d,e,f,g,m,null)};function Rg(a,b,c){S.texParameteri(a,b,c)} -var Sg=(a,b,c,d,e,f,g,m,n)=>{if(S.fj)S.texSubImage2D(a,b,c,d,e,f,g,m,n);else if(n){var q=Mg(m);S.texSubImage2D(a,b,c,d,e,f,g,m,q,n>>31-Math.clz32(q.BYTES_PER_ELEMENT))}else S.texSubImage2D(a,b,c,d,e,f,g,m,null)},Tg=(a,b,c)=>{b&&S.uniform1fv(Z(a),w,c>>2,b)},Ug=(a,b,c)=>{b&&S.uniform1iv(Z(a),Ma,c>>2,b)},Vg=(a,b,c)=>{b&&S.uniform2fv(Z(a),w,c>>2,2*b)},Wg=(a,b,c)=>{b&&S.uniform2iv(Z(a),Ma,c>>2,2*b)},Xg=(a,b,c)=>{b&&S.uniform3fv(Z(a),w,c>>2,3*b)},Yg=(a,b,c)=>{b&&S.uniform3iv(Z(a),Ma,c>>2,3*b)},Zg=(a,b, -c)=>{b&&S.uniform4fv(Z(a),w,c>>2,4*b)},$g=(a,b,c)=>{b&&S.uniform4iv(Z(a),Ma,c>>2,4*b)},ah=(a,b,c,d)=>{b&&S.uniformMatrix3fv(Z(a),!!c,w,d>>2,9*b)},bh=(a,b,c,d)=>{b&&S.uniformMatrix4fv(Z(a),!!c,w,d>>2,16*b)},ch=a=>{a=P[a];S.useProgram(a);S.Jk=a},dh=(a,b)=>{S.vertexAttribDivisor(a,b)},eh=(a,b,c,d,e)=>{S.vertexAttribIPointer(a,b,c,d,e)},fh=(a,b,c,d,e,f)=>{S.vertexAttribPointer(a,b,c,!!d,e,f)};function gh(a,b,c,d){S.viewport(a,b,c,d)} -var hh=(a,b)=>{if(!te())return-1;a=V(a);return a?a.requestFullscreen||a.webkitRequestFullscreen?ne()?Re(a,b):b.Nk?(le(Re,1,[a,b]),1):-2:-3:-4},ih=()=>{try{navigator.getGamepads()}catch(a){return navigator.getGamepads=null,1}},jh=(a,b)=>{var c={target:V(2),Wi:"beforeunload",bj:b,cj:(d=event)=>{var e=W.apply(null,[b,28,0,a]);e&&=e?A(v,e):"";if(e)return d.preventDefault(),d.returnValue=e},aj:!0};return qe(c)},kh=(a,b,c,d,e,f)=>{we||=C(256);a={target:V(a),Wi:f,bj:d,cj:(g=event)=>{var m=g.target.id?g.target.id: -"",n=we;E(se(g.target),v,n+0,128);E(m,v,n+128,128);W.apply(null,[d,e,n,b])&&g.preventDefault()},aj:c};return qe(a)},lh=(a,b,c,d,e)=>{ye||=C(280);return qe({target:a,Wi:e,bj:d,cj:(f=event)=>{var g=ye,m=document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement,n=!!m;z.setInt32(4*(g>>2),n,!0);z.setInt32(4*(g+4>>2),te(),!0);var q=n?m:xe,r=q?.id||"";E(se(q),v,g+8,128);E(r,v,g+136,128);z.setInt32(4*(g+264>>2),q?q.clientWidth:0,!0);z.setInt32(4* -(g+268>>2),q?q.clientHeight:0,!0);z.setInt32(4*(g+272>>2),screen.width,!0);z.setInt32(4*(g+276>>2),screen.height,!0);n&&(xe=m);W.apply(null,[d,19,g,b])&&f.preventDefault()},aj:c})},mh=(a,b,c,d,e)=>{ze||=C(1432);b={target:V(2),Gj:!0,Wi:e,bj:c,cj:(f=event)=>{var g=ze;rf(g,f.gamepad);W.apply(null,[c,d,g,a])&&f.preventDefault()},aj:b};return qe(b)},nh=(a,b,c,d,e,f)=>{Ae||=C(176);a={target:V(a),Wi:f,bj:d,cj:g=>{var m=Ae;z.setFloat64(8*(m>>3),g.timeStamp,!0);var n=m>>2;z.setInt32(4*(n+2),g.location,!0); -z.setInt32(4*(n+3),g.ctrlKey,!0);z.setInt32(4*(n+4),g.shiftKey,!0);z.setInt32(4*(n+5),g.altKey,!0);z.setInt32(4*(n+6),g.metaKey,!0);z.setInt32(4*(n+7),g.repeat,!0);z.setInt32(4*(n+8),g.charCode,!0);z.setInt32(4*(n+9),g.keyCode,!0);z.setInt32(4*(n+10),g.which,!0);E(g.key||"",v,m+44,32);E(g.code||"",v,m+76,32);E(g.char||"",v,m+108,32);E(g.locale||"",v,m+140,32);W.apply(null,[d,e,m,b])&&g.preventDefault()},aj:c};return qe(a)},oh=(a,b,c)=>{z.setFloat64(8*(a>>3),b.timeStamp,!0);a>>=2;z.setInt32(4*(a+2), -b.screenX,!0);z.setInt32(4*(a+3),b.screenY,!0);z.setInt32(4*(a+4),b.clientX,!0);z.setInt32(4*(a+5),b.clientY,!0);z.setInt32(4*(a+6),b.ctrlKey,!0);z.setInt32(4*(a+7),b.shiftKey,!0);z.setInt32(4*(a+8),b.altKey,!0);z.setInt32(4*(a+9),b.metaKey,!0);z.setInt16(2*(2*a+20),b.button,!0);z.setInt16(2*(2*a+21),b.buttons,!0);z.setInt32(4*(a+11),b.movementX,!0);z.setInt32(4*(a+12),b.movementY,!0);c=Qe(c);z.setInt32(4*(a+13),b.clientX-c.left,!0);z.setInt32(4*(a+14),b.clientY-c.top,!0)},ph=(a,b,c,d,e,f)=>{Be||= -C(72);a=V(a);return qe({target:a,Gj:"mousemove"!=f&&"mouseenter"!=f&&"mouseleave"!=f,Wi:f,bj:d,cj:(g=event)=>{oh(Be,g,a);W.apply(null,[d,e,Be,b])&&g.preventDefault()},aj:c})},qh=(a,b,c,d,e)=>{Ce||=C(260);return qe({target:a,Wi:e,bj:d,cj:(f=event)=>{var g=Ce,m=document.pointerLockElement||document.dj||document.Dk||document.Ck;z.setInt32(4*(g>>2),!!m,!0);var n=m?.id||"";E(se(m),v,g+4,128);E(n,v,g+132,128);W.apply(null,[d,20,g,b])&&f.preventDefault()},aj:c})},rh=(a,b,c,d)=>{De||=C(36);a=V(a);return qe({target:a, -Wi:"resize",bj:d,cj:(e=event)=>{if(e.target==a){var f=document.body;if(f){var g=De;z.setInt32(4*(g>>2),e.detail,!0);z.setInt32(4*(g+4>>2),f.clientWidth,!0);z.setInt32(4*(g+8>>2),f.clientHeight,!0);z.setInt32(4*(g+12>>2),innerWidth,!0);z.setInt32(4*(g+16>>2),innerHeight,!0);z.setInt32(4*(g+20>>2),outerWidth,!0);z.setInt32(4*(g+24>>2),outerHeight,!0);z.setInt32(4*(g+28>>2),pageXOffset,!0);z.setInt32(4*(g+32>>2),pageYOffset,!0);W.apply(null,[d,10,g,b])&&e.preventDefault()}}},aj:c})},sh=(a,b,c,d,e,f)=> -{Ee||=C(1696);a=V(a);return qe({target:a,Gj:"touchstart"==f||"touchend"==f,Wi:f,bj:d,cj:g=>{for(var m,n={},q=g.touches,r=0;r>3),g.timeStamp,!0);var t=q>>2;z.setInt32(4*(t+3),g.ctrlKey,!0);z.setInt32(4*(t+4),g.shiftKey,!0);z.setInt32(4*(t+5),g.altKey,!0);z.setInt32(4* -(t+6),g.metaKey,!0);t+=7;var x=Qe(a),p=0;for(r in n)if(m=n[r],z.setInt32(4*t,m.identifier,!0),z.setInt32(4*(t+1),m.screenX,!0),z.setInt32(4*(t+2),m.screenY,!0),z.setInt32(4*(t+3),m.clientX,!0),z.setInt32(4*(t+4),m.clientY,!0),z.setInt32(4*(t+5),m.pageX,!0),z.setInt32(4*(t+6),m.pageY,!0),z.setInt32(4*(t+7),m.rk,!0),z.setInt32(4*(t+8),m.vk,!0),z.setInt32(4*(t+9),m.clientX-x.left,!0),z.setInt32(4*(t+10),m.clientY-x.top,!0),t+=13,31<++p)break;z.setInt32(4*(q+8>>2),p,!0);W.apply(null,[d,e,q,b])&&g.preventDefault()}, -aj:c})},th=(a,b,c)=>{var d=Ie[1];Fe||=C(8);return qe({target:d,Wi:"visibilitychange",bj:c,cj:(e=event)=>{var f=Fe,g=["hidden","visible","prerender","unloaded"].indexOf(document.visibilityState);z.setInt32(4*(f>>2),document.hidden,!0);z.setInt32(4*(f+4>>2),g,!0);W.apply(null,[c,21,f,a])&&e.preventDefault()},aj:b})},uh=(a,b,c,d)=>{Ge||=C(104);return qe({target:a,Gj:!0,Wi:"wheel",bj:d,cj:(e=event)=>{var f=Ge;oh(f,e,a);z.setFloat64(8*(f+72>>3),e.deltaX,!0);z.setFloat64(8*(f+80>>3),e.deltaY,!0);z.setFloat64(8* -(f+88>>3),e.deltaZ,!0);z.setInt32(4*(f+96>>2),e.deltaMode,!0);W.apply(null,[d,9,f,b])&&e.preventDefault()},aj:c})};function vh(){this.kj=[void 0];this.pk=[]}var wh; -function xh(a,b,c,d,e){function f(){var K=0,ua=0;y.response&&ka&&0===z.getUint32(4*(a+12>>2),!0)&&(ua=y.response.byteLength);0>2),K,!0);og(a+16,ua);og(a+24,0);(K=y.response?y.response.byteLength:0)&&og(a+32,K);z.setUint16(2*(a+40>>1),y.readyState,!0);z.setUint16(2*(a+42>>1),y.status,!0);y.statusText&&E(y.statusText,v,a+44,64)}var g=z.getUint32(4*(a+8>>2),!0);if(g){var m=g?A(v,g):"",n=a+112,q=Jc(n+0);q||="GET";var r=z.getUint32(4* -(n+56>>2),!0),t=z.getUint32(4*(n+68>>2),!0),x=z.getUint32(4*(n+72>>2),!0);g=z.getUint32(4*(n+76>>2),!0);var p=z.getUint32(4*(n+80>>2),!0),B=z.getUint32(4*(n+84>>2),!0),D=z.getUint32(4*(n+88>>2),!0),J=z.getUint32(4*(n+52>>2),!0),ka=!!(J&1),Ba=!!(J&2);J=!!(J&64);t=t?t?A(v,t):"":void 0;x=x?x?A(v,x):"":void 0;var y=new XMLHttpRequest;y.withCredentials=!!v[n+60>>0];y.open(q,m,!J,t,x);J||(y.timeout=r);y.dj=m;y.responseType="arraybuffer";p&&(m=p?A(v,p):"",y.overrideMimeType(m));if(g)for(;;){n=z.getUint32(4* -(g>>2),!0);if(!n)break;m=z.getUint32(4*(g+4>>2),!0);if(!m)break;g+=8;n=n?A(v,n):"";m=m?A(v,m):"";y.setRequestHeader(n,m)}var Ca=wh.Fj(y);z.setUint32(4*(a>>2),Ca,!0);g=B&&D?v.slice(B,B+D):null;y.onload=K=>{wh.has(Ca)&&(f(),200<=y.status&&300>y.status?b?.(a,y,K):c?.(a,y,K))};y.onerror=K=>{wh.has(Ca)&&(f(),c?.(a,y,K))};y.ontimeout=K=>{wh.has(Ca)&&c?.(a,y,K)};y.onprogress=K=>{if(wh.has(Ca)){var ua=ka&&Ba&&y.response?y.response.byteLength:0,yb=0;0>2),yb,!0);og(a+16,ua);og(a+24,K.loaded-ua);og(a+32,K.total);z.setUint16(2*(a+40>>1),y.readyState,!0);3<=y.readyState&&0===y.status&&0>1),y.status,!0);y.statusText&&E(y.statusText,v,a+44,64);d?.(a,y,K);yb&&qf(yb)}};y.onreadystatechange=K=>{wh.has(Ca)&&(z.setUint16(2*(a+40>>1),y.readyState,!0),2<=y.readyState&&z.setUint16(2*(a+42>>1),y.status,!0),e?.(a,y,K))};try{y.send(g)}catch(K){c?.(a,y,K)}}else c(a,0,"no url specified!")} -var na={},zh=()=>{if(!yh){var a={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:wa||"./this.program"},b;for(b in na)void 0===na[b]?delete a[b]:a[b]=na[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);yh=c}return yh},yh,Ah=[31,29,31,30,31,30,31,31,30,31,30,31],Bh=[31,28,31,30,31,30,31,31,30,31,30,31],sa,ra=(a,b,c)=>{a=h["dynCall_"+a];return c&&c.length?a.apply(null, -[b].concat(c)):a.call(null,b)};function oc(a,b,c,d){a||=this;this.parent=a;this.Yi=a.Yi;this.uj=null;this.id=fc++;this.name=b;this.mode=c;this.Pi={};this.Ri={};this.Bj=d}Object.defineProperties(oc.prototype,{read:{get:function(){return 365===(this.mode&365)},set:function(a){a?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146===(this.mode&146)},set:function(a){a?this.mode|=146:this.mode&=-147}},dl:{get:function(){return H(this.mode)}},sk:{get:function(){return 8192===(this.mode&61440)}}}); -Cc();gc=Array(4096);oa(G,"/");k("/tmp");k("/home");k("/home/web_user");(function(){k("/dev");Cb(259,{read:()=>0,write:(d,e,f,g)=>g});xc("/dev/null",259);Bb(1280,Eb);Bb(1536,Fb);xc("/dev/tty",1280);xc("/dev/tty1",1536);var a=new Uint8Array(1024),b=0,c=()=>{0===b&&(b=tb(a).byteLength);return a[--b]};Gc("/dev","random",c);Gc("/dev","urandom",c);k("/dev/shm");k("/dev/shm/tmp")})(); -(function(){k("/proc");var a=k("/proc/self");k("/proc/self/fd");oa({Yi(){var b=Kb(a,"fd",16895,73);b.Pi={yj(c,d){var e=L(+d);c={parent:null,Yi:{Aj:"fake"},Pi:{Cj:()=>e.path}};return c.parent=c}};return b}},"/proc/self/fd")})();h.FS_createPath=Ec;h.FS_createDataFile=Sb;h.FS_createPreloadedFile=Tb;h.FS_unlink=bc;h.FS_createLazyFile=Ic;h.FS_createDevice=Gc; -h.requestFullscreen=function(a,b){function c(){sd=!1;var f=d.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===f?(d.exitFullscreen=Ad,yd&&d.requestPointerLock(),sd=!0,zd?("undefined"!=typeof SDL&&(f=z.getUint32(4*(SDL.screen>>2),!0),z.setInt32(4*(SDL.screen>>2),f|8388608,!0)),Ed(h.canvas),Dd()):Ed(d)):(f.parentNode.insertBefore(d,f),f.parentNode.removeChild(f),zd?("undefined"!= -typeof SDL&&(f=z.getUint32(4*(SDL.screen>>2),!0),z.setInt32(4*(SDL.screen>>2),f&-8388609,!0)),Ed(h.canvas),Dd()):Ed(d));h.onFullScreen?.(sd);h.onFullscreen?.(sd)}yd=a;zd=b;"undefined"==typeof yd&&(yd=!0);"undefined"==typeof zd&&(zd=!1);var d=h.canvas;xd||(xd=!0,document.addEventListener("fullscreenchange",c,!1),document.addEventListener("mozfullscreenchange",c,!1),document.addEventListener("webkitfullscreenchange",c,!1),document.addEventListener("MSFullscreenChange",c,!1));var e=document.createElement("div"); -d.parentNode.insertBefore(e,d);e.appendChild(d);e.requestFullscreen=e.requestFullscreen||e.mozRequestFullScreen||e.msRequestFullscreen||(e.webkitRequestFullscreen?()=>e.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT):null)||(e.webkitRequestFullScreen?()=>e.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT):null);e.requestFullscreen()};h.requestAnimationFrame=$c;h.setCanvasSize=function(a,b,c){Ed(h.canvas,a,b);c||Dd()};h.pauseMainLoop=qd;h.resumeMainLoop=rd; -h.getUserMedia=function(a){let b;(b=window).getUserMedia||(b.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia);window.getUserMedia(a)}; -h.createContext=function(a,b,c,d){if(b&&h.ej&&a==h.canvas)return h.ej;var e;if(b){var f={antialias:!1,alpha:!1,bk:2};if(d)for(var g in d)f[g]=d[g];if("undefined"!=typeof ce&&(e=Zd(a,f)))var m=Rd[e].oj}else m=a.getContext("2d");if(!m)return null;c&&(b||"undefined"==typeof S||Ga("cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),h.ej=m,b&&ae(e),h.tl=b,ud.forEach(n=>n()),Qb());return m};for(var S,Ch=0;32>Ch;++Ch)Zf.push(Array(Ch));wh=new vh; -Object.assign(vh.prototype,{get(a){return this.kj[a]},has(a){return void 0!==this.kj[a]},Fj(a){var b=this.pk.pop()||this.kj.length;this.kj[b]=a;return b},Sk(a){this.kj[a]=void 0;this.pk.push(a)}}); -var Ph={G:function(a,b,c){Mc=c;try{var d=L(a);switch(b){case 0:var e=Nc();if(0>e)return-28;for(;ec[e];)e++;return tc(d,e).fd;case 1:case 2:return 0;case 3:return d.flags;case 4:return e=Nc(),d.flags|=e,0;case 5:return e=Nc(),z.setInt16(2*(e+0>>1),2,!0),0;case 6:case 7:return 0;case 16:case 8:return-28;case 9:var f=4*(Dh()>>2);z.setInt32(f,28,!0);return-1;default:return-28}}catch(g){if("undefined"==typeof M||"ErrnoError"!==g.name)throw g;return-g.Vi}},Cd:function(a,b){try{var c=L(a);return Lc(Wb,c.path, -b)}catch(d){if("undefined"==typeof M||"ErrnoError"!==d.name)throw d;return-d.Vi}},yd:function(a,b,c){try{var d=L(a);d.pj||(d.pj=Vb(d.path));a=0;for(var e=Bc(d,0,1),f=Math.floor(e/280);f>3]=BigInt(m);Oa[b+a+8>>3]=BigInt(280*(f+1));z.setInt16(2*(b+a+16>>1),280,!0);u[b+a+ -18>>0]=n;E(g,v,b+a+19,256);a+=280;f+=1}Bc(d,280*f,0);return a}catch(r){if("undefined"==typeof M||"ErrnoError"!==r.name)throw r;return-r.Vi}},Kd:function(a,b,c){Mc=c;try{var d=L(a);switch(b){case 21509:return d.Si?0:-59;case 21505:if(!d.Si)return-59;if(d.Si.jj.al){b=[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var e=Nc();z.setInt32(4*(e>>2),25856,!0);z.setInt32(4*(e+4>>2),5,!0);z.setInt32(4*(e+8>>2),191,!0);z.setInt32(4*(e+12>>2),35387,!0);for(var f=0;32>f;f++)u[e+f+ -17>>0]=b[f]||0}return 0;case 21510:case 21511:case 21512:return d.Si?0:-59;case 21506:case 21507:case 21508:if(!d.Si)return-59;if(d.Si.jj.bl)for(e=Nc(),z.getInt32(4*(e>>2),!0),z.getInt32(4*(e+4>>2),!0),z.getInt32(4*(e+8>>2),!0),z.getInt32(4*(e+12>>2),!0),b=[],f=0;32>f;f++)b.push(u[e+f+17>>0]);return 0;case 21519:if(!d.Si)return-59;e=Nc();z.setInt32(4*(e>>2),0,!0);return 0;case 21520:return d.Si?-28:-59;case 21531:e=Nc();if(!d.Ri.$k)throw new F(59);return d.Ri.$k(d,b,e);case 21523:if(!d.Si)return-59; -d.Si.jj.cl&&(f=[24,80],e=Nc(),z.setInt16(2*(e>>1),f[0],!0),z.setInt16(2*(e+2>>1),f[1],!0));return 0;case 21524:return d.Si?0:-59;case 21515:return d.Si?0:-59;default:return-28}}catch(g){if("undefined"==typeof M||"ErrnoError"!==g.name)throw g;return-g.Vi}},zd:function(a,b){try{return a=a?A(v,a):"",Lc(zc,a,b)}catch(c){if("undefined"==typeof M||"ErrnoError"!==c.name)throw c;return-c.Vi}},xd:function(a,b,c){try{return b=b?A(v,b):"",b=Kc(a,b),b=pb(b),"/"===b[b.length-1]&&(b=b.substr(0,b.length-1)),k(b, -c),0}catch(d){if("undefined"==typeof M||"ErrnoError"!==d.name)throw d;return-d.Vi}},Ad:function(a,b,c,d){try{b=b?A(v,b):"";var e=d&256;b=Kc(a,b,d&4096);return Lc(e?zc:Wb,b,c)}catch(f){if("undefined"==typeof M||"ErrnoError"!==f.name)throw f;return-f.Vi}},va:function(a,b,c,d){Mc=d;try{b=b?A(v,b):"";b=Kc(a,b);var e=d?Nc():0;return Xb(b,c,e).fd}catch(f){if("undefined"==typeof M||"ErrnoError"!==f.name)throw f;return-f.Vi}},Bd:function(a,b){try{return a=a?A(v,a):"",Lc(Wb,a,b)}catch(c){if("undefined"==typeof M|| -"ErrnoError"!==c.name)throw c;return-c.Vi}},Sc:function(a,b,c){try{return b=b?A(v,b):"",b=Kc(a,b),0===c?bc(b):512===c?ac(b):Ga("Invalid flags passed to unlinkat"),0}catch(d){if("undefined"==typeof M||"ErrnoError"!==d.name)throw d;return-d.Vi}},wf:function(a){if(wh.has(a)){var b=wh.get(a);wh.Sk(a);0b.readyState&&b.abort()}},Td:()=>1,Fb:()=>{throw Infinity;},Ld:function(a,b){a=-9007199254740992>a||9007199254740992>2),a.getSeconds(), -!0);z.setInt32(4*(b+4>>2),a.getMinutes(),!0);z.setInt32(4*(b+8>>2),a.getHours(),!0);z.setInt32(4*(b+12>>2),a.getDate(),!0);z.setInt32(4*(b+16>>2),a.getMonth(),!0);z.setInt32(4*(b+20>>2),a.getFullYear()-1900,!0);z.setInt32(4*(b+24>>2),a.getDay(),!0);z.setInt32(4*(b+28>>2),(Oc(a.getFullYear())?Pc:Qc)[a.getMonth()]+a.getDate()-1|0,!0);z.setInt32(4*(b+36>>2),-(60*a.getTimezoneOffset()),!0);var c=(new Date(a.getFullYear(),6,1)).getTimezoneOffset(),d=(new Date(a.getFullYear(),0,1)).getTimezoneOffset(); -z.setInt32(4*(b+32>>2),(c!=d&&a.getTimezoneOffset()==Math.min(d,c))|0,!0)},Hd:function(a,b,c,d,e,f,g){e=-9007199254740992>e||9007199254740992>2),n.kj,!0);z.setUint32(4*(g>>2),q,!0);return 0}catch(r){if("undefined"==typeof M||"ErrnoError"!==r.name)throw r;return-r.Vi}}, -Id:function(a,b,c,d,e,f){f=-9007199254740992>f||9007199254740992{function d(n){return(n=n.toTimeString().match(/\(([A-Za-z ]+)\)$/))?n[1]:"GMT"}var e=(new Date).getFullYear(),f=new Date(e,0,1),g=new Date(e,6,1);e=f.getTimezoneOffset();var m=g.getTimezoneOffset(); -z.setUint32(4*(a>>2),60*Math.max(e,m),!0);z.setInt32(4*(b>>2),Number(e!=m),!0);a=d(f);b=d(g);a=Rc(a);b=Rc(b);m>2),a,!0),z.setUint32(4*(c+4>>2),b,!0)):(z.setUint32(4*(c>>2),b,!0),z.setUint32(4*(c+4>>2),a,!0))},m:()=>{Ga("")},cd:a=>{if(12448==a)return N=12288,1;N=12300;return 0},od:(a,b,c,d,e)=>{if(62E3!=a)N=12296,c=0;else{if(b)for(;;){a=z.getInt32(4*(b>>2),!0);if(12321==a)a=z.getInt32(4*(b+4>>2),!0),O.alpha=0>2),!0),O.depth=0>2),!0),O.stencil=0>2),!0),O.antialias=0>2),!0),O.antialias=1==a;else if(12544==a)a=z.getInt32(4*(b+4>>2),!0),O.Fl=12547!=a;else if(12344==a)break;b+=8}c&&d||e?(e&&z.setInt32(4*(e>>2),1,!0),c&&0>2),62002,!0),N=12288,c=1):(N=12300,c=0)}return c},md:(a,b,c,d)=>{if(62E3!=a)return N=12296,0;for(a=1;;){b=z.getInt32(4*(d>>2),!0);if(12440==b)a=z.getInt32(4*(d+4>>2),!0);else if(12344== -b)break;else return N=12292,0;d+=8}if(2>a||3{if(62E3!=a)return N=12296,0;if(62002!=b)return N=12293,0;N=12288;return 62006},ld:(a,b)=>{if(62E3!=a)return N=12296,0;if(62004!=b)return N=12294,0;a=Kd;$d===Rd[a]&&($d=null);if("object"==typeof ue)for(var c=Rd[a].oj.canvas,d=0;d{if(62E3!=a)return N=12296,0;if(62006!=b)return N=12301,1;Hd==b&&(Hd=0);Id==b&&(Id=0);N=12288;return 1},nd:(a,b,c,d)=>{if(62E3!=a)return N=12296,0;if(62002!=b)return N=12293,0;if(!d)return N=12300,0;N=12288;switch(c){case 12320:return z.setInt32(4*(d>>2),O.alpha?32:24,!0),1;case 12321:return z.setInt32(4*(d>>2),O.alpha?8:0,!0),1;case 12322:return z.setInt32(4*(d>>2),8,!0),1;case 12323:return z.setInt32(4*(d>>2),8,!0), -1;case 12324:return z.setInt32(4*(d>>2),8,!0),1;case 12325:return z.setInt32(4*(d>>2),O.depth?24:0,!0),1;case 12326:return z.setInt32(4*(d>>2),O.stencil?8:0,!0),1;case 12327:return z.setInt32(4*(d>>2),12344,!0),1;case 12328:return z.setInt32(4*(d>>2),62002,!0),1;case 12329:return z.setInt32(4*(d>>2),0,!0),1;case 12330:return z.setInt32(4*(d>>2),4096,!0),1;case 12331:return z.setInt32(4*(d>>2),16777216,!0),1;case 12332:return z.setInt32(4*(d>>2),4096,!0),1;case 12333:return z.setInt32(4*(d>>2),0,!0), -1;case 12334:return z.setInt32(4*(d>>2),0,!0),1;case 12335:return z.setInt32(4*(d>>2),12344,!0),1;case 12337:return z.setInt32(4*(d>>2),O.antialias?4:0,!0),1;case 12338:return z.setInt32(4*(d>>2),O.antialias?1:0,!0),1;case 12339:return z.setInt32(4*(d>>2),4,!0),1;case 12340:return z.setInt32(4*(d>>2),12344,!0),1;case 12341:case 12342:case 12343:return z.setInt32(4*(d>>2),-1,!0),1;case 12345:case 12346:return z.setInt32(4*(d>>2),0,!0),1;case 12347:return z.setInt32(4*(d>>2),0,!0),1;case 12348:return z.setInt32(4* -(d>>2),1,!0),1;case 12349:case 12350:return z.setInt32(4*(d>>2),0,!0),1;case 12351:return z.setInt32(4*(d>>2),12430,!0),1;case 12352:return z.setInt32(4*(d>>2),4,!0),1;case 12354:return z.setInt32(4*(d>>2),0,!0),1;default:return N=12292,0}},sd:a=>{N=12288;return 0!=a&&1!=a?0:62E3},ad:()=>N,qd:(a,b,c)=>{if(62E3!=a)return N=12296,0;b&&z.setInt32(4*(b>>2),1,!0);c&&z.setInt32(4*(c>>2),4,!0);Fd=!0;N=12288;return 1},id:(a,b,c,d)=>{if(62E3!=a)return N=12296,0;if(0!=d&&62004!=d)return N=12294,0;if(0!=c&& -62006!=c||0!=b&&62006!=b)return N=12301,0;ae(d?Kd:null);Gd=d;Id=b;Hd=c;N=12288;return 1},bd:(a,b)=>{if(62E3!=a)return N=12296,0;N=12288;if(Jd[b])return Jd[b];switch(b){case 12371:a=Rc("Emscripten");break;case 12372:a=Rc("1.4 Emscripten EGL");break;case 12373:a=Rc("");break;case 12429:a=Rc("OpenGL_ES");break;default:return N=12300,0}return Jd[b]=a},hd:()=>{if(Fd)if(h.ej)if(h.ej.isContextLost())N=12302;else return N=12288,1;else N=12290;else N=12289;return 0},fd:(a,b)=>{if(62E3!=a)return N=12296,0; -0==b?bd(0,0):bd(1,b);N=12288;return 1},pd:a=>{if(62E3!=a)return N=12296,0;Id=Hd=Gd=0;Fd=!1;N=12288;return 1},dd:()=>{N=12288;return 1},ed:()=>{N=12288;return 1},z:(a,b,c)=>{b=ee(b,c);return jb[a].apply(null,b)},e:(a,b,c)=>{b=ee(b,c);return jb[a].apply(null,b)},td:(a,b,c)=>{b=ee(b,c);return jb[a].apply(null,b)},ta:()=>{qd();Uc=null},J:()=>Date.now(),Uc:()=>{if(!te())return-1;me(Re);var a=Ie[1];if(a.exitFullscreen)a.fullscreenElement&&a.exitFullscreen();else if(a.webkitExitFullscreen)a.webkitFullscreenElement&& -a.webkitExitFullscreen();else return-1;return 0},_c:()=>{me(Se);if(document.exitPointerLock)document.exitPointerLock();else return-1;return 0},Jd:(a,b)=>{if(!Ia)if(0===We){We=1;var c=a+20;mf(c);Y=c;of(c);c=T();z.setUint32(4*(a+8>>2),c,!0);$e=b}else We=0,pf(),Y=null},r:()=>devicePixelRatio,j:(a,b,c)=>{a=V(a);if(!a)return-4;a=Qe(a);z.setFloat64(8*(b>>3),a.width,!0);z.setFloat64(8*(c>>3),a.height,!0);return 0},ra:(a,b)=>{if(0>a||a>=ve.length)return-5;if(!ve[a])return-7;rf(b,ve[a]);return 0},Gd:()=>2147483648, -I:Yc,ud:()=>ve.length,$c:(a,b)=>{z.setInt32(4*(a>>2),screen.width,!0);z.setInt32(4*(b>>2),screen.height,!0)},_e:sf,Pe:tf,Uf:(a,b)=>{S.beginQuery(a,R[b])},nb:(a,b)=>{S.lj.beginQueryEXT(a,R[b])},zf:function(a){S.beginTransformFeedback(a)},Ee:uf,te:vf,uf:(a,b,c)=>{S.bindBufferBase(a,b,Md[c])},xf:(a,b,c,d,e)=>{S.bindBufferRange(a,b,Md[c],d,e)},ie:wf,Zd:(a,b)=>{S.bindRenderbuffer(a,Od[b])},xe:(a,b)=>{S.bindSampler(a,Sd[b])},Sd:xf,oe:(a,b)=>{S.bindTransformFeedback(a,Td[b])},Ef:yf,Ig:yf,Md:function(a,b, -c,d){S.blendColor(a,b,c,d)},Ed:function(a){S.blendEquation(a)},vd:zf,rd:function(a,b){S.blendFunc(a,b)},gd:Af,If:Bf,Zc:Cf,Yc:Df,Xc:function(a){return S.checkFramebufferStatus(a)},Rc:Ef,We:function(a,b,c,d){S.clearBufferfi(a,b,c,d)},Xe:(a,b,c)=>{S.clearBufferfv(a,b,w,c>>2)},Ze:(a,b,c)=>{S.clearBufferiv(a,b,Ma,c>>2)},Ye:(a,b,c)=>{S.clearBufferuiv(a,b,Na,c>>2)},Mc:Ff,Dc:Gf,tc:function(a){S.clearStencil(a)},He:(a,b,c)=>{c=Number(c);return S.clientWaitSync(Ud[a],b,c)},lc:(a,b,c,d)=>{S.colorMask(!!a,!!b, -!!c,!!d)},bc:Hf,Sb:If,Zf:(a,b,c,d,e,f,g,m,n)=>{S.fj?S.compressedTexImage3D(a,b,c,d,e,f,g,m,n):S.compressedTexImage3D(a,b,c,d,e,f,g,v,n,m)},Kb:Jf,Yf:(a,b,c,d,e,f,g,m,n,q,r)=>{S.fj?S.compressedTexSubImage3D(a,b,c,d,e,f,g,m,n,q,r):S.compressedTexSubImage3D(a,b,c,d,e,f,g,m,n,v,r,q)},Ue:function(a,b,c,d,e){S.copyBufferSubData(a,b,c,d,e)},Eb:function(a,b,c,d,e,f,g,m){S.copyTexImage2D(a,b,c,d,e,f,g,m)},Cb:function(a,b,c,d,e,f,g,m){S.copyTexSubImage2D(a,b,c,d,e,f,g,m)},_f:function(a,b,c,d,e,f,g,m,n){S.copyTexSubImage3D(a, -b,c,d,e,f,g,m,n)},Bb:Kf,Ab:Lf,zb:Mf,xb:Nf,wb:Of,vb:Pf,Wf:(a,b)=>{for(var c=0;c>2),!0),e=R[d];e&&(S.deleteQuery(e),R[d]=null)}},uc:(a,b)=>{for(var c=0;c>2),!0),e=R[d];e&&(S.lj.deleteQueryEXT(e),R[d]=null)}},ub:(a,b)=>{for(var c=0;c>2),!0),e=Od[d];e&&(S.deleteRenderbuffer(e),e.name=0,Od[d]=null)}},ze:(a,b)=>{for(var c=0;c>2),!0),e=Sd[d];e&&(S.deleteSampler(e),e.name= -0,Sd[d]=null)}},tb:Qf,Ie:a=>{if(a){var b=Ud[a];b&&(S.deleteSync(b),b.name=0,Ud[a]=null)}},sb:Rf,ne:(a,b)=>{for(var c=0;c>2),!0),e=Td[d];e&&(S.deleteTransformFeedback(e),e.name=0,Td[d]=null)}},Df:Sf,xg:Sf,rb:Tf,qb:Uf,pb:function(a,b){S.depthRange(a,b)},ob:(a,b)=>{S.detachShader(P[a],Q[b])},mb:Vf,lb:Wf,kb:Xf,Me:Yf,Hf:Yf,Xd:Yf,gg:Yf,Yd:Yf,Pf:$f,eg:$f,Sf:$f,jb:ag,Le:bg,vf:bg,Vd:bg,Wd:bg,fg:bg,cg:(a,b,c,d,e,f)=>{S.drawElements(a,d,e,f)},ib:cg,hb:dg,Tf:function(a){S.endQuery(a)}, -cb:a=>{S.lj.endQueryEXT(a)},yf:function(){S.endTransformFeedback()},Ke:(a,b)=>(a=S.fenceSync(a,b))?(b=Xd(Ud),a.name=b,Ud[b]=a,b):0,gb:function(){S.finish()},fb:function(){S.flush()},eb:(a,b,c,d)=>{S.framebufferRenderbuffer(a,b,c,Od[d])},db:eg,Ff:(a,b,c,d,e)=>{S.framebufferTextureLayer(a,b,Pd[c],d,e)},bb:fg,ab:hg,_a:ig,Xf:(a,b)=>{gg(a,b,"createQuery",R)},Fd:(a,b)=>{for(var c=0;c>2),z.setInt32(d,0,!0);break}var e=Xd(R);d.name=e;R[e]= -d;z.setInt32(4*(b+4*c>>2),e,!0)}},Za:(a,b)=>{gg(a,b,"createRenderbuffer",Od)},Ae:(a,b)=>{gg(a,b,"createSampler",Sd)},Ya:jg,me:(a,b)=>{gg(a,b,"createTransformFeedback",Td)},Cf:kg,mg:kg,$a:lg,Xa:(a,b,c,d,e,f,g)=>{mg("getActiveAttrib",a,b,c,d,e,f,g)},Wa:ng,Oe:(a,b,c,d,e)=>{a=P[a];if(a=S.getActiveUniformBlockName(a,b))e&&0>2),c,!0)):d&&z.setInt32(4*(d>>2),0,!0)},Qe:(a,b,c,d)=>{a=P[a];if(35393==c)z.setInt32(4*(d>>2),S.getActiveUniformBlockName(a,b).length+1,!0);else if(a= -S.getActiveUniformBlockParameter(a,b,c),null!==a)if(35395==c)for(c=0;c>2),a[c],!0);else z.setInt32(4*(d>>2),a,!0)},Se:(a,b,c,d,e)=>{a=P[a];for(var f=[],g=0;g>2),!0));if(a=S.getActiveUniforms(a,f,d))for(b=a.length,g=0;g>2),a[g],!0)},Va:(a,b,c,d)=>{a=S.getAttachedShaders(P[a]);var e=a.length;e>b&&(e=b);z.setInt32(4*(c>>2),e,!0);for(b=0;b>2),Q.indexOf(a[b]),!0)},Ua:(a,b)=>S.getAttribLocation(P[a], -b?A(v,b):""),Sa:(a,b)=>pg(a,b,4),Be:(a,b,c)=>{og(c,S.getBufferParameter(a,b))},Ra:(a,b,c)=>{c&&z.setInt32(4*(c>>2),S.getBufferParameter(a,b),!0)},Qa:()=>S.getError(),Pa:(a,b)=>pg(a,b,2),hf:(a,b)=>S.getFragDataLocation(P[a],b?A(v,b):""),Oa:(a,b,c,d)=>{a=S.getFramebufferAttachmentParameter(a,b,c);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;z.setInt32(4*(d>>2),a,!0)},Ce:(a,b,c)=>qg(a,b,c,1),Fe:(a,b)=>{pg(a,b,1)},Af:(a,b,c)=>qg(a,b,c,0),Na:rg,ae:(a,b,c,d,e)=>{a=S.getInternalformatParameter(a, -b,c);if(null!==a)for(b=0;b>2),a[b],!0)},he:()=>{},La:sg,Ma:tg,ch:ug,yh:vg,Tg:ug,Qf:(a,b,c)=>{a=S.getQueryParameter(R[a],b);var d;"boolean"==typeof a?d=a?1:0:d=a;z.setInt32(4*(c>>2),d,!0)},nh:vg,Rf:(a,b,c)=>{z.setInt32(4*(c>>2),S.getQuery(a,b),!0)},Ia:(a,b,c)=>{c&&(a=S.lj.getQueryEXT(a,b),z.setInt32(4*(c>>2),a,!0))},Ka:(a,b,c)=>{c&&z.setInt32(4*(c>>2),S.getRenderbufferParameter(a,b),!0)},qe:(a,b,c)=>{z.setFloat32(4*(c>>2),S.getSamplerParameter(Sd[a],b),!0)},re:(a, -b,c)=>{z.setInt32(4*(c>>2),S.getSamplerParameter(Sd[a],b),!0)},Ha:wg,Ga:(a,b,c,d)=>{a=S.getShaderPrecisionFormat(a,b);z.setInt32(4*(c>>2),a.rangeMin,!0);z.setInt32(4*(c+4>>2),a.rangeMax,!0);z.setInt32(4*(d>>2),a.precision,!0)},Fa:(a,b,c,d)=>{if(a=S.getShaderSource(Q[a]))b=0>2),b,!0)},Ja:xg,Ea:yg,Ve:zg,De:(a,b,c,d,e)=>{a=S.getSyncParameter(Ud[a],b);null!==a&&(z.setInt32(4*(e>>2),a,!0),d&&z.setInt32(4*(d>>2),1,!0))},Da:(a,b,c)=>{c&&z.setFloat32(4*(c>>2),S.getTexParameter(a, -b),!0)},Ca:(a,b,c)=>{c&&z.setInt32(4*(c>>2),S.getTexParameter(a,b),!0)},sf:(a,b,c,d,e,f,g)=>{a=P[a];if(a=S.getTransformFeedbackVarying(a,b))g&&0>2),c,!0)):d&&z.setInt32(4*(d>>2),0,!0),e&&z.setInt32(4*(e>>2),a.size,!0),f&&z.setInt32(4*(f>>2),a.type,!0)},Re:(a,b)=>S.getUniformBlockIndex(P[a],b?A(v,b):""),Te:(a,b,c,d)=>{a=P[a];for(var e=[],f=0;f>2),!0)));if(a=S.getUniformIndices(a,e))for(b=a.length,f=0;f>2),a[f],!0)},za:Cg,Ba:Eg,Aa:Fg,jf:(a,b,c)=>Dg(a,b,c,0),qf:Hg,pf:Hg,wh:(a,b,c)=>{c&&z.setInt32(4*(c>>2),S.getVertexAttribOffset(a,b),!0)},ya:(a,b,c)=>{Gg(a,b,c,2)},xh:(a,b,c)=>{Gg(a,b,c,5)},vh:function(a,b){S.hint(a,b)},ee:(a,b,c)=>{for(var d=Zf[b],e=0;e>2),!0);S.invalidateFramebuffer(a,d)},de:(a,b,c,d,e,f,g)=>{for(var m=Zf[b],n=0;n>2),!0);S.invalidateSubFramebuffer(a,m,d,e,f,g)},uh:a=>(a=Md[a])?S.isBuffer(a):0,th:function(a){return S.isEnabled(a)}, -sh:a=>(a=Nd[a])?S.isFramebuffer(a):0,rh:a=>(a=P[a])?S.isProgram(a):0,Vf:a=>(a=R[a])?S.isQuery(a):0,yb:a=>(a=R[a])?S.lj.isQueryEXT(a):0,qh:a=>(a=Od[a])?S.isRenderbuffer(a):0,ye:a=>(a=Sd[a])?S.isSampler(a):0,ph:a=>(a=Q[a])?S.isShader(a):0,Je:a=>S.isSync(Ud[a]),oh:a=>(a=Pd[a])?S.isTexture(a):0,le:a=>S.isTransformFeedback(Td[a]),Bf:Ig,bg:Ig,mh:function(a){S.lineWidth(a)},lh:Jg,ke:function(){S.pauseTransformFeedback()},kh:Kg,jh:function(a,b){S.polygonOffset(a,b)},ge:()=>{},fe:()=>{},Ta:(a,b)=>{S.lj.queryCounterEXT(R[a], -b)},dg:Lg,ih:Ng,hh:()=>{},gh:function(a,b,c,d){S.renderbufferStorage(a,b,c,d)},Gf:function(a,b,c,d,e){S.renderbufferStorageMultisample(a,b,c,d,e)},je:function(){S.resumeTransformFeedback()},fh:(a,b)=>{S.sampleCoverage(a,!!b)},ue:(a,b,c)=>{S.samplerParameterf(Sd[a],b,c)},se:(a,b,c)=>{c=z.getFloat32(4*(c>>2),!0);S.samplerParameterf(Sd[a],b,c)},we:(a,b,c)=>{S.samplerParameteri(Sd[a],b,c)},ve:(a,b,c)=>{c=z.getInt32(4*(c>>2),!0);S.samplerParameteri(Sd[a],b,c)},eh:Og,dh:()=>{},bh:Pg,ah:function(a,b,c){S.stencilFunc(a, -b,c)},$g:function(a,b,c,d){S.stencilFuncSeparate(a,b,c,d)},_g:function(a){S.stencilMask(a)},Zg:function(a,b){S.stencilMaskSeparate(a,b)},Yg:function(a,b,c){S.stencilOp(a,b,c)},Xg:function(a,b,c,d){S.stencilOpSeparate(a,b,c,d)},Wg:Qg,ag:(a,b,c,d,e,f,g,m,n,q)=>{if(S.fj)S.texImage3D(a,b,c,d,e,f,g,m,n,q);else if(q){var r=Mg(n);S.texImage3D(a,b,c,d,e,f,g,m,n,r,q>>31-Math.clz32(r.BYTES_PER_ELEMENT))}else S.texImage3D(a,b,c,d,e,f,g,m,n,null)},Vg:function(a,b,c){S.texParameterf(a,b,c)},Ug:(a,b,c)=>{c=z.getFloat32(4* -(c>>2),!0);S.texParameterf(a,b,c)},Sg:Rg,Rg:(a,b,c)=>{c=z.getInt32(4*(c>>2),!0);S.texParameteri(a,b,c)},ce:function(a,b,c,d,e){S.texStorage2D(a,b,c,d,e)},be:function(a,b,c,d,e,f){S.texStorage3D(a,b,c,d,e,f)},Qg:Sg,$f:(a,b,c,d,e,f,g,m,n,q,r)=>{if(S.fj)S.texSubImage3D(a,b,c,d,e,f,g,m,n,q,r);else if(r){var t=Mg(q);S.texSubImage3D(a,b,c,d,e,f,g,m,n,q,t,r>>31-Math.clz32(t.BYTES_PER_ELEMENT))}else S.texSubImage3D(a,b,c,d,e,f,g,m,n,q,null)},tf:(a,b,c,d)=>{a=P[a];for(var e=[],f=0;f>2),!0)));S.transformFeedbackVaryings(a,e,d)},Pg:(a,b)=>{S.uniform1f(Z(a),b)},Og:Tg,Ng:(a,b)=>{S.uniform1i(Z(a),b)},Mg:Ug,gf:(a,b)=>{S.uniform1ui(Z(a),b)},cf:(a,b,c)=>{b&&S.uniform1uiv(Z(a),Na,c>>2,b)},Lg:(a,b,c)=>{S.uniform2f(Z(a),b,c)},Kg:Vg,Jg:(a,b,c)=>{S.uniform2i(Z(a),b,c)},Hg:Wg,ff:(a,b,c)=>{S.uniform2ui(Z(a),b,c)},bf:(a,b,c)=>{b&&S.uniform2uiv(Z(a),Na,c>>2,2*b)},Gg:(a,b,c,d)=>{S.uniform3f(Z(a),b,c,d)},Fg:Xg,Eg:(a,b,c,d)=>{S.uniform3i(Z(a),b,c,d)},Dg:Yg,ef:(a,b,c,d)=>{S.uniform3ui(Z(a), -b,c,d)},af:(a,b,c)=>{b&&S.uniform3uiv(Z(a),Na,c>>2,3*b)},Cg:(a,b,c,d,e)=>{S.uniform4f(Z(a),b,c,d,e)},Bg:Zg,Ag:(a,b,c,d,e)=>{S.uniform4i(Z(a),b,c,d,e)},zg:$g,df:(a,b,c,d,e)=>{S.uniform4ui(Z(a),b,c,d,e)},$e:(a,b,c)=>{b&&S.uniform4uiv(Z(a),Na,c>>2,4*b)},Ne:(a,b,c)=>{a=P[a];S.uniformBlockBinding(a,b,c)},yg:(a,b,c,d)=>{b&&S.uniformMatrix2fv(Z(a),!!c,w,d>>2,4*b)},Of:(a,b,c,d)=>{b&&S.uniformMatrix2x3fv(Z(a),!!c,w,d>>2,6*b)},Mf:(a,b,c,d)=>{b&&S.uniformMatrix2x4fv(Z(a),!!c,w,d>>2,8*b)},wg:ah,Nf:(a,b,c,d)=> -{b&&S.uniformMatrix3x2fv(Z(a),!!c,w,d>>2,6*b)},Kf:(a,b,c,d)=>{b&&S.uniformMatrix3x4fv(Z(a),!!c,w,d>>2,12*b)},vg:bh,Lf:(a,b,c,d)=>{b&&S.uniformMatrix4x2fv(Z(a),!!c,w,d>>2,8*b)},Jf:(a,b,c,d)=>{b&&S.uniformMatrix4x3fv(Z(a),!!c,w,d>>2,12*b)},ug:ch,tg:a=>{S.validateProgram(P[a])},sg:function(a,b){S.vertexAttrib1f(a,b)},rg:(a,b)=>{S.vertexAttrib1f(a,z.getFloat32(4*(b>>2),!0))},qg:function(a,b,c){S.vertexAttrib2f(a,b,c)},pg:(a,b)=>{S.vertexAttrib2f(a,z.getFloat32(4*(b>>2),!0),z.getFloat32(4*(b+4>>2),!0))}, -og:function(a,b,c,d){S.vertexAttrib3f(a,b,c,d)},ng:(a,b)=>{S.vertexAttrib3f(a,z.getFloat32(4*(b>>2),!0),z.getFloat32(4*(b+4>>2),!0),z.getFloat32(4*(b+8>>2),!0))},lg:function(a,b,c,d,e){S.vertexAttrib4f(a,b,c,d,e)},kg:(a,b)=>{S.vertexAttrib4f(a,z.getFloat32(4*(b>>2),!0),z.getFloat32(4*(b+4>>2),!0),z.getFloat32(4*(b+8>>2),!0),z.getFloat32(4*(b+12>>2),!0))},pe:dh,kf:dh,_d:dh,hg:dh,$d:dh,of:function(a,b,c,d,e){S.vertexAttribI4i(a,b,c,d,e)},mf:(a,b)=>{S.vertexAttribI4i(a,z.getInt32(4*(b>>2),!0),z.getInt32(4* -(b+4>>2),!0),z.getInt32(4*(b+8>>2),!0),z.getInt32(4*(b+12>>2),!0))},nf:function(a,b,c,d,e){S.vertexAttribI4ui(a,b,c,d,e)},lf:(a,b)=>{S.vertexAttribI4ui(a,z.getUint32(4*(b>>2),!0),z.getUint32(4*(b+4>>2),!0),z.getUint32(4*(b+8>>2),!0),z.getUint32(4*(b+12>>2),!0))},rf:eh,jg:fh,ig:gh,Ge:(a,b,c)=>{c=Number(c);S.waitSync(Ud[a],b,c)},H:()=>1,Ah:()=>!0,Vc:(a,b,c)=>{b={ek:z.getInt32(4*(c>>2),!0),Zj:z.getInt32(4*(c+4>>2),!0),Rk:z.getInt32(4*(c+8>>2),!0),Nk:b,Hj:z.getInt32(4*(c+12>>2),!0),kk:z.getInt32(4*(c+ -16>>2),!0)};return hh(a,b)},oa:(a,b)=>{a=V(a);return a?a.requestPointerLock?ne()?Se(a):b?(le(Se,2,[a]),1):-2:-1:-4},Ud:a=>{var b=v.length;a>>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,a+100663296);var e=Math;d=Math.max(a,d);a:{e=(e.min.call(e,2147483648,d+(65536-d%65536)%65536)-Ha.buffer.byteLength+65535)/65536;try{Ha.grow(e);Pa();var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},sa:()=>!navigator.getGamepads||ih()?-1:(ve=navigator.getGamepads())?0: --1,W:(a,b,c)=>"undefined"==typeof onbeforeunload?-1:1!==c?-5:jh(a,b),ga:(a,b,c,d)=>kh(a,b,c,d,12,"blur"),q:Me,E:(a,b,c)=>{a=V(a);if(!a)return-4;a.style.width=b+"px";a.style.height=c+"px";return 0},ha:(a,b,c,d)=>kh(a,b,c,d,13,"focus"),Z:(a,b,c,d)=>{if(!te())return-1;a=V(a);if(!a)return-4;lh(a,b,c,d,"webkitfullscreenchange");return lh(a,b,c,d,"fullscreenchange")},qa:(a,b,c)=>!navigator.getGamepads||ih()?-1:mh(a,b,c,26,"gamepadconnected"),pa:(a,b,c)=>!navigator.getGamepads||ih()?-1:mh(a,b,c,27,"gamepaddisconnected"), -aa:(a,b,c,d)=>nh(a,b,c,d,2,"keydown"),_:(a,b,c,d)=>nh(a,b,c,d,1,"keypress"),$:(a,b,c,d)=>nh(a,b,c,d,3,"keyup"),M:(a,b,c)=>{kd(()=>dynCall_v.call(null,a),b,c)},ma:(a,b,c,d)=>ph(a,b,c,d,5,"mousedown"),ka:(a,b,c,d)=>ph(a,b,c,d,33,"mouseenter"),ja:(a,b,c,d)=>ph(a,b,c,d,34,"mouseleave"),na:(a,b,c,d)=>ph(a,b,c,d,8,"mousemove"),la:(a,b,c,d)=>ph(a,b,c,d,6,"mouseup"),ba:(a,b,c,d)=>{if(!document||!document.body||!(document.body.requestPointerLock||document.body.dj||document.body.Dk||document.body.Ck))return-1; -a=V(a);if(!a)return-4;qh(a,b,c,d,"mozpointerlockchange");qh(a,b,c,d,"webkitpointerlockchange");qh(a,b,c,d,"mspointerlockchange");return qh(a,b,c,d,"pointerlockchange")},Y:(a,b,c,d)=>rh(a,b,c,d),ca:(a,b,c,d)=>sh(a,b,c,d,25,"touchcancel"),ea:(a,b,c,d)=>sh(a,b,c,d,23,"touchend"),da:(a,b,c,d)=>sh(a,b,c,d,24,"touchmove"),fa:(a,b,c,d)=>sh(a,b,c,d,22,"touchstart"),X:(a,b,c)=>th(a,b,c),ia:(a,b,c,d)=>(a=V(a))?"undefined"!=typeof a.onwheel?uh(a,b,c,d):-1:-4,Wc:a=>document.title=a?A(v,a):"",B:a=>nf(b=>pd(b, -a)),zh:function(a,b,c,d,e){function f(x){t?x():jd(x)}var g=a+112,m=z.getUint32(4*(g+36>>2),!0),n=z.getUint32(4*(g+40>>2),!0),q=z.getUint32(4*(g+44>>2),!0),r=z.getUint32(4*(g+48>>2),!0),t=!!(z.getUint32(4*(g+52>>2),!0)&64);xh(a,x=>{f(()=>{m?dynCall_vi.apply(null,[m,x]):b?.(x)})},x=>{f(()=>{n?dynCall_vi.apply(null,[n,x]):c?.(x)})},x=>{f(()=>{q?dynCall_vi.apply(null,[q,x]):d?.(x)})},x=>{f(()=>{r?dynCall_vi.apply(null,[r,x]):e?.(x)})});return a},Qd:(a,b)=>{var c=0;zh().forEach((d,e)=>{var f=b+c;z.setUint32(4* -(a+4*e>>2),f,!0);e=f;for(f=0;f>0]=d.charCodeAt(f);u[e>>0]=0;c+=d.length+1});return 0},Rd:(a,b)=>{var c=zh();z.setUint32(4*(a>>2),c.length,!0);var d=0;c.forEach(e=>d+=e.length+1);z.setUint32(4*(b>>2),d,!0);return 0},s:od,A:function(a){try{var b=L(a);Zb(b);return 0}catch(c){if("undefined"==typeof M||"ErrnoError"!==c.name)throw c;return c.Vi}},Pd:function(a,b){try{var c=L(a);u[b>>0]=c.Si?2:H(c.mode)?3:40960===(c.mode&61440)?7:4;z.setInt16(2*(b+2>>1),0,!0);Oa[b+8>>3]=BigInt(0);Oa[b+ -16>>3]=BigInt(0);return 0}catch(d){if("undefined"==typeof M||"ErrnoError"!==d.name)throw d;return d.Vi}},ua:function(a,b,c,d){try{a:{var e=L(a);a=b;for(var f,g=b=0;g>2),!0),n=z.getUint32(4*(a+4>>2),!0);a+=8;var q=e,r=m,t=n,x=f,p=u;if(0>t||0>x)throw new F(28);if(null===q.fd)throw new F(8);if(1===(q.flags&2097155))throw new F(8);if(H(q.node.mode))throw new F(31);if(!q.Ri.read)throw new F(28);var B="undefined"!=typeof x;if(!B)x=q.position;else if(!q.seekable)throw new F(70); -var D=q.Ri.read(q,p,r,t,x);B||(q.position+=D);var J=D;if(0>J){var ka=-1;break a}b+=J;if(J>2),ka,!0);return 0}catch(Ba){if("undefined"==typeof M||"ErrnoError"!==Ba.name)throw Ba;return Ba.Vi}},Od:function(a,b,c,d){b=-9007199254740992>b||9007199254740992>3]=BigInt(e.position);e.pj&&0===b&&0===c&&(e.pj=null);return 0}catch(f){if("undefined"==typeof M||"ErrnoError"!==f.name)throw f; -return f.Vi}},wd:function(a){try{var b=L(a);return nf(c=>{var d=b.node.Yi;d.type.Vj?d.type.Vj(d,!1,e=>{e?c(29):c(0)}):c(0)})}catch(c){if("undefined"==typeof M||"ErrnoError"!==c.name)throw c;return c.Vi}},xa:function(a,b,c,d){try{a:{var e=L(a);a=b;for(var f,g=b=0;g>2),!0),n=z.getUint32(4*(a+4>>2),!0);a+=8;var q=Yb(e,u,m,n,f);if(0>q){var r=-1;break a}b+=q;"undefined"!==typeof f&&(f+=q)}r=b}z.setUint32(4*(d>>2),r,!0);return 0}catch(t){if("undefined"==typeof M||"ErrnoError"!== -t.name)throw t;return t.Vi}},Ob:sf,wc:tf,vc:uf,D:vf,x:wf,O:xf,Kc:yf,zc:zf,yc:Af,Bc:Bf,y:Cf,Q:Df,Cc:Ef,Xb:Ff,Wb:Gf,Tb:Hf,Lc:If,Pc:Jf,xc:Kf,Vb:Lf,Jc:Mf,T:Nf,Fc:Of,R:Pf,C:Qf,U:Rf,cc:Sf,Ic:Tf,Pb:Uf,p:Vf,Yb:Wf,Mb:Xf,Nb:Yf,Ec:$f,Jb:ag,Lb:bg,o:cg,ac:dg,Gc:eg,Ib:fg,V:hg,Hc:ig,Qc:jg,dc:kg,Nc:lg,fc:ng,k:rg,gc:sg,w:tg,Rb:wg,P:xg,i:yg,F:zg,ec:Cg,l:Eg,v:Fg,sc:Jg,N:Kg,S:Lg,Qb:Ng,Tc:Og,Ub:Pg,d:Qg,g:Rg,Oc:Sg,rc:Tg,nc:Ug,qc:Vg,mc:Wg,pc:Xg,kc:Yg,oc:Zg,jc:$g,ic:ah,hc:bh,Ac:ch,Zb:dh,_b:eh,$b:fh,Hb:gh,K:Eh,f:Fh,u:Gh, -t:Hh,L:Ih,h:Jh,a:Kh,b:Lh,c:Mh,n:Nh,Db:Oh,wa:(a,b,c,d)=>{function e(p,B,D){for(p="number"==typeof p?p.toString():p||"";p.lengthka?-1:0J-p.getDate())B-=J-p.getDate()+1,p.setDate(1),11>D?p.setMonth(D+1):(p.setMonth(0),p.setFullYear(p.getFullYear()+1));else{p.setDate(p.getDate()+B);break}}D=new Date(p.getFullYear()+ -1,0,4);B=m(new Date(p.getFullYear(),0,4));D=m(D);return 0>=g(B,p)?0>=g(D,p)?p.getFullYear()+1:p.getFullYear():p.getFullYear()-1}var q=z.getUint32(4*(d+40>>2),!0);d={ql:z.getInt32(4*(d>>2),!0),pl:z.getInt32(4*(d+4>>2),!0),Wj:z.getInt32(4*(d+8>>2),!0),gk:z.getInt32(4*(d+12>>2),!0),Xj:z.getInt32(4*(d+16>>2),!0),sj:z.getInt32(4*(d+20>>2),!0),ij:z.getInt32(4*(d+24>>2),!0),rj:z.getInt32(4*(d+28>>2),!0),Ml:z.getInt32(4*(d+32>>2),!0),ol:z.getInt32(4*(d+36>>2),!0),rl:q?q?A(v,q):"":""};c=c?A(v,c):"";q={"%c":"%a %b %d %H:%M:%S %Y", -"%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var r in q)c=c.replace(new RegExp(r,"g"),q[r]);var t="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),x="January February March April May June July August September October November December".split(" "); -q={"%a":p=>t[p.ij].substring(0,3),"%A":p=>t[p.ij],"%b":p=>x[p.Xj].substring(0,3),"%B":p=>x[p.Xj],"%C":p=>f((p.sj+1900)/100|0,2),"%d":p=>f(p.gk,2),"%e":p=>e(p.gk,2," "),"%g":p=>n(p).toString().substring(2),"%G":p=>n(p),"%H":p=>f(p.Wj,2),"%I":p=>{p=p.Wj;0==p?p=12:12{for(var B=0,D=0;D<=p.Xj-1;B+=(Oc(p.sj+1900)?Ah:Bh)[D++]);return f(p.gk+B,3)},"%m":p=>f(p.Xj+1,2),"%M":p=>f(p.pl,2),"%n":()=>"\n","%p":p=>0<=p.Wj&&12>p.Wj?"AM":"PM","%S":p=>f(p.ql,2),"%t":()=>"\t","%u":p=> -p.ij||7,"%U":p=>f(Math.floor((p.rj+7-p.ij)/7),2),"%V":p=>{var B=Math.floor((p.rj+7-(p.ij+6)%7)/7);2>=(p.ij+371-p.rj-2)%7&&B++;if(B)53==B&&(D=(p.ij+371-p.rj)%7,4==D||3==D&&Oc(p.sj)||(B=1));else{B=52;var D=(p.ij+7-p.rj-1)%7;(4==D||5==D&&Oc(p.sj%400-1))&&B++}return f(B,2)},"%w":p=>p.ij,"%W":p=>f(Math.floor((p.rj+7-(p.ij+6)%7)/7),2),"%y":p=>(p.sj+1900).toString().substring(2),"%Y":p=>p.sj+1900,"%z":p=>{p=p.ol;var B=0<=p;p=Math.abs(p)/60;return(B?"+":"-")+String("0000"+(p/60*100+p%60)).slice(-4)},"%Z":p=> -p.rl,"%%":()=>"%"};c=c.replace(/%%/g,"\x00\x00");for(r in q)c.includes(r)&&(c=c.replace(new RegExp(r,"g"),q[r](d)));c=c.replace(/\0\0/g,"%");r=zb(c,!1);if(r.length>b)return 0;u.set(r,a);return r.length-1},Gb:function(a,b){h.setStatus(a>=b?"":"Prefetching resources\u2026 ("+a+"/"+b+")",!0)},Dd:function(){try{return!!navigator.platform.match(/mac/i)}catch(a){return!1}}},X=function(){function a(c){X=c.exports;X=Ue();Ha=X.Bh;Pa();sa=X.Hh;Ra.unshift(X.Ch);$a("wasm-instantiate");return X}var b={a:Ph};Za("wasm-instantiate"); -if(h.instantiateWasm)try{return h.instantiateWasm(b,a)}catch(c){return Ea(`Module.instantiateWasm callback failed with error: ${c}`),!1}gb(b,function(c){a(c.instance)});return{}}();h._vfs_sync_callback=(a,b,c)=>(h._vfs_sync_callback=X.Dh)(a,b,c); -var Qh=h._main=(a,b)=>(Qh=h._main=X.Eh)(a,b),C=a=>(C=X.Fh)(a),qf=a=>(qf=X.Gh)(a),Dh=()=>(Dh=X.Ih)(),Gb=(a,b)=>(Gb=X.Jh)(a,b),Rh=(a,b)=>(Rh=X.Kh)(a,b),af=(a,b)=>(af=X.Lh)(a,b),T=()=>(T=X.Mh)(),U=a=>(U=X.Nh)(a),Je=a=>(Je=X.Oh)(a),dynCall_vii=h.dynCall_vii=(a,b,c)=>(dynCall_vii=h.dynCall_vii=X.Ph)(a,b,c),Sh=h.dynCall_ii=(a,b)=>(Sh=h.dynCall_ii=X.Qh)(a,b),dynCall_vi=h.dynCall_vi=(a,b)=>(dynCall_vi=h.dynCall_vi=X.Rh)(a,b),Th=h.dynCall_viii=(a,b,c,d)=>(Th=h.dynCall_viii=X.Sh)(a,b,c,d),Uh=h.dynCall_viiii= -(a,b,c,d,e)=>(Uh=h.dynCall_viiii=X.Th)(a,b,c,d,e);h.dynCall_viiiii=(a,b,c,d,e,f)=>(h.dynCall_viiiii=X.Uh)(a,b,c,d,e,f);h.dynCall_vffff=(a,b,c,d,e)=>(h.dynCall_vffff=X.Vh)(a,b,c,d,e);h.dynCall_vf=(a,b)=>(h.dynCall_vf=X.Wh)(a,b);h.dynCall_viiiiiiii=(a,b,c,d,e,f,g,m,n)=>(h.dynCall_viiiiiiii=X.Xh)(a,b,c,d,e,f,g,m,n);var Vh=h.dynCall_viiiiiiiii=(a,b,c,d,e,f,g,m,n,q)=>(Vh=h.dynCall_viiiiiiiii=X.Yh)(a,b,c,d,e,f,g,m,n,q),Wh=h.dynCall_i=a=>(Wh=h.dynCall_i=X.Zh)(a); -h.dynCall_vff=(a,b,c)=>(h.dynCall_vff=X._h)(a,b,c);var dynCall_v=h.dynCall_v=a=>(dynCall_v=h.dynCall_v=X.$h)(a);h.dynCall_viiiiiii=(a,b,c,d,e,f,g,m)=>(h.dynCall_viiiiiii=X.ai)(a,b,c,d,e,f,g,m);var dynCall_iii=h.dynCall_iii=(a,b,c)=>(dynCall_iii=h.dynCall_iii=X.bi)(a,b,c);h.dynCall_vfi=(a,b,c)=>(h.dynCall_vfi=X.ci)(a,b,c);h.dynCall_viif=(a,b,c,d)=>(h.dynCall_viif=X.di)(a,b,c,d);h.dynCall_vif=(a,b,c)=>(h.dynCall_vif=X.ei)(a,b,c);h.dynCall_viff=(a,b,c,d)=>(h.dynCall_viff=X.fi)(a,b,c,d); -h.dynCall_vifff=(a,b,c,d,e)=>(h.dynCall_vifff=X.gi)(a,b,c,d,e);h.dynCall_viffff=(a,b,c,d,e,f)=>(h.dynCall_viffff=X.hi)(a,b,c,d,e,f);var Xh=h.dynCall_viiiiii=(a,b,c,d,e,f,g)=>(Xh=h.dynCall_viiiiii=X.ii)(a,b,c,d,e,f,g);h.dynCall_viiiiiiiiii=(a,b,c,d,e,f,g,m,n,q,r)=>(h.dynCall_viiiiiiiiii=X.ji)(a,b,c,d,e,f,g,m,n,q,r);h.dynCall_viiiiiiiiiii=(a,b,c,d,e,f,g,m,n,q,r,t)=>(h.dynCall_viiiiiiiiiii=X.ki)(a,b,c,d,e,f,g,m,n,q,r,t);h.dynCall_viifi=(a,b,c,d,e)=>(h.dynCall_viifi=X.li)(a,b,c,d,e); -var Yh=h.dynCall_iiiii=(a,b,c,d,e)=>(Yh=h.dynCall_iiiii=X.mi)(a,b,c,d,e),W=h.dynCall_iiii=(a,b,c,d)=>(W=h.dynCall_iiii=X.ni)(a,b,c,d);h.dynCall_iidiiii=(a,b,c,d,e,f,g)=>(h.dynCall_iidiiii=X.oi)(a,b,c,d,e,f,g);h.dynCall_jiji=(a,b,c,d)=>(h.dynCall_jiji=X.pi)(a,b,c,d);h.dynCall_ji=(a,b)=>(h.dynCall_ji=X.qi)(a,b);h.dynCall_iiiiiiiiiiii=(a,b,c,d,e,f,g,m,n,q,r,t)=>(h.dynCall_iiiiiiiiiiii=X.ri)(a,b,c,d,e,f,g,m,n,q,r,t);h.dynCall_iiiiiiiii=(a,b,c,d,e,f,g,m,n)=>(h.dynCall_iiiiiiiii=X.si)(a,b,c,d,e,f,g,m,n); -h.dynCall_iiiiii=(a,b,c,d,e,f)=>(h.dynCall_iiiiii=X.ti)(a,b,c,d,e,f);h.dynCall_iiiiiii=(a,b,c,d,e,f,g)=>(h.dynCall_iiiiiii=X.ui)(a,b,c,d,e,f,g);h.dynCall_vd=(a,b)=>(h.dynCall_vd=X.vi)(a,b);h.dynCall_iiji=(a,b,c,d)=>(h.dynCall_iiji=X.wi)(a,b,c,d);h.dynCall_viidi=(a,b,c,d,e)=>(h.dynCall_viidi=X.xi)(a,b,c,d,e);h.dynCall_iiif=(a,b,c,d)=>(h.dynCall_iiif=X.yi)(a,b,c,d);h.dynCall_ff=(a,b)=>(h.dynCall_ff=X.zi)(a,b); -h.dynCall_iiiiiiiiiii=(a,b,c,d,e,f,g,m,n,q,r)=>(h.dynCall_iiiiiiiiiii=X.Ai)(a,b,c,d,e,f,g,m,n,q,r);h.dynCall_viiif=(a,b,c,d,e)=>(h.dynCall_viiif=X.Bi)(a,b,c,d,e);h.dynCall_iiiiiiii=(a,b,c,d,e,f,g,m)=>(h.dynCall_iiiiiiii=X.Ci)(a,b,c,d,e,f,g,m);h.dynCall_iiiiiiiiii=(a,b,c,d,e,f,g,m,n,q)=>(h.dynCall_iiiiiiiiii=X.Di)(a,b,c,d,e,f,g,m,n,q);h.dynCall_iiidd=(a,b,c,d,e)=>(h.dynCall_iiidd=X.Ei)(a,b,c,d,e);h.dynCall_id=(a,b)=>(h.dynCall_id=X.Fi)(a,b);h.dynCall_dd=(a,b)=>(h.dynCall_dd=X.Gi)(a,b); -h.dynCall_d=a=>(h.dynCall_d=X.Hi)(a);h.dynCall_iid=(a,b,c)=>(h.dynCall_iid=X.Ii)(a,b,c);h.dynCall_di=(a,b)=>(h.dynCall_di=X.Ji)(a,b);h.dynCall_dii=(a,b,c)=>(h.dynCall_dii=X.Ki)(a,b,c);var of=a=>(of=X.Li)(a),Xe=()=>(Xe=X.Mi)(),bf=a=>(bf=X.Ni)(a),pf=()=>(pf=X.Oi)();h.___start_em_js=1142231;h.___stop_em_js=1142458;function Gh(a,b,c){var d=T();try{return dynCall_iii(a,b,c)}catch(e){U(d);if(e!==e+0)throw e;Rh(1,0)}} -function Ih(a,b,c,d,e){var f=T();try{return Yh(a,b,c,d,e)}catch(g){U(f);if(g!==g+0)throw g;Rh(1,0)}}function Hh(a,b,c,d){var e=T();try{return W(a,b,c,d)}catch(f){U(e);if(f!==f+0)throw f;Rh(1,0)}}function Eh(a){var b=T();try{return Wh(a)}catch(c){U(b);if(c!==c+0)throw c;Rh(1,0)}}function Lh(a,b,c,d){var e=T();try{Th(a,b,c,d)}catch(f){U(e);if(f!==f+0)throw f;Rh(1,0)}}function Fh(a,b){var c=T();try{return Sh(a,b)}catch(d){U(c);if(d!==d+0)throw d;Rh(1,0)}} -function Nh(a,b,c,d,e,f,g){var m=T();try{Xh(a,b,c,d,e,f,g)}catch(n){U(m);if(n!==n+0)throw n;Rh(1,0)}}function Kh(a,b,c){var d=T();try{dynCall_vii(a,b,c)}catch(e){U(d);if(e!==e+0)throw e;Rh(1,0)}}function Jh(a,b){var c=T();try{dynCall_vi(a,b)}catch(d){U(c);if(d!==d+0)throw d;Rh(1,0)}}function Mh(a,b,c,d,e){var f=T();try{Uh(a,b,c,d,e)}catch(g){U(f);if(g!==g+0)throw g;Rh(1,0)}}function Oh(a,b,c,d,e,f,g,m,n,q){var r=T();try{Vh(a,b,c,d,e,f,g,m,n,q)}catch(t){U(r);if(t!==t+0)throw t;Rh(1,0)}} -h.addRunDependency=Za;h.removeRunDependency=$a;h.FS_createPath=Ec;h.FS_createLazyFile=Ic;h.FS_createDevice=Gc; -h.ccall=(a,b,c,d,e)=>{function f(t){--md;0!==n&&U(n);return"string"===b?t?A(v,t):"":"boolean"===b?!!t:t}var g={string:t=>{var x=0;null!==t&&void 0!==t&&0!==t&&(x=Ke(t));return x},array:t=>{var x=Je(t.length);u.set(t,x);return x}};a=h["_"+a];var m=[],n=0;if(d)for(var q=0;q{g=Ke(g);z.setUint32(4*(e>>2),g,!0);e+=4});z.setUint32(4*(e>>2),0,!0);try{var f=b(c,d);od(f,!0)}catch(g){ld(g)}} -function ai(){var a=va;function b(){if(!Zh&&(Zh=!0,h.calledRun=!0,!Ia)){h.noFSInit||Dc||(Dc=!0,Cc(),h.stdin=h.stdin,h.stdout=h.stdout,h.stderr=h.stderr,h.stdin?Gc("/dev","stdin",h.stdin):yc("/dev/tty","/dev/stdin"),h.stdout?Gc("/dev","stdout",null,h.stdout):yc("/dev/tty","/dev/stdout"),h.stderr?Gc("/dev","stderr",null,h.stderr):yc("/dev/tty1","/dev/stderr"),Xb("/dev/stdin",0),Xb("/dev/stdout",1),Xb("/dev/stderr",1));hc=!1;mb(Ra);mb(Sa);if(h.onRuntimeInitialized)h.onRuntimeInitialized();ci&&bi(a); -if(h.postRun)for("function"==typeof h.postRun&&(h.postRun=[h.postRun]);h.postRun.length;){var c=h.postRun.shift();Ua.unshift(c)}mb(Ua)}}if(!(0{!Tc&&h.canvas.requestPointerLock&&(h.canvas.requestPointerLock(),c.preventDefault())},!1))}}var Xc=!1,Yc=void 0,Zc=void 0;function $c(){if(!Sc)return!1;(document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||(()=>{})).apply(document,[]);return!0} +function Wc(a){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[a.substr(a.lastIndexOf(".")+1)]}var ad=[];function bd(){var a=h.canvas;ad.forEach(b=>b(a.width,a.height))} +function cd(a,b,c){b&&c?(a.Gl=b,a.jl=c):(b=a.Gl,c=a.jl);var d=b,e=c;h.forcedAspectRatio&&0{for(var b=kd++,c=a.length;c{for(var e=0;e>2),g,!0)}},Bd=(a,b)=>{if(h.preinitializedWebGLContext){var c=h.preinitializedWebGLContext;b.kk=Number(c.getParameter(c.VERSION).match(/^WebGL (\d+).\d+/)[1])}else a.aj|| +(a.aj=a.getContext,a.getContext=function(d,e){e=a.aj(d,e);return"webgl"==d==e instanceof WebGLRenderingContext?e:null}),c=a.getContext("webgl2",b);return c?Ad(c,b):0},Ad=(a,b)=>{var c=yd(qd);b={handle:c,attributes:b,version:b.kk,rj:a};a.canvas&&(a.canvas.Dj=b);qd[c]=b;return c},Dd=a=>{Cd=qd[a];h.hj=N=Cd?.rj},Ed={},Cd,Fd=a=>{var b=wb(a)+1,c=B(b);c&&C(a,v,c,b);return c},Wd=(a,b,c,d,e)=>{function f(){return g=Zd;)Zd+=1E3/60;setTimeout(a,Math.max(Zd-b,0))}} +var Nd={},Kd,Md,Sd,ae,Vd=(a,b)=>{Pd=a;Qd=b;if(Hd)if(Jd||=!0,0==a)Rd=function(){setTimeout(Kd,Math.max(0,Sd+b-performance.now())|0)};else if(1==a)Rd=function(){$d(Kd)};else if(2==a){if("undefined"==typeof ae)if("undefined"==typeof setImmediate){var c=[];addEventListener("message",d=>{if("setimmediate"===d.data||"setimmediate"===d.data.target)d.stopPropagation(),c.shift()()},!0);ae=d=>{c.push(d);postMessage("setimmediate","*")}}else ae=setImmediate;Rd=function(){ae(Kd)}}},be=[],ce=(a,b)=>{be.length= +0;for(var c;c=v[a++];){var d=105!=c;d&=112!=c;b+=d&&b%8?4:0;be.push(112==c?z.getUint32(4*(b>>2),!0):106==c?x[b>>3]:105==c?z.getInt32(4*(b>>2),!0):z.getFloat64(8*(b>>3),!0));b+=d?8:4}return be};function de(a){var b=R.fj[a];b.target.removeEventListener(b.Zi,b.Ck,b.dj);R.fj.splice(a,1)}function ee(a,b,c){function d(f,g){if(f.length!=g.length)return!1;for(var m in f)if(f[m]!=g[m])return!1;return!0}for(var e of R.nj)if(e.rk==a&&d(e.xk,c))return;R.nj.push({rk:a,Lk:b,xk:c});R.nj.sort((f,g)=>f.Lkb.rk!=a)}function ge(){return navigator.userActivation?navigator.userActivation.isActive:R.ik&&R.Xk.Oj}function he(){if(ge()){var a=R.nj;R.nj=[];for(var b of a)b.rk(...b.xk)}}function ie(a){if(!a.target)return-4;if(a.ej)a.Ck=function(c){++R.ik;R.Xk=a;he();a.gj(c);he();--R.ik},a.target.addEventListener(a.Zi,a.Ck,a.dj),R.fj.push(a);else for(var b=0;b{for(var c=0;c{a=2{var b=wb(a)+1,c=me(b);C(a,v,c,b);return c},oe=a=>{var b=T(),c=me(8),d=c+4;a=ne(a.id); +if(a=S(a))z.setInt32(4*(c>>2),a.width,!0),z.setInt32(4*(d>>2),a.height,!0);c=[z.getInt32(4*(c>>2),!0),z.getInt32(4*(d>>2),!0)];U(b);return c},pe=(a,b,c)=>{a=S(a);if(!a)return-4;a.width=b;a.height=c;return 0},qe=(a,b,c)=>{if(a.Pl){var d=T();a=ne(a.id);pe(a,b,c);U(d)}else a.width=b,a.height=c},re=a=>{function b(){document.fullscreenElement||document.webkitFullscreenElement||(document.removeEventListener("fullscreenchange",b),document.removeEventListener("webkitfullscreenchange",b),qe(a,d,e),a.style.width= +f,a.style.height=g,a.style.backgroundColor=m,n||(document.body.style.backgroundColor="white"),document.body.style.backgroundColor=n,a.style.paddingLeft=p,a.style.paddingRight=q,a.style.paddingTop=r,a.style.paddingBottom=u,a.style.marginLeft=H,a.style.marginRight=Z,a.style.marginTop=pa,a.style.marginBottom=aa,document.body.style.margin=lb,document.documentElement.style.overflow=Vb,document.body.scroll=y,a.style.pj=xa,a.Dj&&a.Dj.rj.viewport(0,0,d,e),ke.Pj&&V(ke.Pj,37,0,ke.zk))}var c=oe(a),d=c[0],e= +c[1],f=a.style.width,g=a.style.height,m=a.style.backgroundColor,n=document.body.style.backgroundColor,p=a.style.paddingLeft,q=a.style.paddingRight,r=a.style.paddingTop,u=a.style.paddingBottom,H=a.style.marginLeft,Z=a.style.marginRight,pa=a.style.marginTop,aa=a.style.marginBottom,lb=document.body.style.margin,Vb=document.documentElement.style.overflow,y=document.body.scroll,xa=a.style.pj;document.addEventListener("fullscreenchange",b);document.addEventListener("webkitfullscreenchange",b)},se=(a,b, +c)=>{a.style.paddingLeft=a.style.paddingRight=c+"px";a.style.paddingTop=a.style.paddingBottom=b+"px"},te=a=>0>le.indexOf(a)?a.getBoundingClientRect():{left:0,top:0},ue=(a,b)=>{if(0!=b.qk||0!=b.ck){re(a);var c=b.Cl?innerWidth:screen.width,d=b.Cl?innerHeight:screen.height,e=te(a),f=e.width;e=e.height;var g=oe(a),m=g[0];g=g[1];3==b.qk?(se(a,(d-e)/2,(c-f)/2),c=f,d=e):2==b.qk&&(c*g{if(a.requestPointerLock)a.requestPointerLock();else return document.body.requestPointerLock?-3:-1;return 0},we=a=>{try{a()}catch(b){Wa(b)}}; +function xe(){var a=W,b={};for(let [c,d]of Object.entries(a))b[c]="function"==typeof d?(...e)=>{ye.push(c);try{return d(...e)}finally{if(!Fa&&(ye.pop(),X&&1===ze&&0===ye.length&&(ze=0,we(Ae),"undefined"!=typeof Be&&!Ce&&De))){Ce=!0;do{e=De;De=0;var f=z.getUint32(4*(e>>2),!0),g=z.getUint32(4*(e+4>>2),!0);Ee(f,g);U(z.getUint32(4*(e+8>>2),!0));f=z.getUint32(4*(e+12>>2),!0);0!==f?(X=null,z.setUint32(4*(e+12>>2),0,!0),dynCall_vi(f,z.getUint32(4*(e+16>>2),!0))):(X=e+=20,ze=2,Fe(e),Ge(e))}while(De);Ce=!1}}}: +d;return b}var ze=0,X=null,He=0,ye=[],Ie={},Je={},Ke=0,Le=null,Me=[];function Ne(){return new Promise((a,b)=>{Le={resolve:a,reject:b}})}function Oe(){var a=B(4108),b=a+12;z.setUint32(4*(a>>2),b,!0);z.setUint32(4*(a+4>>2),b+4096,!0);Pe(a);return a}function Pe(a){var b=ye[0],c=Ie[b];void 0===c&&(c=Ke++,Ie[b]=c,Je[c]=b);z.setInt32(4*(a+8>>2),c,!0)}function Ge(a){a=z.getInt32(4*(a+8>>2),!0);return(0,W[Je[a]])()} +function Qe(a){if(!Fa){if(0===ze){var b=!1,c=!1;a((d=0)=>{if(!Fa&&(He=d,b=!0,c)){ze=2;we(()=>Fe(X));"undefined"!=typeof Nd&&Hd&&Yd();d=!1;try{var e=Ge(X)}catch(m){e=m,d=!0}var f=!1;if(!X){var g=Le;g&&(Le=null,(d?g.reject:g.resolve)(e),f=!0)}if(d&&!f)throw e;}});c=!0;b||(ze=1,X=Oe(),"undefined"!=typeof Nd&&Hd&&Xd(),we(()=>Re(X)))}else 2===ze?(ze=0,we(Se),Te(X),X=null,Me.forEach(Qc)):Wa(`invalid state: ${ze}`);return He}} +var De=0,Ce=!1,Be={},Ue=(a,b)=>{z.setFloat64(8*(a>>3),b.timestamp,!0);for(var c=0;c>3),b.axes[c],!0);for(c=0;c>3),b.buttons[c].value,!0):z.setFloat64(8*(a+8*c+528>>3),b.buttons[c],!0);for(c=0;c>2),b.index,!0);z.setInt32(4*(a+8>>2),b.axes.length, +!0);z.setInt32(4*(a+12>>2),b.buttons.length,!0);C(b.id,v,a+1112,64);C(b.mapping,v,a+1176,64)},Ve=a=>N.activeTexture(a),We=(a,b)=>{N.attachShader(O[a],P[b])},Xe=(a,b,c)=>{N.bindAttribLocation(O[a],b,c?A(v,c):"")},Ye=(a,b)=>{35051==a?N.ek=b:35052==a&&(N.ij=b);N.bindBuffer(a,ld[b])},Ze=(a,b)=>{N.bindFramebuffer(a,md[b])},$e=(a,b)=>{N.bindTexture(a,od[b])},af=a=>{N.bindVertexArray(pd[a])},bf=(a,b)=>N.blendEquationSeparate(a,b),cf=(a,b,c,d)=>N.blendFuncSeparate(a,b,c,d),df=(a,b,c,d,e,f,g,m,n,p)=>N.blitFramebuffer(a, +b,c,d,e,f,g,m,n,p),ef=(a,b,c,d)=>{c&&b?N.bufferData(a,v,d,c,b):N.bufferData(a,b,d)},ff=(a,b,c,d)=>{c&&N.bufferSubData(a,b,v,d,c)},gf=a=>N.clear(a),hf=(a,b,c,d)=>N.clearColor(a,b,c,d),jf=a=>N.clearDepth(a),kf=a=>{N.compileShader(P[a])},lf=(a,b,c,d,e,f,g,m)=>{N.ij||!g?N.compressedTexImage2D(a,b,c,d,e,f,g,m):N.compressedTexImage2D(a,b,c,d,e,f,v,m,g)},mf=(a,b,c,d,e,f,g,m,n)=>{N.ij||!m?N.compressedTexSubImage2D(a,b,c,d,e,f,g,m,n):N.compressedTexSubImage2D(a,b,c,d,e,f,g,v,n,m)},nf=()=>{var a=yd(O),b=N.createProgram(); +b.name=a;b.Vj=b.Tj=b.Uj=0;b.uk=1;O[a]=b;return a},of=a=>{var b=yd(P);P[b]=N.createShader(a);return b},pf=a=>N.cullFace(a),qf=(a,b)=>{for(var c=0;c>2),!0),e=ld[d];e&&(N.deleteBuffer(e),e.name=0,ld[d]=null,d==N.ek&&(N.ek=0),d==N.ij&&(N.ij=0))}},rf=(a,b)=>{for(var c=0;c>2),!0),e=md[d];e&&(N.deleteFramebuffer(e),e.name=0,md[d]=null)}},sf=a=>{if(a){var b=O[a];b&&(N.deleteProgram(b),b.name=0,O[a]=null)}},tf=a=>{if(a){var b=P[a];b&&(N.deleteShader(b), +P[a]=null)}},uf=(a,b)=>{for(var c=0;c>2),!0),e=od[d];e&&(N.deleteTexture(e),e.name=0,od[d]=null)}},vf=(a,b)=>{for(var c=0;c>2),!0);N.deleteVertexArray(pd[d]);pd[d]=null}},wf=a=>N.depthFunc(a),xf=a=>{N.depthMask(!!a)},yf=a=>N.disable(a),zf=a=>{N.disableVertexAttribArray(a)},Af=(a,b,c)=>{N.drawArrays(a,b,c)},Bf=(a,b,c,d)=>{N.drawArraysInstanced(a,b,c,d)},Cf=[],Df=(a,b)=>{for(var c=Cf[a],d=0;d>2),!0); +N.drawBuffers(c)},Ef=(a,b,c,d)=>{N.drawElements(a,b,c,d)},Ff=(a,b,c,d,e)=>{N.drawElementsInstanced(a,b,c,d,e)},Gf=a=>N.enable(a),Hf=a=>{N.enableVertexAttribArray(a)},If=(a,b,c,d,e)=>{N.framebufferTexture2D(a,b,c,od[d],e)},Jf=a=>N.frontFace(a),Kf=(a,b)=>{zd(a,b,"createBuffer",ld)},Lf=(a,b)=>{zd(a,b,"createFramebuffer",md)},Mf=(a,b)=>{zd(a,b,"createTexture",od)},Nf=(a,b)=>{zd(a,b,"createVertexArray",pd)},Of=a=>N.generateMipmap(a),Pf=(a,b,c,d,e,f,g,m)=>{b=O[b];if(a=N[a](b,c))d=m&&C(a.name,v,m,d),e&& +z.setInt32(4*(e>>2),d,!0),f&&z.setInt32(4*(f>>2),a.size,!0),g&&z.setInt32(4*(g>>2),a.type,!0)},Qf=(a,b,c,d,e,f,g)=>{Pf("getActiveUniform",a,b,c,d,e,f,g)},Rf=(a,b)=>{z.setUint32(4*(a>>2),b,!0);var c=z.getUint32(4*(a>>2),!0);z.setUint32(4*(a+4>>2),(b-c)/4294967296,!0)},Sf=()=>{var a="EXT_color_buffer_float EXT_conservative_depth EXT_disjoint_timer_query_webgl2 EXT_texture_norm16 NV_shader_noperspective_interpolation WEBGL_clip_cull_distance EXT_clip_control EXT_color_buffer_half_float EXT_depth_clamp EXT_float_blend EXT_polygon_offset_clamp EXT_texture_compression_bptc EXT_texture_compression_rgtc EXT_texture_filter_anisotropic KHR_parallel_shader_compile OES_texture_float_linear WEBGL_blend_func_extended WEBGL_compressed_texture_astc WEBGL_compressed_texture_etc WEBGL_compressed_texture_etc1 WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context WEBGL_multi_draw WEBGL_polygon_mode".split(" "); +return(N.getSupportedExtensions()||[]).filter(b=>a.includes(b))};function Tf(){var a=Sf();return a=a.concat(a.map(b=>"GL_"+b))} +var Uf=(a,b,c)=>{if(b){var d=void 0;switch(a){case 36346:d=1;break;case 36344:return;case 34814:case 36345:d=0;break;case 34466:var e=N.getParameter(34467);d=e?e.length:0;break;case 33309:d=Tf().length;break;case 33307:case 33308:d=33307==a?3:0}if(void 0===d)switch(e=N.getParameter(a),typeof e){case "number":d=e;break;case "boolean":d=e?1:0;break;case "string":return;case "object":if(null===e)switch(a){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 36662:case 36663:case 35053:case 35055:case 36010:case 35097:case 35869:case 32874:case 36389:case 35983:case 35368:case 34068:d= +0;break;default:return}else{if(e instanceof Float32Array||e instanceof Uint32Array||e instanceof Int32Array||e instanceof Array){for(a=0;a>2),e[a],!0);break;case 2:z.setFloat32(4*(b+4*a>>2),e[a],!0);break;case 4:t[b+a]=e[a]?1:0}return}d=e.name|0}}switch(c){case 1:Rf(b,d);break;case 0:z.setInt32(4*(b>>2),d,!0);break;case 2:z.setFloat32(4*(b>>2),d,!0);break;case 4:t[b]=d?1:0}}},Vf=(a,b,c,d)=>{b=N.getIndexedParameter(a,b);switch(typeof b){case "boolean":a= +b?1:0;break;case "number":a=b;break;case "object":if(null===b)switch(a){case 35983:case 35368:a=0;break;default:return}else if(b instanceof WebGLBuffer)a=b.name|0;else return;break;default:return}switch(d){case 1:Rf(c,a);break;case 0:z.setInt32(4*(c>>2),a,!0);break;case 2:z.setFloat32(4*(c>>2),a,!0);break;case 4:t[c]=a?1:0;break;default:throw"internal emscriptenWebGLGetIndexed() error, bad type: "+d;}},Wf=(a,b)=>Uf(a,b,0),Xf=(a,b,c,d)=>{a=N.getProgramInfoLog(O[a]);b=0>2),b,!0)},Yf=(a,b,c)=>{if(c&&!(a>=kd))if(a=O[a],35716==b)z.setInt32(4*(c>>2),N.getProgramInfoLog(a).length+1,!0);else if(35719==b){if(!a.Vj){var d=N.getProgramParameter(a,35718);for(b=0;b>2),a.Vj,!0)}else if(35722==b){if(!a.Tj)for(d=N.getProgramParameter(a,35721),b=0;b>2),a.Tj,!0)}else if(35381==b){if(!a.Uj)for(d=N.getProgramParameter(a, +35382),b=0;b>2),a.Uj,!0)}else z.setInt32(4*(c>>2),N.getProgramParameter(a,b),!0)},Zf=(a,b,c)=>{if(c){a=Q[a];b=2>Cd.version?N.oj.getQueryObjectEXT(a,b):N.getQueryParameter(a,b);var d;"boolean"==typeof b?d=b?1:0:d=b;Rf(c,d)}},$f=(a,b,c)=>{if(c){a=N.oj.getQueryObjectEXT(Q[a],b);var d;"boolean"==typeof a?d=a?1:0:d=a;z.setInt32(4*(c>>2),d,!0)}},ag=(a,b,c,d)=>{a=N.getShaderInfoLog(P[a]);b=0>2),b,!0)},bg=(a,b,c)=>{c&&(35716==b?(a=N.getShaderInfoLog(P[a]),z.setInt32(4*(c>>2),a?a.length+1:0,!0)):35720==b?(a=N.getShaderSource(P[a]),z.setInt32(4*(c>>2),a?a.length+1:0,!0)):z.setInt32(4*(c>>2),N.getShaderParameter(P[a],b),!0))},cg=a=>{var b=ud[a];if(!b){switch(a){case 7939:b=Fd(Tf().join(" "));break;case 7936:case 7937:case 37445:case 37446:b=(b=N.getParameter(a))?Fd(b):0;break;case 7938:b=Fd(`OpenGL ES 3.0 (${N.getParameter(7938)})`);break;case 35724:b=N.getParameter(35724);var c=b.match(/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/); +null!==c&&(3==c[1].length&&(c[1]+="0"),b=`OpenGL ES GLSL ES ${c[1]} (${b})`);b=Fd(b)}ud[a]=b}return b},dg=(a,b)=>{if(2>Cd.version)return 0;var c=vd[a];if(c)return 0>b||b>=c.length?0:c[b];switch(a){case 7939:return c=Tf().map(Fd),c=vd[a]=c,0>b||b>=c.length?0:c[b];default:return 0}},eg=a=>"]"==a.slice(-1)&&a.lastIndexOf("["),fg=a=>{var b=a.Mj,c=a.Ok,d;if(!b){a.Mj=b={};a.Nk={};var e=N.getProgramParameter(a,35718);for(d=0;d{b=b?A(v,b):"";if(a=O[a]){fg(a);var c=a.Mj,d=0,e=b,f=eg(b);0>>0,e=b.slice(0,f));if((e=a.Ok[e])&&d{var b=N.Yk,c=b.Mj[a];"number"==typeof c&&(b.Mj[a]=c=N.getUniformLocation(b,b.Nk[a]+(0{if(c)if(a=O[a],fg(a),a=N.getUniform(a,Y(b)),"number"==typeof a||"boolean"== +typeof a)switch(d){case 0:z.setInt32(4*(c>>2),a,!0);break;case 2:z.setFloat32(4*(c>>2),a,!0)}else for(b=0;b>2),a[b],!0);break;case 2:z.setFloat32(4*(c+4*b>>2),a[b],!0)}},ig=(a,b,c)=>{hg(a,b,c,2)},jg=(a,b,c)=>{hg(a,b,c,0)},kg=(a,b,c,d)=>{if(c)if(a=N.getVertexAttrib(a,b),34975==b)z.setInt32(4*(c>>2),a&&a.name,!0);else if("number"==typeof a||"boolean"==typeof a)switch(d){case 0:z.setInt32(4*(c>>2),a,!0);break;case 2:z.setFloat32(4*(c>>2),a,!0);break; +case 5:d=Math.fround(a),z.setInt32(4*(c>>2),d,!0)}else for(b=0;b>2),a[b],!0);break;case 2:z.setFloat32(4*(c+4*b>>2),a[b],!0);break;case 5:var e=Math.fround(a[b]);z.setInt32(4*(c+4*b>>2),e,!0)}},lg=(a,b,c)=>{kg(a,b,c,0)},mg=a=>(a=pd[a])?N.isVertexArray(a):0,ng=a=>{a=O[a];N.linkProgram(a);a.Mj=0;a.Ok={}},og=(a,b)=>{3317==a?wd=b:3314==a&&(xd=b);N.pixelStorei(a,b)},pg=a=>N.readBuffer(a),qg=a=>{a-=5120;return 0==a?t:1==a?v:2==a?Ha:4==a?Ja:6==a?w:5==a|| +28922==a||28520==a||30779==a||30782==a?Ka:Ia},rg=(a,b,c,d,e)=>{a=qg(a);b=d*((xd||c)*({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[b-6402]||1)*a.BYTES_PER_ELEMENT+wd-1&-wd);return a.subarray(e>>>31-Math.clz32(a.BYTES_PER_ELEMENT),e+b>>>31-Math.clz32(a.BYTES_PER_ELEMENT))},sg=(a,b,c,d,e,f,g)=>{if(N.ek)N.readPixels(a,b,c,d,e,f,g);else{var m=qg(f);g>>>=31-Math.clz32(m.BYTES_PER_ELEMENT);N.readPixels(a,b,c,d,e,f,m,g)}},tg=(a,b,c,d)=>N.scissor(a,b,c,d),ug=(a,b,c,d)=>{for(var e="",f=0;f< +b;++f){var g=d?z.getUint32(4*(d+4*f>>2),!0):void 0;e+=Gc(z.getUint32(4*(c+4*f>>2),!0),g)}N.shaderSource(P[a],e)},vg=(a,b,c,d,e,f,g,m,n)=>{if(N.ij)N.texImage2D(a,b,c,d,e,f,g,m,n);else if(n){var p=qg(m);n>>>=31-Math.clz32(p.BYTES_PER_ELEMENT);N.texImage2D(a,b,c,d,e,f,g,m,p,n)}else p=n?rg(m,g,d,e,n):null,N.texImage2D(a,b,c,d,e,f,g,m,p)},wg=(a,b,c)=>N.texParameteri(a,b,c),xg=(a,b,c,d,e,f,g,m,n)=>{if(N.ij)N.texSubImage2D(a,b,c,d,e,f,g,m,n);else if(n){var p=qg(m);N.texSubImage2D(a,b,c,d,e,f,g,m,p,n>>>31- +Math.clz32(p.BYTES_PER_ELEMENT))}else n=n?rg(m,g,e,f,n):null,N.texSubImage2D(a,b,c,d,e,f,g,m,n)},yg=(a,b,c)=>{b&&N.uniform1fv(Y(a),w,c>>2,b)},zg=(a,b,c)=>{b&&N.uniform1iv(Y(a),Ja,c>>2,b)},Ag=(a,b,c)=>{b&&N.uniform2fv(Y(a),w,c>>2,2*b)},Bg=(a,b,c)=>{b&&N.uniform2iv(Y(a),Ja,c>>2,2*b)},Cg=(a,b,c)=>{b&&N.uniform3fv(Y(a),w,c>>2,3*b)},Dg=(a,b,c)=>{b&&N.uniform3iv(Y(a),Ja,c>>2,3*b)},Eg=(a,b,c)=>{b&&N.uniform4fv(Y(a),w,c>>2,4*b)},Fg=(a,b,c)=>{b&&N.uniform4iv(Y(a),Ja,c>>2,4*b)},Gg=(a,b,c,d)=>{b&&N.uniformMatrix3fv(Y(a), +!!c,w,d>>2,9*b)},Hg=(a,b,c,d)=>{b&&N.uniformMatrix4fv(Y(a),!!c,w,d>>2,16*b)},Ig=a=>{a=O[a];N.useProgram(a);N.Yk=a},Jg=(a,b)=>{N.vertexAttribDivisor(a,b)},Kg=(a,b,c,d,e)=>{N.vertexAttribIPointer(a,b,c,d,e)},Lg=(a,b,c,d,e,f)=>{N.vertexAttribPointer(a,b,c,!!d,e,f)},Mg=(a,b,c,d)=>N.viewport(a,b,c,d),Ng=(a,b)=>{if(!R.fullscreenEnabled())return-1;a=S(a);return a?a.requestFullscreen||a.webkitRequestFullscreen?ge()?ue(a,b):b.bl?(ee(ue,1,[a,b]),1):-2:-3:-4},Og=()=>{try{if(navigator.getGamepads)return(R.Sj= +navigator.getGamepads())?0:-1}catch(a){navigator.getGamepads=null}return-1},Pg=(a,b)=>{var c={target:S(2),Zi:"beforeunload",ej:b,gj:(d=event)=>{var e=V(b,28,0,a);e&&=e?A(v,e):"";if(e)return d.preventDefault(),d.returnValue=e},dj:!0};return ie(c)},Qg=(a,b,c,d,e,f)=>{R.fk||(R.fk=B(256));a={target:S(a),Zi:f,ej:d,gj:(g=event)=>{var m=g.target.id?g.target.id:"",n=R.fk;C(je(g.target),v,n+0,128);C(m,v,n+128,128);V(d,e,n,b)&&g.preventDefault()},dj:c};return ie(a)},Rg=(a,b,c,d,e)=>{R.gk||(R.gk=B(276));return ie({target:a, +Zi:e,ej:d,gj:(f=event)=>{var g=R.gk,m=document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement,n=!!m;t[g]=n;t[g+1]=R.fullscreenEnabled();var p=n?m:R.xl,q=p?.id||"";C(je(p),v,g+2,128);C(q,v,g+130,128);z.setInt32(4*(g+260>>2),p?p.clientWidth:0,!0);z.setInt32(4*(g+264>>2),p?p.clientHeight:0,!0);z.setInt32(4*(g+268>>2),screen.width,!0);z.setInt32(4*(g+272>>2),screen.height,!0);n&&(R.xl=m);V(d,19,g,b)&&f.preventDefault()},dj:c})},Sg=(a,b, +c,d,e)=>{R.hk||(R.hk=B(1240));b={target:S(2),Oj:!0,Zi:e,ej:c,gj:(f=event)=>{var g=R.hk;Ue(g,f.gamepad);V(c,d,g,a)&&f.preventDefault()},dj:b};return ie(b)},Tg=(a,b,c,d,e,f)=>{R.jk||(R.jk=B(160));a={target:S(a),Zi:f,ej:d,gj:g=>{var m=R.jk;z.setFloat64(8*(m>>3),g.timeStamp,!0);var n=m>>2;z.setInt32(4*(n+2),g.location,!0);t[m+12]=g.ctrlKey;t[m+13]=g.shiftKey;t[m+14]=g.altKey;t[m+15]=g.metaKey;t[m+16]=g.repeat;z.setInt32(4*(n+5),g.charCode,!0);z.setInt32(4*(n+6),g.keyCode,!0);z.setInt32(4*(n+7),g.which, +!0);C(g.key||"",v,m+32,32);C(g.code||"",v,m+64,32);C(g.char||"",v,m+96,32);C(g.locale||"",v,m+128,32);V(d,e,m,b)&&g.preventDefault()},dj:c};return ie(a)},Ug=(a,b,c)=>{z.setFloat64(8*(a>>3),b.timeStamp,!0);var d=a>>2;z.setInt32(4*(d+2),b.screenX,!0);z.setInt32(4*(d+3),b.screenY,!0);z.setInt32(4*(d+4),b.clientX,!0);z.setInt32(4*(d+5),b.clientY,!0);t[a+24]=b.ctrlKey;t[a+25]=b.shiftKey;t[a+26]=b.altKey;t[a+27]=b.metaKey;z.setInt16(2*(2*d+14),b.button,!0);z.setInt16(2*(2*d+15),b.buttons,!0);z.setInt32(4* +(d+8),b.movementX,!0);z.setInt32(4*(d+9),b.movementY,!0);a=te(c);z.setInt32(4*(d+10),b.clientX-(a.left|0),!0);z.setInt32(4*(d+11),b.clientY-(a.top|0),!0)},Vg=(a,b,c,d,e,f)=>{R.Xj||(R.Xj=B(64));a=S(a);return ie({target:a,Oj:"mousemove"!=f&&"mouseenter"!=f&&"mouseleave"!=f,Zi:f,ej:d,gj:(g=event)=>{Ug(R.Xj,g,a);V(d,e,R.Xj,b)&&g.preventDefault()},dj:c})},Wg=(a,b,c,d,e)=>{R.mk||(R.mk=B(257));return ie({target:a,Zi:e,ej:d,gj:(f=event)=>{var g=R.mk,m=document.pointerLockElement||document.aj||document.Rk|| +document.Qk;t[g]=!!m;var n=m?.id||"";C(je(m),v,g+1,128);C(n,v,g+129,128);V(d,20,g,b)&&f.preventDefault()},dj:c})},Xg=(a,b,c,d)=>{R.tk||(R.tk=B(36));a=S(a);return ie({target:a,Zi:"resize",ej:d,gj:(e=event)=>{if(e.target==a){var f=document.body;if(f){var g=R.tk;z.setInt32(4*(g>>2),0,!0);z.setInt32(4*(g+4>>2),f.clientWidth,!0);z.setInt32(4*(g+8>>2),f.clientHeight,!0);z.setInt32(4*(g+12>>2),innerWidth,!0);z.setInt32(4*(g+16>>2),innerHeight,!0);z.setInt32(4*(g+20>>2),outerWidth,!0);z.setInt32(4*(g+24>> +2),outerHeight,!0);z.setInt32(4*(g+28>>2),pageXOffset|0,!0);z.setInt32(4*(g+32>>2),pageYOffset|0,!0);V(d,10,g,b)&&e.preventDefault()}}},dj:c})},Yg=(a,b,c,d,e,f)=>{R.sk||(R.sk=B(1552));a=S(a);return ie({target:a,Oj:"touchstart"==f||"touchend"==f,Zi:f,ej:d,gj:g=>{var m={},n=g.touches;for(var p of n)p.Fk=p.Kk=0,m[p.identifier]=p;for(var q of g.changedTouches)q.Fk=1,m[q.identifier]=q;for(var r of g.targetTouches)m[r.identifier].Kk=1;n=R.sk;z.setFloat64(8*(n>>3),g.timeStamp,!0);t[n+12]=g.ctrlKey;t[n+13]= +g.shiftKey;t[n+14]=g.altKey;t[n+15]=g.metaKey;p=n+16;q=te(a);r=0;for(let u of Object.values(m))if(m=p>>2,z.setInt32(4*m,u.identifier,!0),z.setInt32(4*(m+1),u.screenX,!0),z.setInt32(4*(m+2),u.screenY,!0),z.setInt32(4*(m+3),u.clientX,!0),z.setInt32(4*(m+4),u.clientY,!0),z.setInt32(4*(m+5),u.pageX,!0),z.setInt32(4*(m+6),u.pageY,!0),t[p+28]=u.Fk,t[p+29]=u.Kk,z.setInt32(4*(m+8),u.clientX-(q.left|0),!0),z.setInt32(4*(m+9),u.clientY-(q.top|0),!0),p+=48,31<++r)break;z.setInt32(4*(n+8>>2),r,!0);V(d,e,n,b)&& +g.preventDefault()},dj:c})},Zg=(a,b,c)=>{var d=le[1];R.vk||(R.vk=B(8));return ie({target:d,Zi:"visibilitychange",ej:c,gj:(e=event)=>{var f=R.vk,g=["hidden","visible","prerender","unloaded"].indexOf(document.visibilityState);t[f]=document.hidden;z.setInt32(4*(f+4>>2),g,!0);V(c,21,f,a)&&e.preventDefault()},dj:b})},$g=(a,b,c,d)=>{R.wk||(R.wk=B(96));return ie({target:a,Oj:!0,Zi:"wheel",ej:d,gj:(e=event)=>{var f=R.wk;Ug(f,e,a);z.setFloat64(8*(f+64>>3),e.deltaX,!0);z.setFloat64(8*(f+72>>3),e.deltaY,!0); +z.setFloat64(8*(f+80>>3),e.deltaZ,!0);z.setInt32(4*(f+88>>2),e.deltaMode,!0);V(d,9,f,b)&&e.preventDefault()},dj:c})};class ah{constructor(){this.mj=[void 0];this.aj=[]}get(a){return this.mj[a]}has(a){return void 0!==this.mj[a]}Nj(a){var b=this.aj.pop()||this.mj.length;this.mj[b]=a;return b}}var bh; +function ch(a,b,c,d,e){function f(){var I=0,ra=0;y.response&&lb&&0===z.getUint32(4*(a+12>>2),!0)&&(ra=y.response.byteLength);0>2),I,!0);Rf(a+16,ra);Rf(a+24,0);(I=y.response?y.response.byteLength:0)&&Rf(a+32,I);z.setInt16(2*(a+40>>1),y.readyState,!0);z.setInt16(2*(a+42>>1),y.status,!0);y.statusText&&C(y.statusText,v,a+44,64)}var g=z.getUint32(4*(a+8>>2),!0);if(g){var m=g?A(v,g):"",n=a+108,p=Gc(n+0);p||="GET";var q=z.getUint32(4* +(n+56>>2),!0),r=z.getUint32(4*(n+68>>2),!0),u=z.getUint32(4*(n+72>>2),!0);g=z.getUint32(4*(n+76>>2),!0);var H=z.getUint32(4*(n+80>>2),!0),Z=z.getUint32(4*(n+84>>2),!0),pa=z.getUint32(4*(n+88>>2),!0),aa=z.getUint32(4*(n+52>>2),!0),lb=!!(aa&1),Vb=!!(aa&2);aa=!!(aa&64);r=r?r?A(v,r):"":void 0;u=u?u?A(v,u):"":void 0;var y=new XMLHttpRequest;y.withCredentials=!!v[n+60];y.open(p,m,!aa,r,u);aa||(y.timeout=q);y.aj=m;y.responseType="arraybuffer";H&&(m=H?A(v,H):"",y.overrideMimeType(m));if(g)for(;;){n=z.getUint32(4* +(g>>2),!0);if(!n)break;m=z.getUint32(4*(g+4>>2),!0);if(!m)break;g+=8;n=n?A(v,n):"";m=m?A(v,m):"";y.setRequestHeader(n,m)}var xa=bh.Nj(y);z.setUint32(4*(a>>2),xa,!0);g=Z&&pa?v.slice(Z,Z+pa):null;y.onload=I=>{bh.has(xa)&&(f(),200<=y.status&&300>y.status?b?.(a,y,I):c?.(a,y,I))};y.onerror=I=>{bh.has(xa)&&(f(),c?.(a,y,I))};y.ontimeout=I=>{bh.has(xa)&&c?.(a,y,I)};y.onprogress=I=>{if(bh.has(xa)){var ra=lb&&Vb&&y.response?y.response.byteLength:0,ob=0;0>2),ob,!0);Rf(a+16,ra);Rf(a+24,I.loaded-ra);Rf(a+32,I.total);z.setInt16(2*(a+40>>1),y.readyState,!0);3<=y.readyState&&0===y.status&&0>1),y.status,!0);y.statusText&&C(y.statusText,v,a+44,64);d?.(a,y,I);ob&&Te(ob)}};y.onreadystatechange=I=>{bh.has(xa)&&(z.setInt16(2*(a+40>>1),y.readyState,!0),2<=y.readyState&&z.setInt16(2*(a+42>>1),y.status,!0),e?.(a,y,I))};try{y.send(g)}catch(I){c?.(a,y,I)}}else c(a,0,"no url specified!")} +var na={},eh=()=>{if(!dh){var a={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:ya||"./this.program"},b;for(b in na)void 0===na[b]?delete a[b]:a[b]=na[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);dh=c}return dh},dh,ua,ta=(a,b,c=[])=>{a=a.replace(/p/g,"i");return(0,h["dynCall_"+a])(b,...c)};[44].forEach(a=>{Ib[a]=new D(a);Ib[a].stack=""}); +ec=Array(4096);oa(E,"/");k("/tmp");k("/home");k("/home/web_user");(function(){k("/dev");zb(259,{read:()=>0,write:(d,e,f,g)=>g});xc("/dev/null",259);yb(1280,Bb);yb(1536,Cb);xc("/dev/tty",1280);xc("/dev/tty1",1536);var a=new Uint8Array(1024),b=0,c=()=>{0===b&&(b=sb(a).byteLength);return a[--b]};Dc("/dev","random",c);Dc("/dev","urandom",c);k("/dev/shm");k("/dev/shm/tmp")})(); +(function(){k("/proc");var a=k("/proc/self");k("/proc/self/fd");oa({Yi(){var b=Hb(a,"fd",16895,73);b.Ri={Fj(c,d){var e=J(+d);c={parent:null,Yi:{Hj:"fake"},Ri:{Jj:()=>e.path}};return c.parent=c}};return b}},"/proc/self/fd")})();h.FS_createPath=Bc;h.FS_createDataFile=Pb;h.FS_createPreloadedFile=Qb;h.FS_unlink=$b;h.FS_createLazyFile=Fc;h.FS_createDevice=Dc; +h.requestFullscreen=function(a,b){function c(){Sc=!1;var f=d.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===f?(d.exitFullscreen=$c,Yc&&d.requestPointerLock(),Sc=!0,Zc?("undefined"!=typeof SDL&&(f=z.getUint32(4*(SDL.screen>>2),!0),z.setInt32(4*(SDL.screen>>2),f|8388608,!0)),cd(h.canvas),bd()):cd(d)):(f.parentNode.insertBefore(d,f),f.parentNode.removeChild(f),Zc?("undefined"!= +typeof SDL&&(f=z.getUint32(4*(SDL.screen>>2),!0),z.setInt32(4*(SDL.screen>>2),f&-8388609,!0)),cd(h.canvas),bd()):cd(d));h.onFullScreen?.(Sc);h.onFullscreen?.(Sc)}Yc=a;Zc=b;"undefined"==typeof Yc&&(Yc=!0);"undefined"==typeof Zc&&(Zc=!1);var d=h.canvas;Xc||(Xc=!0,document.addEventListener("fullscreenchange",c,!1),document.addEventListener("mozfullscreenchange",c,!1),document.addEventListener("webkitfullscreenchange",c,!1),document.addEventListener("MSFullscreenChange",c,!1));var e=document.createElement("div"); +d.parentNode.insertBefore(e,d);e.appendChild(d);e.requestFullscreen=e.requestFullscreen||e.mozRequestFullScreen||e.msRequestFullscreen||(e.webkitRequestFullscreen?()=>e.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT):null)||(e.webkitRequestFullScreen?()=>e.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT):null);e.requestFullscreen()};h.setCanvasSize=function(a,b,c){cd(h.canvas,a,b);c||bd()}; +h.getUserMedia=function(a){let b;(b=window).getUserMedia||(b.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia);window.getUserMedia(a)};h.createContext=function(a,b,c,d){if(b&&h.hj&&a==h.canvas)return h.hj;var e;if(b){var f={antialias:!1,alpha:!1,kk:2};if(d)for(var g in d)f[g]=d[g];if("undefined"!=typeof Ed&&(e=Bd(a,f)))var m=qd[e].rj}else m=a.getContext("2d");if(!m)return null;c&&(h.hj=m,b&&Dd(e),Uc.forEach(n=>n()),Nb());return m};h.requestAnimationFrame=$d;h.pauseMainLoop=Xd; +h.resumeMainLoop=Yd;h.preMainLoop&&Td.push(h.preMainLoop);h.postMainLoop&&Ud.push(h.postMainLoop);for(var fh=0;32>fh;++fh)Cf.push(Array(fh));bh=new ah; +var rh={H:function(a,b,c){kb=c;try{var d=J(a);switch(b){case 0:var e=jb();if(0>e)break;for(;cc[e];)e++;return uc(d,e).fd;case 1:case 2:return 0;case 3:return d.flags;case 4:return e=jb(),d.flags|=e,0;case 12:return e=jb(),z.setInt16(2*(e+0>>1),2,!0),0;case 13:case 14:return 0}return-28}catch(f){if("undefined"==typeof K||"ErrnoError"!==f.name)throw f;return-f.Xi}},Yd:function(a,b){try{var c=J(a);return Ic(Tb,c.path,b)}catch(d){if("undefined"==typeof K||"ErrnoError"!==d.name)throw d;return-d.Xi}},gd:function(a, +b,c){try{var d=J(a);d.sj||(d.sj=Sb(d.path));a=0;for(var e=Ac(d,0,1),f=Math.floor(e/280);f>3]=BigInt(m);x[b+a+8>>3]=BigInt(280*(f+1));z.setInt16(2*(b+a+16>>1),280,!0);t[b+a+18]=n;C(g,v,b+a+19,256);a+=280;f+=1}Ac(d,280*f,0);return a}catch(q){if("undefined"==typeof K||"ErrnoError"!== +q.name)throw q;return-q.Xi}},Yf:function(a,b,c){kb=c;try{var d=J(a);switch(b){case 21509:return d.Ui?0:-59;case 21505:if(!d.Ui)return-59;if(d.Ui.lj.ol){a=[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var e=jb();z.setInt32(4*(e>>2),25856,!0);z.setInt32(4*(e+4>>2),5,!0);z.setInt32(4*(e+8>>2),191,!0);z.setInt32(4*(e+12>>2),35387,!0);for(var f=0;32>f;f++)t[e+f+17]=a[f]||0}return 0;case 21510:case 21511:case 21512:return d.Ui?0:-59;case 21506:case 21507:case 21508:if(!d.Ui)return-59; +if(d.Ui.lj.pl)for(e=jb(),z.getInt32(4*(e>>2),!0),z.getInt32(4*(e+4>>2),!0),z.getInt32(4*(e+8>>2),!0),z.getInt32(4*(e+12>>2),!0),a=[],f=0;32>f;f++)a.push(t[e+f+17]);return 0;case 21519:if(!d.Ui)return-59;e=jb();z.setInt32(4*(e>>2),0,!0);return 0;case 21520:return d.Ui?-28:-59;case 21531:e=jb();if(!d.Si.nl)throw new D(59);return d.Si.nl(d,b,e);case 21523:if(!d.Ui)return-59;d.Ui.lj.ql&&(f=[24,80],e=jb(),z.setInt16(2*(e>>1),f[0],!0),z.setInt16(2*(e+2>>1),f[1],!0));return 0;case 21524:return d.Ui?0:-59; +case 21515:return d.Ui?0:-59;default:return-28}}catch(g){if("undefined"==typeof K||"ErrnoError"!==g.name)throw g;return-g.Xi}},rd:function(a,b){try{return a=a?A(v,a):"",Ic(zc,a,b)}catch(c){if("undefined"==typeof K||"ErrnoError"!==c.name)throw c;return-c.Xi}},Xc:function(a,b,c){try{return b=b?A(v,b):"",b=Hc(a,b),b=nb(b),"/"===b[b.length-1]&&(b=b.substr(0,b.length-1)),k(b,c),0}catch(d){if("undefined"==typeof K||"ErrnoError"!==d.name)throw d;return-d.Xi}},Cd:function(a,b,c,d){try{b=b?A(v,b):"";var e= +d&256;b=Hc(a,b,d&4096);return Ic(e?zc:Tb,b,c)}catch(f){if("undefined"==typeof K||"ErrnoError"!==f.name)throw f;return-f.Xi}},ua:function(a,b,c,d){kb=d;try{b=b?A(v,b):"";b=Hc(a,b);var e=d?jb():0;return Ub(b,c,e).fd}catch(f){if("undefined"==typeof K||"ErrnoError"!==f.name)throw f;return-f.Xi}},Nd:function(a,b){try{return a=a?A(v,a):"",Ic(Tb,a,b)}catch(c){if("undefined"==typeof K||"ErrnoError"!==c.name)throw c;return-c.Xi}},Kc:function(a,b,c){try{return b=b?A(v,b):"",b=Hc(a,b),0===c?$b(b):512===c?Zb(b): +Wa("Invalid flags passed to unlinkat"),0}catch(d){if("undefined"==typeof K||"ErrnoError"!==d.name)throw d;return-d.Xi}},Xg:()=>{Wa("")},Bb:function(a){if(bh.has(a)){var b=bh.get(a),c=bh;c.mj[a]=void 0;c.aj.push(a);0b.readyState&&b.abort()}},Df:()=>1,Ab:()=>{throw Infinity;},Bg:function(a,b){a=-9007199254740992>a||9007199254740992>2),a.getSeconds(),!0);z.setInt32(4*(b+4>>2),a.getMinutes(),!0);z.setInt32(4*(b+8>>2),a.getHours(),!0); +z.setInt32(4*(b+12>>2),a.getDate(),!0);z.setInt32(4*(b+16>>2),a.getMonth(),!0);z.setInt32(4*(b+20>>2),a.getFullYear()-1900,!0);z.setInt32(4*(b+24>>2),a.getDay(),!0);var c=a.getFullYear();z.setInt32(4*(b+28>>2),(0!==c%4||0===c%100&&0!==c%400?Kc:Jc)[a.getMonth()]+a.getDate()-1|0,!0);z.setInt32(4*(b+36>>2),-(60*a.getTimezoneOffset()),!0);c=(new Date(a.getFullYear(),6,1)).getTimezoneOffset();var d=(new Date(a.getFullYear(),0,1)).getTimezoneOffset();z.setInt32(4*(b+32>>2),(c!=d&&a.getTimezoneOffset()== +Math.min(d,c))|0,!0)},ff:function(a,b,c,d,e,f,g){e=-9007199254740992>e||9007199254740992>2),n.mj,!0);z.setUint32(4*(g>>2),p,!0);return 0}catch(q){if("undefined"==typeof K||"ErrnoError"!==q.name)throw q;return-q.Xi}},rf:function(a,b,c,d,e,f){f= +-9007199254740992>f||9007199254740992{var e=(new Date).getFullYear(),f=(new Date(e,0,1)).getTimezoneOffset();e=(new Date(e,6,1)).getTimezoneOffset();z.setUint32(4*(a>>2),60*Math.max(f,e),!0);z.setInt32(4*(b>>2),Number(f!=e),!0);b=g=>{var m=Math.abs(g);return`UTC${0<=g?"-":"+"}${String(Math.floor(m/ +60)).padStart(2,"0")}${String(m%60).padStart(2,"0")}`};a=b(f);b=b(e);e{if(12448==a)return L=12288,1;L=12300;return 0},ed:(a,b,c,d,e)=>{if(62E3!=a)L=12296,c=0;else{if(b)for(;;){a=z.getInt32(4*(b>>2),!0);if(12321==a)a=z.getInt32(4*(b+4>>2),!0),M.alpha=0>2),!0),M.depth=0>2),!0),M.stencil=0>2),!0),M.antialias=0>2),!0),M.antialias=1==a;else if(12544==a)a=z.getInt32(4*(b+4>>2),!0),M.Yl=12547!=a;else if(12344==a)break;b+=8}c&&d||e?(e&&z.setInt32(4*(e>>2),1,!0),c&&0>2),62002,!0),L=12288,c=1):(L=12300,c=0)}return c},cd:(a,b,c,d)=>{if(62E3!=a)return L=12296,0;for(a=1;;){b=z.getInt32(4*(d>>2),!0);if(12440==b)a=z.getInt32(4*(d+4>>2),!0);else if(12344==b)break;else return L=12292,0;d+=8}if(2>a||3e()),Dd(null),62004;L=12297;return 0},ad:(a,b)=>{if(62E3!=a)return L=12296,0;if(62002!=b)return L=12293,0;L=12288;return 62006},bd:(a,b)=>{if(62E3!=a)return L=12296,0;if(62004!=b)return L=12294,0;a=jd;Cd===qd[a]&&(Cd=null);"object"==typeof R&&R.zl(qd[a].rj.canvas);qd[a]&&qd[a].rj.canvas&&(qd[a].rj.canvas.Dj=void 0);qd[a]=null;L=12288;ed==b&&(ed=0);return 1},$c:(a,b)=>{if(62E3!=a)return L=12296,0;if(62006!=b)return L=12301,1;fd==b&&(fd=0);gd==b&&(gd=0);L=12288;return 1},dd:(a, +b,c,d)=>{if(62E3!=a)return L=12296,0;if(62002!=b)return L=12293,0;if(!d)return L=12300,0;L=12288;switch(c){case 12320:return z.setInt32(4*(d>>2),M.alpha?32:24,!0),1;case 12321:return z.setInt32(4*(d>>2),M.alpha?8:0,!0),1;case 12322:return z.setInt32(4*(d>>2),8,!0),1;case 12323:return z.setInt32(4*(d>>2),8,!0),1;case 12324:return z.setInt32(4*(d>>2),8,!0),1;case 12325:return z.setInt32(4*(d>>2),M.depth?24:0,!0),1;case 12326:return z.setInt32(4*(d>>2),M.stencil?8:0,!0),1;case 12327:return z.setInt32(4* +(d>>2),12344,!0),1;case 12328:return z.setInt32(4*(d>>2),62002,!0),1;case 12329:return z.setInt32(4*(d>>2),0,!0),1;case 12330:return z.setInt32(4*(d>>2),4096,!0),1;case 12331:return z.setInt32(4*(d>>2),16777216,!0),1;case 12332:return z.setInt32(4*(d>>2),4096,!0),1;case 12333:return z.setInt32(4*(d>>2),0,!0),1;case 12334:return z.setInt32(4*(d>>2),0,!0),1;case 12335:return z.setInt32(4*(d>>2),12344,!0),1;case 12337:return z.setInt32(4*(d>>2),M.antialias?4:0,!0),1;case 12338:return z.setInt32(4*(d>> +2),M.antialias?1:0,!0),1;case 12339:return z.setInt32(4*(d>>2),4,!0),1;case 12340:return z.setInt32(4*(d>>2),12344,!0),1;case 12341:case 12342:case 12343:return z.setInt32(4*(d>>2),-1,!0),1;case 12345:case 12346:return z.setInt32(4*(d>>2),0,!0),1;case 12347:return z.setInt32(4*(d>>2),0,!0),1;case 12348:return z.setInt32(4*(d>>2),1,!0),1;case 12349:case 12350:return z.setInt32(4*(d>>2),0,!0),1;case 12351:return z.setInt32(4*(d>>2),12430,!0),1;case 12352:return z.setInt32(4*(d>>2),4,!0),1;case 12354:return z.setInt32(4* +(d>>2),0,!0),1;default:return L=12292,0}},id:a=>{L=12288;return 0!=a&&1!=a?0:62E3},Sc:()=>L,hd:(a,b,c)=>{if(62E3!=a)return L=12296,0;b&&z.setInt32(4*(b>>2),1,!0);c&&z.setInt32(4*(c>>2),4,!0);dd=!0;L=12288;return 1},_c:(a,b,c,d)=>{if(62E3!=a)return L=12296,0;if(0!=d&&62004!=d)return L=12294,0;if(0!=c&&62006!=c||0!=b&&62006!=b)return L=12301,0;Dd(d?jd:null);ed=d;gd=b;fd=c;L=12288;return 1},Tc:(a,b)=>{if(62E3!=a)return L=12296,0;L=12288;if(hd[b])return hd[b];switch(b){case 12371:a=Fd("Emscripten");break; +case 12372:a=Fd("1.4 Emscripten EGL");break;case 12373:a=Fd("");break;case 12429:a=Fd("OpenGL_ES");break;default:return L=12300,0}return hd[b]=a},Zc:()=>{if(dd)if(h.hj)if(h.hj.isContextLost())L=12302;else return L=12288,1;else L=12290;else L=12289;return 0},Yc:(a,b)=>{if(62E3!=a)return L=12296,0;0==b?Vd(0,0):Vd(1,b);L=12288;return 1},fd:a=>{if(62E3!=a)return L=12296,0;gd=fd=ed=0;dd=!1;L=12288;return 1},Vc:()=>{L=12288;return 1},Wc:()=>{L=12288;return 1},w:(a,b,c)=>{b=ce(b,c);return eb[a](...b)},e:(a, +b,c)=>{b=ce(b,c);return eb[a](...b)},Qb:(a,b,c)=>{b=ce(b,c);return eb[a](...b)},ja:()=>{Xd();Hd=null},I:()=>Date.now(),Mc:()=>{if(!R.fullscreenEnabled())return-1;fe(ue);var a=le[1];if(a.exitFullscreen)a.fullscreenElement&&a.exitFullscreen();else if(a.webkitExitFullscreen)a.webkitFullscreenElement&&a.webkitExitFullscreen();else return-1;return 0},Qc:()=>{fe(ve);if(document.exitPointerLock)document.exitPointerLock();else return-1;return 0},Cf:(a,b)=>{if(!Fa)if(0===ze){ze=1;var c=a+20;Pe(c);X=c;Re(c); +c=T();z.setUint32(4*(a+8>>2),c,!0);De=b}else ze=0,Se(),X=null},r:()=>devicePixelRatio,j:(a,b,c)=>{a=S(a);if(!a)return-4;a=te(a);z.setFloat64(8*(b>>3),a.width,!0);z.setFloat64(8*(c>>3),a.height,!0);return 0},U:(a,b)=>{if(0>a||a>=R.Sj.length)return-5;if(!R.Sj[a])return-7;Ue(b,R.Sj[a]);return 0},We:()=>2147483648,F:()=>performance.now(),Ic:()=>R.Sj.length,Rc:(a,b)=>{z.setInt32(4*(a>>2),screen.width,!0);z.setInt32(4*(b>>2),screen.height,!0)},fb:Ve,eb:We,cf:(a,b)=>{N.beginQuery(a,Q[b])},wb:(a,b)=>{N.oj.beginQueryEXT(a, +Q[b])},Ke:a=>N.beginTransformFeedback(a),db:Xe,cb:Ye,He:(a,b,c)=>{N.bindBufferBase(a,b,ld[c])},Ie:(a,b,c,d,e)=>{N.bindBufferRange(a,b,ld[c],d,e)},bb:Ze,ab:(a,b)=>{N.bindRenderbuffer(a,nd[b])},Md:(a,b)=>{N.bindSampler(a,rd[b])},$a:$e,Ed:(a,b)=>{N.bindTransformFeedback(a,sd[b])},Pe:af,ob:af,Za:(a,b,c,d)=>N.blendColor(a,b,c,d),Ya:a=>N.blendEquation(a),Xa:bf,Wa:(a,b)=>N.blendFunc(a,b),Va:cf,Se:df,Ua:ef,Ta:ff,Sa:a=>N.checkFramebufferStatus(a),Ra:gf,je:(a,b,c,d)=>N.clearBufferfi(a,b,c,d),ke:(a,b,c)=>{N.clearBufferfv(a, +b,w,c>>2)},me:(a,b,c)=>{N.clearBufferiv(a,b,Ja,c>>2)},le:(a,b,c)=>{N.clearBufferuiv(a,b,Ka,c>>2)},Qa:hf,Pa:jf,Oa:a=>N.clearStencil(a),Wd:(a,b,c)=>{c=Number(c);return N.clientWaitSync(td[a],b,c)},vf:(a,b)=>{N.Vl.clipControlEXT(a,b)},Na:(a,b,c,d)=>{N.colorMask(!!a,!!b,!!c,!!d)},Ma:kf,La:lf,jf:(a,b,c,d,e,f,g,m,n)=>{N.ij?N.compressedTexImage3D(a,b,c,d,e,f,g,m,n):N.compressedTexImage3D(a,b,c,d,e,f,g,v,n,m)},Ka:mf,hf:(a,b,c,d,e,f,g,m,n,p,q)=>{N.ij?N.compressedTexSubImage3D(a,b,c,d,e,f,g,m,n,p,q):N.compressedTexSubImage3D(a, +b,c,d,e,f,g,m,n,v,q,p)},he:(a,b,c,d,e)=>N.copyBufferSubData(a,b,c,d,e),Ja:(a,b,c,d,e,f,g,m)=>N.copyTexImage2D(a,b,c,d,e,f,g,m),Ia:(a,b,c,d,e,f,g,m)=>N.copyTexSubImage2D(a,b,c,d,e,f,g,m),kf:(a,b,c,d,e,f,g,m,n)=>N.copyTexSubImage3D(a,b,c,d,e,f,g,m,n),Ha:nf,Ga:of,Fa:pf,Ea:qf,Da:rf,Ca:sf,ef:(a,b)=>{for(var c=0;c>2),!0),e=Q[d];e&&(N.deleteQuery(e),Q[d]=null)}},zb:(a,b)=>{for(var c=0;c>2),!0),e=Q[d];e&&(N.oj.deleteQueryEXT(e),Q[d]=null)}}, +Ba:(a,b)=>{for(var c=0;c>2),!0),e=nd[d];e&&(N.deleteRenderbuffer(e),e.name=0,nd[d]=null)}},Pd:(a,b)=>{for(var c=0;c>2),!0),e=rd[d];e&&(N.deleteSampler(e),e.name=0,rd[d]=null)}},Aa:tf,Xd:a=>{if(a){var b=td[a];b&&(N.deleteSync(b),b.name=0,td[a]=null)}},za:uf,Dd:(a,b)=>{for(var c=0;c>2),!0),e=sd[d];e&&(N.deleteTransformFeedback(e),e.name=0,sd[d]=null)}},Oe:vf,nb:vf,ya:wf,xa:xf,wa:(a,b)=>N.depthRange(a, +b),Ah:(a,b)=>{N.detachShader(O[a],P[b])},zh:yf,yh:zf,xh:Af,ae:Bf,ib:Bf,ld:Bf,sf:Bf,md:Bf,_e:Df,pf:Df,kb:Df,wh:Ef,$d:Ff,hb:Ff,jd:Ff,kd:Ff,qf:Ff,nf:(a,b,c,d,e,f)=>{N.drawElements(a,d,e,f)},vh:Gf,uh:Hf,bf:a=>N.endQuery(a),vb:a=>{N.oj.endQueryEXT(a)},Je:()=>N.endTransformFeedback(),_d:(a,b)=>(a=N.fenceSync(a,b))?(b=yd(td),a.name=b,td[b]=a,b):0,th:()=>N.finish(),sh:()=>N.flush(),rh:(a,b,c,d)=>{N.framebufferRenderbuffer(a,b,c,nd[d])},qh:If,Qe:(a,b,c,d,e)=>{N.framebufferTextureLayer(a,b,od[c],d,e)},ph:Jf, +oh:Kf,mh:Lf,gf:(a,b)=>{zd(a,b,"createQuery",Q)},Hb:(a,b)=>{for(var c=0;c>2),z.setInt32(d,0,!0);break}var e=yd(Q);d.name=e;Q[e]=d;z.setInt32(4*(b+4*c>>2),e,!0)}},lh:(a,b)=>{zd(a,b,"createRenderbuffer",nd)},Qd:(a,b)=>{zd(a,b,"createSampler",rd)},kh:Mf,Bd:(a,b)=>{zd(a,b,"createTransformFeedback",sd)},Ne:Nf,mb:Nf,nh:Of,jh:(a,b,c,d,e,f,g)=>{Pf("getActiveAttrib",a,b,c,d,e,f,g)},ih:Qf,ce:(a,b,c,d,e)=>{a=O[a];if(a=N.getActiveUniformBlockName(a, +b))e&&0>2),c,!0)):d&&z.setInt32(4*(d>>2),0,!0)},de:(a,b,c,d)=>{a=O[a];if(35393==c)z.setInt32(4*(d>>2),N.getActiveUniformBlockName(a,b).length+1,!0);else if(a=N.getActiveUniformBlockParameter(a,b,c),null!==a)if(35395==c)for(c=0;c>2),a[c],!0);else z.setInt32(4*(d>>2),a,!0)},fe:(a,b,c,d,e)=>{a=O[a];for(var f=[],g=0;g>2),!0));if(a=N.getActiveUniforms(a,f,d))for(b=a.length,g=0;g>2),a[g],!0)},hh:(a,b,c,d)=>{a=N.getAttachedShaders(O[a]);var e=a.length;e>b&&(e=b);z.setInt32(4*(c>>2),e,!0);for(b=0;b>2),P.indexOf(a[b]),!0)},fh:(a,b)=>N.getAttribLocation(O[a],b?A(v,b):""),eh:(a,b)=>Uf(a,b,4),Rd:(a,b,c)=>{Rf(c,N.getBufferParameter(a,b))},dh:(a,b,c)=>{c&&z.setInt32(4*(c>>2),N.getBufferParameter(a,b),!0)},ch:()=>N.getError(),bh:(a,b)=>Uf(a,b,2),we:(a,b)=>N.getFragDataLocation(O[a],b?A(v,b):""),ah:(a,b,c,d)=>{a=N.getFramebufferAttachmentParameter(a, +b,c);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;z.setInt32(4*(d>>2),a,!0)},Sd:(a,b,c)=>Vf(a,b,c,1),Ud:(a,b)=>{Uf(a,b,1)},Le:(a,b,c)=>Vf(a,b,c,0),$g:Wf,pd:(a,b,c,d,e)=>{a=N.getInternalformatParameter(a,b,c);if(null!==a)for(b=0;b>2),a[b],!0)},xd:()=>{},Zg:Xf,_g:Yf,qb:Zf,sb:$f,pb:Zf,$e:(a,b,c)=>{a=N.getQueryParameter(Q[a],b);var d;"boolean"==typeof a?d=a?1:0:d=a;z.setInt32(4*(c>>2),d,!0)},rb:$f,af:(a,b,c)=>{z.setInt32(4*(c>>2),N.getQuery(a, +b),!0)},tb:(a,b,c)=>{c&&(a=N.oj.getQueryEXT(a,b),z.setInt32(4*(c>>2),a,!0))},Yg:(a,b,c)=>{c&&z.setInt32(4*(c>>2),N.getRenderbufferParameter(a,b),!0)},Gd:(a,b,c)=>{z.setFloat32(4*(c>>2),N.getSamplerParameter(rd[a],b),!0)},Hd:(a,b,c)=>{z.setInt32(4*(c>>2),N.getSamplerParameter(rd[a],b),!0)},Vg:ag,Ug:(a,b,c,d)=>{a=N.getShaderPrecisionFormat(a,b);z.setInt32(4*(c>>2),a.rangeMin,!0);z.setInt32(4*(c+4>>2),a.rangeMax,!0);z.setInt32(4*(d>>2),a.precision,!0)},Tg:(a,b,c,d)=>{if(a=N.getShaderSource(P[a]))b=0< +b&&d?C(a,v,d,b):0,c&&z.setInt32(4*(c>>2),b,!0)},Wg:bg,Sg:cg,ie:dg,Td:(a,b,c,d,e)=>{a=N.getSyncParameter(td[a],b);null!==a&&(z.setInt32(4*(e>>2),a,!0),d&&z.setInt32(4*(d>>2),1,!0))},Rg:(a,b,c)=>{c&&z.setFloat32(4*(c>>2),N.getTexParameter(a,b),!0)},Qg:(a,b,c)=>{c&&z.setInt32(4*(c>>2),N.getTexParameter(a,b),!0)},Fe:(a,b,c,d,e,f,g)=>{a=O[a];if(a=N.getTransformFeedbackVarying(a,b))g&&0>2),c,!0)):d&&z.setInt32(4*(d>>2),0,!0),e&&z.setInt32(4*(e>>2),a.size,!0),f&& +z.setInt32(4*(f>>2),a.type,!0)},ee:(a,b)=>N.getUniformBlockIndex(O[a],b?A(v,b):""),ge:(a,b,c,d)=>{a=O[a];for(var e=[],f=0;f>2),!0)));if(a=N.getUniformIndices(a,e))for(b=a.length,f=0;f>2),a[f],!0)},Ng:gg,Pg:ig,Og:jg,xe:(a,b,c)=>hg(a,b,c,0),De:lg,Ce:lg,Jg:(a,b,c)=>{c&&z.setInt32(4*(c>>2),N.getVertexAttribOffset(a,b),!0)},Lg:(a,b,c)=>{kg(a,b,c,2)},Kg:(a,b,c)=>{kg(a,b,c,5)},Ig:(a,b)=>N.hint(a,b),ud:(a,b,c)=>{for(var d=Cf[b],e=0;e>2),!0);N.invalidateFramebuffer(a,d)},td:(a,b,c,d,e,f,g)=>{for(var m=Cf[b],n=0;n>2),!0);N.invalidateSubFramebuffer(a,m,d,e,f,g)},Hg:a=>(a=ld[a])?N.isBuffer(a):0,Gg:a=>N.isEnabled(a),Fg:a=>(a=md[a])?N.isFramebuffer(a):0,Eg:a=>(a=O[a])?N.isProgram(a):0,df:a=>(a=Q[a])?N.isQuery(a):0,xb:a=>(a=Q[a])?N.oj.isQueryEXT(a):0,Dg:a=>(a=nd[a])?N.isRenderbuffer(a):0,Od:a=>(a=rd[a])?N.isSampler(a):0,Cg:a=>(a=P[a])?N.isShader(a):0,Zd:a=>N.isSync(td[a]),Ag:a=>(a= +od[a])?N.isTexture(a):0,Ad:a=>N.isTransformFeedback(sd[a]),Me:mg,lb:mg,zg:a=>N.lineWidth(a),yg:ng,zd:()=>N.pauseTransformFeedback(),xg:og,uf:(a,b)=>{N.cm.polygonModeWEBGL(a,b)},wg:(a,b)=>N.polygonOffset(a,b),wf:(a,b,c)=>{N.Wl.polygonOffsetClampEXT(a,b,c)},wd:()=>{},vd:()=>{},ub:(a,b)=>{N.oj.queryCounterEXT(Q[a],b)},of:pg,vg:sg,ug:()=>{},tg:(a,b,c,d)=>N.renderbufferStorage(a,b,c,d),Re:(a,b,c,d,e)=>N.renderbufferStorageMultisample(a,b,c,d,e),yd:()=>N.resumeTransformFeedback(),sg:(a,b)=>{N.sampleCoverage(a, +!!b)},Jd:(a,b,c)=>{N.samplerParameterf(rd[a],b,c)},Id:(a,b,c)=>{c=z.getFloat32(4*(c>>2),!0);N.samplerParameterf(rd[a],b,c)},Ld:(a,b,c)=>{N.samplerParameteri(rd[a],b,c)},Kd:(a,b,c)=>{c=z.getInt32(4*(c>>2),!0);N.samplerParameteri(rd[a],b,c)},rg:tg,qg:()=>{},pg:ug,og:(a,b,c)=>N.stencilFunc(a,b,c),ng:(a,b,c,d)=>N.stencilFuncSeparate(a,b,c,d),mg:a=>N.stencilMask(a),lg:(a,b)=>N.stencilMaskSeparate(a,b),kg:(a,b,c)=>N.stencilOp(a,b,c),jg:(a,b,c,d)=>N.stencilOpSeparate(a,b,c,d),ig:vg,mf:(a,b,c,d,e,f,g,m,n, +p)=>{if(N.ij)N.texImage3D(a,b,c,d,e,f,g,m,n,p);else if(p){var q=qg(n);N.texImage3D(a,b,c,d,e,f,g,m,n,q,p>>>31-Math.clz32(q.BYTES_PER_ELEMENT))}else N.texImage3D(a,b,c,d,e,f,g,m,n,null)},hg:(a,b,c)=>N.texParameterf(a,b,c),gg:(a,b,c)=>{c=z.getFloat32(4*(c>>2),!0);N.texParameterf(a,b,c)},fg:wg,eg:(a,b,c)=>{c=z.getInt32(4*(c>>2),!0);N.texParameteri(a,b,c)},sd:(a,b,c,d,e)=>N.texStorage2D(a,b,c,d,e),qd:(a,b,c,d,e,f)=>N.texStorage3D(a,b,c,d,e,f),dg:xg,lf:(a,b,c,d,e,f,g,m,n,p,q)=>{if(N.ij)N.texSubImage3D(a, +b,c,d,e,f,g,m,n,p,q);else if(q){var r=qg(p);N.texSubImage3D(a,b,c,d,e,f,g,m,n,p,r,q>>>31-Math.clz32(r.BYTES_PER_ELEMENT))}else N.texSubImage3D(a,b,c,d,e,f,g,m,n,p,null)},Ge:(a,b,c,d)=>{a=O[a];for(var e=[],f=0;f>2),!0)));N.transformFeedbackVaryings(a,e,d)},cg:(a,b)=>{N.uniform1f(Y(a),b)},bg:yg,ag:(a,b)=>{N.uniform1i(Y(a),b)},$f:zg,ve:(a,b)=>{N.uniform1ui(Y(a),b)},qe:(a,b,c)=>{b&&N.uniform1uiv(Y(a),Ka,c>>2,b)},_f:(a,b,c)=>{N.uniform2f(Y(a),b,c)},Zf:Ag,Xf:(a,b,c)=> +{N.uniform2i(Y(a),b,c)},Wf:Bg,ue:(a,b,c)=>{N.uniform2ui(Y(a),b,c)},pe:(a,b,c)=>{b&&N.uniform2uiv(Y(a),Ka,c>>2,2*b)},Vf:(a,b,c,d)=>{N.uniform3f(Y(a),b,c,d)},Uf:Cg,Tf:(a,b,c,d)=>{N.uniform3i(Y(a),b,c,d)},Sf:Dg,te:(a,b,c,d)=>{N.uniform3ui(Y(a),b,c,d)},oe:(a,b,c)=>{b&&N.uniform3uiv(Y(a),Ka,c>>2,3*b)},Rf:(a,b,c,d,e)=>{N.uniform4f(Y(a),b,c,d,e)},Qf:Eg,Pf:(a,b,c,d,e)=>{N.uniform4i(Y(a),b,c,d,e)},Of:Fg,se:(a,b,c,d,e)=>{N.uniform4ui(Y(a),b,c,d,e)},ne:(a,b,c)=>{b&&N.uniform4uiv(Y(a),Ka,c>>2,4*b)},be:(a,b,c)=> +{a=O[a];N.uniformBlockBinding(a,b,c)},Nf:(a,b,c,d)=>{b&&N.uniformMatrix2fv(Y(a),!!c,w,d>>2,4*b)},Ze:(a,b,c,d)=>{b&&N.uniformMatrix2x3fv(Y(a),!!c,w,d>>2,6*b)},Xe:(a,b,c,d)=>{b&&N.uniformMatrix2x4fv(Y(a),!!c,w,d>>2,8*b)},Mf:Gg,Ye:(a,b,c,d)=>{b&&N.uniformMatrix3x2fv(Y(a),!!c,w,d>>2,6*b)},Ue:(a,b,c,d)=>{b&&N.uniformMatrix3x4fv(Y(a),!!c,w,d>>2,12*b)},Lf:Hg,Ve:(a,b,c,d)=>{b&&N.uniformMatrix4x2fv(Y(a),!!c,w,d>>2,8*b)},Te:(a,b,c,d)=>{b&&N.uniformMatrix4x3fv(Y(a),!!c,w,d>>2,12*b)},Kf:Ig,Jf:a=>{N.validateProgram(O[a])}, +If:(a,b)=>N.vertexAttrib1f(a,b),Hf:(a,b)=>{N.vertexAttrib1f(a,z.getFloat32(4*(b>>2),!0))},Gf:(a,b,c)=>N.vertexAttrib2f(a,b,c),Ff:(a,b)=>{N.vertexAttrib2f(a,z.getFloat32(4*(b>>2),!0),z.getFloat32(4*(b+4>>2),!0))},Ef:(a,b,c,d)=>N.vertexAttrib3f(a,b,c,d),Bf:(a,b)=>{N.vertexAttrib3f(a,z.getFloat32(4*(b>>2),!0),z.getFloat32(4*(b+4>>2),!0),z.getFloat32(4*(b+8>>2),!0))},Af:(a,b,c,d,e)=>N.vertexAttrib4f(a,b,c,d,e),zf:(a,b)=>{N.vertexAttrib4f(a,z.getFloat32(4*(b>>2),!0),z.getFloat32(4*(b+4>>2),!0),z.getFloat32(4* +(b+8>>2),!0),z.getFloat32(4*(b+12>>2),!0))},Fd:Jg,gb:Jg,nd:Jg,tf:Jg,od:Jg,Be:(a,b,c,d,e)=>N.vertexAttribI4i(a,b,c,d,e),ze:(a,b)=>{N.vertexAttribI4i(a,z.getInt32(4*(b>>2),!0),z.getInt32(4*(b+4>>2),!0),z.getInt32(4*(b+8>>2),!0),z.getInt32(4*(b+12>>2),!0))},Ae:(a,b,c,d,e)=>N.vertexAttribI4ui(a,b,c,d,e),ye:(a,b)=>{N.vertexAttribI4ui(a,z.getUint32(4*(b>>2),!0),z.getUint32(4*(b+4>>2),!0),z.getUint32(4*(b+8>>2),!0),z.getUint32(4*(b+12>>2),!0))},Ee:Kg,yf:Lg,xf:Mg,Vd:(a,b,c)=>{c=Number(c);N.waitSync(td[a], +b,c)},C:()=>1,Db:()=>!0,Nc:(a,b,c)=>{b={qk:z.getInt32(4*(c>>2),!0),ck:z.getInt32(4*(c+4>>2),!0),el:z.getInt32(4*(c+8>>2),!0),bl:b,Pj:z.getInt32(4*(c+12>>2),!0),zk:z.getInt32(4*(c+16>>2),!0)};return Ng(a,b)},sa:(a,b)=>{a=S(a);return a?a.requestPointerLock?ge()?ve(a):b?(ee(ve,2,[a]),1):-2:-1:-4},Ch:a=>{var b=v.length;a>>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,a+100663296);a:{d=(Math.min(2147483648,65536*Math.ceil(Math.max(a,d)/65536))-Ea.buffer.byteLength+65535)/ +65536;try{Ea.grow(d);La();var e=1;break a}catch(f){}e=void 0}if(e)return!0}return!1},_:Og,Y:(a,b,c)=>"undefined"==typeof onbeforeunload?-1:1!==c?-5:Pg(a,b),ka:(a,b,c,d)=>Qg(a,b,c,d,12,"blur"),q:pe,E:(a,b,c)=>{a=S(a);if(!a)return-4;a.style.width=b+"px";a.style.height=c+"px";return 0},la:(a,b,c,d)=>Qg(a,b,c,d,13,"focus"),aa:(a,b,c,d)=>{if(!R.fullscreenEnabled())return-1;a=S(a);if(!a)return-4;Rg(a,b,c,d,"webkitfullscreenchange");return Rg(a,b,c,d,"fullscreenchange")},T:(a,b,c)=>Og()?-1:Sg(a,b,c,26,"gamepadconnected"), +Q:(a,b,c)=>Og()?-1:Sg(a,b,c,27,"gamepaddisconnected"),da:(a,b,c,d)=>Tg(a,b,c,d,2,"keydown"),ba:(a,b,c,d)=>Tg(a,b,c,d,1,"keypress"),ca:(a,b,c,d)=>Tg(a,b,c,d,3,"keyup"),L:(a,b,c)=>{Wd(()=>dynCall_v(a),b,c)},qa:(a,b,c,d)=>Vg(a,b,c,d,5,"mousedown"),oa:(a,b,c,d)=>Vg(a,b,c,d,33,"mouseenter"),na:(a,b,c,d)=>Vg(a,b,c,d,34,"mouseleave"),ra:(a,b,c,d)=>Vg(a,b,c,d,8,"mousemove"),pa:(a,b,c,d)=>Vg(a,b,c,d,6,"mouseup"),ea:(a,b,c,d)=>{if(!document||!document.body||!(document.body.requestPointerLock||document.body.aj|| +document.body.Rk||document.body.Qk))return-1;a=S(a);if(!a)return-4;Wg(a,b,c,d,"mozpointerlockchange");Wg(a,b,c,d,"webkitpointerlockchange");Wg(a,b,c,d,"mspointerlockchange");return Wg(a,b,c,d,"pointerlockchange")},$:(a,b,c,d)=>Xg(a,b,c,d),fa:(a,b,c,d)=>Yg(a,b,c,d,25,"touchcancel"),ha:(a,b,c,d)=>Yg(a,b,c,d,23,"touchend"),ga:(a,b,c,d)=>Yg(a,b,c,d,24,"touchmove"),ia:(a,b,c,d)=>Yg(a,b,c,d,22,"touchstart"),Z:(a,b,c)=>Zg(a,b,c),ma:(a,b,c,d)=>(a=S(a))?"undefined"!=typeof a.onwheel?$g(a,b,c,d):-1:-4,Oc:a=> +document.title=a?A(v,a):"",t:a=>Qe(b=>Rc(b,a)),Cb:function(a,b,c,d,e){function f(u){r?u():Qc(u)}var g=a+108,m=z.getUint32(4*(g+36>>2),!0),n=z.getUint32(4*(g+40>>2),!0),p=z.getUint32(4*(g+44>>2),!0),q=z.getUint32(4*(g+48>>2),!0),r=!!(z.getUint32(4*(g+52>>2),!0)&64);ch(a,u=>{f(()=>{m?dynCall_vi(m,u):b?.(u)})},u=>{f(()=>{n?dynCall_vi(n,u):c?.(u)})},u=>{f(()=>{p?dynCall_vi(p,u):d?.(u)})},u=>{f(()=>{q?dynCall_vi(q,u):e?.(u)})});return a},_a:(a,b)=>{var c=0;eh().forEach((d,e)=>{var f=b+c;z.setUint32(4* +(a+4*e>>2),f,!0);e=f;for(f=0;f{var c=eh();z.setUint32(4*(a>>2),c.length,!0);var d=0;c.forEach(e=>d+=e.length+1);z.setUint32(4*(b>>2),d,!0);return 0},m:Oc,s:function(a){try{var b=J(a);Xb(b);return 0}catch(c){if("undefined"==typeof K||"ErrnoError"!==c.name)throw c;return c.Xi}},Bh:function(a,b){try{var c=J(a);t[b]=c.Ui?2:F(c.mode)?3:40960===(c.mode&61440)?7:4;z.setInt16(2*(b+2>>1),0,!0);x[b+8>>3]=BigInt(0);x[b+16>>3]=BigInt(0); +return 0}catch(d){if("undefined"==typeof K||"ErrnoError"!==d.name)throw d;return d.Xi}},ta:function(a,b,c,d){try{a:{var e=J(a);a=b;for(var f,g=b=0;g>2),!0),n=z.getUint32(4*(a+4>>2),!0);a+=8;var p=e,q=f,r=t;if(0>n||0>q)throw new D(28);if(null===p.fd)throw new D(8);if(1===(p.flags&2097155))throw new D(8);if(F(p.node.mode))throw new D(31);if(!p.Si.read)throw new D(28);var u="undefined"!=typeof q;if(!u)q=p.position;else if(!p.seekable)throw new D(70);var H=p.Si.read(p,r, +m,n,q);u||(p.position+=H);var Z=H;if(0>Z){var pa=-1;break a}b+=Z;if(Z>2),pa,!0);return 0}catch(aa){if("undefined"==typeof K||"ErrnoError"!==aa.name)throw aa;return aa.Xi}},gh:function(a,b,c,d){b=-9007199254740992>b||9007199254740992>3]=BigInt(e.position);e.sj&&0===b&&0===c&&(e.sj=null);return 0}catch(f){if("undefined"==typeof K||"ErrnoError"!==f.name)throw f;return f.Xi}}, +Pc:function(a){try{var b=J(a);return Qe(c=>{var d=b.node.Yi;d.type.Lj?d.type.Lj(d,!1,e=>{e?c(29):c(0)}):c(0)})}catch(c){if("undefined"==typeof K||"ErrnoError"!==c.name)throw c;return c.Xi}},va:function(a,b,c,d){try{a:{var e=J(a);a=b;for(var f,g=b=0;g>2),!0),n=z.getUint32(4*(a+4>>2),!0);a+=8;var p=Wb(e,t,m,n,f);if(0>p){var q=-1;break a}b+=p;if(p>2),q,!0);return 0}catch(r){if("undefined"==typeof K||"ErrnoError"!== +r.name)throw r;return r.Xi}},Mb:Ve,qc:We,pc:Xe,D:Ye,z:Ze,N:$e,Dc:af,tc:bf,sc:cf,vc:df,A:ef,P:ff,wc:gf,Vb:hf,Ub:jf,Rb:kf,Ec:lf,Hc:mf,rc:nf,Tb:of,Cc:pf,V:qf,yc:rf,R:sf,B:tf,W:uf,$b:vf,Bc:wf,Nb:xf,p:yf,Wb:zf,Kb:Af,Lb:Bf,xc:Df,Ib:Ef,Jb:Ff,o:Gf,_b:Hf,zc:If,Gb:Jf,X:Kf,Ac:Lf,Jc:Mf,ac:Nf,Fc:Of,cc:Qf,k:Wf,dc:Xf,y:Yf,Pb:ag,O:bg,i:cg,G:dg,bc:gg,l:ig,x:jg,oc:ng,M:og,S:pg,Ob:sg,Lc:tg,Sb:ug,d:vg,g:wg,Gc:xg,nc:yg,jc:zg,mc:Ag,ic:Bg,lc:Cg,hc:Dg,kc:Eg,gc:Fg,fc:Gg,ec:Hg,uc:Ig,Xb:Jg,Yb:Kg,Zb:Lg,Fb:Mg,J:gh,f:hh,v:ih, +u:jh,K:kh,h:lh,a:mh,b:nh,c:oh,n:ph,yb:qh,Eb:function(a,b){h.setStatus(a>=b?"":"Prefetching resources\u2026 ("+a+"/"+b+")",!0)},re:function(){try{return!!navigator.platform.match(/mac/i)}catch(a){return!1}}},W=function(){function a(c){W=c.exports;W=xe();Ea=W.Dh;La();ua=W.Ph;Na.unshift(W.Eh);Va("wasm-instantiate");return W}var b={a:rh};Ua("wasm-instantiate");if(h.instantiateWasm)try{return h.instantiateWasm(b,a)}catch(c){return Ca(`Module.instantiateWasm callback failed with error: ${c}`),!1}Ya??=Xa("taisei.wasm")? +"taisei.wasm":h.locateFile?h.locateFile("taisei.wasm",za):za+"taisei.wasm";bb(b,function(c){a(c.instance)});return{}}();h._vfs_sync_callback=(a,b,c)=>(h._vfs_sync_callback=W.Fh)(a,b,c);var sh=h._main=(a,b)=>(sh=h._main=W.Gh)(a,b),Db=(a,b)=>(Db=W.Hh)(a,b),B=a=>(B=W.Ih)(a),Te=a=>(Te=W.Jh)(a),th=(a,b)=>(th=W.Kh)(a,b),Ee=(a,b)=>(Ee=W.Lh)(a,b),U=a=>(U=W.Mh)(a),me=a=>(me=W.Nh)(a),T=()=>(T=W.Oh)(),V=h.dynCall_iiii=(a,b,c,d)=>(V=h.dynCall_iiii=W.Qh)(a,b,c,d); +h.dynCall_iidiiii=(a,b,c,d,e,f,g)=>(h.dynCall_iidiiii=W.Rh)(a,b,c,d,e,f,g);var dynCall_vii=h.dynCall_vii=(a,b,c)=>(dynCall_vii=h.dynCall_vii=W.Sh)(a,b,c),uh=h.dynCall_ii=(a,b)=>(uh=h.dynCall_ii=W.Th)(a,b);h.dynCall_jiji=(a,b,c,d)=>(h.dynCall_jiji=W.Uh)(a,b,c,d);var dynCall_vi=h.dynCall_vi=(a,b)=>(dynCall_vi=h.dynCall_vi=W.Vh)(a,b),vh=h.dynCall_viii=(a,b,c,d)=>(vh=h.dynCall_viii=W.Wh)(a,b,c,d),wh=h.dynCall_viiii=(a,b,c,d,e)=>(wh=h.dynCall_viiii=W.Xh)(a,b,c,d,e); +h.dynCall_viiiii=(a,b,c,d,e,f)=>(h.dynCall_viiiii=W.Yh)(a,b,c,d,e,f);h.dynCall_vffff=(a,b,c,d,e)=>(h.dynCall_vffff=W.Zh)(a,b,c,d,e);h.dynCall_vf=(a,b)=>(h.dynCall_vf=W._h)(a,b);h.dynCall_viiiiiiii=(a,b,c,d,e,f,g,m,n)=>(h.dynCall_viiiiiiii=W.$h)(a,b,c,d,e,f,g,m,n);var xh=h.dynCall_viiiiiiiii=(a,b,c,d,e,f,g,m,n,p)=>(xh=h.dynCall_viiiiiiiii=W.ai)(a,b,c,d,e,f,g,m,n,p),yh=h.dynCall_i=a=>(yh=h.dynCall_i=W.bi)(a);h.dynCall_vff=(a,b,c)=>(h.dynCall_vff=W.ci)(a,b,c); +var dynCall_v=h.dynCall_v=a=>(dynCall_v=h.dynCall_v=W.di)(a);h.dynCall_viiiiiii=(a,b,c,d,e,f,g,m)=>(h.dynCall_viiiiiii=W.ei)(a,b,c,d,e,f,g,m);var dynCall_iii=h.dynCall_iii=(a,b,c)=>(dynCall_iii=h.dynCall_iii=W.fi)(a,b,c);h.dynCall_vfi=(a,b,c)=>(h.dynCall_vfi=W.gi)(a,b,c);h.dynCall_viif=(a,b,c,d)=>(h.dynCall_viif=W.hi)(a,b,c,d);h.dynCall_vif=(a,b,c)=>(h.dynCall_vif=W.ii)(a,b,c);h.dynCall_viff=(a,b,c,d)=>(h.dynCall_viff=W.ji)(a,b,c,d);h.dynCall_vifff=(a,b,c,d,e)=>(h.dynCall_vifff=W.ki)(a,b,c,d,e); +h.dynCall_viffff=(a,b,c,d,e,f)=>(h.dynCall_viffff=W.li)(a,b,c,d,e,f);var zh=h.dynCall_viiiiii=(a,b,c,d,e,f,g)=>(zh=h.dynCall_viiiiii=W.mi)(a,b,c,d,e,f,g);h.dynCall_vfff=(a,b,c,d)=>(h.dynCall_vfff=W.ni)(a,b,c,d);h.dynCall_viiiiiiiiii=(a,b,c,d,e,f,g,m,n,p,q)=>(h.dynCall_viiiiiiiiii=W.oi)(a,b,c,d,e,f,g,m,n,p,q);h.dynCall_viiiiiiiiiii=(a,b,c,d,e,f,g,m,n,p,q,r)=>(h.dynCall_viiiiiiiiiii=W.pi)(a,b,c,d,e,f,g,m,n,p,q,r);h.dynCall_viifi=(a,b,c,d,e)=>(h.dynCall_viifi=W.qi)(a,b,c,d,e); +var Ah=h.dynCall_iiiii=(a,b,c,d,e)=>(Ah=h.dynCall_iiiii=W.ri)(a,b,c,d,e);h.dynCall_ji=(a,b)=>(h.dynCall_ji=W.si)(a,b);h.dynCall_iiiiiiiiiiii=(a,b,c,d,e,f,g,m,n,p,q,r)=>(h.dynCall_iiiiiiiiiiii=W.ti)(a,b,c,d,e,f,g,m,n,p,q,r);h.dynCall_iiiiii=(a,b,c,d,e,f)=>(h.dynCall_iiiiii=W.ui)(a,b,c,d,e,f);h.dynCall_iiiiiii=(a,b,c,d,e,f,g)=>(h.dynCall_iiiiiii=W.vi)(a,b,c,d,e,f,g);h.dynCall_vd=(a,b)=>(h.dynCall_vd=W.wi)(a,b);h.dynCall_iiji=(a,b,c,d)=>(h.dynCall_iiji=W.xi)(a,b,c,d); +h.dynCall_viidi=(a,b,c,d,e)=>(h.dynCall_viidi=W.yi)(a,b,c,d,e);h.dynCall_ff=(a,b)=>(h.dynCall_ff=W.zi)(a,b);h.dynCall_iiif=(a,b,c,d)=>(h.dynCall_iiif=W.Ai)(a,b,c,d);h.dynCall_iiiiiiiii=(a,b,c,d,e,f,g,m,n)=>(h.dynCall_iiiiiiiii=W.Bi)(a,b,c,d,e,f,g,m,n);h.dynCall_iiiiiiiiiii=(a,b,c,d,e,f,g,m,n,p,q)=>(h.dynCall_iiiiiiiiiii=W.Ci)(a,b,c,d,e,f,g,m,n,p,q);h.dynCall_viiif=(a,b,c,d,e)=>(h.dynCall_viiif=W.Di)(a,b,c,d,e);h.dynCall_iiiiiiii=(a,b,c,d,e,f,g,m)=>(h.dynCall_iiiiiiii=W.Ei)(a,b,c,d,e,f,g,m); +h.dynCall_iiiiiiiiii=(a,b,c,d,e,f,g,m,n,p)=>(h.dynCall_iiiiiiiiii=W.Fi)(a,b,c,d,e,f,g,m,n,p);h.dynCall_iiidd=(a,b,c,d,e)=>(h.dynCall_iiidd=W.Gi)(a,b,c,d,e);h.dynCall_id=(a,b)=>(h.dynCall_id=W.Hi)(a,b);h.dynCall_dd=(a,b)=>(h.dynCall_dd=W.Ii)(a,b);h.dynCall_d=a=>(h.dynCall_d=W.Ji)(a);h.dynCall_iid=(a,b,c)=>(h.dynCall_iid=W.Ki)(a,b,c);h.dynCall_di=(a,b)=>(h.dynCall_di=W.Li)(a,b);h.dynCall_dii=(a,b,c)=>(h.dynCall_dii=W.Mi)(a,b,c); +var Re=a=>(Re=W.Ni)(a),Ae=()=>(Ae=W.Oi)(),Fe=a=>(Fe=W.Pi)(a),Se=()=>(Se=W.Qi)();function ih(a,b,c){var d=T();try{return dynCall_iii(a,b,c)}catch(e){U(d);if(e!==e+0)throw e;th(1,0)}}function kh(a,b,c,d,e){var f=T();try{return Ah(a,b,c,d,e)}catch(g){U(f);if(g!==g+0)throw g;th(1,0)}}function jh(a,b,c,d){var e=T();try{return V(a,b,c,d)}catch(f){U(e);if(f!==f+0)throw f;th(1,0)}}function gh(a){var b=T();try{return yh(a)}catch(c){U(b);if(c!==c+0)throw c;th(1,0)}} +function nh(a,b,c,d){var e=T();try{vh(a,b,c,d)}catch(f){U(e);if(f!==f+0)throw f;th(1,0)}}function hh(a,b){var c=T();try{return uh(a,b)}catch(d){U(c);if(d!==d+0)throw d;th(1,0)}}function ph(a,b,c,d,e,f,g){var m=T();try{zh(a,b,c,d,e,f,g)}catch(n){U(m);if(n!==n+0)throw n;th(1,0)}}function mh(a,b,c){var d=T();try{dynCall_vii(a,b,c)}catch(e){U(d);if(e!==e+0)throw e;th(1,0)}}function lh(a,b){var c=T();try{dynCall_vi(a,b)}catch(d){U(c);if(d!==d+0)throw d;th(1,0)}} +function oh(a,b,c,d,e){var f=T();try{wh(a,b,c,d,e)}catch(g){U(f);if(g!==g+0)throw g;th(1,0)}}function qh(a,b,c,d,e,f,g,m,n,p){var q=T();try{xh(a,b,c,d,e,f,g,m,n,p)}catch(r){U(q);if(r!==r+0)throw r;th(1,0)}}h.addRunDependency=Ua;h.removeRunDependency=Va; +h.ccall=(a,b,c,d,e)=>{function f(r){--Mc;0!==n&&U(n);return"string"===b?r?A(v,r):"":"boolean"===b?!!r:r}var g={string:r=>{var u=0;null!==r&&void 0!==r&&0!==r&&(u=ne(r));return u},array:r=>{var u=me(r.length);t.set(r,u);return u}};a=h["_"+a];var m=[],n=0;if(d)for(var p=0;p$b(a); +h.FS_createPath=Bc;h.FS_createDevice=Dc;h.FS_createDataFile=(a,b,c,d,e,f)=>{Pb(a,b,c,d,e,f)};h.FS_createLazyFile=Fc;var Bh;Ta=function Ch(){Bh||Dh();Bh||(Ta=Ch)};function Eh(a=[]){var b=sh;a.unshift(ya);var c=a.length,d=me(4*(c+1)),e=d;a.forEach(g=>{g=ne(g);z.setUint32(4*(e>>2),g,!0);e+=4});z.setUint32(4*(e>>2),0,!0);try{var f=b(c,d);Oc(f,!0)}catch(g){Lc(g)}} +function Dh(){var a=wa;function b(){if(!Bh&&(Bh=!0,h.calledRun=!0,!Fa)){if(!h.noFSInit&&!fc){var c,d;fc=!0;e??=h.stdin;c??=h.stdout;d??=h.stderr;e?Dc("/dev","stdin",e):yc("/dev/tty","/dev/stdin");c?Dc("/dev","stdout",null,c):yc("/dev/tty","/dev/stdout");d?Dc("/dev","stderr",null,d):yc("/dev/tty1","/dev/stderr");Ub("/dev/stdin",0);Ub("/dev/stdout",1);Ub("/dev/stderr",1)}gc=!1;hb(Na);hb(Oa);h.onRuntimeInitialized?.();Fh&&Eh(a);if(h.postRun)for("function"==typeof h.postRun&&(h.postRun=[h.postRun]);h.postRun.length;){var e= +h.postRun.shift();Pa.unshift(e)}hb(Pa)}}if(!(0{setTimeout(()=>h.setStatus(""),1);b()},1)):b())}}if(h.preInit)for("function"==typeof h.preInit&&(h.preInit=[h.preInit]);0