var Module = (function() { var _scriptDir = import.meta.url; return ( function(Module) { Module = Module || {}; var e;e||(e=typeof Module !== 'undefined' ? Module : {});var aa,r;e.ready=new Promise(function(a,b){aa=a;r=b});var t={},u;for(u in e)e.hasOwnProperty(u)&&(t[u]=e[u]);var v="./this.program";function w(a,b){throw b;}var ba,y,ca,da;ba=function(a){ca||(ca=require("fs"));da||(da=require("path"));a=da.normalize(a);return ca.readFileSync(a,null)};y=function(a){a=ba(a);a.buffer||(a=new Uint8Array(a));a.buffer||z("Assertion failed: undefined");return a}; 1=g){var l=a.charCodeAt(++f);g=65536+((g&1023)<<10)|l&1023}if(127>=g){if(b>=c)break;d[b++]=g}else{if(2047>=g){if(b+1>=c)break;d[b++]=192|g>>6}else{if(65535>=g){if(b+2>=c)break;d[b++]=224|g>>12}else{if(b+3>=c)break;d[b++]=240|g>>18;d[b++]=128|g>>12&63}d[b++]=128|g>>6&63}d[b++]=128|g&63}}d[b]=0}}var ka=new TextDecoder("utf-16le"); function la(a,b){var c=a>>1;for(b=c+b/2;!(c>=b)&&E[c];)++c;return ka.decode(D.subarray(a,c<<1))}function ma(a,b,c){void 0===c&&(c=2147483647);if(2>c)return 0;c-=2;var d=b;c=c<2*a.length?c/2:a.length;for(var f=0;f>1]=a.charCodeAt(f),b+=2;G[b>>1]=0;return b-d}function na(a){return 2*a.length}function oa(a,b){for(var c=0,d="";!(c>=b/4);){var f=H[a+4*c>>2];if(0==f)break;++c;65536<=f?(f-=65536,d+=String.fromCharCode(55296|f>>10,56320|f&1023)):d+=String.fromCharCode(f)}return d} function pa(a,b,c){void 0===c&&(c=2147483647);if(4>c)return 0;var d=b;c=d+c-4;for(var f=0;f=g){var l=a.charCodeAt(++f);g=65536+((g&1023)<<10)|l&1023}H[b>>2]=g;b+=4;if(b+4>c)break}H[b>>2]=0;return b-d}function qa(a){for(var b=0,c=0;c=d&&++c;b+=4}return b}var ra,J,D,G,E,H,K,sa,ta; function ua(){var a=fa.buffer;ra=a;e.HEAP8=J=new Int8Array(a);e.HEAP16=G=new Int16Array(a);e.HEAP32=H=new Int32Array(a);e.HEAPU8=D=new Uint8Array(a);e.HEAPU16=E=new Uint16Array(a);e.HEAPU32=K=new Uint32Array(a);e.HEAPF32=sa=new Float32Array(a);e.HEAPF64=ta=new Float64Array(a)}var L,va=[],wa=[],xa=[];function ya(){var a=e.preRun.shift();va.unshift(a)}var M=0,za=null,N=null;e.preloadedImages={};e.preloadedAudios={}; function z(a){if(e.onAbort)e.onAbort(a);A(a);ha=!0;a=new WebAssembly.RuntimeError("abort("+a+"). Build with -s ASSERTIONS=1 for more info.");r(a);throw a;}var O=(new URL("mozjpeg_node_dec.wasm",import.meta.url)).toString();function Aa(){return Promise.resolve().then(function(){a:{try{if(O==O&&C){var a=new Uint8Array(C);break a}if(y){a=y(O);break a}throw"both async and sync fetching of the wasm failed";}catch(b){z(b)}a=void 0}return a})} function Ba(a){for(;0=b?"_"+a:a}function Fa(a,b){a=Ea(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)} function Ga(a){var b=Error,c=Fa(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 Ha=void 0;function T(a){throw new Ha(a);}var Ia=void 0; function Ja(a,b){function c(h){h=b(h);if(h.length!==d.length)throw new Ia("Mismatched type converter count");for(var k=0;k>2])}function Pa(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a} function Qa(a,b){switch(b){case 2:return function(c){return this.fromWireType(sa[c>>2])};case 3:return function(c){return this.fromWireType(ta[c>>3])};default:throw new TypeError("Unknown float type: "+a);}}function Ra(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=Fa(b.name||"unknownFunctionName",function(){});c.prototype=b.prototype;c=new c;a=b.apply(c,a);return a instanceof Object?a:c} function Sa(a){for(;a.length;){var b=a.pop();a.pop()(b)}}function Ta(a,b){var c=e;if(void 0===c[a].H){var d=c[a];c[a]=function(){c[a].H.hasOwnProperty(arguments.length)||T("Function '"+b+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+c[a].H+")!");return c[a].H[arguments.length].apply(this,arguments)};c[a].H=[];c[a].H[d.L]=d}} function Ua(a,b,c){e.hasOwnProperty(a)?((void 0===c||void 0!==e[a].H&&void 0!==e[a].H[c])&&T("Cannot register public name '"+a+"' twice"),Ta(a,a),e.hasOwnProperty(c)&&T("Cannot register multiple overloads of a function with the same number of arguments ("+c+")!"),e[a].H[c]=b):(e[a]=b,void 0!==c&&(e[a].P=c))}function Va(a,b){for(var c=[],d=0;d>2)+d]);return c} function Wa(a,b){var c=[];return function(){c.length=arguments.length;for(var d=0;d>1]}:function(d){return E[d>>1]};case 2:return c?function(d){return H[d>>2]}:function(d){return K[d>>2]};default:throw new TypeError("Unknown integer type: "+a);}}var cb={}; function db(){return"object"===typeof globalThis?globalThis:Function("return this")()}function eb(a,b){var c=R[a];void 0===c&&T(b+" has unknown type "+Za(a));return c}var fb={},gb={};function hb(){if(!ib){var a={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"===typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:v||"./this.program"},b;for(b in gb)a[b]=gb[b];var c=[];for(b in a)c.push(b+"="+a[b]);ib=c}return ib} for(var ib,jb=[null,[],[]],kb=Array(256),Y=0;256>Y;++Y)kb[Y]=String.fromCharCode(Y);Da=kb;Ha=e.BindingError=Ga("BindingError");Ia=e.InternalError=Ga("InternalError");e.count_emval_handles=function(){for(var a=0,b=5;b>g])},I:null})},x:function(a,b){b=P(b);U(a,{name:b,fromWireType:function(c){var d=V[c].value;La(c);return d},toWireType:function(c,d){return W(d)}, argPackAdvance:8,readValueFromPointer:Ma,I:null})},l:function(a,b,c){c=Ca(c);b=P(b);U(a,{name:b,fromWireType:function(d){return d},toWireType:function(d,f){if("number"!==typeof f&&"boolean"!==typeof f)throw new TypeError('Cannot convert "'+Pa(f)+'" to '+this.name);return f},argPackAdvance:8,readValueFromPointer:Qa(b,c),I:null})},o:function(a,b,c,d,f,g){var l=Va(b,c);a=P(a);f=Xa(d,f);Ua(a,function(){ab("Cannot call "+a+" due to unbound types",l)},b-1);Ja(l,function(h){var k=[h[0],null].concat(h.slice(1)), m=h=a,n=f,p=k.length;2>p&&T("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var x=null!==k[1]&&!1,B=!1,q=1;q>>h}}var k=b.includes("unsigned");U(a,{name:b,fromWireType:g,toWireType:function(m,n){if("number"!==typeof n&&"boolean"!==typeof n)throw new TypeError('Cannot convert "'+Pa(n)+'" to '+this.name);if(nf)throw new TypeError('Passing a number "'+Pa(n)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+d+", "+f+"]!");return k?n>>>0:n|0},argPackAdvance:8,readValueFromPointer:bb(b,l,0!==d),I:null})},a:function(a, b,c){function d(g){g>>=2;var l=K;return new f(ra,l[g+1],l[g])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=P(c);U(a,{name:c,fromWireType:d,argPackAdvance:8,readValueFromPointer:d},{M:!0})},h:function(a,b){b=P(b);var c="std::string"===b;U(a,{name:b,fromWireType:function(d){var f=K[d>>2];if(c)for(var g=d+4,l=0;l<=f;++l){var h=d+4+l;if(l==f||0==D[h]){if(g){for(var k=g+(h-g),m=g;!(m>=k)&&D[m];)++m;g=ia.decode(D.subarray(g,m))}else g="";if(void 0=== n)var n=g;else n+=String.fromCharCode(0),n+=g;g=h+1}}else{n=Array(f);for(l=0;l=p&&(p=65536+((p&1023)<<10)|f.charCodeAt(++n)& 1023);127>=p?++m:m=2047>=p?m+2:65535>=p?m+3:m+4}return m}:function(){return f.length})(),h=lb(4+l+1);K[h>>2]=l;if(c&&g)ja(f,h+4,l+1);else if(g)for(g=0;g>2],n=l(),p,x=k+4,B=0;B<=m;++B){var q=k+4+B*b;if(B==m||0==n[q>>h])x=d(x,q-x),void 0===p?p=x:(p+=String.fromCharCode(0),p+=x),x=q+b}X(k);return p},toWireType:function(k,m){"string"!==typeof m&&T("Cannot pass non-string to C++ string type "+c);var n=g(m),p=lb(4+n+b);K[p>>2]=n>>h;f(m,p+4,n+b);null!==k&&k.push(X,p);return p},argPackAdvance:8,readValueFromPointer:Ma,I:function(k){X(k)}})},n:function(a,b){b= P(b);U(a,{O:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},c:La,d:function(a){if(0===a)return W(db());var b=cb[a];a=void 0===b?P(a):b;return W(db()[a])},i:function(a){4>> 2) + "+ g+'], "parameter '+g+'");\nvar arg'+g+" = argType"+g+".readValueFromPointer(args);\nargs += argType"+g+"['argPackAdvance'];\n";f=(new Function("requireRegisteredType","Module","__emval_register",l+("var obj = new constructor("+f+");\nreturn __emval_register(obj);\n}\n")))(eb,e,W);fb[b]=f}return f(a,c,d)},k:function(){z()},s:function(a,b,c){D.copyWithin(a,b,b+c)},f:function(a){var b=D.length;a>>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,a+100663296);d=Math.max(a, d);0>>16);ua();var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},t:function(a,b){var c=0;hb().forEach(function(d,f){var g=b+c;f=H[a+4*f>>2]=g;for(g=0;g>0]=d.charCodeAt(g);J[f>>0]=0;c+=d.length+1});return 0},u:function(a,b){var c=hb();H[a>>2]=c.length;var d=0;c.forEach(function(f){d+=f.length+1});H[b>>2]=d;return 0},y:function(a){if(!noExitRuntime){if(e.onExit)e.onExit(a);ha=!0}w(a,new mb(a))}, w:function(){return 0},p:function(){},v:function(a,b,c,d){for(var f=0,g=0;g>2],h=H[b+(8*g+4)>>2],k=0;k>2]=f;return 0},r:function(){}}; (function(){function a(f){e.asm=f.exports;fa=e.asm.z;ua();L=e.asm.F;wa.unshift(e.asm.A);M--;e.monitorRunDependencies&&e.monitorRunDependencies(M);0==M&&(null!==za&&(clearInterval(za),za=null),N&&(f=N,N=null,f()))}function b(f){a(f.instance)}function c(f){return Aa().then(function(g){return WebAssembly.instantiate(g,d)}).then(f,function(g){A("failed to asynchronously prepare wasm: "+g);z(g)})}var d={a:nb};M++;e.monitorRunDependencies&&e.monitorRunDependencies(M);if(e.instantiateWasm)try{return e.instantiateWasm(d, a)}catch(f){return A("Module.instantiateWasm callback failed with error: "+f),!1}(function(){return C||"function"!==typeof WebAssembly.instantiateStreaming||O.startsWith("data:application/octet-stream;base64,")||"function"!==typeof fetch?c(b):fetch(O,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,d).then(b,function(g){A("wasm streaming compile failed: "+g);A("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(r);return{}})(); e.___wasm_call_ctors=function(){return(e.___wasm_call_ctors=e.asm.A).apply(null,arguments)};var lb=e._malloc=function(){return(lb=e._malloc=e.asm.B).apply(null,arguments)},X=e._free=function(){return(X=e._free=e.asm.C).apply(null,arguments)},$a=e.___getTypeName=function(){return($a=e.___getTypeName=e.asm.D).apply(null,arguments)};e.___embind_register_native_and_builtin_types=function(){return(e.___embind_register_native_and_builtin_types=e.asm.E).apply(null,arguments)}; e.dynCall_jiji=function(){return(e.dynCall_jiji=e.asm.G).apply(null,arguments)};var Z;function mb(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}N=function ob(){Z||pb();Z||(N=ob)}; function pb(){function a(){if(!Z&&(Z=!0,e.calledRun=!0,!ha)){Ba(wa);aa(e);if(e.onRuntimeInitialized)e.onRuntimeInitialized();if(e.postRun)for("function"==typeof e.postRun&&(e.postRun=[e.postRun]);e.postRun.length;){var b=e.postRun.shift();xa.unshift(b)}Ba(xa)}}if(!(0