var h;h||(h=typeof Module !== 'undefined' ? Module : {});var aa={},k;for(k in h)h.hasOwnProperty(k)&&(aa[k]=h[k]);var ba=[],ca="./this.program";function ea(a,b){throw b;}var fa=!1,m=!1,p=!1,ha=!1;fa="object"===typeof window;m="function"===typeof importScripts;p="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node;ha=!fa&&!p&&!m;var r="",ia,ja,ka,la,ma; if(p)r=m?require("path").dirname(r)+"/":__dirname+"/",ia=function(a,b){la||(la=require("fs"));ma||(ma=require("path"));a=ma.normalize(a);return la.readFileSync(a,b?null:"utf8")},ka=function(a){a=ia(a,!0);a.buffer||(a=new Uint8Array(a));assert(a.buffer);return a},1=d);)++c;if(16e?d+=String.fromCharCode(e):(e-=65536,d+=String.fromCharCode(55296|e>>10,56320|e&1023))}}else d+=String.fromCharCode(e)}return d}function B(a,b){return a?wa(C,a,b):""} function E(a,b,c,d){if(!(0=f){var l=a.charCodeAt(++g);f=65536+((f&1023)<<10)|l&1023}if(127>=f){if(c>=d)break;b[c++]=f}else{if(2047>=f){if(c+1>=d)break;b[c++]=192|f>>6}else{if(65535>=f){if(c+2>=d)break;b[c++]=224|f>>12}else{if(c+3>=d)break;b[c++]=240|f>>18;b[c++]=128|f>>12&63}b[c++]=128|f>>6&63}b[c++]=128|f&63}}b[c]=0;return c-e} function xa(a){for(var b=0,c=0;c=d&&(d=65536+((d&1023)<<10)|a.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:b+4}return b}function ya(a){var b=xa(a)+1,c=za(b);E(a,G,c,b);return c}var Aa,G,C,H,Ba,I,Ca,J,Da,K,Ea=[],Fa=[],Ga=[],Ha=[],Ja=[];function Ka(){var a=h.preRun.shift();Ea.unshift(a)}var L=0,La=null,Ma=null;h.preloadedImages={};h.preloadedAudios={}; function t(a){if(h.onAbort)h.onAbort(a);w(a);ua=!0;throw new WebAssembly.RuntimeError("abort("+a+"). Build with -s ASSERTIONS=1 for more info.");}function Na(a){var b=M;return String.prototype.startsWith?b.startsWith(a):0===b.indexOf(a)}function Oa(){return Na("data:application/octet-stream;base64,")}var M="index.wasm";if(!Oa()){var Pa=M;M=h.locateFile?h.locateFile(Pa,r):r+Pa} function Qa(){var a=M;try{if(a==M&&sa)return new Uint8Array(sa);if(ka)return ka(a);throw"both async and sync fetching of the wasm failed";}catch(b){t(b)}}function Ra(){return sa||!fa&&!m||"function"!==typeof fetch||Na("file://")?Promise.resolve().then(function(){return Qa()}):fetch(M,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file at '"+M+"'";return a.arrayBuffer()}).catch(function(){return Qa()})} function Sa(a){for(;0=b||(b=Math.max(b,c*(1048576>c?2:1.125)>>>0),0!=c&&(b=Math.max(b,256)),c=a.Ca,a.Ca=new Uint8Array(b),0b)a.Ca.length=b;else for(;a.Ca.length=a.node.Ga)return 0;a=Math.min(a.node.Ga-e,d);if(8b)throw new N(28);return b},ub:function(a,b,c){O.yb(a.node,b+c);a.node.Ga=Math.max(a.node.Ga,b+c)},Fb:function(a,b,c,d,e,g){assert(0===b);if(32768!==(a.node.mode&61440))throw new N(43);a=a.node.Ca; if(g&2||a.buffer!==Aa){if(0>>0)%nb.length}function ib(a,b){var c;if(c=(c=ub(a,"x"))?c:a.Da.lookup?0:2)throw new N(c,a);for(c=nb[tb(a.id,b)];c;c=c.Wb){var d=c.name;if(c.parent.id===a.id&&d===b)return c}return a.Da.lookup(a,b)} function gb(a,b,c,d){a=new vb(a,b,c,d);b=tb(a.parent.id,a.name);a.Wb=nb[b];return nb[b]=a}var wb={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090};function xb(a){var b=["r","w","rw"][a&3];a&512&&(b+="w");return b}function ub(a,b){if(pb)return 0;if(-1===b.indexOf("r")||a.mode&292){if(-1!==b.indexOf("w")&&!(a.mode&146)||-1!==b.indexOf("x")&&!(a.mode&73))return 2}else return 2;return 0}function yb(a,b){try{return ib(a,b),20}catch(c){}return ub(a,"wx")} function zb(a,b){b=b||4096;for(a=a||0;a<=b;a++)if(!lb[a])return a;throw new N(33);}function Ab(a,b,c){Bb||(Bb=function(){},Bb.prototype={});var d=new Bb,e;for(e in a)d[e]=a[e];a=d;b=zb(b,c);a.fd=b;return lb[b]=a}var fb={open:function(a){a.Ea=kb[a.node.rdev].Ea;a.Ea.open&&a.Ea.open(a)},Sa:function(){throw new N(70);}};function ab(a,b){kb[a]={Ea:b}} function Cb(a,b){var c="/"===b,d=!b;if(c&&jb)throw new N(10);if(!c&&!d){var e=R(b,{Ab:!1});b=e.path;e=e.node;if(e.ib)throw new N(10);if(16384!==(e.mode&61440))throw new N(54);}b={type:a,qc:{},Gb:b,Vb:[]};a=a.Na(b);a.Na=b;b.root=a;c?jb=a:e&&(e.ib=b,e.Na&&e.Na.Vb.push(b));return a}function Db(a,b,c){var d=R(a,{parent:!0}).node;a=Wa(a);if(!a||"."===a||".."===a)throw new N(28);var e=yb(d,a);if(e)throw new N(e);if(!d.Da.hb)throw new N(63);return d.Da.hb(d,a,b,c)}function S(a){Db(a,16895,0)} function Eb(a,b,c){"undefined"===typeof c&&(c=b,b=438);Db(a,b|8192,c)}function Fb(a,b){if(!Ya(a))throw new N(44);var c=R(b,{parent:!0}).node;if(!c)throw new N(44);b=Wa(b);var d=yb(c,b);if(d)throw new N(d);if(!c.Da.symlink)throw new N(63);c.Da.symlink(c,b,a)}function rb(a){a=R(a).node;if(!a)throw new N(44);if(!a.Da.readlink)throw new N(28);return Ya(sb(a.parent),a.Da.readlink(a))} function Gb(a,b,c,d){if(""===a)throw new N(44);if("string"===typeof b){var e=wb[b];if("undefined"===typeof e)throw Error("Unknown file open mode: "+b);b=e}c=b&64?("undefined"===typeof c?438:c)&4095|32768:0;if("object"===typeof a)var g=a;else{a=Ua(a);try{g=R(a,{zb:!(b&131072)}).node}catch(l){}}e=!1;if(b&64)if(g){if(b&128)throw new N(20);}else g=Db(a,c,0),e=!0;if(!g)throw new N(44);8192===(g.mode&61440)&&(b&=-513);if(b&65536&&16384!==(g.mode&61440))throw new N(54);if(!e&&(c=g?40960===(g.mode&61440)? 32:16384===(g.mode&61440)&&("r"!==xb(b)||b&512)?31:ub(g,xb(b)):44))throw new N(c);if(b&512){c=g;var f;"string"===typeof c?f=R(c,{zb:!0}).node:f=c;if(!f.Da.Pa)throw new N(63);if(16384===(f.mode&61440))throw new N(31);if(32768!==(f.mode&61440))throw new N(28);if(c=ub(f,"w"))throw new N(c);f.Da.Pa(f,{size:0,timestamp:Date.now()})}b&=-131713;d=Ab({node:g,path:sb(g),flags:b,seekable:!0,position:0,Ea:g.Ea,$b:[],error:!1},d,void 0);d.Ea.open&&d.Ea.open(d);!h.logReadFiles||b&1||(Hb||(Hb={}),a in Hb||(Hb[a]= 1,w("FS.trackingDelegate error on read file: "+a)));try{qb.onOpenFile&&(g=0,1!==(b&2097155)&&(g|=1),0!==(b&2097155)&&(g|=2),qb.onOpenFile(a,g))}catch(l){w("FS.trackingDelegate['onOpenFile']('"+a+"', flags) threw an exception: "+l.message)}return d} function Ib(a,b,c,d){var e=G;if(0>c||0>d)throw new N(28);if(null===a.fd)throw new N(8);if(0===(a.flags&2097155))throw new N(8);if(16384===(a.node.mode&61440))throw new N(31);if(!a.Ea.write)throw new N(28);if(a.seekable&&a.flags&1024){if(null===a.fd)throw new N(8);if(!a.seekable||!a.Ea.Sa)throw new N(70);a.position=a.Ea.Sa(a,0,2);a.$b=[]}var g="undefined"!==typeof d;if(!g)d=a.position;else if(!a.seekable)throw new N(70);b=a.Ea.write(a,e,b,c,d,void 0);g||(a.position+=b);try{if(a.path&&qb.onWriteToFile)qb.onWriteToFile(a.path)}catch(f){w("FS.trackingDelegate['onWriteToFile']('"+ a.path+"') threw an exception: "+f.message)}return b}function Jb(){N||(N=function(a,b){this.node=b;this.Zb=function(c){this.La=c};this.Zb(a);this.message="FS error"},N.prototype=Error(),N.prototype.constructor=N,[44].forEach(function(a){hb[a]=new N(a);hb[a].stack=""}))}var Kb;function Lb(a,b){var c=0;a&&(c|=365);b&&(c|=146);return c} function Mb(a,b,c){a=Ua("/dev/"+a);var d=Lb(!!b,!!c);Nb||(Nb=64);var e=Nb++<<8|0;ab(e,{open:function(g){g.seekable=!1},close:function(){c&&c.buffer&&c.buffer.length&&c(10)},read:function(g,f,l,n){for(var q=0,u=0;u>2]}function Qb(a){a=lb[a];if(!a)throw new N(8);return a} var U={Na:function(){h.websocket=h.websocket&&"object"===typeof h.websocket?h.websocket:{};h.websocket.mb={};h.websocket.on=function(a,b){"function"===typeof b&&(this.mb[a]=b);return this};h.websocket.emit=function(a,b){"function"===typeof this.mb[a]&&this.mb[a].call(this,b)};return gb(null,"/",16895,0)},createSocket:function(a,b,c){b&=-526337;c&&assert(1==b==(6==c));a={family:a,type:b,protocol:c,Ha:null,error:null,Za:{},pending:[],Va:[],Ia:U.Ja};b=U.jb();c=gb(U.root,b,49152,0);c.Wa=a;b=Ab({path:b, node:c,flags:2,seekable:!1,Ea:U.Ea});a.stream=b;return a},Qb:function(a){return(a=lb[a])&&49152===(a.node.mode&49152)?a.node.Wa:null},Ea:{Jb:function(a){a=a.node.Wa;return a.Ia.Jb(a)},Db:function(a,b,c){a=a.node.Wa;return a.Ia.Db(a,b,c)},read:function(a,b,c,d){a=a.node.Wa;d=a.Ia.rb(a,d);if(!d)return 0;b.set(d.buffer,c);return d.buffer.length},write:function(a,b,c,d){a=a.node.Wa;return a.Ia.sb(a,b,c,d)},close:function(a){a=a.node.Wa;a.Ia.close(a)}},jb:function(){U.jb.current||(U.jb.current=0);return"socket["+ U.jb.current++ +"]"},Ja:{cb:function(a,b,c){if("object"===typeof b){var d=b;c=b=null}if(d)if(d._socket)b=d._socket.remoteAddress,c=d._socket.remotePort;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=h.websocket&&"object"===typeof h.websocket,g="ws:#".replace("#","//");e&&"string"===typeof h.websocket.url&&(g=h.websocket.url);if("ws://"===g||"wss://"===g){var f=b.split("/");g=g+f[0]+ ":"+c+"/"+f.slice(1).join("/")}f="binary";e&&"string"===typeof h.websocket.subprotocol&&(f=h.websocket.subprotocol);var l=void 0;"null"!==f&&(f=f.replace(/^ +| +$/g,"").split(/ *, */),l=p?{protocol:f.toString()}:f);e&&null===h.websocket.subprotocol&&(l=void 0);d=new (p?require("ws"):WebSocket)(g,l);d.binaryType="arraybuffer"}catch(n){throw new N(23);}b={Fa:b,port:c,socket:d,eb:[]};U.Ja.tb(a,b);U.Ja.Sb(a,b);2===a.type&&"undefined"!==typeof a.Ta&&b.eb.push(new Uint8Array([255,255,255,255,112,111,114, 116,(a.Ta&65280)>>8,a.Ta&255]));return b},fb:function(a,b,c){return a.Za[b+":"+c]},tb:function(a,b){a.Za[b.Fa+":"+b.port]=b},Kb:function(a,b){delete a.Za[b.Fa+":"+b.port]},Sb:function(a,b){function c(){h.websocket.emit("open",a.stream.fd);try{for(var g=b.eb.shift();g;)b.socket.send(g),g=b.eb.shift()}catch(f){b.socket.close()}}function d(g){if("string"===typeof g)g=(new TextEncoder).encode(g);else{assert(void 0!==g.byteLength);if(0==g.byteLength)return;g=new Uint8Array(g)}var f=e;e=!1;f&&10===g.length&& 255===g[0]&&255===g[1]&&255===g[2]&&255===g[3]&&112===g[4]&&111===g[5]&&114===g[6]&&116===g[7]?(g=g[8]<<8|g[9],U.Ja.Kb(a,b),b.port=g,U.Ja.tb(a,b)):(a.Va.push({Fa:b.Fa,port:b.port,data:g}),h.websocket.emit("message",a.stream.fd))}var e=!0;p?(b.socket.on("open",c),b.socket.on("message",function(g,f){f.ec&&d((new Uint8Array(g)).buffer)}),b.socket.on("close",function(){h.websocket.emit("close",a.stream.fd)}),b.socket.on("error",function(){a.error=14;h.websocket.emit("error",[a.stream.fd,a.error,"ECONNREFUSED: Connection refused"])})): (b.socket.onopen=c,b.socket.onclose=function(){h.websocket.emit("close",a.stream.fd)},b.socket.onmessage=function(g){d(g.data)},b.socket.onerror=function(){a.error=14;h.websocket.emit("error",[a.stream.fd,a.error,"ECONNREFUSED: Connection refused"])})},Jb:function(a){if(1===a.type&&a.Ha)return a.pending.length?65:0;var b=0,c=1===a.type?U.Ja.fb(a,a.Ka,a.Ma):null;if(a.Va.length||!c||c&&c.socket.readyState===c.socket.CLOSING||c&&c.socket.readyState===c.socket.CLOSED)b|=65;if(!c||c&&c.socket.readyState=== c.socket.OPEN)b|=4;if(c&&c.socket.readyState===c.socket.CLOSING||c&&c.socket.readyState===c.socket.CLOSED)b|=16;return b},Db:function(a,b,c){switch(b){case 21531:return b=0,a.Va.length&&(b=a.Va[0].data.length),I[c>>2]=b,0;default:return 28}},close:function(a){if(a.Ha){try{a.Ha.close()}catch(e){}a.Ha=null}for(var b=Object.keys(a.Za),c=0;cb;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 Wb(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=0===a.indexOf("::")?a.replace("::","Z:"):a.replace("::",":Z:");0b,"exceeded max address mappings of 65535"),b="172.29."+(b&255)+"."+(b&65280),$b[b]=a,Zb[a]=b);return b}function bc(a){return $b[a]?$b[a]:null}function cc(a){return(a&255)+"."+(a>>8&255)+"."+(a>>16&255)+"."+(a>>24&255)} function dc(a){var b="",c,d=0,e=0,g=0,f=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 l=!0;for(c=0;5>c;c++)if(0!==a[c]){l=!1;break}if(l){c=cc(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]&&(1d&&(d=f,g=c-d+1);for(c=0;8>c;c++)1=g&&cc?":":"");return b} function fc(a,b){var c=H[a>>1],d=ec(Ba[a+2>>1]);switch(c){case 2:if(16!==b)return{La:28};a=I[a+4>>2];a=cc(a);break;case 10:if(28!==b)return{La:28};a=[I[a+8>>2],I[a+12>>2],I[a+16>>2],I[a+20>>2]];a=dc(a);break;default:return{La:5}}return{family:c,Fa:a,port:d}} function hc(a,b,c,d,e){switch(b){case 2:c=Rb(c);e&&(I[e>>2]=16);H[a>>1]=b;I[a+4>>2]=c;H[a+2>>1]=Xb(d);break;case 10:c=Wb(c);e&&(I[e>>2]=28);I[a>>2]=b;I[a+8>>2]=c[0];I[a+12>>2]=c[1];I[a+16>>2]=c[2];I[a+20>>2]=c[3];H[a+2>>1]=Xb(d);I[a+4>>2]=0;I[a+24>>2]=0;break;default:return 5}return 0}var ic;p?ic=function(){var a=process.hrtime();return 1E3*a[0]+a[1]/1E6}:"undefined"!==typeof dateNow?ic=dateNow:ic=function(){return performance.now()}; function jc(a,b){kc=a;lc=b;if(mc)if(0==a)nc=function(){var d=Math.max(0,oc+b-ic())|0;setTimeout(pc,d)};else if(1==a)nc=function(){qc(pc)};else if(2==a){if("undefined"===typeof setImmediate){var c=[];addEventListener("message",function(d){if("setimmediate"===d.data||"setimmediate"===d.data.target)d.stopPropagation(),c.shift()()},!0);setImmediate=function(d){c.push(d);m?(void 0===h.setImmediates&&(h.setImmediates=[]),h.setImmediates.push(d),postMessage({target:"setimmediate"})):postMessage("setimmediate", "*")}}nc=function(){setImmediate(pc)}}} function rc(a){noExitRuntime=!0;assert(!mc,"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.");mc=a;var b=sc;pc=function(){if(!ua)if(0>z-6&63;z-=6;v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[x]}2==z?(v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(y&3)<<4],v+="=="):4==z&&(v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(y&15)<<2],v+="=");u.src="data:audio/x-"+d.substr(-3)+";base64,"+v;f(u)}};u.src=q;Gc(function(){f(u)})}else return l()}});var b=h.canvas;b&&(b.requestPointerLock=b.requestPointerLock||b.mozRequestPointerLock|| b.webkitRequestPointerLock||b.msRequestPointerLock||function(){},b.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},b.exitPointerLock=b.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",a,!1),document.addEventListener("mozpointerlockchange",a,!1),document.addEventListener("webkitpointerlockchange",a,!1),document.addEventListener("mspointerlockchange",a,!1),h.elementPointerLock&& b.addEventListener("click",function(c){!yc&&h.canvas.requestPointerLock&&(h.canvas.requestPointerLock(),c.preventDefault())},!1))}} function Hc(a,b,c,d){if(b&&h.nb&&a==h.canvas)return h.nb;var e;if(b){var g={antialias:!1,alpha:!1,Eb:1};if(d)for(var f in d)g[f]=d[f];if("undefined"!==typeof Ic&&(e=Jc(a,g)))var l=Kc[e].lb}else l=a.getContext("2d");if(!l)return null;c&&(b||assert("undefined"===typeof V,"cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),h.nb=l,b&&Lc(e),h.vc=b,zc.forEach(function(n){n()}),Ac());return l}var Mc=!1,Nc=void 0,Oc=void 0; function Pc(a,b){function c(){xc=!1;var g=d.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===g?(d.exitFullscreen=Qc,Nc&&d.requestPointerLock(),xc=!0,Oc?("undefined"!=typeof SDL&&(I[SDL.screen>>2]=Ca[SDL.screen>>2]|8388608),Rc(h.canvas),Sc()):Rc(d)):(g.parentNode.insertBefore(d,g),g.parentNode.removeChild(g),Oc?("undefined"!=typeof SDL&&(I[SDL.screen>>2]=Ca[SDL.screen>>2]& -8388609),Rc(h.canvas),Sc()):Rc(d));if(h.onFullScreen)h.onFullScreen(xc);if(h.onFullscreen)h.onFullscreen(xc)}Nc=a;Oc=b;"undefined"===typeof Nc&&(Nc=!0);"undefined"===typeof Oc&&(Oc=!1);var d=h.canvas;Mc||(Mc=!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?function(){e.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}:null)||(e.webkitRequestFullScreen?function(){e.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null);e.requestFullscreen()} function Qc(){if(!xc)return!1;(document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||function(){}).apply(document,[]);return!0}var Tc=0;function qc(a){if("function"===typeof requestAnimationFrame)requestAnimationFrame(a);else{var b=Date.now();if(0===Tc)Tc=b+1E3/60;else for(;b+2>=Tc;)Tc+=1E3/60;setTimeout(a,Math.max(Tc-b,0))}}function Gc(a){noExitRuntime=!0;setTimeout(function(){ua||a()},1E4)} function Fc(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)]}function Uc(a,b,c){ja(a,function(d){assert(d,'Loading data file "'+a+'" failed (no arrayBuffer).');b(new Uint8Array(d))},function(){if(c)c();else throw'Loading data file "'+a+'" failed.';})}var Vc=[];function Sc(){var a=h.canvas;Vc.forEach(function(b){b(a.width,a.height)})} function Rc(a,b,c){b&&c?(a.ac=b,a.Tb=c):(b=a.ac,c=a.Tb);var d=b,e=c;h.forcedAspectRatio&&0id.indexOf(a)?a.getBoundingClientRect():{left:0,top:0}}function ld(a,b){var c={target:jd(2),Ra:"beforeunload",bb:b,gb:function(d){d=d||event;var e=K.get(b)(28,0,a);e&&(e=B(e));if(e)return d.preventDefault(),d.returnValue=e},$a:!0};dd(c)} function md(a,b,c,d){fd||(fd=P(64));a=jd(a);dd({target:a,vb:!0,Ra:"click",bb:d,gb:function(e){e=e||event;var g=a,f=fd>>2;I[f]=e.screenX;I[f+1]=e.screenY;I[f+2]=e.clientX;I[f+3]=e.clientY;I[f+4]=e.ctrlKey;I[f+5]=e.shiftKey;I[f+6]=e.altKey;I[f+7]=e.metaKey;H[2*f+16]=e.button;H[2*f+17]=e.buttons;I[f+9]=e.movementX;I[f+10]=e.movementY;g=kd(g);I[f+11]=e.clientX-g.left;I[f+12]=e.clientY-g.top;K.get(d)(4,fd,b)&&e.preventDefault()},$a:c})} function nd(a,b,c,d,e,g){gd||(gd=P(164));a={target:jd(a),vb:!0,Ra:g,bb:d,gb:function(f){var l=gd,n=l>>2;I[n]=f.location;I[n+1]=f.ctrlKey;I[n+2]=f.shiftKey;I[n+3]=f.altKey;I[n+4]=f.metaKey;I[n+5]=f.repeat;I[n+6]=f.charCode;I[n+7]=f.keyCode;I[n+8]=f.which;E(f.key||"",C,l+36,32);E(f.code||"",C,l+68,32);E(f.char||"",C,l+100,32);E(f.locale||"",C,l+132,32);K.get(d)(e,l,b)&&f.preventDefault()},$a:c};dd(a)} function od(a,b,c,d){hd||(hd=P(36));a=jd(a);dd({target:a,Ra:"resize",bb:d,gb:function(e){e=e||event;if(e.target==a){var g=document.body;if(g){var f=hd;I[f>>2]=e.detail;I[f+4>>2]=g.clientWidth;I[f+8>>2]=g.clientHeight;I[f+12>>2]=innerWidth;I[f+16>>2]=innerHeight;I[f+20>>2]=outerWidth;I[f+24>>2]=outerHeight;I[f+28>>2]=pageXOffset;I[f+32>>2]=pageYOffset;K.get(d)(10,f,b)&&e.preventDefault()}}},$a:c})} function pd(a,b,c){function d(e){try{if("error"===a){var g=qd(),f=cb(e[2]);var l=za(f.length);f.subarray||f.slice?C.set(f,l):C.set(new Uint8Array(f),l);K.get(c)(e[0],e[1],l,b);rd(g)}else K.get(c)(e,b)}catch(n){if(!(n instanceof oa))throw n&&"object"===typeof n&&n.stack&&w("exception thrown: "+[n,n.stack]),n;}}noExitRuntime=!0;h.websocket.on(a,c?d:null)} function sd(a){var b=a.getExtension("ANGLE_instanced_arrays");b&&(a.vertexAttribDivisor=function(c,d){b.vertexAttribDivisorANGLE(c,d)},a.drawArraysInstanced=function(c,d,e,g){b.drawArraysInstancedANGLE(c,d,e,g)},a.drawElementsInstanced=function(c,d,e,g,f){b.drawElementsInstancedANGLE(c,d,e,g,f)})} function td(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 ud(a){var b=a.getExtension("WEBGL_draw_buffers");b&&(a.drawBuffers=function(c,d){b.drawBuffersWEBGL(c,d)})}var vd=1,wd=[],X=[],xd=[],yd=[],Y=[],Kc=[],zd={};function Z(a){Ad||(Ad=a)} function Bd(a){for(var b=vd++,c=a.length;cc.indexOf("lose_context")&&0>c.indexOf("debug")&&b.getExtension(c)})}}var Ic={},Ad,Dd,Ed=["default","low-power","high-performance"];function Fd(a,b,c,d){for(var e=0;e>2]=f}} function Gd(a,b,c,d,e,g,f,l){b=X[b];if(a=V[a](b,c))d=l&&E(a.name,C,l,d),e&&(I[e>>2]=d),g&&(I[g>>2]=a.size),f&&(I[f>>2]=a.type)} function Hd(a,b){if(b){var c=void 0;switch(a){case 36346:c=1;break;case 36344:return;case 36345:c=0;break;case 34466:var d=V.getParameter(34467);c=d?d.length:0}if(void 0===c)switch(d=V.getParameter(a),typeof d){case "number":c=d;break;case "boolean":c=d?1:0;break;case "string":Z(1280);return;case "object":if(null===d)switch(a){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 34068:c=0;break;default:Z(1280);return}else{if(d instanceof Float32Array||d instanceof Uint32Array|| d instanceof Int32Array||d instanceof Array){for(a=0;a>2]=d[a];return}try{c=d.name|0}catch(e){Z(1280);w("GL_INVALID_ENUM in glGet0v: Unknown object returned from WebGL getParameter("+a+")! (error: "+e+")");return}}break;default:Z(1280);w("GL_INVALID_ENUM in glGet0v: Native code calling glGet0v("+a+") and it returns "+d+" of type "+typeof d+"!");return}I[b>>2]=c}else Z(1281)}var Id=[]; function Jd(a){V.pixelStorei(37440,!0);V.texImage2D(3553,0,6408,6408,5121,a);V.pixelStorei(37440,!1)}function vb(a,b,c,d){a||(a=this);this.parent=a;this.Na=a.Na;this.ib=null;this.id=mb++;this.name=b;this.mode=c;this.Da={};this.Ea={};this.rdev=d}Object.defineProperties(vb.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}}});Jb();nb=Array(4096); Cb(O,"/");S("/tmp");S("/home");S("/home/web_user");(function(){S("/dev");ab(259,{read:function(){return 0},write:function(b,c,d,e){return e}});Eb("/dev/null",259);$a(1280,db);$a(1536,eb);Eb("/dev/tty",1280);Eb("/dev/tty1",1536);var a=Xa();Mb("random",a);Mb("urandom",a);S("/dev/shm");S("/dev/shm/tmp")})();S("/proc");S("/proc/self");S("/proc/self/fd"); Cb({Na:function(){var a=gb("/proc/self","fd",16895,73);a.Da={lookup:function(b,c){var d=lb[+c];if(!d)throw new N(8);b={parent:null,Na:{Gb:"fake"},Da:{readlink:function(){return d.path}}};return b.parent=b}};return a}},"/proc/self/fd");h.requestFullscreen=function(a,b){Pc(a,b)};h.requestAnimationFrame=function(a){qc(a)};h.setCanvasSize=function(a,b,c){Rc(h.canvas,a,b);c||Sc()};h.pauseMainLoop=function(){nc=null;sc++};h.resumeMainLoop=function(){sc++;var a=kc,b=lc,c=mc;mc=null;rc(c);jc(a,b);nc()}; h.getUserMedia=function(){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia);window.getUserMedia(void 0)};h.createContext=function(a,b,c,d){return Hc(a,b,c,d)};for(var V,Kd=new Float32Array(288),Ld=0;288>Ld;++Ld)Id[Ld]=Kd.subarray(0,Ld+1);function cb(a,b){var c=Array(xa(a)+1);a=E(a,c,0,c.length);b&&(c.length=a);return c}Fa.push({Bb:function(){Md()}}); var Qd={T:function(a,b,c,d){t("Assertion failed: "+B(a)+", at: "+[b?B(b):"unknown filename",c,d?B(d):"unknown function"])},u:function(a,b,c){Pb=c;try{var d=Qb(a);switch(b){case 0:var e=T();return 0>e?-28:Gb(d.path,d.flags,0,e).fd;case 1:case 2:return 0;case 3:return d.flags;case 4:return e=T(),d.flags|=e,0;case 12:return e=T(),H[e+0>>1]=2,0;case 13:case 14:return 0;case 16:case 8:return-28;case 9:return I[Nd()>>2]=28,-1;default:return-28}}catch(g){return"undefined"!==typeof Ob&&g instanceof N||t(g), -g.La}},j:function(a,b){try{Pb=b;b=function(){var F=U.Qb(T());if(!F)throw new N(8);return F};var c=function(F){var bd=T(),Td=T();if(F&&0===bd)return null;F=fc(bd,Td);if(F.La)throw new N(F.La);F.Fa=bc(F.Fa)||F.Fa;return F};switch(a){case 1:var d=T(),e=T(),g=T(),f=U.createSocket(d,e,g);return f.stream.fd;case 2:f=b();var l=c();f.Ia.bind(f,l.Fa,l.port);return 0;case 3:return f=b(),l=c(),f.Ia.connect(f,l.Fa,l.port),0;case 4:f=b();var n=T();f.Ia.listen(f,n);return 0;case 5:f=b();var q=T(),u=T(),v=f.Ia.accept(f); q&&hc(q,v.family,ac(v.Ka),v.Ma,u);return v.stream.fd;case 6:return f=b(),q=T(),u=T(),hc(q,f.family,ac(f.kb||"0.0.0.0"),f.Ta,u),0;case 7:f=b();q=T();u=T();if(!f.Ka)return-53;hc(q,f.family,ac(f.Ka),f.Ma,u);return 0;case 11:f=b();var y=T(),z=T();T();var Q=c(!0);return Q?f.Ia.sb(f,G,y,z,Q.Fa,Q.port):Ib(f.stream,y,z);case 12:f=b();var x=T(),Sb=T();T();q=T();u=T();var D=f.Ia.rb(f,Sb);if(!D)return 0;q&&hc(q,f.family,ac(D.Fa),D.port,u);C.set(D.buffer,x);return D.buffer.byteLength;case 14:return-50;case 15:f= b();var Ud=T(),Vd=T(),Wd=T(),Xd=T();return 1===Ud&&4===Vd?(I[Wd>>2]=f.error,I[Xd>>2]=4,f.error=null,0):-50;case 16:f=b();y=T();T();var da=I[y+8>>2],Ia=I[y+12>>2],ob=I[y>>2],Yd=I[y+4>>2];if(ob){l=fc(ob,Yd);if(l.La)return-l.La;var Zd=l.port;q=bc(l.Fa)||l.Fa}for(var na=0,A=0;A>2];var cd=new Uint8Array(na);for(A=z=0;A>2],Ub=I[da+(8*A+4)>>2];for(x=0;x>0]}return f.Ia.sb(f,cd,0,na,q,Zd);case 17:f=b();y=T();T();da=I[y+8>>2];Ia=I[y+12>> 2];for(A=na=0;A>2];D=f.Ia.rb(f,na);if(!D)return 0;(ob=I[y>>2])&&hc(ob,f.family,ac(D.Fa),D.port);f=0;var Vb=D.buffer.byteLength;for(A=0;0>2],Ub=I[da+(8*A+4)>>2])z=Math.min(Ub,Vb),x=D.buffer.subarray(f,f+z),C.set(x,Tb+f),f+=z,Vb-=z;return f;default:return-52}}catch(F){return"undefined"!==typeof Ob&&F instanceof N||t(F),-F.La}},w:function(){t()},L:function(a,b){if(0===a)a=Date.now();else if(1===a||4===a)a=ic();else return I[Nd()>>2]=28,-1;I[b>>2]= a/1E3|0;I[b+4>>2]=a%1E3*1E6|0;return 0},I:function(a,b,c,d){Uc(B(a),function(e){var g=P(e.length);C.set(e,g);K.get(c)(b,g,e.length);Od(g)},function(){d&&K.get(d)(b)})},C:function(){return"number"===typeof devicePixelRatio&&devicePixelRatio||1},D:function(a,b,c){a=jd(a);if(!a)return-4;a=kd(a);Da[b>>3]=a.width;Da[c>>3]=a.height;return 0},J:function(a,b,c){C.copyWithin(a,b,b+c)},O:function(a,b){function c(d){K.get(a)(d,b)&&requestAnimationFrame(c)}return requestAnimationFrame(c)},K:function(){t("OOM")}, P:function(a,b,c){if("undefined"===typeof onbeforeunload)return-1;if(1!==c)return-5;ld(a,b);return 0},B:function(a,b,c){a=jd(a);if(!a)return-4;a.width=b;a.height=c;return 0},aa:function(a,b,c,d){md(a,b,c,d);return 0},$:function(a,b,c,d){nd(a,b,c,d,2,"keydown");return 0},Z:function(a,b,c,d){nd(a,b,c,d,1,"keypress");return 0},_:function(a,b,c,d){nd(a,b,c,d,3,"keyup");return 0},Y:function(a,b,c,d){od(a,b,c,d);return 0},ba:function(a,b){pd("message",a,b)},ca:function(a,b){pd("open",a,b)},W:function(a, b){b>>=2;b={alpha:!!I[b],depth:!!I[b+1],stencil:!!I[b+2],antialias:!!I[b+3],premultipliedAlpha:!!I[b+4],preserveDrawingBuffer:!!I[b+5],powerPreference:Ed[I[b+6]],failIfMajorPerformanceCaveat:!!I[b+7],Eb:I[b+8],nc:I[b+9],xb:I[b+10],Pb:I[b+11],rc:I[b+12],tc:I[b+13]};a=jd(a);return!a||b.Pb?0:Jc(a,b)},X:function(a){a>>=2;for(var b=0;14>b;++b)I[a+b]=0;I[a]=I[a+1]=I[a+3]=I[a+4]=I[a+8]=I[a+10]=1},V:function(a){return Lc(a)?0:-5},M:function(a){try{var b=Qb(a);if(null===b.fd)throw new N(8);b.Rb&&(b.Rb=null); try{b.Ea.close&&b.Ea.close(b)}catch(c){throw c;}finally{lb[b.fd]=null}b.fd=null;return 0}catch(c){return"undefined"!==typeof Ob&&c instanceof N||t(c),c.La}},v:function(a,b,c,d){try{a:{for(var e=Qb(a),g=a=0;g>2],I[b+(8*g+4)>>2],void 0);if(0>f){var l=-1;break a}a+=f}l=a}I[d>>2]=l;return 0}catch(n){return"undefined"!==typeof Ob&&n instanceof N||t(n),n.La}},da:function(a,b,c,d){function e(v,y,z,Q,x,Sb){var D=10===v?28:16;x=10===v?dc(x):cc(x);D=P(D);x=hc(D,v,x,Sb);assert(!x); x=P(32);I[x+4>>2]=v;I[x+8>>2]=y;I[x+12>>2]=z;I[x+24>>2]=Q;I[x+20>>2]=D;I[x+16>>2]=10===v?28:16;I[x+28>>2]=0;return x}var g=0,f=0,l=0,n=0,q=0,u=0;c&&(l=I[c>>2],n=I[c+4>>2],q=I[c+8>>2],u=I[c+12>>2]);q&&!u&&(u=2===q?17:6);!q&&u&&(q=17===u?2:1);0===u&&(u=6);0===q&&(q=1);if(!a&&!b)return-2;if(l&-1088||0!==c&&I[c>>2]&2&&!a)return-1;if(l&32)return-2;if(0!==q&&1!==q&&2!==q)return-7;if(0!==n&&2!==n&&10!==n)return-6;if(b&&(b=B(b),f=parseInt(b,10),isNaN(f)))return l&1024?-2:-8;if(!a)return 0===n&&(n=2),0=== (l&1)&&(2===n?g=Pd(2130706433):g=[0,0,0,1]),a=e(n,q,u,null,g,f),I[d>>2]=a,0;a=B(a);g=Rb(a);if(null!==g)if(0===n||2===n)n=2;else if(10===n&&l&8)g=[0,0,Pd(65535),g],n=10;else return-2;else if(g=Wb(a),null!==g)if(0===n||10===n)n=10;else return-2;if(null!=g)return a=e(n,q,u,a,g,f),I[d>>2]=a,0;if(l&4)return-2;a=ac(a);g=Rb(a);0===n?n=2:10===n&&(g=[0,0,Pd(65535),g]);a=e(n,q,u,null,g,f);I[d>>2]=a;return 0},G:function(a,b){V.attachShader(X[a],Y[b])},k:function(a,b,c){V.bindAttribLocation(X[a],b,B(c))},d:function(a, b){V.bindBuffer(a,wd[b])},g:function(a,b){V.bindTexture(a,xd[b])},U:function(a,b){V.blendFunc(a,b)},l:function(a,b,c,d){V.bufferData(a,c?C.subarray(c,c+b):b,d)},R:function(a){V.clear(a)},S:function(a,b,c,d){V.clearColor(a,b,c,d)},ma:function(a){V.compileShader(Y[a])},ja:function(){var a=Bd(X),b=V.createProgram();b.name=a;X[a]=b;return a},oa:function(a){var b=Bd(Y);Y[b]=V.createShader(a);return b},x:function(a,b){for(var c=0;c>2],e=wd[d];e&&(V.deleteBuffer(e),e.name=0,wd[d]=null)}}, H:function(a){if(a){var b=X[a];b?(V.deleteProgram(b),b.name=0,X[a]=null,zd[a]=null):Z(1281)}},s:function(a){if(a){var b=Y[a];b?(V.deleteShader(b),Y[a]=null):Z(1281)}},F:function(a,b){for(var c=0;c>2],e=xd[d];e&&(V.deleteTexture(e),e.name=0,xd[d]=null)}},Q:function(a){V.depthFunc(a)},y:function(a){V.disable(a)},N:function(a,b,c){V.drawArrays(a,b,c)},t:function(a,b,c,d){V.drawElements(a,b,c,d)},m:function(a){V.enable(a)},c:function(a){V.enableVertexAttribArray(a)},n:function(a, b){Fd(a,b,"createBuffer",wd)},q:function(a,b){Fd(a,b,"createTexture",xd)},fa:function(a,b,c,d,e,g,f){Gd("getActiveAttrib",a,b,c,d,e,g,f)},ga:function(a,b,c,d,e,g,f){Gd("getActiveUniform",a,b,c,d,e,g,f)},p:function(a,b){Hd(a,b)},ha:function(a,b,c,d){a=V.getProgramInfoLog(X[a]);null===a&&(a="(unknown error)");b=0>2]=b)},r:function(a,b,c){if(c)if(a>=vd)Z(1281);else{var d=zd[a];if(d)if(35716==b)a=V.getProgramInfoLog(X[a]),null===a&&(a="(unknown error)"),I[c>>2]=a.length+1;else if(35719== b)I[c>>2]=d.ob;else if(35722==b){if(-1==d.Xa){a=X[a];var e=V.getProgramParameter(a,35721);for(b=d.Xa=0;b>2]=d.Xa}else if(35381==b){if(-1==d.Ya)for(a=X[a],e=V.getProgramParameter(a,35382),b=d.Ya=0;b>2]=d.Ya}else I[c>>2]=V.getProgramParameter(X[a],b);else Z(1282)}else Z(1281)},ka:function(a,b,c,d){a=V.getShaderInfoLog(Y[a]);null===a&&(a="(unknown error)");b=0< b&&d?E(a,C,d,b):0;c&&(I[c>>2]=b)},la:function(a,b,c){c?35716==b?(a=V.getShaderInfoLog(Y[a]),null===a&&(a="(unknown error)"),I[c>>2]=a?a.length+1:0):35720==b?(a=V.getShaderSource(Y[a]),I[c>>2]=a?a.length+1:0):I[c>>2]=V.getShaderParameter(Y[a],b):Z(1281)},e:function(a,b){b=B(b);var c=0;if("]"==b[b.length-1]){var d=b.lastIndexOf("[");c="]"!=b[d+1]?parseInt(b.slice(d+1)):0;b=b.slice(0,d)}return(a=zd[a]&&zd[a].Lb[b])&&0<=c&&c>2]:-1;e+=B(I[c+4*g>>2],0>f?void 0:f)}V.shaderSource(Y[a], e)},a:function(a,b,c){V.texParameteri(a,b,c)},o:function(a,b,c){if(96>=b)for(var d=Id[3*b-1],e=0;e<3*b;e+=3)d[e]=J[c+4*e>>2],d[e+1]=J[c+(4*e+4)>>2],d[e+2]=J[c+(4*e+8)>>2];else d=J.subarray(c>>2,c+12*b>>2);V.uniform3fv(yd[a],d)},f:function(a,b,c){if(72>=b){var d=Id[4*b-1],e=J;c>>=2;for(var g=0;g<4*b;g+=4){var f=c+g;d[g]=e[f];d[g+1]=e[f+1];d[g+2]=e[f+2];d[g+3]=e[f+3]}}else d=J.subarray(c>>2,c+16*b>>2);V.uniform4fv(yd[a],d)},h:function(a,b,c,d){if(18>=b){var e=Id[16*b-1],g=J;d>>=2;for(var f=0;f<16*b;f+= 16){var l=d+f;e[f]=g[l];e[f+1]=g[l+1];e[f+2]=g[l+2];e[f+3]=g[l+3];e[f+4]=g[l+4];e[f+5]=g[l+5];e[f+6]=g[l+6];e[f+7]=g[l+7];e[f+8]=g[l+8];e[f+9]=g[l+9];e[f+10]=g[l+10];e[f+11]=g[l+11];e[f+12]=g[l+12];e[f+13]=g[l+13];e[f+14]=g[l+14];e[f+15]=g[l+15]}}else e=J.subarray(d>>2,d+64*b>>2);V.uniformMatrix4fv(yd[a],!!c,e)},i:function(a){V.useProgram(X[a])},b:function(a,b,c,d,e,g){V.vertexAttribPointer(a,b,c,!!d,e,g)},A:function(a,b,c,d){V.viewport(a,b,c,d)},ea:function(a,b,c,d){var e=new Image;e.onload=function(){Ca[c>> 2]=e.width;Ca[d>>2]=e.height;V.bindTexture(3553,xd[a]);Jd(e)};e.src=B(b)},E:function(a,b,c){a=String.fromCharCode(a);var d=document.createElement("canvas");d.width=d.height=b;var e=d.getContext("2d");e.fillStyle="black";e.globalCompositeOperator="copy";e.globalAlpha=0;e.fillRect(0,0,d.width,d.height);e.globalAlpha=1;e.fillStyle="white";e.font=b+"px Bookman";e.textBaseline="bottom";c&&(e.shadowColor="black",e.shadowOffsetX=2,e.shadowOffsetY=2,e.shadowBlur=3,e.strokeStyle="gray",e.strokeText(a,0,d.height)); e.fillText(a,0,d.height);Jd(d);return e.measureText(a).width}}; (function(){function a(e){h.asm=e.exports;ta=h.asm.pa;Aa=e=ta.buffer;h.HEAP8=G=new Int8Array(e);h.HEAP16=H=new Int16Array(e);h.HEAP32=I=new Int32Array(e);h.HEAPU8=C=new Uint8Array(e);h.HEAPU16=Ba=new Uint16Array(e);h.HEAPU32=Ca=new Uint32Array(e);h.HEAPF32=J=new Float32Array(e);h.HEAPF64=Da=new Float64Array(e);K=h.asm.qa;L--;h.monitorRunDependencies&&h.monitorRunDependencies(L);0==L&&(null!==La&&(clearInterval(La),La=null),Ma&&(e=Ma,Ma=null,e()))}function b(e){a(e.instance)}function c(e){return Ra().then(function(g){return WebAssembly.instantiate(g, d)}).then(e,function(g){w("failed to asynchronously prepare wasm: "+g);t(g)})}var d={a:Qd};L++;h.monitorRunDependencies&&h.monitorRunDependencies(L);if(h.instantiateWasm)try{return h.instantiateWasm(d,a)}catch(e){return w("Module.instantiateWasm callback failed with error: "+e),!1}(function(){return sa||"function"!==typeof WebAssembly.instantiateStreaming||Oa()||Na("file://")||"function"!==typeof fetch?c(b):fetch(M,{credentials:"same-origin"}).then(function(e){return WebAssembly.instantiateStreaming(e, d).then(b,function(g){w("wasm streaming compile failed: "+g);w("falling back to ArrayBuffer instantiation");return c(b)})})})();return{}})();var Md=h.___wasm_call_ctors=function(){return(Md=h.___wasm_call_ctors=h.asm.ra).apply(null,arguments)},Nd=h.___errno_location=function(){return(Nd=h.___errno_location=h.asm.sa).apply(null,arguments)};h._main=function(){return(h._main=h.asm.ta).apply(null,arguments)}; var Pd=h._htonl=function(){return(Pd=h._htonl=h.asm.ua).apply(null,arguments)},Xb=h._htons=function(){return(Xb=h._htons=h.asm.va).apply(null,arguments)},ec=h._ntohs=function(){return(ec=h._ntohs=h.asm.wa).apply(null,arguments)},qd=h.stackSave=function(){return(qd=h.stackSave=h.asm.xa).apply(null,arguments)},rd=h.stackRestore=function(){return(rd=h.stackRestore=h.asm.ya).apply(null,arguments)},za=h.stackAlloc=function(){return(za=h.stackAlloc=h.asm.za).apply(null,arguments)},P=h._malloc=function(){return(P= h._malloc=h.asm.Aa).apply(null,arguments)},Od=h._free=function(){return(Od=h._free=h.asm.Ba).apply(null,arguments)},Rd;function oa(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}Ma=function Sd(){Rd||$d();Rd||(Ma=Sd)}; function $d(a){function b(){if(!Rd&&(Rd=!0,h.calledRun=!0,!ua)){h.noFSInit||Kb||(Kb=!0,Jb(),h.stdin=h.stdin,h.stdout=h.stdout,h.stderr=h.stderr,h.stdin?Mb("stdin",h.stdin):Fb("/dev/tty","/dev/stdin"),h.stdout?Mb("stdout",null,h.stdout):Fb("/dev/tty","/dev/stdout"),h.stderr?Mb("stderr",null,h.stderr):Fb("/dev/tty1","/dev/stderr"),Gb("/dev/stdin",0),Gb("/dev/stdout",1),Gb("/dev/stderr",1));U.root=Cb(U,null);Sa(Fa);pb=!1;Sa(Ga);if(h.onRuntimeInitialized)h.onRuntimeInitialized();if(ae){var c=a,d=h._main; c=c||[];var e=c.length+1,g=za(4*(e+1));I[g>>2]=ya(ca);for(var f=1;f>2)+f]=ya(c[f-1]);I[(g>>2)+e]=0;try{var l=d(e,g);if(!noExitRuntime||0!==l){if(!noExitRuntime){if(h.onExit)h.onExit(l);ua=!0}ea(l,new oa(l))}}catch(n){n instanceof oa||("unwind"==n?noExitRuntime=!0:((c=n)&&"object"===typeof n&&n.stack&&(c=[n,n.stack]),w("exception thrown: "+c),ea(1,n)))}finally{}}if(h.postRun)for("function"==typeof h.postRun&&(h.postRun=[h.postRun]);h.postRun.length;)c=h.postRun.shift(),Ja.unshift(c);Sa(Ja)}} a=a||ba;if(!(0