function Fa(){var a=e.preRun.shift();Ca.unshift(a)}var F=0,Ga=null,Ha=null;function Ia(){F++;e.monitorRunDependencies&&e.monitorRunDependencies(F)}function Ja(){F--;e.monitorRunDependencies&&e.monitorRunDependencies(F);if(0==F&&(null!==Ga&&(clearInterval(Ga),Ga=null),Ha)){var a=Ha;Ha=null;a()}}function x(a){if(e.onAbort)e.onAbort(a);a="Aborted("+a+")";r(a);qa=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");ba(a);throw a;}var Ka;Ka="comm-query-executor.wasm";
function Ma(a){var b=Ka;try{a:{try{if(b==Ka&&oa){var c=new Uint8Array(oa);break a}if(ka){c=ka(b);break a}throw"sync fetching of the wasm failed: you can preload it to Module['wasmBinary'] manually, or emcc.py will do that for you when generating HTML (but not JS)";}catch(g){x(g)}c=void 0}var d=new WebAssembly.Module(c);var f=new WebAssembly.Instance(d,a)}catch(g){throw a=g.toString(),r("failed to compile wasm module: "+a),(a.includes("imported Memory")||a.includes("memory import"))&&r("Memory size incompatibility issues may be due to changing INITIAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set INITIAL_MEMORY at runtime to something smaller than it was at compile time)."),
function N(){for(var a="",b=!1,c=arguments.length-1;-1<=c&&!b;c--){b=0<=c?arguments[c]:O.cwd();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=Qa(a.split("/").filter(d=>!!d),!b).join("/");return(b?"/":"")+a||"."}
-var Ya={open:function(a){var b=Wa[a.node.rdev];if(!b)throw new O.oa(43);a.tty=b;a.seekable=!1},close:function(a){a.tty.gb.flush(a.tty)},flush:function(a){a.tty.gb.flush(a.tty)},read:function(a,b,c,d){if(!a.tty||!a.tty.gb.lc)throw new O.oa(60);for(var f=0,g=0;g<d;g++){try{var k=a.tty.gb.lc(a.tty)}catch(h){throw new O.oa(29);}if(void 0===k&&0===f)throw new O.oa(6);if(null===k||void 0===k)break;f++;b[c+g]=k}f&&(a.node.timestamp=Date.now());return f},write:function(a,b,c,d){if(!a.tty||!a.tty.gb.Qb)throw new O.oa(60);
+var Ya={open:function(a){var b=Wa[a.node.rdev];if(!b)throw new O.qa(43);a.tty=b;a.seekable=!1},close:function(a){a.tty.ib.flush(a.tty)},flush:function(a){a.tty.ib.flush(a.tty)},read:function(a,b,c,d){if(!a.tty||!a.tty.ib.nc)throw new O.qa(60);for(var f=0,g=0;g<d;g++){try{var k=a.tty.ib.nc(a.tty)}catch(h){throw new O.qa(29);}if(void 0===k&&0===f)throw new O.qa(6);if(null===k||void 0===k)break;f++;b[c+g]=k}f&&(a.node.timestamp=Date.now());return f},write:function(a,b,c,d){if(!a.tty||!a.tty.ib.Rb)throw new O.qa(60);
function ab(a){a=65536*Math.ceil(a/65536);var b=bb(65536,a);if(!b)return 0;z.fill(0,b,b+a);return b}
-var P={La:null,ya:function(){return P.createNode(null,"/",16895,0)},createNode:function(a,b,c,d){if(O.Sc(c)||O.isFIFO(c))throw new O.oa(63);P.La||(P.La={dir:{node:{Ia:P.qa.Ia,Ba:P.qa.Ba,lookup:P.qa.lookup,Pa:P.qa.Pa,rename:P.qa.rename,unlink:P.qa.unlink,rmdir:P.qa.rmdir,readdir:P.qa.readdir,symlink:P.qa.symlink},stream:{Ja:P.sa.Ja}},file:{node:{Ia:P.qa.Ia,Ba:P.qa.Ba},stream:{Ja:P.sa.Ja,read:P.sa.read,write:P.sa.write,ib:P.sa.ib,Xa:P.sa.Xa,fb:P.sa.fb}},link:{node:{Ia:P.qa.Ia,Ba:P.qa.Ba,readlink:P.qa.readlink},
-O.eb(a.mode)?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.yc=4096;b.blocks=Math.ceil(b.size/b.yc);return b},Ba:function(a,b){void 0!==b.mode&&(a.mode=b.mode);void 0!==b.timestamp&&(a.timestamp=b.timestamp);void 0!==b.size&&P.jd(a,b.size)},lookup:function(){throw O.Fb[44];},Pa:function(a,b,c,d){return P.createNode(a,b,c,d)},rename:function(a,b,c){if(O.Aa(a.mode)){try{var d=O.Oa(b,c)}catch(g){}if(d)for(var f in d.ra)throw new O.oa(55);
-}delete a.parent.ra[a.name];a.parent.timestamp=Date.now();a.name=c;b.ra[c]=a;b.timestamp=a.parent.timestamp;a.parent=b},unlink:function(a,b){delete a.ra[b];a.timestamp=Date.now()},rmdir:function(a,b){var c=O.Oa(a,b),d;for(d in c.ra)throw new O.oa(55);delete a.ra[b];a.timestamp=Date.now()},readdir:function(a){var b=[".",".."],c;for(c in a.ra)a.ra.hasOwnProperty(c)&&b.push(c);return b},symlink:function(a,b,c){a=P.createNode(a,b,41471,0);a.link=c;return a},readlink:function(a){if(!O.eb(a.mode))throw new O.oa(28);
-d);if(a.ra.subarray&&b.subarray)a.ra.set(b.subarray(c,c+d),f);else for(g=0;g<d;g++)a.ra[f+g]=b[c+g];a.xa=Math.max(a.xa,f+d);return d},Ja:function(a,b,c){1===c?b+=a.position:2===c&&O.isFile(a.node.mode)&&(b+=a.node.xa);if(0>b)throw new O.oa(28);return b},ib:function(a,b,c){P.ic(a.node,b+c);a.node.xa=Math.max(a.node.xa,b+c)},Xa:function(a,b,c,d,f){if(!O.isFile(a.node.mode))throw new O.oa(43);a=a.node.ra;if(f&2||a.buffer!==va){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=ab(b);if(!b)throw new O.oa(48);A.set(a,b)}else c=!1,b=a.byteOffset;return{ta:b,Xb:c}},fb:function(a,b,c,d,f){if(!O.isFile(a.node.mode))throw new O.oa(43);if(f&2)return 0;P.sa.write(a,b,0,d,c,!1);return 0}}};function cb(a,b,c){var d="al "+a;ja(a,f=>{f||x('Loading data file "'+a+'" failed (no arrayBuffer).');b(new Uint8Array(f));d&&Ja(d)},()=>{if(c)c();else throw'Loading data file "'+a+'" failed.';});d&&Ia(d)}
-var O={root:null,mb:[],fc:{},streams:[],Xc:1,Ka:null,dc:"/",Jb:!1,pc:!0,oa:null,Fb:{},Lc:null,xb:0,wa:(a,b={})=>{a=N(O.cwd(),a);if(!a)return{path:"",node:null};b=Object.assign({Db:!0,Sb:0},b);if(8<b.Sb)throw new O.oa(32);a=Qa(a.split("/").filter(k=>!!k),!1);for(var c=O.root,d="/",f=0;f<a.length;f++){var g=f===a.length-1;if(g&&b.parent)break;c=O.Oa(c,a[f]);d=K(d+"/"+a[f]);O.Va(c)&&(!g||g&&b.Db)&&(c=c.lb.root);if(!g||b.Da)for(g=0;O.eb(c.mode);)if(c=O.readlink(d),d=N(Ra(d),c),c=O.wa(d,{Sb:b.Sb+1}).node,
-40<g++)throw new O.oa(32);}return{path:d,node:c}},Ra:a=>{for(var b;;){if(O.tb(a))return a=a.ya.rc,b?"/"!==a[a.length-1]?a+"/"+b:a+b:a;b=b?a.name+"/"+b:a.name;a=a.parent}},Ib:(a,b)=>{for(var c=0,d=0;d<b.length;d++)c=(c<<5)-c+b.charCodeAt(d)|0;return(a+c>>>0)%O.Ka.length},nc:a=>{var b=O.Ib(a.parent.id,a.name);a.Ya=O.Ka[b];O.Ka[b]=a},oc:a=>{var b=O.Ib(a.parent.id,a.name);if(O.Ka[b]===a)O.Ka[b]=a.Ya;else for(b=O.Ka[b];b;){if(b.Ya===a){b.Ya=a.Ya;break}b=b.Ya}},Oa:(a,b)=>{var c=O.Uc(a);if(c)throw new O.oa(c,
-f.length&&c(null)}"function"==typeof a&&(b=a,a=!1);O.xb++;1<O.xb&&r("warning: "+O.xb+" FS.syncfs operations in flight at once, probably just doing extra work");var f=O.kc(O.root.ya),g=0;f.forEach(k=>{if(!k.type.tc)return d(null);k.type.tc(k,a,d)})},ya:(a,b,c)=>{var d="/"===c,f=!c;if(d&&O.root)throw new O.oa(10);if(!d&&!f){var g=O.wa(c,{Db:!1});c=g.path;g=g.node;if(O.Va(g))throw new O.oa(10);if(!O.Aa(g.mode))throw new O.oa(54);}b={type:a,Dd:b,rc:c,mb:[]};a=a.ya(b);a.ya=b;b.root=a;d?O.root=a:g&&(g.lb=
-b,g.ya&&g.ya.mb.push(b));return a},Hd:a=>{a=O.wa(a,{Db:!1});if(!O.Va(a.node))throw new O.oa(28);a=a.node;var b=a.lb,c=O.kc(b);Object.keys(O.Ka).forEach(d=>{for(d=O.Ka[d];d;){var f=d.Ya;c.includes(d.ya)&&O.Cb(d);d=f}});a.lb=null;a.ya.mb.splice(a.ya.mb.indexOf(b),1)},lookup:(a,b)=>a.qa.lookup(a,b),Pa:(a,b,c)=>{var d=O.wa(a,{parent:!0}).node;a=M(a);if(!a||"."===a||".."===a)throw new O.oa(28);var f=O.Ob(d,a);if(f)throw new O.oa(f);if(!d.qa.Pa)throw new O.oa(63);return d.qa.Pa(d,a,b,c)},create:(a,b)=>
-O.Pa(a,(void 0!==b?b:438)&4095|32768,0),mkdir:(a,b)=>O.Pa(a,(void 0!==b?b:511)&1023|16384,0),Bd:(a,b)=>{a=a.split("/");for(var c="",d=0;d<a.length;++d)if(a[d]){c+="/"+a[d];try{O.mkdir(c,b)}catch(f){if(20!=f.ua)throw f;}}},wb:(a,b,c)=>{"undefined"==typeof c&&(c=b,b=438);return O.Pa(a,b|8192,c)},symlink:(a,b)=>{if(!N(a))throw new O.oa(44);var c=O.wa(b,{parent:!0}).node;if(!c)throw new O.oa(44);b=M(b);var d=O.Ob(c,b);if(d)throw new O.oa(d);if(!c.qa.symlink)throw new O.oa(63);return c.qa.symlink(c,b,
-a)},rename:(a,b)=>{var c=Ra(a),d=Ra(b),f=M(a),g=M(b);var k=O.wa(a,{parent:!0});var h=k.node;k=O.wa(b,{parent:!0});k=k.node;if(!h||!k)throw new O.oa(44);if(h.ya!==k.ya)throw new O.oa(75);var n=O.Oa(h,f);a=Ua(a,d);if("."!==a.charAt(0))throw new O.oa(28);a=Ua(b,c);if("."!==a.charAt(0))throw new O.oa(55);try{var q=O.Oa(k,g)}catch(p){}if(n!==q){b=O.Aa(n.mode);if(f=O.vb(h,f,b))throw new O.oa(f);if(f=q?O.vb(k,g,b):O.Ob(k,g))throw new O.oa(f);if(!h.qa.rename)throw new O.oa(63);if(O.Va(n)||q&&O.Va(q))throw new O.oa(10);
-if(k!==h&&(f=O.Ta(h,"w")))throw new O.oa(f);O.oc(n);try{h.qa.rename(n,k,g)}catch(p){throw p;}finally{O.nc(n)}}},rmdir:a=>{var b=O.wa(a,{parent:!0}).node;a=M(a);var c=O.Oa(b,a),d=O.vb(b,a,!0);if(d)throw new O.oa(d);if(!b.qa.rmdir)throw new O.oa(63);if(O.Va(c))throw new O.oa(10);b.qa.rmdir(b,a);O.Cb(c)},readdir:a=>{a=O.wa(a,{Da:!0}).node;if(!a.qa.readdir)throw new O.oa(54);return a.qa.readdir(a)},unlink:a=>{var b=O.wa(a,{parent:!0}).node;if(!b)throw new O.oa(44);a=M(a);var c=O.Oa(b,a),d=O.vb(b,a,!1);
-if(d)throw new O.oa(d);if(!b.qa.unlink)throw new O.oa(63);if(O.Va(c))throw new O.oa(10);b.qa.unlink(b,a);O.Cb(c)},readlink:a=>{a=O.wa(a).node;if(!a)throw new O.oa(44);if(!a.qa.readlink)throw new O.oa(28);return N(O.Ra(a.parent),a.qa.readlink(a))},stat:(a,b)=>{a=O.wa(a,{Da:!b}).node;if(!a)throw new O.oa(44);if(!a.qa.Ia)throw new O.oa(63);return a.qa.Ia(a)},lstat:a=>O.stat(a,!0),chmod:(a,b,c)=>{a="string"==typeof a?O.wa(a,{Da:!c}).node:a;if(!a.qa.Ba)throw new O.oa(63);a.qa.Ba(a,{mode:b&4095|a.mode&
--4096,timestamp:Date.now()})},lchmod:(a,b)=>{O.chmod(a,b,!0)},fchmod:(a,b)=>{a=O.Sa(a);if(!a)throw new O.oa(8);O.chmod(a.node,b)},chown:(a,b,c,d)=>{a="string"==typeof a?O.wa(a,{Da:!d}).node:a;if(!a.qa.Ba)throw new O.oa(63);a.qa.Ba(a,{timestamp:Date.now()})},lchown:(a,b,c)=>{O.chown(a,b,c,!0)},fchown:(a,b,c)=>{a=O.Sa(a);if(!a)throw new O.oa(8);O.chown(a.node,b,c)},truncate:(a,b)=>{if(0>b)throw new O.oa(28);a="string"==typeof a?O.wa(a,{Da:!0}).node:a;if(!a.qa.Ba)throw new O.oa(63);if(O.Aa(a.mode))throw new O.oa(31);
-if(!O.isFile(a.mode))throw new O.oa(28);var c=O.Ta(a,"w");if(c)throw new O.oa(c);a.qa.Ba(a,{size:b,timestamp:Date.now()})},Nc:(a,b)=>{a=O.Sa(a);if(!a)throw new O.oa(8);if(0===(a.flags&2097155))throw new O.oa(28);O.truncate(a.node,b)},ud:(a,b,c)=>{a=O.wa(a,{Da:!0}).node;a.qa.Ba(a,{timestamp:Math.max(b,c)})},open:(a,b,c)=>{if(""===a)throw new O.oa(44);b="string"==typeof b?O.Wc(b):b;c=b&64?("undefined"==typeof c?438:c)&4095|32768:0;if("object"==typeof a)var d=a;else{a=K(a);try{d=O.wa(a,{Da:!(b&131072)}).node}catch(g){}}var f=
-!1;if(b&64)if(d){if(b&128)throw new O.oa(20);}else d=O.Pa(a,c,0),f=!0;if(!d)throw new O.oa(44);O.rb(d.mode)&&(b&=-513);if(b&65536&&!O.Aa(d.mode))throw new O.oa(54);if(!f&&(c=O.Vc(d,b)))throw new O.oa(c);b&512&&!f&&O.truncate(d,0);b&=-131713;d=O.cc({node:d,path:O.Ra(d),flags:b,seekable:!0,position:0,sa:d.sa,td:[],error:!1});d.sa.open&&d.sa.open(d);!e.logReadFiles||b&1||(O.Rb||(O.Rb={}),a in O.Rb||(O.Rb[a]=1));return d},close:a=>{if(O.kb(a))throw new O.oa(8);a.Hb&&(a.Hb=null);try{a.sa.close&&a.sa.close(a)}catch(b){throw b;
-}finally{O.Cc(a.fd)}a.fd=null},kb:a=>null===a.fd,Ja:(a,b,c)=>{if(O.kb(a))throw new O.oa(8);if(!a.seekable||!a.sa.Ja)throw new O.oa(70);if(0!=c&&1!=c&&2!=c)throw new O.oa(28);a.position=a.sa.Ja(a,b,c);a.td=[];return a.position},read:(a,b,c,d,f)=>{if(0>d||0>f)throw new O.oa(28);if(O.kb(a))throw new O.oa(8);if(1===(a.flags&2097155))throw new O.oa(8);if(O.Aa(a.node.mode))throw new O.oa(31);if(!a.sa.read)throw new O.oa(28);var g="undefined"!=typeof f;if(!g)f=a.position;else if(!a.seekable)throw new O.oa(70);
-b=a.sa.read(a,b,c,d,f);g||(a.position+=b);return b},write:(a,b,c,d,f,g)=>{if(0>d||0>f)throw new O.oa(28);if(O.kb(a))throw new O.oa(8);if(0===(a.flags&2097155))throw new O.oa(8);if(O.Aa(a.node.mode))throw new O.oa(31);if(!a.sa.write)throw new O.oa(28);a.seekable&&a.flags&1024&&O.Ja(a,0,2);var k="undefined"!=typeof f;if(!k)f=a.position;else if(!a.seekable)throw new O.oa(70);b=a.sa.write(a,b,c,d,f,g);k||(a.position+=b);return b},ib:(a,b,c)=>{if(O.kb(a))throw new O.oa(8);if(0>b||0>=c)throw new O.oa(28);
-if(0===(a.flags&2097155))throw new O.oa(8);if(!O.isFile(a.node.mode)&&!O.Aa(a.node.mode))throw new O.oa(43);if(!a.sa.ib)throw new O.oa(138);a.sa.ib(a,b,c)},Xa:(a,b,c,d,f)=>{if(0!==(d&2)&&0===(f&2)&&2!==(a.flags&2097155))throw new O.oa(2);if(1===(a.flags&2097155))throw new O.oa(2);if(!a.sa.Xa)throw new O.oa(43);return a.sa.Xa(a,b,c,d,f)},fb:(a,b,c,d,f)=>a&&a.sa.fb?a.sa.fb(a,b,c,d,f):0,Cd:()=>0,qc:(a,b,c)=>{if(!a.sa.qc)throw new O.oa(59);return a.sa.qc(a,b,c)},readFile:(a,b={})=>{b.flags=b.flags||0;
-b,0,b.byteLength,void 0,c.Ac);else throw Error("Unsupported data type");O.close(a)},cwd:()=>O.dc,chdir:a=>{a=O.wa(a,{Da:!0});if(null===a.node)throw new O.oa(44);if(!O.Aa(a.node.mode))throw new O.oa(54);var b=O.Ta(a.node,"x");if(b)throw new O.oa(b);O.dc=a.path},Fc:()=>{O.mkdir("/tmp");O.mkdir("/home");O.mkdir("/home/web_user")},Ec:()=>{O.mkdir("/dev");O.Tb(O.Wa(1,3),{read:()=>0,write:(b,c,d,f)=>f});O.wb("/dev/null",O.Wa(1,3));Xa(O.Wa(5,0),Za);Xa(O.Wa(6,0),$a);O.wb("/dev/tty",O.Wa(5,0));O.wb("/dev/tty1",
-O.Wa(6,0));var a=Ta();O.Ha("/dev","random",a);O.Ha("/dev","urandom",a);O.mkdir("/dev/shm");O.mkdir("/dev/shm/tmp")},Hc:()=>{O.mkdir("/proc");var a=O.mkdir("/proc/self");O.mkdir("/proc/self/fd");O.ya({ya:()=>{var b=O.createNode(a,"fd",16895,73);b.qa={lookup:(c,d)=>{var f=O.Sa(+d);if(!f)throw new O.oa(8);c={parent:null,ya:{rc:"fake"},qa:{readlink:()=>f.path}};return c.parent=c}};return b}},{},"/proc/self/fd")},Ic:()=>{e.stdin?O.Ha("/dev","stdin",e.stdin):O.symlink("/dev/tty","/dev/stdin");e.stdout?
-O.Ha("/dev","stdout",null,e.stdout):O.symlink("/dev/tty","/dev/stdout");e.stderr?O.Ha("/dev","stderr",null,e.stderr):O.symlink("/dev/tty1","/dev/stderr");O.open("/dev/stdin",0);O.open("/dev/stdout",1);O.open("/dev/stderr",1)},hc:()=>{O.oa||(O.oa=function(a,b){this.node=b;this.ld=function(c){this.ua=c};this.ld(a);this.message="FS error"},O.oa.prototype=Error(),O.oa.prototype.constructor=O.oa,[44].forEach(a=>{O.Fb[a]=new O.oa(a);O.Fb[a].stack="<generic error, no stack>"}))},nd:()=>{O.hc();O.Ka=Array(4096);
-K(a+"/"+b):a);a=O.Gb(d,f);k=O.create(k,a);if(c){if("string"==typeof c){b=Array(c.length);d=0;for(f=c.length;d<f;++d)b[d]=c.charCodeAt(d);c=b}O.chmod(k,a|146);b=O.open(k,577);O.write(b,c,0,c.length,0,g);O.close(b);O.chmod(k,a)}return k},Ha:(a,b,c,d)=>{a=Sa("string"==typeof a?a:O.Ra(a),b);b=O.Gb(!!c,!!d);O.Ha.Nb||(O.Ha.Nb=64);var f=O.Wa(O.Ha.Nb++,0);O.Tb(f,{open:g=>{g.seekable=!1},close:()=>{d&&d.buffer&&d.buffer.length&&d(10)},read:(g,k,h,n)=>{for(var q=0,p=0;p<n;p++){try{var t=c()}catch(w){throw new O.oa(29);
-}if(void 0===t&&0===q)throw new O.oa(6);if(null===t||void 0===t)break;q++;k[h+p]=t}q&&(g.node.timestamp=Date.now());return q},write:(g,k,h,n)=>{for(var q=0;q<n;q++)try{d(k[h+q])}catch(p){throw new O.oa(29);}n&&(g.node.timestamp=Date.now());return q}});return O.wb(a,b,f)},Eb:a=>{if(a.Kb||a.Tc||a.link||a.ra)return!0;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(ia)try{a.ra=Va(ia(a.url),!0),a.xa=a.ra.length}catch(b){throw new O.oa(29);}else throw Error("Cannot load without read() or XMLHttpRequest.");},$b:(a,b,c,d,f)=>{function g(){this.Mb=!1;this.Ea=[]}function k(p,t,w,l,u){p=p.node.ra;if(u>=p.length)return 0;l=Math.min(p.length-u,l);if(p.slice)for(var v=0;v<l;v++)t[w+v]=p[u+v];else for(v=0;v<l;v++)t[w+v]=p.get(u+v);return l}g.prototype.get=function(p){if(!(p>this.length-1||0>p)){var t=p%this.chunkSize;return this.mc(p/this.chunkSize|0)[t]}};g.prototype.Pb=
-v.Ea;if(L>I)throw Error("invalid range ("+L+", "+I+") or no bytes requested!");if(I>t-1)throw Error("only "+t+" bytes available! programmer error!");var G=new XMLHttpRequest;G.open("GET",c,!1);t!==u&&G.setRequestHeader("Range","bytes="+L+"-"+I);G.responseType="arraybuffer";G.overrideMimeType&&G.overrideMimeType("text/plain; charset=x-user-defined");G.send(null);if(!(200<=G.status&&300>G.status||304===G.status))throw Error("Couldn't load "+c+". Status: "+G.status);L=void 0!==G.response?new Uint8Array(G.response||
-[]):Va(G.responseText||"",!0);Ba[B]=L}if("undefined"==typeof v.Ea[B])throw Error("doXHR failed!");return v.Ea[B]});if(p||!t)u=t=1,u=t=this.mc(0).length,na("LazyFiles on gzip forces download of the whole file when length is accessed");this.xc=t;this.wc=u;this.Mb=!0};if("undefined"!=typeof XMLHttpRequest){if(!fa)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var h=new g;Object.defineProperties(h,{length:{get:function(){this.Mb||
+var P={Na:null,Aa:function(){return P.createNode(null,"/",16895,0)},createNode:function(a,b,c,d){if(O.Uc(c)||O.isFIFO(c))throw new O.qa(63);P.Na||(P.Na={dir:{node:{Ka:P.sa.Ka,Da:P.sa.Da,lookup:P.sa.lookup,Ra:P.sa.Ra,rename:P.sa.rename,unlink:P.sa.unlink,rmdir:P.sa.rmdir,readdir:P.sa.readdir,symlink:P.sa.symlink},stream:{La:P.ua.La}},file:{node:{Ka:P.sa.Ka,Da:P.sa.Da},stream:{La:P.ua.La,read:P.ua.read,write:P.ua.write,kb:P.ua.kb,Za:P.ua.Za,hb:P.ua.hb}},link:{node:{Ka:P.sa.Ka,Da:P.sa.Da,readlink:P.sa.readlink},
+O.gb(a.mode)?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.Ac=4096;b.blocks=Math.ceil(b.size/b.Ac);return b},Da:function(a,b){void 0!==b.mode&&(a.mode=b.mode);void 0!==b.timestamp&&(a.timestamp=b.timestamp);void 0!==b.size&&P.jd(a,b.size)},lookup:function(){throw O.Hb[44];},Ra:function(a,b,c,d){return P.createNode(a,b,c,d)},rename:function(a,b,c){if(O.Ca(a.mode)){try{var d=O.Qa(b,c)}catch(g){}if(d)for(var f in d.ta)throw new O.qa(55);
+}delete a.parent.ta[a.name];a.parent.timestamp=Date.now();a.name=c;b.ta[c]=a;b.timestamp=a.parent.timestamp;a.parent=b},unlink:function(a,b){delete a.ta[b];a.timestamp=Date.now()},rmdir:function(a,b){var c=O.Qa(a,b),d;for(d in c.ta)throw new O.qa(55);delete a.ta[b];a.timestamp=Date.now()},readdir:function(a){var b=[".",".."],c;for(c in a.ta)a.ta.hasOwnProperty(c)&&b.push(c);return b},symlink:function(a,b,c){a=P.createNode(a,b,41471,0);a.link=c;return a},readlink:function(a){if(!O.gb(a.mode))throw new O.qa(28);
+d);if(a.ta.subarray&&b.subarray)a.ta.set(b.subarray(c,c+d),f);else for(g=0;g<d;g++)a.ta[f+g]=b[c+g];a.za=Math.max(a.za,f+d);return d},La:function(a,b,c){1===c?b+=a.position:2===c&&O.isFile(a.node.mode)&&(b+=a.node.za);if(0>b)throw new O.qa(28);return b},kb:function(a,b,c){P.kc(a.node,b+c);a.node.za=Math.max(a.node.za,b+c)},Za:function(a,b,c,d,f){if(!O.isFile(a.node.mode))throw new O.qa(43);a=a.node.ta;if(f&2||a.buffer!==va){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=ab(b);if(!b)throw new O.qa(48);A.set(a,b)}else c=!1,b=a.byteOffset;return{va:b,Zb:c}},hb:function(a,b,c,d,f){if(!O.isFile(a.node.mode))throw new O.qa(43);if(f&2)return 0;P.ua.write(a,b,0,d,c,!1);return 0}}};function cb(a,b,c){var d="al "+a;ja(a,f=>{f||x('Loading data file "'+a+'" failed (no arrayBuffer).');b(new Uint8Array(f));d&&Ja(d)},()=>{if(c)c();else throw'Loading data file "'+a+'" failed.';});d&&Ia(d)}
+var O={root:null,ob:[],ic:{},streams:[],Zc:1,Ma:null,fc:"/",Lb:!1,rc:!0,qa:null,Hb:{},Nc:null,zb:0,ya:(a,b={})=>{a=N(O.cwd(),a);if(!a)return{path:"",node:null};b=Object.assign({Fb:!0,Ub:0},b);if(8<b.Ub)throw new O.qa(32);a=Qa(a.split("/").filter(k=>!!k),!1);for(var c=O.root,d="/",f=0;f<a.length;f++){var g=f===a.length-1;if(g&&b.parent)break;c=O.Qa(c,a[f]);d=K(d+"/"+a[f]);O.Xa(c)&&(!g||g&&b.Fb)&&(c=c.nb.root);if(!g||b.Fa)for(g=0;O.gb(c.mode);)if(c=O.readlink(d),d=N(Ra(d),c),c=O.ya(d,{Ub:b.Ub+1}).node,
+40<g++)throw new O.qa(32);}return{path:d,node:c}},Ta:a=>{for(var b;;){if(O.vb(a))return a=a.Aa.tc,b?"/"!==a[a.length-1]?a+"/"+b:a+b:a;b=b?a.name+"/"+b:a.name;a=a.parent}},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)%O.Ma.length},pc:a=>{var b=O.Kb(a.parent.id,a.name);a.$a=O.Ma[b];O.Ma[b]=a},qc:a=>{var b=O.Kb(a.parent.id,a.name);if(O.Ma[b]===a)O.Ma[b]=a.$a;else for(b=O.Ma[b];b;){if(b.$a===a){b.$a=a.$a;break}b=b.$a}},Qa:(a,b)=>{var c=O.Wc(a);if(c)throw new O.qa(c,
+f.length&&c(null)}"function"==typeof a&&(b=a,a=!1);O.zb++;1<O.zb&&r("warning: "+O.zb+" FS.syncfs operations in flight at once, probably just doing extra work");var f=O.mc(O.root.Aa),g=0;f.forEach(k=>{if(!k.type.vc)return d(null);k.type.vc(k,a,d)})},Aa:(a,b,c)=>{var d="/"===c,f=!c;if(d&&O.root)throw new O.qa(10);if(!d&&!f){var g=O.ya(c,{Fb:!1});c=g.path;g=g.node;if(O.Xa(g))throw new O.qa(10);if(!O.Ca(g.mode))throw new O.qa(54);}b={type:a,Fd:b,tc:c,ob:[]};a=a.Aa(b);a.Aa=b;b.root=a;d?O.root=a:g&&(g.nb=
+b,g.Aa&&g.Aa.ob.push(b));return a},Jd:a=>{a=O.ya(a,{Fb:!1});if(!O.Xa(a.node))throw new O.qa(28);a=a.node;var b=a.nb,c=O.mc(b);Object.keys(O.Ma).forEach(d=>{for(d=O.Ma[d];d;){var f=d.$a;c.includes(d.Aa)&&O.Eb(d);d=f}});a.nb=null;a.Aa.ob.splice(a.Aa.ob.indexOf(b),1)},lookup:(a,b)=>a.sa.lookup(a,b),Ra:(a,b,c)=>{var d=O.ya(a,{parent:!0}).node;a=M(a);if(!a||"."===a||".."===a)throw new O.qa(28);var f=O.Qb(d,a);if(f)throw new O.qa(f);if(!d.sa.Ra)throw new O.qa(63);return d.sa.Ra(d,a,b,c)},create:(a,b)=>
+O.Ra(a,(void 0!==b?b:438)&4095|32768,0),mkdir:(a,b)=>O.Ra(a,(void 0!==b?b:511)&1023|16384,0),Dd:(a,b)=>{a=a.split("/");for(var c="",d=0;d<a.length;++d)if(a[d]){c+="/"+a[d];try{O.mkdir(c,b)}catch(f){if(20!=f.wa)throw f;}}},yb:(a,b,c)=>{"undefined"==typeof c&&(c=b,b=438);return O.Ra(a,b|8192,c)},symlink:(a,b)=>{if(!N(a))throw new O.qa(44);var c=O.ya(b,{parent:!0}).node;if(!c)throw new O.qa(44);b=M(b);var d=O.Qb(c,b);if(d)throw new O.qa(d);if(!c.sa.symlink)throw new O.qa(63);return c.sa.symlink(c,b,
+a)},rename:(a,b)=>{var c=Ra(a),d=Ra(b),f=M(a),g=M(b);var k=O.ya(a,{parent:!0});var h=k.node;k=O.ya(b,{parent:!0});k=k.node;if(!h||!k)throw new O.qa(44);if(h.Aa!==k.Aa)throw new O.qa(75);var n=O.Qa(h,f);a=Ua(a,d);if("."!==a.charAt(0))throw new O.qa(28);a=Ua(b,c);if("."!==a.charAt(0))throw new O.qa(55);try{var q=O.Qa(k,g)}catch(p){}if(n!==q){b=O.Ca(n.mode);if(f=O.xb(h,f,b))throw new O.qa(f);if(f=q?O.xb(k,g,b):O.Qb(k,g))throw new O.qa(f);if(!h.sa.rename)throw new O.qa(63);if(O.Xa(n)||q&&O.Xa(q))throw new O.qa(10);
+if(k!==h&&(f=O.Va(h,"w")))throw new O.qa(f);O.qc(n);try{h.sa.rename(n,k,g)}catch(p){throw p;}finally{O.pc(n)}}},rmdir:a=>{var b=O.ya(a,{parent:!0}).node;a=M(a);var c=O.Qa(b,a),d=O.xb(b,a,!0);if(d)throw new O.qa(d);if(!b.sa.rmdir)throw new O.qa(63);if(O.Xa(c))throw new O.qa(10);b.sa.rmdir(b,a);O.Eb(c)},readdir:a=>{a=O.ya(a,{Fa:!0}).node;if(!a.sa.readdir)throw new O.qa(54);return a.sa.readdir(a)},unlink:a=>{var b=O.ya(a,{parent:!0}).node;if(!b)throw new O.qa(44);a=M(a);var c=O.Qa(b,a),d=O.xb(b,a,!1);
+if(d)throw new O.qa(d);if(!b.sa.unlink)throw new O.qa(63);if(O.Xa(c))throw new O.qa(10);b.sa.unlink(b,a);O.Eb(c)},readlink:a=>{a=O.ya(a).node;if(!a)throw new O.qa(44);if(!a.sa.readlink)throw new O.qa(28);return N(O.Ta(a.parent),a.sa.readlink(a))},stat:(a,b)=>{a=O.ya(a,{Fa:!b}).node;if(!a)throw new O.qa(44);if(!a.sa.Ka)throw new O.qa(63);return a.sa.Ka(a)},lstat:a=>O.stat(a,!0),chmod:(a,b,c)=>{a="string"==typeof a?O.ya(a,{Fa:!c}).node:a;if(!a.sa.Da)throw new O.qa(63);a.sa.Da(a,{mode:b&4095|a.mode&
+-4096,timestamp:Date.now()})},lchmod:(a,b)=>{O.chmod(a,b,!0)},fchmod:(a,b)=>{a=O.Ua(a);if(!a)throw new O.qa(8);O.chmod(a.node,b)},chown:(a,b,c,d)=>{a="string"==typeof a?O.ya(a,{Fa:!d}).node:a;if(!a.sa.Da)throw new O.qa(63);a.sa.Da(a,{timestamp:Date.now()})},lchown:(a,b,c)=>{O.chown(a,b,c,!0)},fchown:(a,b,c)=>{a=O.Ua(a);if(!a)throw new O.qa(8);O.chown(a.node,b,c)},truncate:(a,b)=>{if(0>b)throw new O.qa(28);a="string"==typeof a?O.ya(a,{Fa:!0}).node:a;if(!a.sa.Da)throw new O.qa(63);if(O.Ca(a.mode))throw new O.qa(31);
+if(!O.isFile(a.mode))throw new O.qa(28);var c=O.Va(a,"w");if(c)throw new O.qa(c);a.sa.Da(a,{size:b,timestamp:Date.now()})},Pc:(a,b)=>{a=O.Ua(a);if(!a)throw new O.qa(8);if(0===(a.flags&2097155))throw new O.qa(28);O.truncate(a.node,b)},vd:(a,b,c)=>{a=O.ya(a,{Fa:!0}).node;a.sa.Da(a,{timestamp:Math.max(b,c)})},open:(a,b,c)=>{if(""===a)throw new O.qa(44);b="string"==typeof b?O.Yc(b):b;c=b&64?("undefined"==typeof c?438:c)&4095|32768:0;if("object"==typeof a)var d=a;else{a=K(a);try{d=O.ya(a,{Fa:!(b&131072)}).node}catch(g){}}var f=
+!1;if(b&64)if(d){if(b&128)throw new O.qa(20);}else d=O.Ra(a,c,0),f=!0;if(!d)throw new O.qa(44);O.tb(d.mode)&&(b&=-513);if(b&65536&&!O.Ca(d.mode))throw new O.qa(54);if(!f&&(c=O.Xc(d,b)))throw new O.qa(c);b&512&&!f&&O.truncate(d,0);b&=-131713;d=O.ec({node:d,path:O.Ta(d),flags:b,seekable:!0,position:0,ua:d.ua,ud:[],error:!1});d.ua.open&&d.ua.open(d);!e.logReadFiles||b&1||(O.Tb||(O.Tb={}),a in O.Tb||(O.Tb[a]=1));return d},close:a=>{if(O.mb(a))throw new O.qa(8);a.Jb&&(a.Jb=null);try{a.ua.close&&a.ua.close(a)}catch(b){throw b;
+}finally{O.Ec(a.fd)}a.fd=null},mb:a=>null===a.fd,La:(a,b,c)=>{if(O.mb(a))throw new O.qa(8);if(!a.seekable||!a.ua.La)throw new O.qa(70);if(0!=c&&1!=c&&2!=c)throw new O.qa(28);a.position=a.ua.La(a,b,c);a.ud=[];return a.position},read:(a,b,c,d,f)=>{if(0>d||0>f)throw new O.qa(28);if(O.mb(a))throw new O.qa(8);if(1===(a.flags&2097155))throw new O.qa(8);if(O.Ca(a.node.mode))throw new O.qa(31);if(!a.ua.read)throw new O.qa(28);var g="undefined"!=typeof f;if(!g)f=a.position;else if(!a.seekable)throw new O.qa(70);
+b=a.ua.read(a,b,c,d,f);g||(a.position+=b);return b},write:(a,b,c,d,f,g)=>{if(0>d||0>f)throw new O.qa(28);if(O.mb(a))throw new O.qa(8);if(0===(a.flags&2097155))throw new O.qa(8);if(O.Ca(a.node.mode))throw new O.qa(31);if(!a.ua.write)throw new O.qa(28);a.seekable&&a.flags&1024&&O.La(a,0,2);var k="undefined"!=typeof f;if(!k)f=a.position;else if(!a.seekable)throw new O.qa(70);b=a.ua.write(a,b,c,d,f,g);k||(a.position+=b);return b},kb:(a,b,c)=>{if(O.mb(a))throw new O.qa(8);if(0>b||0>=c)throw new O.qa(28);
+if(0===(a.flags&2097155))throw new O.qa(8);if(!O.isFile(a.node.mode)&&!O.Ca(a.node.mode))throw new O.qa(43);if(!a.ua.kb)throw new O.qa(138);a.ua.kb(a,b,c)},Za:(a,b,c,d,f)=>{if(0!==(d&2)&&0===(f&2)&&2!==(a.flags&2097155))throw new O.qa(2);if(1===(a.flags&2097155))throw new O.qa(2);if(!a.ua.Za)throw new O.qa(43);return a.ua.Za(a,b,c,d,f)},hb:(a,b,c,d,f)=>a&&a.ua.hb?a.ua.hb(a,b,c,d,f):0,Ed:()=>0,sc:(a,b,c)=>{if(!a.ua.sc)throw new O.qa(59);return a.ua.sc(a,b,c)},readFile:(a,b={})=>{b.flags=b.flags||0;
+b,0,b.byteLength,void 0,c.Cc);else throw Error("Unsupported data type");O.close(a)},cwd:()=>O.fc,chdir:a=>{a=O.ya(a,{Fa:!0});if(null===a.node)throw new O.qa(44);if(!O.Ca(a.node.mode))throw new O.qa(54);var b=O.Va(a.node,"x");if(b)throw new O.qa(b);O.fc=a.path},Hc:()=>{O.mkdir("/tmp");O.mkdir("/home");O.mkdir("/home/web_user")},Gc:()=>{O.mkdir("/dev");O.Vb(O.Ya(1,3),{read:()=>0,write:(b,c,d,f)=>f});O.yb("/dev/null",O.Ya(1,3));Xa(O.Ya(5,0),Za);Xa(O.Ya(6,0),$a);O.yb("/dev/tty",O.Ya(5,0));O.yb("/dev/tty1",
+O.Ya(6,0));var a=Ta();O.Ja("/dev","random",a);O.Ja("/dev","urandom",a);O.mkdir("/dev/shm");O.mkdir("/dev/shm/tmp")},Jc:()=>{O.mkdir("/proc");var a=O.mkdir("/proc/self");O.mkdir("/proc/self/fd");O.Aa({Aa:()=>{var b=O.createNode(a,"fd",16895,73);b.sa={lookup:(c,d)=>{var f=O.Ua(+d);if(!f)throw new O.qa(8);c={parent:null,Aa:{tc:"fake"},sa:{readlink:()=>f.path}};return c.parent=c}};return b}},{},"/proc/self/fd")},Kc:()=>{e.stdin?O.Ja("/dev","stdin",e.stdin):O.symlink("/dev/tty","/dev/stdin");e.stdout?
+O.Ja("/dev","stdout",null,e.stdout):O.symlink("/dev/tty","/dev/stdout");e.stderr?O.Ja("/dev","stderr",null,e.stderr):O.symlink("/dev/tty1","/dev/stderr");O.open("/dev/stdin",0);O.open("/dev/stdout",1);O.open("/dev/stderr",1)},jc:()=>{O.qa||(O.qa=function(a,b){this.node=b;this.ld=function(c){this.wa=c};this.ld(a);this.message="FS error"},O.qa.prototype=Error(),O.qa.prototype.constructor=O.qa,[44].forEach(a=>{O.Hb[a]=new O.qa(a);O.Hb[a].stack="<generic error, no stack>"}))},nd:()=>{O.jc();O.Ma=Array(4096);
+K(a+"/"+b):a);a=O.Ib(d,f);k=O.create(k,a);if(c){if("string"==typeof c){b=Array(c.length);d=0;for(f=c.length;d<f;++d)b[d]=c.charCodeAt(d);c=b}O.chmod(k,a|146);b=O.open(k,577);O.write(b,c,0,c.length,0,g);O.close(b);O.chmod(k,a)}return k},Ja:(a,b,c,d)=>{a=Sa("string"==typeof a?a:O.Ta(a),b);b=O.Ib(!!c,!!d);O.Ja.Pb||(O.Ja.Pb=64);var f=O.Ya(O.Ja.Pb++,0);O.Vb(f,{open:g=>{g.seekable=!1},close:()=>{d&&d.buffer&&d.buffer.length&&d(10)},read:(g,k,h,n)=>{for(var q=0,p=0;p<n;p++){try{var t=c()}catch(w){throw new O.qa(29);
+}if(void 0===t&&0===q)throw new O.qa(6);if(null===t||void 0===t)break;q++;k[h+p]=t}q&&(g.node.timestamp=Date.now());return q},write:(g,k,h,n)=>{for(var q=0;q<n;q++)try{d(k[h+q])}catch(p){throw new O.qa(29);}n&&(g.node.timestamp=Date.now());return q}});return O.yb(a,b,f)},Gb:a=>{if(a.Mb||a.Vc||a.link||a.ta)return!0;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(ia)try{a.ta=Va(ia(a.url),!0),a.za=a.ta.length}catch(b){throw new O.qa(29);}else throw Error("Cannot load without read() or XMLHttpRequest.");},bc:(a,b,c,d,f)=>{function g(){this.Ob=!1;this.Ga=[]}function k(p,t,w,l,u){p=p.node.ta;if(u>=p.length)return 0;l=Math.min(p.length-u,l);if(p.slice)for(var v=0;v<l;v++)t[w+v]=p[u+v];else for(v=0;v<l;v++)t[w+v]=p.get(u+v);return l}g.prototype.get=function(p){if(!(p>this.length-1||0>p)){var t=p%this.chunkSize;return this.oc(p/this.chunkSize|0)[t]}};g.prototype.Sb=
+v.Ga;if(L>I)throw Error("invalid range ("+L+", "+I+") or no bytes requested!");if(I>t-1)throw Error("only "+t+" bytes available! programmer error!");var G=new XMLHttpRequest;G.open("GET",c,!1);t!==u&&G.setRequestHeader("Range","bytes="+L+"-"+I);G.responseType="arraybuffer";G.overrideMimeType&&G.overrideMimeType("text/plain; charset=x-user-defined");G.send(null);if(!(200<=G.status&&300>G.status||304===G.status))throw Error("Couldn't load "+c+". Status: "+G.status);L=void 0!==G.response?new Uint8Array(G.response||
+[]):Va(G.responseText||"",!0);Ba[B]=L}if("undefined"==typeof v.Ga[B])throw Error("doXHR failed!");return v.Ga[B]});if(p||!t)u=t=1,u=t=this.oc(0).length,na("LazyFiles on gzip forces download of the whole file when length is accessed");this.zc=t;this.yc=u;this.Ob=!0};if("undefined"!=typeof XMLHttpRequest){if(!fa)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var h=new g;Object.defineProperties(h,{length:{get:function(){this.Ob||
-1E3),1<=+Math.abs(H)?0<H?(Math.min(+Math.floor(H/4294967296),4294967295)|0)>>>0:~~+Math.ceil((H-+(~~H>>>0))/4294967296)>>>0:0)];D[c+88>>2]=J[0];D[c+92>>2]=J[1];D[c+96>>2]=0;J=[d.ino>>>0,(H=d.ino,1<=+Math.abs(H)?0<H?(Math.min(+Math.floor(H/4294967296),4294967295)|0)>>>0:~~+Math.ceil((H-+(~~H>>>0))/4294967296)>>>0:0)];D[c+104>>2]=J[0];D[c+108>>2]=J[1];return 0}var fb=void 0;function gb(){fb+=4;return D[fb-4>>2]}function R(a){a=O.Sa(a);if(!a)throw new O.oa(8);return a}
+1E3),1<=+Math.abs(H)?0<H?(Math.min(+Math.floor(H/4294967296),4294967295)|0)>>>0:~~+Math.ceil((H-+(~~H>>>0))/4294967296)>>>0:0)];D[c+88>>2]=J[0];D[c+92>>2]=J[1];D[c+96>>2]=0;J=[d.ino>>>0,(H=d.ino,1<=+Math.abs(H)?0<H?(Math.min(+Math.floor(H/4294967296),4294967295)|0)>>>0:~~+Math.ceil((H-+(~~H>>>0))/4294967296)>>>0:0)];D[c+104>>2]=J[0];D[c+108>>2]=J[1];return 0}var fb=void 0;function gb(){fb+=4;return D[fb-4>>2]}function R(a){a=O.Ua(a);if(!a)throw new O.qa(8);return a}
function hb(a){return E[a>>2]+4294967296*D[a+4>>2]}function ib(a){switch(a){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+a);}}var jb=void 0;function S(a){for(var b="";z[a];)b+=jb[z[a++]];return b}var kb={},lb={},mb={};function nb(a){if(void 0===a)return"_unknown";a=a.replace(/[^a-zA-Z0-9_]/g,"$");var b=a.charCodeAt(0);return 48<=b&&57>=b?"_"+a:a}
function ob(a,b){a=nb(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)}function pb(a){var b=Error,c=ob(a,function(d){this.name=a;this.message=d;d=Error(d).stack;void 0!==d&&(this.stack=this.toString()+"\n"+d.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(b.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return c}
var qb=void 0;function T(a){throw new qb(a);}var rb=void 0;function sb(a){throw new rb(a);}function tb(a,b,c){function d(h){h=c(h);h.length!==a.length&&sb("Mismatched type converter count");for(var n=0;n<a.length;++n)U(a[n],h[n])}a.forEach(function(h){mb[h]=b});var f=Array(b.length),g=[],k=0;b.forEach((h,n)=>{lb.hasOwnProperty(h)?f[n]=lb[h]:(g.push(h),kb.hasOwnProperty(h)||(kb[h]=[]),kb[h].push(()=>{f[n]=lb[h];++k;k===g.length&&d(f)}))});0===g.length&&d(f)}
-function U(a,b,c={}){if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var d=b.name;a||T('type "'+d+'" must have a positive integer typeid pointer');if(lb.hasOwnProperty(a)){if(c.Rc)return;T("Cannot register type '"+d+"' twice")}lb[a]=b;delete mb[a];kb.hasOwnProperty(a)&&(b=kb[a],delete kb[a],b.forEach(f=>f()))}function ub(a){T(a.pa.za.va.name+" instance already deleted")}var vb=!1;function wb(){}
-function xb(a){--a.count.value;0===a.count.value&&(a.Ca?a.Fa.Za(a.Ca):a.za.va.Za(a.ta))}function yb(a,b,c){if(b===c)return a;if(void 0===c.Ga)return null;a=yb(a,b,c.Ga);return null===a?null:c.Jc(a)}var zb={},Ab=[];function Bb(){for(;Ab.length;){var a=Ab.pop();a.pa.bb=!1;a["delete"]()}}var Cb=void 0,Db={};function Eb(a,b){for(void 0===b&&T("ptr should not be undefined");a.Ga;)b=a.ob(b),a=a.Ga;return Db[b]}
-function Fb(a,b){b.za&&b.ta||sb("makeClassHandle requires ptr and ptrType");!!b.Fa!==!!b.Ca&&sb("Both smartPtrType and smartPtr must be specified");b.count={value:1};return Gb(Object.create(a,{pa:{value:b}}))}function Gb(a){if("undefined"===typeof FinalizationRegistry)return Gb=b=>b,a;vb=new FinalizationRegistry(b=>{xb(b.pa)});Gb=b=>{var c=b.pa;c.Ca&&vb.register(b,{pa:c},b);return b};wb=b=>{vb.unregister(b)};return Gb(a)}function V(){}
-function Hb(a,b,c){if(void 0===a[b].Qa){var d=a[b];a[b]=function(){a[b].Qa.hasOwnProperty(arguments.length)||T("Function '"+c+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+a[b].Qa+")!");return a[b].Qa[arguments.length].apply(this,arguments)};a[b].Qa=[];a[b].Qa[d.Bb]=d}}
-function Ib(a,b){e.hasOwnProperty(a)?(T("Cannot register public name '"+a+"' twice"),Hb(e,a,a),e.hasOwnProperty(void 0)&&T("Cannot register multiple overloads of a function with the same number of arguments (undefined)!"),e[a].Qa[void 0]=b):e[a]=b}function Jb(a,b,c,d,f,g,k,h){this.name=a;this.constructor=b;this.jb=c;this.Za=d;this.Ga=f;this.Oc=g;this.ob=k;this.Jc=h}
-function Kb(a,b,c){for(;b!==c;)b.ob||T("Expected null or instance of "+c.name+", got an instance of "+b.name),a=b.ob(a),b=b.Ga;return a}function Lb(a,b){if(null===b)return this.Lb&&T("null is not a valid "+this.name),0;b.pa||T('Cannot pass "'+Mb(b)+'" as a '+this.name);b.pa.ta||T("Cannot pass deleted object as a pointer of type "+this.name);return Kb(b.pa.ta,b.pa.za.va,this.va)}
-function Nb(a,b){if(null===b){this.Lb&&T("null is not a valid "+this.name);if(this.ub){var c=this.ed();null!==a&&a.push(this.Za,c);return c}return 0}b.pa||T('Cannot pass "'+Mb(b)+'" as a '+this.name);b.pa.ta||T("Cannot pass deleted object as a pointer of type "+this.name);!this.sb&&b.pa.za.sb&&T("Cannot convert argument of type "+(b.pa.Fa?b.pa.Fa.name:b.pa.za.name)+" to parameter type "+this.name);c=Kb(b.pa.ta,b.pa.za.va,this.va);if(this.ub)switch(void 0===b.pa.Ca&&T("Passing raw pointer to smart pointer is illegal"),
-this.md){case 0:b.pa.Fa===this?c=b.pa.Ca:T("Cannot convert argument of type "+(b.pa.Fa?b.pa.Fa.name:b.pa.za.name)+" to parameter type "+this.name);break;case 1:c=b.pa.Ca;break;case 2:if(b.pa.Fa===this)c=b.pa.Ca;else{var d=b.clone();c=this.gd(c,Ob(function(){d["delete"]()}));null!==a&&a.push(this.Za,c)}break;default:T("Unsupporting sharing policy")}return c}
-function Pb(a,b){if(null===b)return this.Lb&&T("null is not a valid "+this.name),0;b.pa||T('Cannot pass "'+Mb(b)+'" as a '+this.name);b.pa.ta||T("Cannot pass deleted object as a pointer of type "+this.name);b.pa.za.sb&&T("Cannot convert argument of type "+b.pa.za.name+" to parameter type "+this.name);return Kb(b.pa.ta,b.pa.za.va,this.va)}function Qb(a){return this.fromWireType(D[a>>2])}
-function W(a,b,c,d){this.name=a;this.va=b;this.Lb=c;this.sb=d;this.ub=!1;this.Za=this.gd=this.ed=this.sc=this.md=this.bd=void 0;void 0!==b.Ga?this.toWireType=Nb:(this.toWireType=d?Lb:Pb,this.Na=null)}function Rb(a,b){e.hasOwnProperty(a)||sb("Replacing nonexistant public symbol");e[a]=b;e[a].Bb=void 0}
+function U(a,b,c={}){if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var d=b.name;a||T('type "'+d+'" must have a positive integer typeid pointer');if(lb.hasOwnProperty(a)){if(c.Tc)return;T("Cannot register type '"+d+"' twice")}lb[a]=b;delete mb[a];kb.hasOwnProperty(a)&&(b=kb[a],delete kb[a],b.forEach(f=>f()))}function ub(a){T(a.ra.Ba.xa.name+" instance already deleted")}var vb=!1;function wb(){}
+function xb(a){--a.count.value;0===a.count.value&&(a.Ea?a.Ha.ab(a.Ea):a.Ba.xa.ab(a.va))}function yb(a,b,c){if(b===c)return a;if(void 0===c.Ia)return null;a=yb(a,b,c.Ia);return null===a?null:c.Lc(a)}var zb={},Ab=[];function Bb(){for(;Ab.length;){var a=Ab.pop();a.ra.eb=!1;a["delete"]()}}var Cb=void 0,Db={};function Eb(a,b){for(void 0===b&&T("ptr should not be undefined");a.Ia;)b=a.qb(b),a=a.Ia;return Db[b]}
+function Fb(a,b){b.Ba&&b.va||sb("makeClassHandle requires ptr and ptrType");!!b.Ha!==!!b.Ea&&sb("Both smartPtrType and smartPtr must be specified");b.count={value:1};return Gb(Object.create(a,{ra:{value:b}}))}function Gb(a){if("undefined"===typeof FinalizationRegistry)return Gb=b=>b,a;vb=new FinalizationRegistry(b=>{xb(b.ra)});Gb=b=>{var c=b.ra;c.Ea&&vb.register(b,{ra:c},b);return b};wb=b=>{vb.unregister(b)};return Gb(a)}function V(){}
+function Hb(a,b,c){if(void 0===a[b].Sa){var d=a[b];a[b]=function(){a[b].Sa.hasOwnProperty(arguments.length)||T("Function '"+c+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+a[b].Sa+")!");return a[b].Sa[arguments.length].apply(this,arguments)};a[b].Sa=[];a[b].Sa[d.Db]=d}}
+function Ib(a,b){e.hasOwnProperty(a)?(T("Cannot register public name '"+a+"' twice"),Hb(e,a,a),e.hasOwnProperty(void 0)&&T("Cannot register multiple overloads of a function with the same number of arguments (undefined)!"),e[a].Sa[void 0]=b):e[a]=b}function Jb(a,b,c,d,f,g,k,h){this.name=a;this.constructor=b;this.lb=c;this.ab=d;this.Ia=f;this.Qc=g;this.qb=k;this.Lc=h}
+function Kb(a,b,c){for(;b!==c;)b.qb||T("Expected null or instance of "+c.name+", got an instance of "+b.name),a=b.qb(a),b=b.Ia;return a}function Lb(a,b){if(null===b)return this.Nb&&T("null is not a valid "+this.name),0;b.ra||T('Cannot pass "'+Mb(b)+'" as a '+this.name);b.ra.va||T("Cannot pass deleted object as a pointer of type "+this.name);return Kb(b.ra.va,b.ra.Ba.xa,this.xa)}
+function Nb(a,b){if(null===b){this.Nb&&T("null is not a valid "+this.name);if(this.wb){var c=this.ed();null!==a&&a.push(this.ab,c);return c}return 0}b.ra||T('Cannot pass "'+Mb(b)+'" as a '+this.name);b.ra.va||T("Cannot pass deleted object as a pointer of type "+this.name);!this.ub&&b.ra.Ba.ub&&T("Cannot convert argument of type "+(b.ra.Ha?b.ra.Ha.name:b.ra.Ba.name)+" to parameter type "+this.name);c=Kb(b.ra.va,b.ra.Ba.xa,this.xa);if(this.wb)switch(void 0===b.ra.Ea&&T("Passing raw pointer to smart pointer is illegal"),
+this.md){case 0:b.ra.Ha===this?c=b.ra.Ea:T("Cannot convert argument of type "+(b.ra.Ha?b.ra.Ha.name:b.ra.Ba.name)+" to parameter type "+this.name);break;case 1:c=b.ra.Ea;break;case 2:if(b.ra.Ha===this)c=b.ra.Ea;else{var d=b.clone();c=this.gd(c,Ob(function(){d["delete"]()}));null!==a&&a.push(this.ab,c)}break;default:T("Unsupporting sharing policy")}return c}
+function Pb(a,b){if(null===b)return this.Nb&&T("null is not a valid "+this.name),0;b.ra||T('Cannot pass "'+Mb(b)+'" as a '+this.name);b.ra.va||T("Cannot pass deleted object as a pointer of type "+this.name);b.ra.Ba.ub&&T("Cannot convert argument of type "+b.ra.Ba.name+" to parameter type "+this.name);return Kb(b.ra.va,b.ra.Ba.xa,this.xa)}function Qb(a){return this.fromWireType(D[a>>2])}
+function W(a,b,c,d){this.name=a;this.xa=b;this.Nb=c;this.ub=d;this.wb=!1;this.ab=this.gd=this.ed=this.uc=this.md=this.dd=void 0;void 0!==b.Ia?this.toWireType=Nb:(this.toWireType=d?Lb:Pb,this.Pa=null)}function Rb(a,b){e.hasOwnProperty(a)||sb("Replacing nonexistant public symbol");e[a]=b;e[a].Db=void 0}
function Sb(a,b){var c=[];return function(){c.length=0;Object.assign(c,arguments);if(a.includes("j")){var d=e["dynCall_"+a];d=c&&c.length?d.apply(null,[b].concat(c)):d.call(null,b)}else d=Aa.get(b).apply(null,c);return d}}function Tb(a,b){a=S(a);var c=a.includes("j")?Sb(a,b):Aa.get(b);"function"!=typeof c&&T("unknown function pointer with signature "+a+": "+b);return c}var Ub=void 0;function Vb(a){a=Wb(a);var b=S(a);X(a);return b}
function Xb(a,b){function c(g){f[g]||lb[g]||(mb[g]?mb[g].forEach(c):(d.push(g),f[g]=!0))}var d=[],f={};b.forEach(c);throw new Ub(a+": "+d.map(Vb).join([", "]));}function Yb(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=ob(b.name||"unknownFunctionName",function(){});c.prototype=b.prototype;c=new c;a=b.apply(c,a);return a instanceof Object?a:c}
function Zb(a){for(;a.length;){var b=a.pop();a.pop()(b)}}
-function $b(a,b,c,d){var f=b.length;2>f&&T("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var g=null!==b[1]&&!1,k=!1,h=1;h<b.length;++h)if(null!==b[h]&&void 0===b[h].Na){k=!0;break}var n="void"!==b[0].name,q="",p="";for(h=0;h<f-2;++h)q+=(0!==h?", ":"")+"arg"+h,p+=(0!==h?", ":"")+"arg"+h+"Wired";a="return function "+nb(a)+"("+q+") {\nif (arguments.length !== "+(f-2)+") {\nthrowBindingError('function "+a+" called with ' + arguments.length + ' arguments, expected "+
+function $b(a,b,c,d){var f=b.length;2>f&&T("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var g=null!==b[1]&&!1,k=!1,h=1;h<b.length;++h)if(null!==b[h]&&void 0===b[h].Pa){k=!0;break}var n="void"!==b[0].name,q="",p="";for(h=0;h<f-2;++h)q+=(0!==h?", ":"")+"arg"+h,p+=(0!==h?", ":"")+"arg"+h+"Wired";a="return function "+nb(a)+"("+q+") {\nif (arguments.length !== "+(f-2)+") {\nthrowBindingError('function "+a+" called with ' + arguments.length + ' arguments, expected "+
-"%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 p in q)c=c.replace(new RegExp(p,"g"),q[p]);var t="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),w="January February March April May June July August September October November December".split(" ");q={"%a":function(l){return t[l.Ma].substring(0,3)},"%A":function(l){return t[l.Ma]},"%b":function(l){return w[l.zb].substring(0,3)},"%B":function(l){return w[l.zb]},
-Date.now(),k=g;O.ud(b,g,k);return 0}catch(h){if("undefined"==typeof O||!(h instanceof O.oa))throw h;return-h.ua}},u:function(){},q:function(a,b,c,d,f){var g=ib(c);b=S(b);U(a,{name:b,fromWireType:function(k){return!!k},toWireType:function(k,h){return h?d:f},argPackAdvance:8,readValueFromPointer:function(k){if(1===c)var h=A;else if(2===c)h=C;else if(4===c)h=D;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(h[k>>g])},Na:null})},S:function(a,b,c,d,f,g,k,h,n,q,p,t,w){p=
-S(p);g=Tb(f,g);h&&(h=Tb(k,h));q&&(q=Tb(n,q));w=Tb(t,w);var l=nb(p);Ib(l,function(){Xb("Cannot construct "+p+" due to unbound types",[d])});tb([a,b,c],d?[d]:[],function(u){u=u[0];if(d){var v=u.va;var B=v.jb}else B=V.prototype;u=ob(l,function(){if(Object.getPrototypeOf(this)!==L)throw new qb("Use 'new' to construct "+p);if(void 0===I.Ua)throw new qb(p+" has no accessible constructor");var G=I.Ua[arguments.length];if(void 0===G)throw new qb("Tried to invoke ctor of "+p+" with invalid number of parameters ("+
-"."+b;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);var t=n.va.constructor;void 0===t[b]?(q.Bb=c-1,t[b]=q):(Hb(t,b,p),t[b].Qa[c-1]=q);tb([],h,function(w){w=[w[0],null].concat(w.slice(1));w=$b(p,w,g,k);void 0===t[b].Qa?(w.Bb=c-1,t[b]=w):t[b].Qa[c-1]=w;return[]});return[]})},I:function(a,b,c,d,f,g){0<b||x();var k=ac(b,c);f=Tb(d,f);tb([],[a],function(h){h=h[0];var n="constructor "+h.name;void 0===h.va.Ua&&(h.va.Ua=[]);if(void 0!==h.va.Ua[b-1])throw new qb("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.Ua[b-1]=()=>{Xb("Cannot construct "+h.name+" due to unbound types",k)};tb([],k,function(q){q.splice(1,0,null);h.va.Ua[b-1]=$b(n,q,f,g);return[]});return[]})},p:function(a,b){b=S(b);U(a,{name:b,fromWireType:function(c){c||T("Cannot use deleted val. handle = "+c);var d=Y[c].value;4<c&&0===--Y[c].hd&&(Y[c]=void 0,bc.push(c));return d},toWireType:function(c,d){return Ob(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 p in q)c=c.replace(new RegExp(p,"g"),q[p]);var t="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),w="January February March April May June July August September October November December".split(" ");q={"%a":function(l){return t[l.Oa].substring(0,3)},"%A":function(l){return t[l.Oa]},"%b":function(l){return w[l.Bb].substring(0,3)},"%B":function(l){return w[l.Bb]},
+Date.now(),k=g;O.vd(b,g,k);return 0}catch(h){if("undefined"==typeof O||!(h instanceof O.qa))throw h;return-h.wa}},w:function(){},s:function(a,b,c,d,f){var g=ib(c);b=S(b);U(a,{name:b,fromWireType:function(k){return!!k},toWireType:function(k,h){return h?d:f},argPackAdvance:8,readValueFromPointer:function(k){if(1===c)var h=A;else if(2===c)h=C;else if(4===c)h=D;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(h[k>>g])},Pa:null})},T:function(a,b,c,d,f,g,k,h,n,q,p,t,w){p=
+S(p);g=Tb(f,g);h&&(h=Tb(k,h));q&&(q=Tb(n,q));w=Tb(t,w);var l=nb(p);Ib(l,function(){Xb("Cannot construct "+p+" due to unbound types",[d])});tb([a,b,c],d?[d]:[],function(u){u=u[0];if(d){var v=u.xa;var B=v.lb}else B=V.prototype;u=ob(l,function(){if(Object.getPrototypeOf(this)!==L)throw new qb("Use 'new' to construct "+p);if(void 0===I.Wa)throw new qb(p+" has no accessible constructor");var G=I.Wa[arguments.length];if(void 0===G)throw new qb("Tried to invoke ctor of "+p+" with invalid number of parameters ("+
+"."+b;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);var t=n.xa.constructor;void 0===t[b]?(q.Db=c-1,t[b]=q):(Hb(t,b,p),t[b].Sa[c-1]=q);tb([],h,function(w){w=[w[0],null].concat(w.slice(1));w=$b(p,w,g,k);void 0===t[b].Sa?(w.Db=c-1,t[b]=w):t[b].Sa[c-1]=w;return[]});return[]})},J:function(a,b,c,d,f,g){0<b||x();var k=ac(b,c);f=Tb(d,f);tb([],[a],function(h){h=h[0];var n="constructor "+h.name;void 0===h.xa.Wa&&(h.xa.Wa=[]);if(void 0!==h.xa.Wa[b-1])throw new qb("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.xa.Wa[b-1]=()=>{Xb("Cannot construct "+h.name+" due to unbound types",k)};tb([],k,function(q){q.splice(1,0,null);h.xa.Wa[b-1]=$b(n,q,f,g);return[]});return[]})},r:function(a,b){b=S(b);U(a,{name:b,fromWireType:function(c){c||T("Cannot use deleted val. handle = "+c);var d=Y[c].value;4<c&&0===--Y[c].hd&&(Y[c]=void 0,bc.push(c));return d},toWireType:function(c,d){return Ob(d)},
q+=k;k=n+1}}else{q=Array(f);for(h=0;h<f;++h)q[h]=String.fromCharCode(z[g+h]);q=q.join("")}X(d);return q},toWireType:function(d,f){f instanceof ArrayBuffer&&(f=new Uint8Array(f));var g="string"==typeof f;g||f instanceof Uint8Array||f instanceof Uint8ClampedArray||f instanceof Int8Array||T("Cannot pass non-string to std::string");var k=c&&g?ua(f):f.length;var h=mc(4+k+1),n=h+4;E[h>>2]=k;if(c&&g)ta(f,z,n,k+1);else if(g)for(g=0;g<k;++g){var q=f.charCodeAt(g);255<q&&(X(n),T("String has UTF-16 code units that do not fit in 8 bits"));
-T("Cannot pass non-string to C++ string type "+c);var p=g(q),t=mc(4+p+b);E[t>>2]=p>>h;f(q,t+4,p+b);null!==n&&n.push(X,t);return t},argPackAdvance:8,readValueFromPointer:Qb,Na:function(n){X(n)}})},r:function(a,b){b=S(b);U(a,{yd:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},m:function(){return Date.now()},U:function(a,b){a=new Date(1E3*hb(a));D[b>>2]=a.getSeconds();D[b+4>>2]=a.getMinutes();D[b+8>>2]=a.getHours();D[b+12>>2]=a.getDate();D[b+16>>2]=a.getMonth();D[b+20>>
+T("Cannot pass non-string to C++ string type "+c);var p=g(q),t=mc(4+p+b);E[t>>2]=p>>h;f(q,t+4,p+b);null!==n&&n.push(X,t);return t},argPackAdvance:8,readValueFromPointer:Qb,Pa:function(n){X(n)}})},t:function(a,b){b=S(b);U(a,{Ad:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},p:function(){return Date.now()},V:function(a,b){a=new Date(1E3*hb(a));D[b>>2]=a.getSeconds();D[b+4>>2]=a.getMinutes();D[b+8>>2]=a.getHours();D[b+12>>2]=a.getDate();D[b+16>>2]=a.getMonth();D[b+20>>