
var Module = (() => {
  var _scriptDir = import.meta.url;
  
  return (
async function(moduleArg = {}) {

var h=moduleArg,aa,ca;h.ready=new Promise((a,b)=>{aa=a;ca=b});var da=Object.assign({},h),ea="./this.program",fa=(a,b)=>{throw b;},ha="object"==typeof window,ia="function"==typeof importScripts,ja="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,n="",ka,la,ma;
if(ja){const {createRequire:a}=await import("module");var require=a(import.meta.url),fs=require("fs"),na=require("path");ia?n=na.dirname(n)+"/":n=require("url").fileURLToPath(new URL("./",import.meta.url));ka=(b,c)=>{b=oa(b)?new URL(b):na.normalize(b);return fs.readFileSync(b,c?void 0:"utf8")};ma=b=>{b=ka(b,!0);b.buffer||(b=new Uint8Array(b));return b};la=(b,c,d,e=!0)=>{b=oa(b)?new URL(b):na.normalize(b);fs.readFile(b,e?void 0:"utf8",(f,g)=>{f?d(f):c(e?g.buffer:g)})};
!h.thisProgram&&1<process.argv.length&&(ea=process.argv[1].replace(/\\/g,"/"));process.argv.slice(2);fa=(b,c)=>{process.exitCode=b;throw c;};h.inspect=()=>"[Emscripten Module object]"}else if(ha||ia)ia?n=self.location.href:"undefined"!=typeof document&&document.currentScript&&(n=document.currentScript.src),_scriptDir&&(n=_scriptDir),0!==n.indexOf("blob:")?n=n.substr(0,n.replace(/[?#].*/,"").lastIndexOf("/")+1):n="",ka=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},
ia&&(ma=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}),la=(a,b,c)=>{var d=new XMLHttpRequest;d.open("GET",a,!0);d.responseType="arraybuffer";d.onload=()=>{200==d.status||0==d.status&&d.response?b(d.response):c()};d.onerror=c;d.send(null)};var pa=h.print||console.log.bind(console),qa=h.printErr||console.error.bind(console);Object.assign(h,da);da=null;h.thisProgram&&(ea=h.thisProgram);h.quit&&(fa=h.quit);var ra;
h.wasmBinary&&(ra=h.wasmBinary);"object"!=typeof WebAssembly&&sa("no native wasm support detected");var ua,va=!1,q,w,y,wa,z,A,xa,ya;function za(){var a=ua.buffer;h.HEAP8=q=new Int8Array(a);h.HEAP16=y=new Int16Array(a);h.HEAPU8=w=new Uint8Array(a);h.HEAPU16=wa=new Uint16Array(a);h.HEAP32=z=new Int32Array(a);h.HEAPU32=A=new Uint32Array(a);h.HEAPF32=xa=new Float32Array(a);h.HEAPF64=ya=new Float64Array(a)}var Aa=[],Ba=[],Ca=[],Da=[];function Ea(){var a=h.preRun.shift();Aa.unshift(a)}
var Fa=0,Ga=null,Ha=null;function Ia(){Fa++;h.monitorRunDependencies&&h.monitorRunDependencies(Fa)}function Ja(){Fa--;h.monitorRunDependencies&&h.monitorRunDependencies(Fa);if(0==Fa&&(null!==Ga&&(clearInterval(Ga),Ga=null),Ha)){var a=Ha;Ha=null;a()}}function sa(a){if(h.onAbort)h.onAbort(a);a="Aborted("+a+")";qa(a);va=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");ca(a);throw a;}
var Ka=a=>a.startsWith("data:application/octet-stream;base64,"),oa=a=>a.startsWith("file://"),La;if(h.locateFile){if(La="emfjs.wasm?version=1.0.0",!Ka(La)){var Ma=La;La=h.locateFile?h.locateFile(Ma,n):n+Ma}}else La=(new URL("emfjs.wasm?version=1.0.0",import.meta.url)).href;function Na(a){if(a==La&&ra)return new Uint8Array(ra);if(ma)return ma(a);throw"both async and sync fetching of the wasm failed";}
function Oa(a){if(!ra&&(ha||ia)){if("function"==typeof fetch&&!oa(a))return fetch(a,{credentials:"same-origin"}).then(b=>{if(!b.ok)throw"failed to load wasm binary file at '"+a+"'";return b.arrayBuffer()}).catch(()=>Na(a));if(la)return new Promise((b,c)=>{la(a,d=>b(new Uint8Array(d)),c)})}return Promise.resolve().then(()=>Na(a))}function Pa(a,b,c){return Oa(a).then(d=>WebAssembly.instantiate(d,b)).then(d=>d).then(c,d=>{qa(`failed to asynchronously prepare wasm: ${d}`);sa(d)})}
function Qa(a,b){var c=La;return ra||"function"!=typeof WebAssembly.instantiateStreaming||Ka(c)||oa(c)||ja||"function"!=typeof fetch?Pa(c,a,b):fetch(c,{credentials:"same-origin"}).then(d=>WebAssembly.instantiateStreaming(d,a).then(b,function(e){qa(`wasm streaming compile failed: ${e}`);qa("falling back to ArrayBuffer instantiation");return Pa(c,a,b)}))}var C,D;function Ra(a){this.name="ExitStatus";this.message=`Program terminated with exit(${a})`;this.status=a}
var Sa=a=>{for(;0<a.length;)a.shift()(h)},Ta=h.noExitRuntime||!1;function Ua(a){this.lb=a-24;this.Rb=function(b){A[this.lb+4>>2]=b};this.pb=function(b){A[this.lb+8>>2]=b};this.Nb=function(b,c){this.Ra();this.Rb(b);this.pb(c)};this.Ra=function(){A[this.lb+16>>2]=0}}
var Va=0,Wa=0,Xa=(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},E=a=>{var b="/"===a.charAt(0),c="/"===a.substr(-1);(a=Xa(a.split("/").filter(d=>!!d),!b).join("/"))||b||(a=".");a&&c&&(a+="/");return(b?"/":"")+a},Ya=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},
Za=a=>{if("/"===a)return"/";a=E(a);a=a.replace(/\/$/,"");var b=a.lastIndexOf("/");return-1===b?a:a.substr(b+1)},$a=()=>{if("object"==typeof crypto&&"function"==typeof crypto.getRandomValues)return c=>crypto.getRandomValues(c);if(ja)try{var a=require("crypto");if(a.randomFillSync)return c=>a.randomFillSync(c);var b=a.randomBytes;return c=>(c.set(b(c.byteLength)),c)}catch(c){}sa("initRandomDevice")},ab=a=>(ab=$a())(a);
function bb(){for(var a="",b=!1,c=arguments.length-1;-1<=c&&!b;c--){b=0<=c?arguments[c]:cb;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=Xa(a.split("/").filter(d=>!!d),!b).join("/");return(b?"/":"")+a||"."}
var db="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0,G=(a,b,c)=>{var d=b+c;for(c=b;a[c]&&!(c>=d);)++c;if(16<c-b&&a.buffer&&db)return db.decode(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},
eb=[],fb=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},gb=(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 l=a.charCodeAt(++f);g=65536+((g&1023)<<10)|l&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 hb(a,b){var c=Array(fb(a)+1);a=gb(a,c,0,c.length);b&&(c.length=a);return c}var ib=[];function jb(a,b){ib[a]={input:[],output:[],bb:b};kb(a,lb)}
var lb={open(a){var b=ib[a.node.rdev];if(!b)throw new H(43);a.tty=b;a.seekable=!1},close(a){a.tty.bb.fsync(a.tty)},fsync(a){a.tty.bb.fsync(a.tty)},read(a,b,c,d){if(!a.tty||!a.tty.bb.Lb)throw new H(60);for(var e=0,f=0;f<d;f++){try{var g=a.tty.bb.Lb(a.tty)}catch(l){throw new H(29);}if(void 0===g&&0===e)throw new H(6);if(null===g||void 0===g)break;e++;b[c+f]=g}e&&(a.node.timestamp=Date.now());return e},write(a,b,c,d){if(!a.tty||!a.tty.bb.Db)throw new H(60);try{for(var e=0;e<d;e++)a.tty.bb.Db(a.tty,b[c+
e])}catch(f){throw new H(29);}d&&(a.node.timestamp=Date.now());return e}},mb={Lb(){a:{if(!eb.length){var a=null;if(ja){var b=Buffer.alloc(256),c=0,d=process.stdin.fd;try{c=fs.readSync(d,b)}catch(e){if(e.toString().includes("EOF"))c=0;else throw e;}0<c?a=b.slice(0,c).toString("utf-8"):a=null}else"undefined"!=typeof window&&"function"==typeof window.prompt?(a=window.prompt("Input: "),null!==a&&(a+="\n")):"function"==typeof readline&&(a=readline(),null!==a&&(a+="\n"));if(!a){a=null;break a}eb=hb(a,!0)}a=
eb.shift()}return a},Db(a,b){null===b||10===b?(pa(G(a.output,0)),a.output=[]):0!=b&&a.output.push(b)},fsync(a){a.output&&0<a.output.length&&(pa(G(a.output,0)),a.output=[])},Xb(){return{mc:25856,oc:5,lc:191,nc:35387,kc:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}},Yb(){return 0},Zb(){return[24,80]}},nb={Db(a,b){null===b||10===b?(qa(G(a.output,0)),a.output=[]):0!=b&&a.output.push(b)},fsync(a){a.output&&0<a.output.length&&(qa(G(a.output,0)),a.output=[])}},ob=(a,b)=>{w.fill(0,
a,a+b);return a},qb=a=>{a=65536*Math.ceil(a/65536);var b=pb(65536,a);return b?ob(b,a):0};function rb(a,b){var c=a.Ma?a.Ma.length:0;c>=b||(b=Math.max(b,c*(1048576>c?2:1.125)>>>0),0!=c&&(b=Math.max(b,256)),c=a.Ma,a.Ma=new Uint8Array(b),0<a.Oa&&a.Ma.set(c.subarray(0,a.Oa),0))}
var J={Wa:null,Va(){return J.createNode(null,"/",16895,0)},createNode(a,b,c,d){if(24576===(c&61440)||4096===(c&61440))throw new H(63);J.Wa||(J.Wa={dir:{node:{Ua:J.La.Ua,Ta:J.La.Ta,lookup:J.La.lookup,vb:J.La.vb,rename:J.La.rename,unlink:J.La.unlink,rmdir:J.La.rmdir,readdir:J.La.readdir,symlink:J.La.symlink},stream:{fb:J.Da.fb}},file:{node:{Ua:J.La.Ua,Ta:J.La.Ta},stream:{fb:J.Da.fb,read:J.Da.read,write:J.Da.write,sb:J.Da.sb,qb:J.Da.qb,wb:J.Da.wb}},link:{node:{Ua:J.La.Ua,Ta:J.La.Ta,readlink:J.La.readlink},
stream:{}},Ib:{node:{Ua:J.La.Ua,Ta:J.La.Ta},stream:sb}});c=tb(a,b,c,d);K(c.mode)?(c.La=J.Wa.dir.node,c.Da=J.Wa.dir.stream,c.Ma={}):32768===(c.mode&61440)?(c.La=J.Wa.file.node,c.Da=J.Wa.file.stream,c.Oa=0,c.Ma=null):40960===(c.mode&61440)?(c.La=J.Wa.link.node,c.Da=J.Wa.link.stream):8192===(c.mode&61440)&&(c.La=J.Wa.Ib.node,c.Da=J.Wa.Ib.stream);c.timestamp=Date.now();a&&(a.Ma[b]=c,a.timestamp=c.timestamp);return c},pc(a){return a.Ma?a.Ma.subarray?a.Ma.subarray(0,a.Oa):new Uint8Array(a.Ma):new Uint8Array(0)},
La:{Ua(a){var b={};b.dev=8192===(a.mode&61440)?a.id:1;b.ino=a.id;b.mode=a.mode;b.nlink=1;b.uid=0;b.gid=0;b.rdev=a.rdev;K(a.mode)?b.size=4096:32768===(a.mode&61440)?b.size=a.Oa:40960===(a.mode&61440)?b.size=a.link.length:b.size=0;b.atime=new Date(a.timestamp);b.mtime=new Date(a.timestamp);b.ctime=new Date(a.timestamp);b.Vb=4096;b.blocks=Math.ceil(b.size/b.Vb);return b},Ta(a,b){void 0!==b.mode&&(a.mode=b.mode);void 0!==b.timestamp&&(a.timestamp=b.timestamp);if(void 0!==b.size&&(b=b.size,a.Oa!=b))if(0==
b)a.Ma=null,a.Oa=0;else{var c=a.Ma;a.Ma=new Uint8Array(b);c&&a.Ma.set(c.subarray(0,Math.min(b,a.Oa)));a.Oa=b}},lookup(){throw ub[44];},vb(a,b,c,d){return J.createNode(a,b,c,d)},rename(a,b,c){if(K(a.mode)){try{var d=vb(b,c)}catch(f){}if(d)for(var e in d.Ma)throw new H(55);}delete a.parent.Ma[a.name];a.parent.timestamp=Date.now();a.name=c;b.Ma[c]=a;b.timestamp=a.parent.timestamp;a.parent=b},unlink(a,b){delete a.Ma[b];a.timestamp=Date.now()},rmdir(a,b){var c=vb(a,b),d;for(d in c.Ma)throw new H(55);delete a.Ma[b];
a.timestamp=Date.now()},readdir(a){var b=[".",".."],c;for(c in a.Ma)a.Ma.hasOwnProperty(c)&&b.push(c);return b},symlink(a,b,c){a=J.createNode(a,b,41471,0);a.link=c;return a},readlink(a){if(40960!==(a.mode&61440))throw new H(28);return a.link}},Da:{read(a,b,c,d,e){var f=a.node.Ma;if(e>=a.node.Oa)return 0;a=Math.min(a.node.Oa-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(a,b,c,d,e,f){b.buffer===q.buffer&&(f=!1);if(!d)return 0;a=a.node;a.timestamp=
Date.now();if(b.subarray&&(!a.Ma||a.Ma.subarray)){if(f)return a.Ma=b.subarray(c,c+d),a.Oa=d;if(0===a.Oa&&0===e)return a.Ma=b.slice(c,c+d),a.Oa=d;if(e+d<=a.Oa)return a.Ma.set(b.subarray(c,c+d),e),d}rb(a,e+d);if(a.Ma.subarray&&b.subarray)a.Ma.set(b.subarray(c,c+d),e);else for(f=0;f<d;f++)a.Ma[e+f]=b[c+f];a.Oa=Math.max(a.Oa,e+d);return d},fb(a,b,c){1===c?b+=a.position:2===c&&32768===(a.node.mode&61440)&&(b+=a.node.Oa);if(0>b)throw new H(28);return b},sb(a,b,c){rb(a.node,b+c);a.node.Oa=Math.max(a.node.Oa,
b+c)},qb(a,b,c,d,e){if(32768!==(a.node.mode&61440))throw new H(43);a=a.node.Ma;if(e&2||a.buffer!==q.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=qb(b);if(!b)throw new H(48);q.set(a,b)}else c=!1,b=a.byteOffset;return{lb:b,Sa:c}},wb(a,b,c,d){J.Da.write(a,b,0,d,c,!1);return 0}}},wb=(a,b,c)=>{var d=`al ${a}`;la(a,e=>{e||sa(`Loading data file "${a}" failed (no arrayBuffer).`);b(new Uint8Array(e));d&&Ja(d)},()=>{if(c)c();else throw`Loading data file "${a}" failed.`;
});d&&Ia(d)},xb=h.preloadPlugins||[],yb=(a,b,c,d)=>{"undefined"!=typeof Browser&&Browser.Nb();var e=!1;xb.forEach(f=>{!e&&f.canHandle(b)&&(f.handle(a,b,c,d),e=!0)});return e},Ab=(a,b,c,d,e,f,g,l,p,m)=>{function x(k){function u(t){m&&m();l||zb(a,b,t,d,e,p);f&&f();Ja(v)}yb(k,r,u,()=>{g&&g();Ja(v)})||u(k)}var r=b?bb(E(a+"/"+b)):a,v=`cp ${r}`;Ia(v);"string"==typeof c?wb(c,k=>x(k),g):x(c)},Bb=(a,b)=>{var c=0;a&&(c|=365);b&&(c|=146);return c},Cb=null,Db={},Eb=[],Fb=1,Gb=null,cb="/",Hb=!0,H=null,ub={};
function L(a,b={}){a=bb(a);if(!a)return{path:"",node:null};b=Object.assign({Jb:!0,Eb:0},b);if(8<b.Eb)throw new H(32);a=a.split("/").filter(g=>!!g);for(var c=Cb,d="/",e=0;e<a.length;e++){var f=e===a.length-1;if(f&&b.parent)break;c=vb(c,a[e]);d=E(d+"/"+a[e]);c.jb&&(!f||f&&b.Jb)&&(c=c.jb.root);if(!f||b.ib)for(f=0;40960===(c.mode&61440);)if(c=Ib(d),d=bb(Ya(d),c),c=L(d,{Eb:b.Eb+1}).node,40<f++)throw new H(32);}return{path:d,node:c}}
function Jb(a){for(var b;;){if(a===a.parent)return a=a.Va.Pb,b?"/"!==a[a.length-1]?`${a}/${b}`:a+b:a;b=b?`${a.name}/${b}`:a.name;a=a.parent}}function Kb(a,b){for(var c=0,d=0;d<b.length;d++)c=(c<<5)-c+b.charCodeAt(d)|0;return(a+c>>>0)%Gb.length}function Lb(a){var b=Kb(a.parent.id,a.name);if(Gb[b]===a)Gb[b]=a.kb;else for(b=Gb[b];b;){if(b.kb===a){b.kb=a.kb;break}b=b.kb}}
function vb(a,b){var c;if(c=(c=Mb(a,"x"))?c:a.La.lookup?0:2)throw new H(c,a);for(c=Gb[Kb(a.id,b)];c;c=c.kb){var d=c.name;if(c.parent.id===a.id&&d===b)return c}return a.La.lookup(a,b)}function tb(a,b,c,d){a=new Nb(a,b,c,d);b=Kb(a.parent.id,a.name);a.kb=Gb[b];return Gb[b]=a}function K(a){return 16384===(a&61440)}function Ob(a){var b=["r","w","rw"][a&3];a&512&&(b+="w");return b}
function Mb(a,b){if(Hb)return 0;if(!b.includes("r")||a.mode&292){if(b.includes("w")&&!(a.mode&146)||b.includes("x")&&!(a.mode&73))return 2}else return 2;return 0}function Pb(a,b){try{return vb(a,b),20}catch(c){}return Mb(a,"wx")}function Qb(a,b,c){try{var d=vb(a,b)}catch(e){return e.Na}if(a=Mb(a,"wx"))return a;if(c){if(!K(d.mode))return 54;if(d===d.parent||Jb(d)===cb)return 10}else if(K(d.mode))return 31;return 0}function Rb(){for(var a=0;4096>=a;a++)if(!Eb[a])return a;throw new H(33);}
function M(a){a=Eb[a];if(!a)throw new H(8);return a}function Sb(a,b=-1){Tb||(Tb=function(){this.Ra={}},Tb.prototype={},Object.defineProperties(Tb.prototype,{object:{get(){return this.node},set(c){this.node=c}},flags:{get(){return this.Ra.flags},set(c){this.Ra.flags=c}},position:{get(){return this.Ra.position},set(c){this.Ra.position=c}}}));a=Object.assign(new Tb,a);-1==b&&(b=Rb());a.fd=b;return Eb[b]=a}var sb={open(a){a.Da=Db[a.node.rdev].Da;a.Da.open&&a.Da.open(a)},fb(){throw new H(70);}};
function kb(a,b){Db[a]={Da:b}}function Ub(a,b){var c="/"===b,d=!b;if(c&&Cb)throw new H(10);if(!c&&!d){var e=L(b,{Jb:!1});b=e.path;e=e.node;if(e.jb)throw new H(10);if(!K(e.mode))throw new H(54);}b={type:a,tc:{},Pb:b,bc:[]};a=a.Va(b);a.Va=b;b.root=a;c?Cb=a:e&&(e.jb=b,e.Va&&e.Va.bc.push(b));return a}function Vb(a,b,c){var d=L(a,{parent:!0}).node;a=Za(a);if(!a||"."===a||".."===a)throw new H(28);var e=Pb(d,a);if(e)throw new H(e);if(!d.La.vb)throw new H(63);return d.La.vb(d,a,b,c)}
function N(a,b){return Vb(a,(void 0!==b?b:511)&1023|16384,0)}function Wb(a,b,c){"undefined"==typeof c&&(c=b,b=438);return Vb(a,b|8192,c)}function Xb(a,b){if(!bb(a))throw new H(44);var c=L(b,{parent:!0}).node;if(!c)throw new H(44);b=Za(b);var d=Pb(c,b);if(d)throw new H(d);if(!c.La.symlink)throw new H(63);c.La.symlink(c,b,a)}function Yb(a){var b=L(a,{parent:!0}).node;a=Za(a);var c=vb(b,a),d=Qb(b,a,!0);if(d)throw new H(d);if(!b.La.rmdir)throw new H(63);if(c.jb)throw new H(10);b.La.rmdir(b,a);Lb(c)}
function Zb(a){var b=L(a,{parent:!0}).node;if(!b)throw new H(44);a=Za(a);var c=vb(b,a),d=Qb(b,a,!1);if(d)throw new H(d);if(!b.La.unlink)throw new H(63);if(c.jb)throw new H(10);b.La.unlink(b,a);Lb(c)}function Ib(a){a=L(a).node;if(!a)throw new H(44);if(!a.La.readlink)throw new H(28);return bb(Jb(a.parent),a.La.readlink(a))}function $b(a,b){a=L(a,{ib:!b}).node;if(!a)throw new H(44);if(!a.La.Ua)throw new H(63);return a.La.Ua(a)}function ac(a){return $b(a,!0)}
function bc(a,b){a="string"==typeof a?L(a,{ib:!0}).node:a;if(!a.La.Ta)throw new H(63);a.La.Ta(a,{mode:b&4095|a.mode&-4096,timestamp:Date.now()})}
function cc(a,b,c){if(""===a)throw new H(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=E(a);try{e=L(a,{ib:!(b&131072)}).node}catch(f){}}d=!1;if(b&64)if(e){if(b&128)throw new H(20);}else e=Vb(a,c,0),d=!0;if(!e)throw new H(44);8192===(e.mode&61440)&&(b&=-513);if(b&65536&&!K(e.mode))throw new H(54);if(!d&&(c=
e?40960===(e.mode&61440)?32:K(e.mode)&&("r"!==Ob(b)||b&512)?31:Mb(e,Ob(b)):44))throw new H(c);if(b&512&&!d){c=e;c="string"==typeof c?L(c,{ib:!0}).node:c;if(!c.La.Ta)throw new H(63);if(K(c.mode))throw new H(31);if(32768!==(c.mode&61440))throw new H(28);if(d=Mb(c,"w"))throw new H(d);c.La.Ta(c,{size:0,timestamp:Date.now()})}b&=-131713;e=Sb({node:e,path:Jb(e),flags:b,seekable:!0,position:0,Da:e.Da,ic:[],error:!1});e.Da.open&&e.Da.open(e);!h.logReadFiles||b&1||(dc||={},a in dc||(dc[a]=1));return e}
function ec(a){if(null===a.fd)throw new H(8);a.eb&&(a.eb=null);try{a.Da.close&&a.Da.close(a)}catch(b){throw b;}finally{Eb[a.fd]=null}a.fd=null}function fc(a,b,c){if(null===a.fd)throw new H(8);if(!a.seekable||!a.Da.fb)throw new H(70);if(0!=c&&1!=c&&2!=c)throw new H(28);a.position=a.Da.fb(a,b,c);a.ic=[];return a.position}
function gc(a,b,c,d,e,f){if(0>d||0>e)throw new H(28);if(null===a.fd)throw new H(8);if(0===(a.flags&2097155))throw new H(8);if(K(a.node.mode))throw new H(31);if(!a.Da.write)throw new H(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 H(70);b=a.Da.write(a,b,c,d,e,f);g||(a.position+=b);return b}
function hc(){H||(H=function(a,b){this.name="ErrnoError";this.node=b;this.cc=function(c){this.Na=c};this.cc(a);this.message="FS error"},H.prototype=Error(),H.prototype.constructor=H,[44].forEach(a=>{ub[a]=new H(a);ub[a].stack="<generic error, no stack>"}))}var ic;function jc(a,b){a="string"==typeof a?a:Jb(a);for(b=b.split("/").reverse();b.length;){var c=b.pop();if(c){var d=E(a+"/"+c);try{N(d)}catch(e){}a=d}}return d}
function kc(a,b,c,d){a=E(("string"==typeof a?a:Jb(a))+"/"+b);c=Bb(c,d);return Vb(a,(void 0!==c?c:438)&4095|32768,0)}function zb(a,b,c,d,e,f){var g=b;a&&(a="string"==typeof a?a:Jb(a),g=b?E(a+"/"+b):a);a=Bb(d,e);g=Vb(g,(void 0!==a?a:438)&4095|32768,0);if(c){if("string"==typeof c){b=Array(c.length);d=0;for(e=c.length;d<e;++d)b[d]=c.charCodeAt(d);c=b}bc(g,a|146);b=cc(g,577);gc(b,c,0,c.length,0,f);ec(b);bc(g,a)}}
function O(a,b,c,d){a=E(("string"==typeof a?a:Jb(a))+"/"+b);b=Bb(!!c,!!d);O.Ob||(O.Ob=64);var e=O.Ob++<<8|0;kb(e,{open(f){f.seekable=!1},close(){d&&d.buffer&&d.buffer.length&&d(10)},read(f,g,l,p){for(var m=0,x=0;x<p;x++){try{var r=c()}catch(v){throw new H(29);}if(void 0===r&&0===m)throw new H(6);if(null===r||void 0===r)break;m++;g[l+x]=r}m&&(f.node.timestamp=Date.now());return m},write(f,g,l,p){for(var m=0;m<p;m++)try{d(g[l+m])}catch(x){throw new H(29);}p&&(f.node.timestamp=Date.now());return m}});
return Wb(a,b,e)}function lc(a){if(!(a.$b||a.ac||a.link||a.Ma)){if("undefined"!=typeof XMLHttpRequest)throw Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.");if(ka)try{a.Ma=hb(ka(a.url),!0),a.Oa=a.Ma.length}catch(b){throw new H(29);}else throw Error("Cannot load without read() or XMLHttpRequest.");}}
function mc(a,b,c,d,e){function f(){this.Cb=!1;this.Ra=[]}function g(r,v,k,u,t){r=r.node.Ma;if(t>=r.length)return 0;u=Math.min(r.length-t,u);if(r.slice)for(var B=0;B<u;B++)v[k+B]=r[t+B];else for(B=0;B<u;B++)v[k+B]=r.get(t+B);return u}f.prototype.get=function(r){if(!(r>this.length-1||0>r)){var v=r%this.chunkSize;return this.Mb(r/this.chunkSize|0)[v]}};f.prototype.pb=function(r){this.Mb=r};f.prototype.Hb=function(){var r=new XMLHttpRequest;r.open("HEAD",c,!1);r.send(null);if(!(200<=r.status&&300>r.status||
304===r.status))throw Error("Couldn't load "+c+". Status: "+r.status);var v=Number(r.getResponseHeader("Content-length")),k,u=(k=r.getResponseHeader("Accept-Ranges"))&&"bytes"===k;r=(k=r.getResponseHeader("Content-Encoding"))&&"gzip"===k;var t=1048576;u||(t=v);var B=this;B.pb(F=>{var I=F*t,ba=(F+1)*t-1;ba=Math.min(ba,v-1);if("undefined"==typeof B.Ra[F]){var ta=B.Ra;if(I>ba)throw Error("invalid range ("+I+", "+ba+") or no bytes requested!");if(ba>v-1)throw Error("only "+v+" bytes available! programmer error!");
var P=new XMLHttpRequest;P.open("GET",c,!1);v!==t&&P.setRequestHeader("Range","bytes="+I+"-"+ba);P.responseType="arraybuffer";P.overrideMimeType&&P.overrideMimeType("text/plain; charset=x-user-defined");P.send(null);if(!(200<=P.status&&300>P.status||304===P.status))throw Error("Couldn't load "+c+". Status: "+P.status);I=void 0!==P.response?new Uint8Array(P.response||[]):hb(P.responseText||"",!0);ta[F]=I}if("undefined"==typeof B.Ra[F])throw Error("doXHR failed!");return B.Ra[F]});if(r||!v)t=v=1,t=
v=this.Mb(0).length,pa("LazyFiles on gzip forces download of the whole file when length is accessed");this.Tb=v;this.Sb=t;this.Cb=!0};if("undefined"!=typeof XMLHttpRequest){if(!ia)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var l=new f;Object.defineProperties(l,{length:{get:function(){this.Cb||this.Hb();return this.Tb}},chunkSize:{get:function(){this.Cb||this.Hb();return this.Sb}}});var p=void 0}else p=c,l=void 0;var m=
kc(a,b,d,e);l?m.Ma=l:p&&(m.Ma=null,m.url=p);Object.defineProperties(m,{Oa:{get:function(){return this.Ma.length}}});var x={};Object.keys(m.Da).forEach(r=>{var v=m.Da[r];x[r]=function(){lc(m);return v.apply(null,arguments)}});x.read=(r,v,k,u,t)=>{lc(m);return g(r,v,k,u,t)};x.qb=(r,v,k)=>{lc(m);var u=qb(v);if(!u)throw new H(48);g(r,q,u,v,k);return{lb:u,Sa:!0}};m.Da=x;return m}var Q={},Tb,dc;
function nc(a,b,c){if("/"===b.charAt(0))return b;a=-100===a?cb:M(a).path;if(0==b.length){if(!c)throw new H(44);return a}return E(a+"/"+b)}
function oc(a,b,c){try{var d=a(b)}catch(f){if(f&&f.node&&E(b)!==E(Jb(f.node)))return-54;throw f;}z[c>>2]=d.dev;z[c+4>>2]=d.mode;A[c+8>>2]=d.nlink;z[c+12>>2]=d.uid;z[c+16>>2]=d.gid;z[c+20>>2]=d.rdev;D=[d.size>>>0,(C=d.size,1<=+Math.abs(C)?0<C?+Math.floor(C/4294967296)>>>0:~~+Math.ceil((C-+(~~C>>>0))/4294967296)>>>0:0)];z[c+24>>2]=D[0];z[c+28>>2]=D[1];z[c+32>>2]=4096;z[c+36>>2]=d.blocks;a=d.atime.getTime();b=d.mtime.getTime();var e=d.ctime.getTime();D=[Math.floor(a/1E3)>>>0,(C=Math.floor(a/1E3),1<=
+Math.abs(C)?0<C?+Math.floor(C/4294967296)>>>0:~~+Math.ceil((C-+(~~C>>>0))/4294967296)>>>0:0)];z[c+40>>2]=D[0];z[c+44>>2]=D[1];A[c+48>>2]=a%1E3*1E3;D=[Math.floor(b/1E3)>>>0,(C=Math.floor(b/1E3),1<=+Math.abs(C)?0<C?+Math.floor(C/4294967296)>>>0:~~+Math.ceil((C-+(~~C>>>0))/4294967296)>>>0:0)];z[c+56>>2]=D[0];z[c+60>>2]=D[1];A[c+64>>2]=b%1E3*1E3;D=[Math.floor(e/1E3)>>>0,(C=Math.floor(e/1E3),1<=+Math.abs(C)?0<C?+Math.floor(C/4294967296)>>>0:~~+Math.ceil((C-+(~~C>>>0))/4294967296)>>>0:0)];z[c+72>>2]=D[0];
z[c+76>>2]=D[1];A[c+80>>2]=e%1E3*1E3;D=[d.ino>>>0,(C=d.ino,1<=+Math.abs(C)?0<C?+Math.floor(C/4294967296)>>>0:~~+Math.ceil((C-+(~~C>>>0))/4294967296)>>>0:0)];z[c+88>>2]=D[0];z[c+92>>2]=D[1];return 0}var pc=void 0;function qc(){var a=z[+pc>>2];pc+=4;return a}
function rc(a,b){if(1===a.type&&a.Qa)throw new H(53);var c=a.mb.shift();if(!c){if(1===a.type){a=a.Ya[a.$a+":"+a.ab];if(!a)throw new H(53);if(a.socket.readyState===a.socket.CLOSING||a.socket.readyState===a.socket.CLOSED)return null}throw new H(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),Pa:c.Pa,port:c.port};1===a.type&&b<d&&(c.data=new Uint8Array(f,e+b,d-b),a.mb.unshift(c));return g}
function sc(a,b,c,d,e,f){if(2===a.type){if(void 0===e||void 0===f)e=a.$a,f=a.ab;if(void 0===e||void 0===f)throw new H(17);}else e=a.$a,f=a.ab;var g=a.Ya[e+":"+f];if(1===a.type){if(!g||g.socket.readyState===g.socket.CLOSING||g.socket.readyState===g.socket.CLOSED)throw new H(53);if(g.socket.readyState===g.socket.CONNECTING)throw new H(6);}ArrayBuffer.isView(b)&&(c+=b.byteOffset,b=b.buffer);b=b.slice(c,c+d);if(2===a.type&&(!g||g.socket.readyState!==g.socket.OPEN))return g&&g.socket.readyState!==g.socket.CLOSING&&
g.socket.readyState!==g.socket.CLOSED||(g=tc(a,e,f)),g.tb.push(b),d;try{return g.socket.send(b),d}catch(l){throw new H(28);}}
function uc(a,b){function c(){h.websocket.emit("open",a.stream.fd);try{for(var f=b.tb.shift();f;)b.socket.send(f),f=b.tb.shift()}catch(g){b.socket.close()}}function d(f){if("string"==typeof f)f=(new TextEncoder).encode(f);else{void 0!==f.byteLength||sa();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],delete a.Ya[b.Pa+":"+b.port],b.port=f,a.Ya[b.Pa+":"+b.port]=
b):(a.mb.push({Pa:b.Pa,port:b.port,data:f}),h.websocket.emit("message",a.stream.fd))}var e=!0;ja?(b.socket.on("open",c),b.socket.on("message",function(f,g){g&&d((new Uint8Array(f)).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(f){d(f.data)},
b.socket.onerror=function(){a.error=14;h.websocket.emit("error",[a.stream.fd,a.error,"ECONNREFUSED: Connection refused"])})}
function tc(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,f="ws://";e&&"string"===typeof h.websocket.url&&(f=h.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 h.websocket.subprotocol&&(g=h.websocket.subprotocol);var l=void 0;"null"!==g&&(l=g=g.replace(/^ +| +$/g,"").split(/ *, */));e&&null===h.websocket.subprotocol&&(l=void 0);d=new (ja?require("ws"):WebSocket)(f,l);d.binaryType="arraybuffer"}catch(p){throw new H(23);}b={Pa:b,port:c,socket:d,tb:[]};a.Ya[b.Pa+":"+b.port]=b;uc(a,b);2===a.type&&"undefined"!=typeof a.ob&&b.tb.push(new Uint8Array([255,255,255,255,112,111,114,116,(a.ob&65280)>>8,a.ob&255]));return b}
var R={Va(){h.websocket=h.websocket&&"object"===typeof h.websocket?h.websocket:{};h.websocket.Bb={};h.websocket.on=function(a,b){"function"===typeof b&&(this.Bb[a]=b);return this};h.websocket.emit=function(a,b){"function"===typeof this.Bb[a]&&this.Bb[a].call(this,b)};return tb(null,"/",16895,0)},createSocket(a,b,c){b&=-526337;if(1==b&&c&&6!=c)throw new H(66);a={family:a,type:b,protocol:c,Qa:null,error:null,Ya:{},pending:[],mb:[],rb:R.jc};b=R.xb();c=tb(R.root,b,49152,0);c.nb=a;b=Sb({path:b,node:c,
flags:2,seekable:!1,Da:R.Da});a.stream=b;return a},Da:{yb(a){a=a.node.nb;return a.rb.yb(a)},ub(a,b,c){a=a.node.nb;return a.rb.ub(a,b,c)},read(a,b,c,d){a=rc(a.node.nb,d);if(!a)return 0;b.set(a.buffer,c);return a.buffer.length},write(a,b,c,d){return sc(a.node.nb,b,c,d)},close(a){a=a.node.nb;a.rb.close(a)}},xb(){R.xb.current||(R.xb.current=0);return"socket["+R.xb.current++ +"]"},jc:{yb(a){if(1===a.type&&a.Qa)return a.pending.length?65:0;var b=0,c=1===a.type?a.Ya[a.$a+":"+a.ab]:null;if(a.mb.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},ub(a,b,c){switch(b){case 21531:return b=0,a.mb.length&&(b=a.mb[0].data.length),z[c>>2]=b,0;default:return 28}},close(a){if(a.Qa){try{a.Qa.close()}catch(e){}a.Qa=null}for(var b=Object.keys(a.Ya),c=0;c<b.length;c++){var d=a.Ya[b[c]];try{d.socket.close()}catch(e){}delete a.Ya[d.Pa+
":"+d.port]}return 0},bind(a,b,c){if("undefined"!=typeof a.Fb||"undefined"!=typeof a.ob)throw new H(28);a.Fb=b;a.ob=c;if(2===a.type){a.Qa&&(a.Qa.close(),a.Qa=null);try{a.rb.listen(a,0)}catch(d){if("ErrnoError"!==d.name)throw d;if(138!==d.Na)throw d;}}},connect(a,b,c){if(a.Qa)throw new H(138);if("undefined"!=typeof a.$a&&"undefined"!=typeof a.ab){var d=a.Ya[a.$a+":"+a.ab];if(d){if(d.socket.readyState===d.socket.CONNECTING)throw new H(7);throw new H(30);}}b=tc(a,b,c);a.$a=b.Pa;a.ab=b.port;throw new H(26);
},listen(a){if(!ja)throw new H(138);if(a.Qa)throw new H(28);var b=require("ws").Server;a.Qa=new b({host:a.Fb,port:a.ob});h.websocket.emit("listen",a.stream.fd);a.Qa.on("connection",function(c){if(1===a.type){var d=R.createSocket(a.family,a.type,a.protocol);c=tc(d,c);d.$a=c.Pa;d.ab=c.port;a.pending.push(d);h.websocket.emit("connection",d.stream.fd)}else tc(a,c),h.websocket.emit("connection",a.stream.fd)});a.Qa.on("close",function(){h.websocket.emit("close",a.stream.fd);a.Qa=null});a.Qa.on("error",
function(){a.error=23;h.websocket.emit("error",[a.stream.fd,a.error,"EHOSTUNREACH: Host is unreachable"])})},accept(a){if(!a.Qa||!a.pending.length)throw new H(28);var b=a.pending.shift();b.stream.flags=a.stream.flags;return b},qc(a,b){if(b){if(void 0===a.$a||void 0===a.ab)throw new H(53);b=a.$a;a=a.ab}else b=a.Fb||0,a=a.ob||0;return{Pa:b,port:a}}}},vc=a=>{a=(a=Eb[a])&&49152===(a.node.mode&49152)?a.node.nb:null;if(!a)throw new H(8);return a},wc=a=>(a&255)+"."+(a>>8&255)+"."+(a>>16&255)+"."+(a>>24&
255),yc=(a,b)=>{var c=y[a>>1],d=xc(wa[a+2>>1]);switch(c){case 2:if(16!==b)return{Na:28};var e=z[a+4>>2];e=wc(e);break;case 10:if(28!==b)return{Na:28};e=[z[a+8>>2],z[a+12>>2],z[a+16>>2],z[a+20>>2]];a:{a="";var f,g=b=0,l=0,p=0;e=[e[0]&65535,e[0]>>16,e[1]&65535,e[1]>>16,e[2]&65535,e[2]>>16,e[3]&65535,e[3]>>16];var m=!0;for(f=0;5>f;f++)if(0!==e[f]){m=!1;break}if(m){f=wc(e[6]|e[7]<<16);if(-1===e[5]){e="::ffff:"+f;break a}if(0===e[5]){"0.0.0.0"===f&&(f="");"0.0.0.1"===f&&(f="1");e="::"+f;break a}}for(f=
0;8>f;f++)0===e[f]&&(1<f-g&&(p=0),g=f,p++),p>b&&(b=p,l=f-b+1);for(f=0;8>f;f++)1<b&&0===e[f]&&f>=l&&f<l+b?f===l&&(a+=":",0===l&&(a+=":")):(a+=Number(xc(e[f]&65535)).toString(16),a+=7>f?":":"");e=a}break;default:return{Na:5}}return{family:c,Pa:e,port:d}},zc=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},Bc=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]=Ac(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]]},Cc=1,Dc={},Ec={};function Fc(a){var b=zc(a);if(null!==b)return a;b=Bc(a);if(null!==b)return a;Dc[a]?b=Dc[a]:(b=Cc++,65535>b||sa("exceeded max address mappings of 65535"),b="172.29."+(b&255)+"."+(b&65280),Ec[b]=a,Dc[a]=b);return b}
var Gc=(a,b,c)=>{if(c&&0===a)return null;a=yc(a,b);if(a.Na)throw new H(a.Na);b=a.Pa;a.Pa=(Ec[b]?Ec[b]:null)||a.Pa;return a},Hc,S=a=>{for(var b="";w[a];)b+=Hc[w[a++]];return b},Ic={},Jc={},Kc={},T,Lc=a=>{throw new T(a);},Mc,Oc=(a,b)=>{function c(l){l=b(l);if(l.length!==d.length)throw new Mc("Mismatched type converter count");for(var p=0;p<d.length;++p)Nc(d[p],l[p])}var d=[];d.forEach(function(l){Kc[l]=a});var e=Array(a.length),f=[],g=0;a.forEach((l,p)=>{Jc.hasOwnProperty(l)?e[p]=Jc[l]:(f.push(l),Ic.hasOwnProperty(l)||
(Ic[l]=[]),Ic[l].push(()=>{e[p]=Jc[l];++g;g===f.length&&c(e)}))});0===f.length&&c(e)};function Pc(a,b,c={}){var d=b.name;if(!a)throw new T(`type "${d}" must have a positive integer typeid pointer`);if(Jc.hasOwnProperty(a)){if(c.Wb)return;throw new T(`Cannot register type '${d}' twice`);}Jc[a]=b;delete Kc[a];Ic.hasOwnProperty(a)&&(b=Ic[a],delete Ic[a],b.forEach(e=>e()))}
function Nc(a,b,c={}){if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");Pc(a,b,c)}function Qc(){this.Sa=[void 0];this.Kb=[]}var U=new Qc,Rc=a=>{a>=U.Ra&&0===--U.get(a).Qb&&U.pb(a)},Sc=a=>{if(!a)throw new T("Cannot use deleted val. handle = "+a);return U.get(a).value},Tc=a=>{switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:return U.sb({Qb:1,value:a})}};
function Uc(a){return this.fromWireType(z[a>>2])}var Vc=(a,b)=>{switch(b){case 4:return function(c){return this.fromWireType(xa[c>>2])};case 8:return function(c){return this.fromWireType(ya[c>>3])};default:throw new TypeError(`invalid float width (${b}): ${a}`);}},Wc=(a,b)=>Object.defineProperty(b,"name",{value:a}),Xc=a=>{for(;a.length;){var b=a.pop();a.pop()(b)}};
function Yc(a){var b=Function;if(!(b instanceof Function))throw new TypeError(`new_ called with constructor type ${typeof b} which is not a function`);var c=Wc(b.name||"unknownFunctionName",function(){});c.prototype=b.prototype;c=new c;a=b.apply(c,a);return a instanceof Object?a:c}
var Zc=(a,b)=>{if(void 0===h[a].Xa){var c=h[a];h[a]=function(){if(!h[a].Xa.hasOwnProperty(arguments.length))throw new T(`Function '${b}' called with an invalid number of arguments (${arguments.length}) - expects one of (${h[a].Xa})!`);return h[a].Xa[arguments.length].apply(this,arguments)};h[a].Xa=[];h[a].Xa[c.Ub]=c}},$c=(a,b,c)=>{if(h.hasOwnProperty(a)){if(void 0===c||void 0!==h[a].Xa&&void 0!==h[a].Xa[c])throw new T(`Cannot register public name '${a}' twice`);Zc(a,a);if(h.hasOwnProperty(c))throw new T(`Cannot register multiple overloads of a function with the same number of arguments (${c})!`);
h[a].Xa[c]=b}else h[a]=b,void 0!==c&&(h[a].sc=c)},ad=(a,b)=>{for(var c=[],d=0;d<a;d++)c.push(A[b+4*d>>2]);return c},V,bd=(a,b)=>{var c=[];return function(){c.length=0;Object.assign(c,arguments);if(a.includes("j")){var d=h["dynCall_"+a];d=c&&c.length?d.apply(null,[b].concat(c)):d.call(null,b)}else d=V.get(b).apply(null,c);return d}},cd=(a,b)=>{a=S(a);var c=a.includes("j")?bd(a,b):V.get(b);if("function"!=typeof c)throw new T(`unknown function pointer with signature ${a}: ${b}`);return c},dd,gd=a=>{a=
ed(a);var b=S(a);fd(a);return b},hd=(a,b)=>{function c(f){e[f]||Jc[f]||(Kc[f]?Kc[f].forEach(c):(d.push(f),e[f]=!0))}var d=[],e={};b.forEach(c);throw new dd(`${a}: `+d.map(gd).join([", "]));},jd=a=>{a=a.trim();const b=a.indexOf("(");return-1!==b?a.substr(0,b):a},kd=(a,b,c)=>{switch(b){case 1:return c?d=>q[d>>0]:d=>w[d>>0];case 2:return c?d=>y[d>>1]:d=>wa[d>>1];case 4:return c?d=>z[d>>2]:d=>A[d>>2];default:throw new TypeError(`invalid integer width (${b}): ${a}`);}};
function ld(a){return this.fromWireType(A[a>>2])}
var md="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0,nd=(a,b)=>{var c=a>>1;for(var d=c+b/2;!(c>=d)&&wa[c];)++c;c<<=1;if(32<c-a&&md)return md.decode(w.subarray(a,c));c="";for(d=0;!(d>=b/2);++d){var e=y[a+2*d>>1];if(0==e)break;c+=String.fromCharCode(e)}return c},od=(a,b,c)=>{void 0===c&&(c=2147483647);if(2>c)return 0;c-=2;var d=b;c=c<2*a.length?c/2:a.length;for(var e=0;e<c;++e)y[b>>1]=a.charCodeAt(e),b+=2;y[b>>1]=0;return b-d},pd=a=>2*a.length,qd=(a,b)=>{for(var c=0,d="";!(c>=b/
4);){var e=z[a+4*c>>2];if(0==e)break;++c;65536<=e?(e-=65536,d+=String.fromCharCode(55296|e>>10,56320|e&1023)):d+=String.fromCharCode(e)}return d},rd=(a,b,c)=>{void 0===c&&(c=2147483647);if(4>c)return 0;var d=b;c=d+c-4;for(var e=0;e<a.length;++e){var f=a.charCodeAt(e);if(55296<=f&&57343>=f){var g=a.charCodeAt(++e);f=65536+((f&1023)<<10)|g&1023}z[b>>2]=f;b+=4;if(b+4>c)break}z[b>>2]=0;return b-d},sd=a=>{for(var b=0,c=0;c<a.length;++c){var d=a.charCodeAt(c);55296<=d&&57343>=d&&++c;b+=4}return b},td={},
ud=(a,b)=>b+2097152>>>0<4194305-!!a?(a>>>0)+4294967296*b:NaN,vd=a=>0===a%4&&(0!==a%100||0===a%400),wd=[0,31,60,91,121,152,182,213,244,274,305,335],xd=[0,31,59,90,120,151,181,212,243,273,304,334],zd=a=>{var b=fb(a)+1,c=yd(b);c&&gb(a,w,c,b);return c},Ad={},Cd=()=>{if(!Bd){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",_:ea||"./this.program"},b;for(b in Ad)void 0===
Ad[b]?delete a[b]:a[b]=Ad[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);Bd=c}return Bd},Bd,Dd=[31,29,31,30,31,30,31,31,30,31,30,31],Ed=[31,28,31,30,31,30,31,31,30,31,30,31],Fd=(a,b,c,d)=>{function e(k,u,t){for(k="number"==typeof k?k.toString():k||"";k.length<u;)k=t[0]+k;return k}function f(k,u){return e(k,u,"0")}function g(k,u){function t(F){return 0>F?-1:0<F?1:0}var B;0===(B=t(k.getFullYear()-u.getFullYear()))&&0===(B=t(k.getMonth()-u.getMonth()))&&(B=t(k.getDate()-u.getDate()));return B}function l(k){switch(k.getDay()){case 0:return new Date(k.getFullYear()-
1,11,29);case 1:return k;case 2:return new Date(k.getFullYear(),0,3);case 3:return new Date(k.getFullYear(),0,2);case 4:return new Date(k.getFullYear(),0,1);case 5:return new Date(k.getFullYear()-1,11,31);case 6:return new Date(k.getFullYear()-1,11,30)}}function p(k){var u=k.gb;for(k=new Date((new Date(k.hb+1900,0,1)).getTime());0<u;){var t=k.getMonth(),B=(vd(k.getFullYear())?Dd:Ed)[t];if(u>B-k.getDate())u-=B-k.getDate()+1,k.setDate(1),11>t?k.setMonth(t+1):(k.setMonth(0),k.setFullYear(k.getFullYear()+
1));else{k.setDate(k.getDate()+u);break}}t=new Date(k.getFullYear()+1,0,4);u=l(new Date(k.getFullYear(),0,4));t=l(t);return 0>=g(u,k)?0>=g(t,k)?k.getFullYear()+1:k.getFullYear():k.getFullYear()-1}var m=A[d+40>>2];d={fc:z[d>>2],ec:z[d+4>>2],zb:z[d+8>>2],Gb:z[d+12>>2],Ab:z[d+16>>2],hb:z[d+20>>2],Za:z[d+24>>2],gb:z[d+28>>2],uc:z[d+32>>2],dc:z[d+36>>2],hc:m?m?G(w,m):"":""};c=c?G(w,c):"";m={"%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 x in m)c=c.replace(new RegExp(x,"g"),m[x]);var r="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),v="January February March April May June July August September October November December".split(" ");m={"%a":k=>r[k.Za].substring(0,
3),"%A":k=>r[k.Za],"%b":k=>v[k.Ab].substring(0,3),"%B":k=>v[k.Ab],"%C":k=>f((k.hb+1900)/100|0,2),"%d":k=>f(k.Gb,2),"%e":k=>e(k.Gb,2," "),"%g":k=>p(k).toString().substring(2),"%G":k=>p(k),"%H":k=>f(k.zb,2),"%I":k=>{k=k.zb;0==k?k=12:12<k&&(k-=12);return f(k,2)},"%j":k=>{for(var u=0,t=0;t<=k.Ab-1;u+=(vd(k.hb+1900)?Dd:Ed)[t++]);return f(k.Gb+u,3)},"%m":k=>f(k.Ab+1,2),"%M":k=>f(k.ec,2),"%n":()=>"\n","%p":k=>0<=k.zb&&12>k.zb?"AM":"PM","%S":k=>f(k.fc,2),"%t":()=>"\t","%u":k=>k.Za||7,"%U":k=>f(Math.floor((k.gb+
7-k.Za)/7),2),"%V":k=>{var u=Math.floor((k.gb+7-(k.Za+6)%7)/7);2>=(k.Za+371-k.gb-2)%7&&u++;if(u)53==u&&(t=(k.Za+371-k.gb)%7,4==t||3==t&&vd(k.hb)||(u=1));else{u=52;var t=(k.Za+7-k.gb-1)%7;(4==t||5==t&&vd(k.hb%400-1))&&u++}return f(u,2)},"%w":k=>k.Za,"%W":k=>f(Math.floor((k.gb+7-(k.Za+6)%7)/7),2),"%y":k=>(k.hb+1900).toString().substring(2),"%Y":k=>k.hb+1900,"%z":k=>{k=k.dc;var u=0<=k;k=Math.abs(k)/60;return(u?"+":"-")+String("0000"+(k/60*100+k%60)).slice(-4)},"%Z":k=>k.hc,"%%":()=>"%"};c=c.replace(/%%/g,
"\x00\x00");for(x in m)c.includes(x)&&(c=c.replace(new RegExp(x,"g"),m[x](d)));c=c.replace(/\0\0/g,"%");x=hb(c,!1);if(x.length>b)return 0;q.set(x,a);return x.length-1};function Nb(a,b,c,d){a||=this;this.parent=a;this.Va=a.Va;this.jb=null;this.id=Fb++;this.name=b;this.mode=c;this.La={};this.Da={};this.rdev=d}
Object.defineProperties(Nb.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}},ac:{get:function(){return K(this.mode)}},$b:{get:function(){return 8192===(this.mode&61440)}}});hc();Gb=Array(4096);Ub(J,"/");N("/tmp");N("/home");N("/home/web_user");
(function(){N("/dev");kb(259,{read:()=>0,write:(d,e,f,g)=>g});Wb("/dev/null",259);jb(1280,mb);jb(1536,nb);Wb("/dev/tty",1280);Wb("/dev/tty1",1536);var a=new Uint8Array(1024),b=0,c=()=>{0===b&&(b=ab(a).byteLength);return a[--b]};O("/dev","random",c);O("/dev","urandom",c);N("/dev/shm");N("/dev/shm/tmp")})();
(function(){N("/proc");var a=N("/proc/self");N("/proc/self/fd");Ub({Va(){var b=tb(a,"fd",16895,73);b.La={lookup(c,d){var e=M(+d);c={parent:null,Va:{Pb:"fake"},La:{readlink:()=>e.path}};return c.parent=c}};return b}},"/proc/self/fd")})();h.FS_createPath=jc;h.FS_createDataFile=zb;h.FS_createPreloadedFile=Ab;h.FS_unlink=Zb;h.FS_createLazyFile=mc;h.FS_createDevice=O;for(var Gd=Array(256),Hd=0;256>Hd;++Hd)Gd[Hd]=String.fromCharCode(Hd);Hc=Gd;
T=h.BindingError=class extends Error{constructor(a){super(a);this.name="BindingError"}};Mc=h.InternalError=class extends Error{constructor(a){super(a);this.name="InternalError"}};Object.assign(Qc.prototype,{get(a){return this.Sa[a]},has(a){return void 0!==this.Sa[a]},sb(a){var b=this.Kb.pop()||this.Sa.length;this.Sa[b]=a;return b},pb(a){this.Sa[a]=void 0;this.Kb.push(a)}});U.Sa.push({value:void 0},{value:null},{value:!0},{value:!1});U.Ra=U.Sa.length;
h.count_emval_handles=()=>{for(var a=0,b=U.Ra;b<U.Sa.length;++b)void 0!==U.Sa[b]&&++a;return a};dd=h.UnboundTypeError=((a,b)=>{var c=Wc(b,function(d){this.name=b;this.message=d;d=Error(d).stack;void 0!==d&&(this.stack=this.toString()+"\n"+d.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(a.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:`${this.name}: ${this.message}`};return c})(Error,"UnboundTypeError");
var Xd={m:(a,b,c)=>{(new Ua(a)).Nb(b,c);Va=a;Wa++;throw Va;},ga:function(a){try{a=a?G(w,a):"";var b=L(a,{ib:!0});if(null===b.node)throw new H(44);if(!K(b.node.mode))throw new H(54);var c=Mb(b.node,"x");if(c)throw new H(c);cb=b.path;return 0}catch(d){if("undefined"==typeof Q||"ErrnoError"!==d.name)throw d;return-d.Na}},Q:function(a,b,c){try{var d=vc(a),e=Gc(b,c);d.rb.connect(d,e.Pa,e.port);return 0}catch(f){if("undefined"==typeof Q||"ErrnoError"!==f.name)throw f;return-f.Na}},j:function(a,b,c){pc=
c;try{var d=M(a);switch(b){case 0:var e=qc();if(0>e)return-28;for(;Eb[e];)e++;return Sb(d,e).fd;case 1:case 2:return 0;case 3:return d.flags;case 4:return e=qc(),d.flags|=e,0;case 5:return e=qc(),y[e+0>>1]=2,0;case 6:case 7:return 0;case 16:case 8:return-28;case 9:return z[Id()>>2]=28,-1;default:return-28}}catch(f){if("undefined"==typeof Q||"ErrnoError"!==f.name)throw f;return-f.Na}},da:function(a,b){try{var c=M(a);return oc($b,c.path,b)}catch(d){if("undefined"==typeof Q||"ErrnoError"!==d.name)throw d;
return-d.Na}},$:function(a,b){try{if(0===b)return-28;var c=cb,d=fb(c)+1;if(b<d)return-68;gb(c,w,a,b);return d}catch(e){if("undefined"==typeof Q||"ErrnoError"!==e.name)throw e;return-e.Na}},W:function(a,b,c){try{var d=M(a);if(!d.eb){var e=L(d.path,{ib:!0}).node;if(!e.La.readdir)throw new H(54);var f=e.La.readdir(e);d.eb=f}a=0;for(var g=fc(d,0,1),l=Math.floor(g/280);l<d.eb.length&&a+280<=c;){var p=d.eb[l];if("."===p){var m=d.node.id;var x=4}else if(".."===p)m=L(d.path,{parent:!0}).node.id,x=4;else{var r=
vb(d.node,p);m=r.id;x=8192===(r.mode&61440)?2:K(r.mode)?4:40960===(r.mode&61440)?10:8}D=[m>>>0,(C=m,1<=+Math.abs(C)?0<C?+Math.floor(C/4294967296)>>>0:~~+Math.ceil((C-+(~~C>>>0))/4294967296)>>>0:0)];z[b+a>>2]=D[0];z[b+a+4>>2]=D[1];D=[280*(l+1)>>>0,(C=280*(l+1),1<=+Math.abs(C)?0<C?+Math.floor(C/4294967296)>>>0:~~+Math.ceil((C-+(~~C>>>0))/4294967296)>>>0:0)];z[b+a+8>>2]=D[0];z[b+a+12>>2]=D[1];y[b+a+16>>1]=280;q[b+a+18>>0]=x;gb(p,w,b+a+19,256);a+=280;l+=1}fc(d,280*l,0);return a}catch(v){if("undefined"==
typeof Q||"ErrnoError"!==v.name)throw v;return-v.Na}},P:function(a,b,c,d,e){try{var f=vc(a);return 1===b&&4===c?(z[d>>2]=f.error,z[e>>2]=4,f.error=null,0):-50}catch(g){if("undefined"==typeof Q||"ErrnoError"!==g.name)throw g;return-g.Na}},ea:function(a,b,c){pc=c;try{var d=M(a);switch(b){case 21509:return d.tty?0:-59;case 21505:if(!d.tty)return-59;if(d.tty.bb.Xb){b=[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var e=qc();z[e>>2]=25856;z[e+4>>2]=5;z[e+8>>2]=191;z[e+12>>
2]=35387;for(var f=0;32>f;f++)q[e+f+17>>0]=b[f]||0}return 0;case 21510:case 21511:case 21512:return d.tty?0:-59;case 21506:case 21507:case 21508:if(!d.tty)return-59;if(d.tty.bb.Yb)for(e=qc(),b=[],f=0;32>f;f++)b.push(q[e+f+17>>0]);return 0;case 21519:if(!d.tty)return-59;e=qc();return z[e>>2]=0;case 21520:return d.tty?-28:-59;case 21531:e=qc();if(!d.Da.ub)throw new H(59);return d.Da.ub(d,b,e);case 21523:if(!d.tty)return-59;d.tty.bb.Zb&&(f=[24,80],e=qc(),y[e>>1]=f[0],y[e+2>>1]=f[1]);return 0;case 21524:return d.tty?
0:-59;case 21515:return d.tty?0:-59;default:return-28}}catch(g){if("undefined"==typeof Q||"ErrnoError"!==g.name)throw g;return-g.Na}},aa:function(a,b){try{return a=a?G(w,a):"",oc(ac,a,b)}catch(c){if("undefined"==typeof Q||"ErrnoError"!==c.name)throw c;return-c.Na}},Y:function(a,b,c){try{return b=b?G(w,b):"",b=nc(a,b),b=E(b),"/"===b[b.length-1]&&(b=b.substr(0,b.length-1)),N(b,c),0}catch(d){if("undefined"==typeof Q||"ErrnoError"!==d.name)throw d;return-d.Na}},ba:function(a,b,c,d){try{b=b?G(w,b):"";
var e=d&256;b=nc(a,b,d&4096);return oc(e?ac:$b,b,c)}catch(f){if("undefined"==typeof Q||"ErrnoError"!==f.name)throw f;return-f.Na}},t:function(a,b,c,d){pc=d;try{b=b?G(w,b):"";b=nc(a,b);var e=d?qc():0;return cc(b,c,e).fd}catch(f){if("undefined"==typeof Q||"ErrnoError"!==f.name)throw f;return-f.Na}},X:function(a,b){try{for(var c=0,d=0;d<b;d++){var e=a+8*d,f=y[e+4>>1],g=32,l=Eb[z[e>>2]];l&&(g=5,l.Da.yb&&(g=l.Da.yb(l,-1)));(g&=f|24)&&c++;y[e+6>>1]=g}return c}catch(p){if("undefined"==typeof Q||"ErrnoError"!==
p.name)throw p;return-p.Na}},V:function(a,b,c,d){try{b=b?G(w,b):"";b=nc(a,b);if(0>=d)return-28;var e=Ib(b),f=Math.min(d,fb(e)),g=q[c+f];gb(e,w,c,d+1);q[c+f]=g;return f}catch(l){if("undefined"==typeof Q||"ErrnoError"!==l.name)throw l;return-l.Na}},O:function(a,b,c,d,e,f){try{var g=vc(a),l=rc(g,c);if(!l)return 0;if(e){var p=g.family,m=Fc(l.Pa),x=l.port;switch(p){case 2:m=zc(m);ob(e,16);f&&(z[f>>2]=16);y[e>>1]=p;z[e+4>>2]=m;y[e+2>>1]=Ac(x);break;case 10:m=Bc(m),ob(e,28),f&&(z[f>>2]=28),z[e>>2]=p,z[e+
8>>2]=m[0],z[e+12>>2]=m[1],z[e+16>>2]=m[2],z[e+20>>2]=m[3],y[e+2>>1]=Ac(x)}}w.set(l.buffer,b);return l.buffer.byteLength}catch(r){if("undefined"==typeof Q||"ErrnoError"!==r.name)throw r;return-r.Na}},y:function(a){try{return a=a?G(w,a):"",Yb(a),0}catch(b){if("undefined"==typeof Q||"ErrnoError"!==b.name)throw b;return-b.Na}},N:function(a,b,c,d,e,f){try{var g=vc(a),l=Gc(e,f,!0);return l?sc(g,q,b,c,l.Pa,l.port):gc(g.stream,q,b,c)}catch(p){if("undefined"==typeof Q||"ErrnoError"!==p.name)throw p;return-p.Na}},
w:function(a,b,c){try{return R.createSocket(a,b,c).stream.fd}catch(d){if("undefined"==typeof Q||"ErrnoError"!==d.name)throw d;return-d.Na}},ca:function(a,b){try{return a=a?G(w,a):"",oc($b,a,b)}catch(c){if("undefined"==typeof Q||"ErrnoError"!==c.name)throw c;return-c.Na}},r:function(a,b,c){try{return b=b?G(w,b):"",b=nc(a,b),0===c?Zb(b):512===c?Yb(b):sa("Invalid flags passed to unlinkat"),0}catch(d){if("undefined"==typeof Q||"ErrnoError"!==d.name)throw d;return-d.Na}},M:()=>{},ja:(a,b,c,d)=>{b=S(b);
Nc(a,{name:b,fromWireType:function(e){return!!e},toWireType:function(e,f){return f?c:d},argPackAdvance:8,readValueFromPointer:function(e){return this.fromWireType(w[e])},cb:null})},ia:(a,b)=>{b=S(b);Nc(a,{name:b,fromWireType:c=>{var d=Sc(c);Rc(c);return d},toWireType:(c,d)=>Tc(d),argPackAdvance:8,readValueFromPointer:Uc,cb:null})},C:(a,b,c)=>{b=S(b);Nc(a,{name:b,fromWireType:d=>d,toWireType:(d,e)=>e,argPackAdvance:8,readValueFromPointer:Vc(b,c),cb:null})},x:(a,b,c,d,e,f,g)=>{var l=ad(b,c);a=S(a);
a=jd(a);e=cd(d,e);$c(a,function(){hd(`Cannot call ${a} due to unbound types`,l)},b-1);Oc(l,function(p){var m=[p[0],null].concat(p.slice(1));p=a;var x=a;var r=e,v=m.length;if(2>v)throw new T("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var k=null!==m[1]&&!1,u=!1,t=1;t<m.length;++t)if(null!==m[t]&&void 0===m[t].cb){u=!0;break}var B="void"!==m[0].name,F="",I="";for(t=0;t<v-2;++t)F+=(0!==t?", ":"")+"arg"+t,I+=(0!==t?", ":"")+"arg"+t+"Wired";F=`\n        return function (${F}) {\n        if (arguments.length !== ${v-
2}) {\n          throwBindingError('function ${x} called with ' + arguments.length + ' arguments, expected ${v-2}');\n        }`;u&&(F+="var destructors = [];\n");var ba=u?"destructors":"null",ta="throwBindingError invoker fn runDestructors retType classParam".split(" ");r=[Lc,r,f,Xc,m[0],m[1]];k&&(F+="var thisWired = classParam.toWireType("+ba+", this);\n");for(t=0;t<v-2;++t)F+="var arg"+t+"Wired = argType"+t+".toWireType("+ba+", arg"+t+"); // "+m[t+2].name+"\n",ta.push("argType"+t),r.push(m[t+2]);
k&&(I="thisWired"+(0<I.length?", ":"")+I);F+=(B||g?"var rv = ":"")+"invoker(fn"+(0<I.length?", ":"")+I+");\n";if(u)F+="runDestructors(destructors);\n";else for(t=k?1:2;t<m.length;++t)v=1===t?"thisWired":"arg"+(t-2)+"Wired",null!==m[t].cb&&(F+=v+"_dtor("+v+"); // "+m[t].name+"\n",ta.push(v+"_dtor"),r.push(m[t].cb));B&&(F+="var ret = retType.fromWireType(rv);\nreturn ret;\n");ta.push(F+"}\n");m=Yc(ta).apply(null,r);x=Wc(x,m);m=b-1;if(!h.hasOwnProperty(p))throw new Mc("Replacing nonexistant public symbol");
void 0!==h[p].Xa&&void 0!==m?h[p].Xa[m]=x:(h[p]=x,h[p].Ub=m);return[]})},l:(a,b,c,d,e)=>{b=S(b);-1===e&&(e=4294967295);e=l=>l;if(0===d){var f=32-8*c;e=l=>l<<f>>>f}var g=b.includes("unsigned")?function(l,p){return p>>>0}:function(l,p){return p};Nc(a,{name:b,fromWireType:e,toWireType:g,argPackAdvance:8,readValueFromPointer:kd(b,c,0!==d),cb:null})},h:(a,b,c)=>{function d(f){return new e(q.buffer,A[f+4>>2],A[f>>2])}var e=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,
Float64Array][b];c=S(c);Nc(a,{name:c,fromWireType:d,argPackAdvance:8,readValueFromPointer:d},{Wb:!0})},B:(a,b)=>{b=S(b);var c="std::string"===b;Nc(a,{name:b,fromWireType:function(d){var e=A[d>>2],f=d+4;if(c)for(var g=f,l=0;l<=e;++l){var p=f+l;if(l==e||0==w[p]){g=g?G(w,g,p-g):"";if(void 0===m)var m=g;else m+=String.fromCharCode(0),m+=g;g=p+1}}else{m=Array(e);for(l=0;l<e;++l)m[l]=String.fromCharCode(w[f+l]);m=m.join("")}fd(d);return m},toWireType:function(d,e){e instanceof ArrayBuffer&&(e=new Uint8Array(e));
var f="string"==typeof e;if(!(f||e instanceof Uint8Array||e instanceof Uint8ClampedArray||e instanceof Int8Array))throw new T("Cannot pass non-string to std::string");var g=c&&f?fb(e):e.length;var l=yd(4+g+1),p=l+4;A[l>>2]=g;if(c&&f)gb(e,w,p,g+1);else if(f)for(f=0;f<g;++f){var m=e.charCodeAt(f);if(255<m)throw fd(p),new T("String has UTF-16 code units that do not fit in 8 bits");w[p+f]=m}else for(f=0;f<g;++f)w[p+f]=e[f];null!==d&&d.push(fd,l);return l},argPackAdvance:8,readValueFromPointer:ld,cb(d){fd(d)}})},
u:(a,b,c)=>{c=S(c);if(2===b){var d=nd;var e=od;var f=pd;var g=()=>wa;var l=1}else 4===b&&(d=qd,e=rd,f=sd,g=()=>A,l=2);Nc(a,{name:c,fromWireType:p=>{for(var m=A[p>>2],x=g(),r,v=p+4,k=0;k<=m;++k){var u=p+4+k*b;if(k==m||0==x[u>>l])v=d(v,u-v),void 0===r?r=v:(r+=String.fromCharCode(0),r+=v),v=u+b}fd(p);return r},toWireType:(p,m)=>{if("string"!=typeof m)throw new T(`Cannot pass non-string to C++ string type ${c}`);var x=f(m),r=yd(4+x+b);A[r>>2]=x>>l;e(m,r+4,x+b);null!==p&&p.push(fd,r);return r},argPackAdvance:8,
readValueFromPointer:Uc,cb(p){fd(p)}})},ka:(a,b)=>{b=S(b);Nc(a,{rc:!0,name:b,argPackAdvance:0,fromWireType:()=>{},toWireType:()=>{}})},fa:()=>!0,S:()=>{throw Infinity;},k:Rc,G:a=>{4<a&&(U.get(a).Qb+=1)},p:a=>{var b=td[a];return Tc(void 0===b?S(a):b)},ha:()=>Tc({}),o:(a,b,c)=>{a=Sc(a);b=Sc(b);c=Sc(c);a[b]=c},q:(a,b)=>{var c=Jc[a];if(void 0===c)throw a="_emval_take_value has unknown type "+gd(a),new T(a);a=c;a=a.readValueFromPointer(b);return Tc(a)},J:function(a,b,c){a=new Date(1E3*ud(a,b));z[c>>2]=
a.getUTCSeconds();z[c+4>>2]=a.getUTCMinutes();z[c+8>>2]=a.getUTCHours();z[c+12>>2]=a.getUTCDate();z[c+16>>2]=a.getUTCMonth();z[c+20>>2]=a.getUTCFullYear()-1900;z[c+24>>2]=a.getUTCDay();z[c+28>>2]=(a.getTime()-Date.UTC(a.getUTCFullYear(),0,1,0,0,0,0))/864E5|0},K:function(a){var b=new Date(z[a+20>>2]+1900,z[a+16>>2],z[a+12>>2],z[a+8>>2],z[a+4>>2],z[a>>2],0),c=z[a+32>>2],d=b.getTimezoneOffset(),e=(new Date(b.getFullYear(),6,1)).getTimezoneOffset(),f=(new Date(b.getFullYear(),0,1)).getTimezoneOffset(),
g=Math.min(f,e);0>c?z[a+32>>2]=Number(e!=f&&g==d):0<c!=(g==d)&&(e=Math.max(f,e),b.setTime(b.getTime()+6E4*((0<c?g:e)-d)));z[a+24>>2]=b.getDay();z[a+28>>2]=(vd(b.getFullYear())?wd:xd)[b.getMonth()]+b.getDate()-1|0;z[a>>2]=b.getSeconds();z[a+4>>2]=b.getMinutes();z[a+8>>2]=b.getHours();z[a+12>>2]=b.getDate();z[a+16>>2]=b.getMonth();z[a+20>>2]=b.getYear();a=b.getTime()/1E3;return Jd((C=a,1<=+Math.abs(C)?0<C?+Math.floor(C/4294967296)>>>0:~~+Math.ceil((C-+(~~C>>>0))/4294967296)>>>0:0)),a>>>0},H:function(a,
b,c,d,e,f,g,l){e=ud(e,f);try{if(isNaN(e))return 61;var p=M(d);if(0!==(b&2)&&0===(c&2)&&2!==(p.flags&2097155))throw new H(2);if(1===(p.flags&2097155))throw new H(2);if(!p.Da.qb)throw new H(43);var m=p.Da.qb(p,a,e,b,c);var x=m.lb;z[g>>2]=m.Sa;A[l>>2]=x;return 0}catch(r){if("undefined"==typeof Q||"ErrnoError"!==r.name)throw r;return-r.Na}},I:function(a,b,c,d,e,f,g){f=ud(f,g);try{if(isNaN(f))return 61;var l=M(e);if(c&2){if(32768!==(l.node.mode&61440))throw new H(43);if(!(d&2)){var p=w.slice(a,a+b);l.Da.wb&&
l.Da.wb(l,p,f,b,d)}}}catch(m){if("undefined"==typeof Q||"ErrnoError"!==m.name)throw m;return-m.Na}},U:(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 l=g.getTimezoneOffset();A[a>>2]=60*Math.max(e,l);z[b>>2]=Number(e!=l);a=d(f);b=d(g);a=zd(a);b=zd(b);l<e?(A[c>>2]=a,A[c+4>>2]=b):(A[c>>2]=b,A[c+4>>2]=a)},b:()=>{sa("")},A:()=>Date.now(),T:a=>{var b=w.length;a>>>=0;if(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;d=Math.max(a,d);a:{e=(e.min.call(e,2147483648,d+(65536-d%65536)%65536)-ua.buffer.byteLength+65535)/65536;try{ua.grow(e);za();var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},Z:(a,b)=>{var c=0;Cd().forEach((d,e)=>{var f=b+c;e=A[a+4*e>>2]=f;for(f=0;f<d.length;++f)q[e++>>0]=d.charCodeAt(f);q[e>>0]=0;c+=d.length+1});return 0},_:(a,b)=>{var c=Cd();A[a>>2]=c.length;var d=0;c.forEach(e=>d+=e.length+1);A[b>>
2]=d;return 0},E:a=>{if(!Ta){Kd();Sa(Ca);ic=!1;Ld(0);for(var b=0;b<Eb.length;b++){var c=Eb[b];c&&ec(c)}}if(!Ta){if(h.onExit)h.onExit(a);va=!0}fa(a,new Ra(a))},n:function(a){try{var b=M(a);ec(b);return 0}catch(c){if("undefined"==typeof Q||"ErrnoError"!==c.name)throw c;return c.Na}},z:function(a,b,c,d){try{a:{var e=M(a);a=b;for(var f,g=b=0;g<c;g++){var l=A[a>>2],p=A[a+4>>2];a+=8;var m=e,x=l,r=p,v=f,k=q;if(0>r||0>v)throw new H(28);if(null===m.fd)throw new H(8);if(1===(m.flags&2097155))throw new H(8);
if(K(m.node.mode))throw new H(31);if(!m.Da.read)throw new H(28);var u="undefined"!=typeof v;if(!u)v=m.position;else if(!m.seekable)throw new H(70);var t=m.Da.read(m,k,x,r,v);u||(m.position+=t);var B=t;if(0>B){var F=-1;break a}b+=B;if(B<p)break;"undefined"!==typeof f&&(f+=B)}F=b}A[d>>2]=F;return 0}catch(I){if("undefined"==typeof Q||"ErrnoError"!==I.name)throw I;return I.Na}},L:function(a,b,c,d,e){b=ud(b,c);try{if(isNaN(b))return 61;var f=M(a);fc(f,b,d);D=[f.position>>>0,(C=f.position,1<=+Math.abs(C)?
0<C?+Math.floor(C/4294967296)>>>0:~~+Math.ceil((C-+(~~C>>>0))/4294967296)>>>0:0)];z[e>>2]=D[0];z[e+4>>2]=D[1];f.eb&&0===b&&0===d&&(f.eb=null);return 0}catch(g){if("undefined"==typeof Q||"ErrnoError"!==g.name)throw g;return g.Na}},s:function(a,b,c,d){try{a:{var e=M(a);a=b;for(var f,g=b=0;g<c;g++){var l=A[a>>2],p=A[a+4>>2];a+=8;var m=gc(e,q,l,p,f);if(0>m){var x=-1;break a}b+=m;"undefined"!==typeof f&&(f+=m)}x=b}A[d>>2]=x;return 0}catch(r){if("undefined"==typeof Q||"ErrnoError"!==r.name)throw r;return r.Na}},
la:a=>{a=a?G(w,a):"";var b=yd(20),c=zd(a);A[b>>2]=c;c=yd(4);A[c>>2]=0;A[b+4>>2]=c;z[b+8>>2]=2;z[b+12>>2]=4;c=yd(12);A[c>>2]=c+8;A[c+4>>2]=0;z[c+8>>2]=zc(Fc(a));A[b+16>>2]=c;return b},c:Md,i:Nd,f:Od,e:Pd,v:Qd,D:Rd,d:Sd,a:Td,g:Ud,F:Vd,ma:Wd,R:(a,b,c,d)=>Fd(a,b,c,d)},W=function(){function a(c){W=c.exports;ua=W.na;za();V=W.pa;Ba.unshift(W.oa);Ja("wasm-instantiate");return W}var b={a:Xd};Ia("wasm-instantiate");if(h.instantiateWasm)try{return h.instantiateWasm(b,a)}catch(c){qa(`Module.instantiateWasm callback failed with error: ${c}`),
ca(c)}Qa(b,function(c){a(c.instance)}).catch(ca);return{}}(),yd=a=>(yd=W.qa)(a),fd=a=>(fd=W.ra)(a),Ac=a=>(Ac=W.sa)(a),Ld=h._fflush=a=>(Ld=h._fflush=W.ta)(a),Jd=a=>(Jd=W.ua)(a),xc=a=>(xc=W.va)(a),Id=()=>(Id=W.wa)(),ed=a=>(ed=W.xa)(a),Kd=()=>(Kd=W.ya)(),pb=(a,b)=>(pb=W.za)(a,b),X=(a,b)=>(X=W.Aa)(a,b),Y=()=>(Y=W.Ba)(),Z=a=>(Z=W.Ca)(a);h.dynCall_viijii=(a,b,c,d,e,f,g)=>(h.dynCall_viijii=W.Ea)(a,b,c,d,e,f,g);h.dynCall_iiiji=(a,b,c,d,e,f)=>(h.dynCall_iiiji=W.Fa)(a,b,c,d,e,f);
h.dynCall_jii=(a,b,c)=>(h.dynCall_jii=W.Ga)(a,b,c);h.dynCall_jiji=(a,b,c,d,e)=>(h.dynCall_jiji=W.Ha)(a,b,c,d,e);h.dynCall_iiiiij=(a,b,c,d,e,f,g)=>(h.dynCall_iiiiij=W.Ia)(a,b,c,d,e,f,g);h.dynCall_iiiiijj=(a,b,c,d,e,f,g,l,p)=>(h.dynCall_iiiiijj=W.Ja)(a,b,c,d,e,f,g,l,p);h.dynCall_iiiiiijj=(a,b,c,d,e,f,g,l,p,m)=>(h.dynCall_iiiiiijj=W.Ka)(a,b,c,d,e,f,g,l,p,m);function Md(a,b){var c=Y();try{return V.get(a)(b)}catch(d){Z(c);if(d!==d+0)throw d;X(1,0)}}
function Nd(a,b,c){var d=Y();try{return V.get(a)(b,c)}catch(e){Z(d);if(e!==e+0)throw e;X(1,0)}}function Od(a,b,c,d){var e=Y();try{return V.get(a)(b,c,d)}catch(f){Z(e);if(f!==f+0)throw f;X(1,0)}}function Ud(a,b,c,d){var e=Y();try{V.get(a)(b,c,d)}catch(f){Z(e);if(f!==f+0)throw f;X(1,0)}}function Sd(a,b){var c=Y();try{V.get(a)(b)}catch(d){Z(c);if(d!==d+0)throw d;X(1,0)}}function Qd(a,b,c,d,e,f){var g=Y();try{return V.get(a)(b,c,d,e,f)}catch(l){Z(g);if(l!==l+0)throw l;X(1,0)}}
function Td(a,b,c){var d=Y();try{V.get(a)(b,c)}catch(e){Z(d);if(e!==e+0)throw e;X(1,0)}}function Pd(a,b,c,d,e){var f=Y();try{return V.get(a)(b,c,d,e)}catch(g){Z(f);if(g!==g+0)throw g;X(1,0)}}function Vd(a,b,c,d,e){var f=Y();try{V.get(a)(b,c,d,e)}catch(g){Z(f);if(g!==g+0)throw g;X(1,0)}}function Wd(a,b,c,d,e,f,g,l,p,m){var x=Y();try{V.get(a)(b,c,d,e,f,g,l,p,m)}catch(r){Z(x);if(r!==r+0)throw r;X(1,0)}}function Rd(a){var b=Y();try{V.get(a)()}catch(c){Z(b);if(c!==c+0)throw c;X(1,0)}}
h.addRunDependency=Ia;h.removeRunDependency=Ja;h.FS_createPath=jc;h.FS_createLazyFile=mc;h.FS_createDevice=O;h.FS_createPreloadedFile=Ab;h.FS_createDataFile=zb;h.FS_unlink=Zb;var Yd;Ha=function Zd(){Yd||$d();Yd||(Ha=Zd)};
function $d(){function a(){if(!Yd&&(Yd=!0,h.calledRun=!0,!va)){h.noFSInit||ic||(ic=!0,hc(),h.stdin=h.stdin,h.stdout=h.stdout,h.stderr=h.stderr,h.stdin?O("/dev","stdin",h.stdin):Xb("/dev/tty","/dev/stdin"),h.stdout?O("/dev","stdout",null,h.stdout):Xb("/dev/tty","/dev/stdout"),h.stderr?O("/dev","stderr",null,h.stderr):Xb("/dev/tty1","/dev/stderr"),cc("/dev/stdin",0),cc("/dev/stdout",1),cc("/dev/stderr",1));Hb=!1;R.root=Ub(R,null);Sa(Ba);aa(h);if(h.onRuntimeInitialized)h.onRuntimeInitialized();if(h.postRun)for("function"==
typeof h.postRun&&(h.postRun=[h.postRun]);h.postRun.length;){var b=h.postRun.shift();Da.unshift(b)}Sa(Da)}}if(!(0<Fa)){if(h.preRun)for("function"==typeof h.preRun&&(h.preRun=[h.preRun]);h.preRun.length;)Ea();Sa(Aa);0<Fa||(h.setStatus?(h.setStatus("Running..."),setTimeout(function(){setTimeout(function(){h.setStatus("")},1);a()},1)):a())}}if(h.preInit)for("function"==typeof h.preInit&&(h.preInit=[h.preInit]);0<h.preInit.length;)h.preInit.pop()();$d();


  return moduleArg.ready
}
);
})();
;
export default Module;