
var Godot = (() => {
  var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
  
  return (
function(Godot = {})  {

function k(){aa.buffer!=ba.buffer&&ca();return ba}function l(){aa.buffer!=ba.buffer&&ca();return da}function ea(){aa.buffer!=ba.buffer&&ca();return fa}function ha(){aa.buffer!=ba.buffer&&ca();return ia}function n(){aa.buffer!=ba.buffer&&ca();return ja}function t(){aa.buffer!=ba.buffer&&ca();return ka}function u(){aa.buffer!=ba.buffer&&ca();return la}function ma(){aa.buffer!=ba.buffer&&ca();return oa}var v;v||=typeof Godot !== 'undefined' ? Godot : {};var pa,ra;
v.ready=new Promise((a,b)=>{pa=a;ra=b});var sa=Object.assign({},v),ta=[],ua="./this.program",va=(a,b)=>{throw b;},wa="object"==typeof window,xa="function"==typeof importScripts,ya="object"==typeof process&&"object"==typeof process.km&&"string"==typeof process.km.node,w=v.ENVIRONMENT_IS_PTHREAD||!1,Ba="";function Ca(a){return v.locateFile?v.locateFile(a,Ba):Ba+a}var Da;
if(wa||xa)xa?Ba=self.location.href:"undefined"!=typeof document&&document.currentScript&&(Ba=document.currentScript.src),_scriptDir&&(Ba=_scriptDir),0!==Ba.indexOf("blob:")?Ba=Ba.substr(0,Ba.replace(/[?#].*/,"").lastIndexOf("/")+1):Ba="",xa&&(Da=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)});var Ea=v.print||console.log.bind(console),Fa=v.printErr||console.error.bind(console);Object.assign(v,sa);sa=null;
v.arguments&&(ta=v.arguments);v.thisProgram&&(ua=v.thisProgram);v.quit&&(va=v.quit);var Ga;v.wasmBinary&&(Ga=v.wasmBinary);var noExitRuntime=v.noExitRuntime||!1;"object"!=typeof WebAssembly&&Ha("no native wasm support detected");var aa,Ia,Ja=!1,Ka,ba,da,fa,ia,ja,ka,la,oa;
function ca(){var a=aa.buffer;v.HEAP8=ba=new Int8Array(a);v.HEAP16=fa=new Int16Array(a);v.HEAP32=ja=new Int32Array(a);v.HEAPU8=da=new Uint8Array(a);v.HEAPU16=ia=new Uint16Array(a);v.HEAPU32=ka=new Uint32Array(a);v.HEAPF32=la=new Float32Array(a);v.HEAPF64=oa=new Float64Array(a)}var La=v.INITIAL_MEMORY||67108864;5242880<=La||Ha("INITIAL_MEMORY should be larger than STACK_SIZE, was "+La+"! (STACK_SIZE=5242880)");
if(w)aa=v.wasmMemory;else if(v.wasmMemory)aa=v.wasmMemory;else if(aa=new WebAssembly.Memory({initial:La/65536,maximum:32768,shared:!0}),!(aa.buffer instanceof SharedArrayBuffer))throw Fa("requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag"),ya&&Fa("(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and/or recent version)"),
Error("bad memory");ca();La=aa.buffer.byteLength;var Na,Oa=[],Pa=[],Qa=[],Ra=[],Sa=[],Ta=!1,Ua=0;function Va(){return noExitRuntime||0<Ua}
function Wa(){w||(v.noFSInit||Xa||(Xa=!0,Ya(),v.stdin=v.stdin,v.stdout=v.stdout,v.stderr=v.stderr,v.stdin?Za("stdin",v.stdin):$a("/dev/tty","/dev/stdin"),v.stdout?Za("stdout",null,v.stdout):$a("/dev/tty","/dev/stdout"),v.stderr?Za("stderr",null,v.stderr):$a("/dev/tty1","/dev/stderr"),ab("/dev/stdin",0),ab("/dev/stdout",1),ab("/dev/stderr",1)),bb=!1,cb.root=db(cb,null),eb(Pa))}function fb(){var a=v.preRun.shift();Oa.unshift(a)}var gb=0,hb=null,ib=null;
function Ha(a){if(v.onAbort)v.onAbort(a);a="Aborted("+a+")";Fa(a);Ja=!0;Ka=1;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");ra(a);throw a;}function jb(a){return a.startsWith("data:application/octet-stream;base64,")}var kb;kb="godot.javascript.opt.tools.threads.wasm";jb(kb)||(kb=Ca(kb));function lb(a){try{if(a==kb&&Ga)return new Uint8Array(Ga);if(Da)return Da(a);throw"both async and sync fetching of the wasm failed";}catch(b){Ha(b)}}
function mb(a){return Ga||!wa&&!xa||"function"!=typeof fetch?Promise.resolve().then(()=>lb(a)):fetch(a,{credentials:"same-origin"}).then(b=>{if(!b.ok)throw"failed to load wasm binary file at '"+a+"'";return b.arrayBuffer()}).catch(()=>lb(a))}function nb(a,b,c){return mb(a).then(d=>WebAssembly.instantiate(d,b)).then(d=>d).then(c,d=>{Fa("failed to asynchronously prepare wasm: "+d);Ha(d)})}
function ob(a,b){var c=kb;return Ga||"function"!=typeof WebAssembly.instantiateStreaming||jb(c)||"function"!=typeof fetch?nb(c,a,b):fetch(c,{credentials:"same-origin"}).then(d=>WebAssembly.instantiateStreaming(d,a).then(b,function(e){Fa("wasm streaming compile failed: "+e);Fa("falling back to ArrayBuffer instantiation");return nb(c,a,b)}))}var x,z;function pb(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}
function qb(a){a.terminate();a.onmessage=()=>{}}function rb(a){(a=B.gj[a])||Ha();B.Wl(a)}function sb(a,b){l().fill(0,a,a+b);return a}function tb(a){var b=B.ul();if(!b)return 6;B.qj.push(b);B.gj[a.fj]=b;b.fj=a.fj;b.postMessage({cmd:"run",start_routine:a.Zl,arg:a.zk,pthread_ptr:a.fj},a.gm);return 0}
var ub=(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},vb=a=>{var b="/"===a.charAt(0),c="/"===a.substr(-1);(a=ub(a.split("/").filter(d=>!!d),!b).join("/"))||b||(a=".");a&&c&&(a+="/");return(b?"/":"")+a},wb=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},xb=a=>{if("/"===
a)return"/";a=vb(a);a=a.replace(/\/$/,"");var b=a.lastIndexOf("/");return-1===b?a:a.substr(b+1)};function yb(){if("object"==typeof crypto&&"function"==typeof crypto.getRandomValues)return a=>(a.set(crypto.getRandomValues(new Uint8Array(a.byteLength))),a);Ha("initRandomDevice")}function zb(a){return(zb=yb())(a)}
function Ab(){for(var a="",b=!1,c=arguments.length-1;-1<=c&&!b;c--){b=0<=c?arguments[c]:Bb;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=ub(a.split("/").filter(d=>!!d),!b).join("/");return(b?"/":"")+a||"."}
var Cb=(a,b)=>{function c(g){for(var h=0;h<g.length&&""===g[h];h++);for(var m=g.length-1;0<=m&&""===g[m];m--);return h>m?[]:g.slice(h,m-h+1)}a=Ab(a).substr(1);b=Ab(b).substr(1);a=c(a.split("/"));b=c(b.split("/"));for(var d=Math.min(a.length,b.length),e=d,f=0;f<d;f++)if(a[f]!==b[f]){e=f;break}d=[];for(f=e;f<a.length;f++)d.push("..");d=d.concat(b.slice(e));return d.join("/")};
function Db(a){for(var b=0,c=0;c<a.length;++c){var d=a.charCodeAt(c);127>=d?b++:2047>=d?b+=2:55296<=d&&57343>=d?(b+=4,++c):b+=3}return b}
function Eb(a,b,c,d){if(!(0<d))return 0;var e=c;d=c+d-1;for(var f=0;f<a.length;++f){var g=a.charCodeAt(f);if(55296<=g&&57343>=g){var h=a.charCodeAt(++f);g=65536+((g&1023)<<10)|h&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 Fb(a,b){var c=Array(Db(a)+1);a=Eb(a,c,0,c.length);b&&(c.length=a);return c}var Gb="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;
function Hb(a,b,c){var d=b+c;for(c=b;a[c]&&!(c>=d);)++c;if(16<c-b&&a.buffer&&Gb)return Gb.decode(a.buffer instanceof SharedArrayBuffer?a.slice(b,c):a.subarray(b,c));for(d="";b<c;){var e=a[b++];if(e&128){var f=a[b++]&63;if(192==(e&224))d+=String.fromCharCode((e&31)<<6|f);else{var g=a[b++]&63;e=224==(e&240)?(e&15)<<12|f<<6|g:(e&7)<<18|f<<12|g<<6|a[b++]&63;65536>e?d+=String.fromCharCode(e):(e-=65536,d+=String.fromCharCode(55296|e>>10,56320|e&1023))}}else d+=String.fromCharCode(e)}return d}var Ib=[];
function Jb(a,b){Ib[a]={input:[],Qi:[],uj:b};Kb(a,Lb)}
var Lb={open:function(a){var b=Ib[a.node.Dj];if(!b)throw new C(43);a.Li=b;a.seekable=!1},close:function(a){a.Li.uj.Mj(a.Li)},Mj:function(a){a.Li.uj.Mj(a.Li)},read:function(a,b,c,d){if(!a.Li||!a.Li.uj.Hk)throw new C(60);for(var e=0,f=0;f<d;f++){try{var g=a.Li.uj.Hk(a.Li)}catch(h){throw new C(29);}if(void 0===g&&0===e)throw new C(6);if(null===g||void 0===g)break;e++;b[c+f]=g}e&&(a.node.timestamp=Date.now());return e},write:function(a,b,c,d){if(!a.Li||!a.Li.uj.mk)throw new C(60);try{for(var e=0;e<d;e++)a.Li.uj.mk(a.Li,
b[c+e])}catch(f){throw new C(29);}d&&(a.node.timestamp=Date.now());return e}},Mb={Hk:function(a){if(!a.input.length){var b=null;"undefined"!=typeof window&&"function"==typeof window.prompt?(b=window.prompt("Input: "),null!==b&&(b+="\n")):"function"==typeof readline&&(b=readline(),null!==b&&(b+="\n"));if(!b)return null;a.input=Fb(b,!0)}return a.input.shift()},mk:function(a,b){null===b||10===b?(Ea(Hb(a.Qi,0)),a.Qi=[]):0!=b&&a.Qi.push(b)},Mj:function(a){a.Qi&&0<a.Qi.length&&(Ea(Hb(a.Qi,0)),a.Qi=[])}},
Nb={mk:function(a,b){null===b||10===b?(Fa(Hb(a.Qi,0)),a.Qi=[]):0!=b&&a.Qi.push(b)},Mj:function(a){a.Qi&&0<a.Qi.length&&(Fa(Hb(a.Qi,0)),a.Qi=[])}},D={aj:null,Ni:function(){return D.createNode(null,"/",16895,0)},createNode:function(a,b,c,d){if(24576===(c&61440)||4096===(c&61440))throw new C(63);D.aj||(D.aj={dir:{node:{$i:D.Gi.$i,Ri:D.Gi.Ri,Aj:D.Gi.Aj,Sj:D.Gi.Sj,Xj:D.Gi.Xj,ck:D.Gi.ck,Zj:D.Gi.Zj,Wj:D.Gi.Wj,$j:D.Gi.$j},stream:{oj:D.Ji.oj}},file:{node:{$i:D.Gi.$i,Ri:D.Gi.Ri},stream:{oj:D.Ji.oj,read:D.Ji.read,
write:D.Ji.write,xk:D.Ji.xk,Lk:D.Ji.Lk,Mk:D.Ji.Mk}},link:{node:{$i:D.Gi.$i,Ri:D.Gi.Ri,Fj:D.Gi.Fj},stream:{}},Bk:{node:{$i:D.Gi.$i,Ri:D.Gi.Ri},stream:Ob}});c=Pb(a,b,c,d);16384===(c.mode&61440)?(c.Gi=D.aj.dir.node,c.Ji=D.aj.dir.stream,c.Ki={}):32768===(c.mode&61440)?(c.Gi=D.aj.file.node,c.Ji=D.aj.file.stream,c.Mi=0,c.Ki=null):40960===(c.mode&61440)?(c.Gi=D.aj.link.node,c.Ji=D.aj.link.stream):8192===(c.mode&61440)&&(c.Gi=D.aj.Bk.node,c.Ji=D.aj.Bk.stream);c.timestamp=Date.now();a&&(a.Ki[b]=c,a.timestamp=
c.timestamp);return c},sl:function(a){return a.Ki?a.Ki.subarray?a.Ki.subarray(0,a.Mi):new Uint8Array(a.Ki):new Uint8Array(0)},Fk:function(a,b){var c=a.Ki?a.Ki.length:0;c>=b||(b=Math.max(b,c*(1048576>c?2:1.125)>>>0),0!=c&&(b=Math.max(b,256)),c=a.Ki,a.Ki=new Uint8Array(b),0<a.Mi&&a.Ki.set(c.subarray(0,a.Mi),0))},Vl:function(a,b){if(a.Mi!=b)if(0==b)a.Ki=null,a.Mi=0;else{var c=a.Ki;a.Ki=new Uint8Array(b);c&&a.Ki.set(c.subarray(0,Math.min(b,a.Mi)));a.Mi=b}},Gi:{$i:function(a){var b={};b.pl=8192===(a.mode&
61440)?a.id:1;b.jk=a.id;b.mode=a.mode;b.Kl=1;b.uid=0;b.zl=0;b.Dj=a.Dj;16384===(a.mode&61440)?b.size=4096:32768===(a.mode&61440)?b.size=a.Mi:40960===(a.mode&61440)?b.size=a.link.length:b.size=0;b.cl=new Date(a.timestamp);b.Uj=new Date(a.timestamp);b.ml=new Date(a.timestamp);b.gl=4096;b.hl=Math.ceil(b.size/b.gl);return b},Ri:function(a,b){void 0!==b.mode&&(a.mode=b.mode);void 0!==b.timestamp&&(a.timestamp=b.timestamp);void 0!==b.size&&D.Vl(a,b.size)},Aj:function(){throw Qb[44];},Sj:function(a,b,c,d){return D.createNode(a,
b,c,d)},Xj:function(a,b,c){if(16384===(a.mode&61440)){try{var d=Rb(b,c)}catch(f){}if(d)for(var e in d.Ki)throw new C(55);}delete a.parent.Ki[a.name];a.parent.timestamp=Date.now();a.name=c;b.Ki[c]=a;b.timestamp=a.parent.timestamp;a.parent=b},ck:function(a,b){delete a.Ki[b];a.timestamp=Date.now()},Zj:function(a,b){var c=Rb(a,b),d;for(d in c.Ki)throw new C(55);delete a.Ki[b];a.timestamp=Date.now()},Wj:function(a){var b=[".",".."],c;for(c in a.Ki)a.Ki.hasOwnProperty(c)&&b.push(c);return b},$j:function(a,
b,c){a=D.createNode(a,b,41471,0);a.link=c;return a},Fj:function(a){if(40960!==(a.mode&61440))throw new C(28);return a.link}},Ji:{read:function(a,b,c,d,e){var f=a.node.Ki;if(e>=a.node.Mi)return 0;a=Math.min(a.node.Mi-e,d);if(8<a&&f.subarray)b.set(f.subarray(e,e+a),c);else for(d=0;d<a;d++)b[c+d]=f[e+d];return a},write:function(a,b,c,d,e,f){b.buffer===k().buffer&&(f=!1);if(!d)return 0;a=a.node;a.timestamp=Date.now();if(b.subarray&&(!a.Ki||a.Ki.subarray)){if(f)return a.Ki=b.subarray(c,c+d),a.Mi=d;if(0===
a.Mi&&0===e)return a.Ki=b.slice(c,c+d),a.Mi=d;if(e+d<=a.Mi)return a.Ki.set(b.subarray(c,c+d),e),d}D.Fk(a,e+d);if(a.Ki.subarray&&b.subarray)a.Ki.set(b.subarray(c,c+d),e);else for(f=0;f<d;f++)a.Ki[e+f]=b[c+f];a.Mi=Math.max(a.Mi,e+d);return d},oj:function(a,b,c){1===c?b+=a.position:2===c&&32768===(a.node.mode&61440)&&(b+=a.node.Mi);if(0>b)throw new C(28);return b},xk:function(a,b,c){D.Fk(a.node,b+c);a.node.Mi=Math.max(a.node.Mi,b+c)},Lk:function(a,b,c,d,e){if(32768!==(a.node.mode&61440))throw new C(43);
a=a.node.Ki;if(e&2||a.buffer!==k().buffer){if(0<c||c+b<a.length)a.subarray?a=a.subarray(c,c+b):a=Array.prototype.slice.call(a,c,c+b);c=!0;b=65536*Math.ceil(b/65536);b=(e=Sb(65536,b))?sb(e,b):0;if(!b)throw new C(48);k().set(a,b)}else c=!1,b=a.byteOffset;return{Jm:b,pm:c}},Mk:function(a,b,c,d){D.Ji.write(a,b,0,d,c,!1);return 0}}},Tb=v.preloadPlugins||[];function Ub(a,b){var c=0;a&&(c|=365);b&&(c|=146);return c}
var F={lj:{},indexedDB:()=>{if("undefined"!=typeof indexedDB)return indexedDB;var a=null;"object"==typeof window&&(a=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB);a||Ha("IDBFS used, but indexedDB not supported");return a},$k:21,kj:"FILE_DATA",Ni:function(a){return D.Ni.apply(null,arguments)},Tk:(a,b,c)=>{F.tl(a,(d,e)=>{if(d)return c(d);F.vl(a,(f,g)=>{if(f)return c(f);F.Rl(b?g:e,b?e:g,c)})})},Ol:()=>{Object.values(F.lj).forEach(a=>a.close());F.lj={}},rl:(a,b)=>
{var c=F.lj[a];if(c)return b(null,c);try{var d=F.indexedDB().open(a,F.$k)}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(F.kj)?g=e.objectStore(F.kj):g=f.createObjectStore(F.kj);g.indexNames.contains("timestamp")||g.createIndex("timestamp","timestamp",{unique:!1})};d.onsuccess=()=>{c=d.result;F.lj[a]=c;b(null,c)};d.onerror=e=>{b(this.error);e.preventDefault()}},tl:(a,b)=>{function c(h){return"."!==
h&&".."!==h}function d(h){return m=>vb(h+"/"+m)}var e={};for(a=Vb(a.Bj).filter(c).map(d(a.Bj));a.length;){var f=a.pop();try{var g=Wb(f)}catch(h){return b(h)}16384===(g.mode&61440)&&a.push.apply(a,Vb(f).filter(c).map(d(f)));e[f]={timestamp:g.Uj}}return b(null,{type:"local",entries:e})},vl:(a,b)=>{var c={};F.rl(a.Bj,(d,e)=>{if(d)return b(d);try{var f=e.transaction([F.kj],"readonly");f.onerror=g=>{b(this.error);g.preventDefault()};f.objectStore(F.kj).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)}})},Hl:(a,b)=>{try{var c=Xb(a).node;var d=Wb(a)}catch(e){return b(e)}return 16384===(d.mode&61440)?b(null,{timestamp:d.Uj,mode:d.mode}):32768===(d.mode&61440)?(c.Ki=D.sl(c),b(null,{timestamp:d.Uj,mode:d.mode,contents:c.Ki})):b(Error("node type not supported"))},$l:(a,b,c)=>{try{if(16384===(b.mode&61440))Yb(a,b.mode);else if(32768===(b.mode&61440))Zb(a,b.contents,
{Ak:!0});else return c(Error("node type not supported"));$b(a,b.mode);var d=b.timestamp,e=b.timestamp,f=Xb(a,{ij:!0}).node;f.Gi.Ri(f,{timestamp:Math.max(d,e)})}catch(g){return c(g)}c(null)},Tl:(a,b)=>{try{var c=Wb(a);16384===(c.mode&61440)?ac(a):32768===(c.mode&61440)&&bc(a)}catch(d){return b(d)}b(null)},Il:(a,b,c)=>{a=a.get(b);a.onsuccess=d=>{c(null,d.target.result)};a.onerror=d=>{c(this.error);d.preventDefault()}},am:(a,b,c,d)=>{try{var e=a.put(c,b)}catch(f){d(f);return}e.onsuccess=()=>{d(null)};
e.onerror=f=>{d(this.error);f.preventDefault()}},Ul:(a,b,c)=>{a=a.delete(b);a.onsuccess=()=>{c(null)};a.onerror=d=>{c(this.error);d.preventDefault()}},Rl:(a,b,c)=>{function d(r){if(r&&!h)return h=!0,c(r)}var e=0,f=[];Object.keys(a.entries).forEach(function(r){var A=a.entries[r],G=b.entries[r];G&&A.timestamp.getTime()==G.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 h=!1,m=("remote"===a.type?a.db:
b.db).transaction([F.kj],"readwrite"),p=m.objectStore(F.kj);m.onerror=r=>{d(this.error);r.preventDefault()};m.oncomplete=()=>{h||c(null)};f.sort().forEach(r=>{"local"===b.type?F.Il(p,r,(A,G)=>{if(A)return d(A);F.$l(r,G,d)}):F.Hl(r,(A,G)=>{if(A)return d(A);F.am(p,r,G,d)})});g.sort().reverse().forEach(r=>{"local"===b.type?F.Tl(r,d):F.Ul(p,r,d)})}},cc=null,dc={},ec=[],fc=1,gc=null,Bb="/",bb=!0,C=null,Qb={},hc=0,Xb=(a,b={})=>{a=Ab(a);if(!a)return{path:"",node:null};b=Object.assign({ik:!0,pk:0},b);if(8<
b.pk)throw new C(32);a=a.split("/").filter(g=>!!g);for(var c=cc,d="/",e=0;e<a.length;e++){var f=e===a.length-1;if(f&&b.parent)break;c=Rb(c,a[e]);d=vb(d+"/"+a[e]);c.Xi&&(!f||f&&b.ik)&&(c=c.Xi.root);if(!f||b.ij)for(f=0;40960===(c.mode&61440);)if(c=ic(d),d=Ab(wb(d),c),c=Xb(d,{pk:b.pk+1}).node,40<f++)throw new C(32);}return{path:d,node:c}},jc=a=>{for(var b;;){if(a===a.parent)return a=a.Ni.Bj,b?"/"!==a[a.length-1]?`${a}/${b}`:a+b:a;b=b?`${a.name}/${b}`:a.name;a=a.parent}},kc=(a,b)=>{for(var c=0,d=0;d<
b.length;d++)c=(c<<5)-c+b.charCodeAt(d)|0;return(a+c>>>0)%gc.length},lc=a=>{var b=kc(a.parent.id,a.name);a.pj=gc[b];gc[b]=a},mc=a=>{var b=kc(a.parent.id,a.name);if(gc[b]===a)gc[b]=a.pj;else for(b=gc[b];b;){if(b.pj===a){b.pj=a.pj;break}b=b.pj}},Rb=(a,b)=>{var c;if(c=(c=nc(a,"x"))?c:a.Gi.Aj?0:2)throw new C(c,a);for(c=gc[kc(a.id,b)];c;c=c.pj){var d=c.name;if(c.parent.id===a.id&&d===b)return c}return a.Gi.Aj(a,b)},Pb=(a,b,c,d)=>{a=new oc(a,b,c,d);lc(a);return a},qc=a=>{var b=["r","w","rw"][a&3];a&512&&
(b+="w");return b},nc=(a,b)=>{if(bb)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},rc=(a,b)=>{try{return Rb(a,b),20}catch(c){}return nc(a,"wx")},sc=(a,b,c)=>{try{var d=Rb(a,b)}catch(e){return e.Hi}if(a=nc(a,"wx"))return a;if(c){if(16384!==(d.mode&61440))return 54;if(d===d.parent||jc(d)===Bb)return 10}else if(16384===(d.mode&61440))return 31;return 0},tc=(a=0)=>{for(;4096>=a;a++)if(!ec[a])return a;throw new C(33);
},vc=(a,b)=>{uc||(uc=function(){this.Yi={}},uc.prototype={},Object.defineProperties(uc.prototype,{object:{get:function(){return this.node},set:function(c){this.node=c}},flags:{get:function(){return this.Yi.flags},set:function(c){this.Yi.flags=c}},position:{get:function(){return this.Yi.position},set:function(c){this.Yi.position=c}}}));a=Object.assign(new uc,a);b=tc(b);a.Pi=b;return ec[b]=a},Ob={open:a=>{a.Ji=dc[a.node.Dj].Ji;a.Ji.open&&a.Ji.open(a)},oj:()=>{throw new C(70);}},Kb=(a,b)=>{dc[a]={Ji:b}},
wc=a=>{var b=[];for(a=[a];a.length;){var c=a.pop();b.push(c);a.push.apply(a,c.Tj)}return b},xc=(a,b)=>{function c(g){hc--;return b(g)}function d(g){if(g){if(!d.ql)return d.ql=!0,c(g)}else++f>=e.length&&c(null)}"function"==typeof a&&(b=a,a=!1);hc++;1<hc&&Fa(`warning: ${hc} FS.syncfs operations in flight at once, probably just doing extra work`);var e=wc(cc.Ni),f=0;e.forEach(g=>{if(!g.type.Tk)return d(null);g.type.Tk(g,a,d)})},db=(a,b)=>{var c="/"===b,d=!b;if(c&&cc)throw new C(10);if(!c&&!d){var e=
Xb(b,{ik:!1});b=e.path;e=e.node;if(e.Xi)throw new C(10);if(16384!==(e.mode&61440))throw new C(54);}b={type:a,Gm:{},Bj:b,Tj:[]};a=a.Ni(b);a.Ni=b;b.root=a;c?cc=a:e&&(e.Xi=b,e.Ni&&e.Ni.Tj.push(b));return a},yc=a=>{a=Xb(a,{ik:!1});if(!a.node.Xi)throw new C(28);a=a.node;var b=a.Xi,c=wc(b);Object.keys(gc).forEach(d=>{for(d=gc[d];d;){var e=d.pj;c.includes(d.Ni)&&mc(d);d=e}});a.Xi=null;a.Ni.Tj.splice(a.Ni.Tj.indexOf(b),1)},zc=(a,b,c)=>{var d=Xb(a,{parent:!0}).node;a=xb(a);if(!a||"."===a||".."===a)throw new C(28);
var e=rc(d,a);if(e)throw new C(e);if(!d.Gi.Sj)throw new C(63);return d.Gi.Sj(d,a,b,c)},Ac=(a,b)=>zc(a,(void 0!==b?b:511)&1023|16384,0),Yb=(a,b)=>{a=a.split("/");for(var c="",d=0;d<a.length;++d)if(a[d]){c+="/"+a[d];try{Ac(c,b)}catch(e){if(20!=e.Hi)throw e;}}},Bc=(a,b,c)=>{"undefined"==typeof c&&(c=b,b=438);zc(a,b|8192,c)},$a=(a,b)=>{if(!Ab(a))throw new C(44);var c=Xb(b,{parent:!0}).node;if(!c)throw new C(44);b=xb(b);var d=rc(c,b);if(d)throw new C(d);if(!c.Gi.$j)throw new C(63);c.Gi.$j(c,b,a)},ac=a=>
{var b=Xb(a,{parent:!0}).node;a=xb(a);var c=Rb(b,a),d=sc(b,a,!0);if(d)throw new C(d);if(!b.Gi.Zj)throw new C(63);if(c.Xi)throw new C(10);b.Gi.Zj(b,a);mc(c)},Vb=a=>{a=Xb(a,{ij:!0}).node;if(!a.Gi.Wj)throw new C(54);return a.Gi.Wj(a)},bc=a=>{var b=Xb(a,{parent:!0}).node;if(!b)throw new C(44);a=xb(a);var c=Rb(b,a),d=sc(b,a,!1);if(d)throw new C(d);if(!b.Gi.ck)throw new C(63);if(c.Xi)throw new C(10);b.Gi.ck(b,a);mc(c)},ic=a=>{a=Xb(a).node;if(!a)throw new C(44);if(!a.Gi.Fj)throw new C(28);return Ab(jc(a.parent),
a.Gi.Fj(a))},Wb=(a,b)=>{a=Xb(a,{ij:!b}).node;if(!a)throw new C(44);if(!a.Gi.$i)throw new C(63);return a.Gi.$i(a)},Cc=a=>Wb(a,!0),$b=(a,b)=>{a="string"==typeof a?Xb(a,{ij:!0}).node:a;if(!a.Gi.Ri)throw new C(63);a.Gi.Ri(a,{mode:b&4095|a.mode&-4096,timestamp:Date.now()})},ab=(a,b,c)=>{if(""===a)throw new C(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=vb(a);try{e=Xb(a,{ij:!(b&131072)}).node}catch(f){}}d=!1;if(b&64)if(e){if(b&128)throw new C(20);}else e=zc(a,c,0),d=!0;if(!e)throw new C(44);8192===(e.mode&61440)&&(b&=-513);if(b&65536&&16384!==(e.mode&61440))throw new C(54);if(!d&&(c=e?40960===(e.mode&61440)?32:16384===(e.mode&61440)&&("r"!==qc(b)||b&512)?31:nc(e,qc(b)):44))throw new C(c);if(b&512&&!d){c=e;c="string"==typeof c?Xb(c,{ij:!0}).node:c;if(!c.Gi.Ri)throw new C(63);if(16384===(c.mode&61440))throw new C(31);
if(32768!==(c.mode&61440))throw new C(28);if(d=nc(c,"w"))throw new C(d);c.Gi.Ri(c,{size:0,timestamp:Date.now()})}b&=-131713;e=vc({node:e,path:jc(e),flags:b,seekable:!0,position:0,Ji:e.Ji,im:[],error:!1});e.Ji.open&&e.Ji.open(e);!v.logReadFiles||b&1||(Dc||={},a in Dc||(Dc[a]=1));return e},Ec=a=>{if(null===a.Pi)throw new C(8);a.mj&&(a.mj=null);try{a.Ji.close&&a.Ji.close(a)}catch(b){throw b;}finally{ec[a.Pi]=null}a.Pi=null},Fc=(a,b,c)=>{if(null===a.Pi)throw new C(8);if(!a.seekable||!a.Ji.oj)throw new C(70);
if(0!=c&&1!=c&&2!=c)throw new C(28);a.position=a.Ji.oj(a,b,c);a.im=[];return a.position},Gc=(a,b,c,d,e,f)=>{if(0>d||0>e)throw new C(28);if(null===a.Pi)throw new C(8);if(0===(a.flags&2097155))throw new C(8);if(16384===(a.node.mode&61440))throw new C(31);if(!a.Ji.write)throw new C(28);a.seekable&&a.flags&1024&&Fc(a,0,2);var g="undefined"!=typeof e;if(!g)e=a.position;else if(!a.seekable)throw new C(70);b=a.Ji.write(a,b,c,d,e,f);g||(a.position+=b);return b},Zb=(a,b,c={})=>{c.flags=c.flags||577;a=ab(a,
c.flags,c.mode);if("string"==typeof b){var d=new Uint8Array(Db(b)+1);b=Eb(b,d,0,d.length);Gc(a,d,0,b,void 0,c.Ak)}else if(ArrayBuffer.isView(b))Gc(a,b,0,b.byteLength,void 0,c.Ak);else throw Error("Unsupported data type");Ec(a)},Ya=()=>{C||(C=function(a,b){this.name="ErrnoError";this.node=b;this.Xl=function(c){this.Hi=c};this.Xl(a);this.message="FS error"},C.prototype=Error(),C.prototype.constructor=C,[44].forEach(a=>{Qb[a]=new C(a);Qb[a].stack="<generic error, no stack>"}))},Xa,Za=(a,b,c)=>{a=vb("/dev/"+
a);var d=Ub(!!b,!!c);Hc||=64;var e=Hc++<<8|0;Kb(e,{open:f=>{f.seekable=!1},close:()=>{c&&c.buffer&&c.buffer.length&&c(10)},read:(f,g,h,m)=>{for(var p=0,r=0;r<m;r++){try{var A=b()}catch(G){throw new C(29);}if(void 0===A&&0===p)throw new C(6);if(null===A||void 0===A)break;p++;g[h+r]=A}p&&(f.node.timestamp=Date.now());return p},write:(f,g,h,m)=>{for(var p=0;p<m;p++)try{c(g[h+p])}catch(r){throw new C(29);}m&&(f.node.timestamp=Date.now());return p}});Bc(a,d,e)},Hc,H={},uc,Dc;
function I(a,b){return a?Hb(l(),a,b):""}function Ic(a,b,c){if("/"===b.charAt(0))return b;a=-100===a?Bb:Jc(a).path;if(0==b.length){if(!c)throw new C(44);return a}return vb(a+"/"+b)}
function Kc(a,b,c){try{var d=a(b)}catch(f){if(f&&f.node&&vb(b)!==vb(jc(f.node)))return-54;throw f;}n()[c>>2]=d.pl;n()[c+8>>2]=d.jk;n()[c+12>>2]=d.mode;t()[c+16>>2]=d.Kl;n()[c+20>>2]=d.uid;n()[c+24>>2]=d.zl;n()[c+28>>2]=d.Dj;z=[d.size>>>0,(x=d.size,1<=+Math.abs(x)?0<x?+Math.floor(x/4294967296)>>>0:~~+Math.ceil((x-+(~~x>>>0))/4294967296)>>>0:0)];n()[c+40>>2]=z[0];n()[c+44>>2]=z[1];n()[c+48>>2]=4096;n()[c+52>>2]=d.hl;a=d.cl.getTime();b=d.Uj.getTime();var e=d.ml.getTime();z=[Math.floor(a/1E3)>>>0,(x=
Math.floor(a/1E3),1<=+Math.abs(x)?0<x?+Math.floor(x/4294967296)>>>0:~~+Math.ceil((x-+(~~x>>>0))/4294967296)>>>0:0)];n()[c+56>>2]=z[0];n()[c+60>>2]=z[1];t()[c+64>>2]=a%1E3*1E3;z=[Math.floor(b/1E3)>>>0,(x=Math.floor(b/1E3),1<=+Math.abs(x)?0<x?+Math.floor(x/4294967296)>>>0:~~+Math.ceil((x-+(~~x>>>0))/4294967296)>>>0:0)];n()[c+72>>2]=z[0];n()[c+76>>2]=z[1];t()[c+80>>2]=b%1E3*1E3;z=[Math.floor(e/1E3)>>>0,(x=Math.floor(e/1E3),1<=+Math.abs(x)?0<x?+Math.floor(x/4294967296)>>>0:~~+Math.ceil((x-+(~~x>>>0))/
4294967296)>>>0:0)];n()[c+88>>2]=z[0];n()[c+92>>2]=z[1];t()[c+96>>2]=e%1E3*1E3;z=[d.jk>>>0,(x=d.jk,1<=+Math.abs(x)?0<x?+Math.floor(x/4294967296)>>>0:~~+Math.ceil((x-+(~~x>>>0))/4294967296)>>>0:0)];n()[c+104>>2]=z[0];n()[c+108>>2]=z[1];return 0}var Lc=void 0;function Mc(){Lc+=4;return n()[Lc-4>>2]}function Jc(a){a=ec[a];if(!a)throw new C(8);return a}function Nc(a){if(w)return K(1,1,a);Ka=a;if(!Va()){B.Uk();if(v.onExit)v.onExit(a);Ja=!0}va(a,new pb(a))}
function Oc(a){Ka=a;if(w)throw Pc(a),"unwind";if(!Va()&&!w){Qc();eb(Ra);Xa=!1;Rc(0);for(var b=0;b<ec.length;b++){var c=ec[b];c&&Ec(c)}F.Ol();B.Uk();Ta=!0}Nc(a)}function Sc(a){if(a instanceof pb||"unwind"==a)return Ka;va(1,a)}
var B={jj:[],qj:[],Wk:[],gj:{},Dl:function(){w?B.Gl():B.Fl()},Fl:function(){for(var a=8;a--;)B.yk()},Gl:function(){B.receiveObjectTransfer=B.Ql;B.threadInitTLS=B.Vk;B.setExitStatus=B.Sk;noExitRuntime=!1},Sk:function(a){Ka=a},Pm:["$terminateWorker"],Uk:function(){for(var a of B.qj)qb(a);for(a of B.jj)qb(a);B.jj=[];B.qj=[];B.gj=[]},Wl:function(a){var b=a.fj;delete B.gj[b];B.jj.push(a);B.qj.splice(B.qj.indexOf(a),1);a.fj=0;Tc(b)},Ql:function(){},Vk:function(){B.Wk.forEach(a=>a())},Kk:a=>new Promise(b=>
{a.onmessage=f=>{f=f.data;var g=f.cmd;a.fj&&(B.ol=a.fj);if(f.targetThread&&f.targetThread!=Uc()){var h=B.gj[f.Om];h?h.postMessage(f,f.transferList):Fa('Internal error! Worker sent a message "'+g+'" to target pthread '+f.targetThread+", but that thread no longer exists!")}else if("checkMailbox"===g)Vc();else if("spawnThread"===g)tb(f);else if("cleanupThread"===g)rb(f.thread);else if("killThread"===g)f=f.thread,g=B.gj[f],delete B.gj[f],qb(g),Tc(f),B.qj.splice(B.qj.indexOf(g),1),g.fj=0;else if("cancelThread"===
g)B.gj[f.thread].postMessage({cmd:"cancel"});else if("loaded"===g)a.loaded=!0,b(a);else if("print"===g)Ea("Thread "+f.threadId+": "+f.text);else if("printErr"===g)Fa("Thread "+f.threadId+": "+f.text);else if("alert"===g)alert("Thread "+f.threadId+": "+f.text);else if("setimmediate"===f.target)a.postMessage(f);else if("callHandler"===g)v[f.handler](...f.args);else g&&Fa("worker sent an unknown command "+g);B.ol=void 0};a.onerror=f=>{Fa("worker sent an error! "+f.filename+":"+f.lineno+": "+f.message);
throw f;};var c=[],d=["onExit","onAbort","print","printErr"],e;for(e of d)v.hasOwnProperty(e)&&c.push(e);a.postMessage({cmd:"load",handlers:c,urlOrBlob:v.mainScriptUrlOrBlob||_scriptDir,wasmMemory:aa,wasmModule:Ia})}),Jl:function(a){if(w)return a();Promise.all(B.jj.map(B.Kk)).then(a)},yk:function(){var a=Ca("godot.javascript.opt.tools.threads.worker.js");a=new Worker(a);B.jj.push(a)},ul:function(){0==B.jj.length&&(B.yk(),B.Kk(B.jj[0]));return B.jj.pop()}};v.PThread=B;
function eb(a){for(;0<a.length;)a.shift()(v)}v.establishStackSpace=function(){var a=Uc(),b=n()[a+52>>2];a=n()[a+56>>2];Wc(b,b-a);Xc(b)};function Pc(a){if(w)return K(2,0,a);Oc(a)}
function Yc(a,b="i8"){b.endsWith("*")&&(b="*");switch(b){case "i1":return k()[a>>0];case "i8":return k()[a>>0];case "i16":return ea()[a>>1];case "i32":return n()[a>>2];case "i64":return n()[a>>2];case "float":return u()[a>>2];case "double":return ma()[a>>3];case "*":return t()[a>>2];default:Ha(`invalid type for getValue: ${b}`)}}function Zc(a){return Na.get(a)}v.invokeEntryPoint=function(a,b){Ua=0;a=Zc(a)(b);Va()?B.Sk(a):$c(a)};
function L(a,b,c="i8"){c.endsWith("*")&&(c="*");switch(c){case "i1":k()[a>>0]=b;break;case "i8":k()[a>>0]=b;break;case "i16":ea()[a>>1]=b;break;case "i32":n()[a>>2]=b;break;case "i64":z=[b>>>0,(x=b,1<=+Math.abs(x)?0<x?+Math.floor(x/4294967296)>>>0:~~+Math.ceil((x-+(~~x>>>0))/4294967296)>>>0:0)];n()[a>>2]=z[0];n()[a+4>>2]=z[1];break;case "float":u()[a>>2]=b;break;case "double":ma()[a>>3]=b;break;case "*":t()[a>>2]=b;break;default:Ha(`invalid type for setValue: ${c}`)}}
function ad(a,b,c,d){return w?K(3,1,a,b,c,d):bd(a,b,c,d)}function bd(a,b,c,d){if("undefined"==typeof SharedArrayBuffer)return Fa("Current environment does not support SharedArrayBuffer, pthreads are not available!"),6;var e=[];if(w&&0===e.length)return ad(a,b,c,d);a={Zl:c,fj:a,zk:d,gm:e};return w?(a.rm="spawnThread",postMessage(a,e),0):tb(a)}
function cd(a,b,c,d,e){if(w)return K(4,1,a,b,c,d,e);try{e=0;for(var f=b?n()[b>>2]:0,g=b?n()[b+4>>2]:0,h=c?n()[c>>2]:0,m=c?n()[c+4>>2]:0,p=d?n()[d>>2]:0,r=d?n()[d+4>>2]:0,A=0,G=0,q=0,E=0,y=0,P=0,J=(b?n()[b>>2]:0)|(c?n()[c>>2]:0)|(d?n()[d>>2]:0),Ma=(b?n()[b+4>>2]:0)|(c?n()[c+4>>2]:0)|(d?n()[d+4>>2]:0),na=0;na<a;na++){var U=1<<na%32;if(32>na?J&U:Ma&U){var Aa=Jc(na),qa=5;Aa.Ji.vj&&(qa=Aa.Ji.vj(Aa));qa&1&&(32>na?f&U:g&U)&&(32>na?A|=U:G|=U,e++);qa&4&&(32>na?h&U:m&U)&&(32>na?q|=U:E|=U,e++);qa&2&&(32>na?
p&U:r&U)&&(32>na?y|=U:P|=U,e++)}}b&&(n()[b>>2]=A,n()[b+4>>2]=G);c&&(n()[c>>2]=q,n()[c+4>>2]=E);d&&(n()[d>>2]=y,n()[d+4>>2]=P);return e}catch(za){if("undefined"==typeof H||"ErrnoError"!==za.name)throw za;return-za.Hi}}
var cb={Ni:function(){v.websocket=v.websocket&&"object"===typeof v.websocket?v.websocket:{};v.websocket.dk={};v.websocket.on=function(a,b){"function"===typeof b&&(this.dk[a]=b);return this};v.websocket.tj=function(a,b){"function"===typeof this.dk[a]&&this.dk[a].call(this,b)};return Pb(null,"/",16895,0)},ll:function(a,b,c){b&=-526337;if(1==b&&c&&6!=c)throw new C(66);a={family:a,type:b,protocol:c,bj:null,error:null,Cj:{},pending:[],wj:[],Ti:cb.Ui};b=cb.Vj();c=Pb(cb.root,b,49152,0);c.xj=a;b=vc({path:b,
node:c,flags:2,seekable:!1,Ji:cb.Ji});a.stream=b;return a},wl:function(a){return(a=ec[a])&&49152===(a.node.mode&49152)?a.node.xj:null},Ji:{vj:function(a){a=a.node.xj;return a.Ti.vj(a)},Oj:function(a,b,c){a=a.node.xj;return a.Ti.Oj(a,b,c)},read:function(a,b,c,d){a=a.node.xj;d=a.Ti.Pk(a,d);if(!d)return 0;b.set(d.buffer,c);return d.buffer.length},write:function(a,b,c,d){a=a.node.xj;return a.Ti.Rk(a,b,c,d)},close:function(a){a=a.node.xj;a.Ti.close(a)}},Vj:function(){cb.Vj.current||(cb.Vj.current=0);return"socket["+
cb.Vj.current++ +"]"},Ui:{Ck:function(a,b,c){if("object"==typeof b){var d=b;c=b=null}if(d)if(d.vk)b=d.vk.Lm,c=d.vk.Mm;else{c=/ws[s]?:\/\/([^:]+):(\d+)/.exec(d.url);if(!c)throw Error("WebSocket URL must be in the format ws(s)://address:port");b=c[1];c=parseInt(c[2],10)}else try{var e=v.websocket&&"object"===typeof v.websocket,f="ws://";e&&"string"===typeof v.websocket.url&&(f=v.websocket.url);if("ws://"===f||"wss://"===f){var g=b.split("/");f=f+g[0]+":"+c+"/"+g.slice(1).join("/")}g="binary";e&&"string"===
typeof v.websocket.subprotocol&&(g=v.websocket.subprotocol);var h=void 0;"null"!==g&&(h=g=g.replace(/^ +| +$/g,"").split(/ *, */));e&&null===v.websocket.subprotocol&&(h=void 0);d=new WebSocket(f,h);d.binaryType="arraybuffer"}catch(m){throw new C(23);}b={Oi:b,port:c,Ii:d,Lj:[]};cb.Ui.wk(a,b);cb.Ui.Bl(a,b);2===a.type&&"undefined"!=typeof a.yj&&b.Lj.push(new Uint8Array([255,255,255,255,112,111,114,116,(a.yj&65280)>>8,a.yj&255]));return b},Nj:function(a,b,c){return a.Cj[b+":"+c]},wk:function(a,b){a.Cj[b.Oi+
":"+b.port]=b},Qk:function(a,b){delete a.Cj[b.Oi+":"+b.port]},Bl:function(a,b){function c(){v.websocket.tj("open",a.stream.Pi);try{for(var f=b.Lj.shift();f;)b.Ii.send(f),f=b.Lj.shift()}catch(g){b.Ii.close()}}function d(f){if("string"==typeof f)f=(new TextEncoder).encode(f);else{void 0!==f.byteLength||Ha();if(0==f.byteLength)return;f=new Uint8Array(f)}var g=e;e=!1;g&&10===f.length&&255===f[0]&&255===f[1]&&255===f[2]&&255===f[3]&&112===f[4]&&111===f[5]&&114===f[6]&&116===f[7]?(f=f[8]<<8|f[9],cb.Ui.Qk(a,
b),b.port=f,cb.Ui.wk(a,b)):(a.wj.push({Oi:b.Oi,port:b.port,data:f}),v.websocket.tj("message",a.stream.Pi))}var e=!0;ya?(b.Ii.lk("open",c),b.Ii.lk("message",function(f,g){g&&d((new Uint8Array(f)).buffer)}),b.Ii.lk("close",function(){v.websocket.tj("close",a.stream.Pi)}),b.Ii.lk("error",function(){a.error=14;v.websocket.tj("error",[a.stream.Pi,a.error,"ECONNREFUSED: Connection refused"])})):(b.Ii.onopen=c,b.Ii.onclose=function(){v.websocket.tj("close",a.stream.Pi)},b.Ii.onmessage=function(f){d(f.data)},
b.Ii.onerror=function(){a.error=14;v.websocket.tj("error",[a.stream.Pi,a.error,"ECONNREFUSED: Connection refused"])})},vj:function(a){if(1===a.type&&a.bj)return a.pending.length?65:0;var b=0,c=1===a.type?cb.Ui.Nj(a,a.dj,a.ej):null;if(a.wj.length||!c||c&&c.Ii.readyState===c.Ii.CLOSING||c&&c.Ii.readyState===c.Ii.CLOSED)b|=65;if(!c||c&&c.Ii.readyState===c.Ii.OPEN)b|=4;if(c&&c.Ii.readyState===c.Ii.CLOSING||c&&c.Ii.readyState===c.Ii.CLOSED)b|=16;return b},Oj:function(a,b,c){switch(b){case 21531:return b=
0,a.wj.length&&(b=a.wj[0].data.length),n()[c>>2]=b,0;default:return 28}},close:function(a){if(a.bj){try{a.bj.close()}catch(e){}a.bj=null}for(var b=Object.keys(a.Cj),c=0;c<b.length;c++){var d=a.Cj[b[c]];try{d.Ii.close()}catch(e){}cb.Ui.Qk(a,d)}return 0},bind:function(a,b,c){if("undefined"!=typeof a.rk||"undefined"!=typeof a.yj)throw new C(28);a.rk=b;a.yj=c;if(2===a.type){a.bj&&(a.bj.close(),a.bj=null);try{a.Ti.Jk(a,0)}catch(d){if("ErrnoError"!==d.name)throw d;if(138!==d.Hi)throw d;}}},connect:function(a,
b,c){if(a.bj)throw new C(138);if("undefined"!=typeof a.dj&&"undefined"!=typeof a.ej){var d=cb.Ui.Nj(a,a.dj,a.ej);if(d){if(d.Ii.readyState===d.Ii.CONNECTING)throw new C(7);throw new C(30);}}b=cb.Ui.Ck(a,b,c);a.dj=b.Oi;a.ej=b.port;throw new C(26);},Jk:function(){if(!ya)throw new C(138);},accept:function(a){if(!a.bj||!a.pending.length)throw new C(28);var b=a.pending.shift();b.stream.flags=a.stream.flags;return b},zm:function(a,b){if(b){if(void 0===a.dj||void 0===a.ej)throw new C(53);b=a.dj;a=a.ej}else b=
a.rk||0,a=a.yj||0;return{Oi:b,port:a}},Rk:function(a,b,c,d,e,f){if(2===a.type){if(void 0===e||void 0===f)e=a.dj,f=a.ej;if(void 0===e||void 0===f)throw new C(17);}else e=a.dj,f=a.ej;var g=cb.Ui.Nj(a,e,f);if(1===a.type){if(!g||g.Ii.readyState===g.Ii.CLOSING||g.Ii.readyState===g.Ii.CLOSED)throw new C(53);if(g.Ii.readyState===g.Ii.CONNECTING)throw new C(6);}ArrayBuffer.isView(b)&&(c+=b.byteOffset,b=b.buffer);var h;b instanceof SharedArrayBuffer?h=(new Uint8Array(new Uint8Array(b.slice(c,c+d)))).buffer:
h=b.slice(c,c+d);if(2===a.type&&(!g||g.Ii.readyState!==g.Ii.OPEN))return g&&g.Ii.readyState!==g.Ii.CLOSING&&g.Ii.readyState!==g.Ii.CLOSED||(g=cb.Ui.Ck(a,e,f)),g.Lj.push(h),d;try{return g.Ii.send(h),d}catch(m){throw new C(28);}},Pk:function(a,b){if(1===a.type&&a.bj)throw new C(53);var c=a.wj.shift();if(!c){if(1===a.type){a=cb.Ui.Nj(a,a.dj,a.ej);if(!a)throw new C(53);if(a.Ii.readyState===a.Ii.CLOSING||a.Ii.readyState===a.Ii.CLOSED)return null}throw new C(6);}var d=c.data.byteLength||c.data.length,e=
c.data.byteOffset||0,f=c.data.buffer||c.data;b=Math.min(b,d);var g={buffer:new Uint8Array(f,e,b),Oi:c.Oi,port:c.port};1===a.type&&b<d&&(c.data=new Uint8Array(f,e+b,d-b),a.wj.unshift(c));return g}}};function dd(a){a=cb.wl(a);if(!a)throw new C(8);return a}function ed(a){a=a.split(".");for(var b=0;4>b;b++){var c=Number(a[b]);if(isNaN(c))return null;a[b]=c}return(a[0]|a[1]<<8|a[2]<<16|a[3]<<24)>>>0}
function fd(a){var b,c,d=[];if(!/^((?=.*::)(?!.*::.+::)(::)?([\dA-F]{1,4}:(:|\b)|){5}|([\dA-F]{1,4}:){6})((([\dA-F]{1,4}((?!\3)::|:\b|$))|(?!\2\3)){2}|(((2[0-4]|1\d|[1-9])?\d|25[0-5])\.?\b){4})$/i.test(a))return null;if("::"===a)return[0,0,0,0,0,0,0,0];a=a.startsWith("::")?a.replace("::","Z:"):a.replace("::",":Z:");0<a.indexOf(".")?(a=a.replace(RegExp("[.]","g"),":"),a=a.split(":"),a[a.length-4]=parseInt(a[a.length-4])+256*parseInt(a[a.length-3]),a[a.length-3]=parseInt(a[a.length-2])+256*parseInt(a[a.length-
1]),a=a.slice(0,a.length-2)):a=a.split(":");for(b=c=0;b<a.length;b++)if("string"==typeof a[b])if("Z"===a[b]){for(c=0;c<8-a.length+1;c++)d[b+c]=0;--c}else d[b+c]=gd(parseInt(a[b],16));else d[b+c]=a[b];return[d[1]<<16|d[0],d[3]<<16|d[2],d[5]<<16|d[4],d[7]<<16|d[6]]}
function hd(a,b,c,d,e){switch(b){case 2:c=ed(c);sb(a,16);e&&(n()[e>>2]=16);ea()[a>>1]=b;n()[a+4>>2]=c;ea()[a+2>>1]=gd(d);break;case 10:c=fd(c);sb(a,28);e&&(n()[e>>2]=28);n()[a>>2]=b;n()[a+8>>2]=c[0];n()[a+12>>2]=c[1];n()[a+16>>2]=c[2];n()[a+20>>2]=c[3];ea()[a+2>>1]=gd(d);break;default:return 5}return 0}var jd=1,kd={},ld={};
function md(a){var b=ed(a);if(null!==b)return a;b=fd(a);if(null!==b)return a;kd[a]?b=kd[a]:(b=jd++,65535>b||Ha("exceeded max address mappings of 65535"),b="172.29."+(b&255)+"."+(b&65280),ld[b]=a,kd[a]=b);return b}function nd(a,b,c,d,e,f){if(w)return K(5,1,a,b,c,d,e,f);try{var g=dd(a),h=g.Ti.accept(g);b&&hd(b,h.family,md(h.dj),h.ej,c);return h.stream.Pi}catch(m){if("undefined"==typeof H||"ErrnoError"!==m.name)throw m;return-m.Hi}}
function od(a){return(a&255)+"."+(a>>8&255)+"."+(a>>16&255)+"."+(a>>24&255)}
function pd(a){var b="",c,d=0,e=0,f=0,g=0;a=[a[0]&65535,a[0]>>16,a[1]&65535,a[1]>>16,a[2]&65535,a[2]>>16,a[3]&65535,a[3]>>16];var h=!0;for(c=0;5>c;c++)if(0!==a[c]){h=!1;break}if(h){c=od(a[6]|a[7]<<16);if(-1===a[5])return"::ffff:"+c;if(0===a[5])return"0.0.0.0"===c&&(c=""),"0.0.0.1"===c&&(c="1"),"::"+c}for(c=0;8>c;c++)0===a[c]&&(1<c-e&&(g=0),e=c,g++),g>d&&(d=g,f=c-d+1);for(c=0;8>c;c++)1<d&&0===a[c]&&c>=f&&c<f+d?c===f&&(b+=":",0===f&&(b+=":")):(b+=Number(qd(a[c]&65535)).toString(16),b+=7>c?":":"");return b}
function rd(a,b){var c=ea()[a>>1],d=qd(ha()[a+2>>1]);switch(c){case 2:if(16!==b)return{Hi:28};a=n()[a+4>>2];a=od(a);break;case 10:if(28!==b)return{Hi:28};a=[n()[a+8>>2],n()[a+12>>2],n()[a+16>>2],n()[a+20>>2]];a=pd(a);break;default:return{Hi:5}}return{family:c,Oi:a,port:d}}function sd(a,b,c){if(c&&0===a)return null;a=rd(a,b);if(a.Hi)throw new C(a.Hi);b=a.Oi;a.Oi=(ld[b]?ld[b]:null)||a.Oi;return a}
function td(a,b,c,d,e,f){if(w)return K(6,1,a,b,c,d,e,f);try{var g=dd(a),h=sd(b,c);g.Ti.bind(g,h.Oi,h.port);return 0}catch(m){if("undefined"==typeof H||"ErrnoError"!==m.name)throw m;return-m.Hi}}function ud(a){if(w)return K(7,1,a);try{a=I(a);var b=Xb(a,{ij:!0});if(null===b.node)throw new C(44);if(16384!==(b.node.mode&61440))throw new C(54);var c=nc(b.node,"x");if(c)throw new C(c);Bb=b.path;return 0}catch(d){if("undefined"==typeof H||"ErrnoError"!==d.name)throw d;return-d.Hi}}
function vd(a,b){if(w)return K(8,1,a,b);try{return a=I(a),$b(a,b),0}catch(c){if("undefined"==typeof H||"ErrnoError"!==c.name)throw c;return-c.Hi}}function wd(a,b,c,d,e,f){if(w)return K(9,1,a,b,c,d,e,f);try{var g=dd(a),h=sd(b,c);g.Ti.connect(g,h.Oi,h.port);return 0}catch(m){if("undefined"==typeof H||"ErrnoError"!==m.name)throw m;return-m.Hi}}
function xd(a,b,c,d){if(w)return K(10,1,a,b,c,d);try{b=I(b);b=Ic(a,b);if(c&-8)return-28;var e=Xb(b,{ij:!0}).node;if(!e)return-44;a="";c&4&&(a+="r");c&2&&(a+="w");c&1&&(a+="x");return a&&nc(e,a)?-2:0}catch(f){if("undefined"==typeof H||"ErrnoError"!==f.name)throw f;return-f.Hi}}
function yd(a,b,c){if(w)return K(11,1,a,b,c);Lc=c;try{var d=Jc(a);switch(b){case 0:var e=Mc();return 0>e?-28:vc(d,e).Pi;case 1:case 2:return 0;case 3:return d.flags;case 4:return e=Mc(),d.flags|=e,0;case 5:return e=Mc(),ea()[e+0>>1]=2,0;case 6:case 7:return 0;case 16:case 8:return-28;case 9:return n()[zd()>>2]=28,-1;default:return-28}}catch(f){if("undefined"==typeof H||"ErrnoError"!==f.name)throw f;return-f.Hi}}function Ad(a,b,c){return Eb(a,l(),b,c)}
function Bd(a,b){if(w)return K(12,1,a,b);try{if(0===b)return-28;var c=Bb,d=Db(c)+1;if(b<d)return-68;Ad(c,a,b);return d}catch(e){if("undefined"==typeof H||"ErrnoError"!==e.name)throw e;return-e.Hi}}
function Cd(a,b,c){if(w)return K(13,1,a,b,c);try{var d=Jc(a);d.mj||(d.mj=Vb(d.path));a=0;for(var e=Fc(d,0,1),f=Math.floor(e/280);f<d.mj.length&&a+280<=c;){var g=d.mj[f];if("."===g){var h=d.node.id;var m=4}else if(".."===g)h=Xb(d.path,{parent:!0}).node.id,m=4;else{var p=Rb(d.node,g);h=p.id;m=8192===(p.mode&61440)?2:16384===(p.mode&61440)?4:40960===(p.mode&61440)?10:8}z=[h>>>0,(x=h,1<=+Math.abs(x)?0<x?+Math.floor(x/4294967296)>>>0:~~+Math.ceil((x-+(~~x>>>0))/4294967296)>>>0:0)];n()[b+a>>2]=z[0];n()[b+
a+4>>2]=z[1];z=[280*(f+1)>>>0,(x=280*(f+1),1<=+Math.abs(x)?0<x?+Math.floor(x/4294967296)>>>0:~~+Math.ceil((x-+(~~x>>>0))/4294967296)>>>0:0)];n()[b+a+8>>2]=z[0];n()[b+a+12>>2]=z[1];ea()[b+a+16>>1]=280;k()[b+a+18>>0]=m;Ad(g,b+a+19,256);a+=280;f+=1}Fc(d,280*f,0);return a}catch(r){if("undefined"==typeof H||"ErrnoError"!==r.name)throw r;return-r.Hi}}
function Dd(a,b,c,d,e,f){if(w)return K(14,1,a,b,c,d,e,f);try{var g=dd(a);hd(b,g.family,md(g.rk||"0.0.0.0"),g.yj,c);return 0}catch(h){if("undefined"==typeof H||"ErrnoError"!==h.name)throw h;return-h.Hi}}function Ed(a,b,c,d,e,f){if(w)return K(15,1,a,b,c,d,e,f);try{var g=dd(a);return 1===b&&4===c?(n()[d>>2]=g.error,n()[e>>2]=4,g.error=null,0):-50}catch(h){if("undefined"==typeof H||"ErrnoError"!==h.name)throw h;return-h.Hi}}
function Fd(a,b,c){if(w)return K(16,1,a,b,c);Lc=c;try{var d=Jc(a);switch(b){case 21509:case 21505:return d.Li?0:-59;case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:return d.Li?0:-59;case 21519:if(!d.Li)return-59;var e=Mc();return n()[e>>2]=0;case 21520:return d.Li?-28:-59;case 21531:a=e=Mc();if(!d.Ji.Oj)throw new C(59);return d.Ji.Oj(d,b,a);case 21523:return d.Li?0:-59;case 21524:return d.Li?0:-59;default:return-28}}catch(f){if("undefined"==typeof H||"ErrnoError"!==f.name)throw f;
return-f.Hi}}function Gd(a,b){if(w)return K(17,1,a,b);try{var c=dd(a);c.Ti.Jk(c,b);return 0}catch(d){if("undefined"==typeof H||"ErrnoError"!==d.name)throw d;return-d.Hi}}function Hd(a,b){if(w)return K(18,1,a,b);try{return a=I(a),Kc(Cc,a,b)}catch(c){if("undefined"==typeof H||"ErrnoError"!==c.name)throw c;return-c.Hi}}
function Id(a,b,c){if(w)return K(19,1,a,b,c);try{return b=I(b),b=Ic(a,b),b=vb(b),"/"===b[b.length-1]&&(b=b.substr(0,b.length-1)),Ac(b,c),0}catch(d){if("undefined"==typeof H||"ErrnoError"!==d.name)throw d;return-d.Hi}}function Jd(a,b,c,d){if(w)return K(20,1,a,b,c,d);try{b=I(b);var e=d&256;b=Ic(a,b,d&4096);return Kc(e?Cc:Wb,b,c)}catch(f){if("undefined"==typeof H||"ErrnoError"!==f.name)throw f;return-f.Hi}}
function Kd(a,b,c,d){if(w)return K(21,1,a,b,c,d);Lc=d;try{b=I(b);b=Ic(a,b);var e=d?Mc():0;return ab(b,c,e).Pi}catch(f){if("undefined"==typeof H||"ErrnoError"!==f.name)throw f;return-f.Hi}}function Ld(a,b,c){if(w)return K(22,1,a,b,c);try{for(var d=c=0;d<b;d++){var e=a+8*d,f=n()[e>>2],g=ea()[e+4>>1],h=32,m=ec[f];m&&(h=5,m.Ji.vj&&(h=m.Ji.vj(m)));(h&=g|24)&&c++;ea()[e+6>>1]=h}return c}catch(p){if("undefined"==typeof H||"ErrnoError"!==p.name)throw p;return-p.Hi}}
function Md(a,b,c,d){if(w)return K(23,1,a,b,c,d);try{b=I(b);b=Ic(a,b);if(0>=d)return-28;var e=ic(b),f=Math.min(d,Db(e)),g=k()[c+f];Ad(e,c,d+1);k()[c+f]=g;return f}catch(h){if("undefined"==typeof H||"ErrnoError"!==h.name)throw h;return-h.Hi}}
function Nd(a,b,c,d,e,f){if(w)return K(24,1,a,b,c,d,e,f);try{var g=dd(a),h=g.Ti.Pk(g,c);if(!h)return 0;e&&hd(e,g.family,md(h.Oi),h.port,f);l().set(h.buffer,b);return h.buffer.byteLength}catch(m){if("undefined"==typeof H||"ErrnoError"!==m.name)throw m;return-m.Hi}}
function Od(a,b,c,d){if(w)return K(25,1,a,b,c,d);try{b=I(b);d=I(d);b=Ic(a,b);d=Ic(c,d);a=b;var e=wb(a),f=wb(d),g=xb(a),h=xb(d);var m=Xb(a,{parent:!0});var p=m.node;m=Xb(d,{parent:!0});var r=m.node;if(!p||!r)throw new C(44);if(p.Ni!==r.Ni)throw new C(75);var A=Rb(p,g),G=Cb(a,f);if("."!==G.charAt(0))throw new C(28);G=Cb(d,e);if("."!==G.charAt(0))throw new C(55);try{var q=Rb(r,h)}catch(P){}if(A!==q){var E=16384===(A.mode&61440),y=sc(p,g,E);if(y)throw new C(y);if(y=q?sc(r,h,E):rc(r,h))throw new C(y);
if(!p.Gi.Xj)throw new C(63);if(A.Xi||q&&q.Xi)throw new C(10);if(r!==p&&(y=nc(p,"w")))throw new C(y);mc(A);try{p.Gi.Xj(A,r,h)}catch(P){throw P;}finally{lc(A)}}return 0}catch(P){if("undefined"==typeof H||"ErrnoError"!==P.name)throw P;return-P.Hi}}function Pd(a){if(w)return K(26,1,a);try{return a=I(a),ac(a),0}catch(b){if("undefined"==typeof H||"ErrnoError"!==b.name)throw b;return-b.Hi}}
function Qd(a,b,c,d,e,f){if(w)return K(27,1,a,b,c,d,e,f);try{var g=dd(a),h=sd(e,f,!0);return h?g.Ti.Rk(g,k(),b,c,h.Oi,h.port):Gc(g.stream,k(),b,c)}catch(m){if("undefined"==typeof H||"ErrnoError"!==m.name)throw m;return-m.Hi}}function Rd(a,b,c){if(w)return K(28,1,a,b,c);try{return cb.ll(a,b,c).stream.Pi}catch(d){if("undefined"==typeof H||"ErrnoError"!==d.name)throw d;return-d.Hi}}
function Sd(a,b){if(w)return K(29,1,a,b);try{return a=I(a),Kc(Wb,a,b)}catch(c){if("undefined"==typeof H||"ErrnoError"!==c.name)throw c;return-c.Hi}}function Td(a,b,c){if(w)return K(30,1,a,b,c);try{return I(a),n()[c+4>>2]=4096,n()[c+40>>2]=4096,n()[c+8>>2]=1E6,n()[c+12>>2]=5E5,n()[c+16>>2]=5E5,n()[c+20>>2]=fc,n()[c+24>>2]=1E6,n()[c+28>>2]=42,n()[c+44>>2]=2,n()[c+36>>2]=255,0}catch(d){if("undefined"==typeof H||"ErrnoError"!==d.name)throw d;return-d.Hi}}
function Ud(a,b){if(w)return K(31,1,a,b);try{return a=I(a),b=I(b),$a(a,b),0}catch(c){if("undefined"==typeof H||"ErrnoError"!==c.name)throw c;return-c.Hi}}function Vd(a,b,c){if(w)return K(32,1,a,b,c);try{return b=I(b),b=Ic(a,b),0===c?bc(b):512===c?ac(b):Ha("Invalid flags passed to unlinkat"),0}catch(d){if("undefined"==typeof H||"ErrnoError"!==d.name)throw d;return-d.Hi}}function Wd(){if(!Ta&&!Va())try{w?$c(Ka):Oc(Ka)}catch(a){Sc(a)}}function Xd(a){if(!Ta&&!Ja)try{a(),Wd()}catch(b){Sc(b)}}
function Yd(a){"function"===typeof Atomics.lm&&(Atomics.lm(n(),a>>2,a).value.then(Vc),a+=128,Atomics.store(n(),a>>2,1))}v.__emscripten_thread_mailbox_await=Yd;function Vc(){var a=Uc();a&&(Yd(a),Xd(()=>Zd()))}v.checkMailbox=Vc;
function $d(a){var b=a.getExtension("ANGLE_instanced_arrays");b&&(a.vertexAttribDivisor=function(c,d){b.vertexAttribDivisorANGLE(c,d)},a.drawArraysInstanced=function(c,d,e,f){b.drawArraysInstancedANGLE(c,d,e,f)},a.drawElementsInstanced=function(c,d,e,f,g){b.drawElementsInstancedANGLE(c,d,e,f,g)})}
function ae(a){var b=a.getExtension("OES_vertex_array_object");b&&(a.createVertexArray=function(){return b.createVertexArrayOES()},a.deleteVertexArray=function(c){b.deleteVertexArrayOES(c)},a.bindVertexArray=function(c){b.bindVertexArrayOES(c)},a.isVertexArray=function(c){return b.isVertexArrayOES(c)})}function be(a){var b=a.getExtension("WEBGL_draw_buffers");b&&(a.drawBuffers=function(c,d){b.drawBuffersWEBGL(c,d)})}
var ce=1,de=[],M=[],ee=[],fe=[],ge=[],he=[],ie=[],je={},ke=[],le=[],me=[],ne=[],oe={},pe={},qe=4;function N(a){re||=a}function se(a){for(var b=ce++,c=a.length;c<b;c++)a[c]=null;return b}function te(a,b){b.Yj&&(b.preserveDrawingBuffer=!0);a.Yi||(a.Yi=a.getContext,a.getContext=function(d,e){e=a.Yi(d,e);return"webgl"==d==e instanceof WebGLRenderingContext?e:null});var c=1<b.kk?a.getContext("webgl2",b):a.getContext("webgl",b);return c?ue(c,b):0}
function ve(a){var b=a.Si;if(a.zj){var c=b.getParameter(32873);b.bindTexture(3553,a.zj);b.texImage2D(3553,0,6408,b.drawingBufferWidth,b.drawingBufferHeight,0,6408,5121,null);b.bindTexture(3553,c)}a.Jj&&(c=b.getParameter(36007),b.bindRenderbuffer(36161,a.Jj),b.renderbufferStorage(36161,33189,b.drawingBufferWidth,b.drawingBufferHeight),b.bindRenderbuffer(36161,c))}
function we(){var a=O,b=a.Si,c=b.getParameter(3089);c&&b.disable(3089);var d=b.getParameter(36006);if(b.blitFramebuffer&&!a.Dk)b.bindFramebuffer(36008,a.hk),b.bindFramebuffer(36009,null),b.blitFramebuffer(0,0,b.canvas.width,b.canvas.height,0,0,b.canvas.width,b.canvas.height,16384,9728);else{b.bindFramebuffer(36160,null);var e=b.getParameter(35725);b.useProgram(a.el);var f=b.getParameter(34964);b.bindBuffer(34962,a.fl);var g=b.getParameter(34016);b.activeTexture(33984);var h=b.getParameter(32873);
b.bindTexture(3553,a.zj);var m=b.getParameter(3042);m&&b.disable(3042);var p=b.getParameter(2884);p&&b.disable(2884);var r=b.getParameter(2929);r&&b.disable(2929);var A=b.getParameter(2960);A&&b.disable(2960);function Ma(){b.vertexAttribPointer(a.Vi,2,5126,!1,0,0);b.drawArrays(5,0,4)}if(a.Kj){var G=b.getParameter(34229);b.bindVertexArray(a.Kj);Ma();b.bindVertexArray(G)}else{G={buffer:b.getVertexAttrib(a.Vi,34975),size:b.getVertexAttrib(a.Vi,34339),bm:b.getVertexAttrib(a.Vi,34340),type:b.getVertexAttrib(a.Vi,
34341),Ll:b.getVertexAttrib(a.Vi,34922),Hm:b.getVertexAttribOffset(a.Vi,34373)};for(var q=b.getParameter(34921),E=[],y=0;y<q;++y){var P=b.getVertexAttrib(y,34338),J=y==a.Vi;P&&!J&&b.disableVertexAttribArray(y);!P&&J&&b.enableVertexAttribArray(y);E[y]=P}Ma();for(y=0;y<q;++y)P=E[y],J=y==a.Vi,P&&!J&&b.enableVertexAttribArray(y),!P&&J&&b.disableVertexAttribArray(y);b.bindBuffer(34962,G.buffer);b.vertexAttribPointer(a.Vi,G.size,G.type,G.Ll,G.bm,G.offset)}A&&b.enable(2960);r&&b.enable(2929);p&&b.enable(2884);
m&&b.enable(3042);b.bindTexture(3553,h);b.activeTexture(g);b.bindBuffer(34962,f);b.useProgram(e)}b.bindFramebuffer(36160,d);c&&b.enable(3089)}
function ue(a,b){var c=xe(8);n()[c+4>>2]=Uc();var d={Al:c,attributes:b,version:b.kk,Si:a};a.canvas&&(a.canvas.bl=d);je[c]=d;("undefined"==typeof b.Ek||b.Ek)&&ye(d);if(b.Yj){a=d.Si;b=a.createFramebuffer();a.bindFramebuffer(36160,b);d.hk=b;d.Dk=!1;a.getContextAttributes().antialias&&(d.Dk=!0);d.zj=a.createTexture();d.Jj=a.createRenderbuffer();ve(d);a.bindTexture(3553,d.zj);a.texParameteri(3553,10241,9728);a.texParameteri(3553,10240,9728);a.texParameteri(3553,10242,33071);a.texParameteri(3553,10243,
33071);a.texImage2D(3553,0,6408,a.canvas.width,a.canvas.height,0,6408,5121,null);a.framebufferTexture2D(36160,36064,3553,d.zj,0);a.bindTexture(3553,null);a.bindRenderbuffer(36161,d.Jj);a.renderbufferStorage(36161,33189,a.canvas.width,a.canvas.height);a.framebufferRenderbuffer(36160,36096,36161,d.Jj);a.bindRenderbuffer(36161,null);b=a.createBuffer();a.bindBuffer(34962,b);a.bufferData(34962,new Float32Array([-1,-1,-1,1,1,-1,1,1]),35044);a.bindBuffer(34962,null);d.fl=b;b=a.createShader(35633);a.shaderSource(b,
"attribute vec2 pos;varying lowp vec2 tex;void main() { tex = pos * 0.5 + vec2(0.5,0.5); gl_Position = vec4(pos, 0.0, 1.0); }");a.compileShader(b);var e=a.createShader(35632);a.shaderSource(e,"varying lowp vec2 tex;uniform sampler2D sampler;void main() { gl_FragColor = texture2D(sampler, tex); }");a.compileShader(e);var f=a.createProgram();a.attachShader(f,b);a.attachShader(f,e);a.linkProgram(f);d.el=f;d.Vi=a.getAttribLocation(f,"pos");a.useProgram(f);a.uniform1i(a.getUniformLocation(f,"sampler"),
0);a.useProgram(null);d.Kj=void 0;a.createVertexArray&&(d.Kj=a.createVertexArray(),a.bindVertexArray(d.Kj),a.enableVertexAttribArray(d.Vi),a.bindVertexArray(null))}return c}function ze(a){O=je[a];v.Ij=Q=O&&O.Si;return!(a&&!Q)}
function ye(a){a||=O;if(!a.El){a.El=!0;var b=a.Si;$d(b);ae(b);be(b);b.tm=b.getExtension("WEBGL_draw_instanced_base_vertex_base_instance");b.Am=b.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance");2<=a.version&&(b.Wi=b.getExtension("EXT_disjoint_timer_query_webgl2"));if(2>a.version||!b.Wi)b.Wi=b.getExtension("EXT_disjoint_timer_query");b.Dm=b.getExtension("WEBGL_multi_draw");(b.getSupportedExtensions()||[]).forEach(function(c){c.includes("lose_context")||c.includes("debug")||b.getExtension(c)})}}
var Ae={},re,O;function Be(a){return t()[a>>2]+4294967296*n()[a+4>>2]}function Ce(a){return 0===a%4&&(0!==a%100||0===a%400)}var De=[0,31,60,91,121,152,182,213,244,274,305,335],Ee=[0,31,59,90,120,151,181,212,243,273,304,334],Fe={},Ge;Ge=()=>performance.timeOrigin+performance.now();function He(a,b){if(w)return K(33,1,a,b);Fe[a]&&(clearTimeout(Fe[a].id),delete Fe[a]);if(!b)return 0;var c=setTimeout(()=>{delete Fe[a];Xd(()=>Ie(a,Ge()))},b);Fe[a]={id:c,Qm:b};return 0}
function Je(a){var b=Db(a)+1,c=xe(b);c&&Ad(a,c,b);return c}
function Ke(a,b){Le=a;Me=b;if(Ne)if(Oe||(Ua+=1,Oe=!0),0==a)Pe=function(){var d=Math.max(0,Qe+b-Ge())|0;setTimeout(Re,d)};else if(1==a)Pe=function(){Se(Re)};else if(2==a){if("undefined"==typeof setImmediate){var c=[];addEventListener("message",d=>{if("setimmediate"===d.data||"setimmediate"===d.data.target)d.stopPropagation(),c.shift()()},!0);setImmediate=function(d){c.push(d);xa?(void 0===v.setImmediates&&(v.setImmediates=[]),v.setImmediates.push(d),postMessage({target:"setimmediate"})):postMessage("setimmediate",
"*")}}Pe=function(){setImmediate(Re)}}}
function Te(a,b,c,d,e){function f(){return g<Ue?(--Ua,Wd(),!1):!0}!Ne||Ha("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.");Ne=a;Ve=d;var g=Ue;Oe=!1;Re=function(){if(!Ja)if(0<We.length){var h=Date.now(),m=We.shift();m.xm(m.zk);if(Xe){var p=Xe,r=0==p%1?p-1:Math.floor(p);Xe=m.sm?r:(8*p+(r+.5))/9}Ea('main loop blocker "'+m.name+'" took '+(Date.now()-h)+" ms");v.setStatus&&
(h=v.statusMessage||"Please wait...",m=Xe,p=Ye.wm,m?m<p?v.setStatus(h+" ("+(p-m)+"/"+p+")"):v.setStatus(h):v.setStatus(""));f()&&setTimeout(Re,0)}else f()&&(Ze=Ze+1|0,1==Le&&1<Me&&0!=Ze%Me?Pe():(0==Le&&(Qe=Ge()),Ja||v.preMainLoop&&!1===v.preMainLoop()||(Xd(a),v.postMainLoop&&v.postMainLoop()),f()&&("object"==typeof SDL&&SDL.audio&&SDL.audio.Nl&&SDL.audio.Nl(),Pe())))};e||(b&&0<b?Ke(0,1E3/b):Ke(1,1),Pe());if(c)throw"unwind";}function $e(a){Ua+=1;setTimeout(()=>{--Ua;Xd(a)},1E4)}
var Oe=!1,Pe=null,Ue=0,Ne=null,Ve=0,Le=0,Me=0,Ze=0,We=[];function af(){Ue++;var a=Le,b=Me,c=Ne;Ne=null;Te(c,0,!1,Ve,!0);Ke(a,b);Pe()}var Ye={},Qe,Re,Xe,bf=!1,cf=!1,df=[];
function ef(){function a(){cf=document.pointerLockElement===v.canvas||document.mozPointerLockElement===v.canvas||document.webkitPointerLockElement===v.canvas||document.msPointerLockElement===v.canvas}if(!ff){ff=!0;Tb.push({canHandle:function(c){return!v.Fm&&/\.(jpg|jpeg|png|bmp)$/i.test(c)},handle:function(c,d,e,f){var g=new Blob([c],{type:gf(d)});g.size!==c.length&&(g=new Blob([(new Uint8Array(c)).buffer],{type:gf(d)}));var h=URL.createObjectURL(g),m=new Image;m.onload=()=>{m.complete||Ha("Image "+
d+" could not be decoded");var p=document.createElement("canvas");p.width=m.width;p.height=m.height;p.getContext("2d").drawImage(m,0,0);URL.revokeObjectURL(h);e&&e(c)};m.onerror=()=>{Ea("Image "+h+" could not be decoded");f&&f()};m.src=h}});Tb.push({canHandle:function(c){return!v.Em&&c.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(c,d,e){function f(){g||(g=!0,e&&e(c))}var g=!1,h=URL.createObjectURL(new Blob([c],{type:gf(d)})),m=new Audio;m.addEventListener("canplaythrough",()=>f(m),!1);
m.onerror=function(){if(!g){Fa("warning: browser could not fully decode audio "+d+", trying slower base64 approach");for(var p="",r=0,A=0,G=0;G<c.length;G++)for(r=r<<8|c[G],A+=8;6<=A;){var q=r>>A-6&63;A-=6;p+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[q]}2==A?(p+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(r&3)<<4],p+="=="):4==A&&(p+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(r&15)<<2],p+="=");m.src="data:audio/x-"+d.substr(-3)+
";base64,"+p;f(m)}};m.src=h;$e(()=>{f(m)})}});var b=v.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),v.elementPointerLock&&b.addEventListener("click",c=>{!cf&&v.canvas.requestPointerLock&&(v.canvas.requestPointerLock(),c.preventDefault())},!1))}}
function hf(a,b,c,d){if(b&&v.Ij&&a==v.canvas)return v.Ij;var e;if(b){var f={antialias:!1,alpha:!1,kk:"undefined"!=typeof WebGL2RenderingContext?2:1};if(d)for(var g in d)f[g]=d[g];if("undefined"!=typeof Ae&&(e=te(a,f)))var h=je[e].Si}else h=a.getContext("2d");if(!h)return null;c&&(b||"undefined"==typeof Q||Ha("cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),v.Ij=h,b&&ze(e),v.Tm=b,df.forEach(m=>m()),ef());return h}var jf=!1,kf=void 0,lf=void 0;
function mf(a,b){function c(){bf=!1;var f=d.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===f?(d.exitFullscreen=nf,kf&&d.requestPointerLock(),bf=!0,lf?("undefined"!=typeof SDL&&(f=t()[SDL.screen>>2],f|=8388608,n()[SDL.screen>>2]=f),of(v.canvas),pf()):of(d)):(f.parentNode.insertBefore(d,f),f.parentNode.removeChild(f),lf?("undefined"!=typeof SDL&&(f=t()[SDL.screen>>2],f&=
-8388609,n()[SDL.screen>>2]=f),of(v.canvas),pf()):of(d));if(v.onFullScreen)v.onFullScreen(bf);if(v.onFullscreen)v.onFullscreen(bf)}kf=a;lf=b;"undefined"==typeof kf&&(kf=!0);"undefined"==typeof lf&&(lf=!1);var d=v.canvas;jf||(jf=!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()}
function nf(){if(!bf)return!1;(document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||(()=>{})).apply(document,[]);return!0}var qf=0;function Se(a){if("function"==typeof requestAnimationFrame)requestAnimationFrame(a);else{var b=Date.now();if(0===qf)qf=b+1E3/60;else for(;b+2>=qf;)qf+=1E3/60;setTimeout(a,Math.max(qf-b,0))}}
function gf(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 rf=[];function pf(){var a=v.canvas;rf.forEach(b=>b(a.width,a.height))}
function of(a,b,c){b&&c?(a.mm=b,a.Cl=c):(b=a.mm,c=a.Cl);var d=b,e=c;v.forcedAspectRatio&&0<v.forcedAspectRatio&&(d/e<v.forcedAspectRatio?d=Math.round(e*v.forcedAspectRatio):e=Math.round(d/v.forcedAspectRatio));if((document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===a.parentNode&&"undefined"!=typeof screen){var f=Math.min(screen.width/d,screen.height/e);d=Math.round(d*f);e=Math.round(e*
f)}lf?(a.width!=d&&(a.width=d),a.height!=e&&(a.height=e),"undefined"!=typeof a.style&&(a.style.removeProperty("width"),a.style.removeProperty("height"))):(a.width!=b&&(a.width=b),a.height!=c&&(a.height=c),"undefined"!=typeof a.style&&(d!=b||e!=c?(a.style.setProperty("width",d+"px","important"),a.style.setProperty("height",e+"px","important")):(a.style.removeProperty("width"),a.style.removeProperty("height"))))}var ff;function sf(a){if(w)return K(34,1,a);noExitRuntime=!1;Ua=0;Oc(a)}var tf=[];
function uf(a,b,c,d){Q.drawElements(a,b,c,d)}function vf(a,b,c,d){for(var e=0;e<a;e++){var f=Q[c](),g=f&&se(d);f?(f.name=g,d[g]=f):N(1282);n()[b+4*e>>2]=g}}function wf(a,b,c,d,e,f,g,h){b=M[b];if(a=Q[a](b,c))d=h&&Ad(a.name,h,d),e&&(n()[e>>2]=d),f&&(n()[f>>2]=a.size),g&&(n()[g>>2]=a.type)}function xf(a,b){t()[a>>2]=b;t()[a+4>>2]=(b-t()[a>>2])/4294967296}
function yf(a,b,c){if(b){var d=void 0;switch(a){case 36346:d=1;break;case 36344:0!=c&&1!=c&&N(1280);return;case 34814:case 36345:d=0;break;case 34466:var e=Q.getParameter(34467);d=e?e.length:0;break;case 33309:if(2>O.version){N(1282);return}d=2*(Q.getSupportedExtensions()||[]).length;break;case 33307:case 33308:if(2>O.version){N(1280);return}d=33307==a?3:0}if(void 0===d)switch(e=Q.getParameter(a),typeof e){case "number":d=e;break;case "boolean":d=e?1:0;break;case "string":N(1280);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:N(1280);return}else{if(e instanceof Float32Array||e instanceof Uint32Array||e instanceof Int32Array||e instanceof Array){for(a=0;a<e.length;++a)switch(c){case 0:n()[b+4*a>>2]=e[a];break;case 2:u()[b+4*a>>2]=e[a];break;case 4:k()[b+a>>0]=e[a]?1:0}return}try{d=e.name|
0}catch(f){N(1280);Fa("GL_INVALID_ENUM in glGet"+c+"v: Unknown object returned from WebGL getParameter("+a+")! (error: "+f+")");return}}break;default:N(1280);Fa("GL_INVALID_ENUM in glGet"+c+"v: Native code calling glGet"+c+"v("+a+") and it returns "+e+" of type "+typeof e+"!");return}switch(c){case 1:xf(b,d);break;case 0:n()[b>>2]=d;break;case 2:u()[b>>2]=d;break;case 4:k()[b>>0]=d?1:0}}else N(1281)}
function zf(a,b,c,d){if(c){b=Q.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:N(1280);return}else if(b instanceof WebGLBuffer)a=b.name|0;else{N(1280);return}break;default:N(1280);return}switch(d){case 1:xf(c,a);break;case 0:n()[c>>2]=a;break;case 2:u()[c>>2]=a;break;case 4:k()[c>>0]=a?1:0;break;default:throw"internal emscriptenWebGLGetIndexed() error, bad type: "+d;}}else N(1281)}
function Af(a,b,c){if(c){a=ke[a];b=2>O.version?Q.Wi.getQueryObjectEXT(a,b):Q.getQueryParameter(a,b);var d;"boolean"==typeof b?d=b?1:0:d=b;xf(c,d)}else N(1281)}function Bf(a,b,c){if(c){a=Q.Wi.getQueryObjectEXT(ke[a],b);var d;"boolean"==typeof a?d=a?1:0:d=a;n()[c>>2]=d}else N(1281)}function Cf(a){return"]"==a.slice(-1)&&a.lastIndexOf("[")}
function Df(a){var b=a.Gj,c=a.Yk,d;if(!b)for(a.Gj=b={},a.Xk={},d=0;d<Q.getProgramParameter(a,35718);++d){var e=Q.getActiveUniform(a,d);var f=e.name;e=e.size;var g=Cf(f);g=0<g?f.slice(0,g):f;var h=a.tk;a.tk+=e;c[g]=[e,h];for(f=0;f<e;++f)b[h]=f,a.Xk[h++]=g}}function R(a){var b=Q.nl;if(b){var c=b.Gj[a];"number"==typeof c&&(b.Gj[a]=c=Q.getUniformLocation(b,b.Xk[a]+(0<c?"["+c+"]":"")));return c}N(1282)}
function Ef(a,b,c,d){if(c)if(a=M[a],Df(a),a=Q.getUniform(a,R(b)),"number"==typeof a||"boolean"==typeof a)switch(d){case 0:n()[c>>2]=a;break;case 2:u()[c>>2]=a}else for(b=0;b<a.length;b++)switch(d){case 0:n()[c+4*b>>2]=a[b];break;case 2:u()[c+4*b>>2]=a[b]}else N(1281)}
function Ff(a,b,c,d){if(c)if(a=Q.getVertexAttrib(a,b),34975==b)n()[c>>2]=a&&a.name;else if("number"==typeof a||"boolean"==typeof a)switch(d){case 0:n()[c>>2]=a;break;case 2:u()[c>>2]=a;break;case 5:n()[c>>2]=Math.fround(a)}else for(b=0;b<a.length;b++)switch(d){case 0:n()[c+4*b>>2]=a[b];break;case 2:u()[c+4*b>>2]=a[b];break;case 5:n()[c+4*b>>2]=Math.fround(a[b])}else N(1281)}function Gf(a,b,c){Ff(a,b,c,0)}
function Hf(a){a-=5120;return 0==a?k():1==a?l():2==a?ea():4==a?n():6==a?u():5==a||28922==a||28520==a||30779==a||30782==a?t():ha()}function If(a){return 31-Math.clz32(a.BYTES_PER_ELEMENT)}function Jf(a,b,c,d,e){a=Hf(a);var f=If(a),g=qe;return a.subarray(e>>f,e+d*(c*({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[b-6402]||1)*(1<<f)+g-1&-g)>>f)}var Kf=[],Lf=[];function Mf(a){var b=Nf();a=a();Xc(b);return a}
function K(a,b){var c=arguments.length-2,d=arguments;return Mf(()=>{for(var e=Of(8*c),f=e>>3,g=0;g<c;g++){var h=d[2+g];ma()[f+g]=h}return Pf(a,c,e,b)})}var Qf=[];function Rf(a){if(w)return K(35,1,a);O==a&&(O=0);O===je[a]&&(O=null);if("object"==typeof Sf)for(var b=je[a].Si.canvas,c=0;c<Tf.length;++c)if(Tf[c].target==b){var d=c--,e=Tf[d];e.target.removeEventListener(e.vm,e.um,e.Sm);Tf.splice(d,1)}je[a]&&je[a].Si.canvas&&(je[a].Si.canvas.bl=void 0);S(je[a].Al);je[a]=null}
function Uf(a,b){return w?K(36,1,a,b):Vf(a,b)}var Tf=[],Sf={},Wf=["default","low-power","high-performance"],Xf=[0,"undefined"!=typeof document?document:0,"undefined"!=typeof window?window:0];
function Vf(a,b){var c=b>>2,d=n()[c+6];c={alpha:!!n()[c],depth:!!n()[c+1],stencil:!!n()[c+2],antialias:!!n()[c+3],premultipliedAlpha:!!n()[c+4],preserveDrawingBuffer:!!n()[c+5],powerPreference:Wf[d],failIfMajorPerformanceCaveat:!!n()[c+7],kk:n()[c+8],Bm:n()[c+9],Ek:n()[c+10],Gk:n()[c+11],Nk:n()[c+12],Yj:n()[c+13]};d=a;d=2<d?I(d):d;d=Xf[d]||("undefined"!=typeof document?document.querySelector(d):void 0);if(w&&(2===c.Nk||!d&&1===c.Nk))return"undefined"==typeof OffscreenCanvas&&(n()[b+52>>2]=1,n()[b+
20>>2]=1),Uf(a,b);if(!d)return 0;c.Gk&&!c.Yj&&(c.Yj=!0);return te(d,c)}var Yf={};function Zf(){if(!$f){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",_:ua||"./this.program"},b;for(b in Yf)void 0===Yf[b]?delete a[b]:a[b]=Yf[b];var c=[];for(b in a)c.push(b+"="+a[b]);$f=c}return $f}var $f;
function ag(a,b){if(w)return K(37,1,a,b);var c=0;Zf().forEach(function(d,e){var f=b+c;e=t()[a+4*e>>2]=f;for(f=0;f<d.length;++f)k()[e++>>0]=d.charCodeAt(f);k()[e>>0]=0;c+=d.length+1});return 0}function bg(a,b){if(w)return K(38,1,a,b);var c=Zf();t()[a>>2]=c.length;var d=0;c.forEach(function(e){d+=e.length+1});t()[b>>2]=d;return 0}function cg(a){if(w)return K(39,1,a);try{var b=Jc(a);Ec(b);return 0}catch(c){if("undefined"==typeof H||"ErrnoError"!==c.name)throw c;return c.Hi}}
function dg(a,b){if(w)return K(40,1,a,b);try{var c=Jc(a),d=c.Li?2:16384===(c.mode&61440)?3:40960===(c.mode&61440)?7:4;k()[b>>0]=d;ea()[b+2>>1]=0;z=[0,(x=0,1<=+Math.abs(x)?0<x?+Math.floor(x/4294967296)>>>0:~~+Math.ceil((x-+(~~x>>>0))/4294967296)>>>0:0)];n()[b+8>>2]=z[0];n()[b+12>>2]=z[1];z=[0,(x=0,1<=+Math.abs(x)?0<x?+Math.floor(x/4294967296)>>>0:~~+Math.ceil((x-+(~~x>>>0))/4294967296)>>>0:0)];n()[b+16>>2]=z[0];n()[b+20>>2]=z[1];return 0}catch(e){if("undefined"==typeof H||"ErrnoError"!==e.name)throw e;
return e.Hi}}
function eg(a,b,c,d){if(w)return K(41,1,a,b,c,d);try{a:{var e=Jc(a);a=b;for(var f,g=b=0;g<c;g++){var h=t()[a>>2],m=t()[a+4>>2];a+=8;var p=e,r=k(),A=h,G=m,q=f;if(0>G||0>q)throw new C(28);if(null===p.Pi)throw new C(8);if(1===(p.flags&2097155))throw new C(8);if(16384===(p.node.mode&61440))throw new C(31);if(!p.Ji.read)throw new C(28);var E="undefined"!=typeof q;if(!E)q=p.position;else if(!p.seekable)throw new C(70);var y=p.Ji.read(p,r,A,G,q);E||(p.position+=y);var P=y;if(0>P){var J=-1;break a}b+=P;if(P<
m)break;"undefined"!==typeof f&&(f+=P)}J=b}t()[d>>2]=J;return 0}catch(Ma){if("undefined"==typeof H||"ErrnoError"!==Ma.name)throw Ma;return Ma.Hi}}
function fg(a,b,c,d,e){if(w)return K(42,1,a,b,c,d,e);try{b=c+2097152>>>0<4194305-!!b?(b>>>0)+4294967296*c:NaN;if(isNaN(b))return 61;var f=Jc(a);Fc(f,b,d);z=[f.position>>>0,(x=f.position,1<=+Math.abs(x)?0<x?+Math.floor(x/4294967296)>>>0:~~+Math.ceil((x-+(~~x>>>0))/4294967296)>>>0:0)];n()[e>>2]=z[0];n()[e+4>>2]=z[1];f.mj&&0===b&&0===d&&(f.mj=null);return 0}catch(g){if("undefined"==typeof H||"ErrnoError"!==g.name)throw g;return g.Hi}}
function gg(a,b,c,d){if(w)return K(43,1,a,b,c,d);try{a:{var e=Jc(a);a=b;for(var f,g=b=0;g<c;g++){var h=t()[a>>2],m=t()[a+4>>2];a+=8;var p=Gc(e,k(),h,m,f);if(0>p){var r=-1;break a}b+=p;"undefined"!==typeof f&&(f+=p)}r=b}t()[d>>2]=r;return 0}catch(A){if("undefined"==typeof H||"ErrnoError"!==A.name)throw A;return A.Hi}}
function hg(a,b,c,d){function e(A,G,q,E,y,P){var J=10===A?28:16;y=10===A?pd(y):od(y);J=xe(J);!hd(J,A,y,P)||Ha();y=xe(32);n()[y+4>>2]=A;n()[y+8>>2]=G;n()[y+12>>2]=q;t()[y+24>>2]=E;t()[y+20>>2]=J;10===A?n()[y+16>>2]=28:n()[y+16>>2]=16;n()[y+28>>2]=0;return y}if(w)return K(44,1,a,b,c,d);var f=0,g=0,h=0,m=0,p=0,r=0;c&&(h=n()[c>>2],m=n()[c+4>>2],p=n()[c+8>>2],r=n()[c+12>>2]);p&&!r&&(r=2===p?17:6);!p&&r&&(p=17===r?2:1);0===r&&(r=6);0===p&&(p=1);if(!a&&!b)return-2;if(h&-1088||0!==c&&n()[c>>2]&2&&!a)return-1;
if(h&32)return-2;if(0!==p&&1!==p&&2!==p)return-7;if(0!==m&&2!==m&&10!==m)return-6;if(b&&(b=I(b),g=parseInt(b,10),isNaN(g)))return h&1024?-2:-8;if(!a)return 0===m&&(m=2),0===(h&1)&&(2===m?f=ig(2130706433):f=[0,0,0,1]),a=e(m,p,r,null,f,g),t()[d>>2]=a,0;a=I(a);f=ed(a);if(null!==f)if(0===m||2===m)m=2;else if(10===m&&h&8)f=[0,0,ig(65535),f],m=10;else return-2;else if(f=fd(a),null!==f)if(0===m||10===m)m=10;else return-2;if(null!=f)return a=e(m,p,r,a,f,g),t()[d>>2]=a,0;if(h&4)return-2;a=md(a);f=ed(a);0===
m?m=2:10===m&&(f=[0,0,ig(65535),f]);a=e(m,p,r,null,f,g);t()[d>>2]=a;return 0}function T(a){return Na.get(a)}function V(){Fa.apply(null,Array.from(arguments))}function jg(){Ea.apply(null,Array.from(arguments))}function kg(a,b){L(a,b,"*")}function lg(a,b,c){const d=a.BYTES_PER_ELEMENT;return a.subarray(b/d,b/d+c)}function mg(a,b,c){const d=a.BYTES_PER_ELEMENT;return a.slice(b/d,b/d+c)}function ng(a,b){const c=[];lg(n(),a,b).forEach(function(d){c.push(I(d))});return c}
function W(a){const b=Db(a)+1,c=xe(b);Ad(a,c,b);return c}function og(a){const b=a.length,c=xe(4*b);for(let d=0;d<b;d++)n()[(c>>2)+d]=W(a[d]);return c}function pg(a,b){for(let c=0;c<b;c++)S(n()[(a>>2)+c]);S(a)}var X=null,qg="en",rg=2,sg=!1,tg=!1,ug=null,vg=null,wg={},xg=!1,yg=!1,zg=[];function Ag(){zg.forEach(function(a){try{yc(a)}catch(b){jg("Already unmounted",b)}xg&&F.lj[a]&&(F.lj[a].close(),delete F.lj[a])});zg=[];yg=xg=!1}
function Bg(){if(yg)return V("Already syncing!"),Promise.resolve();yg=!0;return new Promise(function(a){xc(!1,function(b){b&&V(`Failed to save IDB file system: ${b.message}`);yg=!1;a(b)})})}function Cg(a,b){const c=a.lastIndexOf("/");let d="/";0<c&&(d=a.slice(0,c));try{Wb(d)}catch(e){if(e.Hi!==wg.al)throw e;Yb(d)}Zb(a,new Uint8Array(b))}function Dg(){}var Eg=[],Fg=null;
function Gg(a){Fg.then(function(){const b=[];Eg.forEach(function(c){b.push(new Promise(c))});return Promise.all(b)}).then(function(){return Bg()}).then(function(){setTimeout(function(){a()},0)})}var Hg=null,Ig=null,Jg=null,Kg=0;
function Lg(a,b,c){const d={};a&&(d.sampleRate=a);const e=new (window.AudioContext||window.webkitAudioContext)(d);Hg=e;e.onstatechange=function(){let f=0;switch(e.state){case "suspended":f=0;break;case "running":f=1;break;case "closed":f=2}b(f)};e.onstatechange();Kg=setInterval(function(){let f=0;e.dl&&(f+=Hg.dl);e.Ml&&(f+=Hg.Ml);c(f)},1E3);Eg.push(Mg);return e.destination.channelCount}
function Ng(a){function b(c){try{Ig=Hg.createMediaStreamSource(c),a(Ig)}catch(d){V("Failed creaating input.",d)}}if(Ig)return 0;if(navigator.mediaDevices&&navigator.mediaDevices.getUserMedia)navigator.mediaDevices.getUserMedia({audio:!0}).then(b,function(c){V("Error getting user media.",c)});else{navigator.getUserMedia||(navigator.getUserMedia=navigator.webkitGetUserMedia||navigator.Yi);if(!navigator.getUserMedia)return V("getUserMedia not available."),1;navigator.getUserMedia({audio:!0},b,function(c){jg(c)})}return 0}
function Mg(a){const b=Hg;Hg=null;if(b){Kg&&(clearInterval(Kg),Kg=0);Ig&&(Ig.disconnect(),Ig=null);var c=Promise.resolve();Jg&&(c=Jg.close());c.then(function(){return b.close()}).then(function(){b.onstatechange=null;a()}).catch(function(d){b.onstatechange=null;V("Error closing AudioContext",d);a()})}else a()}function Og(){return w?K(45,1):Ng(function(a){a.connect(Jg.xl())})}
function Pg(){if(w)return K(46,1);if(Ig){const a=Ig.mediaStream.getTracks();for(let b=0;b<a.length;b++)a[b].stop();Ig.disconnect();Ig=null}}function Qg(){return w?K(47,1):window.AudioContext||window.webkitAudioContext?1:0}
var Rg={promise:null,hj:null,qk:null,create:function(a){const b=v.locateFile("godot.audio.worklet.js");Rg.promise=Hg.audioWorklet.addModule(b).then(function(){Rg.hj=new AudioWorkletNode(Hg,"godot-processor",{outputChannelCount:[a]});return Promise.resolve()});Jg=Rg},start:function(a,b,c){Rg.promise.then(function(){const d=Rg.hj;d.connect(Hg.destination);d.port.postMessage({cmd:"start",data:[c,a,b]});d.port.onmessage=function(e){V(e.data)}})},Nm:function(a,b,c,d,e,f){Rg.qk=new function(){let g=0,h=
0,m=0;const p=new Float32Array(b);this.Pl=function(r){const A=lg(u(),d,e),G=h;let q=r.length,E=0;h+q>=e&&(E=e-h,A.set(r.subarray(0,E),h),q-=E,h=0);q&&A.set(r.subarray(E,q),h);f(G,r.length);h+=q};this.kl=function(r){var A=Rg.hj.port;m+=r;if(0!==m){r=lg(u(),a,b);var G=r.length,q=m;c(g,m);if(g+m>=G){const E=G-g;p.set(r.subarray(g,G));m-=E;g=0}0<m&&p.set(r.subarray(g,g+m),q-m);A.postMessage({cmd:"chunk",data:p.subarray(0,q)});g+=m;m=0}}};Rg.promise.then(function(){const g=Rg.hj,h=mg(u(),a,b);g.connect(Hg.destination);
g.port.postMessage({cmd:"start_nothreads",data:[h,e]});g.port.onmessage=function(m){Rg.hj&&("read"===m.data.cmd?Rg.qk.kl(m.data.data):"input"===m.data.cmd?(m=m.data.data,m.length>e?V("Input chunk is too big"):Rg.qk.Pl(m)):V(m.data))}})},xl:function(){return Rg.hj},close:function(){return new Promise(function(a){null!==Rg.promise&&Rg.promise.then(function(){Rg.hj.port.postMessage({cmd:"stop",data:null});Rg.hj.disconnect();Rg.hj=null;Rg.promise=null;a()}).catch(function(){})})}},Sg="default",Tg=!0,
Ug={};function Vg(a){let b=Sg=a;a in Ug&&(a=Ug[a],b=`url("${a.url}") ${a.x} ${a.y}, default`);Tg&&(X.style.cursor=b)}function Wg(){X.style.cursor="";Sg="default";Tg=!0;Object.keys(Ug).forEach(function(a){URL.revokeObjectURL(Ug[a]);delete Ug[a]})}var Xg=[];function Yg(a,b,c,d){return-1!==Xg.findIndex(function(e){return e.target===a&&e.event===b&&e.method===c&&e.capture===d})}
function Y(a,b,c,d){Yg(a,b,c,d)||(Xg.push(new function(e,f,g,h){this.target=e;this.event=f;this.method=g;this.capture=h}(a,b,c,d)),a.addEventListener(b,c,d))}function Zg(){Xg.forEach(function(a){a.target.removeEventListener(a.event,a.method,a.capture)});Xg.length=0}var $g=[0,0],ah=!0;function bh(){const a=document.fullscreenElement||document.nm||document.webkitFullscreenElement||document.msFullscreenElement;return a?a===X:document.Yi||document.mozFullScreen||document.om}
function ch(){if(!(document.fullscreenEnabled||document.mozFullScreenEnabled||document.webkitFullscreenEnabled))return 1;const a=X;try{const b=(a.requestFullscreen||a.msRequestFullscreen||a.mozRequestFullScreen||a.Cm||a.webkitRequestFullscreen).call(a);b&&b.catch(function(){})}catch(b){return 1}return 0}function dh(){if(!bh())return 0;try{const a=document.exitFullscreen();a&&a.catch(function(){})}catch(a){return 1}return 0}function eh(){var a=fh();(a=je[a])&&ve(a)}
function gh(){var a=bh();const b=2===rg,c=X;let d=$g[0],e=$g[1];if(0===rg)return c.width!==d||c.height!==e?($g=[c.width,c.height],eh(),1):0;var f=ah?window.devicePixelRatio||1:1;if(a||b)d=window.innerWidth*f,e=window.innerHeight*f;a=`${d/f}px`;f=`${e/f}px`;return c.style.width!==a||c.style.height!==f||c.width!==d||c.height!==e?(c.width=d,c.height=e,c.style.width=a,c.style.height=f,eh(),1):0}var hh=null,ih=null;
function jh(a){function b(c){const d=document.createElement(c);d.style.display="none";d.style.position="absolute";d.style.zIndex="-1";d.style.background="transparent";d.style.padding="0px";d.style.margin="0px";d.style.overflow="hidden";d.style.width="0px";d.style.height="0px";d.style.border="0px";d.style.outline="none";d.Ok=!0;d.disabled=!0;Y(d,"input",function(){const e=W(d.value);a(e,d.selectionEnd);S(e)},!1);Y(d,"blur",function(){d.style.display="none";d.Ok=!0;d.disabled=!0},!1);X.insertAdjacentElement("beforebegin",
d);return d}hh=b("input");ih=b("textarea");kh()}function lh(){hh&&ih&&[hh,ih].forEach(function(a){a.blur();a.style.display="none";a.value=""})}function kh(){function a(c){c.style.left=`${b.left}px`;c.style.top=`${b.top}px`;c.style.width=`${b.width}px`;c.style.height=`${b.height}px`}if(hh&&ih){var b=X.getBoundingClientRect();a(hh);a(ih)}}var mh="",nh=0,Z={};function oh(a){const b=++nh;Z[b]=a;return b}function ph(a){delete Z[a]}
function qh(a,b){if(a=Z[a])b.value&&a.fk.push(b.value),a.nk=!1,a.done=b.done}function rh(a,b){if(a=Z[a]){var c=!1;b.headers.forEach(function(d,e){d=d.toLowerCase().trim();"transfer-encoding"===e.toLowerCase().trim()&&"chunked"===d&&(c=!0)});a.status=b.status;a.response=b;a.Ej=b.body.getReader();a.jl=c}}function sh(a,b){V(b);if(a=Z[a])a.error=b}
function th(a,b,c,d){const e={request:null,response:null,Ej:null,error:null,done:!1,nk:!1,status:0,fk:[],il:-1},f=oh(e);e.request=fetch(b,{method:a,headers:c,body:d});e.request.then(rh.bind(null,f)).catch(sh.bind(null,f));return f}function uh(a){const b=Z[a];b&&(ph(a),b.request&&b.request.then(function(c){c.abort()}).catch(function(){}))}var vh=[];function wh(){try{const a=navigator.getGamepads();return a?a:[]}catch(a){return[]}}
function xh(a){function b(d){if(d.mapping)var e=d.mapping;else{var f=navigator.userAgent;e="Unknown";0<=f.indexOf("Android")?e="Android":0<=f.indexOf("Linux")?e="Linux":0<=f.indexOf("iPhone")?e="iOS":0<=f.indexOf("Macintosh")?e="MacOSX":0<=f.indexOf("Windows")&&(e="Windows");var g=d.id,h=/vendor: ([0-9a-f]{4}) product: ([0-9a-f]{4})/i,m=/^([0-9a-f]+)-([0-9a-f]+)-/i,p=f="";h.test(g)?(g=h.exec(g),f=g[1].padStart(4,"0"),p=g[2].padStart(4,"0")):m.test(g)&&(g=m.exec(g),f=g[1].padStart(4,"0"),p=g[2].padStart(4,
"0"));e=f&&p?e+f+p:`${e}Unknown`}f=e;e=W(d.id);f=W(f);a(d.index,1,e,f);S(e);S(f)}vh=[];const c=wh();for(let d=0;d<c.length;d++)c[d]&&b(c[d]);Y(window,"gamepadconnected",function(d){d.gamepad&&b(d.gamepad)},!1);Y(window,"gamepaddisconnected",function(d){d.gamepad&&a(d.gamepad.index,0)},!1)}var yh=[],zh=[];function Ah(a){a.isDirectory?Bh(a):a.isFile?Ch(a):V("Unrecognized entry...",a)}
function Bh(a){yh.push(new Promise(function(b){a.createReader().readEntries(function(c){for(let d=0;d<c.length;d++)Ah(c[d]);b()})}))}function Ch(a){yh.push(new Promise(function(b,c){a.file(function(d){const e=new FileReader;e.onload=function(){const f={path:d.Km||d.webkitRelativePath,name:d.name,type:d.type,size:d.size,data:e.result};f.path||(f.path=f.name);zh.push(f);b()};e.onerror=function(){jg("Error reading file");c()};e.readAsArrayBuffer(d)},function(){jg("Error!");c()})}))}
function Dh(a,b){0===yh.length?a():yh.pop().then(function(){setTimeout(function(){Dh(a,b)},0)})}
function Eh(a,b){a.preventDefault();if(a.dataTransfer.items)for(let c=0;c<a.dataTransfer.items.length;c++){const d=a.dataTransfer.items[c];let e=null;"getAsEntry"in d?e=d.ym():"webkitGetAsEntry"in d&&(e=d.webkitGetAsEntry());e&&Ah(e)}else V("File upload not supported");(new Promise(Dh)).then(function(){const c=`/tmp/drop-${parseInt(1073741824*Math.random(),10)}/`,d=[],e=[];Ac(c.slice(0,-1));zh.forEach(f=>{const g=f.path;Cg(c+g,f.data);f=g.indexOf("/");if(-1===f)d.push(c+g);else{const h=g.substr(0,
f);f=h.indexOf("/");0>f&&-1===d.indexOf(c+h)&&d.push(c+h)}e.push(c+g)});yh=[];zh=[];b(d);tg?Eg.push(function(f){Fh(e,c);f()}):Fh(e,c)})}function Fh(a,b){const c=[b.substr(0,b.length-1)];a.forEach(function(d){bc(d);d=d.replace(b,"");let e=d.lastIndexOf("/");for(;0<e;)d=d.substr(0,e),-1===c.indexOf(b+d)&&c.push(b+d),e=d.lastIndexOf("/")});c.sort(function(d,e){d=(d.match(/\//g)||[]).length;e=(e.match(/\//g)||[]).length;return d>e?-1:d<e?1:0}).forEach(function(d){ac(d)})}
function Gh(a){return function(b){Eh(b,a)}}var Hh=null,Ih=!1;function Jh(a){function b(){Ih=!0;Hh.focus()}Hh&&(a?(Hh.style.display="block",setInterval(b,100)):(Hh.style.display="none",X.focus(),Ih=!1))}
function Kh(a,b,c,d){function e(h,m){const p=m.shiftKey+0+(m.altKey+0<<1)+(m.ctrlKey+0<<2)+(m.metaKey+0<<3);Eb(m.code,k(),c,32);Eb(m.key,k(),d,32);b(h,m.repeat,p);m.preventDefault()}function f(h){Hh&&("compositionstart"===h.type?(a(0,null),Hh.innerHTML=""):"compositionupdate"===h.type?(h=W(h.data),a(1,h),S(h)):"compositionend"===h.type&&(h=W(h.data),a(2,h),S(h),Hh.innerHTML=""))}const g=document.createElement("div");g.className="ime";g.style.background="none";g.style.opacity=0;g.style.position="fixed";
g.style.textAlign="left";g.style.fontSize="1px";g.style.left="0px";g.style.top="0px";g.style.width="100%";g.style.height="40px";g.style.display="none";g.contentEditable="true";Y(g,"compositionstart",f,!1);Y(g,"compositionupdate",f,!1);Y(g,"compositionend",f,!1);Y(g,"keydown",e.bind(null,1),!1);Y(g,"keyup",e.bind(null,0),!1);g.onblur=function(){this.style.display="none";X.focus();Ih=!1};X.parentElement.appendChild(g);Hh=g}
function Lh(a){return a.shiftKey+0+(a.altKey+0<<1)+(a.ctrlKey+0<<2)+(a.metaKey+0<<3)}function Mh(a,b){const c=X;return[c.width/b.width*(a.clientX-b.x),c.height/b.height*(a.clientY-b.y)]}function Nh(){return w?K(48,1):Ih}var Oh=!1;function Ph(a,b){b&&b.active&&(b.waiting&&(Oh=!0,a()),Y(b,"updatefound",function(){const c=b.installing;Y(c,"statechange",function(){"installed"===c.state&&(Oh=!0,a())})}))}
function Qh(a,b,c,d,e){if(a=Z[a])a.binaryType="arraybuffer",a.onopen=function(){b()},a.onclose=function(){e()},a.onerror=function(){d()},a.onmessage=function(f){let g=0;if(f.data instanceof ArrayBuffer)f=new Uint8Array(f.data);else{if(f.data instanceof Blob){V("Blob type not supported");return}if("string"===typeof f.data){g=1;var h=new TextEncoder("utf-8");f=new Uint8Array(h.encode(f.data))}else{V("Unknown message type");return}}h=f.length*f.BYTES_PER_ELEMENT;const m=xe(h);l().set(f,m);c(m,h,g);S(m)}}
function Rh(a){if(a=Z[a])a.onopen=null,a.onmessage=null,a.onerror=null,a.onclose=null,a.close()}function Sh(a,b,c){return(a=Z[a])&&void 0!==a[b]?a[b]:c}function Th(a,b,c){if(Z[a]){switch(b.iceConnectionState){case "new":a=0;break;case "checking":a=1;break;case "connected":case "completed":a=2;break;case "disconnected":a=3;break;case "failed":a=4;break;default:a=5}c(a)}}function Uh(a,b,c){if(Z[a]&&c.candidate){a=c.candidate;c=W(a.candidate);var d=W(a.sdpMid);b(d,a.sdpMLineIndex,c);S(c);S(d)}}
function Vh(a,b,c){Z[a]&&(a=oh(c.channel),b(a))}function Wh(a,b,c){Z[a]&&(a=W(c.type),c=W(c.sdp),b(a,c),S(a),S(c))}function Xh(a){if(w)return K(49,1,a);Jh(a)}function Yh(a,b,c,d){if(w)return K(50,1,a,b,c,d);a=T(a);b=T(b);Kh(a,b,c,d)}function Zh(a,b){if(w)return K(51,1,a,b);if(Hh){const c=X,d=c.getBoundingClientRect();b=b/(c.height/d.height)+d.y;Hh.style.left=`${a/(c.width/d.width)+d.x}px`;Hh.style.top=`${b}px`}}function $h(a,b){if(a=Z[a])a=W(a.protocol),b(a),S(a)}
function ai(a,b,c){if(Z[a]){a=0;if(c.data instanceof ArrayBuffer)c=new Uint8Array(c.data);else{if(c.data instanceof Blob){V("Blob type not supported");return}if("string"===typeof c.data){a=1;var d=new TextEncoder("utf-8");c=new Uint8Array(d.encode(c.data))}else{V("Unknown message type");return}}d=c.length*c.BYTES_PER_ELEMENT;var e=xe(d);l().set(c,e);b(e,d,a);S(e)}}function bi(a,b){Z[a]&&b()}function ci(a,b,c){Z[a]&&(a=W(c.reason),b(c.code,a,c.wasClean?1:0),S(a))}
function di(a,b,c){(a=Z[a])&&a.readyState<a.CLOSING&&(c=I(c),a.close(b,c))}var ei=null;function fi(a){const b=oh(this);ei.set(a,b);let c=1;this.Sl=function(){c++};this.Zk=function(){c--;0===c&&(ph(b),ei.delete(a))};this.yl=function(){return a};this.Ik=function(){return b}}function gi(a){const b=ei.get(a);if(void 0===b)return(new fi(a)).Ik();Z[b].Sl();return b}function hi(a){a=Z[a];if(void 0!==a)return a.yl()}
function ii(a,b){switch(a){case 0:return null;case 1:return!!Yc(b,"i64");case 2:return Yc(b,"i64");case 3:return Yc(b,"double");case 4:return I(Yc(b,"*"));case 17:return hi(Yc(b,"i64"))}}function ji(a,b){if(void 0===a||null===a)return 0;const c=typeof a;if("boolean"===c)return L(b,a,"i64"),1;if("number"===c){if(Number.isInteger(a))return L(b,a,"i64"),2;L(b,a,"double");return 3}if("string"===c)return a=W(a),L(b,a,"*"),4;a=gi(a);L(b,a,"i64");return 17}
var ki=null,li=null,mi=null,ni=null,oi=null,pi=null,qi=a=>{li&&mi?li.requestAnimationFrame(function(b,c){ni=c;oi=c.getViewerPose(mi);a(b);oi=ni=null}):pi(a)},ri=()=>{Pe=null;Ue++;window.setTimeout(function(){af()},0)},si=null,ti=null,ui=null,vi=(a,b,c)=>{b=a.createShader(b);a.shaderSource(b,c);a.compileShader(b);return a.getShaderParameter(b,a.COMPILE_STATUS)?b:(V(`An error occurred compiling the shader: ${a.getShaderInfoLog(b)}`),a.deleteShader(b),null)},wi=[],xi=()=>{if(li){var a=2,b=[];li.inputSources.forEach(c=>
{"tracked-pointer"===c.targetRayMode?"right"===c.handedness?b[1]=c:"left"!==c.handedness&&b[0]||(b[0]=c):b[a++]=c});wi=b}};
function yi(a,b){if(w)return K(52,1,a,b);if(li&&oi){var c=li.renderState.baseLayer,d=c.getViewport(oi.views[2===a?1:0]);a=ki;var e=a.getParameter(a.FRAMEBUFFER_BINDING),f=a.getParameter(a.VIEWPORT);a.bindFramebuffer(a.FRAMEBUFFER,c.framebuffer);a.viewport(d.x,d.y,d.width,d.height);b=ge[b];if(null===si){{c=vi(a,a.VERTEX_SHADER,"\n\t\t\tconst vec2 scale = vec2(0.5, 0.5);\n\t\t\tattribute vec4 aVertexPosition;\n\n\t\t\tvarying highp vec2 vTextureCoord;\n\n\t\t\tvoid main () {\n\t\t\t\tgl_Position = aVertexPosition;\n\t\t\t\tvTextureCoord = aVertexPosition.xy * scale + scale;\n\t\t\t}\n\t\t");d=
vi(a,a.FRAGMENT_SHADER,"\n\t\t\tvarying highp vec2 vTextureCoord;\n\n\t\t\tuniform sampler2D uSampler;\n\n\t\t\tvoid main() {\n\t\t\t\tgl_FragColor = texture2D(uSampler, vTextureCoord);\n\t\t\t}\n\t\t");const g=a.createProgram();a.attachShader(g,c);a.attachShader(g,d);a.linkProgram(g);a.getProgramParameter(g,a.LINK_STATUS)?si=g:(V(`Unable to initialize the shader program: ${a.getProgramInfoLog(g)}`),si=null)}ti={Im:si,ek:{uk:a.getAttribLocation(si,"aVertexPosition")},jm:{hm:a.getUniformLocation(si,
"uSampler")}};c=a.createBuffer();a.bindBuffer(a.ARRAY_BUFFER,c);a.bufferData(a.ARRAY_BUFFER,new Float32Array([-1,-1,1,-1,-1,1,1,1]),a.STATIC_DRAW);ui=c}c=a.getParameter(a.CURRENT_PROGRAM);a.useProgram(si);a.bindBuffer(a.ARRAY_BUFFER,ui);a.vertexAttribPointer(ti.ek.uk,2,a.FLOAT,!1,0,0);a.enableVertexAttribArray(ti.ek.uk);a.activeTexture(a.TEXTURE0);a.bindTexture(a.TEXTURE_2D,b);a.uniform1i(ti.jm.hm,0);(b=a.getParameter(a.BLEND))&&a.disable(a.BLEND);a.drawArrays(a.TRIANGLE_STRIP,0,4);a.bindTexture(a.TEXTURE_2D,
null);a.disableVertexAttribArray(ti.ek.uk);a.bindBuffer(a.ARRAY_BUFFER,null);a.useProgram(c);b&&a.enable(a.BLEND);a.bindFramebuffer(a.FRAMEBUFFER,e);a.viewport(f[0],f[1],f[2],f[3])}}function zi(){if(w)return K(53,1);if(!mi||!mi.boundsGeometry)return 0;const a=mi.boundsGeometry.length;if(0===a)return 0;const b=xe(4*(3*a+1));L(b,a,"i32");for(let c=0;c<a;c++){const d=mi.boundsGeometry[c];L(b+4*(3*c+1),d.x,"float");L(b+4*(3*c+2),d.y,"float");L(b+4*(3*c+3),d.z,"float")}return b}
function Ai(a,b){if(w)return K(54,1,a,b);if(0===wi.length)return 0;var c=wi[a];if(!c||!c.gamepad)return 0;a=c.gamepad.axes;"xr-standard"===c.gamepad.mapping&&(b?(b=c.gamepad.buttons[1].value,a=[a[2],-1*a[3],c.gamepad.buttons[0].value,b,b,0,a[0],-1*a[1]]):(a[1]*=-1,a[3]*=-1));b=xe(4*(a.length+1));L(b,a.length,"i32");for(c=0;c<a.length;c++)L(b+4+4*c,a[c],"float");return b}
function Bi(a,b){if(w)return K(55,1,a,b);if(0===wi.length)return 0;var c=wi[a];if(!c||!c.gamepad)return 0;a=c.gamepad.buttons;"xr-standard"===c.gamepad.mapping&&b&&(a=[0,a[5],a[1],a[3],a[6],a[7],a[8],a[4],a[9],a[10],a[11],a[12],a[13],a[14],a[2],a[0]]);b=xe(4*(a.length+1));L(b,a.length,"i32");for(c=0;c<a.length;c++)L(b+4+4*c,a[c]?a[c].value:0,"float");return b}function Ci(){return w?K(56,1):li&&ni?wi.length:0}
function Di(a){if(w)return K(57,1,a);if(0>a||a>=wi.length)return 0;a=wi[a];if(!a)return 0;switch(a.targetRayMode){case "gaze":return 1;case "tracked-pointer":return 2;case "screen":return 3}return 0}function Ei(a){if(w)return K(58,1,a);if(!li||!ni)return 0;a=wi[a];if(!a)return 0;a=ni.getPose(a.targetRaySpace,mi);if(!a)return 0;a=a.transform.matrix;const b=xe(64);for(let c=0;16>c;c++)L(b+4*c,a[c],"float");return b}
function Fi(a){if(w)return K(59,1,a);if(!li||!oi)return 0;a=oi.views[2===a?1:0].projectionMatrix;const b=xe(64);for(let c=0;16>c;c++)L(b+4*c,a[c],"float");return b}function Gi(){if(w)return K(60,1);if(!li||!oi)return 0;const a=li.renderState.baseLayer.getViewport(oi.views[0]),b=xe(8);L(b+0,a.width,"i32");L(b+4,a.height,"i32");return b}
function Hi(a){if(w)return K(61,1,a);if(!li||!oi)return 0;var b=oi.views;a=0===a?oi.transform.matrix:b[a-1].transform.matrix;b=xe(64);for(let c=0;16>c;c++)L(b+4*c,a[c],"float");return b}function Ii(){return w?K(62,1):li&&oi?oi.views.length:0}function Ji(){return w?K(63,1):li&&li.visibilityState?W(li.visibilityState):0}
function Ki(a,b,c,d,e,f,g,h,m,p){if(w)return K(64,1,a,b,c,d,e,f,g,h,m,p);null===pi&&(pi=Se);Se=qi;a=I(a);b=I(b).split(",").map(J=>J.trim()).filter(J=>""!==J);c=I(c).split(",").map(J=>J.trim()).filter(J=>""!==J);const r=I(d).split(",").map(J=>J.trim()),A=T(e),G=T(f),q=T(g),E=T(h),y=T(m),P=T(p);d={};0<b.length&&(d.requiredFeatures=b);0<c.length&&(d.optionalFeatures=c);navigator.xr.requestSession(a,d).then(function(J){li=J;J.addEventListener("end",function(){G()});J.addEventListener("inputsourceschange",
function(U){let Aa=!1;[U.added,U.removed].forEach(qa=>{qa.forEach(za=>{"tracked-pointer"===za.targetRayMode&&(Aa=!0)})});Aa&&E()});"selectstart selectend select squeezestart squeezeend squeeze".split(" ").forEach((U,Aa)=>{J.addEventListener(U,function(qa){xi();y(Aa,wi.indexOf(qa.inputSource))})});J.addEventListener("visibilitychange",function(){const U=W("visibility_state_changed");P(U);S(U)});const Ma=fh(),na=je[Ma].Si;ki=na;na.makeXRCompatible().then(function(){function U(qa,za){mi=qa;qa.onreset=
function(){const pc=W("reference_space_reset");P(pc);S(pc)};ri();window.setTimeout(function(){const pc=W(za);A(pc);S(pc)},0)}function Aa(){const qa=r.shift();J.requestReferenceSpace(qa).then(za=>{U(za,qa)}).catch(()=>{if(0===r.length){const za=W("Unable to get any of the requested reference space types");q(za);S(za)}else Aa()})}J.updateRenderState({baseLayer:new XRWebGLLayer(J,na)});Aa()}).catch(function(U){U=W(`Unable to make WebGL context compatible with WebXR: ${U}`);q(U);S(U)})}).catch(function(J){J=
W(`Unable to start session: ${J}`);q(J);S(J)})}function Li(a){return w?K(65,1,a):li&&ni?!!wi[a]:!1}function Mi(a,b){if(w)return K(66,1,a,b);const c=I(a),d=T(b);navigator.xr?navigator.xr.isSessionSupported(c).then(function(e){const f=W(c);d(f,e?1:0);S(f)}):(a=W(c),d(a,0),S(a))}function Ni(){return w?K(67,1):!!navigator.xr}function Oi(){if(w)return K(68,1);xi()}function Pi(){if(w)return K(69,1);li&&li.end().catch(()=>{});oi=ni=mi=li=null;null===pi&&(pi=Se);Se=pi;ri()}
var Qi=[31,29,31,30,31,30,31,31,30,31,30,31],Ri=[31,28,31,30,31,30,31,31,30,31,30,31];function Si(a,b){k().set(a,b)}
function Ti(a,b,c,d){function e(q,E,y){for(q="number"==typeof q?q.toString():q||"";q.length<E;)q=y[0]+q;return q}function f(q,E){return e(q,E,"0")}function g(q,E){function y(J){return 0>J?-1:0<J?1:0}var P;0===(P=y(q.getFullYear()-E.getFullYear()))&&0===(P=y(q.getMonth()-E.getMonth()))&&(P=y(q.getDate()-E.getDate()));return P}function h(q){switch(q.getDay()){case 0:return new Date(q.getFullYear()-1,11,29);case 1:return q;case 2:return new Date(q.getFullYear(),0,3);case 3:return new Date(q.getFullYear(),
0,2);case 4:return new Date(q.getFullYear(),0,1);case 5:return new Date(q.getFullYear()-1,11,31);case 6:return new Date(q.getFullYear()-1,11,30)}}function m(q){var E=q.rj;for(q=new Date((new Date(q.sj+1900,0,1)).getTime());0<E;){var y=q.getMonth(),P=(Ce(q.getFullYear())?Qi:Ri)[y];if(E>P-q.getDate())E-=P-q.getDate()+1,q.setDate(1),11>y?q.setMonth(y+1):(q.setMonth(0),q.setFullYear(q.getFullYear()+1));else{q.setDate(q.getDate()+E);break}}y=new Date(q.getFullYear()+1,0,4);E=h(new Date(q.getFullYear(),
0,4));y=h(y);return 0>=g(E,q)?0>=g(y,q)?q.getFullYear()+1:q.getFullYear():q.getFullYear()-1}var p=n()[d+40>>2];d={em:n()[d>>2],dm:n()[d+4>>2],ak:n()[d+8>>2],sk:n()[d+12>>2],bk:n()[d+16>>2],sj:n()[d+20>>2],cj:n()[d+24>>2],rj:n()[d+28>>2],Rm:n()[d+32>>2],cm:n()[d+36>>2],fm:p?I(p):""};c=I(c);p={"%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 p)c=c.replace(new RegExp(r,"g"),p[r]);var A="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),G="January February March April May June July August September October November December".split(" ");p={"%a":function(q){return A[q.cj].substring(0,3)},"%A":function(q){return A[q.cj]},"%b":function(q){return G[q.bk].substring(0,
3)},"%B":function(q){return G[q.bk]},"%C":function(q){return f((q.sj+1900)/100|0,2)},"%d":function(q){return f(q.sk,2)},"%e":function(q){return e(q.sk,2," ")},"%g":function(q){return m(q).toString().substring(2)},"%G":function(q){return m(q)},"%H":function(q){return f(q.ak,2)},"%I":function(q){q=q.ak;0==q?q=12:12<q&&(q-=12);return f(q,2)},"%j":function(q){for(var E=0,y=0;y<=q.bk-1;E+=(Ce(q.sj+1900)?Qi:Ri)[y++]);return f(q.sk+E,3)},"%m":function(q){return f(q.bk+1,2)},"%M":function(q){return f(q.dm,
2)},"%n":function(){return"\n"},"%p":function(q){return 0<=q.ak&&12>q.ak?"AM":"PM"},"%S":function(q){return f(q.em,2)},"%t":function(){return"\t"},"%u":function(q){return q.cj||7},"%U":function(q){return f(Math.floor((q.rj+7-q.cj)/7),2)},"%V":function(q){var E=Math.floor((q.rj+7-(q.cj+6)%7)/7);2>=(q.cj+371-q.rj-2)%7&&E++;if(E)53==E&&(y=(q.cj+371-q.rj)%7,4==y||3==y&&Ce(q.sj)||(E=1));else{E=52;var y=(q.cj+7-q.rj-1)%7;(4==y||5==y&&Ce(q.sj%400-1))&&E++}return f(E,2)},"%w":function(q){return q.cj},"%W":function(q){return f(Math.floor((q.rj+
7-(q.cj+6)%7)/7),2)},"%y":function(q){return(q.sj+1900).toString().substring(2)},"%Y":function(q){return q.sj+1900},"%z":function(q){q=q.cm;var E=0<=q;q=Math.abs(q)/60;return(E?"+":"-")+String("0000"+(q/60*100+q%60)).slice(-4)},"%Z":function(q){return q.fm},"%%":function(){return"%"}};c=c.replace(/%%/g,"\x00\x00");for(r in p)c.includes(r)&&(c=c.replace(new RegExp(r,"g"),p[r](d)));c=c.replace(/\0\0/g,"%");r=Fb(c,!1);if(r.length>b)return 0;Si(r,a);return r.length-1}
function Ui(a){var b=Db(a)+1,c=Of(b);Ad(a,c,b);return c}function Vi(a,b,c,d){var e={string:p=>{var r=0;null!==p&&void 0!==p&&0!==p&&(r=Ui(p));return r},array:p=>{var r=Of(p.length);Si(p,r);return r}};a=v["_"+a];var f=[],g=0;if(d)for(var h=0;h<d.length;h++){var m=e[c[h]];m?(0===g&&(g=Nf()),f[h]=m(d[h])):f[h]=d[h]}c=a.apply(null,f);return c=function(p){0!==g&&Xc(g);return"string"===b?I(p):"boolean"===b?!!p:p}(c)}B.Dl();
function oc(a,b,c,d){a||=this;this.parent=a;this.Ni=a.Ni;this.Xi=null;this.id=fc++;this.name=b;this.mode=c;this.Gi={};this.Ji={};this.Dj=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}}});Ya();gc=Array(4096);db(D,"/");Ac("/tmp");Ac("/home");Ac("/home/web_user");
(()=>{Ac("/dev");Kb(259,{read:()=>0,write:(d,e,f,g)=>g});Bc("/dev/null",259);Jb(1280,Mb);Jb(1536,Nb);Bc("/dev/tty",1280);Bc("/dev/tty1",1536);var a=new Uint8Array(1024),b=0,c=()=>{0===b&&(b=zb(a).byteLength);return a[--b]};Za("random",c);Za("urandom",c);Ac("/dev/shm");Ac("/dev/shm/tmp")})();
(()=>{Ac("/proc");var a=Ac("/proc/self");Ac("/proc/self/fd");db({Ni:()=>{var b=Pb(a,"fd",16895,73);b.Gi={Aj:(c,d)=>{var e=ec[+d];if(!e)throw new C(8);c={parent:null,Ni:{Bj:"fake"},Gi:{Fj:()=>e.path}};return c.parent=c}};return b}},"/proc/self/fd")})();var Q;v.requestFullscreen=function(a,b){mf(a,b)};v.requestAnimationFrame=function(a){Se(a)};v.setCanvasSize=function(a,b,c){of(v.canvas,a,b);c||pf()};v.pauseMainLoop=function(){Pe=null;Ue++};v.resumeMainLoop=function(){af()};
v.getUserMedia=function(){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia);window.getUserMedia(void 0)};v.createContext=function(a,b,c,d){return hf(a,b,c,d)};for(var Wi=0;32>Wi;++Wi)tf.push(Array(Wi));var Xi=new Float32Array(288);for(Wi=0;288>Wi;++Wi)Kf[Wi]=Xi.subarray(0,Wi+1);var Yi=new Int32Array(288);for(Wi=0;288>Wi;++Wi)Lf[Wi]=Yi.subarray(0,Wi+1);v.request_quit=function(){Dg()};
v.onExit=function(a){const b=vg;Ag();X=null;qg="en";rg=2;tg=sg=!1;vg=ug=null;b&&b(a)};Fg=Promise.resolve();v.initConfig=function(a){rg=a.canvasResizePolicy;X=a.canvas;qg=a.locale||qg;sg=a.virtualKeyboard;tg=!!a.persistentDrops;ug=a.onExecute;vg=a.onExit;a.focusCanvas&&X.focus()};
v.initFS=function(a){xg=!1;if(!Array.isArray(a))return Promise.reject(Error("Persistent paths must be an array"));if(!a.length)return Promise.resolve();zg=a.slice();zg.forEach(function(b){try{Wb(b)}catch(c){if(c.Hi!==wg.al)throw c;Yb(b)}db(F,b)});return new Promise(function(b){xc(!0,function(c){c?(zg=[],xg=!1,jg(`IndexedDB not available: ${c.message}`)):xg=!0;b(c)})})};v.copyToFS=Cg;
wg={EPERM:63,ENOENT:44,ESRCH:71,EINTR:27,EIO:29,ENXIO:60,E2BIG:1,ENOEXEC:45,EBADF:8,ECHILD:12,EAGAIN:6,EWOULDBLOCK:6,ENOMEM:48,EACCES:2,EFAULT:21,ENOTBLK:105,EBUSY:10,EEXIST:20,EXDEV:75,ENODEV:43,ENOTDIR:54,EISDIR:31,EINVAL:28,ENFILE:41,EMFILE:33,ENOTTY:59,ETXTBSY:74,EFBIG:22,ENOSPC:51,ESPIPE:70,EROFS:69,EMLINK:34,EPIPE:64,EDOM:18,ERANGE:68,ENOMSG:49,EIDRM:24,ECHRNG:106,EL2NSYNC:156,EL3HLT:107,EL3RST:108,ELNRNG:109,EUNATCH:110,ENOCSI:111,EL2HLT:112,EDEADLK:16,ENOLCK:46,EBADE:113,EBADR:114,EXFULL:115,
ENOANO:104,EBADRQC:103,EBADSLT:102,EDEADLOCK:16,EBFONT:101,ENOSTR:100,ENODATA:116,ETIME:117,ENOSR:118,ENONET:119,ENOPKG:120,EREMOTE:121,ENOLINK:47,EADV:122,ESRMNT:123,ECOMM:124,EPROTO:65,EMULTIHOP:36,EDOTDOT:125,EBADMSG:9,ENOTUNIQ:126,EBADFD:127,EREMCHG:128,ELIBACC:129,ELIBBAD:130,ELIBSCN:131,ELIBMAX:132,ELIBEXEC:133,ENOSYS:52,ENOTEMPTY:55,ENAMETOOLONG:37,ELOOP:32,EOPNOTSUPP:138,EPFNOSUPPORT:139,ECONNRESET:15,ENOBUFS:42,EAFNOSUPPORT:5,EPROTOTYPE:67,ENOTSOCK:57,ENOPROTOOPT:50,ESHUTDOWN:140,ECONNREFUSED:14,
EADDRINUSE:3,ECONNABORTED:13,ENETUNREACH:40,ENETDOWN:38,ETIMEDOUT:73,EHOSTDOWN:142,EHOSTUNREACH:23,EINPROGRESS:26,EALREADY:7,EDESTADDRREQ:17,EMSGSIZE:35,EPROTONOSUPPORT:66,ESOCKTNOSUPPORT:137,EADDRNOTAVAIL:4,ENETRESET:39,EISCONN:30,ENOTCONN:53,ETOOMANYREFS:141,EUSERS:136,EDQUOT:19,ESTALE:72,ENOTSUP:138,ENOMEDIUM:148,EILSEQ:25,EOVERFLOW:61,ECANCELED:11,ENOTRECOVERABLE:56,EOWNERDEAD:62,ESTRPIPE:135};Eg.push(function(a){Wg();a()});Eg.push(function(a){Zg();a()});
Eg.push(function(a){hh&&(hh.remove(),hh=null);ih&&(ih.remove(),ih=null);a()});Eg.push(function(a){Hh&&(Hh.remove(),Hh=null);a()});ei=new Map;
var Zi=[null,Nc,Pc,ad,cd,nd,td,ud,vd,wd,xd,yd,Bd,Cd,Dd,Ed,Fd,Gd,Hd,Id,Jd,Kd,Ld,Md,Nd,Od,Pd,Qd,Rd,Sd,Td,Ud,Vd,He,sf,Rf,Uf,ag,bg,cg,dg,eg,fg,gg,hg,Og,Pg,Qg,Nh,Xh,Yh,Zh,yi,zi,Ai,Bi,Ci,Di,Ei,Fi,Gi,Hi,Ii,Ji,Ki,Li,Mi,Ni,Oi,Pi],nj={b:function(a,b,c,d){Ha(`Assertion failed: ${I(a)}, at: `+[b?I(b):"unknown filename",c,d?I(d):"unknown function"])},$h:function(a,b){Zc(a)(b)},_h:function(){Ha("To use dlopen, you need enable dynamic linking, see https://emscripten.org/docs/compiling/Dynamic-Linking.html")},Zh:function(a){$i(a,
!xa,1,!wa,2097152);B.Vk()},Me:function(a){w?postMessage({cmd:"cleanupThread",thread:a}):rb(a)},Yh:bd,Xh:cd,Wh:nd,Vh:td,Uh:ud,Th:vd,Sh:wd,Rh:xd,n:yd,Qh:Bd,Ph:Cd,Oh:Dd,Nh:Ed,Le:Fd,Mh:Gd,Lh:Hd,Kh:Id,Jh:Jd,Ke:Kd,Ih:Ld,Hh:Md,Gh:Nd,Fh:Od,Eh:Pd,Dh:Qd,Je:Rd,Ch:Sd,Bh:Td,Ah:Ud,zh:Vd,vh:function(){return!0},uh:function(a,b){a==b?setTimeout(()=>Vc()):w?postMessage({targetThread:a,cmd:"checkMailbox"}):(a=B.gj[a])&&a.postMessage({cmd:"checkMailbox"})},th:function(a){Q=v.Ij=O=a},sh:function(){return-1},rh:Yd,qh:function(){},
ph:function(){throw Infinity;},oh:function(a,b){a=new Date(1E3*Be(a));n()[b>>2]=a.getUTCSeconds();n()[b+4>>2]=a.getUTCMinutes();n()[b+8>>2]=a.getUTCHours();n()[b+12>>2]=a.getUTCDate();n()[b+16>>2]=a.getUTCMonth();n()[b+20>>2]=a.getUTCFullYear()-1900;n()[b+24>>2]=a.getUTCDay();a=(a.getTime()-Date.UTC(a.getUTCFullYear(),0,1,0,0,0,0))/864E5|0;n()[b+28>>2]=a},nh:function(a,b){a=new Date(1E3*Be(a));n()[b>>2]=a.getSeconds();n()[b+4>>2]=a.getMinutes();n()[b+8>>2]=a.getHours();n()[b+12>>2]=a.getDate();n()[b+
16>>2]=a.getMonth();n()[b+20>>2]=a.getFullYear()-1900;n()[b+24>>2]=a.getDay();var c=(Ce(a.getFullYear())?De:Ee)[a.getMonth()]+a.getDate()-1|0;n()[b+28>>2]=c;n()[b+36>>2]=-(60*a.getTimezoneOffset());c=(new Date(a.getFullYear(),6,1)).getTimezoneOffset();var d=(new Date(a.getFullYear(),0,1)).getTimezoneOffset();a=(c!=d&&a.getTimezoneOffset()==Math.min(d,c))|0;n()[b+32>>2]=a},mh:He,lh:function(a,b,c){function d(p){return(p=p.toTimeString().match(/\(([A-Za-z ]+)\)$/))?p[1]:"GMT"}var e=(new Date).getFullYear(),
f=new Date(e,0,1),g=new Date(e,6,1);e=f.getTimezoneOffset();var h=g.getTimezoneOffset(),m=Math.max(e,h);t()[a>>2]=60*m;n()[b>>2]=Number(e!=h);a=d(f);b=d(g);a=Je(a);b=Je(b);h<e?(t()[c>>2]=a,t()[c+4>>2]=b):(t()[c>>2]=b,t()[c+4>>2]=a)},c:function(){Ha("")},Ge:function(){Ha("To use dlopen, you need enable dynamic linking, see https://emscripten.org/docs/compiling/Dynamic-Linking.html")},Fe:function(){Pe=null;Ue++;Ne=null},Ee:function(){},kh:function(a){console.error(I(a))},w:function(){return Date.now()},
jh:function(){Ua+=1;throw"unwind";},ih:sf,g:Ge,De:function(a){Q.activeTexture(a)},Ce:function(a,b){Q.attachShader(M[a],he[b])},Be:function(a,b){Q.beginQuery(a,ke[b])},Ae:function(a,b){Q.Wi.beginQueryEXT(a,ke[b])},ze:function(a){Q.beginTransformFeedback(a)},ye:function(a,b,c){Q.bindAttribLocation(M[a],b,I(c))},xe:function(a,b){35051==a?Q.gk=b:35052==a&&(Q.Zi=b);Q.bindBuffer(a,de[b])},we:function(a,b,c){Q.bindBufferBase(a,b,de[c])},ve:function(a,b,c,d,e){Q.bindBufferRange(a,b,de[c],d,e)},ue:function(a,
b){Q.bindFramebuffer(a,b?ee[b]:O.hk)},te:function(a,b){Q.bindRenderbuffer(a,fe[b])},se:function(a,b){Q.bindSampler(a,le[b])},re:function(a,b){Q.bindTexture(a,ge[b])},qe:function(a,b){Q.bindTransformFeedback(a,me[b])},pe:function(a){Q.bindVertexArray(ie[a])},oe:function(a,b,c,d){Q.blendColor(a,b,c,d)},ne:function(a){Q.blendEquation(a)},me:function(a,b){Q.blendEquationSeparate(a,b)},le:function(a,b){Q.blendFunc(a,b)},ke:function(a,b,c,d){Q.blendFuncSeparate(a,b,c,d)},je:function(a,b,c,d,e,f,g,h,m,p){Q.blitFramebuffer(a,
b,c,d,e,f,g,h,m,p)},ie:function(a,b,c,d){2<=O.version?c&&b?Q.bufferData(a,l(),d,c,b):Q.bufferData(a,b,d):Q.bufferData(a,c?l().subarray(c,c+b):b,d)},he:function(a,b,c,d){2<=O.version?c&&Q.bufferSubData(a,b,l(),d,c):Q.bufferSubData(a,b,l().subarray(d,d+c))},ge:function(a){return Q.checkFramebufferStatus(a)},fe:function(a){Q.clear(a)},ee:function(a,b,c,d){Q.clearBufferfi(a,b,c,d)},de:function(a,b,c){Q.clearBufferfv(a,b,u(),c>>2)},ce:function(a,b,c){Q.clearBufferiv(a,b,n(),c>>2)},be:function(a,b,c){Q.clearBufferuiv(a,
b,t(),c>>2)},ae:function(a,b,c,d){Q.clearColor(a,b,c,d)},$d:function(a){Q.clearDepth(a)},_d:function(a){Q.clearStencil(a)},Zd:function(a,b,c,d){return Q.clientWaitSync(ne[a],b,(c>>>0)+4294967296*d)},Yd:function(a,b,c,d){Q.colorMask(!!a,!!b,!!c,!!d)},Xd:function(a){Q.compileShader(he[a])},Wd:function(a,b,c,d,e,f,g,h){2<=O.version?Q.Zi||!g?Q.compressedTexImage2D(a,b,c,d,e,f,g,h):Q.compressedTexImage2D(a,b,c,d,e,f,l(),h,g):Q.compressedTexImage2D(a,b,c,d,e,f,h?l().subarray(h,h+g):null)},Vd:function(a,
b,c,d,e,f,g,h,m){Q.Zi?Q.compressedTexImage3D(a,b,c,d,e,f,g,h,m):Q.compressedTexImage3D(a,b,c,d,e,f,g,l(),m,h)},Ud:function(a,b,c,d,e,f,g,h,m){2<=O.version?Q.Zi||!h?Q.compressedTexSubImage2D(a,b,c,d,e,f,g,h,m):Q.compressedTexSubImage2D(a,b,c,d,e,f,g,l(),m,h):Q.compressedTexSubImage2D(a,b,c,d,e,f,g,m?l().subarray(m,m+h):null)},Td:function(a,b,c,d,e,f,g,h,m,p,r){Q.Zi?Q.compressedTexSubImage3D(a,b,c,d,e,f,g,h,m,p,r):Q.compressedTexSubImage3D(a,b,c,d,e,f,g,h,m,l(),r,p)},Sd:function(a,b,c,d,e){Q.copyBufferSubData(a,
b,c,d,e)},Rd:function(a,b,c,d,e,f,g,h){Q.copyTexImage2D(a,b,c,d,e,f,g,h)},Qd:function(a,b,c,d,e,f,g,h){Q.copyTexSubImage2D(a,b,c,d,e,f,g,h)},Pd:function(a,b,c,d,e,f,g,h,m){Q.copyTexSubImage3D(a,b,c,d,e,f,g,h,m)},Od:function(){var a=se(M),b=Q.createProgram();b.name=a;b.Rj=b.Pj=b.Qj=0;b.tk=1;M[a]=b;return a},Nd:function(a){var b=se(he);he[b]=Q.createShader(a);return b},Md:function(a){Q.cullFace(a)},Ld:function(a,b){for(var c=0;c<a;c++){var d=n()[b+4*c>>2],e=de[d];e&&(Q.deleteBuffer(e),e.name=0,de[d]=
null,d==Q.gk&&(Q.gk=0),d==Q.Zi&&(Q.Zi=0))}},Kd:function(a,b){for(var c=0;c<a;++c){var d=n()[b+4*c>>2],e=ee[d];e&&(Q.deleteFramebuffer(e),e.name=0,ee[d]=null)}},Jd:function(a){if(a){var b=M[a];b?(Q.deleteProgram(b),b.name=0,M[a]=null):N(1281)}},Id:function(a,b){for(var c=0;c<a;c++){var d=n()[b+4*c>>2],e=ke[d];e&&(Q.deleteQuery(e),ke[d]=null)}},Hd:function(a,b){for(var c=0;c<a;c++){var d=n()[b+4*c>>2],e=ke[d];e&&(Q.Wi.deleteQueryEXT(e),ke[d]=null)}},Gd:function(a,b){for(var c=0;c<a;c++){var d=n()[b+
4*c>>2],e=fe[d];e&&(Q.deleteRenderbuffer(e),e.name=0,fe[d]=null)}},Fd:function(a,b){for(var c=0;c<a;c++){var d=n()[b+4*c>>2],e=le[d];e&&(Q.deleteSampler(e),e.name=0,le[d]=null)}},Ed:function(a){if(a){var b=he[a];b?(Q.deleteShader(b),he[a]=null):N(1281)}},Dd:function(a){if(a){var b=ne[a];b?(Q.deleteSync(b),b.name=0,ne[a]=null):N(1281)}},Cd:function(a,b){for(var c=0;c<a;c++){var d=n()[b+4*c>>2],e=ge[d];e&&(Q.deleteTexture(e),e.name=0,ge[d]=null)}},Bd:function(a,b){for(var c=0;c<a;c++){var d=n()[b+4*
c>>2],e=me[d];e&&(Q.deleteTransformFeedback(e),e.name=0,me[d]=null)}},Ad:function(a,b){for(var c=0;c<a;c++){var d=n()[b+4*c>>2];Q.deleteVertexArray(ie[d]);ie[d]=null}},zd:function(a){Q.depthFunc(a)},yd:function(a){Q.depthMask(!!a)},xd:function(a,b){Q.depthRange(a,b)},wd:function(a,b){Q.detachShader(M[a],he[b])},vd:function(a){Q.disable(a)},ud:function(a){Q.disableVertexAttribArray(a)},td:function(a,b,c){Q.drawArrays(a,b,c)},sd:function(a,b,c,d){Q.drawArraysInstanced(a,b,c,d)},rd:function(a,b){for(var c=
tf[a],d=0;d<a;d++)c[d]=n()[b+4*d>>2];Q.drawBuffers(c)},qd:uf,pd:function(a,b,c,d,e){Q.drawElementsInstanced(a,b,c,d,e)},od:function(a,b,c,d,e,f){uf(a,d,e,f)},nd:function(a){Q.enable(a)},md:function(a){Q.enableVertexAttribArray(a)},ld:function(a){Q.endQuery(a)},kd:function(a){Q.Wi.endQueryEXT(a)},jd:function(){Q.endTransformFeedback()},id:function(a,b){return(a=Q.fenceSync(a,b))?(b=se(ne),a.name=b,ne[b]=a,b):0},hd:function(){Q.finish()},gd:function(){Q.flush()},fd:function(a,b,c,d){Q.framebufferRenderbuffer(a,
b,c,fe[d])},ed:function(a,b,c,d,e){Q.framebufferTexture2D(a,b,c,ge[d],e)},dd:function(a,b,c,d,e){Q.framebufferTextureLayer(a,b,ge[c],d,e)},cd:function(a){Q.frontFace(a)},bd:function(a,b){vf(a,b,"createBuffer",de)},ad:function(a,b){vf(a,b,"createFramebuffer",ee)},$c:function(a,b){vf(a,b,"createQuery",ke)},_c:function(a,b){for(var c=0;c<a;c++){var d=Q.Wi.createQueryEXT();if(!d){for(N(1282);c<a;)n()[b+4*c++>>2]=0;break}var e=se(ke);d.name=e;ke[e]=d;n()[b+4*c>>2]=e}},Zc:function(a,b){vf(a,b,"createRenderbuffer",
fe)},Yc:function(a,b){vf(a,b,"createSampler",le)},Xc:function(a,b){vf(a,b,"createTexture",ge)},Wc:function(a,b){vf(a,b,"createTransformFeedback",me)},Vc:function(a,b){vf(a,b,"createVertexArray",ie)},Uc:function(a){Q.generateMipmap(a)},Tc:function(a,b,c,d,e,f,g){wf("getActiveAttrib",a,b,c,d,e,f,g)},Sc:function(a,b,c,d,e,f,g){wf("getActiveUniform",a,b,c,d,e,f,g)},Rc:function(a,b,c,d,e){a=M[a];if(a=Q.getActiveUniformBlockName(a,b))e&&0<c?(c=Ad(a,e,c),d&&(n()[d>>2]=c)):d&&(n()[d>>2]=0)},Qc:function(a,
b,c,d){if(d)if(a=M[a],35393==c)c=Q.getActiveUniformBlockName(a,b),n()[d>>2]=c.length+1;else{if(a=Q.getActiveUniformBlockParameter(a,b,c),null!==a)if(35395==c)for(c=0;c<a.length;c++)n()[d+4*c>>2]=a[c];else n()[d>>2]=a}else N(1281)},Pc:function(a,b,c,d,e){if(e)if(0<b&&0==c)N(1281);else{a=M[a];for(var f=[],g=0;g<b;g++)f.push(n()[c+4*g>>2]);if(a=Q.getActiveUniforms(a,f,d))for(b=a.length,g=0;g<b;g++)n()[e+4*g>>2]=a[g]}else N(1281)},Oc:function(a,b,c,d){a=Q.getAttachedShaders(M[a]);var e=a.length;e>b&&
(e=b);n()[c>>2]=e;for(b=0;b<e;++b)c=he.indexOf(a[b]),n()[d+4*b>>2]=c},Nc:function(a,b){return Q.getAttribLocation(M[a],I(b))},Mc:function(a,b){yf(a,b,4)},Lc:function(a,b,c){c?xf(c,Q.getBufferParameter(a,b)):N(1281)},Kc:function(a,b,c){c?n()[c>>2]=Q.getBufferParameter(a,b):N(1281)},Jc:function(){var a=Q.getError()||re;re=0;return a},Ic:function(a,b){yf(a,b,2)},Hc:function(a,b){return Q.getFragDataLocation(M[a],I(b))},Gc:function(a,b,c,d){a=Q.getFramebufferAttachmentParameter(a,b,c);if(a instanceof
WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;n()[d>>2]=a},Fc:function(a,b,c){zf(a,b,c,1)},Ec:function(a,b){yf(a,b,1)},Dc:function(a,b,c){zf(a,b,c,0)},Cc:function(a,b){yf(a,b,0)},Bc:function(a,b,c,d,e){if(0>d)N(1281);else if(e){if(a=Q.getInternalformatParameter(a,b,c),null!==a)for(b=0;b<a.length&&b<d;++b)n()[e+4*b>>2]=a[b]}else N(1281)},Ac:function(){N(1282)},zc:function(a,b,c,d){a=Q.getProgramInfoLog(M[a]);null===a&&(a="(unknown error)");b=0<b&&d?Ad(a,d,b):0;c&&(n()[c>>2]=b)},yc:function(a,
b,c){if(c)if(a>=ce)N(1281);else if(a=M[a],35716==b)a=Q.getProgramInfoLog(a),null===a&&(a="(unknown error)"),n()[c>>2]=a.length+1;else if(35719==b){if(!a.Rj)for(b=0;b<Q.getProgramParameter(a,35718);++b)a.Rj=Math.max(a.Rj,Q.getActiveUniform(a,b).name.length+1);n()[c>>2]=a.Rj}else if(35722==b){if(!a.Pj)for(b=0;b<Q.getProgramParameter(a,35721);++b)a.Pj=Math.max(a.Pj,Q.getActiveAttrib(a,b).name.length+1);n()[c>>2]=a.Pj}else if(35381==b){if(!a.Qj)for(b=0;b<Q.getProgramParameter(a,35382);++b)a.Qj=Math.max(a.Qj,
Q.getActiveUniformBlockName(a,b).length+1);n()[c>>2]=a.Qj}else n()[c>>2]=Q.getProgramParameter(a,b);else N(1281)},xc:Af,wc:Bf,vc:Af,uc:function(a,b,c){if(c){a=Q.getQueryParameter(ke[a],b);var d;"boolean"==typeof a?d=a?1:0:d=a;n()[c>>2]=d}else N(1281)},tc:Bf,sc:function(a,b,c){c?n()[c>>2]=Q.getQuery(a,b):N(1281)},rc:function(a,b,c){c?n()[c>>2]=Q.Wi.getQueryEXT(a,b):N(1281)},qc:function(a,b,c){c?n()[c>>2]=Q.getRenderbufferParameter(a,b):N(1281)},pc:function(a,b,c){c?u()[c>>2]=Q.getSamplerParameter(le[a],
b):N(1281)},oc:function(a,b,c){c?n()[c>>2]=Q.getSamplerParameter(le[a],b):N(1281)},nc:function(a,b,c,d){a=Q.getShaderInfoLog(he[a]);null===a&&(a="(unknown error)");b=0<b&&d?Ad(a,d,b):0;c&&(n()[c>>2]=b)},mc:function(a,b,c,d){a=Q.getShaderPrecisionFormat(a,b);n()[c>>2]=a.rangeMin;n()[c+4>>2]=a.rangeMax;n()[d>>2]=a.precision},lc:function(a,b,c,d){if(a=Q.getShaderSource(he[a]))b=0<b&&d?Ad(a,d,b):0,c&&(n()[c>>2]=b)},kc:function(a,b,c){c?35716==b?(a=Q.getShaderInfoLog(he[a]),null===a&&(a="(unknown error)"),
a=a?a.length+1:0,n()[c>>2]=a):35720==b?(a=(a=Q.getShaderSource(he[a]))?a.length+1:0,n()[c>>2]=a):n()[c>>2]=Q.getShaderParameter(he[a],b):N(1281)},jc:function(a){var b=oe[a];if(!b){switch(a){case 7939:b=Q.getSupportedExtensions()||[];b=b.concat(b.map(function(d){return"GL_"+d}));b=Je(b.join(" "));break;case 7936:case 7937:case 37445:case 37446:(b=Q.getParameter(a))||N(1280);b=b&&Je(b);break;case 7938:b=Q.getParameter(7938);b=2<=O.version?"OpenGL ES 3.0 ("+b+")":"OpenGL ES 2.0 ("+b+")";b=Je(b);break;
case 35724:b=Q.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=Je(b);break;default:N(1280)}oe[a]=b}return b},ic:function(a,b){if(2>O.version)return N(1282),0;var c=pe[a];if(c)return 0>b||b>=c.length?(N(1281),0):c[b];switch(a){case 7939:return c=Q.getSupportedExtensions()||[],c=c.concat(c.map(function(d){return"GL_"+d})),c=c.map(function(d){return Je(d)}),c=pe[a]=c,0>b||b>=c.length?(N(1281),
0):c[b];default:return N(1280),0}},hc:function(a,b,c,d,e){0>c?N(1281):e?(a=Q.getSyncParameter(ne[a],b),null!==a&&(n()[e>>2]=a,d&&(n()[d>>2]=1))):N(1281)},gc:function(a,b,c){c?u()[c>>2]=Q.getTexParameter(a,b):N(1281)},fc:function(a,b,c){c?n()[c>>2]=Q.getTexParameter(a,b):N(1281)},ec:function(a,b,c,d,e,f,g){a=M[a];if(a=Q.getTransformFeedbackVarying(a,b))g&&0<c?(c=Ad(a.name,g,c),d&&(n()[d>>2]=c)):d&&(n()[d>>2]=0),e&&(n()[e>>2]=a.size),f&&(n()[f>>2]=a.type)},dc:function(a,b){return Q.getUniformBlockIndex(M[a],
I(b))},cc:function(a,b,c,d){if(d)if(0<b&&(0==c||0==d))N(1281);else{a=M[a];for(var e=[],f=0;f<b;f++)e.push(I(n()[c+4*f>>2]));if(a=Q.getUniformIndices(a,e))for(b=a.length,f=0;f<b;f++)n()[d+4*f>>2]=a[f]}else N(1281)},bc:function(a,b){b=I(b);if(a=M[a]){Df(a);var c=a.Gj,d=0,e=b,f=Cf(b);0<f&&(d=parseInt(b.slice(f+1))>>>0,e=b.slice(0,f));if((e=a.Yk[e])&&d<e[0]&&(d+=e[1],c[d]=c[d]||Q.getUniformLocation(a,b)))return d}else N(1281);return-1},ac:function(a,b,c){Ef(a,b,c,2)},$b:function(a,b,c){Ef(a,b,c,0)},_b:function(a,
b,c){Ef(a,b,c,0)},Zb:Gf,Yb:Gf,Xb:function(a,b,c){c?n()[c>>2]=Q.getVertexAttribOffset(a,b):N(1281)},Wb:function(a,b,c){Ff(a,b,c,2)},Vb:function(a,b,c){Ff(a,b,c,5)},Ub:function(a,b){Q.hint(a,b)},Tb:function(a,b,c){for(var d=tf[b],e=0;e<b;e++)d[e]=n()[c+4*e>>2];Q.invalidateFramebuffer(a,d)},Sb:function(a,b,c,d,e,f,g){for(var h=tf[b],m=0;m<b;m++)h[m]=n()[c+4*m>>2];Q.invalidateSubFramebuffer(a,h,d,e,f,g)},Rb:function(a){return(a=de[a])?Q.isBuffer(a):0},Qb:function(a){return Q.isEnabled(a)},Pb:function(a){return(a=
ee[a])?Q.isFramebuffer(a):0},Ob:function(a){return(a=M[a])?Q.isProgram(a):0},Nb:function(a){return(a=ke[a])?Q.isQuery(a):0},Mb:function(a){return(a=ke[a])?Q.Wi.isQueryEXT(a):0},Lb:function(a){return(a=fe[a])?Q.isRenderbuffer(a):0},Kb:function(a){return(a=le[a])?Q.isSampler(a):0},Jb:function(a){return(a=he[a])?Q.isShader(a):0},Ib:function(a){return Q.isSync(ne[a])},Hb:function(a){return(a=ge[a])?Q.isTexture(a):0},Gb:function(a){return Q.isTransformFeedback(me[a])},Fb:function(a){return(a=ie[a])?Q.isVertexArray(a):
0},Eb:function(a){Q.lineWidth(a)},Db:function(a){a=M[a];Q.linkProgram(a);a.Gj=0;a.Yk={}},Cb:function(){Q.pauseTransformFeedback()},Bb:function(a,b){3317==a&&(qe=b);Q.pixelStorei(a,b)},Ab:function(a,b){Q.polygonOffset(a,b)},zb:function(){N(1280)},yb:function(){N(1280)},xb:function(a,b){Q.Wi.queryCounterEXT(ke[a],b)},wb:function(a){Q.readBuffer(a)},vb:function(a,b,c,d,e,f,g){if(2<=O.version)if(Q.gk)Q.readPixels(a,b,c,d,e,f,g);else{var h=Hf(f);Q.readPixels(a,b,c,d,e,f,h,g>>If(h))}else(g=Jf(f,e,c,d,g))?
Q.readPixels(a,b,c,d,e,f,g):N(1280)},ub:function(){},tb:function(a,b,c,d){Q.renderbufferStorage(a,b,c,d)},sb:function(a,b,c,d,e){Q.renderbufferStorageMultisample(a,b,c,d,e)},rb:function(){Q.resumeTransformFeedback()},qb:function(a,b){Q.sampleCoverage(a,!!b)},pb:function(a,b,c){Q.samplerParameterf(le[a],b,c)},ob:function(a,b,c){c=u()[c>>2];Q.samplerParameterf(le[a],b,c)},nb:function(a,b,c){Q.samplerParameteri(le[a],b,c)},mb:function(a,b,c){c=n()[c>>2];Q.samplerParameteri(le[a],b,c)},lb:function(a,
b,c,d){Q.scissor(a,b,c,d)},kb:function(){N(1280)},jb:function(a,b,c,d){for(var e="",f=0;f<b;++f){var g=d?n()[d+4*f>>2]:-1;e+=I(n()[c+4*f>>2],0>g?void 0:g)}Q.shaderSource(he[a],e)},ib:function(a,b,c){Q.stencilFunc(a,b,c)},hb:function(a,b,c,d){Q.stencilFuncSeparate(a,b,c,d)},gb:function(a){Q.stencilMask(a)},fb:function(a,b){Q.stencilMaskSeparate(a,b)},eb:function(a,b,c){Q.stencilOp(a,b,c)},db:function(a,b,c,d){Q.stencilOpSeparate(a,b,c,d)},cb:function(a,b,c,d,e,f,g,h,m){if(2<=O.version)if(Q.Zi)Q.texImage2D(a,
b,c,d,e,f,g,h,m);else if(m){var p=Hf(h);Q.texImage2D(a,b,c,d,e,f,g,h,p,m>>If(p))}else Q.texImage2D(a,b,c,d,e,f,g,h,null);else Q.texImage2D(a,b,c,d,e,f,g,h,m?Jf(h,g,d,e,m):null)},bb:function(a,b,c,d,e,f,g,h,m,p){if(Q.Zi)Q.texImage3D(a,b,c,d,e,f,g,h,m,p);else if(p){var r=Hf(m);Q.texImage3D(a,b,c,d,e,f,g,h,m,r,p>>If(r))}else Q.texImage3D(a,b,c,d,e,f,g,h,m,null)},ab:function(a,b,c){Q.texParameterf(a,b,c)},$a:function(a,b,c){c=u()[c>>2];Q.texParameterf(a,b,c)},_a:function(a,b,c){Q.texParameteri(a,b,c)},
Za:function(a,b,c){c=n()[c>>2];Q.texParameteri(a,b,c)},Ya:function(a,b,c,d,e){Q.texStorage2D(a,b,c,d,e)},Xa:function(a,b,c,d,e,f){Q.texStorage3D(a,b,c,d,e,f)},Wa:function(a,b,c,d,e,f,g,h,m){if(2<=O.version)if(Q.Zi)Q.texSubImage2D(a,b,c,d,e,f,g,h,m);else if(m){var p=Hf(h);Q.texSubImage2D(a,b,c,d,e,f,g,h,p,m>>If(p))}else Q.texSubImage2D(a,b,c,d,e,f,g,h,null);else p=null,m&&(p=Jf(h,g,e,f,m)),Q.texSubImage2D(a,b,c,d,e,f,g,h,p)},Va:function(a,b,c,d,e,f,g,h,m,p,r){if(Q.Zi)Q.texSubImage3D(a,b,c,d,e,f,g,
h,m,p,r);else if(r){var A=Hf(p);Q.texSubImage3D(a,b,c,d,e,f,g,h,m,p,A,r>>If(A))}else Q.texSubImage3D(a,b,c,d,e,f,g,h,m,p,null)},Ua:function(a,b,c,d){a=M[a];for(var e=[],f=0;f<b;f++)e.push(I(n()[c+4*f>>2]));Q.transformFeedbackVaryings(a,e,d)},Ta:function(a,b){Q.uniform1f(R(a),b)},Sa:function(a,b,c){if(2<=O.version)b&&Q.uniform1fv(R(a),u(),c>>2,b);else{if(288>=b)for(var d=Kf[b-1],e=0;e<b;++e)d[e]=u()[c+4*e>>2];else d=u().subarray(c>>2,c+4*b>>2);Q.uniform1fv(R(a),d)}},Ra:function(a,b){Q.uniform1i(R(a),
b)},Qa:function(a,b,c){if(2<=O.version)b&&Q.uniform1iv(R(a),n(),c>>2,b);else{if(288>=b)for(var d=Lf[b-1],e=0;e<b;++e)d[e]=n()[c+4*e>>2];else d=n().subarray(c>>2,c+4*b>>2);Q.uniform1iv(R(a),d)}},Pa:function(a,b){Q.uniform1ui(R(a),b)},Oa:function(a,b,c){b&&Q.uniform1uiv(R(a),t(),c>>2,b)},Na:function(a,b,c){Q.uniform2f(R(a),b,c)},Ma:function(a,b,c){if(2<=O.version)b&&Q.uniform2fv(R(a),u(),c>>2,2*b);else{if(144>=b)for(var d=Kf[2*b-1],e=0;e<2*b;e+=2)d[e]=u()[c+4*e>>2],d[e+1]=u()[c+(4*e+4)>>2];else d=u().subarray(c>>
2,c+8*b>>2);Q.uniform2fv(R(a),d)}},La:function(a,b,c){Q.uniform2i(R(a),b,c)},Ka:function(a,b,c){if(2<=O.version)b&&Q.uniform2iv(R(a),n(),c>>2,2*b);else{if(144>=b)for(var d=Lf[2*b-1],e=0;e<2*b;e+=2)d[e]=n()[c+4*e>>2],d[e+1]=n()[c+(4*e+4)>>2];else d=n().subarray(c>>2,c+8*b>>2);Q.uniform2iv(R(a),d)}},Ja:function(a,b,c){Q.uniform2ui(R(a),b,c)},Ia:function(a,b,c){b&&Q.uniform2uiv(R(a),t(),c>>2,2*b)},Ha:function(a,b,c,d){Q.uniform3f(R(a),b,c,d)},Ga:function(a,b,c){if(2<=O.version)b&&Q.uniform3fv(R(a),u(),
c>>2,3*b);else{if(96>=b)for(var d=Kf[3*b-1],e=0;e<3*b;e+=3)d[e]=u()[c+4*e>>2],d[e+1]=u()[c+(4*e+4)>>2],d[e+2]=u()[c+(4*e+8)>>2];else d=u().subarray(c>>2,c+12*b>>2);Q.uniform3fv(R(a),d)}},Fa:function(a,b,c,d){Q.uniform3i(R(a),b,c,d)},Ea:function(a,b,c){if(2<=O.version)b&&Q.uniform3iv(R(a),n(),c>>2,3*b);else{if(96>=b)for(var d=Lf[3*b-1],e=0;e<3*b;e+=3)d[e]=n()[c+4*e>>2],d[e+1]=n()[c+(4*e+4)>>2],d[e+2]=n()[c+(4*e+8)>>2];else d=n().subarray(c>>2,c+12*b>>2);Q.uniform3iv(R(a),d)}},Da:function(a,b,c,d){Q.uniform3ui(R(a),
b,c,d)},Ca:function(a,b,c){b&&Q.uniform3uiv(R(a),t(),c>>2,3*b)},Ba:function(a,b,c,d,e){Q.uniform4f(R(a),b,c,d,e)},Aa:function(a,b,c){if(2<=O.version)b&&Q.uniform4fv(R(a),u(),c>>2,4*b);else{if(72>=b){var d=Kf[4*b-1],e=u();c>>=2;for(var f=0;f<4*b;f+=4){var g=c+f;d[f]=e[g];d[f+1]=e[g+1];d[f+2]=e[g+2];d[f+3]=e[g+3]}}else d=u().subarray(c>>2,c+16*b>>2);Q.uniform4fv(R(a),d)}},za:function(a,b,c,d,e){Q.uniform4i(R(a),b,c,d,e)},ya:function(a,b,c){if(2<=O.version)b&&Q.uniform4iv(R(a),n(),c>>2,4*b);else{if(72>=
b)for(var d=Lf[4*b-1],e=0;e<4*b;e+=4)d[e]=n()[c+4*e>>2],d[e+1]=n()[c+(4*e+4)>>2],d[e+2]=n()[c+(4*e+8)>>2],d[e+3]=n()[c+(4*e+12)>>2];else d=n().subarray(c>>2,c+16*b>>2);Q.uniform4iv(R(a),d)}},xa:function(a,b,c,d,e){Q.uniform4ui(R(a),b,c,d,e)},wa:function(a,b,c){b&&Q.uniform4uiv(R(a),t(),c>>2,4*b)},va:function(a,b,c){a=M[a];Q.uniformBlockBinding(a,b,c)},ua:function(a,b,c,d){if(2<=O.version)b&&Q.uniformMatrix2fv(R(a),!!c,u(),d>>2,4*b);else{if(72>=b)for(var e=Kf[4*b-1],f=0;f<4*b;f+=4)e[f]=u()[d+4*f>>
2],e[f+1]=u()[d+(4*f+4)>>2],e[f+2]=u()[d+(4*f+8)>>2],e[f+3]=u()[d+(4*f+12)>>2];else e=u().subarray(d>>2,d+16*b>>2);Q.uniformMatrix2fv(R(a),!!c,e)}},ta:function(a,b,c,d){b&&Q.uniformMatrix2x3fv(R(a),!!c,u(),d>>2,6*b)},sa:function(a,b,c,d){b&&Q.uniformMatrix2x4fv(R(a),!!c,u(),d>>2,8*b)},ra:function(a,b,c,d){if(2<=O.version)b&&Q.uniformMatrix3fv(R(a),!!c,u(),d>>2,9*b);else{if(32>=b)for(var e=Kf[9*b-1],f=0;f<9*b;f+=9)e[f]=u()[d+4*f>>2],e[f+1]=u()[d+(4*f+4)>>2],e[f+2]=u()[d+(4*f+8)>>2],e[f+3]=u()[d+(4*
f+12)>>2],e[f+4]=u()[d+(4*f+16)>>2],e[f+5]=u()[d+(4*f+20)>>2],e[f+6]=u()[d+(4*f+24)>>2],e[f+7]=u()[d+(4*f+28)>>2],e[f+8]=u()[d+(4*f+32)>>2];else e=u().subarray(d>>2,d+36*b>>2);Q.uniformMatrix3fv(R(a),!!c,e)}},qa:function(a,b,c,d){b&&Q.uniformMatrix3x2fv(R(a),!!c,u(),d>>2,6*b)},pa:function(a,b,c,d){b&&Q.uniformMatrix3x4fv(R(a),!!c,u(),d>>2,12*b)},oa:function(a,b,c,d){if(2<=O.version)b&&Q.uniformMatrix4fv(R(a),!!c,u(),d>>2,16*b);else{if(18>=b){var e=Kf[16*b-1],f=u();d>>=2;for(var g=0;g<16*b;g+=16){var h=
d+g;e[g]=f[h];e[g+1]=f[h+1];e[g+2]=f[h+2];e[g+3]=f[h+3];e[g+4]=f[h+4];e[g+5]=f[h+5];e[g+6]=f[h+6];e[g+7]=f[h+7];e[g+8]=f[h+8];e[g+9]=f[h+9];e[g+10]=f[h+10];e[g+11]=f[h+11];e[g+12]=f[h+12];e[g+13]=f[h+13];e[g+14]=f[h+14];e[g+15]=f[h+15]}}else e=u().subarray(d>>2,d+64*b>>2);Q.uniformMatrix4fv(R(a),!!c,e)}},na:function(a,b,c,d){b&&Q.uniformMatrix4x2fv(R(a),!!c,u(),d>>2,8*b)},ma:function(a,b,c,d){b&&Q.uniformMatrix4x3fv(R(a),!!c,u(),d>>2,12*b)},la:function(a){a=M[a];Q.useProgram(a);Q.nl=a},ka:function(a){Q.validateProgram(M[a])},
ja:function(a,b){Q.vertexAttrib1f(a,b)},ia:function(a,b){Q.vertexAttrib1f(a,u()[b>>2])},ha:function(a,b,c){Q.vertexAttrib2f(a,b,c)},ga:function(a,b){Q.vertexAttrib2f(a,u()[b>>2],u()[b+4>>2])},fa:function(a,b,c,d){Q.vertexAttrib3f(a,b,c,d)},ea:function(a,b){Q.vertexAttrib3f(a,u()[b>>2],u()[b+4>>2],u()[b+8>>2])},da:function(a,b,c,d,e){Q.vertexAttrib4f(a,b,c,d,e)},ca:function(a,b){Q.vertexAttrib4f(a,u()[b>>2],u()[b+4>>2],u()[b+8>>2],u()[b+12>>2])},ba:function(a,b){Q.vertexAttribDivisor(a,b)},aa:function(a,
b,c,d,e){Q.vertexAttribI4i(a,b,c,d,e)},$:function(a,b){Q.vertexAttribI4i(a,n()[b>>2],n()[b+4>>2],n()[b+8>>2],n()[b+12>>2])},_:function(a,b,c,d,e){Q.vertexAttribI4ui(a,b,c,d,e)},Z:function(a,b){Q.vertexAttribI4ui(a,t()[b>>2],t()[b+4>>2],t()[b+8>>2],t()[b+12>>2])},Y:function(a,b,c,d,e){Q.vertexAttribIPointer(a,b,c,d,e)},X:function(a,b,c,d,e,f){Q.vertexAttribPointer(a,b,c,!!d,e,f)},W:function(a,b,c,d){Q.viewport(a,b,c,d)},V:function(a,b,c,d){Q.waitSync(ne[a],b,(c>>>0)+4294967296*d)},hh:function(){return navigator.hardwareConcurrency},
gh:function(a,b,c){Qf.length=b;c>>=3;for(var d=0;d<b;d++)Qf[d]=ma()[c+d];return Zi[a].apply(null,Qf)},fh:function(a){var b=l().length;a>>>=0;if(a<=b||2147483648<a)return!1;for(var c=1;4>=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,a+100663296);var e=Math,f=e.min;d=Math.max(a,d);d+=(65536-d%65536)%65536;a:{var g=aa.buffer;try{aa.grow(f.call(e,2147483648,d)-g.byteLength+65535>>>16);ca();var h=1;break a}catch(m){}h=void 0}if(h)return!0}return!1},U:function(a,b,c){a=Zc(a);Te(a,b,c)},eh:function(){return 0},
dh:Rf,T:function(){return O&&O.Si?O.hk?(we(),0):O.attributes.Gk?0:-3:-3},S:Vf,ch:function(a){for(var b=a>>2,c=0;14>c;++c)n()[b+c]=0;n()[b]=n()[b+1]=n()[b+3]=n()[b+4]=n()[b+8]=n()[b+10]=1;xa&&(n()[a+48>>2]=1)},R:function(a){return ze(a)?0:-5},yh:ag,xh:bg,Q:Oc,l:cg,wh:dg,Ie:eg,Pe:fg,He:gg,v:hg,bh:function(a,b,c,d,e,f,g){b=rd(a,b);if(b.Hi)return-6;a=b.port;var h=b.Oi;b=!1;if(c&&d){var m;if(g&1||!(m=ld[h]?ld[h]:null)){if(g&8)return-2}else h=m;c=Ad(h,c,d);c+1>=d&&(b=!0)}e&&f&&(c=Ad(""+a,e,f),c+1>=f&&(b=
!0));return b?-12:0},ah:Og,$g:Pg,_g:function(){return Hg&&Hg.audioWorklet?1:0},Zg:function(a,b,c,d){b=T(c);d=T(d);c=Yc(a,"i32");d=Lg(c,b,d);L(a,Hg.sampleRate,"i32");return d},Yg:Qg,o:function(){Hg&&"running"!==Hg.state&&Hg.resume()},Xg:function(a){try{Rg.create(a)}catch(b){return V("Error starting AudioDriverWorklet",b),1}return 0},Wg:function(a,b,c,d,e){c=lg(u(),c,d);a=lg(u(),a,b);e=lg(n(),e,4);Rg.start(a,c,e)},P:function(a,b,c){return Atomics.add(n(),(a>>2)+b,c)},O:function(a,b){return Atomics.load(n(),
(a>>2)+b)},Vg:function(a,b,c,d){Atomics.wait(n(),(a>>2)+b,c,d);return Atomics.load(n(),(a>>2)+b)},Ug:function(a,b){Eb(`#${X.id}`,k(),a,b)},Tg:function(a,b){Eb(qg,k(),a,b)},Sg:function(a){window.alert(I(a))},Rg:function(){X.focus()},Qg:function(){return document.activeElement===X},Pg:function(a){const b=T(a);try{navigator.clipboard.readText().then(function(c){c=W(c);b(c);S(c)}).catch(function(){})}catch(c){}},Og:function(a){a=I(a);if(!navigator.clipboard||!navigator.clipboard.writeText)return 1;navigator.clipboard.writeText(a).catch(function(b){V("Setting OS clipboard is only possible from an input callback for the HTML5 plafrom. Exception:",
b)});return 0},Ng:function(){return!Tg},Mg:function(){return document.pointerLockElement===X?1:0},u:function(a){a?(a=X,a.requestPointerLock&&a.requestPointerLock()):document.exitPointerLock&&document.exitPointerLock()},N:function(a,b,c,d,e){a=I(a);const f=Ug[a];0<c?(b=new Blob([mg(l(),b,c)],{type:"image/png"}),b=URL.createObjectURL(b),Ug[a]={url:b,x:d,y:e}):delete Ug[a];a===Sg&&Vg(Sg);f&&URL.revokeObjectURL(f.url)},Lg:function(a){Vg(I(a))},t:function(a){a=0!==a;a!==Tg&&((Tg=a)?Vg(Sg):X.style.cursor=
"none")},Kg:function(a,b){$g=[a,b];gh()},Jg:function(a){function b(e){e.target===c&&d(bh())}const c=X,d=T(a);Y(document,"fullscreenchange",b,!1);Y(document,"mozfullscreenchange",b,!1);Y(document,"webkitfullscreenchange",b,!1)},Ig:function(){return dh()},Hg:function(){return ch()},k:function(a,b,c,d){var e=fh();(e=je[e])&&e.Si.getBufferSubData(a,b,l(),d,c)},M:function(a){if(1!==a&&2!==a)return!1;try{return!!document.createElement("canvas").getContext(2===a?"webgl2":"webgl")}catch(b){}return!1},Gg:function(){return-1!==
["Windows","Win64","Win32","WinCE"].indexOf(navigator.platform||"")?1:0},Fg:function(a,b,c,d,e){const f=X,g=T(a),h=[b,c,d,e];["mouseover","mouseleave","focus","blur"].forEach(function(m,p){Y(f,m,function(){g(h[p])},!0)})},Eg:function(){return ah?window.devicePixelRatio||1:1},Dg:function(){const a=Math.round(96*window.devicePixelRatio);return 96<=a?a:96},Cg:function(a,b){const c=ah?window.devicePixelRatio||1:1;L(a,window.screen.width*c,"i32");L(b,window.screen.height*c,"i32")},Bg:function(a,b,c,d){const e=
X;Y(e,"contextmenu",function(f){f.preventDefault()},!1);Y(e,"webglcontextlost",function(f){alert("WebGL context lost, please reload the page");f.preventDefault()},!1);ah=!!d;switch(rg){case 0:$g=[e.width,e.height];break;case 1:$g=[a,b];break;default:e.style.position="absolute",e.style.top=0,e.style.left=0}gh();c&&ch()},Ag:function(){const a=gh();a&&kh();return a},zg:function(){return"ontouchstart"in window},yg:function(){return sg&&"ontouchstart"in window},xg:function(a){a=T(a);sg&&"ontouchstart"in
window&&jh(a)},wg:function(){lh()},vg:function(a,b,c,d){a=I(a);c=0<c?c:0;d=0<d?d:c;if(hh&&ih){""===hh.style.display&&""===ih.style.display||lh();kh();var e=hh;switch(b){case 0:e.type="text";e.nj="";break;case 1:e=ih;break;case 2:e.type="text";e.nj="numeric";break;case 3:e.type="text";e.nj="decimal";break;case 4:e.type="tel";e.nj="";break;case 5:e.type="email";e.nj="";break;case 6:e.type="password";e.nj="";break;case 7:e.type="url";e.nj="";break;default:e.type="text",e.nj=""}e.Ok=!1;e.disabled=!1;
e.value=a;e.style.display="block";e.focus();e.setSelectionRange(c,d)}},ug:function(a){const b=T(a);Y(window,"blur",function(){b()},!1)},tg:function(a,b){let c=document.getElementById("-gd-engine-icon");null===c&&(c=document.createElement("link"),c.rel="icon",c.id="-gd-engine-icon",document.head.appendChild(c));const d=mh;a=new Blob([mg(l(),a,b)],{type:"image/png"});mh=URL.createObjectURL(a);c.href=mh;d&&URL.revokeObjectURL(d)},sg:function(a,b){L(a,X.width,"i32");L(b,X.height,"i32")},rg:function(a){document.title=
I(a)},qg:function(a,b,c,d,e,f){b=I(a);a=null;try{a=(0,eval)(b)}catch(g){V(g)}switch(typeof a){case "boolean":return L(c,a,"i32"),1;case "number":return L(c,a,"double"),3;case "string":return kg(c,W(a)),4;case "object":if(null!==a&&(!ArrayBuffer.isView(a)||a instanceof Uint8Array?a instanceof ArrayBuffer&&(a=new Uint8Array(a)):a=new Uint8Array(a.buffer),a instanceof Uint8Array))return c=T(f)(d,e,a.length),l().set(a,c),20}return 0},s:function(a){return(a=Z[a])&&a.response?a.il:-1},pg:function(a,b,c,
d,e,f){a=I(a);b=I(b);c=ng(c,d);e=f?mg(k(),e,f):null;return th(a,b,c.map(function(g){const h=g.indexOf(":");return 0>=h?[]:[g.slice(0,h).trim(),g.slice(h+1).trim()]}).filter(function(g){return 2===g.length}),e)},L:function(a){uh(a)},og:function(a){return(a=Z[a])&&a.response?a.status:0},K:function(a){return(a=Z[a])&&a.response?a.jl?1:0:-1},ng:function(a,b,c){const d=Z[a];if(!d||!d.response)return 0;let e=c;const f=d.fk;for(;e&&f.length;){const m=d.fk[0];if(m.length>e){var g=k(),h=m.slice(0,e);g.set(h,
b/h.BYTES_PER_ELEMENT);f[0]=m.slice(e);e=0}else k().set(m,b/m.BYTES_PER_ELEMENT),e-=m.length,f.pop()}f.length||(b=Z[a])&&b.Ej&&!b.nk&&(b.done?b.Ej=null:(b.nk=!0,b.Ej.read().then(qh.bind(null,a)).catch(sh.bind(null,a))));return c-e},mg:function(a,b,c){a=Z[a];if(!a||!a.response)return 1;b=T(b);const d=[];a.response.headers.forEach(function(e,f){d.push(`${f}:${e}`)});a=og(d);b(d.length,a,c);pg(a,d.length);return 0},r:function(a){a=Z[a];return!a||a.error?-1:a.response?a.Ej?1:a.done?2:-1:0},lg:function(a){const b=
T(a);a=X;Y(a,"dragover",function(c){c.preventDefault()},!1);Y(a,"drop",Gh(function(c){var d=c||[];d.length&&(c=d.length,d=og(d),b(d,c),pg(d,c))}))},kg:function(a){a=T(a);xh(a)},jg:function(){const a=wh(),b=[];for(let d=0;d<a.length;d++){const e=a[d];if(!e){b.push(null);continue}const f={Yl:"standard"===e.mapping,buttons:[],axes:[],connected:e.connected};for(var c=0;c<e.buttons.length;c++)f.buttons.push(e.buttons[c].value);for(c=0;c<e.axes.length;c++)f.axes.push(e.axes[c]);b.push(f)}vh=b;return 0},
ig:function(){return vh.length},hg:function(a,b,c,d,e,f){var g=vh;a=a<g.length?g[a]:null;if(!a||!a.connected)return 1;g=a.buttons;const h=16>g.length?g.length:16;for(let m=0;m<h;m++)L(b+(m<<2),g[m],"float");L(c,h,"i32");b=a.axes;c=10>b.length?b.length:10;for(g=0;g<c;g++)L(d+(g<<2),b[g],"float");L(e,c,"i32");L(f,a.Yl?1:0,"i32");return 0},gg:function(a,b,c){function d(f,g){const h=Lh(g);Eb(g.code,k(),b,32);Eb(g.key,k(),c,32);e(f,g.repeat,h);g.preventDefault()}const e=T(a);Y(X,"keydown",d.bind(null,
1),!1);Y(X,"keyup",d.bind(null,0),!1)},fg:function(a){function b(e,f){var g=d.getBoundingClientRect();g=Mh(f,g);const h=Lh(f);e&&X.focus();c(e,f.button,g[0],g[1],h)&&f.preventDefault()}const c=T(a),d=X;Y(d,"mousedown",b.bind(null,1),!1);Y(window,"mouseup",b.bind(null,0),!1)},eg:function(a){const b=T(a),c=X;Y(window,"mousemove",function(d){const e=c.getBoundingClientRect(),f=Mh(d,e);b(f[0],f[1],c.width/e.width*d.movementX,c.height/e.height*d.movementY,Lh(d))},!1)},dg:function(a){const b=T(a);Y(X,"wheel",
function(c){b(c.deltaX||0,c.deltaY||0)&&c.preventDefault()},!1)},cg:function(a){const b=T(a);Y(window,"paste",function(c){c=c.clipboardData.getData("text");c=W(c);b(c);S(c)},!1)},bg:function(a,b,c){function d(g,h){0===g&&X.focus();const m=f.getBoundingClientRect(),p=h.changedTouches;for(let r=0;r<p.length;r++){const A=p[r],G=Mh(A,m);L(c+16*r,G[0],"double");L(c+8*(2*r+1),G[1],"double");L(b+4*r,A.identifier,"i32")}e(g,p.length);h.cancelable&&h.preventDefault()}const e=T(a),f=X;Y(f,"touchstart",d.bind(null,
0),!1);Y(f,"touchend",d.bind(null,1),!1);Y(f,"touchcancel",d.bind(null,1),!1);Y(f,"touchmove",d.bind(null,2),!1)},ag:function(a){"function"!==typeof navigator.vibrate?jg("This browser does not support vibration."):navigator.vibrate(a)},J:Nh,I:function(a,b,c,d){a=mg(k(),a,b);c=I(c);d=I(d);d=window.URL.createObjectURL(new Blob([a],{type:d}));a=document.createElement("a");a.href=d;a.download=c;a.style.display="none";document.body.appendChild(a);a.click();a.remove();window.URL.revokeObjectURL(d)},$f:function(a){a=
I(a);a=JSON.parse(a);return ug?(ug(a),0):1},_f:function(a){a=T(a);Gg(a)},Zf:function(){return xg?1:0},Yf:function(a){const b=T(a);Fg=Bg();Fg.then(function(){b()})},Xf:function(){return navigator.hardwareConcurrency||1},Wf:function(a){Dg=T(a)},Vf:function(a){window.open(I(a),"_blank")},Uf:function(a){"serviceWorker"in navigator&&(a=T(a),navigator.serviceWorker.getRegistration().then(Ph.bind(null,a)))},Tf:function(){return"serviceWorker"in navigator&&Oh?(navigator.serviceWorker.getRegistration().then(function(a){a&&
a.waiting&&a.waiting.postMessage("update")}),0):1},H:function(a){Z[a]&&Rh(a)},Sf:function(a,b,c,d,e,f){c=T(c).bind(null,b);d=T(d).bind(null,b);e=T(e).bind(null,b);b=T(f).bind(null,b);Qh(a,c,d,e,b)},Rf:function(a){Rh(a);ph(a)},Qf:function(a){return Sh(a,"bufferedAmount",0)},Pf:function(a){return Sh(a,"id",65535)},Of:function(a){return Sh(a,"negotiated",65535)},Nf:function(a){return Sh(a,"ordered",!0)},Mf:function(a){return(a=Z[a])&&a.label?W(a.label):0},Lf:function(a){return(a=Z[a])?void 0!==a.maxPacketLifeTime?
a.maxPacketLifeTime:void 0!==a.maxRetransmitTime?a.maxRetransmitTime:65535:65535},Kf:function(a){return Sh(a,"maxRetransmits",65535)},Jf:function(a){return(a=Z[a])&&a.protocol?W(a.protocol):0},If:function(a){a=Z[a];if(!a)return 3;switch(a.readyState){case "connecting":return 0;case "open":return 1;case "closing":return 2;default:return 3}},Hf:function(a,b,c,d){a=Z[a];if(!a)return 1;const e=new Uint8Array(c);for(let f=0;f<c;f++)e[f]=Yc(b+f,"i8");d?a.send(e.buffer):(b=(new TextDecoder("utf-8")).decode(e),
a.send(b));return 0},G:function(a){(a=Z[a])&&a.close()},Gf:function(a,b,c,d,e){c=T(c).bind(null,b);d=T(d).bind(null,b);b=T(e).bind(null,b);e=JSON.parse(I(a));a=null;try{a=new RTCPeerConnection(e)}catch(f){return V(f),0}e=oh(a);a.oniceconnectionstatechange=Th.bind(null,e,a,c);a.onicecandidate=Uh.bind(null,e,d);a.ondatachannel=Vh.bind(null,e,b);return e},Ff:function(a,b,c){try{const d=Z[a];if(!d)return 0;const e=I(b),f=JSON.parse(I(c)),g=d.createDataChannel(e,f);return oh(g)}catch(d){return V(d),0}},
F:function(a){const b=Z[a];b&&(b.oniceconnectionstatechange=null,b.onicecandidate=null,b.ondatachannel=null,ph(a))},Ef:function(a,b,c,d){if(a=Z[a])b=I(b),d=I(d),a.addIceCandidate(new RTCIceCandidate({candidate:d,sdpMid:b,sdpMlineIndex:c}))},Df:function(a,b,c,d,e){const f=Z[a];if(f){b=I(b);c=I(c);var g=T(e).bind(null,d);f.setLocalDescription({sdp:c,type:b}).catch(function(h){Z[a]&&(V(h),g())})}},Cf:function(a,b,c,d){const e=Z[a];if(e){var f=T(c).bind(null,b),g=T(d).bind(null,b);e.createOffer().then(function(h){Wh(a,
f,h)}).catch(function(h){Z[a]&&(V(h),g())})}},Bf:function(a,b,c,d,e,f){const g=Z[a];if(g){var h=I(b);b=I(c);var m=T(f).bind(null,d),p=T(e).bind(null,d);g.setRemoteDescription({sdp:b,type:h}).then(function(){return"offer"!==h?Promise.resolve():g.createAnswer().then(function(r){Wh(a,p,r)})}).catch(function(r){Z[a]&&(V(r),m())})}},Af:Xh,zf:Yh,yf:Zh,xf:function(a){a=T(a);try{const b=[],c=window.speechSynthesis.getVoices();for(let e=0;e<c.length;e++)b.push(`${c[e].lang};${c[e].name}`);const d=og(b);a(b.length,
d);pg(d,b.length)}catch(b){}},wf:function(){return window.speechSynthesis.paused},vf:function(){return window.speechSynthesis.Yi},uf:function(){window.speechSynthesis.pause()},tf:function(){window.speechSynthesis.resume()},sf:function(a,b,c,d,e,f,g){g=T(g);a=new SpeechSynthesisUtterance(I(a));a.rate=e;a.pitch=d;a.volume=c/100;a.addEventListener("end",function(h){h.currentTarget.Hj(1,h.currentTarget.id,0)});a.addEventListener("start",function(h){h.currentTarget.Hj(0,h.currentTarget.id,0)});a.addEventListener("error",
function(h){h.currentTarget.Hj(2,h.currentTarget.id,0)});a.addEventListener("boundary",function(h){h.currentTarget.Hj(3,h.currentTarget.id,h.qm)});a.id=f;a.Hj=g;b=I(b);c=window.speechSynthesis.getVoices();for(d=0;d<c.length;d++)if(c[d].name===b){a.voice=c[d];break}window.speechSynthesis.resume();window.speechSynthesis.speak(a)},rf:function(){window.speechSynthesis.cancel();window.speechSynthesis.resume()},E:function(a){return(a=Z[a])?a.bufferedAmount:0},qf:function(a,b,c){c=I(c);di(a,b,c)},pf:function(a,
b,c,d,e,f,g){d=T(d).bind(null,a);e=T(e).bind(null,a);f=T(f).bind(null,a);a=T(g).bind(null,a);b=I(b);c=I(c);g=null;try{g=c?new WebSocket(b,c.split(",")):new WebSocket(b)}catch(h){return 0}g.binaryType="arraybuffer";c=g;b=oh(c);c.onopen=$h.bind(null,b,d);c.onmessage=ai.bind(null,b,e);c.onerror=bi.bind(null,b,f);c.onclose=ci.bind(null,b,a);return b},D:function(a){const b=Z[a];b&&(di(a,3001,"destroyed"),ph(a),b.onopen=null,b.onmessage=null,b.onerror=null,b.onclose=null)},of:function(a,b,c,d){const e=
new Uint8Array(c);let f;for(f=0;f<c;f++)e[f]=Yc(b+f,"i8");b=e.buffer;d||(b=(new TextDecoder("utf-8")).decode(e));(a=Z[a])&&a.readyState===a.OPEN?(a.send(b),a=0):a=1;return a},nf:function(a,b){const c=T(b);let d=0;return d=gi(function(){if(hi(d)){var e=Array.from(arguments),f=new fi(e);c(a,f.Ik(),e.length);f.Zk()}})},mf:function(a,b,c,d,e,f,g){a=I(a);if("undefined"===typeof window[a])return-1;d=T(d);g=T(g);const h=Array(c);for(let m=0;m<c;m++){const p=d(b,m,e,f),r=Yc(f,"*");h[m]=ii(p,e);r&&g(f,p)}try{const m=
new window[a](...h);return ji(m,e)}catch(m){return V(`Error calling constructor ${a} with args:`,h,"error:",m),-1}},lf:function(a){a=I(a);return"undefined"!==typeof window[a]?gi(window[a]):0},kf:function(a,b,c,d,e,f,g,h){a=hi(a);if(void 0===a)return-1;b=I(b);e=T(e);h=T(h);const m=Array(d);for(let p=0;p<d;p++){const r=e(c,p,f,g),A=Yc(g,"*");m[p]=ii(r,f);A&&h(g,r)}try{const p=a[b](...m);return ji(p,f)}catch(p){return V(`Error calling method ${b} on:`,a,"error:",p),-1}},jf:function(a,b,c){a=hi(a);if(void 0===
a)return 0;if(c){c=I(c);try{return ji(a[c],b)}catch(d){return V(`Error getting variable ${c} on object`,a),0}}return ji(a,b)},C:function(a,b,c){a=hi(a);if(void 0===a)return-1;b=ii(b,c);if(void 0===b||null===b)return-1;try{return ji(a[b],c)}catch(d){return V(`Error getting variable ${b} on object`,a,d),-1}},hf:function(a,b,c,d){a=hi(a);if(void 0!==a){b=I(b);try{a[b]=ii(c,d)}catch(e){V(`Error setting variable ${b} on object`,a)}}},gf:function(a,b,c,d,e){a=hi(a);if(void 0===a)return-1;b=ii(b,c);try{return a[b]=
ii(d,e),0}catch(f){return V(`Error setting variable ${b} on object`,a),-1}},ff:function(a){a=Z[a];void 0!==a&&a.Zk()},ef:yi,df:zi,B:Ai,cf:Bi,bf:Ci,m:Di,af:Ei,$e:Fi,_e:Gi,Ze:Hi,Ye:Ii,Xe:Ji,We:Ki,A:Li,Ve:Mi,Ue:Ni,z:Oi,Te:Pi,Se:aj,j:bj,f:cj,h:dj,y:ej,q:fj,Oe:gj,d:hj,e:ij,Re:jj,i:kj,p:lj,Qe:mj,a:aa||v.wasmMemory,x:Ti,Ne:function(a,b,c,d){return Ti(a,b,c,d)}};
(function(){function a(c,d){c=c.exports;v.asm=c;B.Wk.push(v.asm.ni);Na=v.asm.ri;Pa.unshift(v.asm.ai);Ia=d;B.Jl(()=>{gb--;v.monitorRunDependencies&&v.monitorRunDependencies(gb);if(0==gb&&(null!==hb&&(clearInterval(hb),hb=null),ib)){var e=ib;ib=null;e()}});return c}var b={a:nj};gb++;v.monitorRunDependencies&&v.monitorRunDependencies(gb);if(v.instantiateWasm)try{return v.instantiateWasm(b,a)}catch(c){Fa("Module.instantiateWasm callback failed with error: "+c),ra(c)}ob(b,function(c){a(c.instance,c.module)}).catch(ra);
return{}})();function S(){return(S=v.asm.bi).apply(null,arguments)}v.__Z13godot_js_mainiPPc=function(){return(v.__Z13godot_js_mainiPPc=v.asm.ci).apply(null,arguments)};var oj=v._main=function(){return(oj=v._main=v.asm.di).apply(null,arguments)};function xe(){return(xe=v.asm.ei).apply(null,arguments)}function ig(){return(ig=v.asm.fi).apply(null,arguments)}function gd(){return(gd=v.asm.gi).apply(null,arguments)}function qd(){return(qd=v.asm.hi).apply(null,arguments)}
function zd(){return(zd=v.asm.ii).apply(null,arguments)}var Rc=v._fflush=function(){return(Rc=v._fflush=v.asm.ji).apply(null,arguments)};v.__emwebxr_on_input_event=function(){return(v.__emwebxr_on_input_event=v.asm.ki).apply(null,arguments)};v.__emwebxr_on_simple_event=function(){return(v.__emwebxr_on_simple_event=v.asm.li).apply(null,arguments)};var Uc=v._pthread_self=function(){return(Uc=v._pthread_self=v.asm.mi).apply(null,arguments)};
v.__emscripten_tls_init=function(){return(v.__emscripten_tls_init=v.asm.ni).apply(null,arguments)};function Sb(){return(Sb=v.asm.oi).apply(null,arguments)}function fh(){return(fh=v.asm.pi).apply(null,arguments)}function Qc(){return(Qc=v.asm.si).apply(null,arguments)}var $i=v.__emscripten_thread_init=function(){return($i=v.__emscripten_thread_init=v.asm.ti).apply(null,arguments)};v.__emscripten_thread_crashed=function(){return(v.__emscripten_thread_crashed=v.asm.ui).apply(null,arguments)};
function Pf(){return(Pf=v.asm.vi).apply(null,arguments)}function Tc(){return(Tc=v.asm.wi).apply(null,arguments)}var $c=v.__emscripten_thread_exit=function(){return($c=v.__emscripten_thread_exit=v.asm.xi).apply(null,arguments)};function Ie(){return(Ie=v.asm.yi).apply(null,arguments)}var Zd=v.__emscripten_check_mailbox=function(){return(Zd=v.__emscripten_check_mailbox=v.asm.zi).apply(null,arguments)};function pj(){return(pj=v.asm.Ai).apply(null,arguments)}
function Wc(){return(Wc=v.asm.Bi).apply(null,arguments)}function Nf(){return(Nf=v.asm.Ci).apply(null,arguments)}function Xc(){return(Xc=v.asm.Di).apply(null,arguments)}function Of(){return(Of=v.asm.Ei).apply(null,arguments)}var qj=v.dynCall_iij=function(){return(qj=v.dynCall_iij=v.asm.Fi).apply(null,arguments)};function ij(a,b,c){var d=Nf();try{Zc(a)(b,c)}catch(e){Xc(d);if(e!==e+0)throw e;pj(1,0)}}function hj(a,b){var c=Nf();try{Zc(a)(b)}catch(d){Xc(c);if(d!==d+0)throw d;pj(1,0)}}
function dj(a,b,c,d){var e=Nf();try{return Zc(a)(b,c,d)}catch(f){Xc(e);if(f!==f+0)throw f;pj(1,0)}}function bj(a,b){var c=Nf();try{return Zc(a)(b)}catch(d){Xc(c);if(d!==d+0)throw d;pj(1,0)}}function fj(a,b,c,d,e,f){var g=Nf();try{return Zc(a)(b,c,d,e,f)}catch(h){Xc(g);if(h!==h+0)throw h;pj(1,0)}}function kj(a,b,c,d,e){var f=Nf();try{Zc(a)(b,c,d,e)}catch(g){Xc(f);if(g!==g+0)throw g;pj(1,0)}}function aj(a){var b=Nf();try{return Zc(a)()}catch(c){Xc(b);if(c!==c+0)throw c;pj(1,0)}}
function lj(a,b,c,d,e,f,g,h){var m=Nf();try{Zc(a)(b,c,d,e,f,g,h)}catch(p){Xc(m);if(p!==p+0)throw p;pj(1,0)}}function cj(a,b,c){var d=Nf();try{return Zc(a)(b,c)}catch(e){Xc(d);if(e!==e+0)throw e;pj(1,0)}}function ej(a,b,c,d,e){var f=Nf();try{return Zc(a)(b,c,d,e)}catch(g){Xc(f);if(g!==g+0)throw g;pj(1,0)}}function mj(a,b,c,d,e,f,g,h,m){var p=Nf();try{Zc(a)(b,c,d,e,f,g,h,m)}catch(r){Xc(p);if(r!==r+0)throw r;pj(1,0)}}
function jj(a,b,c,d){var e=Nf();try{Zc(a)(b,c,d)}catch(f){Xc(e);if(f!==f+0)throw f;pj(1,0)}}function gj(a,b,c,d){var e=Nf();try{return qj(a,b,c,d)}catch(f){Xc(e);if(f!==f+0)throw f;pj(1,0)}}v.callMain=rj;v.keepRuntimeAlive=Va;v.wasmMemory=aa;v.cwrap=function(a,b,c,d){var e=!c||c.every(f=>"number"===f||"boolean"===f);return"string"!==b&&e&&!d?v["_"+a]:function(){return Vi(a,b,c,arguments)}};v.ExitStatus=pb;v.PThread=B;var sj;ib=function tj(){sj||uj();sj||(ib=tj)};
function rj(a=[]){var b=oj;a.unshift(ua);var c=a.length,d=Of(4*(c+1)),e=d>>2;a.forEach(g=>{n()[e++]=Ui(g)});n()[e]=0;try{var f=b(c,d);Oc(f,!0);return f}catch(g){return Sc(g)}}
function uj(){var a=ta;function b(){if(!sj&&(sj=!0,v.calledRun=!0,!Ja)){Wa();w||eb(Qa);pa(v);if(v.onRuntimeInitialized)v.onRuntimeInitialized();vj&&rj(a);if(!w){if(v.postRun)for("function"==typeof v.postRun&&(v.postRun=[v.postRun]);v.postRun.length;){var c=v.postRun.shift();Sa.unshift(c)}eb(Sa)}}}if(!(0<gb))if(w)pa(v),Wa(),startWorker(v);else{if(v.preRun)for("function"==typeof v.preRun&&(v.preRun=[v.preRun]);v.preRun.length;)fb();eb(Oa);0<gb||(v.setStatus?(v.setStatus("Running..."),setTimeout(function(){setTimeout(function(){v.setStatus("")},
1);b()},1)):b())}}if(v.preInit)for("function"==typeof v.preInit&&(v.preInit=[v.preInit]);0<v.preInit.length;)v.preInit.pop()();var vj=!1;v.noInitialRun&&(vj=!1);uj();


  return Godot.ready
}

);
})();
if (typeof exports === 'object' && typeof module === 'object')
  module.exports = Godot;
else if (typeof define === 'function' && define['amd'])
  define([], function() { return Godot; });
else if (typeof exports === 'object')
  exports["Godot"] = Godot;

function t(){function c(){let a=0,d=0,l=!0,h=!0;Object.keys(m).forEach(function(e){e=m[e];e.done||(h=!1);l&&0!==e.total?d+=e.total:(l=!1,d=0);a+=e.loaded});if(a!==g||d!==n)g=a,n=d,"function"===typeof f&&f(a,d);h||requestAnimationFrame(c)}function p(a,d){function l(e,q){return e.read().then(function(r){if(d.done)return Promise.resolve();r.value&&(q.enqueue(r.value),d.loaded+=r.value.length);if(!r.done)return l(e,q);d.done=!0;return Promise.resolve()})}const h=a.body.getReader();return new Response(new ReadableStream({start:function(e){l(h,
e).then(function(){e.close()})}}),{headers:a.headers})}function k(a,d,l,h){d[a]={total:l||0,loaded:0,done:!1};return fetch(a).then(function(e){if(!e.ok)return Promise.reject(Error(`Failed loading file '${a}'`));e=p(e,d[a]);return h?Promise.resolve(e):e.arrayBuffer()})}function b(a,d=1){return a().catch(function(l){return 1>=d?Promise.reject(l):new Promise(function(h,e){setTimeout(function(){b(a,d-1).then(h).catch(e)},1E3)})})}const m={};var g=0,n=0;let f=null;this.R=c;this.S=function(a){f=a};this.j=
function(a,d,l=!1){return b(k.bind(null,a,m,d,l),4)};this.i=[];this.B=function(a,d,l){let h=null;if("string"===typeof a){const e=this;return this.j(a,l).then(function(q){e.i.push({path:d||a,buffer:q});return Promise.resolve()})}a instanceof ArrayBuffer?h=new Uint8Array(a):ArrayBuffer.isView(a)&&(h=new Uint8Array(a.buffer));return h?(this.i.push({path:d,buffer:a}),Promise.resolve()):Promise.reject(Error("Invalid object for preloading"))}};function u(c){function p(k){this.update(k)}p.prototype={M:!0,canvas:null,m:"",D:null,locale:null,s:2,l:[],v:!0,u:!1,serviceWorker:"",L:["/userfs"],K:!1,A:[],o:[],F:null,G:null,J:null,H:function(){console.log.apply(console,Array.from(arguments))},I:function(k){console.error.apply(console,Array.from(arguments))}};p.prototype.update=function(k){function b(g,n){return"undefined"===typeof m[g]?n:m[g]}const m=k||{};this.M=b("unloadAfterInit",this.M);this.I=b("onPrintError",this.I);this.H=b("onPrint",this.H);
this.J=b("onProgress",this.J);this.canvas=b("canvas",this.canvas);this.m=b("executable",this.m);this.D=b("mainPack",this.D);this.locale=b("locale",this.locale);this.s=b("canvasResizePolicy",this.s);this.L=b("persistentPaths",this.L);this.K=b("persistentDrops",this.K);this.u=b("experimentalVK",this.u);this.v=b("focusCanvas",this.v);this.serviceWorker=b("serviceWorker",this.serviceWorker);this.A=b("gdnativeLibs",this.A);this.o=b("fileSizes",this.o);this.l=b("args",this.l);this.F=b("onExecute",this.F);
this.G=b("onExit",this.G)};p.prototype.P=function(k,b){let m=b;return{print:this.H,printErr:this.I,thisProgram:this.m,noExitRuntime:!0,dynamicLibraries:[`${k}.side.wasm`],instantiateWasm:function(g,n){function f(a){n(a.instance,a.module)}"undefined"!==typeof WebAssembly.instantiateStreaming?WebAssembly.instantiateStreaming(Promise.resolve(m),g).then(f):m.arrayBuffer().then(function(a){WebAssembly.instantiate(a,g).then(f)});m=null;return{}},locateFile:function(g){return g.endsWith(".worker.js")?`${k}.worker.js`:
g.endsWith(".audio.worklet.js")?`${k}.audio.worklet.js`:g.endsWith(".js")?`${k}.js`:g.endsWith(".side.wasm")?`${k}.side.wasm`:g.endsWith(".wasm")?`${k}.wasm`:g}}};p.prototype.O=function(k){if(!(this.canvas instanceof HTMLCanvasElement)){var b=document.getElementsByTagName("canvas");b.length&&b[0]instanceof HTMLCanvasElement&&(this.canvas=b[0]);if(!this.canvas)throw Error("No canvas found in page");}0>this.canvas.tabIndex&&(this.canvas.tabIndex=0);b=this.locale;b||(b=navigator.languages?navigator.languages[0]:
navigator.language,b=b.split(".")[0]);b=b.replace("-","_");const m=this.G;return{canvas:this.canvas,canvasResizePolicy:this.s,locale:b,persistentDrops:this.K,virtualKeyboard:this.u,focusCanvas:this.v,onExecute:this.F,onExit:function(g){k();"function"===typeof m&&m(g)}}};return new p(c)};const v=function(){function c(n){this.g=new u(n);this.h=null}function p(n){c.prototype={C:function(f){if(g)return g;if(null==b){if(!f)return g=Promise.reject(Error("A base path must be provided when calling `init` and the engine is not loaded."));c.load(f,this.g.o[`${f}.wasm`])}const a=this;k.S(this.g.J);return g=function(d){return new Promise(function(l){d.then(function(h){h=new Response(h.clone().body,{headers:[["content-type","application/wasm"]]});Godot(a.g.P(m,h)).then(function(e){e.initFS(a.g.L).then(function(){a.h=
e;a.g.M&&c.i();l()})})})})}(b)},N:function(f,a){return k.B(f,a,this.g.o[f])},start:function(f){this.g.update(f);const a=this;return a.C().then(function(){if(!a.h)return Promise.reject(Error("The engine must be initialized before it can be started"));let d={};try{d=a.g.O(function(){a.h=null})}catch(h){return Promise.reject(h)}a.h.initConfig(d);const l=[];a.g.A.forEach(function(h){l.push(a.h.loadDynamicLibrary(h,{loadAsync:!0}))});return Promise.all(l).then(function(){return new Promise(function(h){k.i.forEach(function(e){a.h.copyToFS(e.path,
e.buffer)});k.i.length=0;a.h.callMain(a.g.l);g=null;a.g.serviceWorker&&"serviceWorker"in navigator&&navigator.serviceWorker.register(a.g.serviceWorker);h()})})})},B:function(f){this.g.update(f);f=this.g.m;const a=this.g.D||`${f}.pck`;this.g.l=["--main-pack",a].concat(this.g.l);const d=this;return Promise.all([this.C(f),this.N(a,a)]).then(function(){return d.start.apply(d)})},i:function(f,a){if(null==this.h)throw Error("Engine must be inited before copying files");this.h.copyToFS(f,a)},j:function(){this.h&&
this.h.request_quit()}};c.prototype.init=c.prototype.C;c.prototype.preloadFile=c.prototype.N;c.prototype.start=c.prototype.start;c.prototype.startGame=c.prototype.B;c.prototype.copyToFS=c.prototype.i;c.prototype.requestQuit=c.prototype.j;c.prototype.load=c.load;c.prototype.unload=c.i;c.prototype.isWebGLAvailable=c.j;return new c(n)}const k=new t;let b=null,m="",g=null;c.load=function(n,f){null==b&&(m=n,b=k.j(`${m}.wasm`,f,!0),requestAnimationFrame(k.R));return b};c.i=function(){b=null};c.j=function(n=
1){try{return!!document.createElement("canvas").getContext(["webgl","webgl2"][n-1])}catch(f){}return!1};p.load=c.load;p.unload=c.i;p.isWebGLAvailable=c.j;return p}();"undefined"!==typeof window&&(window.Engine=v);
