async function Module(moduleArg={}){var moduleRtn;var n=moduleArg,aa=!!globalThis.window,ba=!!globalThis.WorkerGlobalScope,ca=globalThis.process?.versions?.node&&"renderer"!=globalThis.process?.type;if(ca){const {createRequire:a}=await import("module");var require=a(import.meta.url)}var da="./this.program",fa=(a,b)=>{throw b;},ha=import.meta.url,ia="",ja,ka;
if(ca){var fs=require("fs");ha.startsWith("file:")&&(ia=require("path").dirname(require("url").fileURLToPath(ha))+"/");ka=a=>{a=la(a)?new URL(a):a;return fs.readFileSync(a)};ja=async a=>{a=la(a)?new URL(a):a;return fs.readFileSync(a,void 0)};1<process.argv.length&&(da=process.argv[1].replace(/\\/g,"/"));process.argv.slice(2);fa=(a,b)=>{process.exitCode=a;throw b;}}else if(aa||ba){try{ia=(new URL(".",ha)).href}catch{}ba&&(ka=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";
b.send(null);return new Uint8Array(b.response)});ja=async a=>{if(la(a))return new Promise((c,d)=>{var e=new XMLHttpRequest;e.open("GET",a,!0);e.responseType="arraybuffer";e.onload=()=>{200==e.status||0==e.status&&e.response?c(e.response):d(e.status)};e.onerror=d;e.send(null)});var b=await fetch(a,{credentials:"same-origin"});if(b.ok)return b.arrayBuffer();throw Error(b.status+" : "+b.url);}}
var ma=console.log.bind(console),p=console.error.bind(console),na,oa=!1,pa,la=a=>a.startsWith("file://"),qa,ra,u,v,sa,ta,w,y,ua,va,A,wa,xa=!1;function B(a){n.onAbort?.(a);a="Aborted("+a+")";p(a);oa=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");ra?.(a);throw a;}var ya;
async function za(a){if(!na)try{var b=await ja(a);return new Uint8Array(b)}catch{}if(a==ya&&na)a=new Uint8Array(na);else if(ka)a=ka(a);else throw"both async and sync fetching of the wasm failed";return a}async function Aa(a,b){try{var c=await za(a);return await WebAssembly.instantiate(c,b)}catch(d){p(`failed to asynchronously prepare wasm: ${d}`),B(d)}}
async function Ba(a){var b=ya;if(!na&&!la(b)&&!ca)try{var c=fetch(b,{credentials:"same-origin"});return await WebAssembly.instantiateStreaming(c,a)}catch(d){p(`wasm streaming compile failed: ${d}`),p("falling back to ArrayBuffer instantiation")}return Aa(b,a)}class Ca{name="ExitStatus";constructor(a){this.message=`Program terminated with exit(${a})`;this.status=a}}var Da=a=>{for(;0<a.length;)a.shift()(n)},Ea=[],Fa=[],Ga=()=>{var a=n.preRun.shift();Fa.push(a)},Ha=!0,Ia=[],Ja=0,C=0;
class Ka{constructor(a){this.ac=a;this.Ta=a-24}}
var Na=a=>{var b=C;if(!b)return La(0),0;var c=new Ka(b);y[c.Ta+16>>2]=b;var d=y[c.Ta+4>>2];if(!d)return La(0),b;for(var e of a){if(0===e||e===d)break;if(Ma(e,d,c.Ta+16))return La(e),b}La(d);return b},D=()=>{var a=w[+Oa>>2];Oa+=4;return a},Pa=(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},Qa=a=>{var b="/"===a.charAt(0),c="/"===a.slice(-1);(a=Pa(a.split("/").filter(d=>!!d),!b).join("/"))||
b||(a=".");a&&c&&(a+="/");return(b?"/":"")+a},Ra=a=>{var b=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(a).slice(1);a=b[0];b=b[1];if(!a&&!b)return".";b&&=b.slice(0,-1);return a+b},Sa=()=>{if(ca){var a=require("crypto");return b=>a.randomFillSync(b)}return b=>crypto.getRandomValues(b)},Ta=a=>{(Ta=Sa())(a)},Ua=(...a)=>{for(var b="",c=!1,d=a.length-1;-1<=d&&!c;d--){c=0<=d?a[d]:"/";if("string"!=typeof c)throw new TypeError("Arguments to path.resolve must be strings");if(!c)return"";
b=c+"/"+b;c="/"===c.charAt(0)}b=Pa(b.split("/").filter(e=>!!e),!c).join("/");return(c?"/":"")+b||"."},Va=new TextDecoder,Wa=(a,b,c,d)=>{c=b+c;if(d)return c;for(;a[b]&&!(b>=c);)++b;return b},Xa=a=>{var b=Wa(a,0);return Va.decode(a.buffer?a.subarray(0,b):new Uint8Array(a.slice(0,b)))},Ya=[],Za=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},E=(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.codePointAt(f);if(127>=g){if(c>=d)break;b[c++]=g}else if(2047>=g){if(c+1>=d)break;b[c++]=192|g>>6;b[c++]=128|g&63}else if(65535>=g){if(c+2>=d)break;b[c++]=224|g>>12;b[c++]=128|g>>6&63;b[c++]=128|g&63}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;f++}}b[c]=0;return c-e},$a=a=>{var b=Array(Za(a)+1);a=E(a,b,0,b.length);b.length=a;return b},ab=[];function bb(a,b){ab[a]={input:[],output:[],nb:b};cb(a,db)}
var db={open(a){var b=ab[a.node.rdev];if(!b)throw new G(43);a.tty=b;a.seekable=!1},close(a){a.tty.nb.fsync(a.tty)},fsync(a){a.tty.nb.fsync(a.tty)},read(a,b,c,d){if(!a.tty||!a.tty.nb.bc)throw new G(60);for(var e=0,f=0;f<d;f++){try{var g=a.tty.nb.bc(a.tty)}catch(h){throw new G(29);}if(void 0===g&&0===e)throw new G(6);if(null===g||void 0===g)break;e++;b[c+f]=g}e&&(a.node.atime=Date.now());return e},write(a,b,c,d){if(!a.tty||!a.tty.nb.Qb)throw new G(60);try{for(var e=0;e<d;e++)a.tty.nb.Qb(a.tty,b[c+e])}catch(f){throw new G(29);
}d&&(a.node.mtime=a.node.ctime=Date.now());return e}},eb={bc(){a:{if(!Ya.length){var a=null;if(ca){var b=Buffer.alloc(256),c=0,d=process.stdin.fd;try{c=fs.readSync(d,b,0,256)}catch(e){if(e.toString().includes("EOF"))c=0;else throw e;}0<c&&(a=b.slice(0,c).toString("utf-8"))}else globalThis.window?.prompt&&(a=window.prompt("Input: "),null!==a&&(a+="\n"));if(!a){a=null;break a}Ya=$a(a)}a=Ya.shift()}return a},Qb(a,b){null===b||10===b?(ma(Xa(a.output)),a.output=[]):0!=b&&a.output.push(b)},fsync(a){0<a.output?.length&&
(ma(Xa(a.output)),a.output=[])},tc(){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]}},uc(){return 0},vc(){return[24,80]}},fb={Qb(a,b){null===b||10===b?(p(Xa(a.output)),a.output=[]):0!=b&&a.output.push(b)},fsync(a){0<a.output?.length&&(p(Xa(a.output)),a.output=[])}},hb=a=>{a=65536*Math.ceil(a/65536);var b=gb(65536,a);b&&v.fill(0,b,b+a);return b},H={jb:null,mb(){return H.createNode(null,"/",16895,0)},createNode(a,b,c,d){if(24576===
(c&61440)||4096===(c&61440))throw new G(63);H.jb||(H.jb={dir:{node:{hb:H.Ua.hb,kb:H.Ua.kb,lookup:H.Ua.lookup,Eb:H.Ua.Eb,rename:H.Ua.rename,unlink:H.Ua.unlink,rmdir:H.Ua.rmdir,readdir:H.Ua.readdir,symlink:H.Ua.symlink},stream:{ib:H.Ra.ib}},file:{node:{hb:H.Ua.hb,kb:H.Ua.kb},stream:{ib:H.Ra.ib,read:H.Ra.read,write:H.Ra.write,xb:H.Ra.xb,Fb:H.Ra.Fb}},link:{node:{hb:H.Ua.hb,kb:H.Ua.kb,readlink:H.Ua.readlink},stream:{}},Xb:{node:{hb:H.Ua.hb,kb:H.Ua.kb},stream:ib}});c=jb(a,b,c,d);J(c.mode)?(c.Ua=H.jb.dir.node,
c.Ra=H.jb.dir.stream,c.Sa={}):32768===(c.mode&61440)?(c.Ua=H.jb.file.node,c.Ra=H.jb.file.stream,c.Xa=0,c.Sa=null):40960===(c.mode&61440)?(c.Ua=H.jb.link.node,c.Ra=H.jb.link.stream):8192===(c.mode&61440)&&(c.Ua=H.jb.Xb.node,c.Ra=H.jb.Xb.stream);c.atime=c.mtime=c.ctime=Date.now();a&&(a.Sa[b]=c,a.atime=a.mtime=a.ctime=c.atime);return c},Zc(a){return a.Sa?a.Sa.subarray?a.Sa.subarray(0,a.Xa):new Uint8Array(a.Sa):new Uint8Array(0)},Ua:{hb(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;J(a.mode)?b.size=4096:32768===(a.mode&61440)?b.size=a.Xa:40960===(a.mode&61440)?b.size=a.link.length:b.size=0;b.atime=new Date(a.atime);b.mtime=new Date(a.mtime);b.ctime=new Date(a.ctime);b.blksize=4096;b.blocks=Math.ceil(b.size/b.blksize);return b},kb(a,b){for(var c of["mode","atime","mtime","ctime"])null!=b[c]&&(a[c]=b[c]);void 0!==b.size&&(b=b.size,a.Xa!=b&&(0==b?(a.Sa=null,a.Xa=0):(c=a.Sa,a.Sa=new Uint8Array(b),c&&a.Sa.set(c.subarray(0,Math.min(b,
a.Xa))),a.Xa=b)))},lookup(){H.Jb||(H.Jb=new G(44),H.Jb.stack="<generic error, no stack>");throw H.Jb;},Eb(a,b,c,d){return H.createNode(a,b,c,d)},rename(a,b,c){try{var d=kb(b,c)}catch(f){}if(d){if(J(a.mode))for(var e in d.Sa)throw new G(55);lb(d)}delete a.parent.Sa[a.name];b.Sa[c]=a;a.name=c;b.ctime=b.mtime=a.parent.ctime=a.parent.mtime=Date.now()},unlink(a,b){delete a.Sa[b];a.ctime=a.mtime=Date.now()},rmdir(a,b){var c=kb(a,b),d;for(d in c.Sa)throw new G(55);delete a.Sa[b];a.ctime=a.mtime=Date.now()},
readdir(a){return[".","..",...Object.keys(a.Sa)]},symlink(a,b,c){a=H.createNode(a,b,41471,0);a.link=c;return a},readlink(a){if(40960!==(a.mode&61440))throw new G(28);return a.link}},Ra:{read(a,b,c,d,e){var f=a.node.Sa;if(e>=a.node.Xa)return 0;a=Math.min(a.node.Xa-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){if(!d)return 0;a=a.node;a.mtime=a.ctime=Date.now();if(b.subarray&&(!a.Sa||a.Sa.subarray)){if(f)return a.Sa=b.subarray(c,c+
d),a.Xa=d;if(0===a.Xa&&0===e)return a.Sa=b.slice(c,c+d),a.Xa=d;if(e+d<=a.Xa)return a.Sa.set(b.subarray(c,c+d),e),d}f=e+d;var g=a.Sa?a.Sa.length:0;g>=f||(f=Math.max(f,g*(1048576>g?2:1.125)>>>0),0!=g&&(f=Math.max(f,256)),g=a.Sa,a.Sa=new Uint8Array(f),0<a.Xa&&a.Sa.set(g.subarray(0,a.Xa),0));if(a.Sa.subarray&&b.subarray)a.Sa.set(b.subarray(c,c+d),e);else for(f=0;f<d;f++)a.Sa[e+f]=b[c+f];a.Xa=Math.max(a.Xa,e+d);return d},ib(a,b,c){1===c?b+=a.position:2===c&&32768===(a.node.mode&61440)&&(b+=a.node.Xa);
if(0>b)throw new G(28);return b},xb(a,b,c,d,e){if(32768!==(a.node.mode&61440))throw new G(43);a=a.node.Sa;if(e&2||!a||a.buffer!==u.buffer){d=!0;e=hb(b);if(!e)throw new G(48);if(a){if(0<c||c+b<a.length)a.subarray?a=a.subarray(c,c+b):a=Array.prototype.slice.call(a,c,c+b);u.set(a,e)}}else d=!1,e=a.byteOffset;return{Ta:e,Vb:d}},Fb(a,b,c,d){H.Ra.write(a,b,0,d,c,!1);return 0}}},mb=(a,b)=>{var c=0;a&&(c|=365);b&&(c|=146);return c},nb=async a=>{a=await ja(a);return new Uint8Array(a)},ob=0,pb=null,qb=()=>
{ob--;n.monitorRunDependencies?.(ob);if(0==ob&&pb){var a=pb;pb=null;a()}},rb=()=>{ob++;n.monitorRunDependencies?.(ob)},sb=[],vb=async(a,b)=>{"undefined"!=typeof tb&&ub();for(var c of sb)if(c.canHandle(b))return c.handle(a,b);return a},wb=null,xb={},yb=[],zb=1,M=null,Ab=!1,Bb=!0,Cb={},G=class{name="ErrnoError";constructor(a){this.ab=a}},Db=class{lb={};node=null;get flags(){return this.lb.flags}set flags(a){this.lb.flags=a}get position(){return this.lb.position}set position(a){this.lb.position=a}},
Eb=class{Ua={};Ra={};yb=null;constructor(a,b,c,d){a||=this;this.parent=a;this.mb=a.mb;this.id=zb++;this.name=b;this.mode=c;this.rdev=d;this.atime=this.mtime=this.ctime=Date.now()}get read(){return 365===(this.mode&365)}set read(a){a?this.mode|=365:this.mode&=-366}get write(){return 146===(this.mode&146)}set write(a){a?this.mode|=146:this.mode&=-147}get xc(){return J(this.mode)}get wc(){return 8192===(this.mode&61440)}};
function Fb(a,b={}){if(!a)throw new G(44);b.Lb??(b.Lb=!0);"/"===a.charAt(0)||(a="//"+a);var c=0;a:for(;40>c;c++){a=a.split("/").filter(h=>!!h);for(var d=wb,e="/",f=0;f<a.length;f++){var g=f===a.length-1;if(g&&b.parent)break;if("."!==a[f])if(".."===a[f])if(e=Ra(e),d===d.parent){a=e+"/"+a.slice(f+1).join("/");c--;continue a}else d=d.parent;else{e=Qa(e+"/"+a[f]);try{d=kb(d,a[f])}catch(h){if(44===h?.ab&&g&&b.Ac)return{path:e};throw h;}!d.yb||g&&!b.Lb||(d=d.yb.root);if(40960===(d.mode&61440)&&(!g||b.Kb)){if(!d.Ua.readlink)throw new G(52);
d=d.Ua.readlink(d);"/"===d.charAt(0)||(d=Ra(e)+"/"+d);a=d+"/"+a.slice(f+1).join("/");continue a}}}return{path:e,node:d}}throw new G(32);}function Gb(a){for(var b;;){if(a===a.parent)return a=a.mb.dc,b?"/"!==a[a.length-1]?`${a}/${b}`:a+b:a;b=b?`${a.name}/${b}`:a.name;a=a.parent}}function Hb(a,b){for(var c=0,d=0;d<b.length;d++)c=(c<<5)-c+b.charCodeAt(d)|0;return(a+c>>>0)%M.length}
function lb(a){var b=Hb(a.parent.id,a.name);if(M[b]===a)M[b]=a.ub;else for(b=M[b];b;){if(b.ub===a){b.ub=a.ub;break}b=b.ub}}function kb(a,b){var c=J(a.mode)?(c=Ib(a,"x"))?c:a.Ua.lookup?0:2:54;if(c)throw new G(c);for(c=M[Hb(a.id,b)];c;c=c.ub){var d=c.name;if(c.parent.id===a.id&&d===b)return c}return a.Ua.lookup(a,b)}function jb(a,b,c,d){a=new Eb(a,b,c,d);b=Hb(a.parent.id,a.name);a.ub=M[b];return M[b]=a}function J(a){return 16384===(a&61440)}
function Jb(a){var b=["r","w","rw"][a&3];a&512&&(b+="w");return b}function Ib(a,b){if(Bb)return 0;if(!b.includes("r")||a.mode&292){if(b.includes("w")&&!(a.mode&146)||b.includes("x")&&!(a.mode&73))return 2}else return 2;return 0}function Kb(a,b){if(!J(a.mode))return 54;try{return kb(a,b),20}catch(c){}return Ib(a,"wx")}function N(a){a=yb[a];if(!a)throw new G(8);return a}
function Lb(a,b=-1){a=Object.assign(new Db,a);if(-1==b)a:{for(b=0;4096>=b;b++)if(!yb[b])break a;throw new G(33);}a.fd=b;return yb[b]=a}function Mb(a,b=-1){a=Lb(a,b);a.Ra?.Uc?.(a);return a}function Nb(a,b){var c=null?.Ra.kb,d=c?null:a;c??=a.Ua.kb;if(!c)throw new G(63);c(d,b)}var ib={open(a){a.Ra=xb[a.node.rdev].Ra;a.Ra.open?.(a)},ib(){throw new G(70);}};function cb(a,b){xb[a]={Ra:b}}
function Ob(a,b){var c="/"===b;if(c&&wb)throw new G(10);if(!c&&b){var d=Fb(b,{Lb:!1});b=d.path;d=d.node;if(d.yb)throw new G(10);if(!J(d.mode))throw new G(54);}b={type:a,gd:{},dc:b,zc:[]};a=a.mb(b);a.mb=b;b.root=a;c?wb=a:d&&(d.yb=b,d.mb&&d.mb.zc.push(b))}function Pb(a,b,c){var d=Fb(a,{parent:!0}).node;a=a&&a.match(/([^\/]+|\/)\/*$/)[1];if(!a)throw new G(28);if("."===a||".."===a)throw new G(20);var e=Kb(d,a);if(e)throw new G(e);if(!d.Ua.Eb)throw new G(63);return d.Ua.Eb(d,a,b,c)}
function Qb(a,b=438){return Pb(a,b&4095|32768,0)}function O(a){return Pb(a,16895,0)}function Rb(a,b,c){"undefined"==typeof c&&(c=b,b=438);return Pb(a,b|8192,c)}function Sb(a,b){if(!Ua(a))throw new G(44);var c=Fb(b,{parent:!0}).node;if(!c)throw new G(44);b=b&&b.match(/([^\/]+|\/)\/*$/)[1];var d=Kb(c,b);if(d)throw new G(d);if(!c.Ua.symlink)throw new G(63);c.Ua.symlink(c,b,a)}
function Tb(a){var b=Fb(a,{parent:!0}).node;if(!b)throw new G(44);a=a&&a.match(/([^\/]+|\/)\/*$/)[1];var c=kb(b,a);a:{try{var d=kb(b,a)}catch(f){d=f.ab;break a}var e=Ib(b,"wx");d=e?e:J(d.mode)?31:0}if(d)throw new G(d);if(!b.Ua.unlink)throw new G(63);if(c.yb)throw new G(10);b.Ua.unlink(b,a);lb(c)}function Ub(a,b){a="string"==typeof a?Fb(a,{Kb:!0}).node:a;Nb(a,{mode:b&4095|a.mode&-4096,ctime:Date.now(),Tc:void 0})}
function Vb(a,b,c=438){if(""===a)throw new G(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?c&4095|32768:0;if("object"==typeof a)d=a;else{var e=a.endsWith("/");a=Fb(a,{Kb:!(b&131072),Ac:!0});d=a.node;a=a.path}var f=!1;if(b&64)if(d){if(b&128)throw new G(20);}else{if(e)throw new G(31);d=Pb(a,c|511,0);f=!0}if(!d)throw new G(44);8192===(d.mode&61440)&&(b&=-513);if(b&65536&&!J(d.mode))throw new G(54);
if(!f&&(e=d?40960===(d.mode&61440)?32:J(d.mode)&&("r"!==Jb(b)||b&576)?31:Ib(d,Jb(b)):44))throw new G(e);if(b&512&&!f){e=d;e="string"==typeof e?Fb(e,{Kb:!0}).node:e;if(J(e.mode))throw new G(31);if(32768!==(e.mode&61440))throw new G(28);var g=Ib(e,"w");if(g)throw new G(g);Nb(e,{size:0,timestamp:Date.now()})}b&=-131713;e=Lb({node:d,path:Gb(d),flags:b,seekable:!0,position:0,Ra:d.Ra,Gc:[],error:!1});e.Ra.open&&e.Ra.open(e);f&&Ub(d,c&511);!n.logReadFiles||b&1||a in Cb||(Cb[a]=1);return e}
function Wb(a){if(null===a.fd)throw new G(8);a.Nb&&(a.Nb=null);try{a.Ra.close&&a.Ra.close(a)}catch(b){throw b;}finally{yb[a.fd]=null}a.fd=null}function Xb(a,b,c){if(null===a.fd)throw new G(8);if(!a.seekable||!a.Ra.ib)throw new G(70);if(0!=c&&1!=c&&2!=c)throw new G(28);a.position=a.Ra.ib(a,b,c);a.Gc=[]}
function Yb(a,b,c,d,e,f){if(0>d||0>e)throw new G(28);if(null===a.fd)throw new G(8);if(0===(a.flags&2097155))throw new G(8);if(J(a.node.mode))throw new G(31);if(!a.Ra.write)throw new G(28);a.seekable&&a.flags&1024&&Xb(a,0,2);var g="undefined"!=typeof e;if(!g)e=a.position;else if(!a.seekable)throw new G(70);b=a.Ra.write(a,b,c,d,e,f);g||(a.position+=b);return b}
function Zb(a,b){a="string"==typeof a?a:Gb(a);for(b=b.split("/").reverse();b.length;){var c=b.pop();if(c){var d=Qa(a+"/"+c);try{O(d)}catch(e){if(20!=e.ab)throw e;}a=d}}return d}function $b(a,b,c,d){a=Qa(("string"==typeof a?a:Gb(a))+"/"+b);return Qb(a,mb(c,d))}
function ac(a,b,c,d,e,f){var g=b;a&&(a="string"==typeof a?a:Gb(a),g=b?Qa(a+"/"+b):a);a=mb(d,e);g=Qb(g,a);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}Ub(g,a|146);b=Vb(g,577);Yb(b,c,0,c.length,0,f);Wb(b);Ub(g,a)}}
function P(a,b,c,d){a=Qa(("string"==typeof a?a:Gb(a))+"/"+b);b=mb(!!c,!!d);P.cc??(P.cc=64);var e=P.cc++<<8|0;cb(e,{open(f){f.seekable=!1},close(){d?.buffer?.length&&d(10)},read(f,g,h,k){for(var l=0,m=0;m<k;m++){try{var q=c()}catch(r){throw new G(29);}if(void 0===q&&0===l)throw new G(6);if(null===q||void 0===q)break;l++;g[h+m]=q}l&&(f.node.atime=Date.now());return l},write(f,g,h,k){for(var l=0;l<k;l++)try{d(g[h+l])}catch(m){throw new G(29);}k&&(f.node.mtime=f.node.ctime=Date.now());return l}});return Rb(a,
b,e)}function bc(a){if(!(a.wc||a.xc||a.link||a.Sa))if(globalThis.XMLHttpRequest)B("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.");else try{a.Sa=ka(a.url)}catch(b){throw new G(29);}}
function cc(a,b,c,d,e){function f(m,q,r,t,x){m=m.node.Sa;if(x>=m.length)return 0;t=Math.min(m.length-x,t);if(m.slice)for(var z=0;z<t;z++)q[r+z]=m[x+z];else for(z=0;z<t;z++)q[r+z]=m.get(x+z);return t}class g{Hb=!1;lb=[];Gb=void 0;Tb=0;Sb=0;get(m){if(!(m>this.length-1||0>m)){var q=m%this.chunkSize;return this.Gb(m/this.chunkSize|0)[q]}}jc(m){this.Gb=m}Ub(){var m=new XMLHttpRequest;m.open("HEAD",c,!1);m.send(null);200<=m.status&&300>m.status||304===m.status||B("Couldn't load "+c+". Status: "+m.status);
var q=Number(m.getResponseHeader("Content-length")),r,t=(r=m.getResponseHeader("Accept-Ranges"))&&"bytes"===r;m=(r=m.getResponseHeader("Content-Encoding"))&&"gzip"===r;var x=1048576;t||(x=q);var z=this;z.jc(I=>{var L=I*x,F=(I+1)*x-1;F=Math.min(F,q-1);if("undefined"==typeof z.lb[I]){var ea=z.lb;L>F&&B("invalid range ("+L+", "+F+") or no bytes requested!");F>q-1&&B("only "+q+" bytes available! programmer error!");var K=new XMLHttpRequest;K.open("GET",c,!1);q!==x&&K.setRequestHeader("Range","bytes="+
L+"-"+F);K.responseType="arraybuffer";K.overrideMimeType&&K.overrideMimeType("text/plain; charset=x-user-defined");K.send(null);200<=K.status&&300>K.status||304===K.status||B("Couldn't load "+c+". Status: "+K.status);L=void 0!==K.response?new Uint8Array(K.response||[]):$a(K.responseText||"");ea[I]=L}"undefined"==typeof z.lb[I]&&B("doXHR failed!");return z.lb[I]});if(m||!q)x=q=1,x=q=this.Gb(0).length,ma("LazyFiles on gzip forces download of the whole file when length is accessed");this.Tb=q;this.Sb=
x;this.Hb=!0}get length(){this.Hb||this.Ub();return this.Tb}get chunkSize(){this.Hb||this.Ub();return this.Sb}}if(globalThis.XMLHttpRequest){ba||B("Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc");var h=new g;var k=void 0}else k=c,h=void 0;var l=$b(a,b,d,e);h?l.Sa=h:k&&(l.Sa=null,l.url=k);Object.defineProperties(l,{Xa:{get:function(){return this.Sa.length}}});a={};for(const [m,q]of Object.entries(l.Ra))a[m]=(...r)=>{bc(l);return q(...r)};
a.read=(m,q,r,t,x)=>{bc(l);return f(m,q,r,t,x)};a.xb=(m,q,r)=>{bc(l);var t=hb(q);if(!t)throw new G(48);f(m,u,t,q,r);return{Ta:t,Vb:!0}};l.Ra=a;return l}var Q={},R=(a,b,c)=>a?Va.decode(v.subarray(a,Wa(v,a,b,c))):"",Oa=void 0,S=a=>{for(var b="";;){var c=v[a++];if(!c)return b;b+=String.fromCharCode(c)}},dc={},ec={},fc={},T=class extends Error{constructor(a){super(a);this.name="BindingError"}},gc=a=>{throw new T(a);};
function hc(a,b,c={}){var d=b.name;if(!a)throw new T(`type "${d}" must have a positive integer typeid pointer`);if(ec.hasOwnProperty(a)){if(c.rc)return;throw new T(`Cannot register type '${d}' twice`);}ec[a]=b;delete fc[a];dc.hasOwnProperty(a)&&(b=dc[a],delete dc[a],b.forEach(e=>e()))}function U(a,b,c={}){return hc(a,b,c)}
var ic=(a,b,c)=>{switch(b){case 1:return c?d=>u[d]:d=>v[d];case 2:return c?d=>sa[d>>1]:d=>ta[d>>1];case 4:return c?d=>w[d>>2]:d=>y[d>>2];case 8:return c?d=>A[d>>3]:d=>wa[d>>3];default:throw new TypeError(`invalid integer width (${b}): ${a}`);}},jc=a=>{throw new T(a.Qa.Wa.Va.name+" instance already deleted");},kc=!1,lc=()=>{},mc=a=>{if(!globalThis.FinalizationRegistry)return mc=b=>b,a;kc=new FinalizationRegistry(b=>{b=b.Qa;--b.count.value;0===b.count.value&&(b.Ya?b.eb.pb(b.Ya):b.Wa.Va.pb(b.Ta))});
mc=b=>{var c=b.Qa;c.Ya&&kc.register(b,{Qa:c},b);return b};lc=b=>{kc.unregister(b)};return mc(a)},nc=[];function oc(){}
var pc=(a,b)=>Object.defineProperty(b,"name",{value:a}),qc={},rc=(a,b,c)=>{if(void 0===a[b].cb){var d=a[b];a[b]=function(...e){if(!a[b].cb.hasOwnProperty(e.length))throw new T(`Function '${c}' called with an invalid number of arguments (${e.length}) - expects one of (${a[b].cb})!`);return a[b].cb[e.length].apply(this,e)};a[b].cb=[];a[b].cb[d.rb]=d}},sc=(a,b)=>{if(n.hasOwnProperty(a))throw new T(`Cannot register public name '${a}' twice`);n[a]=b;n[a].rb=void 0},tc=a=>{a=a.replace(/[^a-zA-Z0-9_]/g,
"$");var b=a.charCodeAt(0);return 48<=b&&57>=b?`_${a}`:a};function uc(a,b,c,d,e,f,g,h){this.name=a;this.constructor=b;this.tb=c;this.pb=d;this.$a=e;this.oc=f;this.Ab=g;this.nc=h;this.Cc=[]}var vc=(a,b,c)=>{for(;b!==c;){if(!b.Ab)throw new T(`Expected null or instance of ${c.name}, got an instance of ${b.name}`);a=b.Ab(a);b=b.$a}return a},wc=a=>{if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a};
function xc(a,b){if(null===b){if(this.Pb)throw new T(`null is not a valid ${this.name}`);return 0}if(!b.Qa)throw new T(`Cannot pass "${wc(b)}" as a ${this.name}`);if(!b.Qa.Ta)throw new T(`Cannot pass deleted object as a pointer of type ${this.name}`);return vc(b.Qa.Ta,b.Qa.Wa.Va,this.Va)}
function yc(a,b){if(null===b){if(this.Pb)throw new T(`null is not a valid ${this.name}`);if(this.Db){var c=this.Dc();null!==a&&a.push(this.pb,c);return c}return 0}if(!b||!b.Qa)throw new T(`Cannot pass "${wc(b)}" as a ${this.name}`);if(!b.Qa.Ta)throw new T(`Cannot pass deleted object as a pointer of type ${this.name}`);if(!this.Cb&&b.Qa.Wa.Cb)throw new T(`Cannot convert argument of type ${b.Qa.eb?b.Qa.eb.name:b.Qa.Wa.name} to parameter type ${this.name}`);c=vc(b.Qa.Ta,b.Qa.Wa.Va,this.Va);if(this.Db){if(void 0===
b.Qa.Ya)throw new T("Passing raw pointer to smart pointer is illegal");switch(this.Fc){case 0:if(b.Qa.eb===this)c=b.Qa.Ya;else throw new T(`Cannot convert argument of type ${b.Qa.eb?b.Qa.eb.name:b.Qa.Wa.name} to parameter type ${this.name}`);break;case 1:c=b.Qa.Ya;break;case 2:if(b.Qa.eb===this)c=b.Qa.Ya;else{var d=b.clone();c=this.Ec(c,zc(()=>d["delete"]()));null!==a&&a.push(this.pb,c)}break;default:throw new T("Unsupporting sharing policy");}}return c}
function Ac(a,b){if(null===b){if(this.Pb)throw new T(`null is not a valid ${this.name}`);return 0}if(!b.Qa)throw new T(`Cannot pass "${wc(b)}" as a ${this.name}`);if(!b.Qa.Ta)throw new T(`Cannot pass deleted object as a pointer of type ${this.name}`);if(b.Qa.Wa.Cb)throw new T(`Cannot convert argument of type ${b.Qa.Wa.name} to parameter type ${this.name}`);return vc(b.Qa.Ta,b.Qa.Wa.Va,this.Va)}function Bc(a){return this.Za(y[a>>2])}
var Cc=(a,b,c)=>{if(b===c)return a;if(void 0===c.$a)return null;a=Cc(a,b,c.$a);return null===a?null:c.nc(a)},Dc={},Ec=(a,b)=>{if(void 0===b)throw new T("ptr should not be undefined");for(;a.$a;)b=a.Ab(b),a=a.$a;return Dc[b]},Fc=class extends Error{constructor(a){super(a);this.name="InternalError"}},Gc=(a,b)=>{if(!b.Wa||!b.Ta)throw new Fc("makeClassHandle requires ptr and ptrType");if(!!b.eb!==!!b.Ya)throw new Fc("Both smartPtrType and smartPtr must be specified");b.count={value:1};return mc(Object.create(a,
{Qa:{value:b,writable:!0}}))};function Hc(a,b,c,d,e,f,g,h,k,l,m){this.name=a;this.Va=b;this.Pb=c;this.Cb=d;this.Db=e;this.Bc=f;this.Fc=g;this.fc=h;this.Dc=k;this.Ec=l;this.pb=m;e||void 0!==b.$a?this.gb=yc:(this.gb=d?xc:Ac,this.fb=null)}var Ic=(a,b)=>{if(!n.hasOwnProperty(a))throw new Fc("Replacing nonexistent public symbol");n[a]=b;n[a].rb=void 0},Jc=(a,b)=>{a=S(a);var c=V.get(b);if("function"!=typeof c)throw new T(`unknown function pointer with signature ${a}: ${b}`);return c};
class Kc extends Error{}
var Nc=a=>{a=Lc(a);var b=S(a);Mc(a);return b},Oc=(a,b)=>{function c(f){e[f]||ec[f]||(fc[f]?fc[f].forEach(c):(d.push(f),e[f]=!0))}var d=[],e={};b.forEach(c);throw new Kc(`${a}: `+d.map(Nc).join([", "]));},Pc=(a,b,c)=>{function d(h){h=c(h);if(h.length!==a.length)throw new Fc("Mismatched type converter count");for(var k=0;k<a.length;++k)U(a[k],h[k])}a.forEach(h=>fc[h]=b);var e=Array(b.length),f=[],g=0;for(let [h,k]of b.entries())ec.hasOwnProperty(k)?e[h]=ec[k]:(f.push(k),dc.hasOwnProperty(k)||(dc[k]=
[]),dc[k].push(()=>{e[h]=ec[k];++g;g===f.length&&d(e)}));0===f.length&&d(e)},Qc=a=>{for(;a.length;){var b=a.pop();a.pop()(b)}};function Rc(a){for(var b=1;b<a.length;++b)if(null!==a[b]&&void 0===a[b].fb)return!0;return!1}
function Sc(a,b,c,d,e,f){var g=b.length;if(2>g)throw new T("argTypes array size mismatch! Must at least get return value and 'this' types!");var h=null!==b[1]&&null!==c,k=Rc(b);c=!b[0].yc;var l=b[0],m=b[1];d=[a,gc,d,e,Qc,l.Za.bind(l),m?.gb.bind(m)];for(e=2;e<g;++e)l=b[e],d.push(l.gb.bind(l));if(!k)for(e=h?1:2;e<b.length;++e)null!==b[e].fb&&d.push(b[e].fb);k=Rc(b);e=b.length-2;m=[];l=["fn"];h&&l.push("thisWired");for(g=0;g<e;++g)m.push(`arg${g}`),l.push(`arg${g}Wired`);m=m.join(",");l=l.join(",");
m=`return function (${m}) {\n`;k&&(m+="var destructors = [];\n");var q=k?"destructors":"null",r="humanName throwBindingError invoker fn runDestructors fromRetWire toClassParamWire".split(" ");h&&(m+=`var thisWired = toClassParamWire(${q}, this);\n`);for(g=0;g<e;++g){var t=`toArg${g}Wire`;m+=`var arg${g}Wired = ${t}(${q}, arg${g});\n`;r.push(t)}m+=(c||f?"var rv = ":"")+`invoker(${l});\n`;if(k)m+="runDestructors(destructors);\n";else for(g=h?1:2;g<b.length;++g)f=1===g?"thisWired":"arg"+(g-2)+"Wired",
null!==b[g].fb&&(m+=`${f}_dtor(${f});\n`,r.push(`${f}_dtor`));c&&(m+="var ret = fromRetWire(rv);\nreturn ret;\n");b=(new Function(r,m+"}\n"))(...d);return pc(a,b)}
var Tc=(a,b)=>{for(var c=[],d=0;d<a;d++)c.push(y[b+4*d>>2]);return c},Uc=a=>{a=a.trim();const b=a.indexOf("(");return-1===b?a:a.slice(0,b)},Vc=[],Wc=[0,1,,1,null,1,!0,1,!1,1],zc=a=>{switch(a){case void 0:return 2;case null:return 4;case !0:return 6;case !1:return 8;default:const b=Vc.pop()||Wc.length;Wc[b]=a;Wc[b+1]=1;return b}},Xc={name:"emscripten::val",Za:a=>{if(!a)throw new T(`Cannot use deleted val. handle = ${a}`);var b=Wc[a];9<a&&0===--Wc[a+1]&&(Wc[a]=void 0,Vc.push(a));return b},gb:(a,b)=>
zc(b),qb:Bc,fb:null},Yc=(a,b)=>{switch(b){case 4:return function(c){return this.Za(ua[c>>2])};case 8:return function(c){return this.Za(va[c>>3])};default:throw new TypeError(`invalid float width (${b}): ${a}`);}},Zc=new TextDecoder("utf-16le"),$c=(a,b,c)=>{a>>=1;return Zc.decode(ta.subarray(a,Wa(ta,a,b/2,c)))},ad=(a,b,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)sa[b>>1]=a.charCodeAt(e),b+=2;sa[b>>1]=0;return b-d},bd=a=>2*a.length,cd=(a,b,c)=>{var d=
"";a>>=2;for(var e=0;!(e>=b/4);e++){var f=y[a+e];if(!f&&!c)break;d+=String.fromCodePoint(f)}return d},dd=(a,b,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.codePointAt(e);65535<f&&e++;w[b>>2]=f;b+=4;if(b+4>c)break}w[b>>2]=0;return b-d},ed=a=>{for(var b=0,c=0;c<a.length;++c)65535<a.codePointAt(c)&&c++,b+=4;return b},gd=0,hd={},jd=a=>{pa=a;Ha||0<gd||(n.onExit?.(a),oa=!0);fa(a,new Ca(a))},kd=()=>{if(!(Ha||0<gd))try{var a=pa;pa=a;jd(a)}catch(b){b instanceof Ca||
"unwind"==b||fa(1,b)}},ld=a=>{if(!oa)try{a(),kd()}catch(b){b instanceof Ca||"unwind"==b||fa(1,b)}},md=[],nd=(a,b)=>{md.length=0;for(var c;c=v[a++];){var d=105!=c;d&=112!=c;b+=d&&b%8?4:0;md.push(112==c?y[b>>2]:106==c?A[b>>3]:105==c?w[b>>2]:va[b>>3]);b+=d?8:4}return md},xd=(a,b)=>{od=a;pd=b;if(qd)if(rd||=!0,0==a)sd=function(){setTimeout(td,Math.max(0,ud+b-performance.now())|0)};else if(1==a)sd=function(){vd(td)};else if(2==a){if(!wd)if(globalThis.setImmediate)wd=setImmediate;else{var c=[];addEventListener("message",
d=>{if("setimmediate"===d.data||"setimmediate"===d.data.target)d.stopPropagation(),c.shift()()},!0);wd=d=>{c.push(d);ba?(n.setImmediates??(n.setImmediates=[]),n.setImmediates.push(d),postMessage({target:"setimmediate"})):postMessage("setimmediate","*")}}sd=function(){wd(td)}}},Fd=a=>{function b(){return c<yd?(kd(),!1):!0}qd=a;var c=yd;rd=!1;td=function(){if(!oa)if(0<zd.length){var d=zd.shift();d.Yc(d.Ic);if(Ad){var e=Ad,f=0==e%1?e-1:Math.floor(e);Ad=d.Pc?f:(8*e+(f+.5))/9}n.setStatus&&(d=n.statusMessage||
"Please wait...",e=Ad??0,f=Bd.Vc??0,e?e<f?n.setStatus("{message} ({expected - remaining}/{expected})"):n.setStatus(d):n.setStatus(""));b()&&setTimeout(td,0)}else if(b())if(Cd=Cd+1|0,1==od&&1<pd&&0!=Cd%pd)sd();else{0==od&&(ud=performance.now());a:if(!oa){for(d of Dd)if(!1===d())break a;ld(a);for(e of Ed)e()}b()&&sd()}}},rd=!1,sd=null,yd=0,qd=null,od=0,pd=0,Cd=0,zd=[],Dd=[],Ed=[];function Gd(){sd=null;yd++}var Hd=0;
function vd(a){if(globalThis.requestAnimationFrame)requestAnimationFrame(a);else{var b=Date.now();if(0===Hd)Hd=b+1E3/60;else for(;b+2>=Hd;)Hd+=1E3/60;setTimeout(a,Math.max(Hd-b,0))}}var Bd={},ud,td,wd,Ad;function Id(a){var b=W.bb[a];b.target.removeEventListener(b.wb,b.Zb,b.hc);W.bb.splice(a,1)}function Jd(){if(navigator.userActivation?navigator.userActivation.isActive:W.Ob&&W.mc.kc){var a=W.ob;W.ob=[];for(var b of a)b.Rb(...b.Wb)}}
function Kd(a){if(!a.target)return-4;if(a.Ib)a.Zb=function(c){++W.Ob;W.mc=a;Jd();a.qc(c);Jd();--W.Ob},a.target.addEventListener(a.wb,a.Zb,a.hc),W.bb.push(a);else for(var b=0;b<W.bb.length;++b)W.bb[b].target==a.target&&W.bb[b].wb==a.wb&&Id(b--);return 0}
var W={Jc:0,Mb:0,ad:0,ed:0,sd:0,qd:0,Wc:0,Sc:0,hd:0,Rc:0,Xc:0,jd:0,rd:0,pd:0,kd(){for(;W.bb.length;)Id(W.bb.length-1);W.ob=[]},Ob:0,ob:[],Qc(a,b,c){function d(f,g){if(f.length!=g.length)return!1;for(var h in f)if(f[h]!=g[h])return!1;return!0}for(var e of W.ob)if(e.Rb==a&&d(e.Wb,c))return;W.ob.push({Rb:a,ec:b,Wb:c});W.ob.sort((f,g)=>f.ec<g.ec)},md(a){W.ob=W.ob.filter(b=>b.Rb!=a)},bb:[],ld:(a,b)=>{for(var c=0;c<W.bb.length;++c)W.bb[c].target!=a||b&&b!=W.bb[c].wb||Id(c--)},nd(a){var b,c;for([b,c]of W.bb.entries())if(c.target===
a.target&&c.$b===a.$b&&c.Ib===a.Ib&&c.ic===a.ic)return Id(b),0;return-5},$c(a){return a?a==window?"#window":a==screen?"#screen":a?.nodeName||"":""},fullscreenEnabled(){return document.fullscreenEnabled||document.webkitFullscreenEnabled}},Ld=[0,"undefined"!=typeof document?document:0,"undefined"!=typeof window?window:0],Md=()=>{var a=2;a=2<a?R(a):a;return Ld[a]||("undefined"!=typeof document?document.querySelector(a):null)},Od=(a,b,c,d,e)=>{W.Mb||(W.Mb=Nd(1240));b={target:Md(),kc:!0,wb:e,$b:d,ic:a,
Ib:c,qc:(f=event)=>{var g=W.Mb,h=f.gamepad;va[g>>3]=h.timestamp;for(var k=0;k<h.axes.length;++k)va[g+8*k+16>>3]=h.axes[k];for(k=0;k<h.buttons.length;++k)va[g+8*k+528>>3]="object"==typeof h.buttons[k]?h.buttons[k].value:h.buttons[k];for(k=0;k<h.buttons.length;++k)u[g+k+1040]="object"==typeof h.buttons[k]?h.buttons[k].pressed:1==h.buttons[k];u[g+1104]=h.connected;w[g+1108>>2]=h.index;w[g+8>>2]=h.axes.length;w[g+12>>2]=h.buttons.length;E(h.id,v,g+1112,64);E(h.mapping,v,g+1176,64);V.get(c)(d,g,a)&&f.preventDefault()},
hc:b};return Kd(b)},Pd=()=>{try{if(navigator.getGamepads)return(W.bd=navigator.getGamepads())?0:-1}catch(a){navigator.getGamepads=null}return-1},Qd={},Sd=()=>{if(!Rd){var a={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.language||"C").replace("-","_")+".UTF-8",_:da||"./this.program"},b;for(b in Qd)void 0===Qd[b]?delete a[b]:a[b]=Qd[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);Rd=c}return Rd},Rd,Ud=(a,b,c,d)=>{var e={string:l=>
{var m=0;if(null!==l&&void 0!==l&&0!==l){m=Za(l)+1;var q=Td(m);E(l,v,q,m);m=q}return m},array:l=>{var m=Td(l.length);u.set(l,m);return m}};a=n["_"+a];var f=[],g=0;if(d)for(var h=0;h<d.length;h++){var k=e[c[h]];k?(0===g&&(g=X()),f[h]=k(d[h])):f[h]=d[h]}c=a(...f);return c=function(l){0!==g&&Y(g);return"string"===b?R(l):"boolean"===b?!!l:l}(c)},Vd=a=>{setTimeout(()=>{ld(a)},1E4)},Wd=!1,Xd=[];
function ub(){function a(){Wd=document.pointerLockElement===n.canvas}if(!Yd){Yd=!0;sb.push({canHandle:function(c){return!n.noImageDecoding&&/\.(jpg|jpeg|png|bmp|webp)$/i.test(c)},handle:async function(c,d){var e=new Blob([c],{type:Zd(d)});e.size!==c.length&&(e=new Blob([(new Uint8Array(c)).buffer],{type:Zd(d)}));var f=URL.createObjectURL(e);return new Promise((g,h)=>{var k=new Image;k.onload=()=>{var l=document.createElement("canvas");l.width=k.width;l.height=k.height;l.getContext("2d").drawImage(k,
0,0);URL.revokeObjectURL(f);g(c)};k.onerror=()=>{p(`Image ${f} could not be decoded`);h()};k.src=f})}});sb.push({canHandle:function(c){return!n.noAudioDecoding&&c.slice(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:async function(c,d){return new Promise(e=>{function f(){g||(g=!0,e(c))}var g=!1,h=new Blob([c],{type:Zd(d)});h=URL.createObjectURL(h);var k=new Audio;k.addEventListener("canplaythrough",()=>f(k),!1);k.onerror=function(){if(!g){p(`warning: browser could not fully decode audio ${d}, trying slower base64 approach`);
for(var l="data:audio/x-"+d.slice(-3)+";base64,",m="",q=0,r=0,t=0;t<c.length;t++)for(q=q<<8|c[t],r+=8;6<=r;){var x=q>>r-6&63;r-=6;m+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[x]}2==r?(m+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(q&3)<<4],m+="=="):4==r&&(m+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(q&15)<<2],m+="=");k.src=l+m;f(k)}};k.src=h;Vd(()=>{f(k)})})}});var b=n.canvas;b&&(document.addEventListener("pointerlockchange",
a,!1),n.elementPointerLock&&b.addEventListener("click",c=>{!Wd&&n.canvas.requestPointerLock&&(n.canvas.requestPointerLock(),c.preventDefault())},!1))}}function Zd(a){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[a.slice(a.lastIndexOf(".")+1)]}var tb={},Yd;M=Array(4096);Ob(H,"/");O("/tmp");O("/home");O("/home/web_user");
(function(){O("/dev");cb(259,{read:()=>0,write:(d,e,f,g)=>g,ib:()=>0});Rb("/dev/null",259);bb(1280,eb);bb(1536,fb);Rb("/dev/tty",1280);Rb("/dev/tty1",1536);var a=new Uint8Array(1024),b=0,c=()=>{0===b&&(Ta(a),b=a.byteLength);return a[--b]};P("/dev","random",c);P("/dev","urandom",c);O("/dev/shm");O("/dev/shm/tmp")})();
(function(){O("/proc");var a=O("/proc/self");O("/proc/self/fd");Ob({mb(){var b=jb(a,"fd",16895,73);b.Ra={ib:H.Ra.ib};b.Ua={lookup(c,d){c=+d;var e=N(c);c={parent:null,mb:{dc:"fake"},Ua:{readlink:()=>e.path},id:c+1};return c.parent=c},readdir(){return Array.from(yb.entries()).filter(([,c])=>c).map(([c])=>c.toString())}};return b}},"/proc/self/fd")})();
(()=>{let a=oc.prototype;Object.assign(a,{isAliasOf:function(c){if(!(this instanceof oc&&c instanceof oc))return!1;var d=this.Qa.Wa.Va,e=this.Qa.Ta;c.Qa=c.Qa;var f=c.Qa.Wa.Va;for(c=c.Qa.Ta;d.$a;)e=d.Ab(e),d=d.$a;for(;f.$a;)c=f.Ab(c),f=f.$a;return d===f&&e===c},clone:function(){this.Qa.Ta||jc(this);if(this.Qa.zb)return this.Qa.count.value+=1,this;var c=mc,d=Object,e=d.create,f=Object.getPrototypeOf(this),g=this.Qa;c=c(e.call(d,f,{Qa:{value:{count:g.count,vb:g.vb,zb:g.zb,Ta:g.Ta,Wa:g.Wa,Ya:g.Ya,eb:g.eb}}}));
c.Qa.count.value+=1;c.Qa.vb=!1;return c},["delete"](){this.Qa.Ta||jc(this);if(this.Qa.vb&&!this.Qa.zb)throw new T("Object already scheduled for deletion");lc(this);var c=this.Qa;--c.count.value;0===c.count.value&&(c.Ya?c.eb.pb(c.Ya):c.Wa.Va.pb(c.Ta));this.Qa.zb||(this.Qa.Ya=void 0,this.Qa.Ta=void 0)},isDeleted:function(){return!this.Qa.Ta},deleteLater:function(){this.Qa.Ta||jc(this);if(this.Qa.vb&&!this.Qa.zb)throw new T("Object already scheduled for deletion");nc.push(this);this.Qa.vb=!0;return this}});
const b=Symbol.dispose;b&&(a[b]=a["delete"])})();
Object.assign(Hc.prototype,{pc(a){this.fc&&(a=this.fc(a));return a},Yb(a){this.pb?.(a)},qb:Bc,Za:function(a){function b(){return this.Db?Gc(this.Va.tb,{Wa:this.Bc,Ta:c,eb:this,Ya:a}):Gc(this.Va.tb,{Wa:this,Ta:a})}var c=this.pc(a);if(!c)return this.Yb(a),null;var d=Ec(this.Va,c);if(void 0!==d){if(0===d.Qa.count.value)return d.Qa.Ta=c,d.Qa.Ya=a,d.clone();d=d.clone();this.Yb(a);return d}d=this.Va.oc(c);d=qc[d];if(!d)return b.call(this);d=this.Cb?d.lc:d.pointerType;var e=Cc(c,this.Va,d.Va);return null===
e?b.call(this):this.Db?Gc(d.Va.tb,{Wa:d,Ta:e,eb:this,Ya:a}):Gc(d.Va.tb,{Wa:d,Ta:e})}});n.requestAnimationFrame=vd;n.pauseMainLoop=Gd;n.resumeMainLoop=function(){yd++;var a=od,b=pd,c=qd;qd=null;Fd(c);xd(a,b);sd()};n.preMainLoop&&Dd.push(n.preMainLoop);n.postMainLoop&&Ed.push(n.postMainLoop);n.noExitRuntime&&(Ha=n.noExitRuntime);n.preloadPlugins&&(sb=n.preloadPlugins);n.print&&(ma=n.print);n.printErr&&(p=n.printErr);n.wasmBinary&&(na=n.wasmBinary);n.thisProgram&&(da=n.thisProgram);
if(n.preInit)for("function"==typeof n.preInit&&(n.preInit=[n.preInit]);0<n.preInit.length;)n.preInit.shift()();n.addRunDependency=rb;n.removeRunDependency=qb;n.cwrap=(a,b,c,d)=>{var e=!c||c.every(f=>"number"===f||"boolean"===f);return"string"!==b&&e&&!d?n["_"+a]:(...f)=>Ud(a,b,c,f)};
n.createContext=function(a,b,c,d){if(b&&n.ctx&&a==n.canvas)return n.ctx;var e;if(b){var f={antialias:!1,alpha:!1,cd:1};if(d)for(var g in d)f[g]=d[g];if("undefined"!=typeof GL&&(e=GL.createContext(a,f)))var h=GL.getContext(e).Hc}else h=a.getContext("2d");if(!h)return null;c&&(n.ctx=h,b&&GL.dd(e),Xd.forEach(k=>k()),ub());return h};
n.FS_preloadFile=async(a,b,c,d,e,f,g,h)=>{var k=b?Ua(Qa(a+"/"+b)):a,l=`cp ${k}`;rb(l);try{var m=c;"string"==typeof c&&(m=await nb(c));m=await vb(m,k);h?.();f||ac(a,b,m,d,e,g)}finally{qb(l)}};n.FS_unlink=(...a)=>Tb(...a);n.FS_createPath=(...a)=>Zb(...a);n.FS_createDevice=(...a)=>P(...a);n.FS_createDataFile=(...a)=>ac(...a);n.FS_createLazyFile=(...a)=>cc(...a);
var $d={764742:a=>{throw Error(R(a));},764781:a=>{throw Error(R(a));},764820:a=>{throw Error(R(a));},764859:a=>{throw Error(R(a));},764898:a=>{throw Error(R(a));},764937:a=>{throw Error(R(a));},764976:a=>{throw Error(R(a));},765015:a=>{throw Error(R(a));},765054:a=>{throw Error(R(a));},765093:a=>{throw Error(R(a));},765132:a=>{throw Error(R(a));},765171:a=>{throw Error(R(a));},765210:a=>{throw Error(R(a));},765249:a=>{throw Error(R(a));},765288:a=>{throw Error(R(a));},765327:a=>{throw Error(R(a));
},765366:a=>{throw Error(R(a));},765405:a=>{throw Error(R(a));},765444:a=>{throw Error(R(a));},765483:a=>{throw Error(R(a));},765522:a=>{throw Error(R(a));},765561:a=>{throw Error(R(a));},765600:a=>{throw Error(R(a));},765639:a=>{throw Error(R(a));},765678:a=>{throw Error(R(a));},765717:a=>{throw Error(R(a));},765756:a=>{throw Error(R(a));},765795:a=>{throw Error(R(a));},765834:a=>{throw Error(R(a));},765873:a=>{throw Error(R(a));},765912:a=>{throw Error(R(a));},765951:a=>{throw Error(R(a));},765990:a=>
{throw Error(R(a));},766029:a=>{throw Error(R(a));},766068:a=>{throw Error(R(a));},766107:a=>{throw Error(R(a));},766146:a=>{throw Error(R(a));},766185:a=>{throw Error(R(a));},766224:a=>{throw Error(R(a));},766263:a=>{throw Error(R(a));},766302:a=>{throw Error(R(a));},766341:a=>{a=R(a)+"\n\nAbort/Retry/Ignore/AlwaysIgnore? [ariA] :";a=window.prompt(a,"i");null===a&&(a="i");return 1===a.length?a.charCodeAt(0):-1}},Nd,Lc,Mc,gb,ae,Z,La,Y,Td,X,be,ce,Ma,de,ee,V,Fe={Z:(a,b)=>V.get(a)(b),l:a=>{var b=new Ka(a);
0==u[b.Ta+12]&&(u[b.Ta+12]=1,Ja--);u[b.Ta+13]=0;Ia.push(b);ce(a);return de(a)},x:()=>{Z(0,0);var a=Ia.pop();be(a.ac);C=0},a:()=>Na([]),f:a=>Na([a]),Q:()=>{var a=Ia.pop();a||B("no exception to throw");var b=a.ac;0==u[a.Ta+13]&&(Ia.push(a),u[a.Ta+13]=1,u[a.Ta+12]=0,Ja++);C=b;throw C;},r:(a,b,c)=>{var d=new Ka(a);y[d.Ta+16>>2]=0;y[d.Ta+4>>2]=b;y[d.Ta+8>>2]=c;C=a;Ja++;throw C;},ba:()=>Ja,g:a=>{C||=a;throw C;},J:function(a,b,c){Oa=c;try{var d=N(a);switch(b){case 0:var e=D();if(0>e)break;for(;yb[e];)e++;
return Mb(d,e).fd;case 1:case 2:return 0;case 3:return d.flags;case 4:return e=D(),d.flags|=e,0;case 12:return e=D(),sa[e+0>>1]=2,0;case 13:case 14:return 0}return-28}catch(f){if("undefined"==typeof Q||"ErrnoError"!==f.name)throw f;return-f.ab}},ja:function(a,b){try{var c=N(a),d=c.node,e=c.Ra.hb;a=e?c:d;e??=d.Ua.hb;if(!e)throw new G(63);var f=e(a);y[b>>2]=f.dev;y[b+4>>2]=f.mode;y[b+8>>2]=f.nlink;y[b+12>>2]=f.uid;y[b+16>>2]=f.gid;y[b+20>>2]=f.rdev;A[b+24>>3]=BigInt(f.size);w[b+32>>2]=4096;w[b+36>>
2]=f.blocks;var g=f.atime.getTime(),h=f.mtime.getTime(),k=f.ctime.getTime();A[b+40>>3]=BigInt(Math.floor(g/1E3));y[b+48>>2]=g%1E3*1E6;A[b+56>>3]=BigInt(Math.floor(h/1E3));y[b+64>>2]=h%1E3*1E6;A[b+72>>3]=BigInt(Math.floor(k/1E3));y[b+80>>2]=k%1E3*1E6;A[b+88>>3]=BigInt(f.ino);return 0}catch(l){if("undefined"==typeof Q||"ErrnoError"!==l.name)throw l;return-l.ab}},la:function(a,b,c){Oa=c;try{var d=N(a);switch(b){case 21509:return d.tty?0:-59;case 21505:if(!d.tty)return-59;if(d.tty.nb.tc){a=[3,28,127,
21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var e=D();w[e>>2]=25856;w[e+4>>2]=5;w[e+8>>2]=191;w[e+12>>2]=35387;for(var f=0;32>f;f++)u[e+f+17]=a[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.nb.uc)for(e=D(),a=[],f=0;32>f;f++)a.push(u[e+f+17]);return 0;case 21519:if(!d.tty)return-59;e=D();return w[e>>2]=0;case 21520:return d.tty?-28:-59;case 21537:case 21531:e=D();if(!d.Ra.sc)throw new G(59);return d.Ra.sc(d,
b,e);case 21523:if(!d.tty)return-59;d.tty.nb.vc&&(f=[24,80],e=D(),sa[e>>1]=f[0],sa[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.ab}},S:function(a,b,c,d){Oa=d;try{b=R(b);var e=b;if("/"===e.charAt(0))b=e;else{var f=-100===a?"/":N(a).path;if(0==e.length)throw new G(44);b=f+"/"+e}var g=d?D():0;return Vb(b,c,g).fd}catch(h){if("undefined"==typeof Q||"ErrnoError"!==h.name)throw h;
return-h.ab}},na:()=>B(""),U:(a,b,c,d,e)=>{b=S(b);d=0n===d;let f=g=>g;if(d){const g=8*c;f=h=>BigInt.asUintN(g,h);e=f(e)}U(a,{name:b,Za:f,gb:(g,h)=>{"number"==typeof h&&(h=BigInt(h));return h},qb:ic(b,c,!d),fb:null})},ya:(a,b,c,d)=>{b=S(b);U(a,{name:b,Za:function(e){return!!e},gb:function(e,f){return f?c:d},qb:function(e){return this.Za(v[e])},fb:null})},u:(a,b,c,d,e,f,g,h,k,l,m,q,r)=>{m=S(m);f=Jc(e,f);h&&=Jc(g,h);l&&=Jc(k,l);r=Jc(q,r);var t=tc(m);sc(t,function(){Oc(`Cannot construct ${m} due to unbound types`,
[d])});Pc([a,b,c],d?[d]:[],x=>{x=x[0];if(d){var z=x.Va;var I=z.tb}else I=oc.prototype;x=pc(m,function(...K){if(Object.getPrototypeOf(this)!==L)throw new T(`Use 'new' to construct ${m}`);if(void 0===F.sb)throw new T(`${m} has no accessible constructor`);var fd=F.sb[K.length];if(void 0===fd)throw new T(`Tried to invoke ctor of ${m} with invalid number of parameters (${K.length}) - expected (${Object.keys(F.sb).toString()}) parameters instead!`);return fd.apply(this,K)});var L=Object.create(I,{constructor:{value:x}});
x.prototype=L;var F=new uc(m,x,L,r,z,f,h,l);if(F.$a){var ea;(ea=F.$a).Bb??(ea.Bb=[]);F.$a.Bb.push(F)}z=new Hc(m,F,!0,!1,!1);ea=new Hc(m+"*",F,!1,!1,!1);I=new Hc(m+" const*",F,!1,!0,!1);qc[a]={pointerType:ea,lc:I};Ic(t,x);return[z,ea,I]})},C:(a,b,c,d,e,f,g,h)=>{var k=Tc(c,d);b=S(b);b=Uc(b);f=Jc(e,f);Pc([],[a],l=>{function m(){Oc(`Cannot call ${q} due to unbound types`,k)}l=l[0];var q=`${l.name}.${b}`;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);var r=l.Va.constructor;void 0===r[b]?(m.rb=c-1,r[b]=
m):(rc(r,b,q),r[b].cb[c-1]=m);Pc([],k,t=>{t=[t[0],null].concat(t.slice(1));t=Sc(q,t,null,f,g,h);void 0===r[b].cb?(t.rb=c-1,r[b]=t):r[b].cb[c-1]=t;if(l.Va.Bb)for(const x of l.Va.Bb)x.constructor.hasOwnProperty(b)||(x.constructor[b]=t);return[]});return[]})},v:(a,b,c,d,e,f)=>{var g=Tc(b,c);e=Jc(d,e);Pc([],[a],h=>{h=h[0];var k=`constructor ${h.name}`;void 0===h.Va.sb&&(h.Va.sb=[]);if(void 0!==h.Va.sb[b-1])throw new T(`Cannot register multiple constructors with identical number of parameters (${b-1}) for class '${h.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);
h.Va.sb[b-1]=()=>{Oc(`Cannot construct ${h.name} due to unbound types`,g)};Pc([],g,l=>{l.splice(1,0,null);h.Va.sb[b-1]=Sc(k,l,null,e,f);return[]});return[]})},m:(a,b,c,d,e,f,g,h,k)=>{var l=Tc(c,d);b=S(b);b=Uc(b);f=Jc(e,f);Pc([],[a],m=>{function q(){Oc(`Cannot call ${r} due to unbound types`,l)}m=m[0];var r=`${m.name}.${b}`;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);h&&m.Va.Cc.push(b);var t=m.Va.tb,x=t[b];void 0===x||void 0===x.cb&&x.className!==m.name&&x.rb===c-2?(q.rb=c-2,q.className=m.name,
t[b]=q):(rc(t,b,r),t[b].cb[c-2]=q);Pc([],l,z=>{z=Sc(r,z,m,f,g,k);void 0===t[b].cb?(z.rb=c-2,t[b]=z):t[b].cb[c-2]=z;return[]});return[]})},wa:a=>U(a,Xc),T:(a,b,c)=>{b=S(b);U(a,{name:b,Za:d=>d,gb:(d,e)=>e,qb:Yc(b,c),fb:null})},z:(a,b,c,d,e)=>{b=S(b);let f=h=>h;if(0===d){var g=32-8*c;f=h=>h<<g>>>g;e=f(e)}U(a,{name:b,Za:f,gb:(h,k)=>k,qb:ic(b,c,0!==d),fb:null})},w:(a,b,c)=>{function d(f){return new e(u.buffer,y[f+4>>2],y[f>>2])}var e=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,
Float32Array,Float64Array,BigInt64Array,BigUint64Array][b];c=S(c);U(a,{name:c,Za:d,qb:d},{rc:!0})},xa:(a,b)=>{b=S(b);U(a,{name:b,Za(c){var d=R(c+4,y[c>>2],!0);Mc(c);return d},gb(c,d){d instanceof ArrayBuffer&&(d=new Uint8Array(d));var e="string"==typeof d;if(!(e||ArrayBuffer.isView(d)&&1==d.BYTES_PER_ELEMENT))throw new T("Cannot pass non-string to std::string");var f=e?Za(d):d.length;var g=Nd(4+f+1),h=g+4;y[g>>2]=f;e?E(d,v,h,f+1):v.set(d,h);null!==c&&c.push(Mc,g);return g},qb:Bc,fb(c){Mc(c)}})},L:(a,
b,c)=>{c=S(c);if(2===b){var d=$c;var e=ad;var f=bd}else d=cd,e=dd,f=ed;U(a,{name:c,Za:g=>{var h=d(g+4,y[g>>2]*b,!0);Mc(g);return h},gb:(g,h)=>{if("string"!=typeof h)throw new T(`Cannot pass non-string to C++ string type ${c}`);var k=f(h),l=Nd(4+k+b);y[l>>2]=k/b;e(h,l+4,k+b);null!==g&&g.push(Mc,l);return l},qb:Bc,fb(g){Mc(g)}})},V:(a,b)=>{b=S(b);U(a,{yc:!0,name:b,Za:()=>{},gb:()=>{}})},va:a=>{do{var b=y[a>>2];a+=4;var c=y[a>>2];a+=4;var d=y[a>>2];a+=4;b=R(b);Zb("/",Ra(b));ac(b,null,u.subarray(d,d+
c),!0,!0,!0)}while(y[a>>2])},$:()=>{Ha=!1;gd=0},Y:()=>{throw Infinity;},da:function(a,b,c,d,e,f,g){e=-9007199254740992>e||9007199254740992<e?NaN:Number(e);try{var h=N(d);if(0!==(b&2)&&0===(c&2)&&2!==(h.flags&2097155))throw new G(2);if(1===(h.flags&2097155))throw new G(2);if(!h.Ra.xb)throw new G(43);if(!a)throw new G(28);var k=h.Ra.xb(h,a,e,b,c);var l=k.Ta;w[f>>2]=k.Vb;y[g>>2]=l;return 0}catch(m){if("undefined"==typeof Q||"ErrnoError"!==m.name)throw m;return-m.ab}},ea:function(a,b,c,d,e,f){f=-9007199254740992>
f||9007199254740992<f?NaN:Number(f);try{var g=N(e);if(c&2){c=f;if(32768!==(g.node.mode&61440))throw new G(43);if(!(d&2)){var h=v.slice(a,a+b);g.Ra.Fb&&g.Ra.Fb(g,h,c,b,d)}}}catch(k){if("undefined"==typeof Q||"ErrnoError"!==k.name)throw k;return-k.ab}},aa:(a,b)=>{hd[a]&&(clearTimeout(hd[a].id),delete hd[a]);if(!b)return 0;var c=setTimeout(()=>{delete hd[a];ld(()=>ae(a,performance.now()))},b);hd[a]={id:c,od:b};return 0},fa:(a,b,c,d)=>{var e=(new Date).getFullYear(),f=(new Date(e,0,1)).getTimezoneOffset();
e=(new Date(e,6,1)).getTimezoneOffset();y[a>>2]=60*Math.max(f,e);w[b>>2]=Number(f!=e);b=g=>{var h=Math.abs(g);return`UTC${0<=g?"-":"+"}${String(Math.floor(h/60)).padStart(2,"0")}${String(h%60).padStart(2,"0")}`};a=b(f);b=b(e);e<f?(E(a,v,c,17),E(b,v,d,17)):(E(a,v,d,17),E(b,v,c,17))},p:(a,b,c)=>{b=nd(b,c);return $d[a](...b)},sa:(a,b,c)=>{b=nd(b,c);return $d[a](...b)},ua:()=>{Gd();qd=null},ma:()=>Date.now(),ta:a=>{Ha=!1;gd=0;pa=a;jd(a)},I:()=>performance.now(),pa:()=>0,ca:()=>{B("OOM")},ra:(a,b,c)=>
Pd()?-1:Od(a,b,c,26,"gamepadconnected"),qa:(a,b,c)=>Pd()?-1:Od(a,b,c,27,"gamepaddisconnected"),oa:()=>{B("Please compile your program with async support in order to use asynchronous operations like emscripten_sleep")},ha:(a,b)=>{var c=0,d=0,e;for(e of Sd()){var f=b+c;y[a+d>>2]=f;c+=E(e,v,f,Infinity)+1;d+=4}return 0},ia:(a,b)=>{var c=Sd();y[a>>2]=c.length;a=0;for(var d of c)a+=Za(d)+1;y[b>>2]=a;return 0},K:function(a){try{var b=N(a);Wb(b);return 0}catch(c){if("undefined"==typeof Q||"ErrnoError"!==
c.name)throw c;return c.ab}},R:function(a,b,c,d){try{a:{var e=N(a);a=b;for(var f,g=b=0;g<c;g++){var h=y[a>>2],k=y[a+4>>2];a+=8;var l=e,m=h,q=k,r=f,t=u;if(0>q||0>r)throw new G(28);if(null===l.fd)throw new G(8);if(1===(l.flags&2097155))throw new G(8);if(J(l.node.mode))throw new G(31);if(!l.Ra.read)throw new G(28);var x="undefined"!=typeof r;if(!x)r=l.position;else if(!l.seekable)throw new G(70);var z=l.Ra.read(l,t,m,q,r);x||(l.position+=z);var I=z;if(0>I){var L=-1;break a}b+=I;if(I<k)break;"undefined"!=
typeof f&&(f+=I)}L=b}y[d>>2]=L;return 0}catch(F){if("undefined"==typeof Q||"ErrnoError"!==F.name)throw F;return F.ab}},ga:function(a,b,c,d){b=-9007199254740992>b||9007199254740992<b?NaN:Number(b);try{if(isNaN(b))return 61;var e=N(a);Xb(e,b,c);A[d>>3]=BigInt(e.position);e.Nb&&0===b&&0===c&&(e.Nb=null);return 0}catch(f){if("undefined"==typeof Q||"ErrnoError"!==f.name)throw f;return f.ab}},ka:function(a,b,c,d){try{a:{var e=N(a);a=b;for(var f,g=b=0;g<c;g++){var h=y[a>>2],k=y[a+4>>2];a+=8;var l=Yb(e,u,
h,k,f);if(0>l){var m=-1;break a}b+=l;if(l<k)break;"undefined"!=typeof f&&(f+=l)}m=b}y[d>>2]=m;return 0}catch(q){if("undefined"==typeof Q||"ErrnoError"!==q.name)throw q;return q.ab}},e:fe,E:ge,b:he,k:ie,i:je,W:ke,H:le,y:me,M:ne,G:oe,X:pe,O:qe,h:re,n:se,q:te,t:ue,P:ve,c:we,B:xe,d:ye,j:ze,N:Ae,s:Be,A:Ce,D:De,F:Ee,o:a=>a,_:jd};function we(a,b,c){var d=X();try{V.get(a)(b,c)}catch(e){Y(d);if(e!==e+0)throw e;Z(1,0)}}
function he(a,b,c){var d=X();try{return V.get(a)(b,c)}catch(e){Y(d);if(e!==e+0)throw e;Z(1,0)}}function ye(a,b,c,d){var e=X();try{V.get(a)(b,c,d)}catch(f){Y(e);if(f!==f+0)throw f;Z(1,0)}}function Be(a,b,c,d,e,f,g){var h=X();try{V.get(a)(b,c,d,e,f,g)}catch(k){Y(h);if(k!==k+0)throw k;Z(1,0)}}function fe(a,b){var c=X();try{return V.get(a)(b)}catch(d){Y(c);if(d!==d+0)throw d;Z(1,0)}}function ge(a,b,c){var d=X();try{return V.get(a)(b,c)}catch(e){Y(d);if(e!==e+0)throw e;Z(1,0)}}
function re(a){var b=X();try{V.get(a)()}catch(c){Y(b);if(c!==c+0)throw c;Z(1,0)}}function te(a,b,c,d,e,f,g){var h=X();try{V.get(a)(b,c,d,e,f,g)}catch(k){Y(h);if(k!==k+0)throw k;Z(1,0)}}function se(a,b){var c=X();try{V.get(a)(b)}catch(d){Y(c);if(d!==d+0)throw d;Z(1,0)}}function me(a,b,c,d,e,f,g){var h=X();try{return V.get(a)(b,c,d,e,f,g)}catch(k){Y(h);if(k!==k+0)throw k;Z(1,0)}}function ie(a,b,c,d){var e=X();try{return V.get(a)(b,c,d)}catch(f){Y(e);if(f!==f+0)throw f;Z(1,0)}}
function je(a,b,c,d,e){var f=X();try{return V.get(a)(b,c,d,e)}catch(g){Y(f);if(g!==g+0)throw g;Z(1,0)}}function ze(a,b,c,d,e){var f=X();try{V.get(a)(b,c,d,e)}catch(g){Y(f);if(g!==g+0)throw g;Z(1,0)}}function ue(a,b,c,d,e,f,g,h){var k=X();try{V.get(a)(b,c,d,e,f,g,h)}catch(l){Y(k);if(l!==l+0)throw l;Z(1,0)}}function ve(a,b,c,d){var e=X();try{V.get(a)(b,c,d)}catch(f){Y(e);if(f!==f+0)throw f;Z(1,0)}}function xe(a,b,c,d){var e=X();try{V.get(a)(b,c,d)}catch(f){Y(e);if(f!==f+0)throw f;Z(1,0)}}
function qe(a,b,c){var d=X();try{return V.get(a)(b,c)}catch(e){Y(d);if(e!==e+0)throw e;Z(1,0)}}function le(a,b,c,d,e,f){var g=X();try{return V.get(a)(b,c,d,e,f)}catch(h){Y(g);if(h!==h+0)throw h;Z(1,0)}}function Ae(a,b,c,d,e,f){var g=X();try{V.get(a)(b,c,d,e,f)}catch(h){Y(g);if(h!==h+0)throw h;Z(1,0)}}function pe(a,b,c,d,e,f){var g=X();try{return V.get(a)(b,c,d,e,f)}catch(h){Y(g);if(h!==h+0)throw h;Z(1,0)}}
function ke(a,b,c,d,e,f){var g=X();try{return V.get(a)(b,c,d,e,f)}catch(h){Y(g);if(h!==h+0)throw h;Z(1,0)}}function ne(a,b,c,d,e,f,g,h){var k=X();try{return V.get(a)(b,c,d,e,f,g,h)}catch(l){Y(k);if(l!==l+0)throw l;Z(1,0)}}function Ce(a,b,c,d,e,f,g,h){var k=X();try{V.get(a)(b,c,d,e,f,g,h)}catch(l){Y(k);if(l!==l+0)throw l;Z(1,0)}}function oe(a,b,c,d,e,f,g,h,k,l,m,q){var r=X();try{return V.get(a)(b,c,d,e,f,g,h,k,l,m,q)}catch(t){Y(r);if(t!==t+0)throw t;Z(1,0)}}
function De(a,b,c,d,e,f,g,h,k,l,m){var q=X();try{V.get(a)(b,c,d,e,f,g,h,k,l,m)}catch(r){Y(q);if(r!==r+0)throw r;Z(1,0)}}function Ee(a,b,c,d,e,f,g,h,k,l,m,q,r,t,x,z){var I=X();try{V.get(a)(b,c,d,e,f,g,h,k,l,m,q,r,t,x,z)}catch(L){Y(I);if(L!==L+0)throw L;Z(1,0)}}
function Ge(){function a(){n.calledRun=!0;if(!oa){xa=!0;if(!n.noFSInit&&!Ab){var b,c;Ab=!0;b??=n.stdin;c??=n.stdout;d??=n.stderr;b?P("/dev","stdin",b):Sb("/dev/tty","/dev/stdin");c?P("/dev","stdout",null,c):Sb("/dev/tty","/dev/stdout");d?P("/dev","stderr",null,d):Sb("/dev/tty1","/dev/stderr");Vb("/dev/stdin",0);Vb("/dev/stdout",1);Vb("/dev/stderr",1)}He.Aa();Bb=!1;qa?.(n);n.onRuntimeInitialized?.();if(n.postRun)for("function"==typeof n.postRun&&(n.postRun=[n.postRun]);n.postRun.length;){var d=n.postRun.shift();
Ea.push(d)}Da(Ea)}}if(0<ob)pb=Ge;else{if(n.preRun)for("function"==typeof n.preRun&&(n.preRun=[n.preRun]);n.preRun.length;)Ga();Da(Fa);0<ob?pb=Ge:n.setStatus?(n.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>n.setStatus(""),1);a()},1)):a()}}var He;
He=await (async function(){function a(c){c=He=c.exports;Nd=c.Ba;Lc=c.Ca;Mc=c.Da;gb=c.Fa;ae=c.Ga;Z=c.Ha;La=c.Ia;Y=c.Ja;Td=c.Ka;X=c.La;be=c.Ma;ce=c.Na;Ma=c.Oa;de=c.Pa;ee=c.za;V=c.Ea;c=ee.buffer;u=new Int8Array(c);sa=new Int16Array(c);v=new Uint8Array(c);ta=new Uint16Array(c);w=new Int32Array(c);y=new Uint32Array(c);ua=new Float32Array(c);va=new Float64Array(c);A=new BigInt64Array(c);wa=new BigUint64Array(c);return He}var b={a:Fe};if(n.instantiateWasm)return new Promise(c=>{n.instantiateWasm(b,
(d,e)=>{c(a(d,e))})});ya??=n.locateFile?n.locateFile?n.locateFile("barcode.wasm",ia):ia+"barcode.wasm":(new URL("barcode.wasm",import.meta.url)).href;return a((await Ba(b)).instance)}());Ge();xa?moduleRtn=n:moduleRtn=new Promise((a,b)=>{qa=a;ra=b});
;return moduleRtn}export default Module;
