Switch to Emscripten upstream

Looks like we've been stuck on Emscripten fastcomp backend, misssing out on all new optimisations between LLVM 6 and LLVM 11 and going via slow asm.js pipeline when building.

This changes Docker images for Emscripten projects to point to emscripten-upstream instead and commits the updated artifacts.
This commit is contained in:
Ingvar Stepanyan
2020-05-01 14:33:33 +01:00
committed by Ingvar Stepanyan
parent ed666dd381
commit 7da3f07333
17 changed files with 241 additions and 239 deletions

View File

@ -41,5 +41,5 @@ echo "============================================="
echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
echo "Did you update your docker image?"
echo "Run \`docker pull trzeci/emscripten\`"
echo "Run \`docker pull trzeci/emscripten-upstream\`"
echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"

View File

@ -61,21 +61,21 @@ RawImage quantize(std::string rawimage, int image_width, int image_height, int n
}
const liq_color zx_colors[] = {
{.a = 255, .r = 0, .g = 0, .b = 0}, // regular black
{.a = 255, .r = 0, .g = 0, .b = 215}, // regular blue
{.a = 255, .r = 215, .g = 0, .b = 0}, // regular red
{.a = 255, .r = 215, .g = 0, .b = 215}, // regular magenta
{.a = 255, .r = 0, .g = 215, .b = 0}, // regular green
{.a = 255, .r = 0, .g = 215, .b = 215}, // regular cyan
{.a = 255, .r = 215, .g = 215, .b = 0}, // regular yellow
{.a = 255, .r = 215, .g = 215, .b = 215}, // regular white
{.a = 255, .r = 0, .g = 0, .b = 255}, // bright blue
{.a = 255, .r = 255, .g = 0, .b = 0}, // bright red
{.a = 255, .r = 255, .g = 0, .b = 255}, // bright magenta
{.a = 255, .r = 0, .g = 255, .b = 0}, // bright green
{.a = 255, .r = 0, .g = 255, .b = 255}, // bright cyan
{.a = 255, .r = 255, .g = 255, .b = 0}, // bright yellow
{.a = 255, .r = 255, .g = 255, .b = 255} // bright white
{.r = 0, .g = 0, .b = 0, .a = 255}, // regular black
{.r = 0, .g = 0, .b = 215, .a = 255}, // regular blue
{.r = 215, .g = 0, .b = 0, .a = 255}, // regular red
{.r = 215, .g = 0, .b = 215, .a = 255}, // regular magenta
{.r = 0, .g = 215, .b = 0, .a = 255}, // regular green
{.r = 0, .g = 215, .b = 215, .a = 255}, // regular cyan
{.r = 215, .g = 215, .b = 0, .a = 255}, // regular yellow
{.r = 215, .g = 215, .b = 215, .a = 255}, // regular white
{.r = 0, .g = 0, .b = 255, .a = 255}, // bright blue
{.r = 255, .g = 0, .b = 0, .a = 255}, // bright red
{.r = 255, .g = 0, .b = 255, .a = 255}, // bright magenta
{.r = 0, .g = 255, .b = 0, .a = 255}, // bright green
{.r = 0, .g = 255, .b = 255, .a = 255}, // bright cyan
{.r = 255, .g = 255, .b = 0, .a = 255}, // bright yellow
{.r = 255, .g = 255, .b = 255, .a = 255} // bright white
};
uint8_t block[8 * 8 * 4];

View File

@ -6,66 +6,66 @@ var imagequant = (function() {
function(imagequant) {
imagequant = imagequant || {};
var e;e||(e=typeof imagequant !== 'undefined' ? imagequant : {});var m={},r;for(r in e)e.hasOwnProperty(r)&&(m[r]=e[r]);var u=!1,v=!1,aa=!1,ba=!1,ca=!1;u="object"===typeof window;v="function"===typeof importScripts;aa=(ba="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node)&&!u&&!v;ca=!u&&!aa&&!v;var w="",da,x,ea,fa;
if(aa)w=__dirname+"/",da=function(a,b){ea||(ea=require("fs"));fa||(fa=require("path"));a=fa.normalize(a);return ea.readFileSync(a,b?null:"utf8")},x=function(a){a=da(a,!0);a.buffer||(a=new Uint8Array(a));a.buffer||y("Assertion failed: undefined");return a},1<process.argv.length&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),process.on("uncaughtException",function(a){throw a;}),process.on("unhandledRejection",y),e.inspect=function(){return"[Emscripten Module object]"};else if(ca)"undefined"!=
typeof read&&(da=function(a){return read(a)}),x=function(a){if("function"===typeof readbuffer)return new Uint8Array(readbuffer(a));a=read(a,"binary");"object"===typeof a||y("Assertion failed: undefined");return a},"undefined"!==typeof print&&("undefined"===typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!==typeof printErr?printErr:print);else if(u||v)v?w=self.location.href:document.currentScript&&(w=document.currentScript.src),_scriptDir&&(w=_scriptDir),0!==w.indexOf("blob:")?
w=w.substr(0,w.lastIndexOf("/")+1):w="",da=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},v&&(x=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)});var ha=e.print||console.log.bind(console),z=e.printErr||console.warn.bind(console);for(r in m)m.hasOwnProperty(r)&&(e[r]=m[r]);m=null;var ia={"f64-rem":function(a,b){return a%b},"debugger":function(){}},A;e.wasmBinary&&(A=e.wasmBinary);
"object"!==typeof WebAssembly&&z("no native wasm support detected");var B,ja=new WebAssembly.Table({initial:79,maximum:79,element:"anyfunc"}),ka=!1,la="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;
function ma(a,b,c){var d=b+c;for(c=b;a[c]&&!(c>=d);)++c;if(16<c-b&&a.subarray&&la)return la.decode(a.subarray(b,c));for(d="";b<c;){var f=a[b++];if(f&128){var h=a[b++]&63;if(192==(f&224))d+=String.fromCharCode((f&31)<<6|h);else{var g=a[b++]&63;f=224==(f&240)?(f&15)<<12|h<<6|g:(f&7)<<18|h<<12|g<<6|a[b++]&63;65536>f?d+=String.fromCharCode(f):(f-=65536,d+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else d+=String.fromCharCode(f)}return d}function na(a){return a?ma(C,a,void 0):""}
function oa(a,b,c){var d=C;if(0<c){c=b+c-1;for(var f=0;f<a.length;++f){var h=a.charCodeAt(f);if(55296<=h&&57343>=h){var g=a.charCodeAt(++f);h=65536+((h&1023)<<10)|g&1023}if(127>=h){if(b>=c)break;d[b++]=h}else{if(2047>=h){if(b+1>=c)break;d[b++]=192|h>>6}else{if(65535>=h){if(b+2>=c)break;d[b++]=224|h>>12}else{if(b+3>=c)break;d[b++]=240|h>>18;d[b++]=128|h>>12&63}d[b++]=128|h>>6&63}d[b++]=128|h&63}}d[b]=0}}"undefined"!==typeof TextDecoder&&new TextDecoder("utf-16le");
function pa(a){0<a%65536&&(a+=65536-a%65536);return a}var buffer,qa,C,ra,sa,D,E,ta,ua;function va(a){buffer=a;e.HEAP8=qa=new Int8Array(a);e.HEAP16=ra=new Int16Array(a);e.HEAP32=D=new Int32Array(a);e.HEAPU8=C=new Uint8Array(a);e.HEAPU16=sa=new Uint16Array(a);e.HEAPU32=E=new Uint32Array(a);e.HEAPF32=ta=new Float32Array(a);e.HEAPF64=ua=new Float64Array(a)}var wa=e.TOTAL_MEMORY||16777216;e.wasmMemory?B=e.wasmMemory:B=new WebAssembly.Memory({initial:wa/65536});B&&(buffer=B.buffer);wa=buffer.byteLength;
va(buffer);D[2092]=5251440;function xa(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b();else{var c=b.Aa;"number"===typeof c?void 0===b.ra?e.dynCall_v(c):e.dynCall_vi(c,b.ra):c(void 0===b.ra?null:b.ra)}}}var ya=[],za=[],Aa=[],Ba=[];function Ca(){var a=e.preRun.shift();ya.unshift(a)}var G=0,Da=null,H=null;e.preloadedImages={};e.preloadedAudios={};
function y(a){if(e.onAbort)e.onAbort(a);ha(a);z(a);ka=!0;throw new WebAssembly.RuntimeError("abort("+a+"). Build with -s ASSERTIONS=1 for more info.");}function Ea(){var a=I;return String.prototype.startsWith?a.startsWith("data:application/octet-stream;base64,"):0===a.indexOf("data:application/octet-stream;base64,")}var I="imagequant.wasm";if(!Ea()){var Fa=I;I=e.locateFile?e.locateFile(Fa,w):w+Fa}
function Ga(){try{if(A)return new Uint8Array(A);if(x)return x(I);throw"both async and sync fetching of the wasm failed";}catch(a){y(a)}}function Ha(){return A||!u&&!v||"function"!==typeof fetch?new Promise(function(a){a(Ga())}):fetch(I,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file at '"+I+"'";return a.arrayBuffer()}).catch(function(){return Ga()})}
e.asm=function(){function a(a){e.asm=a.exports;G--;e.monitorRunDependencies&&e.monitorRunDependencies(G);0==G&&(null!==Da&&(clearInterval(Da),Da=null),H&&(a=H,H=null,a()))}function b(b){a(b.instance)}function c(a){return Ha().then(function(a){return WebAssembly.instantiate(a,d)}).then(a,function(a){z("failed to asynchronously prepare wasm: "+a);y(a)})}var d={env:Ia,wasi_unstable:Ia,global:{NaN:NaN,Infinity:Infinity},"global.Math":Math,asm2wasm:ia};G++;e.monitorRunDependencies&&e.monitorRunDependencies(G);
if(e.instantiateWasm)try{return e.instantiateWasm(d,a)}catch(f){return z("Module.instantiateWasm callback failed with error: "+f),!1}(function(){if(A||"function"!==typeof WebAssembly.instantiateStreaming||Ea()||"function"!==typeof fetch)return c(b);fetch(I,{credentials:"same-origin"}).then(function(a){return WebAssembly.instantiateStreaming(a,d).then(b,function(a){z("wasm streaming compile failed: "+a);z("falling back to ArrayBuffer instantiation");c(b)})})})();return{}};za.push({Aa:function(){Ja()}});
var Ka=[null,[],[]];function La(){return 0}function Ma(){return 0}function Na(a,b,c,d){try{for(var f=0,h=0;h<c;h++){for(var g=D[b+8*h>>2],k=D[b+(8*h+4)>>2],p=0;p<k;p++){var q=C[g+p],l=Ka[a];0===q||10===q?((1===a?ha:z)(ma(l,0)),l.length=0):l.push(q)}f+=k}D[d>>2]=f;return 0}catch(t){return"undefined"!==typeof FS&&t instanceof FS.Ia||y(t),t.Ja}}function Oa(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 Pa=void 0;
function J(a){for(var b="";C[a];)b+=Pa[C[a++]];return b}var K={},L={},Qa={};function Ra(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 Sa(a,b){a=Ra(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)}
function Ta(a){var b=Error,c=Sa(a,function(b){this.name=a;this.message=b;b=Error(b).stack;void 0!==b&&(this.stack=this.toString()+"\n"+b.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 M=void 0;function N(a){throw new M(a);}var Ua=void 0;function Va(a){throw new Ua(a);}
function Wa(a,b,c){function d(b){b=c(b);b.length!==a.length&&Va("Mismatched type converter count");for(var d=0;d<a.length;++d)Q(a[d],b[d])}a.forEach(function(a){Qa[a]=b});var f=Array(b.length),h=[],g=0;b.forEach(function(a,b){L.hasOwnProperty(a)?f[b]=L[a]:(h.push(a),K.hasOwnProperty(a)||(K[a]=[]),K[a].push(function(){f[b]=L[a];++g;g===h.length&&d(f)}))});0===h.length&&d(f)}
function Q(a,b,c){c=c||{};if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var d=b.name;a||N('type "'+d+'" must have a positive integer typeid pointer');if(L.hasOwnProperty(a)){if(c.Da)return;N("Cannot register type '"+d+"' twice")}L[a]=b;delete Qa[a];K.hasOwnProperty(a)&&(b=K[a],delete K[a],b.forEach(function(a){a()}))}function Xa(a){return{count:a.count,la:a.la,na:a.na,aa:a.aa,da:a.da,ea:a.ea,fa:a.fa}}
function Ya(a){N(a.$.da.ba.name+" instance already deleted")}var Za=!1;function $a(){}function ab(a){--a.count.value;0===a.count.value&&(a.ea?a.fa.ka(a.ea):a.da.ba.ka(a.aa))}
function R(a){if("undefined"===typeof FinalizationGroup)return R=function(a){return a},a;Za=new FinalizationGroup(function(a){for(var b=a.next();!b.done;b=a.next())b=b.value,b.aa?ab(b):console.warn("object already deleted: "+b.aa)});R=function(a){Za.register(a,a.$,a.$);return a};$a=function(a){Za.unregister(a.$)};return R(a)}var bb=void 0,cb=[];function db(){for(;cb.length;){var a=cb.pop();a.$.la=!1;a["delete"]()}}function T(){}var eb={};
function fb(a,b){var c=e;if(void 0===c[a].ha){var d=c[a];c[a]=function(){c[a].ha.hasOwnProperty(arguments.length)||N("Function '"+b+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+c[a].ha+")!");return c[a].ha[arguments.length].apply(this,arguments)};c[a].ha=[];c[a].ha[d.xa]=d}}
function gb(a,b,c){e.hasOwnProperty(a)?((void 0===c||void 0!==e[a].ha&&void 0!==e[a].ha[c])&&N("Cannot register public name '"+a+"' twice"),fb(a,a),e.hasOwnProperty(c)&&N("Cannot register multiple overloads of a function with the same number of arguments ("+c+")!"),e[a].ha[c]=b):(e[a]=b,void 0!==c&&(e[a].La=c))}function hb(a,b,c,d,f,h,g,k){this.name=a;this.constructor=b;this.ja=c;this.ka=d;this.ga=f;this.Ba=h;this.oa=g;this.za=k}
function ib(a,b,c){for(;b!==c;)b.oa||N("Expected null or instance of "+c.name+", got an instance of "+b.name),a=b.oa(a),b=b.ga;return a}function jb(a,b){if(null===b)return this.sa&&N("null is not a valid "+this.name),0;b.$||N('Cannot pass "'+U(b)+'" as a '+this.name);b.$.aa||N("Cannot pass deleted object as a pointer of type "+this.name);return ib(b.$.aa,b.$.da.ba,this.ba)}
function kb(a,b){if(null===b){this.sa&&N("null is not a valid "+this.name);if(this.qa){var c=this.Fa();null!==a&&a.push(this.ka,c);return c}return 0}b.$||N('Cannot pass "'+U(b)+'" as a '+this.name);b.$.aa||N("Cannot pass deleted object as a pointer of type "+this.name);!this.pa&&b.$.da.pa&&N("Cannot convert argument of type "+(b.$.fa?b.$.fa.name:b.$.da.name)+" to parameter type "+this.name);c=ib(b.$.aa,b.$.da.ba,this.ba);if(this.qa)switch(void 0===b.$.ea&&N("Passing raw pointer to smart pointer is illegal"),
this.Ha){case 0:b.$.fa===this?c=b.$.ea:N("Cannot convert argument of type "+(b.$.fa?b.$.fa.name:b.$.da.name)+" to parameter type "+this.name);break;case 1:c=b.$.ea;break;case 2:if(b.$.fa===this)c=b.$.ea;else{var d=b.clone();c=this.Ga(c,lb(function(){d["delete"]()}));null!==a&&a.push(this.ka,c)}break;default:N("Unsupporting sharing policy")}return c}
function ob(a,b){if(null===b)return this.sa&&N("null is not a valid "+this.name),0;b.$||N('Cannot pass "'+U(b)+'" as a '+this.name);b.$.aa||N("Cannot pass deleted object as a pointer of type "+this.name);b.$.da.pa&&N("Cannot convert argument of type "+b.$.da.name+" to parameter type "+this.name);return ib(b.$.aa,b.$.da.ba,this.ba)}function pb(a){return this.fromWireType(E[a>>2])}function qb(a,b,c){if(b===c)return a;if(void 0===c.ga)return null;a=qb(a,b,c.ga);return null===a?null:c.za(a)}var rb={};
function sb(a,b){for(void 0===b&&N("ptr should not be undefined");a.ga;)b=a.oa(b),a=a.ga;return rb[b]}function tb(a,b){b.da&&b.aa||Va("makeClassHandle requires ptr and ptrType");!!b.fa!==!!b.ea&&Va("Both smartPtrType and smartPtr must be specified");b.count={value:1};return R(Object.create(a,{$:{value:b}}))}
function V(a,b,c,d){this.name=a;this.ba=b;this.sa=c;this.pa=d;this.qa=!1;this.ka=this.Ga=this.Fa=this.wa=this.Ha=this.Ea=void 0;void 0!==b.ga?this.toWireType=kb:(this.toWireType=d?jb:ob,this.ia=null)}function ub(a,b,c){e.hasOwnProperty(a)||Va("Replacing nonexistant public symbol");void 0!==e[a].ha&&void 0!==c?e[a].ha[c]=b:(e[a]=b,e[a].xa=c)}
function W(a,b){a=J(a);if(void 0!==e["FUNCTION_TABLE_"+a])var c=e["FUNCTION_TABLE_"+a][b];else if("undefined"!==typeof FUNCTION_TABLE)c=FUNCTION_TABLE[b];else{c=e["dynCall_"+a];void 0===c&&(c=e["dynCall_"+a.replace(/f/g,"d")],void 0===c&&N("No dynCall invoker for signature: "+a));for(var d=[],f=1;f<a.length;++f)d.push("a"+f);f="return function "+("dynCall_"+a+"_"+b)+"("+d.join(", ")+") {\n";f+=" return dynCall(rawFunction"+(d.length?", ":"")+d.join(", ")+");\n";c=(new Function("dynCall","rawFunction",
f+"};\n"))(c,b)}"function"!==typeof c&&N("unknown function pointer with signature "+a+": "+b);return c}var vb=void 0;function wb(a){a=xb(a);var b=J(a);X(a);return b}function yb(a,b){function c(a){f[a]||L[a]||(Qa[a]?Qa[a].forEach(c):(d.push(a),f[a]=!0))}var d=[],f={};b.forEach(c);throw new vb(a+": "+d.map(wb).join([", "]));}function zb(a){for(;a.length;){var b=a.pop();a.pop()(b)}}
function Ab(a,b,c){a instanceof Object||N(c+' with invalid "this": '+a);a instanceof b.ba.constructor||N(c+' incompatible with "this" of type '+a.constructor.name);a.$.aa||N("cannot call emscripten binding method "+c+" on deleted object");return ib(a.$.aa,a.$.da.ba,b.ba)}var Bb=[],Y=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function Cb(a){4<a&&0===--Y[a].ta&&(Y[a]=void 0,Bb.push(a))}
function lb(a){switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:var b=Bb.length?Bb.pop():Y.length;Y[b]={ta:1,value:a};return b}}function U(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a}function Db(a,b){switch(b){case 2:return function(a){return this.fromWireType(ta[a>>2])};case 3:return function(a){return this.fromWireType(ua[a>>3])};default:throw new TypeError("Unknown float type: "+a);}}
function Eb(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=Sa(b.name||"unknownFunctionName",function(){});c.prototype=b.prototype;c=new c;a=b.apply(c,a);return a instanceof Object?a:c}function Fb(a,b){for(var c=[],d=0;d<a;d++)c.push(D[(b>>2)+d]);return c}
function Gb(a,b,c){switch(b){case 0:return c?function(a){return qa[a]}:function(a){return C[a]};case 1:return c?function(a){return ra[a>>1]}:function(a){return sa[a>>1]};case 2:return c?function(a){return D[a>>2]}:function(a){return E[a>>2]};default:throw new TypeError("Unknown integer type: "+a);}}function Hb(){return qa.length}function Z(){Z.ma||(Z.ma=[]);Z.ma.push(Ib());return Z.ma.length-1}for(var Jb=Array(256),Kb=0;256>Kb;++Kb)Jb[Kb]=String.fromCharCode(Kb);Pa=Jb;M=e.BindingError=Ta("BindingError");
Ua=e.InternalError=Ta("InternalError");T.prototype.isAliasOf=function(a){if(!(this instanceof T&&a instanceof T))return!1;var b=this.$.da.ba,c=this.$.aa,d=a.$.da.ba;for(a=a.$.aa;b.ga;)c=b.oa(c),b=b.ga;for(;d.ga;)a=d.oa(a),d=d.ga;return b===d&&c===a};T.prototype.clone=function(){this.$.aa||Ya(this);if(this.$.na)return this.$.count.value+=1,this;var a=R(Object.create(Object.getPrototypeOf(this),{$:{value:Xa(this.$)}}));a.$.count.value+=1;a.$.la=!1;return a};
T.prototype["delete"]=function(){this.$.aa||Ya(this);this.$.la&&!this.$.na&&N("Object already scheduled for deletion");$a(this);ab(this.$);this.$.na||(this.$.ea=void 0,this.$.aa=void 0)};T.prototype.isDeleted=function(){return!this.$.aa};T.prototype.deleteLater=function(){this.$.aa||Ya(this);this.$.la&&!this.$.na&&N("Object already scheduled for deletion");cb.push(this);1===cb.length&&bb&&bb(db);this.$.la=!0;return this};V.prototype.Ca=function(a){this.wa&&(a=this.wa(a));return a};
V.prototype.va=function(a){this.ka&&this.ka(a)};V.prototype.argPackAdvance=8;V.prototype.readValueFromPointer=pb;V.prototype.deleteObject=function(a){if(null!==a)a["delete"]()};
V.prototype.fromWireType=function(a){function b(){return this.qa?tb(this.ba.ja,{da:this.Ea,aa:c,fa:this,ea:a}):tb(this.ba.ja,{da:this,aa:a})}var c=this.Ca(a);if(!c)return this.va(a),null;var d=sb(this.ba,c);if(void 0!==d){if(0===d.$.count.value)return d.$.aa=c,d.$.ea=a,d.clone();d=d.clone();this.va(a);return d}d=this.ba.Ba(c);d=eb[d];if(!d)return b.call(this);d=this.pa?d.ya:d.pointerType;var f=qb(c,this.ba,d.ba);return null===f?b.call(this):this.qa?tb(d.ba.ja,{da:d,aa:f,fa:this,ea:a}):tb(d.ba.ja,
{da:d,aa:f})};e.getInheritedInstanceCount=function(){return Object.keys(rb).length};e.getLiveInheritedInstances=function(){var a=[],b;for(b in rb)rb.hasOwnProperty(b)&&a.push(rb[b]);return a};e.flushPendingDeletes=db;e.setDelayFunction=function(a){bb=a;cb.length&&bb&&bb(db)};vb=e.UnboundTypeError=Ta("UnboundTypeError");e.count_emval_handles=function(){for(var a=0,b=5;b<Y.length;++b)void 0!==Y[b]&&++a;return a};e.get_first_emval=function(){for(var a=5;a<Y.length;++a)if(void 0!==Y[a])return Y[a];return null};
var Ia={c:function(a,b,c,d){y("Assertion failed: "+na(a)+", at: "+[b?na(b):"unknown filename",c,d?na(d):"unknown function"])},v:function(){return La.apply(null,arguments)},r:function(){return Ma.apply(null,arguments)},q:function(){return Na.apply(null,arguments)},p:function(a,b,c,d,f){var h=Oa(c);b=J(b);Q(a,{name:b,fromWireType:function(a){return!!a},toWireType:function(a,b){return b?d:f},argPackAdvance:8,readValueFromPointer:function(a){if(1===c)var d=qa;else if(2===c)d=ra;else if(4===c)d=D;else throw new TypeError("Unknown boolean type size: "+
b);return this.fromWireType(d[a>>h])},ia:null})},o:function(a,b,c,d,f,h,g,k,p,q,l,t,O){l=J(l);h=W(f,h);k&&(k=W(g,k));q&&(q=W(p,q));O=W(t,O);var F=Ra(l);gb(F,function(){yb("Cannot construct "+l+" due to unbound types",[d])});Wa([a,b,c],d?[d]:[],function(b){b=b[0];if(d){var c=b.ba;var f=c.ja}else f=T.prototype;b=Sa(F,function(){if(Object.getPrototypeOf(this)!==p)throw new M("Use 'new' to construct "+l);if(void 0===g.ua)throw new M(l+" has no accessible constructor");var a=g.ua[arguments.length];if(void 0===
a)throw new M("Tried to invoke ctor of "+l+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(g.ua).toString()+") parameters instead!");return a.apply(this,arguments)});var p=Object.create(f,{constructor:{value:b}});b.prototype=p;var g=new hb(l,b,p,O,c,h,k,q);c=new V(l,g,!0,!1);f=new V(l+"*",g,!1,!1);var t=new V(l+" const*",g,!1,!0);eb[a]={pointerType:f,ya:t};ub(F,b);return[c,f,t]})},h:function(a,b,c,d,f,h,g,k,p,q){b=J(b);f=W(d,f);Wa([],[a],function(a){a=a[0];var d=
a.name+"."+b,l={get:function(){yb("Cannot access "+d+" due to unbound types",[c,g])},enumerable:!0,configurable:!0};p?l.set=function(){yb("Cannot access "+d+" due to unbound types",[c,g])}:l.set=function(){N(d+" is a read-only property")};Object.defineProperty(a.ba.ja,b,l);Wa([],p?[c,g]:[c],function(c){var g=c[0],l={get:function(){var b=Ab(this,a,d+" getter");return g.fromWireType(f(h,b))},enumerable:!0};if(p){p=W(k,p);var t=c[1];l.set=function(b){var c=Ab(this,a,d+" setter"),f=[];p(q,c,t.toWireType(f,
b));zb(f)}}Object.defineProperty(a.ba.ja,b,l);return[]});return[]})},n:function(a,b){b=J(b);Q(a,{name:b,fromWireType:function(a){var b=Y[a].value;Cb(a);return b},toWireType:function(a,b){return lb(b)},argPackAdvance:8,readValueFromPointer:pb,ia:null})},j:function(a,b,c){c=Oa(c);b=J(b);Q(a,{name:b,fromWireType:function(a){return a},toWireType:function(a,b){if("number"!==typeof b&&"boolean"!==typeof b)throw new TypeError('Cannot convert "'+U(b)+'" to '+this.name);return b},argPackAdvance:8,readValueFromPointer:Db(b,
c),ia:null})},e:function(a,b,c,d,f,h){var g=Fb(b,c);a=J(a);f=W(d,f);gb(a,function(){yb("Cannot call "+a+" due to unbound types",g)},b-1);Wa([],g,function(c){var d=[c[0],null].concat(c.slice(1)),g=c=a,l=f,k=d.length;2>k&&N("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var O=null!==d[1]&&!1,F=!1,n=1;n<d.length;++n)if(null!==d[n]&&void 0===d[n].ia){F=!0;break}var mb="void"!==d[0].name,P="",S="";for(n=0;n<k-2;++n)P+=(0!==n?", ":"")+"arg"+n,S+=(0!==n?", ":"")+"arg"+
n+"Wired";g="return function "+Ra(g)+"("+P+") {\nif (arguments.length !== "+(k-2)+") {\nthrowBindingError('function "+g+" called with ' + arguments.length + ' arguments, expected "+(k-2)+" args!');\n}\n";F&&(g+="var destructors = [];\n");var nb=F?"destructors":"null";P="throwBindingError invoker fn runDestructors retType classParam".split(" ");l=[N,l,h,zb,d[0],d[1]];O&&(g+="var thisWired = classParam.toWireType("+nb+", this);\n");for(n=0;n<k-2;++n)g+="var arg"+n+"Wired = argType"+n+".toWireType("+
nb+", arg"+n+"); // "+d[n+2].name+"\n",P.push("argType"+n),l.push(d[n+2]);O&&(S="thisWired"+(0<S.length?", ":"")+S);g+=(mb?"var rv = ":"")+"invoker(fn"+(0<S.length?", ":"")+S+");\n";if(F)g+="runDestructors(destructors);\n";else for(n=O?1:2;n<d.length;++n)k=1===n?"thisWired":"arg"+(n-2)+"Wired",null!==d[n].ia&&(g+=k+"_dtor("+k+"); // "+d[n].name+"\n",P.push(k+"_dtor"),l.push(d[n].ia));mb&&(g+="var ret = retType.fromWireType(rv);\nreturn ret;\n");P.push(g+"}\n");d=Eb(P).apply(null,l);ub(c,d,b-1);return[]})},
d:function(a,b,c,d,f){function h(a){return a}b=J(b);-1===f&&(f=4294967295);var g=Oa(c);if(0===d){var k=32-8*c;h=function(a){return a<<k>>>k}}var p=-1!=b.indexOf("unsigned");Q(a,{name:b,fromWireType:h,toWireType:function(a,c){if("number"!==typeof c&&"boolean"!==typeof c)throw new TypeError('Cannot convert "'+U(c)+'" to '+this.name);if(c<d||c>f)throw new TypeError('Passing a number "'+U(c)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+d+", "+f+"]!");
return p?c>>>0:c|0},argPackAdvance:8,readValueFromPointer:Gb(b,g,0!==d),ia:null})},b:function(a,b,c){function d(a){a>>=2;var b=E;return new f(b.buffer,b[a+1],b[a])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=J(c);Q(a,{name:c,fromWireType:d,argPackAdvance:8,readValueFromPointer:d},{Da:!0})},m:function(a,b){b=J(b);var c="std::string"===b;Q(a,{name:b,fromWireType:function(a){var b=E[a>>2];if(c){var d=C[a+4+b],g=0;0!=d&&(g=d,C[a+4+b]=0);var k=
a+4;for(d=0;d<=b;++d){var p=a+4+d;if(0==C[p]){k=na(k);if(void 0===q)var q=k;else q+=String.fromCharCode(0),q+=k;k=p+1}}0!=g&&(C[a+4+b]=g)}else{q=Array(b);for(d=0;d<b;++d)q[d]=String.fromCharCode(C[a+4+d]);q=q.join("")}X(a);return q},toWireType:function(a,b){b instanceof ArrayBuffer&&(b=new Uint8Array(b));var d="string"===typeof b;d||b instanceof Uint8Array||b instanceof Uint8ClampedArray||b instanceof Int8Array||N("Cannot pass non-string to std::string");var f=(c&&d?function(){for(var a=0,c=0;c<b.length;++c){var d=
b.charCodeAt(c);55296<=d&&57343>=d&&(d=65536+((d&1023)<<10)|b.charCodeAt(++c)&1023);127>=d?++a:a=2047>=d?a+2:65535>=d?a+3:a+4}return a}:function(){return b.length})(),k=Lb(4+f+1);E[k>>2]=f;if(c&&d)oa(b,k+4,f+1);else if(d)for(d=0;d<f;++d){var p=b.charCodeAt(d);255<p&&(X(k),N("String has UTF-16 code units that do not fit in 8 bits"));C[k+4+d]=p}else for(d=0;d<f;++d)C[k+4+d]=b[d];null!==a&&a.push(X,k);return k},argPackAdvance:8,readValueFromPointer:pb,ia:function(a){X(a)}})},z:function(a,b,c){c=J(c);
if(2===b){var d=function(){return sa};var f=1}else 4===b&&(d=function(){return E},f=2);Q(a,{name:c,fromWireType:function(a){for(var b=d(),c=E[a>>2],h=Array(c),q=a+4>>f,l=0;l<c;++l)h[l]=String.fromCharCode(b[q+l]);X(a);return h.join("")},toWireType:function(a,c){var h=c.length,g=Lb(4+h*b),q=d();E[g>>2]=h;for(var l=g+4>>f,t=0;t<h;++t)q[l+t]=c.charCodeAt(t);null!==a&&a.push(X,g);return g},argPackAdvance:8,readValueFromPointer:pb,ia:function(a){X(a)}})},y:function(a,b){b=J(b);Q(a,{Ka:!0,name:b,argPackAdvance:0,
fromWireType:function(){},toWireType:function(){}})},l:Cb,x:function(a){4<a&&(Y[a].ta+=1)},k:function(a,b){var c=L[a];void 0===c&&N("_emval_take_value has unknown type "+wb(a));a=c.readValueFromPointer(b);return lb(a)},__memory_base:1024,__table_base:0,i:function(){y()},w:Hb,u:function(a,b,c){C.set(C.subarray(b,b+c),a)},t:function(a){if(2147418112<a)return!1;for(var b=Math.max(Hb(),16777216);b<a;)536870912>=b?b=pa(2*b):b=Math.min(pa((3*b+2147483648)/4),2147418112);a:{try{B.grow(b-buffer.byteLength+
65535>>16);va(B.buffer);var c=1;break a}catch(d){}c=void 0}return c?!0:!1},g:function(a){var b=Z.ma[a];Z.ma.splice(a,1);Mb(b)},f:Z,a:y,memory:B,s:function(){},table:ja},Nb=e.asm({},Ia,buffer);e.asm=Nb;e.___embind_register_native_and_builtin_types=function(){return e.asm.A.apply(null,arguments)};
var xb=e.___getTypeName=function(){return e.asm.B.apply(null,arguments)},X=e._free=function(){return e.asm.C.apply(null,arguments)},Lb=e._malloc=function(){return e.asm.D.apply(null,arguments)},Ja=e.globalCtors=function(){return e.asm.X.apply(null,arguments)},Mb=e.stackRestore=function(){return e.asm.Y.apply(null,arguments)},Ib=e.stackSave=function(){return e.asm.Z.apply(null,arguments)};e.dynCall_i=function(){return e.asm.E.apply(null,arguments)};
e.dynCall_ifi=function(){return e.asm.F.apply(null,arguments)};e.dynCall_ii=function(){return e.asm.G.apply(null,arguments)};e.dynCall_iidiiii=function(){return e.asm.H.apply(null,arguments)};e.dynCall_iii=function(){return e.asm.I.apply(null,arguments)};e.dynCall_iiii=function(){return e.asm.J.apply(null,arguments)};e.dynCall_iiiiif=function(){return e.asm.K.apply(null,arguments)};e.dynCall_iiiiiif=function(){return e.asm.L.apply(null,arguments)};
e.dynCall_jiji=function(){return e.asm.M.apply(null,arguments)};e.dynCall_v=function(){return e.asm.N.apply(null,arguments)};e.dynCall_vi=function(){return e.asm.O.apply(null,arguments)};e.dynCall_vif=function(){return e.asm.P.apply(null,arguments)};e.dynCall_vii=function(){return e.asm.Q.apply(null,arguments)};e.dynCall_viii=function(){return e.asm.R.apply(null,arguments)};e.dynCall_viiii=function(){return e.asm.S.apply(null,arguments)};e.dynCall_viiiif=function(){return e.asm.T.apply(null,arguments)};
e.dynCall_viiiii=function(){return e.asm.U.apply(null,arguments)};e.dynCall_viiiiif=function(){return e.asm.V.apply(null,arguments)};e.dynCall_viiiiii=function(){return e.asm.W.apply(null,arguments)};e.asm=Nb;var Ob;e.then=function(a){if(Ob)a(e);else{var b=e.onRuntimeInitialized;e.onRuntimeInitialized=function(){b&&b();a(e)}}return e};H=function Pb(){Ob||Qb();Ob||(H=Pb)};
function Qb(){function a(){if(!Ob&&(Ob=!0,!ka)){xa(za);xa(Aa);if(e.onRuntimeInitialized)e.onRuntimeInitialized();if(e.postRun)for("function"==typeof e.postRun&&(e.postRun=[e.postRun]);e.postRun.length;){var a=e.postRun.shift();Ba.unshift(a)}xa(Ba)}}if(!(0<G)){if(e.preRun)for("function"==typeof e.preRun&&(e.preRun=[e.preRun]);e.preRun.length;)Ca();xa(ya);0<G||(e.setStatus?(e.setStatus("Running..."),setTimeout(function(){setTimeout(function(){e.setStatus("")},1);a()},1)):a())}}e.run=Qb;
if(e.preInit)for("function"==typeof e.preInit&&(e.preInit=[e.preInit]);0<e.preInit.length;)e.preInit.pop()();Qb();
var e;e||(e=typeof imagequant !== 'undefined' ? imagequant : {});var r={},t;for(t in e)e.hasOwnProperty(t)&&(r[t]=e[t]);var aa=!1,z=!1,ba=!1,ca=!1;aa="object"===typeof window;z="function"===typeof importScripts;ba="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node;ca=!aa&&!ba&&!z;var A="",da,B,ea,ha;
if(ba)A=z?require("path").dirname(A)+"/":__dirname+"/",da=function(a,b){ea||(ea=require("fs"));ha||(ha=require("path"));a=ha.normalize(a);return ea.readFileSync(a,b?null:"utf8")},B=function(a){a=da(a,!0);a.buffer||(a=new Uint8Array(a));a.buffer||C("Assertion failed: undefined");return a},1<process.argv.length&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),process.on("uncaughtException",function(a){throw a;}),process.on("unhandledRejection",C),e.inspect=function(){return"[Emscripten Module object]"};
else if(ca)"undefined"!=typeof read&&(da=function(a){return read(a)}),B=function(a){if("function"===typeof readbuffer)return new Uint8Array(readbuffer(a));a=read(a,"binary");"object"===typeof a||C("Assertion failed: undefined");return a},"undefined"!==typeof print&&("undefined"===typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!==typeof printErr?printErr:print);else if(aa||z)z?A=self.location.href:document.currentScript&&(A=document.currentScript.src),_scriptDir&&
(A=_scriptDir),0!==A.indexOf("blob:")?A=A.substr(0,A.lastIndexOf("/")+1):A="",da=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},z&&(B=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)});var ia=e.print||console.log.bind(console),E=e.printErr||console.warn.bind(console);for(t in r)r.hasOwnProperty(t)&&(e[t]=r[t]);r=null;var F;e.wasmBinary&&(F=e.wasmBinary);var noExitRuntime;
e.noExitRuntime&&(noExitRuntime=e.noExitRuntime);"object"!==typeof WebAssembly&&E("no native wasm support detected");var G,ja=new WebAssembly.Table({initial:49,maximum:49,element:"anyfunc"}),ka=!1,la="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;
function ma(a,b,c){var d=b+c;for(c=b;a[c]&&!(c>=d);)++c;if(16<c-b&&a.subarray&&la)return la.decode(a.subarray(b,c));for(d="";b<c;){var f=a[b++];if(f&128){var g=a[b++]&63;if(192==(f&224))d+=String.fromCharCode((f&31)<<6|g);else{var n=a[b++]&63;f=224==(f&240)?(f&15)<<12|g<<6|n:(f&7)<<18|g<<12|n<<6|a[b++]&63;65536>f?d+=String.fromCharCode(f):(f-=65536,d+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else d+=String.fromCharCode(f)}return d}function na(a){return a?ma(H,a,void 0):""}
function oa(a,b,c){var d=H;if(0<c){c=b+c-1;for(var f=0;f<a.length;++f){var g=a.charCodeAt(f);if(55296<=g&&57343>=g){var n=a.charCodeAt(++f);g=65536+((g&1023)<<10)|n&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 pa="undefined"!==typeof TextDecoder?new TextDecoder("utf-16le"):void 0;
function qa(a){var b;for(b=a>>1;I[b];)++b;b<<=1;if(32<b-a&&pa)return pa.decode(H.subarray(a,b));b=0;for(var c="";;){var d=I[a+2*b>>1];if(0==d)return c;++b;c+=String.fromCharCode(d)}}function ra(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<c;++f)I[b>>1]=a.charCodeAt(f),b+=2;I[b>>1]=0;return b-d}function sa(a){return 2*a.length}
function ta(a){for(var b=0,c="";;){var d=J[a+4*b>>2];if(0==d)return c;++b;65536<=d?(d-=65536,c+=String.fromCharCode(55296|d>>10,56320|d&1023)):c+=String.fromCharCode(d)}}function ua(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<a.length;++f){var g=a.charCodeAt(f);if(55296<=g&&57343>=g){var n=a.charCodeAt(++f);g=65536+((g&1023)<<10)|n&1023}J[b>>2]=g;b+=4;if(b+4>c)break}J[b>>2]=0;return b-d}
function va(a){for(var b=0,c=0;c<a.length;++c){var d=a.charCodeAt(c);55296<=d&&57343>=d&&++c;b+=4}return b}var K,wa,H,I,xa,J,L,ya,za;function Aa(a){K=a;e.HEAP8=wa=new Int8Array(a);e.HEAP16=I=new Int16Array(a);e.HEAP32=J=new Int32Array(a);e.HEAPU8=H=new Uint8Array(a);e.HEAPU16=xa=new Uint16Array(a);e.HEAPU32=L=new Uint32Array(a);e.HEAPF32=ya=new Float32Array(a);e.HEAPF64=za=new Float64Array(a)}var Ba=e.INITIAL_MEMORY||16777216;e.wasmMemory?G=e.wasmMemory:G=new WebAssembly.Memory({initial:Ba/65536});
G&&(K=G.buffer);Ba=K.byteLength;Aa(K);J[1848]=5250432;function Ca(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b();else{var c=b.sa;"number"===typeof c?void 0===b.ja?e.dynCall_v(c):e.dynCall_vi(c,b.ja):c(void 0===b.ja?null:b.ja)}}}var Da=[],Ea=[],Fa=[],Ga=[];function Ha(){var a=e.preRun.shift();Da.unshift(a)}var M=0,Ia=null,N=null;e.preloadedImages={};e.preloadedAudios={};
function C(a){if(e.onAbort)e.onAbort(a);ia(a);E(a);ka=!0;throw new WebAssembly.RuntimeError("abort("+a+"). Build with -s ASSERTIONS=1 for more info.");}function Ja(){var a=O;return String.prototype.startsWith?a.startsWith("data:application/octet-stream;base64,"):0===a.indexOf("data:application/octet-stream;base64,")}var O="imagequant.wasm";if(!Ja()){var Ka=O;O=e.locateFile?e.locateFile(Ka,A):A+Ka}
function La(){try{if(F)return new Uint8Array(F);if(B)return B(O);throw"both async and sync fetching of the wasm failed";}catch(a){C(a)}}function Ma(){return F||!aa&&!z||"function"!==typeof fetch?new Promise(function(a){a(La())}):fetch(O,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file at '"+O+"'";return a.arrayBuffer()}).catch(function(){return La()})}Ea.push({sa:function(){Na()}});
function Oa(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 Pa=void 0;function P(a){for(var b="";H[a];)b+=Pa[H[a++]];return b}var Q={},R={},Qa={};function Ra(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 Sa(a,b){a=Ra(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)}function Ta(a){var b=Error,c=Sa(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 Ua=void 0;function S(a){throw new Ua(a);}var Va=void 0;function Wa(a){throw new Va(a);}function Xa(a,b,c){function d(h){h=c(h);h.length!==a.length&&Wa("Mismatched type converter count");for(var k=0;k<a.length;++k)T(a[k],h[k])}a.forEach(function(h){Qa[h]=b});var f=Array(b.length),g=[],n=0;b.forEach(function(h,k){R.hasOwnProperty(h)?f[k]=R[h]:(g.push(h),Q.hasOwnProperty(h)||(Q[h]=[]),Q[h].push(function(){f[k]=R[h];++n;n===g.length&&d(f)}))});0===g.length&&d(f)}
function T(a,b,c){c=c||{};if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var d=b.name;a||S('type "'+d+'" must have a positive integer typeid pointer');if(R.hasOwnProperty(a)){if(c.va)return;S("Cannot register type '"+d+"' twice")}R[a]=b;delete Qa[a];Q.hasOwnProperty(a)&&(b=Q[a],delete Q[a],b.forEach(function(f){f()}))}function Ya(a){return{count:a.count,ea:a.ea,fa:a.fa,U:a.U,W:a.W,X:a.X,Y:a.Y}}
function Za(a){S(a.T.W.V.name+" instance already deleted")}var $a=!1;function ab(){}function bb(a){--a.count.value;0===a.count.value&&(a.X?a.Y.da(a.X):a.W.V.da(a.U))}function cb(a){if("undefined"===typeof FinalizationGroup)return cb=function(b){return b},a;$a=new FinalizationGroup(function(b){for(var c=b.next();!c.done;c=b.next())c=c.value,c.U?bb(c):console.warn("object already deleted: "+c.U)});cb=function(b){$a.register(b,b.T,b.T);return b};ab=function(b){$a.unregister(b.T)};return cb(a)}
var db=void 0,eb=[];function fb(){for(;eb.length;){var a=eb.pop();a.T.ea=!1;a["delete"]()}}function U(){}var gb={};function hb(a,b){var c=e;if(void 0===c[a].$){var d=c[a];c[a]=function(){c[a].$.hasOwnProperty(arguments.length)||S("Function '"+b+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+c[a].$+")!");return c[a].$[arguments.length].apply(this,arguments)};c[a].$=[];c[a].$[d.pa]=d}}
function ib(a,b,c){e.hasOwnProperty(a)?((void 0===c||void 0!==e[a].$&&void 0!==e[a].$[c])&&S("Cannot register public name '"+a+"' twice"),hb(a,a),e.hasOwnProperty(c)&&S("Cannot register multiple overloads of a function with the same number of arguments ("+c+")!"),e[a].$[c]=b):(e[a]=b,void 0!==c&&(e[a].Ba=c))}function jb(a,b,c,d,f,g,n,h){this.name=a;this.constructor=b;this.ba=c;this.da=d;this.Z=f;this.ta=g;this.ga=n;this.ra=h}
function kb(a,b,c){for(;b!==c;)b.ga||S("Expected null or instance of "+c.name+", got an instance of "+b.name),a=b.ga(a),b=b.Z;return a}function lb(a,b){if(null===b)return this.ka&&S("null is not a valid "+this.name),0;b.T||S('Cannot pass "'+V(b)+'" as a '+this.name);b.T.U||S("Cannot pass deleted object as a pointer of type "+this.name);return kb(b.T.U,b.T.W.V,this.V)}
function mb(a,b){if(null===b){this.ka&&S("null is not a valid "+this.name);if(this.ia){var c=this.xa();null!==a&&a.push(this.da,c);return c}return 0}b.T||S('Cannot pass "'+V(b)+'" as a '+this.name);b.T.U||S("Cannot pass deleted object as a pointer of type "+this.name);!this.ha&&b.T.W.ha&&S("Cannot convert argument of type "+(b.T.Y?b.T.Y.name:b.T.W.name)+" to parameter type "+this.name);c=kb(b.T.U,b.T.W.V,this.V);if(this.ia)switch(void 0===b.T.X&&S("Passing raw pointer to smart pointer is illegal"),
this.za){case 0:b.T.Y===this?c=b.T.X:S("Cannot convert argument of type "+(b.T.Y?b.T.Y.name:b.T.W.name)+" to parameter type "+this.name);break;case 1:c=b.T.X;break;case 2:if(b.T.Y===this)c=b.T.X;else{var d=b.clone();c=this.ya(c,nb(function(){d["delete"]()}));null!==a&&a.push(this.da,c)}break;default:S("Unsupporting sharing policy")}return c}
function ob(a,b){if(null===b)return this.ka&&S("null is not a valid "+this.name),0;b.T||S('Cannot pass "'+V(b)+'" as a '+this.name);b.T.U||S("Cannot pass deleted object as a pointer of type "+this.name);b.T.W.ha&&S("Cannot convert argument of type "+b.T.W.name+" to parameter type "+this.name);return kb(b.T.U,b.T.W.V,this.V)}function pb(a){return this.fromWireType(L[a>>2])}function rb(a,b,c){if(b===c)return a;if(void 0===c.Z)return null;a=rb(a,b,c.Z);return null===a?null:c.ra(a)}var sb={};
function tb(a,b){for(void 0===b&&S("ptr should not be undefined");a.Z;)b=a.ga(b),a=a.Z;return sb[b]}function ub(a,b){b.W&&b.U||Wa("makeClassHandle requires ptr and ptrType");!!b.Y!==!!b.X&&Wa("Both smartPtrType and smartPtr must be specified");b.count={value:1};return cb(Object.create(a,{T:{value:b}}))}
function W(a,b,c,d){this.name=a;this.V=b;this.ka=c;this.ha=d;this.ia=!1;this.da=this.ya=this.xa=this.oa=this.za=this.wa=void 0;void 0!==b.Z?this.toWireType=mb:(this.toWireType=d?lb:ob,this.aa=null)}function vb(a,b,c){e.hasOwnProperty(a)||Wa("Replacing nonexistant public symbol");void 0!==e[a].$&&void 0!==c?e[a].$[c]=b:(e[a]=b,e[a].pa=c)}
function X(a,b){a=P(a);var c=e["dynCall_"+a];for(var d=[],f=1;f<a.length;++f)d.push("a"+f);f="return function dynCall_"+(a+"_"+b)+"("+d.join(", ")+") {\n";f+=" return dynCall(rawFunction"+(d.length?", ":"")+d.join(", ")+");\n";c=(new Function("dynCall","rawFunction",f+"};\n"))(c,b);"function"!==typeof c&&S("unknown function pointer with signature "+a+": "+b);return c}var wb=void 0;function xb(a){a=yb(a);var b=P(a);Y(a);return b}
function zb(a,b){function c(g){f[g]||R[g]||(Qa[g]?Qa[g].forEach(c):(d.push(g),f[g]=!0))}var d=[],f={};b.forEach(c);throw new wb(a+": "+d.map(xb).join([", "]));}function Ab(a){for(;a.length;){var b=a.pop();a.pop()(b)}}function Bb(a,b,c){a instanceof Object||S(c+' with invalid "this": '+a);a instanceof b.V.constructor||S(c+' incompatible with "this" of type '+a.constructor.name);a.T.U||S("cannot call emscripten binding method "+c+" on deleted object");return kb(a.T.U,a.T.W.V,b.V)}
var Cb=[],Z=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function Db(a){4<a&&0===--Z[a].la&&(Z[a]=void 0,Cb.push(a))}function nb(a){switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:var b=Cb.length?Cb.pop():Z.length;Z[b]={la:1,value:a};return b}}function V(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a}
function Eb(a,b){switch(b){case 2:return function(c){return this.fromWireType(ya[c>>2])};case 3:return function(c){return this.fromWireType(za[c>>3])};default:throw new TypeError("Unknown float type: "+a);}}function Fb(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=Sa(b.name||"unknownFunctionName",function(){});c.prototype=b.prototype;c=new c;a=b.apply(c,a);return a instanceof Object?a:c}
function Gb(a,b){for(var c=[],d=0;d<a;d++)c.push(J[(b>>2)+d]);return c}function Hb(a,b,c){switch(b){case 0:return c?function(d){return wa[d]}:function(d){return H[d]};case 1:return c?function(d){return I[d>>1]}:function(d){return xa[d>>1]};case 2:return c?function(d){return J[d>>2]}:function(d){return L[d>>2]};default:throw new TypeError("Unknown integer type: "+a);}}for(var Ib=[null,[],[]],Jb=Array(256),Kb=0;256>Kb;++Kb)Jb[Kb]=String.fromCharCode(Kb);Pa=Jb;Ua=e.BindingError=Ta("BindingError");
Va=e.InternalError=Ta("InternalError");U.prototype.isAliasOf=function(a){if(!(this instanceof U&&a instanceof U))return!1;var b=this.T.W.V,c=this.T.U,d=a.T.W.V;for(a=a.T.U;b.Z;)c=b.ga(c),b=b.Z;for(;d.Z;)a=d.ga(a),d=d.Z;return b===d&&c===a};U.prototype.clone=function(){this.T.U||Za(this);if(this.T.fa)return this.T.count.value+=1,this;var a=cb(Object.create(Object.getPrototypeOf(this),{T:{value:Ya(this.T)}}));a.T.count.value+=1;a.T.ea=!1;return a};
U.prototype["delete"]=function(){this.T.U||Za(this);this.T.ea&&!this.T.fa&&S("Object already scheduled for deletion");ab(this);bb(this.T);this.T.fa||(this.T.X=void 0,this.T.U=void 0)};U.prototype.isDeleted=function(){return!this.T.U};U.prototype.deleteLater=function(){this.T.U||Za(this);this.T.ea&&!this.T.fa&&S("Object already scheduled for deletion");eb.push(this);1===eb.length&&db&&db(fb);this.T.ea=!0;return this};W.prototype.ua=function(a){this.oa&&(a=this.oa(a));return a};
W.prototype.na=function(a){this.da&&this.da(a)};W.prototype.argPackAdvance=8;W.prototype.readValueFromPointer=pb;W.prototype.deleteObject=function(a){if(null!==a)a["delete"]()};
W.prototype.fromWireType=function(a){function b(){return this.ia?ub(this.V.ba,{W:this.wa,U:c,Y:this,X:a}):ub(this.V.ba,{W:this,U:a})}var c=this.ua(a);if(!c)return this.na(a),null;var d=tb(this.V,c);if(void 0!==d){if(0===d.T.count.value)return d.T.U=c,d.T.X=a,d.clone();d=d.clone();this.na(a);return d}d=this.V.ta(c);d=gb[d];if(!d)return b.call(this);d=this.ha?d.qa:d.pointerType;var f=rb(c,this.V,d.V);return null===f?b.call(this):this.ia?ub(d.V.ba,{W:d,U:f,Y:this,X:a}):ub(d.V.ba,{W:d,U:f})};
e.getInheritedInstanceCount=function(){return Object.keys(sb).length};e.getLiveInheritedInstances=function(){var a=[],b;for(b in sb)sb.hasOwnProperty(b)&&a.push(sb[b]);return a};e.flushPendingDeletes=fb;e.setDelayFunction=function(a){db=a;eb.length&&db&&db(fb)};wb=e.UnboundTypeError=Ta("UnboundTypeError");e.count_emval_handles=function(){for(var a=0,b=5;b<Z.length;++b)void 0!==Z[b]&&++a;return a};e.get_first_emval=function(){for(var a=5;a<Z.length;++a)if(void 0!==Z[a])return Z[a];return null};
var Mb={b:function(a,b,c,d){C("Assertion failed: "+na(a)+", at: "+[b?na(b):"unknown filename",c,d?na(d):"unknown function"])},u:function(a,b,c,d,f){var g=Oa(c);b=P(b);T(a,{name:b,fromWireType:function(n){return!!n},toWireType:function(n,h){return h?d:f},argPackAdvance:8,readValueFromPointer:function(n){if(1===c)var h=wa;else if(2===c)h=I;else if(4===c)h=J;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(h[n>>g])},aa:null})},o:function(a,b,c,d,f,g,n,h,k,l,m,q,v){m=
P(m);g=X(f,g);h&&(h=X(n,h));l&&(l=X(k,l));v=X(q,v);var u=Ra(m);ib(u,function(){zb("Cannot construct "+m+" due to unbound types",[d])});Xa([a,b,c],d?[d]:[],function(p){p=p[0];if(d){var w=p.V;var x=w.ba}else x=U.prototype;p=Sa(u,function(){if(Object.getPrototypeOf(this)!==y)throw new Ua("Use 'new' to construct "+m);if(void 0===D.ma)throw new Ua(m+" has no accessible constructor");var qb=D.ma[arguments.length];if(void 0===qb)throw new Ua("Tried to invoke ctor of "+m+" with invalid number of parameters ("+
arguments.length+") - expected ("+Object.keys(D.ma).toString()+") parameters instead!");return qb.apply(this,arguments)});var y=Object.create(x,{constructor:{value:p}});p.prototype=y;var D=new jb(m,p,y,v,w,g,h,l);w=new W(m,D,!0,!1);x=new W(m+"*",D,!1,!1);var fa=new W(m+" const*",D,!1,!0);gb[a]={pointerType:x,qa:fa};vb(u,p);return[w,x,fa]})},e:function(a,b,c,d,f,g,n,h,k,l){b=P(b);f=X(d,f);Xa([],[a],function(m){m=m[0];var q=m.name+"."+b,v={get:function(){zb("Cannot access "+q+" due to unbound types",
[c,n])},enumerable:!0,configurable:!0};k?v.set=function(){zb("Cannot access "+q+" due to unbound types",[c,n])}:v.set=function(){S(q+" is a read-only property")};Object.defineProperty(m.V.ba,b,v);Xa([],k?[c,n]:[c],function(u){var p=u[0],w={get:function(){var y=Bb(this,m,q+" getter");return p.fromWireType(f(g,y))},enumerable:!0};if(k){k=X(h,k);var x=u[1];w.set=function(y){var D=Bb(this,m,q+" setter"),fa=[];k(l,D,x.toWireType(fa,y));Ab(fa)}}Object.defineProperty(m.V.ba,b,w);return[]});return[]})},t:function(a,
b){b=P(b);T(a,{name:b,fromWireType:function(c){var d=Z[c].value;Db(c);return d},toWireType:function(c,d){return nb(d)},argPackAdvance:8,readValueFromPointer:pb,aa:null})},j:function(a,b,c){c=Oa(c);b=P(b);T(a,{name:b,fromWireType:function(d){return d},toWireType:function(d,f){if("number"!==typeof f&&"boolean"!==typeof f)throw new TypeError('Cannot convert "'+V(f)+'" to '+this.name);return f},argPackAdvance:8,readValueFromPointer:Eb(b,c),aa:null})},d:function(a,b,c,d,f,g){var n=Gb(b,c);a=P(a);f=X(d,
f);ib(a,function(){zb("Cannot call "+a+" due to unbound types",n)},b-1);Xa([],n,function(h){var k=[h[0],null].concat(h.slice(1)),l=h=a,m=f,q=k.length;2>q&&S("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var v=null!==k[1]&&!1,u=!1,p=1;p<k.length;++p)if(null!==k[p]&&void 0===k[p].aa){u=!0;break}var w="void"!==k[0].name,x="",y="";for(p=0;p<q-2;++p)x+=(0!==p?", ":"")+"arg"+p,y+=(0!==p?", ":"")+"arg"+p+"Wired";l="return function "+Ra(l)+"("+x+") {\nif (arguments.length !== "+
(q-2)+") {\nthrowBindingError('function "+l+" called with ' + arguments.length + ' arguments, expected "+(q-2)+" args!');\n}\n";u&&(l+="var destructors = [];\n");var D=u?"destructors":"null";x="throwBindingError invoker fn runDestructors retType classParam".split(" ");m=[S,m,g,Ab,k[0],k[1]];v&&(l+="var thisWired = classParam.toWireType("+D+", this);\n");for(p=0;p<q-2;++p)l+="var arg"+p+"Wired = argType"+p+".toWireType("+D+", arg"+p+"); // "+k[p+2].name+"\n",x.push("argType"+p),m.push(k[p+2]);v&&(y=
"thisWired"+(0<y.length?", ":"")+y);l+=(w?"var rv = ":"")+"invoker(fn"+(0<y.length?", ":"")+y+");\n";if(u)l+="runDestructors(destructors);\n";else for(p=v?1:2;p<k.length;++p)q=1===p?"thisWired":"arg"+(p-2)+"Wired",null!==k[p].aa&&(l+=q+"_dtor("+q+"); // "+k[p].name+"\n",x.push(q+"_dtor"),m.push(k[p].aa));w&&(l+="var ret = retType.fromWireType(rv);\nreturn ret;\n");x.push(l+"}\n");k=Fb(x).apply(null,m);vb(h,k,b-1);return[]})},c:function(a,b,c,d,f){function g(l){return l}b=P(b);-1===f&&(f=4294967295);
var n=Oa(c);if(0===d){var h=32-8*c;g=function(l){return l<<h>>>h}}var k=-1!=b.indexOf("unsigned");T(a,{name:b,fromWireType:g,toWireType:function(l,m){if("number"!==typeof m&&"boolean"!==typeof m)throw new TypeError('Cannot convert "'+V(m)+'" to '+this.name);if(m<d||m>f)throw new TypeError('Passing a number "'+V(m)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+d+", "+f+"]!");return k?m>>>0:m|0},argPackAdvance:8,readValueFromPointer:Hb(b,n,0!==d),
aa:null})},a:function(a,b,c){function d(g){g>>=2;var n=L;return new f(K,n[g+1],n[g])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=P(c);T(a,{name:c,fromWireType:d,argPackAdvance:8,readValueFromPointer:d},{va:!0})},k:function(a,b){b=P(b);var c="std::string"===b;T(a,{name:b,fromWireType:function(d){var f=L[d>>2];if(c){var g=H[d+4+f],n=0;0!=g&&(n=g,H[d+4+f]=0);var h=d+4;for(g=0;g<=f;++g){var k=d+4+g;if(0==H[k]){h=na(h);if(void 0===l)var l=h;
else l+=String.fromCharCode(0),l+=h;h=k+1}}0!=n&&(H[d+4+f]=n)}else{l=Array(f);for(g=0;g<f;++g)l[g]=String.fromCharCode(H[d+4+g]);l=l.join("")}Y(d);return l},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||S("Cannot pass non-string to std::string");var n=(c&&g?function(){for(var l=0,m=0;m<f.length;++m){var q=f.charCodeAt(m);55296<=q&&57343>=q&&(q=65536+((q&1023)<<10)|
f.charCodeAt(++m)&1023);127>=q?++l:l=2047>=q?l+2:65535>=q?l+3:l+4}return l}:function(){return f.length})(),h=Lb(4+n+1);L[h>>2]=n;if(c&&g)oa(f,h+4,n+1);else if(g)for(g=0;g<n;++g){var k=f.charCodeAt(g);255<k&&(Y(h),S("String has UTF-16 code units that do not fit in 8 bits"));H[h+4+g]=k}else for(g=0;g<n;++g)H[h+4+g]=f[g];null!==d&&d.push(Y,h);return h},argPackAdvance:8,readValueFromPointer:pb,aa:function(d){Y(d)}})},f:function(a,b,c){c=P(c);if(2===b){var d=qa;var f=ra;var g=sa;var n=function(){return xa};
var h=1}else 4===b&&(d=ta,f=ua,g=va,n=function(){return L},h=2);T(a,{name:c,fromWireType:function(k){var l=L[k>>2],m=n(),q=m[k+4+l*b>>h],v=0;0!=q&&(v=q,m[k+4+l*b>>h]=0);var u=k+4;for(q=0;q<=l;++q){var p=k+4+q*b;if(0==m[p>>h]){u=d(u);if(void 0===w)var w=u;else w+=String.fromCharCode(0),w+=u;u=p+b}}0!=v&&(m[k+4+l*b>>h]=v);Y(k);return w},toWireType:function(k,l){"string"!==typeof l&&S("Cannot pass non-string to C++ string type "+c);var m=g(l),q=Lb(4+m+b);L[q>>2]=m>>h;f(l,q+4,m+b);null!==k&&k.push(Y,
q);return q},argPackAdvance:8,readValueFromPointer:pb,aa:function(k){Y(k)}})},v:function(a,b){b=P(b);T(a,{Aa:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},h:Db,n:function(a){4<a&&(Z[a].la+=1)},i:function(a,b){var c=R[a];void 0===c&&S("_emval_take_value has unknown type "+xb(a));a=c.readValueFromPointer(b);return nb(a)},l:function(){C()},r:function(a,b,c){H.copyWithin(a,b,b+c)},s:function(a){var b=H.length;if(2147418112<a)return!1;for(var c=1;4>=c;c*=2){var d=b*(1+
.2/c);d=Math.min(d,a+100663296);d=Math.max(16777216,a,d);0<d%65536&&(d+=65536-d%65536);a:{try{G.grow(Math.min(2147418112,d)-K.byteLength+65535>>16);Aa(G.buffer);var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},m:function(){return 0},p:function(){},g:function(a,b,c,d){for(var f=0,g=0;g<c;g++){for(var n=J[b+8*g>>2],h=J[b+(8*g+4)>>2],k=0;k<h;k++){var l=H[n+k],m=Ib[a];0===l||10===l?((1===a?ia:E)(ma(m,0)),m.length=0):m.push(l)}f+=h}J[d>>2]=f;return 0},memory:G,q:function(){},table:ja},Nb=function(){function a(f){e.asm=
f.exports;M--;e.monitorRunDependencies&&e.monitorRunDependencies(M);0==M&&(null!==Ia&&(clearInterval(Ia),Ia=null),N&&(f=N,N=null,f()))}function b(f){a(f.instance)}function c(f){return Ma().then(function(g){return WebAssembly.instantiate(g,d)}).then(f,function(g){E("failed to asynchronously prepare wasm: "+g);C(g)})}var d={a:Mb};M++;e.monitorRunDependencies&&e.monitorRunDependencies(M);if(e.instantiateWasm)try{return e.instantiateWasm(d,a)}catch(f){return E("Module.instantiateWasm callback failed with error: "+
f),!1}(function(){if(F||"function"!==typeof WebAssembly.instantiateStreaming||Ja()||"function"!==typeof fetch)return c(b);fetch(O,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,d).then(b,function(g){E("wasm streaming compile failed: "+g);E("falling back to ArrayBuffer instantiation");c(b)})})})();return{}}();e.asm=Nb;
var Na=e.___wasm_call_ctors=function(){return(Na=e.___wasm_call_ctors=e.asm.w).apply(null,arguments)},Lb=e._malloc=function(){return(Lb=e._malloc=e.asm.x).apply(null,arguments)},Y=e._free=function(){return(Y=e._free=e.asm.y).apply(null,arguments)},yb=e.___getTypeName=function(){return(yb=e.___getTypeName=e.asm.z).apply(null,arguments)};e.___embind_register_native_and_builtin_types=function(){return(e.___embind_register_native_and_builtin_types=e.asm.A).apply(null,arguments)};
e.dynCall_ii=function(){return(e.dynCall_ii=e.asm.B).apply(null,arguments)};e.dynCall_vi=function(){return(e.dynCall_vi=e.asm.C).apply(null,arguments)};e.dynCall_vif=function(){return(e.dynCall_vif=e.asm.D).apply(null,arguments)};e.dynCall_iii=function(){return(e.dynCall_iii=e.asm.E).apply(null,arguments)};e.dynCall_viii=function(){return(e.dynCall_viii=e.asm.F).apply(null,arguments)};e.dynCall_viiiiif=function(){return(e.dynCall_viiiiif=e.asm.G).apply(null,arguments)};
e.dynCall_viiiif=function(){return(e.dynCall_viiiif=e.asm.H).apply(null,arguments)};e.dynCall_i=function(){return(e.dynCall_i=e.asm.I).apply(null,arguments)};e.dynCall_v=function(){return(e.dynCall_v=e.asm.J).apply(null,arguments)};e.dynCall_iiiiiif=function(){return(e.dynCall_iiiiiif=e.asm.K).apply(null,arguments)};e.dynCall_iiiiif=function(){return(e.dynCall_iiiiif=e.asm.L).apply(null,arguments)};e.dynCall_iiii=function(){return(e.dynCall_iiii=e.asm.M).apply(null,arguments)};
e.dynCall_jiji=function(){return(e.dynCall_jiji=e.asm.N).apply(null,arguments)};e.dynCall_iidiiii=function(){return(e.dynCall_iidiiii=e.asm.O).apply(null,arguments)};e.dynCall_vii=function(){return(e.dynCall_vii=e.asm.P).apply(null,arguments)};e.dynCall_viiiiii=function(){return(e.dynCall_viiiiii=e.asm.Q).apply(null,arguments)};e.dynCall_viiiii=function(){return(e.dynCall_viiiii=e.asm.R).apply(null,arguments)};e.dynCall_viiii=function(){return(e.dynCall_viiii=e.asm.S).apply(null,arguments)};
e.asm=Nb;var Ob;e.then=function(a){if(Ob)a(e);else{var b=e.onRuntimeInitialized;e.onRuntimeInitialized=function(){b&&b();a(e)}}return e};N=function Pb(){Ob||Qb();Ob||(N=Pb)};
function Qb(){function a(){if(!Ob&&(Ob=!0,e.calledRun=!0,!ka)){Ca(Ea);Ca(Fa);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();Ga.unshift(b)}Ca(Ga)}}if(!(0<M)){if(e.preRun)for("function"==typeof e.preRun&&(e.preRun=[e.preRun]);e.preRun.length;)Ha();Ca(Da);0<M||(e.setStatus?(e.setStatus("Running..."),setTimeout(function(){setTimeout(function(){e.setStatus("")},1);a()},1)):a())}}
e.run=Qb;if(e.preInit)for("function"==typeof e.preInit&&(e.preInit=[e.preInit]);0<e.preInit.length;)e.preInit.pop()();noExitRuntime=!0;Qb();
return imagequant

Binary file not shown.

View File

@ -2,7 +2,7 @@
"name": "imagequant",
"scripts": {
"install": "napa",
"build": "docker run --rm -v $(pwd):/src trzeci/emscripten ./build.sh"
"build": "docker run --rm -v $(pwd):/src trzeci/emscripten-upstream ./build.sh"
},
"napa": {
"libimagequant": "ImageOptim/libimagequant#2.12.1"

View File

@ -50,5 +50,5 @@ echo "============================================="
echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
echo "Did you update your docker image?"
echo "Run \`docker pull trzeci/emscripten\`"
echo "Run \`docker pull trzeci/emscripten-upstream\`"
echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"

View File

@ -6,55 +6,55 @@ var mozjpeg_enc = (function() {
function(mozjpeg_enc) {
mozjpeg_enc = mozjpeg_enc || {};
var d;d||(d=typeof mozjpeg_enc !== 'undefined' ? mozjpeg_enc : {});var p={},q;for(q in d)d.hasOwnProperty(q)&&(p[q]=d[q]);var aa="./this.program";function t(a,b){throw b;}var u=!1,v=!1,ba=!1,ca=!1,da=!1;u="object"===typeof window;v="function"===typeof importScripts;ba=(ca="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node)&&!u&&!v;da=!u&&!ba&&!v;var w="",x,z,ha,ia;
if(ba)w=__dirname+"/",x=function(a,b){ha||(ha=require("fs"));ia||(ia=require("path"));a=ia.normalize(a);return ha.readFileSync(a,b?null:"utf8")},z=function(a){a=x(a,!0);a.buffer||(a=new Uint8Array(a));a.buffer||A("Assertion failed: undefined");return a},1<process.argv.length&&(aa=process.argv[1].replace(/\\/g,"/")),process.argv.slice(2),process.on("uncaughtException",function(a){if(!(a instanceof ja))throw a;}),process.on("unhandledRejection",A),t=function(a){process.exit(a)},d.inspect=function(){return"[Emscripten Module object]"};
else if(da)"undefined"!=typeof read&&(x=function(a){return read(a)}),z=function(a){if("function"===typeof readbuffer)return new Uint8Array(readbuffer(a));a=read(a,"binary");"object"===typeof a||A("Assertion failed: undefined");return a},"function"===typeof quit&&(t=function(a){quit(a)}),"undefined"!==typeof print&&("undefined"===typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!==typeof printErr?printErr:print);else if(u||v)v?w=self.location.href:document.currentScript&&
(w=document.currentScript.src),_scriptDir&&(w=_scriptDir),0!==w.indexOf("blob:")?w=w.substr(0,w.lastIndexOf("/")+1):w="",x=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},v&&(z=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)});var ka=d.print||console.log.bind(console),B=d.printErr||console.warn.bind(console);for(q in p)p.hasOwnProperty(q)&&(d[q]=p[q]);p=null;
d.thisProgram&&(aa=d.thisProgram);d.quit&&(t=d.quit);function la(a){var b=C[ma>>2];a=b+a+15&-16;a>na()&&A();C[ma>>2]=a;return b}var oa={"f64-rem":function(a,b){return a%b},"debugger":function(){}},D;d.wasmBinary&&(D=d.wasmBinary);var pa;d.noExitRuntime&&(pa=d.noExitRuntime);"object"!==typeof WebAssembly&&B("no native wasm support detected");var E,qa=new WebAssembly.Table({initial:208,maximum:208,element:"anyfunc"}),ra=!1,sa="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;
function ta(a,b,c){var e=b+c;for(c=b;a[c]&&!(c>=e);)++c;if(16<c-b&&a.subarray&&sa)return sa.decode(a.subarray(b,c));for(e="";b<c;){var f=a[b++];if(f&128){var g=a[b++]&63;if(192==(f&224))e+=String.fromCharCode((f&31)<<6|g);else{var h=a[b++]&63;f=224==(f&240)?(f&15)<<12|g<<6|h:(f&7)<<18|g<<12|h<<6|a[b++]&63;65536>f?e+=String.fromCharCode(f):(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else e+=String.fromCharCode(f)}return e}
function ua(a,b,c,e){if(0<e){e=c+e-1;for(var f=0;f<a.length;++f){var g=a.charCodeAt(f);if(55296<=g&&57343>=g){var h=a.charCodeAt(++f);g=65536+((g&1023)<<10)|h&1023}if(127>=g){if(c>=e)break;b[c++]=g}else{if(2047>=g){if(c+1>=e)break;b[c++]=192|g>>6}else{if(65535>=g){if(c+2>=e)break;b[c++]=224|g>>12}else{if(c+3>=e)break;b[c++]=240|g>>18;b[c++]=128|g>>12&63}b[c++]=128|g>>6&63}b[c++]=128|g&63}}b[c]=0}}
function va(a){for(var b=0,c=0;c<a.length;++c){var e=a.charCodeAt(c);55296<=e&&57343>=e&&(e=65536+((e&1023)<<10)|a.charCodeAt(++c)&1023);127>=e?++b:b=2047>=e?b+2:65535>=e?b+3:b+4}return b}"undefined"!==typeof TextDecoder&&new TextDecoder("utf-16le");function wa(a){0<a%65536&&(a+=65536-a%65536);return a}var buffer,F,G,xa,ya,C,H,za,Aa;
function Ca(a){buffer=a;d.HEAP8=F=new Int8Array(a);d.HEAP16=xa=new Int16Array(a);d.HEAP32=C=new Int32Array(a);d.HEAPU8=G=new Uint8Array(a);d.HEAPU16=ya=new Uint16Array(a);d.HEAPU32=H=new Uint32Array(a);d.HEAPF32=za=new Float32Array(a);d.HEAPF64=Aa=new Float64Array(a)}var ma=89296,Da=d.TOTAL_MEMORY||16777216;d.wasmMemory?E=d.wasmMemory:E=new WebAssembly.Memory({initial:Da/65536});E&&(buffer=E.buffer);Da=buffer.byteLength;Ca(buffer);C[ma>>2]=5332368;
function I(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b();else{var c=b.ha;"number"===typeof c?void 0===b.ba?d.dynCall_v(c):d.dynCall_vi(c,b.ba):c(void 0===b.ba?null:b.ba)}}}var Ea=[],Fa=[],Ga=[],Ha=[],Ia=!1;function Ja(){var a=d.preRun.shift();Ea.unshift(a)}var J=0,Ka=null,K=null;d.preloadedImages={};d.preloadedAudios={};function A(a){if(d.onAbort)d.onAbort(a);ka(a);B(a);ra=!0;throw new WebAssembly.RuntimeError("abort("+a+"). Build with -s ASSERTIONS=1 for more info.");}
function La(){var a=M;return String.prototype.startsWith?a.startsWith("data:application/octet-stream;base64,"):0===a.indexOf("data:application/octet-stream;base64,")}var M="mozjpeg_enc.wasm";if(!La()){var Ma=M;M=d.locateFile?d.locateFile(Ma,w):w+Ma}function Na(){try{if(D)return new Uint8Array(D);if(z)return z(M);throw"both async and sync fetching of the wasm failed";}catch(a){A(a)}}
function Oa(){return D||!u&&!v||"function"!==typeof fetch?new Promise(function(a){a(Na())}):fetch(M,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file at '"+M+"'";return a.arrayBuffer()}).catch(function(){return Na()})}
d.asm=function(){function a(a){d.asm=a.exports;J--;d.monitorRunDependencies&&d.monitorRunDependencies(J);0==J&&(null!==Ka&&(clearInterval(Ka),Ka=null),K&&(a=K,K=null,a()))}function b(b){a(b.instance)}function c(a){return Oa().then(function(a){return WebAssembly.instantiate(a,e)}).then(a,function(a){B("failed to asynchronously prepare wasm: "+a);A(a)})}var e={env:Pa,wasi_unstable:Pa,global:{NaN:NaN,Infinity:Infinity},"global.Math":Math,asm2wasm:oa};J++;d.monitorRunDependencies&&d.monitorRunDependencies(J);
if(d.instantiateWasm)try{return d.instantiateWasm(e,a)}catch(f){return B("Module.instantiateWasm callback failed with error: "+f),!1}(function(){if(D||"function"!==typeof WebAssembly.instantiateStreaming||La()||"function"!==typeof fetch)return c(b);fetch(M,{credentials:"same-origin"}).then(function(a){return WebAssembly.instantiateStreaming(a,e).then(b,function(a){B("wasm streaming compile failed: "+a);B("falling back to ArrayBuffer instantiation");c(b)})})})();return{}};Fa.push({ha:function(){Qa()}});
var O={};
function Ra(a){if(Ra.aa){var b=C[a>>2];var c=C[b>>2]}else Ra.aa=!0,O.USER="web_user",O.LOGNAME="web_user",O.PATH="/",O.PWD="/",O.HOME="/home/web_user",O.LANG=("object"===typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",O._=aa,c=Ia?P(1024):la(1024),b=Ia?P(256):la(256),C[b>>2]=c,C[a>>2]=b;a=[];var e=0,f;for(f in O)if("string"===typeof O[f]){var g=f+"="+O[f];a.push(g);e+=g.length}if(1024<e)throw Error("Environment size exceeded TOTAL_ENV_SIZE!");for(f=0;f<
a.length;f++){e=g=a[f];for(var h=c,k=0;k<e.length;++k)F[h++>>0]=e.charCodeAt(k);F[h>>0]=0;C[b+4*f>>2]=c;c+=g.length+1}C[b+4*a.length>>2]=0}var Sa=[null,[],[]];function Ta(){return 0}function Ua(){return 0}function Va(a,b,c,e){try{for(var f=0,g=0;g<c;g++){for(var h=C[b+8*g>>2],k=C[b+(8*g+4)>>2],r=0;r<k;r++){var m=G[h+r],y=Sa[a];0===m||10===m?((1===a?ka:B)(ta(y,0)),y.length=0):y.push(m)}f+=k}C[e>>2]=f;return 0}catch(n){return"undefined"!==typeof FS&&n instanceof FS.ra||A(n),n.sa}}var Wa={};
function Xa(a){for(;a.length;){var b=a.pop();a.pop()(b)}}function Ya(a){return this.fromWireType(H[a>>2])}var Q={},R={},Za={};function $a(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 ab(a,b){a=$a(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)}
function bb(a){var b=Error,c=ab(a,function(b){this.name=a;this.message=b;b=Error(b).stack;void 0!==b&&(this.stack=this.toString()+"\n"+b.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 cb=void 0;
function db(a,b,c){function e(b){b=c(b);if(b.length!==a.length)throw new cb("Mismatched type converter count");for(var e=0;e<a.length;++e)S(a[e],b[e])}a.forEach(function(a){Za[a]=b});var f=Array(b.length),g=[],h=0;b.forEach(function(a,b){R.hasOwnProperty(a)?f[b]=R[a]:(g.push(a),Q.hasOwnProperty(a)||(Q[a]=[]),Q[a].push(function(){f[b]=R[a];++h;h===g.length&&e(f)}))});0===g.length&&e(f)}
function eb(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 gb=void 0;function T(a){for(var b="";G[a];)b+=gb[G[a++]];return b}var hb=void 0;function U(a){throw new hb(a);}
function S(a,b,c){c=c||{};if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var e=b.name;a||U('type "'+e+'" must have a positive integer typeid pointer');if(R.hasOwnProperty(a)){if(c.la)return;U("Cannot register type '"+e+"' twice")}R[a]=b;delete Za[a];Q.hasOwnProperty(a)&&(b=Q[a],delete Q[a],b.forEach(function(a){a()}))}var ib=[],V=[{},{value:void 0},{value:null},{value:!0},{value:!1}];
function jb(a){4<a&&0===--V[a].da&&(V[a]=void 0,ib.push(a))}function kb(a){switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:var b=ib.length?ib.pop():V.length;V[b]={da:1,value:a};return b}}function lb(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a}
function mb(a,b){switch(b){case 2:return function(a){return this.fromWireType(za[a>>2])};case 3:return function(a){return this.fromWireType(Aa[a>>3])};default:throw new TypeError("Unknown float type: "+a);}}function nb(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=ab(b.name||"unknownFunctionName",function(){});c.prototype=b.prototype;c=new c;a=b.apply(c,a);return a instanceof Object?a:c}
function ob(a,b){var c=d;if(void 0===c[a].Z){var e=c[a];c[a]=function(){c[a].Z.hasOwnProperty(arguments.length)||U("Function '"+b+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+c[a].Z+")!");return c[a].Z[arguments.length].apply(this,arguments)};c[a].Z=[];c[a].Z[e.fa]=e}}
function pb(a,b,c){d.hasOwnProperty(a)?((void 0===c||void 0!==d[a].Z&&void 0!==d[a].Z[c])&&U("Cannot register public name '"+a+"' twice"),ob(a,a),d.hasOwnProperty(c)&&U("Cannot register multiple overloads of a function with the same number of arguments ("+c+")!"),d[a].Z[c]=b):(d[a]=b,void 0!==c&&(d[a].ua=c))}function qb(a,b){for(var c=[],e=0;e<a;e++)c.push(C[(b>>2)+e]);return c}
function W(a,b){a=T(a);if(void 0!==d["FUNCTION_TABLE_"+a])var c=d["FUNCTION_TABLE_"+a][b];else if("undefined"!==typeof FUNCTION_TABLE)c=FUNCTION_TABLE[b];else{c=d["dynCall_"+a];void 0===c&&(c=d["dynCall_"+a.replace(/f/g,"d")],void 0===c&&U("No dynCall invoker for signature: "+a));for(var e=[],f=1;f<a.length;++f)e.push("a"+f);f="return function "+("dynCall_"+a+"_"+b)+"("+e.join(", ")+") {\n";f+=" return dynCall(rawFunction"+(e.length?", ":"")+e.join(", ")+");\n";c=(new Function("dynCall","rawFunction",
f+"};\n"))(c,b)}"function"!==typeof c&&U("unknown function pointer with signature "+a+": "+b);return c}var rb=void 0;function sb(a){a=tb(a);var b=T(a);X(a);return b}function ub(a,b){function c(a){f[a]||R[a]||(Za[a]?Za[a].forEach(c):(e.push(a),f[a]=!0))}var e=[],f={};b.forEach(c);throw new rb(a+": "+e.map(sb).join([", "]));}
function vb(a,b,c){switch(b){case 0:return c?function(a){return F[a]}:function(a){return G[a]};case 1:return c?function(a){return xa[a>>1]}:function(a){return ya[a>>1]};case 2:return c?function(a){return C[a>>2]}:function(a){return H[a>>2]};default:throw new TypeError("Unknown integer type: "+a);}}function na(){return F.length}function Y(a){if(0===a)return 0;a=a?ta(G,a,void 0):"";if(!O.hasOwnProperty(a))return 0;Y.aa&&X(Y.aa);a=O[a];var b=va(a)+1,c=P(b);c&&ua(a,F,c,b);Y.aa=c;return Y.aa}
cb=d.InternalError=bb("InternalError");for(var wb=Array(256),xb=0;256>xb;++xb)wb[xb]=String.fromCharCode(xb);gb=wb;hb=d.BindingError=bb("BindingError");d.count_emval_handles=function(){for(var a=0,b=5;b<V.length;++b)void 0!==V[b]&&++a;return a};d.get_first_emval=function(){for(var a=5;a<V.length;++a)if(void 0!==V[a])return V[a];return null};rb=d.UnboundTypeError=bb("UnboundTypeError");
var Pa={B:Ra,u:function(){return Ta.apply(null,arguments)},n:function(){return Ua.apply(null,arguments)},m:function(){return Va.apply(null,arguments)},l:function(a){var b=Wa[a];delete Wa[a];var c=b.ma,e=b.na,f=b.ea,g=f.map(function(a){return a.ka}).concat(f.map(function(a){return a.pa}));db([a],g,function(a){var g={};f.forEach(function(b,c){var e=a[c],k=b.ia,r=b.ja,h=a[c+f.length],m=b.oa,fa=b.qa;g[b.ga]={read:function(a){return e.fromWireType(k(r,a))},write:function(a,b){var c=[];m(fa,a,h.toWireType(c,
b));Xa(c)}}});return[{name:b.name,fromWireType:function(a){var b={},c;for(c in g)b[c]=g[c].read(a);e(a);return b},toWireType:function(a,b){for(var f in g)if(!(f in b))throw new TypeError("Missing field");var k=c();for(f in g)g[f].write(k,b[f]);null!==a&&a.push(e,k);return k},argPackAdvance:8,readValueFromPointer:Ya,$:e}]})},k:function(a,b,c,e,f){var g=eb(c);b=T(b);S(a,{name:b,fromWireType:function(a){return!!a},toWireType:function(a,b){return b?e:f},argPackAdvance:8,readValueFromPointer:function(a){if(1===
c)var e=F;else if(2===c)e=xa;else if(4===c)e=C;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(e[a>>g])},$:null})},j:function(a,b){b=T(b);S(a,{name:b,fromWireType:function(a){var b=V[a].value;jb(a);return b},toWireType:function(a,b){return kb(b)},argPackAdvance:8,readValueFromPointer:Ya,$:null})},g:function(a,b,c){c=eb(c);b=T(b);S(a,{name:b,fromWireType:function(a){return a},toWireType:function(a,b){if("number"!==typeof b&&"boolean"!==typeof b)throw new TypeError('Cannot convert "'+
lb(b)+'" to '+this.name);return b},argPackAdvance:8,readValueFromPointer:mb(b,c),$:null})},f:function(a,b,c,e,f,g){var h=qb(b,c);a=T(a);f=W(e,f);pb(a,function(){ub("Cannot call "+a+" due to unbound types",h)},b-1);db([],h,function(c){var e=[c[0],null].concat(c.slice(1)),h=c=a,k=f,n=e.length;2>n&&U("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var Ba=null!==e[1]&&!1,ea=!1,l=1;l<e.length;++l)if(null!==e[l]&&void 0===e[l].$){ea=!0;break}var fa="void"!==e[0].name,
L="",N="";for(l=0;l<n-2;++l)L+=(0!==l?", ":"")+"arg"+l,N+=(0!==l?", ":"")+"arg"+l+"Wired";h="return function "+$a(h)+"("+L+") {\nif (arguments.length !== "+(n-2)+") {\nthrowBindingError('function "+h+" called with ' + arguments.length + ' arguments, expected "+(n-2)+" args!');\n}\n";ea&&(h+="var destructors = [];\n");var fb=ea?"destructors":"null";L="throwBindingError invoker fn runDestructors retType classParam".split(" ");k=[U,k,g,Xa,e[0],e[1]];Ba&&(h+="var thisWired = classParam.toWireType("+fb+
", this);\n");for(l=0;l<n-2;++l)h+="var arg"+l+"Wired = argType"+l+".toWireType("+fb+", arg"+l+"); // "+e[l+2].name+"\n",L.push("argType"+l),k.push(e[l+2]);Ba&&(N="thisWired"+(0<N.length?", ":"")+N);h+=(fa?"var rv = ":"")+"invoker(fn"+(0<N.length?", ":"")+N+");\n";if(ea)h+="runDestructors(destructors);\n";else for(l=Ba?1:2;l<e.length;++l)n=1===l?"thisWired":"arg"+(l-2)+"Wired",null!==e[l].$&&(h+=n+"_dtor("+n+"); // "+e[l].name+"\n",L.push(n+"_dtor"),k.push(e[l].$));fa&&(h+="var ret = retType.fromWireType(rv);\nreturn ret;\n");
L.push(h+"}\n");e=nb(L).apply(null,k);l=b-1;if(!d.hasOwnProperty(c))throw new cb("Replacing nonexistant public symbol");void 0!==d[c].Z&&void 0!==l?d[c].Z[l]=e:(d[c]=e,d[c].fa=l);return[]})},c:function(a,b,c,e,f){function g(a){return a}b=T(b);-1===f&&(f=4294967295);var h=eb(c);if(0===e){var k=32-8*c;g=function(a){return a<<k>>>k}}var r=-1!=b.indexOf("unsigned");S(a,{name:b,fromWireType:g,toWireType:function(a,c){if("number"!==typeof c&&"boolean"!==typeof c)throw new TypeError('Cannot convert "'+lb(c)+
'" to '+this.name);if(c<e||c>f)throw new TypeError('Passing a number "'+lb(c)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+e+", "+f+"]!");return r?c>>>0:c|0},argPackAdvance:8,readValueFromPointer:vb(b,h,0!==e),$:null})},b:function(a,b,c){function e(a){a>>=2;var b=H;return new f(b.buffer,b[a+1],b[a])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=T(c);S(a,{name:c,fromWireType:e,argPackAdvance:8,
readValueFromPointer:e},{la:!0})},i:function(a,b){b=T(b);var c="std::string"===b;S(a,{name:b,fromWireType:function(a){var b=H[a>>2];if(c){var e=G[a+4+b],h=0;0!=e&&(h=e,G[a+4+b]=0);var k=a+4;for(e=0;e<=b;++e){var r=a+4+e;if(0==G[r]){k=k?ta(G,k,void 0):"";if(void 0===m)var m=k;else m+=String.fromCharCode(0),m+=k;k=r+1}}0!=h&&(G[a+4+b]=h)}else{m=Array(b);for(e=0;e<b;++e)m[e]=String.fromCharCode(G[a+4+e]);m=m.join("")}X(a);return m},toWireType:function(a,b){b instanceof ArrayBuffer&&(b=new Uint8Array(b));
var e="string"===typeof b;e||b instanceof Uint8Array||b instanceof Uint8ClampedArray||b instanceof Int8Array||U("Cannot pass non-string to std::string");var f=(c&&e?function(){return va(b)}:function(){return b.length})(),k=P(4+f+1);H[k>>2]=f;if(c&&e)ua(b,G,k+4,f+1);else if(e)for(e=0;e<f;++e){var r=b.charCodeAt(e);255<r&&(X(k),U("String has UTF-16 code units that do not fit in 8 bits"));G[k+4+e]=r}else for(e=0;e<f;++e)G[k+4+e]=b[e];null!==a&&a.push(X,k);return k},argPackAdvance:8,readValueFromPointer:Ya,
$:function(a){X(a)}})},A:function(a,b,c){c=T(c);if(2===b){var e=function(){return ya};var f=1}else 4===b&&(e=function(){return H},f=2);S(a,{name:c,fromWireType:function(a){for(var b=e(),c=H[a>>2],g=Array(c),m=a+4>>f,y=0;y<c;++y)g[y]=String.fromCharCode(b[m+y]);X(a);return g.join("")},toWireType:function(a,c){var g=c.length,h=P(4+g*b),m=e();H[h>>2]=g;for(var y=h+4>>f,n=0;n<g;++n)m[y+n]=c.charCodeAt(n);null!==a&&a.push(X,h);return h},argPackAdvance:8,readValueFromPointer:Ya,$:function(a){X(a)}})},z:function(a,
b,c,e,f,g){Wa[a]={name:T(b),ma:W(c,e),na:W(f,g),ea:[]}},h:function(a,b,c,e,f,g,h,k,r,m){Wa[a].ea.push({ga:T(b),ka:c,ia:W(e,f),ja:g,pa:h,oa:W(k,r),qa:m})},y:function(a,b){b=T(b);S(a,{ta:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},x:jb,w:function(a){4<a&&(V[a].da+=1)},v:function(a,b){var c=R[a];void 0===c&&U("_emval_take_value has unknown type "+sb(a));a=c.readValueFromPointer(b);return kb(a)},__memory_base:1024,__table_base:0,e:function(){A()},t:na,s:function(a,
b,c){G.set(G.subarray(b,b+c),a)},r:function(a){if(2147418112<a)return!1;for(var b=Math.max(na(),16777216);b<a;)536870912>=b?b=wa(2*b):b=Math.min(wa((3*b+2147483648)/4),2147418112);a:{try{E.grow(b-buffer.byteLength+65535>>16);Ca(E.buffer);var c=1;break a}catch(e){}c=void 0}return c?!0:!1},q:function(a){if(!pa&&(ra=!0,d.onExit))d.onExit(a);t(a,new ja(a))},p:Y,d:function(a){return Math.pow(2,a)},a:A,memory:E,o:function(){},table:qa},yb=d.asm({},Pa,buffer);d.asm=yb;
d.___embind_register_native_and_builtin_types=function(){return d.asm.C.apply(null,arguments)};var tb=d.___getTypeName=function(){return d.asm.D.apply(null,arguments)},X=d._free=function(){return d.asm.E.apply(null,arguments)},P=d._malloc=function(){return d.asm.F.apply(null,arguments)},Qa=d.globalCtors=function(){return d.asm.Y.apply(null,arguments)};d.dynCall_i=function(){return d.asm.G.apply(null,arguments)};d.dynCall_ii=function(){return d.asm.H.apply(null,arguments)};
d.dynCall_iidiiii=function(){return d.asm.I.apply(null,arguments)};d.dynCall_iii=function(){return d.asm.J.apply(null,arguments)};d.dynCall_iiii=function(){return d.asm.K.apply(null,arguments)};d.dynCall_iiiii=function(){return d.asm.L.apply(null,arguments)};d.dynCall_iiiiii=function(){return d.asm.M.apply(null,arguments)};d.dynCall_iiiiiii=function(){return d.asm.N.apply(null,arguments)};d.dynCall_jiji=function(){return d.asm.O.apply(null,arguments)};
d.dynCall_v=function(){return d.asm.P.apply(null,arguments)};d.dynCall_vi=function(){return d.asm.Q.apply(null,arguments)};d.dynCall_vii=function(){return d.asm.R.apply(null,arguments)};d.dynCall_viii=function(){return d.asm.S.apply(null,arguments)};d.dynCall_viiii=function(){return d.asm.T.apply(null,arguments)};d.dynCall_viiiii=function(){return d.asm.U.apply(null,arguments)};d.dynCall_viiiiii=function(){return d.asm.V.apply(null,arguments)};
d.dynCall_viiiiiii=function(){return d.asm.W.apply(null,arguments)};d.dynCall_viiiiiiii=function(){return d.asm.X.apply(null,arguments)};d.asm=yb;var Z;d.then=function(a){if(Z)a(d);else{var b=d.onRuntimeInitialized;d.onRuntimeInitialized=function(){b&&b();a(d)}}return d};function ja(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}K=function zb(){Z||Ab();Z||(K=zb)};
function Ab(){function a(){if(!Z&&(Z=!0,!ra)){Ia=!0;I(Fa);I(Ga);if(d.onRuntimeInitialized)d.onRuntimeInitialized();if(d.postRun)for("function"==typeof d.postRun&&(d.postRun=[d.postRun]);d.postRun.length;){var a=d.postRun.shift();Ha.unshift(a)}I(Ha)}}if(!(0<J)){if(d.preRun)for("function"==typeof d.preRun&&(d.preRun=[d.preRun]);d.preRun.length;)Ja();I(Ea);0<J||(d.setStatus?(d.setStatus("Running..."),setTimeout(function(){setTimeout(function(){d.setStatus("")},1);a()},1)):a())}}d.run=Ab;
if(d.preInit)for("function"==typeof d.preInit&&(d.preInit=[d.preInit]);0<d.preInit.length;)d.preInit.pop()();pa=!0;Ab();
var c;c||(c=typeof mozjpeg_enc !== 'undefined' ? mozjpeg_enc : {});var r={},t;for(t in c)c.hasOwnProperty(t)&&(r[t]=c[t]);var aa="./this.program";function u(a,b){throw b;}var ba=!1,v=!1,ca=!1,da=!1;ba="object"===typeof window;v="function"===typeof importScripts;ca="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node;da=!ba&&!ca&&!v;var w="",ea,x,fa,ha;
if(ca)w=v?require("path").dirname(w)+"/":__dirname+"/",ea=function(a,b){fa||(fa=require("fs"));ha||(ha=require("path"));a=ha.normalize(a);return fa.readFileSync(a,b?null:"utf8")},x=function(a){a=ea(a,!0);a.buffer||(a=new Uint8Array(a));a.buffer||A("Assertion failed: undefined");return a},1<process.argv.length&&(aa=process.argv[1].replace(/\\/g,"/")),process.argv.slice(2),process.on("uncaughtException",function(a){if(!(a instanceof ia))throw a;}),process.on("unhandledRejection",A),u=function(a){process.exit(a)},
c.inspect=function(){return"[Emscripten Module object]"};else if(da)"undefined"!=typeof read&&(ea=function(a){return read(a)}),x=function(a){if("function"===typeof readbuffer)return new Uint8Array(readbuffer(a));a=read(a,"binary");"object"===typeof a||A("Assertion failed: undefined");return a},"function"===typeof quit&&(u=function(a){quit(a)}),"undefined"!==typeof print&&("undefined"===typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!==typeof printErr?printErr:
print);else if(ba||v)v?w=self.location.href:document.currentScript&&(w=document.currentScript.src),_scriptDir&&(w=_scriptDir),0!==w.indexOf("blob:")?w=w.substr(0,w.lastIndexOf("/")+1):w="",ea=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},v&&(x=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)});var ja=c.print||console.log.bind(console),B=c.printErr||console.warn.bind(console);
for(t in r)r.hasOwnProperty(t)&&(c[t]=r[t]);r=null;c.thisProgram&&(aa=c.thisProgram);c.quit&&(u=c.quit);var C;c.wasmBinary&&(C=c.wasmBinary);var noExitRuntime;c.noExitRuntime&&(noExitRuntime=c.noExitRuntime);"object"!==typeof WebAssembly&&B("no native wasm support detected");var F,ka=new WebAssembly.Table({initial:134,maximum:134,element:"anyfunc"}),la=!1,ma="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;
function na(a,b,d){var e=b+d;for(d=b;a[d]&&!(d>=e);)++d;if(16<d-b&&a.subarray&&ma)return ma.decode(a.subarray(b,d));for(e="";b<d;){var f=a[b++];if(f&128){var g=a[b++]&63;if(192==(f&224))e+=String.fromCharCode((f&31)<<6|g);else{var m=a[b++]&63;f=224==(f&240)?(f&15)<<12|g<<6|m:(f&7)<<18|g<<12|m<<6|a[b++]&63;65536>f?e+=String.fromCharCode(f):(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else e+=String.fromCharCode(f)}return e}
function oa(a,b,d){var e=H;if(0<d){d=b+d-1;for(var f=0;f<a.length;++f){var g=a.charCodeAt(f);if(55296<=g&&57343>=g){var m=a.charCodeAt(++f);g=65536+((g&1023)<<10)|m&1023}if(127>=g){if(b>=d)break;e[b++]=g}else{if(2047>=g){if(b+1>=d)break;e[b++]=192|g>>6}else{if(65535>=g){if(b+2>=d)break;e[b++]=224|g>>12}else{if(b+3>=d)break;e[b++]=240|g>>18;e[b++]=128|g>>12&63}e[b++]=128|g>>6&63}e[b++]=128|g&63}}e[b]=0}}var pa="undefined"!==typeof TextDecoder?new TextDecoder("utf-16le"):void 0;
function qa(a){var b;for(b=a>>1;I[b];)++b;b<<=1;if(32<b-a&&pa)return pa.decode(H.subarray(a,b));b=0;for(var d="";;){var e=I[a+2*b>>1];if(0==e)return d;++b;d+=String.fromCharCode(e)}}function ra(a,b,d){void 0===d&&(d=2147483647);if(2>d)return 0;d-=2;var e=b;d=d<2*a.length?d/2:a.length;for(var f=0;f<d;++f)I[b>>1]=a.charCodeAt(f),b+=2;I[b>>1]=0;return b-e}function sa(a){return 2*a.length}
function ta(a){for(var b=0,d="";;){var e=J[a+4*b>>2];if(0==e)return d;++b;65536<=e?(e-=65536,d+=String.fromCharCode(55296|e>>10,56320|e&1023)):d+=String.fromCharCode(e)}}function ua(a,b,d){void 0===d&&(d=2147483647);if(4>d)return 0;var e=b;d=e+d-4;for(var f=0;f<a.length;++f){var g=a.charCodeAt(f);if(55296<=g&&57343>=g){var m=a.charCodeAt(++f);g=65536+((g&1023)<<10)|m&1023}J[b>>2]=g;b+=4;if(b+4>d)break}J[b>>2]=0;return b-e}
function va(a){for(var b=0,d=0;d<a.length;++d){var e=a.charCodeAt(d);55296<=e&&57343>=e&&++d;b+=4}return b}var K,L,H,I,wa,J,M,xa,ya;function za(a){K=a;c.HEAP8=L=new Int8Array(a);c.HEAP16=I=new Int16Array(a);c.HEAP32=J=new Int32Array(a);c.HEAPU8=H=new Uint8Array(a);c.HEAPU16=wa=new Uint16Array(a);c.HEAPU32=M=new Uint32Array(a);c.HEAPF32=xa=new Float32Array(a);c.HEAPF64=ya=new Float64Array(a)}var Aa=c.INITIAL_MEMORY||16777216;c.wasmMemory?F=c.wasmMemory:F=new WebAssembly.Memory({initial:Aa/65536});
F&&(K=F.buffer);Aa=K.byteLength;za(K);J[39524]=5401136;function Ba(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b();else{var d=b.ba;"number"===typeof d?void 0===b.X?c.dynCall_v(d):c.dynCall_vi(d,b.X):d(void 0===b.X?null:b.X)}}}var Ca=[],Da=[],Ea=[],Fa=[];function Ga(){var a=c.preRun.shift();Ca.unshift(a)}var N=0,Ha=null,O=null;c.preloadedImages={};c.preloadedAudios={};
function A(a){if(c.onAbort)c.onAbort(a);ja(a);B(a);la=!0;throw new WebAssembly.RuntimeError("abort("+a+"). Build with -s ASSERTIONS=1 for more info.");}function Ia(){var a=P;return String.prototype.startsWith?a.startsWith("data:application/octet-stream;base64,"):0===a.indexOf("data:application/octet-stream;base64,")}var P="mozjpeg_enc.wasm";if(!Ia()){var Ja=P;P=c.locateFile?c.locateFile(Ja,w):w+Ja}
function Ka(){try{if(C)return new Uint8Array(C);if(x)return x(P);throw"both async and sync fetching of the wasm failed";}catch(a){A(a)}}function La(){return C||!ba&&!v||"function"!==typeof fetch?new Promise(function(a){a(Ka())}):fetch(P,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file at '"+P+"'";return a.arrayBuffer()}).catch(function(){return Ka()})}Da.push({ba:function(){Ma()}});var Na={};function Oa(a){for(;a.length;){var b=a.pop();a.pop()(b)}}
function Pa(a){return this.fromWireType(M[a>>2])}var Q={},R={},Qa={};function Ra(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 Sa(a,b){a=Ra(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)}
function Ta(a){var b=Error,d=Sa(a,function(e){this.name=a;this.message=e;e=Error(e).stack;void 0!==e&&(this.stack=this.toString()+"\n"+e.replace(/^Error(:[^\n]*)?\n/,""))});d.prototype=Object.create(b.prototype);d.prototype.constructor=d;d.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return d}var Ua=void 0;
function Va(a,b,d){function e(h){h=d(h);if(h.length!==a.length)throw new Ua("Mismatched type converter count");for(var k=0;k<a.length;++k)S(a[k],h[k])}a.forEach(function(h){Qa[h]=b});var f=Array(b.length),g=[],m=0;b.forEach(function(h,k){R.hasOwnProperty(h)?f[k]=R[h]:(g.push(h),Q.hasOwnProperty(h)||(Q[h]=[]),Q[h].push(function(){f[k]=R[h];++m;m===g.length&&e(f)}))});0===g.length&&e(f)}
function Wa(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 Xa=void 0;function T(a){for(var b="";H[a];)b+=Xa[H[a++]];return b}var Ya=void 0;function U(a){throw new Ya(a);}
function S(a,b,d){d=d||{};if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var e=b.name;a||U('type "'+e+'" must have a positive integer typeid pointer');if(R.hasOwnProperty(a)){if(d.ga)return;U("Cannot register type '"+e+"' twice")}R[a]=b;delete Qa[a];Q.hasOwnProperty(a)&&(b=Q[a],delete Q[a],b.forEach(function(f){f()}))}var Za=[],V=[{},{value:void 0},{value:null},{value:!0},{value:!1}];
function $a(a){4<a&&0===--V[a].Y&&(V[a]=void 0,Za.push(a))}function ab(a){switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:var b=Za.length?Za.pop():V.length;V[b]={Y:1,value:a};return b}}function bb(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a}
function cb(a,b){switch(b){case 2:return function(d){return this.fromWireType(xa[d>>2])};case 3:return function(d){return this.fromWireType(ya[d>>3])};default:throw new TypeError("Unknown float type: "+a);}}function db(a){var b=Function;if(!(b instanceof Function))throw new TypeError("new_ called with constructor type "+typeof b+" which is not a function");var d=Sa(b.name||"unknownFunctionName",function(){});d.prototype=b.prototype;d=new d;a=b.apply(d,a);return a instanceof Object?a:d}
function eb(a,b){var d=c;if(void 0===d[a].V){var e=d[a];d[a]=function(){d[a].V.hasOwnProperty(arguments.length)||U("Function '"+b+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+d[a].V+")!");return d[a].V[arguments.length].apply(this,arguments)};d[a].V=[];d[a].V[e.$]=e}}
function fb(a,b,d){c.hasOwnProperty(a)?((void 0===d||void 0!==c[a].V&&void 0!==c[a].V[d])&&U("Cannot register public name '"+a+"' twice"),eb(a,a),c.hasOwnProperty(d)&&U("Cannot register multiple overloads of a function with the same number of arguments ("+d+")!"),c[a].V[d]=b):(c[a]=b,void 0!==d&&(c[a].na=d))}function gb(a,b){for(var d=[],e=0;e<a;e++)d.push(J[(b>>2)+e]);return d}
function W(a,b){a=T(a);var d=c["dynCall_"+a];for(var e=[],f=1;f<a.length;++f)e.push("a"+f);f="return function dynCall_"+(a+"_"+b)+"("+e.join(", ")+") {\n";f+=" return dynCall(rawFunction"+(e.length?", ":"")+e.join(", ")+");\n";d=(new Function("dynCall","rawFunction",f+"};\n"))(d,b);"function"!==typeof d&&U("unknown function pointer with signature "+a+": "+b);return d}var hb=void 0;function ib(a){a=jb(a);var b=T(a);Y(a);return b}
function kb(a,b){function d(g){f[g]||R[g]||(Qa[g]?Qa[g].forEach(d):(e.push(g),f[g]=!0))}var e=[],f={};b.forEach(d);throw new hb(a+": "+e.map(ib).join([", "]));}function lb(a,b,d){switch(b){case 0:return d?function(e){return L[e]}:function(e){return H[e]};case 1:return d?function(e){return I[e>>1]}:function(e){return wa[e>>1]};case 2:return d?function(e){return J[e>>2]}:function(e){return M[e>>2]};default:throw new TypeError("Unknown integer type: "+a);}}var mb={};
function nb(){if(!ob){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",_:aa||"./this.program"},b;for(b in mb)a[b]=mb[b];var d=[];for(b in a)d.push(b+"="+a[b]);ob=d}return ob}var ob,pb=[null,[],[]];Ua=c.InternalError=Ta("InternalError");for(var qb=Array(256),rb=0;256>rb;++rb)qb[rb]=String.fromCharCode(rb);Xa=qb;Ya=c.BindingError=Ta("BindingError");
c.count_emval_handles=function(){for(var a=0,b=5;b<V.length;++b)void 0!==V[b]&&++a;return a};c.get_first_emval=function(){for(var a=5;a<V.length;++a)if(void 0!==V[a])return V[a];return null};hb=c.UnboundTypeError=Ta("UnboundTypeError");
var tb={m:function(a){var b=Na[a];delete Na[a];var d=b.ha,e=b.ia,f=b.Z,g=f.map(function(m){return m.fa}).concat(f.map(function(m){return m.ka}));Va([a],g,function(m){var h={};f.forEach(function(k,l){var n=m[l],q=k.da,D=k.ea,y=m[l+f.length],p=k.ja,E=k.la;h[k.aa]={read:function(z){return n.fromWireType(q(D,z))},write:function(z,G){var X=[];p(E,z,y.toWireType(X,G));Oa(X)}}});return[{name:b.name,fromWireType:function(k){var l={},n;for(n in h)l[n]=h[n].read(k);e(k);return l},toWireType:function(k,l){for(var n in h)if(!(n in
l))throw new TypeError("Missing field");var q=d();for(n in h)h[n].write(q,l[n]);null!==k&&k.push(e,q);return q},argPackAdvance:8,readValueFromPointer:Pa,W:e}]})},s:function(a,b,d,e,f){var g=Wa(d);b=T(b);S(a,{name:b,fromWireType:function(m){return!!m},toWireType:function(m,h){return h?e:f},argPackAdvance:8,readValueFromPointer:function(m){if(1===d)var h=L;else if(2===d)h=I;else if(4===d)h=J;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(h[m>>g])},W:null})},r:function(a,
b){b=T(b);S(a,{name:b,fromWireType:function(d){var e=V[d].value;$a(d);return e},toWireType:function(d,e){return ab(e)},argPackAdvance:8,readValueFromPointer:Pa,W:null})},g:function(a,b,d){d=Wa(d);b=T(b);S(a,{name:b,fromWireType:function(e){return e},toWireType:function(e,f){if("number"!==typeof f&&"boolean"!==typeof f)throw new TypeError('Cannot convert "'+bb(f)+'" to '+this.name);return f},argPackAdvance:8,readValueFromPointer:cb(b,d),W:null})},c:function(a,b,d,e,f,g){var m=gb(b,d);a=T(a);f=W(e,
f);fb(a,function(){kb("Cannot call "+a+" due to unbound types",m)},b-1);Va([],m,function(h){var k=[h[0],null].concat(h.slice(1)),l=h=a,n=f,q=k.length;2>q&&U("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var D=null!==k[1]&&!1,y=!1,p=1;p<k.length;++p)if(null!==k[p]&&void 0===k[p].W){y=!0;break}var E="void"!==k[0].name,z="",G="";for(p=0;p<q-2;++p)z+=(0!==p?", ":"")+"arg"+p,G+=(0!==p?", ":"")+"arg"+p+"Wired";l="return function "+Ra(l)+"("+z+") {\nif (arguments.length !== "+
(q-2)+") {\nthrowBindingError('function "+l+" called with ' + arguments.length + ' arguments, expected "+(q-2)+" args!');\n}\n";y&&(l+="var destructors = [];\n");var X=y?"destructors":"null";z="throwBindingError invoker fn runDestructors retType classParam".split(" ");n=[U,n,g,Oa,k[0],k[1]];D&&(l+="var thisWired = classParam.toWireType("+X+", this);\n");for(p=0;p<q-2;++p)l+="var arg"+p+"Wired = argType"+p+".toWireType("+X+", arg"+p+"); // "+k[p+2].name+"\n",z.push("argType"+p),n.push(k[p+2]);D&&(G=
"thisWired"+(0<G.length?", ":"")+G);l+=(E?"var rv = ":"")+"invoker(fn"+(0<G.length?", ":"")+G+");\n";if(y)l+="runDestructors(destructors);\n";else for(p=D?1:2;p<k.length;++p)q=1===p?"thisWired":"arg"+(p-2)+"Wired",null!==k[p].W&&(l+=q+"_dtor("+q+"); // "+k[p].name+"\n",z.push(q+"_dtor"),n.push(k[p].W));E&&(l+="var ret = retType.fromWireType(rv);\nreturn ret;\n");z.push(l+"}\n");k=db(z).apply(null,n);p=b-1;if(!c.hasOwnProperty(h))throw new Ua("Replacing nonexistant public symbol");void 0!==c[h].V&&
void 0!==p?c[h].V[p]=k:(c[h]=k,c[h].$=p);return[]})},b:function(a,b,d,e,f){function g(l){return l}b=T(b);-1===f&&(f=4294967295);var m=Wa(d);if(0===e){var h=32-8*d;g=function(l){return l<<h>>>h}}var k=-1!=b.indexOf("unsigned");S(a,{name:b,fromWireType:g,toWireType:function(l,n){if("number"!==typeof n&&"boolean"!==typeof n)throw new TypeError('Cannot convert "'+bb(n)+'" to '+this.name);if(n<e||n>f)throw new TypeError('Passing a number "'+bb(n)+'" from JS side to C/C++ side to an argument of type "'+
b+'", which is outside the valid range ['+e+", "+f+"]!");return k?n>>>0:n|0},argPackAdvance:8,readValueFromPointer:lb(b,m,0!==e),W:null})},a:function(a,b,d){function e(g){g>>=2;var m=M;return new f(K,m[g+1],m[g])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];d=T(d);S(a,{name:d,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{ga:!0})},h:function(a,b){b=T(b);var d="std::string"===b;S(a,{name:b,fromWireType:function(e){var f=M[e>>2];if(d){var g=
H[e+4+f],m=0;0!=g&&(m=g,H[e+4+f]=0);var h=e+4;for(g=0;g<=f;++g){var k=e+4+g;if(0==H[k]){h=h?na(H,h,void 0):"";if(void 0===l)var l=h;else l+=String.fromCharCode(0),l+=h;h=k+1}}0!=m&&(H[e+4+f]=m)}else{l=Array(f);for(g=0;g<f;++g)l[g]=String.fromCharCode(H[e+4+g]);l=l.join("")}Y(e);return l},toWireType:function(e,f){f instanceof ArrayBuffer&&(f=new Uint8Array(f));var g="string"===typeof f;g||f instanceof Uint8Array||f instanceof Uint8ClampedArray||f instanceof Int8Array||U("Cannot pass non-string to std::string");
var m=(d&&g?function(){for(var l=0,n=0;n<f.length;++n){var q=f.charCodeAt(n);55296<=q&&57343>=q&&(q=65536+((q&1023)<<10)|f.charCodeAt(++n)&1023);127>=q?++l:l=2047>=q?l+2:65535>=q?l+3:l+4}return l}:function(){return f.length})(),h=sb(4+m+1);M[h>>2]=m;if(d&&g)oa(f,h+4,m+1);else if(g)for(g=0;g<m;++g){var k=f.charCodeAt(g);255<k&&(Y(h),U("String has UTF-16 code units that do not fit in 8 bits"));H[h+4+g]=k}else for(g=0;g<m;++g)H[h+4+g]=f[g];null!==e&&e.push(Y,h);return h},argPackAdvance:8,readValueFromPointer:Pa,
W:function(e){Y(e)}})},d:function(a,b,d){d=T(d);if(2===b){var e=qa;var f=ra;var g=sa;var m=function(){return wa};var h=1}else 4===b&&(e=ta,f=ua,g=va,m=function(){return M},h=2);S(a,{name:d,fromWireType:function(k){var l=M[k>>2],n=m(),q=n[k+4+l*b>>h],D=0;0!=q&&(D=q,n[k+4+l*b>>h]=0);var y=k+4;for(q=0;q<=l;++q){var p=k+4+q*b;if(0==n[p>>h]){y=e(y);if(void 0===E)var E=y;else E+=String.fromCharCode(0),E+=y;y=p+b}}0!=D&&(n[k+4+l*b>>h]=D);Y(k);return E},toWireType:function(k,l){"string"!==typeof l&&U("Cannot pass non-string to C++ string type "+
d);var n=g(l),q=sb(4+n+b);M[q>>2]=n>>h;f(l,q+4,n+b);null!==k&&k.push(Y,q);return q},argPackAdvance:8,readValueFromPointer:Pa,W:function(k){Y(k)}})},x:function(a,b,d,e,f,g){Na[a]={name:T(b),ha:W(d,e),ia:W(f,g),Z:[]}},f:function(a,b,d,e,f,g,m,h,k,l){Na[a].Z.push({aa:T(b),fa:d,da:W(e,f),ea:g,ka:m,ja:W(h,k),la:l})},t:function(a,b){b=T(b);S(a,{ma:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},k:$a,l:function(a){4<a&&(V[a].Y+=1)},y:function(a,b){var d=R[a];void 0===d&&U("_emval_take_value has unknown type "+
ib(a));a=d.readValueFromPointer(b);return ab(a)},u:function(){A()},p:function(a,b,d){H.copyWithin(a,b,b+d)},q:function(a){var b=H.length;if(2147418112<a)return!1;for(var d=1;4>=d;d*=2){var e=b*(1+.2/d);e=Math.min(e,a+100663296);e=Math.max(16777216,a,e);0<e%65536&&(e+=65536-e%65536);a:{try{F.grow(Math.min(2147418112,e)-K.byteLength+65535>>16);za(F.buffer);var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},v:function(a,b){var d=0;nb().forEach(function(e,f){var g=b+d;f=J[a+4*f>>2]=g;for(g=0;g<
e.length;++g)L[f++>>0]=e.charCodeAt(g);L[f>>0]=0;d+=e.length+1});return 0},w:function(a,b){var d=nb();J[a>>2]=d.length;var e=0;d.forEach(function(f){e+=f.length+1});J[b>>2]=e;return 0},j:function(a){if(!noExitRuntime&&(la=!0,c.onExit))c.onExit(a);u(a,new ia(a))},i:function(){return 0},n:function(){},e:function(a,b,d,e){for(var f=0,g=0;g<d;g++){for(var m=J[b+8*g>>2],h=J[b+(8*g+4)>>2],k=0;k<h;k++){var l=H[m+k],n=pb[a];0===l||10===l?((1===a?ja:B)(na(n,0)),n.length=0):n.push(l)}f+=h}J[e>>2]=f;return 0},
memory:F,o:function(){},table:ka},ub=function(){function a(f){c.asm=f.exports;N--;c.monitorRunDependencies&&c.monitorRunDependencies(N);0==N&&(null!==Ha&&(clearInterval(Ha),Ha=null),O&&(f=O,O=null,f()))}function b(f){a(f.instance)}function d(f){return La().then(function(g){return WebAssembly.instantiate(g,e)}).then(f,function(g){B("failed to asynchronously prepare wasm: "+g);A(g)})}var e={a:tb};N++;c.monitorRunDependencies&&c.monitorRunDependencies(N);if(c.instantiateWasm)try{return c.instantiateWasm(e,
a)}catch(f){return B("Module.instantiateWasm callback failed with error: "+f),!1}(function(){if(C||"function"!==typeof WebAssembly.instantiateStreaming||Ia()||"function"!==typeof fetch)return d(b);fetch(P,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,e).then(b,function(g){B("wasm streaming compile failed: "+g);B("falling back to ArrayBuffer instantiation");d(b)})})})();return{}}();c.asm=ub;
var Ma=c.___wasm_call_ctors=function(){return(Ma=c.___wasm_call_ctors=c.asm.z).apply(null,arguments)},sb=c._malloc=function(){return(sb=c._malloc=c.asm.A).apply(null,arguments)},Y=c._free=function(){return(Y=c._free=c.asm.B).apply(null,arguments)},jb=c.___getTypeName=function(){return(jb=c.___getTypeName=c.asm.C).apply(null,arguments)};c.___embind_register_native_and_builtin_types=function(){return(c.___embind_register_native_and_builtin_types=c.asm.D).apply(null,arguments)};
c.dynCall_i=function(){return(c.dynCall_i=c.asm.E).apply(null,arguments)};c.dynCall_viiiii=function(){return(c.dynCall_viiiii=c.asm.F).apply(null,arguments)};c.dynCall_v=function(){return(c.dynCall_v=c.asm.G).apply(null,arguments)};c.dynCall_vi=function(){return(c.dynCall_vi=c.asm.H).apply(null,arguments)};c.dynCall_iii=function(){return(c.dynCall_iii=c.asm.I).apply(null,arguments)};c.dynCall_viii=function(){return(c.dynCall_viii=c.asm.J).apply(null,arguments)};
c.dynCall_ii=function(){return(c.dynCall_ii=c.asm.K).apply(null,arguments)};c.dynCall_iiiiii=function(){return(c.dynCall_iiiiii=c.asm.L).apply(null,arguments)};c.dynCall_viiiiiiii=function(){return(c.dynCall_viiiiiiii=c.asm.M).apply(null,arguments)};c.dynCall_vii=function(){return(c.dynCall_vii=c.asm.N).apply(null,arguments)};c.dynCall_viiii=function(){return(c.dynCall_viiii=c.asm.O).apply(null,arguments)};c.dynCall_viiiiiii=function(){return(c.dynCall_viiiiiii=c.asm.P).apply(null,arguments)};
c.dynCall_iiiiiii=function(){return(c.dynCall_iiiiiii=c.asm.Q).apply(null,arguments)};c.dynCall_iiiii=function(){return(c.dynCall_iiiii=c.asm.R).apply(null,arguments)};c.dynCall_iiii=function(){return(c.dynCall_iiii=c.asm.S).apply(null,arguments)};c.dynCall_jiji=function(){return(c.dynCall_jiji=c.asm.T).apply(null,arguments)};c.dynCall_viiiiii=function(){return(c.dynCall_viiiiii=c.asm.U).apply(null,arguments)};c.asm=ub;var Z;
c.then=function(a){if(Z)a(c);else{var b=c.onRuntimeInitialized;c.onRuntimeInitialized=function(){b&&b();a(c)}}return c};function ia(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}O=function vb(){Z||wb();Z||(O=vb)};
function wb(){function a(){if(!Z&&(Z=!0,c.calledRun=!0,!la)){Ba(Da);Ba(Ea);if(c.onRuntimeInitialized)c.onRuntimeInitialized();if(c.postRun)for("function"==typeof c.postRun&&(c.postRun=[c.postRun]);c.postRun.length;){var b=c.postRun.shift();Fa.unshift(b)}Ba(Fa)}}if(!(0<N)){if(c.preRun)for("function"==typeof c.preRun&&(c.preRun=[c.preRun]);c.preRun.length;)Ga();Ba(Ca);0<N||(c.setStatus?(c.setStatus("Running..."),setTimeout(function(){setTimeout(function(){c.setStatus("")},1);a()},1)):a())}}c.run=wb;
if(c.preInit)for("function"==typeof c.preInit&&(c.preInit=[c.preInit]);0<c.preInit.length;)c.preInit.pop()();noExitRuntime=!0;wb();
return mozjpeg_enc

Binary file not shown.

View File

@ -2,7 +2,7 @@
"name": "mozjpeg_enc",
"scripts": {
"install": "napa",
"build": "docker run --rm -v $(pwd):/src trzeci/emscripten ./build.sh"
"build": "docker run --rm -v $(pwd):/src trzeci/emscripten-upstream ./build.sh"
},
"napa": {
"mozjpeg": "mozilla/mozjpeg#v3.3.1"

View File

@ -57,5 +57,5 @@ echo "============================================="
echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
echo "Did you update your docker image?"
echo "Run \`docker pull trzeci/emscripten\`"
echo "Run \`docker pull trzeci/emscripten-upstream\`"
echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"

View File

@ -2,7 +2,7 @@
"name": "webp_dec",
"scripts": {
"install": "napa",
"build": "docker run --rm -v $(pwd):/src trzeci/emscripten ./build.sh"
"build": "docker run --rm -v $(pwd):/src trzeci/emscripten-upstream ./build.sh"
},
"napa": {
"libwebp": "webmproject/libwebp#v1.0.2"

View File

@ -6,64 +6,64 @@ var webp_dec = (function() {
function(webp_dec) {
webp_dec = webp_dec || {};
var e;e||(e=typeof webp_dec !== 'undefined' ? webp_dec : {});var m={},r;for(r in e)e.hasOwnProperty(r)&&(m[r]=e[r]);var u=!1,v=!1,aa=!1,ba=!1,ca=!1;u="object"===typeof window;v="function"===typeof importScripts;aa=(ba="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node)&&!u&&!v;ca=!u&&!aa&&!v;var w="",da,x,ea,fa;
if(aa)w=__dirname+"/",da=function(a,b){ea||(ea=require("fs"));fa||(fa=require("path"));a=fa.normalize(a);return ea.readFileSync(a,b?null:"utf8")},x=function(a){a=da(a,!0);a.buffer||(a=new Uint8Array(a));a.buffer||y("Assertion failed: undefined");return a},1<process.argv.length&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),process.on("uncaughtException",function(a){throw a;}),process.on("unhandledRejection",y),e.inspect=function(){return"[Emscripten Module object]"};else if(ca)"undefined"!=
typeof read&&(da=function(a){return read(a)}),x=function(a){if("function"===typeof readbuffer)return new Uint8Array(readbuffer(a));a=read(a,"binary");"object"===typeof a||y("Assertion failed: undefined");return a},"undefined"!==typeof print&&("undefined"===typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!==typeof printErr?printErr:print);else if(u||v)v?w=self.location.href:document.currentScript&&(w=document.currentScript.src),_scriptDir&&(w=_scriptDir),0!==w.indexOf("blob:")?
w=w.substr(0,w.lastIndexOf("/")+1):w="",da=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},v&&(x=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)});var ha=e.print||console.log.bind(console),z=e.printErr||console.warn.bind(console);for(r in m)m.hasOwnProperty(r)&&(e[r]=m[r]);m=null;var ia={"f64-rem":function(a,b){return a%b},"debugger":function(){}},A;e.wasmBinary&&(A=e.wasmBinary);
"object"!==typeof WebAssembly&&z("no native wasm support detected");var B,ja=new WebAssembly.Table({initial:230,maximum:230,element:"anyfunc"}),ka=!1,la="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;
function ma(a,b,c){var d=b+c;for(c=b;a[c]&&!(c>=d);)++c;if(16<c-b&&a.subarray&&la)return la.decode(a.subarray(b,c));for(d="";b<c;){var f=a[b++];if(f&128){var h=a[b++]&63;if(192==(f&224))d+=String.fromCharCode((f&31)<<6|h);else{var g=a[b++]&63;f=224==(f&240)?(f&15)<<12|h<<6|g:(f&7)<<18|h<<12|g<<6|a[b++]&63;65536>f?d+=String.fromCharCode(f):(f-=65536,d+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else d+=String.fromCharCode(f)}return d}
function na(a,b,c){var d=C;if(0<c){c=b+c-1;for(var f=0;f<a.length;++f){var h=a.charCodeAt(f);if(55296<=h&&57343>=h){var g=a.charCodeAt(++f);h=65536+((h&1023)<<10)|g&1023}if(127>=h){if(b>=c)break;d[b++]=h}else{if(2047>=h){if(b+1>=c)break;d[b++]=192|h>>6}else{if(65535>=h){if(b+2>=c)break;d[b++]=224|h>>12}else{if(b+3>=c)break;d[b++]=240|h>>18;d[b++]=128|h>>12&63}d[b++]=128|h>>6&63}d[b++]=128|h&63}}d[b]=0}}"undefined"!==typeof TextDecoder&&new TextDecoder("utf-16le");
function oa(a){0<a%65536&&(a+=65536-a%65536);return a}var buffer,pa,C,qa,ra,D,E,sa,ta;function ua(a){buffer=a;e.HEAP8=pa=new Int8Array(a);e.HEAP16=qa=new Int16Array(a);e.HEAP32=D=new Int32Array(a);e.HEAPU8=C=new Uint8Array(a);e.HEAPU16=ra=new Uint16Array(a);e.HEAPU32=E=new Uint32Array(a);e.HEAPF32=sa=new Float32Array(a);e.HEAPF64=ta=new Float64Array(a)}var va=e.TOTAL_MEMORY||16777216;e.wasmMemory?B=e.wasmMemory:B=new WebAssembly.Memory({initial:va/65536});B&&(buffer=B.buffer);va=buffer.byteLength;
ua(buffer);D[3824]=5258368;function wa(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b();else{var c=b.ra;"number"===typeof c?void 0===b.ia?e.dynCall_v(c):e.dynCall_vi(c,b.ia):c(void 0===b.ia?null:b.ia)}}}var xa=[],ya=[],za=[],Aa=[];function Ba(){var a=e.preRun.shift();xa.unshift(a)}var G=0,Ca=null,H=null;e.preloadedImages={};e.preloadedAudios={};
function y(a){if(e.onAbort)e.onAbort(a);ha(a);z(a);ka=!0;throw new WebAssembly.RuntimeError("abort("+a+"). Build with -s ASSERTIONS=1 for more info.");}function Da(){var a=I;return String.prototype.startsWith?a.startsWith("data:application/octet-stream;base64,"):0===a.indexOf("data:application/octet-stream;base64,")}var I="webp_dec.wasm";if(!Da()){var Ea=I;I=e.locateFile?e.locateFile(Ea,w):w+Ea}
function Fa(){try{if(A)return new Uint8Array(A);if(x)return x(I);throw"both async and sync fetching of the wasm failed";}catch(a){y(a)}}function Ga(){return A||!u&&!v||"function"!==typeof fetch?new Promise(function(a){a(Fa())}):fetch(I,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file at '"+I+"'";return a.arrayBuffer()}).catch(function(){return Fa()})}
e.asm=function(){function a(a){e.asm=a.exports;G--;e.monitorRunDependencies&&e.monitorRunDependencies(G);0==G&&(null!==Ca&&(clearInterval(Ca),Ca=null),H&&(a=H,H=null,a()))}function b(b){a(b.instance)}function c(a){return Ga().then(function(a){return WebAssembly.instantiate(a,d)}).then(a,function(a){z("failed to asynchronously prepare wasm: "+a);y(a)})}var d={env:Ha,wasi_unstable:Ha,global:{NaN:NaN,Infinity:Infinity},"global.Math":Math,asm2wasm:ia};G++;e.monitorRunDependencies&&e.monitorRunDependencies(G);
if(e.instantiateWasm)try{return e.instantiateWasm(d,a)}catch(f){return z("Module.instantiateWasm callback failed with error: "+f),!1}(function(){if(A||"function"!==typeof WebAssembly.instantiateStreaming||Da()||"function"!==typeof fetch)return c(b);fetch(I,{credentials:"same-origin"}).then(function(a){return WebAssembly.instantiateStreaming(a,d).then(b,function(a){z("wasm streaming compile failed: "+a);z("falling back to ArrayBuffer instantiation");c(b)})})})();return{}};ya.push({ra:function(){Ia()}});
var Ja=[null,[],[]];function Ka(){return 0}function La(){return 0}function Ma(a,b,c,d){try{for(var f=0,h=0;h<c;h++){for(var g=D[b+8*h>>2],k=D[b+(8*h+4)>>2],p=0;p<k;p++){var q=C[g+p],l=Ja[a];0===q||10===q?((1===a?ha:z)(ma(l,0)),l.length=0):l.push(q)}f+=k}D[d>>2]=f;return 0}catch(t){return"undefined"!==typeof FS&&t instanceof FS.za||y(t),t.Aa}}function Na(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 Oa=void 0;
function J(a){for(var b="";C[a];)b+=Oa[C[a++]];return b}var K={},L={},Pa={};function Qa(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 Ra(a,b){a=Qa(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)}
function Sa(a){var b=Error,c=Ra(a,function(b){this.name=a;this.message=b;b=Error(b).stack;void 0!==b&&(this.stack=this.toString()+"\n"+b.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 M=void 0;function P(a){throw new M(a);}var Ta=void 0;function Ua(a){throw new Ta(a);}
function Va(a,b,c){function d(b){b=c(b);b.length!==a.length&&Ua("Mismatched type converter count");for(var d=0;d<a.length;++d)Q(a[d],b[d])}a.forEach(function(a){Pa[a]=b});var f=Array(b.length),h=[],g=0;b.forEach(function(a,b){L.hasOwnProperty(a)?f[b]=L[a]:(h.push(a),K.hasOwnProperty(a)||(K[a]=[]),K[a].push(function(){f[b]=L[a];++g;g===h.length&&d(f)}))});0===h.length&&d(f)}
function Q(a,b,c){c=c||{};if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var d=b.name;a||P('type "'+d+'" must have a positive integer typeid pointer');if(L.hasOwnProperty(a)){if(c.ua)return;P("Cannot register type '"+d+"' twice")}L[a]=b;delete Pa[a];K.hasOwnProperty(a)&&(b=K[a],delete K[a],b.forEach(function(a){a()}))}function Wa(a){return{count:a.count,da:a.da,ea:a.ea,T:a.T,V:a.V,W:a.W,X:a.X}}
function Xa(a){P(a.S.V.U.name+" instance already deleted")}var Ya=!1;function Za(){}function $a(a){--a.count.value;0===a.count.value&&(a.W?a.X.ba(a.W):a.V.U.ba(a.T))}function S(a){if("undefined"===typeof FinalizationGroup)return S=function(a){return a},a;Ya=new FinalizationGroup(function(a){for(var b=a.next();!b.done;b=a.next())b=b.value,b.T?$a(b):console.warn("object already deleted: "+b.T)});S=function(a){Ya.register(a,a.S,a.S);return a};Za=function(a){Ya.unregister(a.S)};return S(a)}
var T=void 0,ab=[];function bb(){for(;ab.length;){var a=ab.pop();a.S.da=!1;a["delete"]()}}function U(){}var cb={};function db(a,b){var c=e;if(void 0===c[a].Z){var d=c[a];c[a]=function(){c[a].Z.hasOwnProperty(arguments.length)||P("Function '"+b+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+c[a].Z+")!");return c[a].Z[arguments.length].apply(this,arguments)};c[a].Z=[];c[a].Z[d.oa]=d}}
function eb(a,b,c){e.hasOwnProperty(a)?((void 0===c||void 0!==e[a].Z&&void 0!==e[a].Z[c])&&P("Cannot register public name '"+a+"' twice"),db(a,a),e.hasOwnProperty(c)&&P("Cannot register multiple overloads of a function with the same number of arguments ("+c+")!"),e[a].Z[c]=b):(e[a]=b,void 0!==c&&(e[a].Ca=c))}function fb(a,b,c,d,f,h,g,k){this.name=a;this.constructor=b;this.aa=c;this.ba=d;this.Y=f;this.sa=h;this.fa=g;this.qa=k}
function gb(a,b,c){for(;b!==c;)b.fa||P("Expected null or instance of "+c.name+", got an instance of "+b.name),a=b.fa(a),b=b.Y;return a}function hb(a,b){if(null===b)return this.ja&&P("null is not a valid "+this.name),0;b.S||P('Cannot pass "'+V(b)+'" as a '+this.name);b.S.T||P("Cannot pass deleted object as a pointer of type "+this.name);return gb(b.S.T,b.S.V.U,this.U)}
function ib(a,b){if(null===b){this.ja&&P("null is not a valid "+this.name);if(this.ha){var c=this.wa();null!==a&&a.push(this.ba,c);return c}return 0}b.S||P('Cannot pass "'+V(b)+'" as a '+this.name);b.S.T||P("Cannot pass deleted object as a pointer of type "+this.name);!this.ga&&b.S.V.ga&&P("Cannot convert argument of type "+(b.S.X?b.S.X.name:b.S.V.name)+" to parameter type "+this.name);c=gb(b.S.T,b.S.V.U,this.U);if(this.ha)switch(void 0===b.S.W&&P("Passing raw pointer to smart pointer is illegal"),
this.ya){case 0:b.S.X===this?c=b.S.W:P("Cannot convert argument of type "+(b.S.X?b.S.X.name:b.S.V.name)+" to parameter type "+this.name);break;case 1:c=b.S.W;break;case 2:if(b.S.X===this)c=b.S.W;else{var d=b.clone();c=this.xa(c,jb(function(){d["delete"]()}));null!==a&&a.push(this.ba,c)}break;default:P("Unsupporting sharing policy")}return c}
function mb(a,b){if(null===b)return this.ja&&P("null is not a valid "+this.name),0;b.S||P('Cannot pass "'+V(b)+'" as a '+this.name);b.S.T||P("Cannot pass deleted object as a pointer of type "+this.name);b.S.V.ga&&P("Cannot convert argument of type "+b.S.V.name+" to parameter type "+this.name);return gb(b.S.T,b.S.V.U,this.U)}function nb(a){return this.fromWireType(E[a>>2])}function ob(a,b,c){if(b===c)return a;if(void 0===c.Y)return null;a=ob(a,b,c.Y);return null===a?null:c.qa(a)}var pb={};
function qb(a,b){for(void 0===b&&P("ptr should not be undefined");a.Y;)b=a.fa(b),a=a.Y;return pb[b]}function rb(a,b){b.V&&b.T||Ua("makeClassHandle requires ptr and ptrType");!!b.X!==!!b.W&&Ua("Both smartPtrType and smartPtr must be specified");b.count={value:1};return S(Object.create(a,{S:{value:b}}))}function W(a,b,c,d){this.name=a;this.U=b;this.ja=c;this.ga=d;this.ha=!1;this.ba=this.xa=this.wa=this.na=this.ya=this.va=void 0;void 0!==b.Y?this.toWireType=ib:(this.toWireType=d?hb:mb,this.$=null)}
function sb(a,b,c){e.hasOwnProperty(a)||Ua("Replacing nonexistant public symbol");void 0!==e[a].Z&&void 0!==c?e[a].Z[c]=b:(e[a]=b,e[a].oa=c)}
function X(a,b){a=J(a);if(void 0!==e["FUNCTION_TABLE_"+a])var c=e["FUNCTION_TABLE_"+a][b];else if("undefined"!==typeof FUNCTION_TABLE)c=FUNCTION_TABLE[b];else{c=e["dynCall_"+a];void 0===c&&(c=e["dynCall_"+a.replace(/f/g,"d")],void 0===c&&P("No dynCall invoker for signature: "+a));for(var d=[],f=1;f<a.length;++f)d.push("a"+f);f="return function "+("dynCall_"+a+"_"+b)+"("+d.join(", ")+") {\n";f+=" return dynCall(rawFunction"+(d.length?", ":"")+d.join(", ")+");\n";c=(new Function("dynCall","rawFunction",
f+"};\n"))(c,b)}"function"!==typeof c&&P("unknown function pointer with signature "+a+": "+b);return c}var tb=void 0;function ub(a){a=vb(a);var b=J(a);Y(a);return b}function wb(a,b){function c(a){f[a]||L[a]||(Pa[a]?Pa[a].forEach(c):(d.push(a),f[a]=!0))}var d=[],f={};b.forEach(c);throw new tb(a+": "+d.map(ub).join([", "]));}function xb(a){for(;a.length;){var b=a.pop();a.pop()(b)}}
function yb(a,b,c){a instanceof Object||P(c+' with invalid "this": '+a);a instanceof b.U.constructor||P(c+' incompatible with "this" of type '+a.constructor.name);a.S.T||P("cannot call emscripten binding method "+c+" on deleted object");return gb(a.S.T,a.S.V.U,b.U)}var zb=[],Z=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function Ab(a){4<a&&0===--Z[a].ka&&(Z[a]=void 0,zb.push(a))}
function jb(a){switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:var b=zb.length?zb.pop():Z.length;Z[b]={ka:1,value:a};return b}}function V(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a}function Bb(a,b){switch(b){case 2:return function(a){return this.fromWireType(sa[a>>2])};case 3:return function(a){return this.fromWireType(ta[a>>3])};default:throw new TypeError("Unknown float type: "+a);}}
function Cb(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=Ra(b.name||"unknownFunctionName",function(){});c.prototype=b.prototype;c=new c;a=b.apply(c,a);return a instanceof Object?a:c}function Db(a,b){for(var c=[],d=0;d<a;d++)c.push(D[(b>>2)+d]);return c}
function Eb(a,b,c){switch(b){case 0:return c?function(a){return pa[a]}:function(a){return C[a]};case 1:return c?function(a){return qa[a>>1]}:function(a){return ra[a>>1]};case 2:return c?function(a){return D[a>>2]}:function(a){return E[a>>2]};default:throw new TypeError("Unknown integer type: "+a);}}function Fb(){return pa.length}for(var Gb=Array(256),Hb=0;256>Hb;++Hb)Gb[Hb]=String.fromCharCode(Hb);Oa=Gb;M=e.BindingError=Sa("BindingError");Ta=e.InternalError=Sa("InternalError");
U.prototype.isAliasOf=function(a){if(!(this instanceof U&&a instanceof U))return!1;var b=this.S.V.U,c=this.S.T,d=a.S.V.U;for(a=a.S.T;b.Y;)c=b.fa(c),b=b.Y;for(;d.Y;)a=d.fa(a),d=d.Y;return b===d&&c===a};U.prototype.clone=function(){this.S.T||Xa(this);if(this.S.ea)return this.S.count.value+=1,this;var a=S(Object.create(Object.getPrototypeOf(this),{S:{value:Wa(this.S)}}));a.S.count.value+=1;a.S.da=!1;return a};
U.prototype["delete"]=function(){this.S.T||Xa(this);this.S.da&&!this.S.ea&&P("Object already scheduled for deletion");Za(this);$a(this.S);this.S.ea||(this.S.W=void 0,this.S.T=void 0)};U.prototype.isDeleted=function(){return!this.S.T};U.prototype.deleteLater=function(){this.S.T||Xa(this);this.S.da&&!this.S.ea&&P("Object already scheduled for deletion");ab.push(this);1===ab.length&&T&&T(bb);this.S.da=!0;return this};W.prototype.ta=function(a){this.na&&(a=this.na(a));return a};
W.prototype.ma=function(a){this.ba&&this.ba(a)};W.prototype.argPackAdvance=8;W.prototype.readValueFromPointer=nb;W.prototype.deleteObject=function(a){if(null!==a)a["delete"]()};
W.prototype.fromWireType=function(a){function b(){return this.ha?rb(this.U.aa,{V:this.va,T:c,X:this,W:a}):rb(this.U.aa,{V:this,T:a})}var c=this.ta(a);if(!c)return this.ma(a),null;var d=qb(this.U,c);if(void 0!==d){if(0===d.S.count.value)return d.S.T=c,d.S.W=a,d.clone();d=d.clone();this.ma(a);return d}d=this.U.sa(c);d=cb[d];if(!d)return b.call(this);d=this.ga?d.pa:d.pointerType;var f=ob(c,this.U,d.U);return null===f?b.call(this):this.ha?rb(d.U.aa,{V:d,T:f,X:this,W:a}):rb(d.U.aa,{V:d,T:f})};
e.getInheritedInstanceCount=function(){return Object.keys(pb).length};e.getLiveInheritedInstances=function(){var a=[],b;for(b in pb)pb.hasOwnProperty(b)&&a.push(pb[b]);return a};e.flushPendingDeletes=bb;e.setDelayFunction=function(a){T=a;ab.length&&T&&T(bb)};tb=e.UnboundTypeError=Sa("UnboundTypeError");e.count_emval_handles=function(){for(var a=0,b=5;b<Z.length;++b)void 0!==Z[b]&&++a;return a};e.get_first_emval=function(){for(var a=5;a<Z.length;++a)if(void 0!==Z[a])return Z[a];return null};
var Ha={w:function(){return Ka.apply(null,arguments)},o:function(){return La.apply(null,arguments)},q:function(){return Ma.apply(null,arguments)},n:function(a,b,c,d,f){var h=Na(c);b=J(b);Q(a,{name:b,fromWireType:function(a){return!!a},toWireType:function(a,b){return b?d:f},argPackAdvance:8,readValueFromPointer:function(a){if(1===c)var d=pa;else if(2===c)d=qa;else if(4===c)d=D;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(d[a>>h])},$:null})},m:function(a,b,c,d,
f,h,g,k,p,q,l,t,N){l=J(l);h=X(f,h);k&&(k=X(g,k));q&&(q=X(p,q));N=X(t,N);var F=Qa(l);eb(F,function(){wb("Cannot construct "+l+" due to unbound types",[d])});Va([a,b,c],d?[d]:[],function(b){b=b[0];if(d){var c=b.U;var f=c.aa}else f=U.prototype;b=Ra(F,function(){if(Object.getPrototypeOf(this)!==p)throw new M("Use 'new' to construct "+l);if(void 0===g.la)throw new M(l+" has no accessible constructor");var a=g.la[arguments.length];if(void 0===a)throw new M("Tried to invoke ctor of "+l+" with invalid number of parameters ("+
arguments.length+") - expected ("+Object.keys(g.la).toString()+") parameters instead!");return a.apply(this,arguments)});var p=Object.create(f,{constructor:{value:b}});b.prototype=p;var g=new fb(l,b,p,N,c,h,k,q);c=new W(l,g,!0,!1);f=new W(l+"*",g,!1,!1);var t=new W(l+" const*",g,!1,!0);cb[a]={pointerType:f,pa:t};sb(F,b);return[c,f,t]})},e:function(a,b,c,d,f,h,g,k,p,q){b=J(b);f=X(d,f);Va([],[a],function(a){a=a[0];var d=a.name+"."+b,l={get:function(){wb("Cannot access "+d+" due to unbound types",[c,
g])},enumerable:!0,configurable:!0};p?l.set=function(){wb("Cannot access "+d+" due to unbound types",[c,g])}:l.set=function(){P(d+" is a read-only property")};Object.defineProperty(a.U.aa,b,l);Va([],p?[c,g]:[c],function(c){var g=c[0],l={get:function(){var b=yb(this,a,d+" getter");return g.fromWireType(f(h,b))},enumerable:!0};if(p){p=X(k,p);var t=c[1];l.set=function(b){var c=yb(this,a,d+" setter"),f=[];p(q,c,t.toWireType(f,b));xb(f)}}Object.defineProperty(a.U.aa,b,l);return[]});return[]})},l:function(a,
b){b=J(b);Q(a,{name:b,fromWireType:function(a){var b=Z[a].value;Ab(a);return b},toWireType:function(a,b){return jb(b)},argPackAdvance:8,readValueFromPointer:nb,$:null})},f:function(a,b,c){c=Na(c);b=J(b);Q(a,{name:b,fromWireType:function(a){return a},toWireType:function(a,b){if("number"!==typeof b&&"boolean"!==typeof b)throw new TypeError('Cannot convert "'+V(b)+'" to '+this.name);return b},argPackAdvance:8,readValueFromPointer:Bb(b,c),$:null})},d:function(a,b,c,d,f,h){var g=Db(b,c);a=J(a);f=X(d,f);
eb(a,function(){wb("Cannot call "+a+" due to unbound types",g)},b-1);Va([],g,function(c){var d=[c[0],null].concat(c.slice(1)),g=c=a,l=f,k=d.length;2>k&&P("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var N=null!==d[1]&&!1,F=!1,n=1;n<d.length;++n)if(null!==d[n]&&void 0===d[n].$){F=!0;break}var kb="void"!==d[0].name,O="",R="";for(n=0;n<k-2;++n)O+=(0!==n?", ":"")+"arg"+n,R+=(0!==n?", ":"")+"arg"+n+"Wired";g="return function "+Qa(g)+"("+O+") {\nif (arguments.length !== "+
(k-2)+") {\nthrowBindingError('function "+g+" called with ' + arguments.length + ' arguments, expected "+(k-2)+" args!');\n}\n";F&&(g+="var destructors = [];\n");var lb=F?"destructors":"null";O="throwBindingError invoker fn runDestructors retType classParam".split(" ");l=[P,l,h,xb,d[0],d[1]];N&&(g+="var thisWired = classParam.toWireType("+lb+", this);\n");for(n=0;n<k-2;++n)g+="var arg"+n+"Wired = argType"+n+".toWireType("+lb+", arg"+n+"); // "+d[n+2].name+"\n",O.push("argType"+n),l.push(d[n+2]);N&&
(R="thisWired"+(0<R.length?", ":"")+R);g+=(kb?"var rv = ":"")+"invoker(fn"+(0<R.length?", ":"")+R+");\n";if(F)g+="runDestructors(destructors);\n";else for(n=N?1:2;n<d.length;++n)k=1===n?"thisWired":"arg"+(n-2)+"Wired",null!==d[n].$&&(g+=k+"_dtor("+k+"); // "+d[n].name+"\n",O.push(k+"_dtor"),l.push(d[n].$));kb&&(g+="var ret = retType.fromWireType(rv);\nreturn ret;\n");O.push(g+"}\n");d=Cb(O).apply(null,l);sb(c,d,b-1);return[]})},c:function(a,b,c,d,f){function h(a){return a}b=J(b);-1===f&&(f=4294967295);
var g=Na(c);if(0===d){var k=32-8*c;h=function(a){return a<<k>>>k}}var p=-1!=b.indexOf("unsigned");Q(a,{name:b,fromWireType:h,toWireType:function(a,c){if("number"!==typeof c&&"boolean"!==typeof c)throw new TypeError('Cannot convert "'+V(c)+'" to '+this.name);if(c<d||c>f)throw new TypeError('Passing a number "'+V(c)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+d+", "+f+"]!");return p?c>>>0:c|0},argPackAdvance:8,readValueFromPointer:Eb(b,g,0!==d),
$:null})},b:function(a,b,c){function d(a){a>>=2;var b=E;return new f(b.buffer,b[a+1],b[a])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=J(c);Q(a,{name:c,fromWireType:d,argPackAdvance:8,readValueFromPointer:d},{ua:!0})},k:function(a,b){b=J(b);var c="std::string"===b;Q(a,{name:b,fromWireType:function(a){var b=E[a>>2];if(c){var d=C[a+4+b],g=0;0!=d&&(g=d,C[a+4+b]=0);var k=a+4;for(d=0;d<=b;++d){var p=a+4+d;if(0==C[p]){k=k?ma(C,k,void 0):"";if(void 0===
q)var q=k;else q+=String.fromCharCode(0),q+=k;k=p+1}}0!=g&&(C[a+4+b]=g)}else{q=Array(b);for(d=0;d<b;++d)q[d]=String.fromCharCode(C[a+4+d]);q=q.join("")}Y(a);return q},toWireType:function(a,b){b instanceof ArrayBuffer&&(b=new Uint8Array(b));var d="string"===typeof b;d||b instanceof Uint8Array||b instanceof Uint8ClampedArray||b instanceof Int8Array||P("Cannot pass non-string to std::string");var f=(c&&d?function(){for(var a=0,c=0;c<b.length;++c){var d=b.charCodeAt(c);55296<=d&&57343>=d&&(d=65536+((d&
1023)<<10)|b.charCodeAt(++c)&1023);127>=d?++a:a=2047>=d?a+2:65535>=d?a+3:a+4}return a}:function(){return b.length})(),k=Ib(4+f+1);E[k>>2]=f;if(c&&d)na(b,k+4,f+1);else if(d)for(d=0;d<f;++d){var p=b.charCodeAt(d);255<p&&(Y(k),P("String has UTF-16 code units that do not fit in 8 bits"));C[k+4+d]=p}else for(d=0;d<f;++d)C[k+4+d]=b[d];null!==a&&a.push(Y,k);return k},argPackAdvance:8,readValueFromPointer:nb,$:function(a){Y(a)}})},v:function(a,b,c){c=J(c);if(2===b){var d=function(){return ra};var f=1}else 4===
b&&(d=function(){return E},f=2);Q(a,{name:c,fromWireType:function(a){for(var b=d(),c=E[a>>2],h=Array(c),q=a+4>>f,l=0;l<c;++l)h[l]=String.fromCharCode(b[q+l]);Y(a);return h.join("")},toWireType:function(a,c){var h=c.length,g=Ib(4+h*b),q=d();E[g>>2]=h;for(var l=g+4>>f,t=0;t<h;++t)q[l+t]=c.charCodeAt(t);null!==a&&a.push(Y,g);return g},argPackAdvance:8,readValueFromPointer:nb,$:function(a){Y(a)}})},u:function(a,b){b=J(b);Q(a,{Ba:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},
j:Ab,t:function(a){4<a&&(Z[a].ka+=1)},i:function(a,b){var c=L[a];void 0===c&&P("_emval_take_value has unknown type "+ub(a));a=c.readValueFromPointer(b);return jb(a)},__memory_base:1024,__table_base:0,h:function(){y()},s:Fb,r:function(a,b,c){C.set(C.subarray(b,b+c),a)},p:function(a){if(2147418112<a)return!1;for(var b=Math.max(Fb(),16777216);b<a;)536870912>=b?b=oa(2*b):b=Math.min(oa((3*b+2147483648)/4),2147418112);a:{try{B.grow(b-buffer.byteLength+65535>>16);ua(B.buffer);var c=1;break a}catch(d){}c=
void 0}return c?!0:!1},a:y,memory:B,g:function(){},table:ja},Jb=e.asm({},Ha,buffer);e.asm=Jb;e.___embind_register_native_and_builtin_types=function(){return e.asm.x.apply(null,arguments)};var vb=e.___getTypeName=function(){return e.asm.y.apply(null,arguments)},Y=e._free=function(){return e.asm.z.apply(null,arguments)},Ib=e._malloc=function(){return e.asm.A.apply(null,arguments)},Ia=e.globalCtors=function(){return e.asm.R.apply(null,arguments)};e.dynCall_i=function(){return e.asm.B.apply(null,arguments)};
e.dynCall_ii=function(){return e.asm.C.apply(null,arguments)};e.dynCall_iidiiii=function(){return e.asm.D.apply(null,arguments)};e.dynCall_iii=function(){return e.asm.E.apply(null,arguments)};e.dynCall_iiii=function(){return e.asm.F.apply(null,arguments)};e.dynCall_iiiiiii=function(){return e.asm.G.apply(null,arguments)};e.dynCall_jiiii=function(){return e.asm.H.apply(null,arguments)};e.dynCall_jiji=function(){return e.asm.I.apply(null,arguments)};
e.dynCall_v=function(){return e.asm.J.apply(null,arguments)};e.dynCall_vi=function(){return e.asm.K.apply(null,arguments)};e.dynCall_vii=function(){return e.asm.L.apply(null,arguments)};e.dynCall_viii=function(){return e.asm.M.apply(null,arguments)};e.dynCall_viiii=function(){return e.asm.N.apply(null,arguments)};e.dynCall_viiiii=function(){return e.asm.O.apply(null,arguments)};e.dynCall_viiiiii=function(){return e.asm.P.apply(null,arguments)};
e.dynCall_viiiiiiiii=function(){return e.asm.Q.apply(null,arguments)};e.asm=Jb;var Kb;e.then=function(a){if(Kb)a(e);else{var b=e.onRuntimeInitialized;e.onRuntimeInitialized=function(){b&&b();a(e)}}return e};H=function Lb(){Kb||Mb();Kb||(H=Lb)};
function Mb(){function a(){if(!Kb&&(Kb=!0,!ka)){wa(ya);wa(za);if(e.onRuntimeInitialized)e.onRuntimeInitialized();if(e.postRun)for("function"==typeof e.postRun&&(e.postRun=[e.postRun]);e.postRun.length;){var a=e.postRun.shift();Aa.unshift(a)}wa(Aa)}}if(!(0<G)){if(e.preRun)for("function"==typeof e.preRun&&(e.preRun=[e.preRun]);e.preRun.length;)Ba();wa(xa);0<G||(e.setStatus?(e.setStatus("Running..."),setTimeout(function(){setTimeout(function(){e.setStatus("")},1);a()},1)):a())}}e.run=Mb;
if(e.preInit)for("function"==typeof e.preInit&&(e.preInit=[e.preInit]);0<e.preInit.length;)e.preInit.pop()();Mb();
var e;e||(e=typeof webp_dec !== 'undefined' ? webp_dec : {});var r={},w;for(w in e)e.hasOwnProperty(w)&&(r[w]=e[w]);var aa=!1,z=!1,ba=!1,ca=!1;aa="object"===typeof window;z="function"===typeof importScripts;ba="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node;ca=!aa&&!ba&&!z;var A="",da,B,ea,ha;
if(ba)A=z?require("path").dirname(A)+"/":__dirname+"/",da=function(a,b){ea||(ea=require("fs"));ha||(ha=require("path"));a=ha.normalize(a);return ea.readFileSync(a,b?null:"utf8")},B=function(a){a=da(a,!0);a.buffer||(a=new Uint8Array(a));a.buffer||D("Assertion failed: undefined");return a},1<process.argv.length&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),process.on("uncaughtException",function(a){throw a;}),process.on("unhandledRejection",D),e.inspect=function(){return"[Emscripten Module object]"};
else if(ca)"undefined"!=typeof read&&(da=function(a){return read(a)}),B=function(a){if("function"===typeof readbuffer)return new Uint8Array(readbuffer(a));a=read(a,"binary");"object"===typeof a||D("Assertion failed: undefined");return a},"undefined"!==typeof print&&("undefined"===typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!==typeof printErr?printErr:print);else if(aa||z)z?A=self.location.href:document.currentScript&&(A=document.currentScript.src),_scriptDir&&
(A=_scriptDir),0!==A.indexOf("blob:")?A=A.substr(0,A.lastIndexOf("/")+1):A="",da=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},z&&(B=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)});var ia=e.print||console.log.bind(console),E=e.printErr||console.warn.bind(console);for(w in r)r.hasOwnProperty(w)&&(e[w]=r[w]);r=null;var F;e.wasmBinary&&(F=e.wasmBinary);var noExitRuntime;
e.noExitRuntime&&(noExitRuntime=e.noExitRuntime);"object"!==typeof WebAssembly&&E("no native wasm support detected");var G,ja=new WebAssembly.Table({initial:190,maximum:190,element:"anyfunc"}),ka=!1,la="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;
function ma(a,b,c){var d=H;if(0<c){c=b+c-1;for(var f=0;f<a.length;++f){var g=a.charCodeAt(f);if(55296<=g&&57343>=g){var q=a.charCodeAt(++f);g=65536+((g&1023)<<10)|q&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 na="undefined"!==typeof TextDecoder?new TextDecoder("utf-16le"):void 0;
function oa(a){var b;for(b=a>>1;I[b];)++b;b<<=1;if(32<b-a&&na)return na.decode(H.subarray(a,b));b=0;for(var c="";;){var d=I[a+2*b>>1];if(0==d)return c;++b;c+=String.fromCharCode(d)}}function pa(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<c;++f)I[b>>1]=a.charCodeAt(f),b+=2;I[b>>1]=0;return b-d}function qa(a){return 2*a.length}
function ra(a){for(var b=0,c="";;){var d=J[a+4*b>>2];if(0==d)return c;++b;65536<=d?(d-=65536,c+=String.fromCharCode(55296|d>>10,56320|d&1023)):c+=String.fromCharCode(d)}}function sa(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<a.length;++f){var g=a.charCodeAt(f);if(55296<=g&&57343>=g){var q=a.charCodeAt(++f);g=65536+((g&1023)<<10)|q&1023}J[b>>2]=g;b+=4;if(b+4>c)break}J[b>>2]=0;return b-d}
function ta(a){for(var b=0,c=0;c<a.length;++c){var d=a.charCodeAt(c);55296<=d&&57343>=d&&++c;b+=4}return b}var K,ua,H,I,va,J,L,wa,xa;function ya(a){K=a;e.HEAP8=ua=new Int8Array(a);e.HEAP16=I=new Int16Array(a);e.HEAP32=J=new Int32Array(a);e.HEAPU8=H=new Uint8Array(a);e.HEAPU16=va=new Uint16Array(a);e.HEAPU32=L=new Uint32Array(a);e.HEAPF32=wa=new Float32Array(a);e.HEAPF64=xa=new Float64Array(a)}var za=e.INITIAL_MEMORY||16777216;e.wasmMemory?G=e.wasmMemory:G=new WebAssembly.Memory({initial:za/65536});
G&&(K=G.buffer);za=K.byteLength;ya(K);J[3452]=5256848;function Aa(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b();else{var c=b.la;"number"===typeof c?void 0===b.ba?e.dynCall_v(c):e.dynCall_vi(c,b.ba):c(void 0===b.ba?null:b.ba)}}}var Ba=[],Ca=[],Da=[],Ea=[];function Fa(){var a=e.preRun.shift();Ba.unshift(a)}var M=0,Ga=null,N=null;e.preloadedImages={};e.preloadedAudios={};
function D(a){if(e.onAbort)e.onAbort(a);ia(a);E(a);ka=!0;throw new WebAssembly.RuntimeError("abort("+a+"). Build with -s ASSERTIONS=1 for more info.");}function Ha(){var a=O;return String.prototype.startsWith?a.startsWith("data:application/octet-stream;base64,"):0===a.indexOf("data:application/octet-stream;base64,")}var O="webp_dec.wasm";if(!Ha()){var Ia=O;O=e.locateFile?e.locateFile(Ia,A):A+Ia}
function Ja(){try{if(F)return new Uint8Array(F);if(B)return B(O);throw"both async and sync fetching of the wasm failed";}catch(a){D(a)}}function Ka(){return F||!aa&&!z||"function"!==typeof fetch?new Promise(function(a){a(Ja())}):fetch(O,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file at '"+O+"'";return a.arrayBuffer()}).catch(function(){return Ja()})}Ca.push({la:function(){La()}});
function Ma(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 Na=void 0;function P(a){for(var b="";H[a];)b+=Na[H[a++]];return b}var Q={},R={},Oa={};function Pa(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 Qa(a,b){a=Pa(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)}function Ra(a){var b=Error,c=Qa(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 Sa=void 0;function S(a){throw new Sa(a);}var Ta=void 0;function Ua(a){throw new Ta(a);}function Va(a,b,c){function d(h){h=c(h);h.length!==a.length&&Ua("Mismatched type converter count");for(var l=0;l<a.length;++l)T(a[l],h[l])}a.forEach(function(h){Oa[h]=b});var f=Array(b.length),g=[],q=0;b.forEach(function(h,l){R.hasOwnProperty(h)?f[l]=R[h]:(g.push(h),Q.hasOwnProperty(h)||(Q[h]=[]),Q[h].push(function(){f[l]=R[h];++q;q===g.length&&d(f)}))});0===g.length&&d(f)}
function T(a,b,c){c=c||{};if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var d=b.name;a||S('type "'+d+'" must have a positive integer typeid pointer');if(R.hasOwnProperty(a)){if(c.oa)return;S("Cannot register type '"+d+"' twice")}R[a]=b;delete Oa[a];Q.hasOwnProperty(a)&&(b=Q[a],delete Q[a],b.forEach(function(f){f()}))}function Wa(a){return{count:a.count,X:a.X,Y:a.Y,M:a.M,O:a.O,P:a.P,R:a.R}}
function Xa(a){S(a.L.O.N.name+" instance already deleted")}var Ya=!1;function Za(){}function $a(a){--a.count.value;0===a.count.value&&(a.P?a.R.W(a.P):a.O.N.W(a.M))}function ab(a){if("undefined"===typeof FinalizationGroup)return ab=function(b){return b},a;Ya=new FinalizationGroup(function(b){for(var c=b.next();!c.done;c=b.next())c=c.value,c.M?$a(c):console.warn("object already deleted: "+c.M)});ab=function(b){Ya.register(b,b.L,b.L);return b};Za=function(b){Ya.unregister(b.L)};return ab(a)}
var bb=void 0,cb=[];function db(){for(;cb.length;){var a=cb.pop();a.L.X=!1;a["delete"]()}}function U(){}var eb={};function fb(a,b){var c=e;if(void 0===c[a].T){var d=c[a];c[a]=function(){c[a].T.hasOwnProperty(arguments.length)||S("Function '"+b+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+c[a].T+")!");return c[a].T[arguments.length].apply(this,arguments)};c[a].T=[];c[a].T[d.ia]=d}}
function gb(a,b,c){e.hasOwnProperty(a)?((void 0===c||void 0!==e[a].T&&void 0!==e[a].T[c])&&S("Cannot register public name '"+a+"' twice"),fb(a,a),e.hasOwnProperty(c)&&S("Cannot register multiple overloads of a function with the same number of arguments ("+c+")!"),e[a].T[c]=b):(e[a]=b,void 0!==c&&(e[a].ua=c))}function hb(a,b,c,d,f,g,q,h){this.name=a;this.constructor=b;this.V=c;this.W=d;this.S=f;this.ma=g;this.Z=q;this.ka=h}
function ib(a,b,c){for(;b!==c;)b.Z||S("Expected null or instance of "+c.name+", got an instance of "+b.name),a=b.Z(a),b=b.S;return a}function jb(a,b){if(null===b)return this.da&&S("null is not a valid "+this.name),0;b.L||S('Cannot pass "'+V(b)+'" as a '+this.name);b.L.M||S("Cannot pass deleted object as a pointer of type "+this.name);return ib(b.L.M,b.L.O.N,this.N)}
function kb(a,b){if(null===b){this.da&&S("null is not a valid "+this.name);if(this.aa){var c=this.qa();null!==a&&a.push(this.W,c);return c}return 0}b.L||S('Cannot pass "'+V(b)+'" as a '+this.name);b.L.M||S("Cannot pass deleted object as a pointer of type "+this.name);!this.$&&b.L.O.$&&S("Cannot convert argument of type "+(b.L.R?b.L.R.name:b.L.O.name)+" to parameter type "+this.name);c=ib(b.L.M,b.L.O.N,this.N);if(this.aa)switch(void 0===b.L.P&&S("Passing raw pointer to smart pointer is illegal"),this.sa){case 0:b.L.R===
this?c=b.L.P:S("Cannot convert argument of type "+(b.L.R?b.L.R.name:b.L.O.name)+" to parameter type "+this.name);break;case 1:c=b.L.P;break;case 2:if(b.L.R===this)c=b.L.P;else{var d=b.clone();c=this.ra(c,lb(function(){d["delete"]()}));null!==a&&a.push(this.W,c)}break;default:S("Unsupporting sharing policy")}return c}
function mb(a,b){if(null===b)return this.da&&S("null is not a valid "+this.name),0;b.L||S('Cannot pass "'+V(b)+'" as a '+this.name);b.L.M||S("Cannot pass deleted object as a pointer of type "+this.name);b.L.O.$&&S("Cannot convert argument of type "+b.L.O.name+" to parameter type "+this.name);return ib(b.L.M,b.L.O.N,this.N)}function ob(a){return this.fromWireType(L[a>>2])}function pb(a,b,c){if(b===c)return a;if(void 0===c.S)return null;a=pb(a,b,c.S);return null===a?null:c.ka(a)}var qb={};
function rb(a,b){for(void 0===b&&S("ptr should not be undefined");a.S;)b=a.Z(b),a=a.S;return qb[b]}function sb(a,b){b.O&&b.M||Ua("makeClassHandle requires ptr and ptrType");!!b.R!==!!b.P&&Ua("Both smartPtrType and smartPtr must be specified");b.count={value:1};return ab(Object.create(a,{L:{value:b}}))}function W(a,b,c,d){this.name=a;this.N=b;this.da=c;this.$=d;this.aa=!1;this.W=this.ra=this.qa=this.ha=this.sa=this.pa=void 0;void 0!==b.S?this.toWireType=kb:(this.toWireType=d?jb:mb,this.U=null)}
function tb(a,b,c){e.hasOwnProperty(a)||Ua("Replacing nonexistant public symbol");void 0!==e[a].T&&void 0!==c?e[a].T[c]=b:(e[a]=b,e[a].ia=c)}
function X(a,b){a=P(a);var c=e["dynCall_"+a];for(var d=[],f=1;f<a.length;++f)d.push("a"+f);f="return function dynCall_"+(a+"_"+b)+"("+d.join(", ")+") {\n";f+=" return dynCall(rawFunction"+(d.length?", ":"")+d.join(", ")+");\n";c=(new Function("dynCall","rawFunction",f+"};\n"))(c,b);"function"!==typeof c&&S("unknown function pointer with signature "+a+": "+b);return c}var ub=void 0;function vb(a){a=wb(a);var b=P(a);Y(a);return b}
function xb(a,b){function c(g){f[g]||R[g]||(Oa[g]?Oa[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){for(;a.length;){var b=a.pop();a.pop()(b)}}function zb(a,b,c){a instanceof Object||S(c+' with invalid "this": '+a);a instanceof b.N.constructor||S(c+' incompatible with "this" of type '+a.constructor.name);a.L.M||S("cannot call emscripten binding method "+c+" on deleted object");return ib(a.L.M,a.L.O.N,b.N)}
var Ab=[],Z=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function Bb(a){4<a&&0===--Z[a].ea&&(Z[a]=void 0,Ab.push(a))}function lb(a){switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:var b=Ab.length?Ab.pop():Z.length;Z[b]={ea:1,value:a};return b}}function V(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a}
function Cb(a,b){switch(b){case 2:return function(c){return this.fromWireType(wa[c>>2])};case 3:return function(c){return this.fromWireType(xa[c>>3])};default:throw new TypeError("Unknown float type: "+a);}}function Db(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=Qa(b.name||"unknownFunctionName",function(){});c.prototype=b.prototype;c=new c;a=b.apply(c,a);return a instanceof Object?a:c}
function Eb(a,b){for(var c=[],d=0;d<a;d++)c.push(J[(b>>2)+d]);return c}function Fb(a,b,c){switch(b){case 0:return c?function(d){return ua[d]}:function(d){return H[d]};case 1:return c?function(d){return I[d>>1]}:function(d){return va[d>>1]};case 2:return c?function(d){return J[d>>2]}:function(d){return L[d>>2]};default:throw new TypeError("Unknown integer type: "+a);}}for(var Gb=Array(256),Hb=0;256>Hb;++Hb)Gb[Hb]=String.fromCharCode(Hb);Na=Gb;Sa=e.BindingError=Ra("BindingError");
Ta=e.InternalError=Ra("InternalError");U.prototype.isAliasOf=function(a){if(!(this instanceof U&&a instanceof U))return!1;var b=this.L.O.N,c=this.L.M,d=a.L.O.N;for(a=a.L.M;b.S;)c=b.Z(c),b=b.S;for(;d.S;)a=d.Z(a),d=d.S;return b===d&&c===a};U.prototype.clone=function(){this.L.M||Xa(this);if(this.L.Y)return this.L.count.value+=1,this;var a=ab(Object.create(Object.getPrototypeOf(this),{L:{value:Wa(this.L)}}));a.L.count.value+=1;a.L.X=!1;return a};
U.prototype["delete"]=function(){this.L.M||Xa(this);this.L.X&&!this.L.Y&&S("Object already scheduled for deletion");Za(this);$a(this.L);this.L.Y||(this.L.P=void 0,this.L.M=void 0)};U.prototype.isDeleted=function(){return!this.L.M};U.prototype.deleteLater=function(){this.L.M||Xa(this);this.L.X&&!this.L.Y&&S("Object already scheduled for deletion");cb.push(this);1===cb.length&&bb&&bb(db);this.L.X=!0;return this};W.prototype.na=function(a){this.ha&&(a=this.ha(a));return a};
W.prototype.ga=function(a){this.W&&this.W(a)};W.prototype.argPackAdvance=8;W.prototype.readValueFromPointer=ob;W.prototype.deleteObject=function(a){if(null!==a)a["delete"]()};
W.prototype.fromWireType=function(a){function b(){return this.aa?sb(this.N.V,{O:this.pa,M:c,R:this,P:a}):sb(this.N.V,{O:this,M:a})}var c=this.na(a);if(!c)return this.ga(a),null;var d=rb(this.N,c);if(void 0!==d){if(0===d.L.count.value)return d.L.M=c,d.L.P=a,d.clone();d=d.clone();this.ga(a);return d}d=this.N.ma(c);d=eb[d];if(!d)return b.call(this);d=this.$?d.ja:d.pointerType;var f=pb(c,this.N,d.N);return null===f?b.call(this):this.aa?sb(d.N.V,{O:d,M:f,R:this,P:a}):sb(d.N.V,{O:d,M:f})};
e.getInheritedInstanceCount=function(){return Object.keys(qb).length};e.getLiveInheritedInstances=function(){var a=[],b;for(b in qb)qb.hasOwnProperty(b)&&a.push(qb[b]);return a};e.flushPendingDeletes=db;e.setDelayFunction=function(a){bb=a;cb.length&&bb&&bb(db)};ub=e.UnboundTypeError=Ra("UnboundTypeError");e.count_emval_handles=function(){for(var a=0,b=5;b<Z.length;++b)void 0!==Z[b]&&++a;return a};e.get_first_emval=function(){for(var a=5;a<Z.length;++a)if(void 0!==Z[a])return Z[a];return null};
var Jb={j:function(a,b,c,d,f){var g=Ma(c);b=P(b);T(a,{name:b,fromWireType:function(q){return!!q},toWireType:function(q,h){return h?d:f},argPackAdvance:8,readValueFromPointer:function(q){if(1===c)var h=ua;else if(2===c)h=I;else if(4===c)h=J;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(h[q>>g])},U:null})},n:function(a,b,c,d,f,g,q,h,l,m,k,p,t){k=P(k);g=X(f,g);h&&(h=X(q,h));m&&(m=X(l,m));t=X(p,t);var v=Pa(k);gb(v,function(){xb("Cannot construct "+k+" due to unbound types",
[d])});Va([a,b,c],d?[d]:[],function(n){n=n[0];if(d){var u=n.N;var x=u.V}else x=U.prototype;n=Qa(v,function(){if(Object.getPrototypeOf(this)!==y)throw new Sa("Use 'new' to construct "+k);if(void 0===C.fa)throw new Sa(k+" has no accessible constructor");var nb=C.fa[arguments.length];if(void 0===nb)throw new Sa("Tried to invoke ctor of "+k+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(C.fa).toString()+") parameters instead!");return nb.apply(this,arguments)});var y=
Object.create(x,{constructor:{value:n}});n.prototype=y;var C=new hb(k,n,y,t,u,g,h,m);u=new W(k,C,!0,!1);x=new W(k+"*",C,!1,!1);var fa=new W(k+" const*",C,!1,!0);eb[a]={pointerType:x,ja:fa};tb(v,n);return[u,x,fa]})},d:function(a,b,c,d,f,g,q,h,l,m){b=P(b);f=X(d,f);Va([],[a],function(k){k=k[0];var p=k.name+"."+b,t={get:function(){xb("Cannot access "+p+" due to unbound types",[c,q])},enumerable:!0,configurable:!0};l?t.set=function(){xb("Cannot access "+p+" due to unbound types",[c,q])}:t.set=function(){S(p+
" is a read-only property")};Object.defineProperty(k.N.V,b,t);Va([],l?[c,q]:[c],function(v){var n=v[0],u={get:function(){var y=zb(this,k,p+" getter");return n.fromWireType(f(g,y))},enumerable:!0};if(l){l=X(h,l);var x=v[1];u.set=function(y){var C=zb(this,k,p+" setter"),fa=[];l(m,C,x.toWireType(fa,y));yb(fa)}}Object.defineProperty(k.N.V,b,u);return[]});return[]})},r:function(a,b){b=P(b);T(a,{name:b,fromWireType:function(c){var d=Z[c].value;Bb(c);return d},toWireType:function(c,d){return lb(d)},argPackAdvance:8,
readValueFromPointer:ob,U:null})},g:function(a,b,c){c=Ma(c);b=P(b);T(a,{name:b,fromWireType:function(d){return d},toWireType:function(d,f){if("number"!==typeof f&&"boolean"!==typeof f)throw new TypeError('Cannot convert "'+V(f)+'" to '+this.name);return f},argPackAdvance:8,readValueFromPointer:Cb(b,c),U:null})},c:function(a,b,c,d,f,g){var q=Eb(b,c);a=P(a);f=X(d,f);gb(a,function(){xb("Cannot call "+a+" due to unbound types",q)},b-1);Va([],q,function(h){var l=[h[0],null].concat(h.slice(1)),m=h=a,k=
f,p=l.length;2>p&&S("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var t=null!==l[1]&&!1,v=!1,n=1;n<l.length;++n)if(null!==l[n]&&void 0===l[n].U){v=!0;break}var u="void"!==l[0].name,x="",y="";for(n=0;n<p-2;++n)x+=(0!==n?", ":"")+"arg"+n,y+=(0!==n?", ":"")+"arg"+n+"Wired";m="return function "+Pa(m)+"("+x+") {\nif (arguments.length !== "+(p-2)+") {\nthrowBindingError('function "+m+" called with ' + arguments.length + ' arguments, expected "+(p-2)+" args!');\n}\n";
v&&(m+="var destructors = [];\n");var C=v?"destructors":"null";x="throwBindingError invoker fn runDestructors retType classParam".split(" ");k=[S,k,g,yb,l[0],l[1]];t&&(m+="var thisWired = classParam.toWireType("+C+", this);\n");for(n=0;n<p-2;++n)m+="var arg"+n+"Wired = argType"+n+".toWireType("+C+", arg"+n+"); // "+l[n+2].name+"\n",x.push("argType"+n),k.push(l[n+2]);t&&(y="thisWired"+(0<y.length?", ":"")+y);m+=(u?"var rv = ":"")+"invoker(fn"+(0<y.length?", ":"")+y+");\n";if(v)m+="runDestructors(destructors);\n";
else for(n=t?1:2;n<l.length;++n)p=1===n?"thisWired":"arg"+(n-2)+"Wired",null!==l[n].U&&(m+=p+"_dtor("+p+"); // "+l[n].name+"\n",x.push(p+"_dtor"),k.push(l[n].U));u&&(m+="var ret = retType.fromWireType(rv);\nreturn ret;\n");x.push(m+"}\n");l=Db(x).apply(null,k);tb(h,l,b-1);return[]})},b:function(a,b,c,d,f){function g(m){return m}b=P(b);-1===f&&(f=4294967295);var q=Ma(c);if(0===d){var h=32-8*c;g=function(m){return m<<h>>>h}}var l=-1!=b.indexOf("unsigned");T(a,{name:b,fromWireType:g,toWireType:function(m,
k){if("number"!==typeof k&&"boolean"!==typeof k)throw new TypeError('Cannot convert "'+V(k)+'" to '+this.name);if(k<d||k>f)throw new TypeError('Passing a number "'+V(k)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+d+", "+f+"]!");return l?k>>>0:k|0},argPackAdvance:8,readValueFromPointer:Fb(b,q,0!==d),U:null})},a:function(a,b,c){function d(g){g>>=2;var q=L;return new f(K,q[g+1],q[g])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,
Float32Array,Float64Array][b];c=P(c);T(a,{name:c,fromWireType:d,argPackAdvance:8,readValueFromPointer:d},{oa:!0})},f:function(a,b){b=P(b);var c="std::string"===b;T(a,{name:b,fromWireType:function(d){var f=L[d>>2];if(c){var g=H[d+4+f],q=0;0!=g&&(q=g,H[d+4+f]=0);var h=d+4;for(g=0;g<=f;++g){var l=d+4+g;if(0==H[l]){if(h){for(var m=H,k=h+NaN,p=h;m[p]&&!(p>=k);)++p;if(16<p-h&&m.subarray&&la)h=la.decode(m.subarray(h,p));else{for(k="";h<p;){var t=m[h++];if(t&128){var v=m[h++]&63;if(192==(t&224))k+=String.fromCharCode((t&
31)<<6|v);else{var n=m[h++]&63;t=224==(t&240)?(t&15)<<12|v<<6|n:(t&7)<<18|v<<12|n<<6|m[h++]&63;65536>t?k+=String.fromCharCode(t):(t-=65536,k+=String.fromCharCode(55296|t>>10,56320|t&1023))}}else k+=String.fromCharCode(t)}h=k}}else h="";if(void 0===u)var u=h;else u+=String.fromCharCode(0),u+=h;h=l+1}}0!=q&&(H[d+4+f]=q)}else{u=Array(f);for(g=0;g<f;++g)u[g]=String.fromCharCode(H[d+4+g]);u=u.join("")}Y(d);return u},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||S("Cannot pass non-string to std::string");var q=(c&&g?function(){for(var m=0,k=0;k<f.length;++k){var p=f.charCodeAt(k);55296<=p&&57343>=p&&(p=65536+((p&1023)<<10)|f.charCodeAt(++k)&1023);127>=p?++m:m=2047>=p?m+2:65535>=p?m+3:m+4}return m}:function(){return f.length})(),h=Ib(4+q+1);L[h>>2]=q;if(c&&g)ma(f,h+4,q+1);else if(g)for(g=0;g<q;++g){var l=f.charCodeAt(g);255<l&&(Y(h),S("String has UTF-16 code units that do not fit in 8 bits"));
H[h+4+g]=l}else for(g=0;g<q;++g)H[h+4+g]=f[g];null!==d&&d.push(Y,h);return h},argPackAdvance:8,readValueFromPointer:ob,U:function(d){Y(d)}})},e:function(a,b,c){c=P(c);if(2===b){var d=oa;var f=pa;var g=qa;var q=function(){return va};var h=1}else 4===b&&(d=ra,f=sa,g=ta,q=function(){return L},h=2);T(a,{name:c,fromWireType:function(l){var m=L[l>>2],k=q(),p=k[l+4+m*b>>h],t=0;0!=p&&(t=p,k[l+4+m*b>>h]=0);var v=l+4;for(p=0;p<=m;++p){var n=l+4+p*b;if(0==k[n>>h]){v=d(v);if(void 0===u)var u=v;else u+=String.fromCharCode(0),
u+=v;v=n+b}}0!=t&&(k[l+4+m*b>>h]=t);Y(l);return u},toWireType:function(l,m){"string"!==typeof m&&S("Cannot pass non-string to C++ string type "+c);var k=g(m),p=Ib(4+k+b);L[p>>2]=k>>h;f(m,p+4,k+b);null!==l&&l.push(Y,p);return p},argPackAdvance:8,readValueFromPointer:ob,U:function(l){Y(l)}})},k:function(a,b){b=P(b);T(a,{ta:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},h:Bb,m:function(a){4<a&&(Z[a].ea+=1)},i:function(a,b){var c=R[a];void 0===c&&S("_emval_take_value has unknown type "+
vb(a));a=c.readValueFromPointer(b);return lb(a)},l:function(){D()},p:function(a,b,c){H.copyWithin(a,b,b+c)},q:function(a){var b=H.length;if(2147418112<a)return!1;for(var c=1;4>=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,a+100663296);d=Math.max(16777216,a,d);0<d%65536&&(d+=65536-d%65536);a:{try{G.grow(Math.min(2147418112,d)-K.byteLength+65535>>16);ya(G.buffer);var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},memory:G,o:function(){},table:ja},Kb=function(){function a(f){e.asm=f.exports;M--;e.monitorRunDependencies&&
e.monitorRunDependencies(M);0==M&&(null!==Ga&&(clearInterval(Ga),Ga=null),N&&(f=N,N=null,f()))}function b(f){a(f.instance)}function c(f){return Ka().then(function(g){return WebAssembly.instantiate(g,d)}).then(f,function(g){E("failed to asynchronously prepare wasm: "+g);D(g)})}var d={a:Jb};M++;e.monitorRunDependencies&&e.monitorRunDependencies(M);if(e.instantiateWasm)try{return e.instantiateWasm(d,a)}catch(f){return E("Module.instantiateWasm callback failed with error: "+f),!1}(function(){if(F||"function"!==
typeof WebAssembly.instantiateStreaming||Ha()||"function"!==typeof fetch)return c(b);fetch(O,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,d).then(b,function(g){E("wasm streaming compile failed: "+g);E("falling back to ArrayBuffer instantiation");c(b)})})})();return{}}();e.asm=Kb;
var La=e.___wasm_call_ctors=function(){return(La=e.___wasm_call_ctors=e.asm.s).apply(null,arguments)},Y=e._free=function(){return(Y=e._free=e.asm.t).apply(null,arguments)},Ib=e._malloc=function(){return(Ib=e._malloc=e.asm.u).apply(null,arguments)},wb=e.___getTypeName=function(){return(wb=e.___getTypeName=e.asm.v).apply(null,arguments)};e.___embind_register_native_and_builtin_types=function(){return(e.___embind_register_native_and_builtin_types=e.asm.w).apply(null,arguments)};
e.dynCall_ii=function(){return(e.dynCall_ii=e.asm.x).apply(null,arguments)};e.dynCall_vi=function(){return(e.dynCall_vi=e.asm.y).apply(null,arguments)};e.dynCall_iii=function(){return(e.dynCall_iii=e.asm.z).apply(null,arguments)};e.dynCall_viii=function(){return(e.dynCall_viii=e.asm.A).apply(null,arguments)};e.dynCall_vii=function(){return(e.dynCall_vii=e.asm.B).apply(null,arguments)};e.dynCall_i=function(){return(e.dynCall_i=e.asm.C).apply(null,arguments)};
e.dynCall_v=function(){return(e.dynCall_v=e.asm.D).apply(null,arguments)};e.dynCall_iiii=function(){return(e.dynCall_iiii=e.asm.E).apply(null,arguments)};e.dynCall_iiiiiii=function(){return(e.dynCall_iiiiiii=e.asm.F).apply(null,arguments)};e.dynCall_viiii=function(){return(e.dynCall_viiii=e.asm.G).apply(null,arguments)};e.dynCall_viiiiii=function(){return(e.dynCall_viiiiii=e.asm.H).apply(null,arguments)};e.dynCall_viiiii=function(){return(e.dynCall_viiiii=e.asm.I).apply(null,arguments)};
e.dynCall_viiiiiiiii=function(){return(e.dynCall_viiiiiiiii=e.asm.J).apply(null,arguments)};e.dynCall_jiiii=function(){return(e.dynCall_jiiii=e.asm.K).apply(null,arguments)};e.asm=Kb;var Lb;e.then=function(a){if(Lb)a(e);else{var b=e.onRuntimeInitialized;e.onRuntimeInitialized=function(){b&&b();a(e)}}return e};N=function Mb(){Lb||Nb();Lb||(N=Mb)};
function Nb(){function a(){if(!Lb&&(Lb=!0,e.calledRun=!0,!ka)){Aa(Ca);Aa(Da);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();Ea.unshift(b)}Aa(Ea)}}if(!(0<M)){if(e.preRun)for("function"==typeof e.preRun&&(e.preRun=[e.preRun]);e.preRun.length;)Fa();Aa(Ba);0<M||(e.setStatus?(e.setStatus("Running..."),setTimeout(function(){setTimeout(function(){e.setStatus("")},1);a()},1)):a())}}
e.run=Nb;if(e.preInit)for("function"==typeof e.preInit&&(e.preInit=[e.preInit]);0<e.preInit.length;)e.preInit.pop()();noExitRuntime=!0;Nb();
return webp_dec

Binary file not shown.

View File

@ -58,5 +58,5 @@ echo "============================================="
echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
echo "Did you update your docker image?"
echo "Run \`docker pull trzeci/emscripten\`"
echo "Run \`docker pull trzeci/emscripten-upstream\`"
echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"

View File

@ -2,7 +2,7 @@
"name": "webp_enc",
"scripts": {
"install": "napa",
"build": "docker run --rm -v $(pwd):/src trzeci/emscripten ./build.sh"
"build": "docker run --rm -v $(pwd):/src trzeci/emscripten-upstream ./build.sh"
},
"napa": {
"libwebp": "webmproject/libwebp#v1.0.2"

View File

@ -6,55 +6,57 @@ var webp_enc = (function() {
function(webp_enc) {
webp_enc = webp_enc || {};
var d;d||(d=typeof webp_enc !== 'undefined' ? webp_enc : {});var n={},q;for(q in d)d.hasOwnProperty(q)&&(n[q]=d[q]);var r=!1,t=!1,aa=!1,ba=!1,ca=!1;r="object"===typeof window;t="function"===typeof importScripts;aa=(ba="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node)&&!r&&!t;ca=!r&&!aa&&!t;var u="",v,x,fa,ha;
if(aa)u=__dirname+"/",v=function(a,b){fa||(fa=require("fs"));ha||(ha=require("path"));a=ha.normalize(a);return fa.readFileSync(a,b?null:"utf8")},x=function(a){a=v(a,!0);a.buffer||(a=new Uint8Array(a));a.buffer||y("Assertion failed: undefined");return a},1<process.argv.length&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),process.on("uncaughtException",function(a){throw a;}),process.on("unhandledRejection",y),d.inspect=function(){return"[Emscripten Module object]"};else if(ca)"undefined"!=
typeof read&&(v=function(a){return read(a)}),x=function(a){if("function"===typeof readbuffer)return new Uint8Array(readbuffer(a));a=read(a,"binary");"object"===typeof a||y("Assertion failed: undefined");return a},"undefined"!==typeof print&&("undefined"===typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!==typeof printErr?printErr:print);else if(r||t)t?u=self.location.href:document.currentScript&&(u=document.currentScript.src),_scriptDir&&(u=_scriptDir),0!==u.indexOf("blob:")?
u=u.substr(0,u.lastIndexOf("/")+1):u="",v=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},t&&(x=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)});var ia=d.print||console.log.bind(console),z=d.printErr||console.warn.bind(console);for(q in n)n.hasOwnProperty(q)&&(d[q]=n[q]);n=null;var ja={"f64-rem":function(a,b){return a%b},"debugger":function(){}},A;d.wasmBinary&&(A=d.wasmBinary);
"object"!==typeof WebAssembly&&z("no native wasm support detected");var C,ka=new WebAssembly.Table({initial:256,maximum:256,element:"anyfunc"}),la=!1,ma="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;
function na(a,b,c){var e=b+c;for(c=b;a[c]&&!(c>=e);)++c;if(16<c-b&&a.subarray&&ma)return ma.decode(a.subarray(b,c));for(e="";b<c;){var f=a[b++];if(f&128){var g=a[b++]&63;if(192==(f&224))e+=String.fromCharCode((f&31)<<6|g);else{var k=a[b++]&63;f=224==(f&240)?(f&15)<<12|g<<6|k:(f&7)<<18|g<<12|k<<6|a[b++]&63;65536>f?e+=String.fromCharCode(f):(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else e+=String.fromCharCode(f)}return e}
function oa(a,b,c){var e=D;if(0<c){c=b+c-1;for(var f=0;f<a.length;++f){var g=a.charCodeAt(f);if(55296<=g&&57343>=g){var k=a.charCodeAt(++f);g=65536+((g&1023)<<10)|k&1023}if(127>=g){if(b>=c)break;e[b++]=g}else{if(2047>=g){if(b+1>=c)break;e[b++]=192|g>>6}else{if(65535>=g){if(b+2>=c)break;e[b++]=224|g>>12}else{if(b+3>=c)break;e[b++]=240|g>>18;e[b++]=128|g>>12&63}e[b++]=128|g>>6&63}e[b++]=128|g&63}}e[b]=0}}"undefined"!==typeof TextDecoder&&new TextDecoder("utf-16le");
function pa(a){0<a%65536&&(a+=65536-a%65536);return a}var buffer,E,D,F,G,H,I,qa,ra;function ta(a){buffer=a;d.HEAP8=E=new Int8Array(a);d.HEAP16=F=new Int16Array(a);d.HEAP32=H=new Int32Array(a);d.HEAPU8=D=new Uint8Array(a);d.HEAPU16=G=new Uint16Array(a);d.HEAPU32=I=new Uint32Array(a);d.HEAPF32=qa=new Float32Array(a);d.HEAPF64=ra=new Float64Array(a)}var ua=d.TOTAL_MEMORY||16777216;d.wasmMemory?C=d.wasmMemory:C=new WebAssembly.Memory({initial:ua/65536});C&&(buffer=C.buffer);ua=buffer.byteLength;ta(buffer);
H[9180]=5279792;function K(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b();else{var c=b.ja;"number"===typeof c?void 0===b.da?d.dynCall_v(c):d.dynCall_vi(c,b.da):c(void 0===b.da?null:b.da)}}}var va=[],wa=[],xa=[],ya=[];function za(){var a=d.preRun.shift();va.unshift(a)}var M=0,Aa=null,N=null;d.preloadedImages={};d.preloadedAudios={};
function y(a){if(d.onAbort)d.onAbort(a);ia(a);z(a);la=!0;throw new WebAssembly.RuntimeError("abort("+a+"). Build with -s ASSERTIONS=1 for more info.");}function Ba(){var a=O;return String.prototype.startsWith?a.startsWith("data:application/octet-stream;base64,"):0===a.indexOf("data:application/octet-stream;base64,")}var O="webp_enc.wasm";if(!Ba()){var Ca=O;O=d.locateFile?d.locateFile(Ca,u):u+Ca}
function Da(){try{if(A)return new Uint8Array(A);if(x)return x(O);throw"both async and sync fetching of the wasm failed";}catch(a){y(a)}}function Ea(){return A||!r&&!t||"function"!==typeof fetch?new Promise(function(a){a(Da())}):fetch(O,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file at '"+O+"'";return a.arrayBuffer()}).catch(function(){return Da()})}
d.asm=function(){function a(a){d.asm=a.exports;M--;d.monitorRunDependencies&&d.monitorRunDependencies(M);0==M&&(null!==Aa&&(clearInterval(Aa),Aa=null),N&&(a=N,N=null,a()))}function b(b){a(b.instance)}function c(a){return Ea().then(function(a){return WebAssembly.instantiate(a,e)}).then(a,function(a){z("failed to asynchronously prepare wasm: "+a);y(a)})}var e={env:Fa,wasi_unstable:Fa,global:{NaN:NaN,Infinity:Infinity},"global.Math":Math,asm2wasm:ja};M++;d.monitorRunDependencies&&d.monitorRunDependencies(M);
if(d.instantiateWasm)try{return d.instantiateWasm(e,a)}catch(f){return z("Module.instantiateWasm callback failed with error: "+f),!1}(function(){if(A||"function"!==typeof WebAssembly.instantiateStreaming||Ba()||"function"!==typeof fetch)return c(b);fetch(O,{credentials:"same-origin"}).then(function(a){return WebAssembly.instantiateStreaming(a,e).then(b,function(a){z("wasm streaming compile failed: "+a);z("falling back to ArrayBuffer instantiation");c(b)})})})();return{}};wa.push({ja:function(){Ga()}});
var Ha=[null,[],[]];function Ia(){return 0}function Ja(){return 0}function Ka(a,b,c,e){try{for(var f=0,g=0;g<c;g++){for(var k=H[b+8*g>>2],h=H[b+(8*g+4)>>2],p=0;p<h;p++){var l=D[k+p],w=Ha[a];0===l||10===l?((1===a?ia:z)(na(w,0)),w.length=0):w.push(l)}f+=h}H[e>>2]=f;return 0}catch(B){return"undefined"!==typeof FS&&B instanceof FS.ta||y(B),B.ua}}var P={};function La(a){for(;a.length;){var b=a.pop();a.pop()(b)}}function Q(a){return this.fromWireType(I[a>>2])}var R={},S={},Ma={};
function Na(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 Oa(a,b){a=Na(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)}
function Pa(a){var b=Error,c=Oa(a,function(b){this.name=a;this.message=b;b=Error(b).stack;void 0!==b&&(this.stack=this.toString()+"\n"+b.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 Qa=void 0;
function Ra(a,b,c){function e(b){b=c(b);if(b.length!==a.length)throw new Qa("Mismatched type converter count");for(var e=0;e<a.length;++e)T(a[e],b[e])}a.forEach(function(a){Ma[a]=b});var f=Array(b.length),g=[],k=0;b.forEach(function(a,b){S.hasOwnProperty(a)?f[b]=S[a]:(g.push(a),R.hasOwnProperty(a)||(R[a]=[]),R[a].push(function(){f[b]=S[a];++k;k===g.length&&e(f)}))});0===g.length&&e(f)}
function Sa(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 Ta=void 0;function U(a){for(var b="";D[a];)b+=Ta[D[a++]];return b}var Ua=void 0;function V(a){throw new Ua(a);}
function T(a,b,c){c=c||{};if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var e=b.name;a||V('type "'+e+'" must have a positive integer typeid pointer');if(S.hasOwnProperty(a)){if(c.na)return;V("Cannot register type '"+e+"' twice")}S[a]=b;delete Ma[a];R.hasOwnProperty(a)&&(b=R[a],delete R[a],b.forEach(function(a){a()}))}var Va=[],W=[{},{value:void 0},{value:null},{value:!0},{value:!1}];
function Wa(a){4<a&&0===--W[a].ea&&(W[a]=void 0,Va.push(a))}function Ya(a){switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:var b=Va.length?Va.pop():W.length;W[b]={ea:1,value:a};return b}}
function Za(a,b){var c=d;if(void 0===c[a].ba){var e=c[a];c[a]=function(){c[a].ba.hasOwnProperty(arguments.length)||V("Function '"+b+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+c[a].ba+")!");return c[a].ba[arguments.length].apply(this,arguments)};c[a].ba=[];c[a].ba[e.ha]=e}}
function $a(a,b,c){d.hasOwnProperty(a)?((void 0===c||void 0!==d[a].ba&&void 0!==d[a].ba[c])&&V("Cannot register public name '"+a+"' twice"),Za(a,a),d.hasOwnProperty(c)&&V("Cannot register multiple overloads of a function with the same number of arguments ("+c+")!"),d[a].ba[c]=b):(d[a]=b,void 0!==c&&(d[a].wa=c))}
function ab(a,b,c){switch(b){case 0:return function(a){return this.fromWireType((c?E:D)[a])};case 1:return function(a){return this.fromWireType((c?F:G)[a>>1])};case 2:return function(a){return this.fromWireType((c?H:I)[a>>2])};default:throw new TypeError("Unknown integer type: "+a);}}function bb(a){a=cb(a);var b=U(a);X(a);return b}function db(a,b){var c=S[a];void 0===c&&V(b+" has unknown type "+bb(a));return c}
function eb(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a}function fb(a,b){switch(b){case 2:return function(a){return this.fromWireType(qa[a>>2])};case 3:return function(a){return this.fromWireType(ra[a>>3])};default:throw new TypeError("Unknown float type: "+a);}}
function gb(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=Oa(b.name||"unknownFunctionName",function(){});c.prototype=b.prototype;c=new c;a=b.apply(c,a);return a instanceof Object?a:c}function hb(a,b){for(var c=[],e=0;e<a;e++)c.push(H[(b>>2)+e]);return c}
function Y(a,b){a=U(a);if(void 0!==d["FUNCTION_TABLE_"+a])var c=d["FUNCTION_TABLE_"+a][b];else if("undefined"!==typeof FUNCTION_TABLE)c=FUNCTION_TABLE[b];else{c=d["dynCall_"+a];void 0===c&&(c=d["dynCall_"+a.replace(/f/g,"d")],void 0===c&&V("No dynCall invoker for signature: "+a));for(var e=[],f=1;f<a.length;++f)e.push("a"+f);f="return function "+("dynCall_"+a+"_"+b)+"("+e.join(", ")+") {\n";f+=" return dynCall(rawFunction"+(e.length?", ":"")+e.join(", ")+");\n";c=(new Function("dynCall","rawFunction",
f+"};\n"))(c,b)}"function"!==typeof c&&V("unknown function pointer with signature "+a+": "+b);return c}var ib=void 0;function jb(a,b){function c(a){f[a]||S[a]||(Ma[a]?Ma[a].forEach(c):(e.push(a),f[a]=!0))}var e=[],f={};b.forEach(c);throw new ib(a+": "+e.map(bb).join([", "]));}
function kb(a,b,c){switch(b){case 0:return c?function(a){return E[a]}:function(a){return D[a]};case 1:return c?function(a){return F[a>>1]}:function(a){return G[a>>1]};case 2:return c?function(a){return H[a>>2]}:function(a){return I[a>>2]};default:throw new TypeError("Unknown integer type: "+a);}}function lb(){return E.length}Qa=d.InternalError=Pa("InternalError");for(var mb=Array(256),nb=0;256>nb;++nb)mb[nb]=String.fromCharCode(nb);Ta=mb;Ua=d.BindingError=Pa("BindingError");
d.count_emval_handles=function(){for(var a=0,b=5;b<W.length;++b)void 0!==W[b]&&++a;return a};d.get_first_emval=function(){for(var a=5;a<W.length;++a)if(void 0!==W[a])return W[a];return null};ib=d.UnboundTypeError=Pa("UnboundTypeError");
var Fa={j:function(a){return ob(a)},g:function(a){"uncaught_exception"in pb?pb.ga++:pb.ga=1;throw a;},q:function(){return Ia.apply(null,arguments)},r:function(){return Ja.apply(null,arguments)},p:function(){return Ka.apply(null,arguments)},o:function(a){var b=P[a];delete P[a];var c=b.oa,e=b.pa,f=b.fa,g=f.map(function(a){return a.ma}).concat(f.map(function(a){return a.ra}));Ra([a],g,function(a){var g={};f.forEach(function(b,c){var e=a[c],l=b.ka,p=b.la,h=a[c+f.length],k=b.qa,ea=b.sa;g[b.ia]={read:function(a){return e.fromWireType(l(p,
a))},write:function(a,b){var c=[];k(ea,a,h.toWireType(c,b));La(c)}}});return[{name:b.name,fromWireType:function(a){var b={},c;for(c in g)b[c]=g[c].read(a);e(a);return b},toWireType:function(a,b){for(var f in g)if(!(f in b))throw new TypeError("Missing field");var h=c();for(f in g)g[f].write(h,b[f]);null!==a&&a.push(e,h);return h},argPackAdvance:8,readValueFromPointer:Q,aa:e}]})},n:function(a,b,c,e,f){var g=Sa(c);b=U(b);T(a,{name:b,fromWireType:function(a){return!!a},toWireType:function(a,b){return b?
e:f},argPackAdvance:8,readValueFromPointer:function(a){if(1===c)var e=E;else if(2===c)e=F;else if(4===c)e=H;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(e[a>>g])},aa:null})},m:function(a,b){b=U(b);T(a,{name:b,fromWireType:function(a){var b=W[a].value;Wa(a);return b},toWireType:function(a,b){return Ya(b)},argPackAdvance:8,readValueFromPointer:Q,aa:null})},l:function(a,b,c,e){function f(){}c=Sa(c);b=U(b);f.values={};T(a,{name:b,constructor:f,fromWireType:function(a){return this.constructor.values[a]},
toWireType:function(a,b){return b.value},argPackAdvance:8,readValueFromPointer:ab(b,c,e),aa:null});$a(b,f)},k:function(a,b,c){var e=db(a,"enum");b=U(b);a=e.constructor;e=Object.create(e.constructor.prototype,{value:{value:c},constructor:{value:Oa(e.name+"_"+b,function(){})}});a.values[c]=e;a[b]=e},i:function(a,b,c){c=Sa(c);b=U(b);T(a,{name:b,fromWireType:function(a){return a},toWireType:function(a,b){if("number"!==typeof b&&"boolean"!==typeof b)throw new TypeError('Cannot convert "'+eb(b)+'" to '+
this.name);return b},argPackAdvance:8,readValueFromPointer:fb(b,c),aa:null})},e:function(a,b,c,e,f,g){var k=hb(b,c);a=U(a);f=Y(e,f);$a(a,function(){jb("Cannot call "+a+" due to unbound types",k)},b-1);Ra([],k,function(c){var e=[c[0],null].concat(c.slice(1)),l=c=a,k=f,h=e.length;2>h&&V("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var sa=null!==e[1]&&!1,da=!1,m=1;m<e.length;++m)if(null!==e[m]&&void 0===e[m].aa){da=!0;break}var ea="void"!==e[0].name,J="",L="";
for(m=0;m<h-2;++m)J+=(0!==m?", ":"")+"arg"+m,L+=(0!==m?", ":"")+"arg"+m+"Wired";l="return function "+Na(l)+"("+J+") {\nif (arguments.length !== "+(h-2)+") {\nthrowBindingError('function "+l+" called with ' + arguments.length + ' arguments, expected "+(h-2)+" args!');\n}\n";da&&(l+="var destructors = [];\n");var Xa=da?"destructors":"null";J="throwBindingError invoker fn runDestructors retType classParam".split(" ");k=[V,k,g,La,e[0],e[1]];sa&&(l+="var thisWired = classParam.toWireType("+Xa+", this);\n");
for(m=0;m<h-2;++m)l+="var arg"+m+"Wired = argType"+m+".toWireType("+Xa+", arg"+m+"); // "+e[m+2].name+"\n",J.push("argType"+m),k.push(e[m+2]);sa&&(L="thisWired"+(0<L.length?", ":"")+L);l+=(ea?"var rv = ":"")+"invoker(fn"+(0<L.length?", ":"")+L+");\n";if(da)l+="runDestructors(destructors);\n";else for(m=sa?1:2;m<e.length;++m)h=1===m?"thisWired":"arg"+(m-2)+"Wired",null!==e[m].aa&&(l+=h+"_dtor("+h+"); // "+e[m].name+"\n",J.push(h+"_dtor"),k.push(e[m].aa));ea&&(l+="var ret = retType.fromWireType(rv);\nreturn ret;\n");
J.push(l+"}\n");e=gb(J).apply(null,k);m=b-1;if(!d.hasOwnProperty(c))throw new Qa("Replacing nonexistant public symbol");void 0!==d[c].ba&&void 0!==m?d[c].ba[m]=e:(d[c]=e,d[c].ha=m);return[]})},c:function(a,b,c,e,f){function g(a){return a}b=U(b);-1===f&&(f=4294967295);var k=Sa(c);if(0===e){var h=32-8*c;g=function(a){return a<<h>>>h}}var p=-1!=b.indexOf("unsigned");T(a,{name:b,fromWireType:g,toWireType:function(a,c){if("number"!==typeof c&&"boolean"!==typeof c)throw new TypeError('Cannot convert "'+
eb(c)+'" to '+this.name);if(c<e||c>f)throw new TypeError('Passing a number "'+eb(c)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+e+", "+f+"]!");return p?c>>>0:c|0},argPackAdvance:8,readValueFromPointer:kb(b,k,0!==e),aa:null})},b:function(a,b,c){function e(a){a>>=2;var b=I;return new f(b.buffer,b[a+1],b[a])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=U(c);T(a,{name:c,fromWireType:e,argPackAdvance:8,
readValueFromPointer:e},{na:!0})},h:function(a,b){b=U(b);var c="std::string"===b;T(a,{name:b,fromWireType:function(a){var b=I[a>>2];if(c){var e=D[a+4+b],k=0;0!=e&&(k=e,D[a+4+b]=0);var h=a+4;for(e=0;e<=b;++e){var p=a+4+e;if(0==D[p]){h=h?na(D,h,void 0):"";if(void 0===l)var l=h;else l+=String.fromCharCode(0),l+=h;h=p+1}}0!=k&&(D[a+4+b]=k)}else{l=Array(b);for(e=0;e<b;++e)l[e]=String.fromCharCode(D[a+4+e]);l=l.join("")}X(a);return l},toWireType:function(a,b){b instanceof ArrayBuffer&&(b=new Uint8Array(b));
var e="string"===typeof b;e||b instanceof Uint8Array||b instanceof Uint8ClampedArray||b instanceof Int8Array||V("Cannot pass non-string to std::string");var f=(c&&e?function(){for(var a=0,c=0;c<b.length;++c){var e=b.charCodeAt(c);55296<=e&&57343>=e&&(e=65536+((e&1023)<<10)|b.charCodeAt(++c)&1023);127>=e?++a:a=2047>=e?a+2:65535>=e?a+3:a+4}return a}:function(){return b.length})(),h=ob(4+f+1);I[h>>2]=f;if(c&&e)oa(b,h+4,f+1);else if(e)for(e=0;e<f;++e){var p=b.charCodeAt(e);255<p&&(X(h),V("String has UTF-16 code units that do not fit in 8 bits"));
D[h+4+e]=p}else for(e=0;e<f;++e)D[h+4+e]=b[e];null!==a&&a.push(X,h);return h},argPackAdvance:8,readValueFromPointer:Q,aa:function(a){X(a)}})},C:function(a,b,c){c=U(c);if(2===b){var e=function(){return G};var f=1}else 4===b&&(e=function(){return I},f=2);T(a,{name:c,fromWireType:function(a){for(var b=e(),c=I[a>>2],g=Array(c),l=a+4>>f,w=0;w<c;++w)g[w]=String.fromCharCode(b[l+w]);X(a);return g.join("")},toWireType:function(a,c){var g=c.length,k=ob(4+g*b),l=e();I[k>>2]=g;for(var w=k+4>>f,B=0;B<g;++B)l[w+
B]=c.charCodeAt(B);null!==a&&a.push(X,k);return k},argPackAdvance:8,readValueFromPointer:Q,aa:function(a){X(a)}})},B:function(a,b,c,e,f,g){P[a]={name:U(b),oa:Y(c,e),pa:Y(f,g),fa:[]}},d:function(a,b,c,e,f,g,k,h,p,l){P[a].fa.push({ia:U(b),ma:c,ka:Y(e,f),la:g,ra:k,qa:Y(h,p),sa:l})},A:function(a,b){b=U(b);T(a,{va:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},z:Wa,y:function(a){4<a&&(W[a].ea+=1)},x:function(a,b){a=db(a,"_emval_take_value");a=a.readValueFromPointer(b);
return Ya(a)},__memory_base:1024,__table_base:0,f:function(){y()},w:lb,v:function(a,b,c){D.set(D.subarray(b,b+c),a)},u:function(a){if(2147418112<a)return!1;for(var b=Math.max(lb(),16777216);b<a;)536870912>=b?b=pa(2*b):b=Math.min(pa((3*b+2147483648)/4),2147418112);a:{try{C.grow(b-buffer.byteLength+65535>>16);ta(C.buffer);var c=1;break a}catch(e){}c=void 0}return c?!0:!1},t:function(a){return Math.log(a)/Math.LN10},a:y,memory:C,s:function(){},table:ka},qb=d.asm({},Fa,buffer);d.asm=qb;
var pb=d.__ZSt18uncaught_exceptionv=function(){return d.asm.D.apply(null,arguments)};d.___embind_register_native_and_builtin_types=function(){return d.asm.E.apply(null,arguments)};var cb=d.___getTypeName=function(){return d.asm.F.apply(null,arguments)},X=d._free=function(){return d.asm.G.apply(null,arguments)},ob=d._malloc=function(){return d.asm.H.apply(null,arguments)},Ga=d.globalCtors=function(){return d.asm.$.apply(null,arguments)};d.dynCall_diiii=function(){return d.asm.I.apply(null,arguments)};
d.dynCall_fii=function(){return d.asm.J.apply(null,arguments)};d.dynCall_i=function(){return d.asm.K.apply(null,arguments)};d.dynCall_ii=function(){return d.asm.L.apply(null,arguments)};d.dynCall_iidiiii=function(){return d.asm.M.apply(null,arguments)};d.dynCall_iii=function(){return d.asm.N.apply(null,arguments)};d.dynCall_iiii=function(){return d.asm.O.apply(null,arguments)};d.dynCall_iiiiii=function(){return d.asm.P.apply(null,arguments)};
d.dynCall_iiiiiii=function(){return d.asm.Q.apply(null,arguments)};d.dynCall_jiji=function(){return d.asm.R.apply(null,arguments)};d.dynCall_v=function(){return d.asm.S.apply(null,arguments)};d.dynCall_vi=function(){return d.asm.T.apply(null,arguments)};d.dynCall_vii=function(){return d.asm.U.apply(null,arguments)};d.dynCall_viif=function(){return d.asm.V.apply(null,arguments)};d.dynCall_viii=function(){return d.asm.W.apply(null,arguments)};d.dynCall_viiii=function(){return d.asm.X.apply(null,arguments)};
d.dynCall_viiiii=function(){return d.asm.Y.apply(null,arguments)};d.dynCall_viiiiii=function(){return d.asm.Z.apply(null,arguments)};d.dynCall_viiiiiiiii=function(){return d.asm._.apply(null,arguments)};d.asm=qb;var Z;d.then=function(a){if(Z)a(d);else{var b=d.onRuntimeInitialized;d.onRuntimeInitialized=function(){b&&b();a(d)}}return d};N=function rb(){Z||sb();Z||(N=rb)};
function sb(){function a(){if(!Z&&(Z=!0,!la)){K(wa);K(xa);if(d.onRuntimeInitialized)d.onRuntimeInitialized();if(d.postRun)for("function"==typeof d.postRun&&(d.postRun=[d.postRun]);d.postRun.length;){var a=d.postRun.shift();ya.unshift(a)}K(ya)}}if(!(0<M)){if(d.preRun)for("function"==typeof d.preRun&&(d.preRun=[d.preRun]);d.preRun.length;)za();K(va);0<M||(d.setStatus?(d.setStatus("Running..."),setTimeout(function(){setTimeout(function(){d.setStatus("")},1);a()},1)):a())}}d.run=sb;
if(d.preInit)for("function"==typeof d.preInit&&(d.preInit=[d.preInit]);0<d.preInit.length;)d.preInit.pop()();sb();
var c;c||(c=typeof webp_enc !== 'undefined' ? webp_enc : {});var u={},w;for(w in c)c.hasOwnProperty(w)&&(u[w]=c[w]);var x=!1,y=!1,aa=!1,ba=!1;x="object"===typeof window;y="function"===typeof importScripts;aa="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node;ba=!x&&!aa&&!y;var z="",B,C,ca,da;
if(aa)z=y?require("path").dirname(z)+"/":__dirname+"/",B=function(a,b){ca||(ca=require("fs"));da||(da=require("path"));a=da.normalize(a);return ca.readFileSync(a,b?null:"utf8")},C=function(a){a=B(a,!0);a.buffer||(a=new Uint8Array(a));a.buffer||D("Assertion failed: undefined");return a},1<process.argv.length&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),process.on("uncaughtException",function(a){throw a;}),process.on("unhandledRejection",D),c.inspect=function(){return"[Emscripten Module object]"};
else if(ba)"undefined"!=typeof read&&(B=function(a){return read(a)}),C=function(a){if("function"===typeof readbuffer)return new Uint8Array(readbuffer(a));a=read(a,"binary");"object"===typeof a||D("Assertion failed: undefined");return a},"undefined"!==typeof print&&("undefined"===typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!==typeof printErr?printErr:print);else if(x||y)y?z=self.location.href:document.currentScript&&(z=document.currentScript.src),_scriptDir&&
(z=_scriptDir),0!==z.indexOf("blob:")?z=z.substr(0,z.lastIndexOf("/")+1):z="",B=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},y&&(C=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)});var ea=c.print||console.log.bind(console),E=c.printErr||console.warn.bind(console);for(w in u)u.hasOwnProperty(w)&&(c[w]=u[w]);u=null;var F;c.wasmBinary&&(F=c.wasmBinary);var noExitRuntime;
c.noExitRuntime&&(noExitRuntime=c.noExitRuntime);"object"!==typeof WebAssembly&&E("no native wasm support detected");var G,fa=new WebAssembly.Table({initial:225,maximum:225,element:"anyfunc"}),ha=!1,ia="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;
function ja(a,b,d){var e=I;if(0<d){d=b+d-1;for(var f=0;f<a.length;++f){var g=a.charCodeAt(f);if(55296<=g&&57343>=g){var n=a.charCodeAt(++f);g=65536+((g&1023)<<10)|n&1023}if(127>=g){if(b>=d)break;e[b++]=g}else{if(2047>=g){if(b+1>=d)break;e[b++]=192|g>>6}else{if(65535>=g){if(b+2>=d)break;e[b++]=224|g>>12}else{if(b+3>=d)break;e[b++]=240|g>>18;e[b++]=128|g>>12&63}e[b++]=128|g>>6&63}e[b++]=128|g&63}}e[b]=0}}var ka="undefined"!==typeof TextDecoder?new TextDecoder("utf-16le"):void 0;
function la(a){var b;for(b=a>>1;J[b];)++b;b<<=1;if(32<b-a&&ka)return ka.decode(I.subarray(a,b));b=0;for(var d="";;){var e=J[a+2*b>>1];if(0==e)return d;++b;d+=String.fromCharCode(e)}}function ma(a,b,d){void 0===d&&(d=2147483647);if(2>d)return 0;d-=2;var e=b;d=d<2*a.length?d/2:a.length;for(var f=0;f<d;++f)J[b>>1]=a.charCodeAt(f),b+=2;J[b>>1]=0;return b-e}function na(a){return 2*a.length}
function oa(a){for(var b=0,d="";;){var e=K[a+4*b>>2];if(0==e)return d;++b;65536<=e?(e-=65536,d+=String.fromCharCode(55296|e>>10,56320|e&1023)):d+=String.fromCharCode(e)}}function pa(a,b,d){void 0===d&&(d=2147483647);if(4>d)return 0;var e=b;d=e+d-4;for(var f=0;f<a.length;++f){var g=a.charCodeAt(f);if(55296<=g&&57343>=g){var n=a.charCodeAt(++f);g=65536+((g&1023)<<10)|n&1023}K[b>>2]=g;b+=4;if(b+4>d)break}K[b>>2]=0;return b-e}
function qa(a){for(var b=0,d=0;d<a.length;++d){var e=a.charCodeAt(d);55296<=e&&57343>=e&&++d;b+=4}return b}var L,ra,I,J,sa,K,M,ta,ua;function va(a){L=a;c.HEAP8=ra=new Int8Array(a);c.HEAP16=J=new Int16Array(a);c.HEAP32=K=new Int32Array(a);c.HEAPU8=I=new Uint8Array(a);c.HEAPU16=sa=new Uint16Array(a);c.HEAPU32=M=new Uint32Array(a);c.HEAPF32=ta=new Float32Array(a);c.HEAPF64=ua=new Float64Array(a)}var wa=c.INITIAL_MEMORY||16777216;c.wasmMemory?G=c.wasmMemory:G=new WebAssembly.Memory({initial:wa/65536});
G&&(L=G.buffer);wa=L.byteLength;va(L);K[8784]=5278176;function xa(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b();else{var d=b.ha;"number"===typeof d?void 0===b.aa?c.dynCall_v(d):c.dynCall_vi(d,b.aa):d(void 0===b.aa?null:b.aa)}}}var ya=[],za=[],Aa=[],Ba=[];function Ca(){var a=c.preRun.shift();ya.unshift(a)}var N=0,Da=null,O=null;c.preloadedImages={};c.preloadedAudios={};
function D(a){if(c.onAbort)c.onAbort(a);ea(a);E(a);ha=!0;throw new WebAssembly.RuntimeError("abort("+a+"). Build with -s ASSERTIONS=1 for more info.");}function Ea(){var a=P;return String.prototype.startsWith?a.startsWith("data:application/octet-stream;base64,"):0===a.indexOf("data:application/octet-stream;base64,")}var P="webp_enc.wasm";if(!Ea()){var Fa=P;P=c.locateFile?c.locateFile(Fa,z):z+Fa}
function Ga(){try{if(F)return new Uint8Array(F);if(C)return C(P);throw"both async and sync fetching of the wasm failed";}catch(a){D(a)}}function Ha(){return F||!x&&!y||"function"!==typeof fetch?new Promise(function(a){a(Ga())}):fetch(P,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file at '"+P+"'";return a.arrayBuffer()}).catch(function(){return Ga()})}za.push({ha:function(){Ia()}});function Ja(){return 0<Ja.da}var Ka={};
function La(a){for(;a.length;){var b=a.pop();a.pop()(b)}}function Ma(a){return this.fromWireType(M[a>>2])}var Q={},R={},Na={};function Oa(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 Pa(a,b){a=Oa(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)}
function Qa(a){var b=Error,d=Pa(a,function(e){this.name=a;this.message=e;e=Error(e).stack;void 0!==e&&(this.stack=this.toString()+"\n"+e.replace(/^Error(:[^\n]*)?\n/,""))});d.prototype=Object.create(b.prototype);d.prototype.constructor=d;d.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return d}var Ra=void 0;
function Sa(a,b,d){function e(h){h=d(h);if(h.length!==a.length)throw new Ra("Mismatched type converter count");for(var k=0;k<a.length;++k)S(a[k],h[k])}a.forEach(function(h){Na[h]=b});var f=Array(b.length),g=[],n=0;b.forEach(function(h,k){R.hasOwnProperty(h)?f[k]=R[h]:(g.push(h),Q.hasOwnProperty(h)||(Q[h]=[]),Q[h].push(function(){f[k]=R[h];++n;n===g.length&&e(f)}))});0===g.length&&e(f)}
function Ta(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 Ua=void 0;function T(a){for(var b="";I[a];)b+=Ua[I[a++]];return b}var Va=void 0;function U(a){throw new Va(a);}
function S(a,b,d){d=d||{};if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var e=b.name;a||U('type "'+e+'" must have a positive integer typeid pointer');if(R.hasOwnProperty(a)){if(d.la)return;U("Cannot register type '"+e+"' twice")}R[a]=b;delete Na[a];Q.hasOwnProperty(a)&&(b=Q[a],delete Q[a],b.forEach(function(f){f()}))}var Wa=[],V=[{},{value:void 0},{value:null},{value:!0},{value:!1}];
function Xa(a){4<a&&0===--V[a].ba&&(V[a]=void 0,Wa.push(a))}function Ya(a){switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:var b=Wa.length?Wa.pop():V.length;V[b]={ba:1,value:a};return b}}
function Za(a,b){var d=c;if(void 0===d[a].$){var e=d[a];d[a]=function(){d[a].$.hasOwnProperty(arguments.length)||U("Function '"+b+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+d[a].$+")!");return d[a].$[arguments.length].apply(this,arguments)};d[a].$=[];d[a].$[e.fa]=e}}
function $a(a,b,d){c.hasOwnProperty(a)?((void 0===d||void 0!==c[a].$&&void 0!==c[a].$[d])&&U("Cannot register public name '"+a+"' twice"),Za(a,a),c.hasOwnProperty(d)&&U("Cannot register multiple overloads of a function with the same number of arguments ("+d+")!"),c[a].$[d]=b):(c[a]=b,void 0!==d&&(c[a].sa=d))}
function ab(a,b,d){switch(b){case 0:return function(e){return this.fromWireType((d?ra:I)[e])};case 1:return function(e){return this.fromWireType((d?J:sa)[e>>1])};case 2:return function(e){return this.fromWireType((d?K:M)[e>>2])};default:throw new TypeError("Unknown integer type: "+a);}}function bb(a){a=cb(a);var b=T(a);X(a);return b}function db(a,b){var d=R[a];void 0===d&&U(b+" has unknown type "+bb(a));return d}
function eb(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a}function fb(a,b){switch(b){case 2:return function(d){return this.fromWireType(ta[d>>2])};case 3:return function(d){return this.fromWireType(ua[d>>3])};default:throw new TypeError("Unknown float type: "+a);}}
function gb(a){var b=Function;if(!(b instanceof Function))throw new TypeError("new_ called with constructor type "+typeof b+" which is not a function");var d=Pa(b.name||"unknownFunctionName",function(){});d.prototype=b.prototype;d=new d;a=b.apply(d,a);return a instanceof Object?a:d}function hb(a,b){for(var d=[],e=0;e<a;e++)d.push(K[(b>>2)+e]);return d}
function Y(a,b){a=T(a);var d=c["dynCall_"+a];for(var e=[],f=1;f<a.length;++f)e.push("a"+f);f="return function dynCall_"+(a+"_"+b)+"("+e.join(", ")+") {\n";f+=" return dynCall(rawFunction"+(e.length?", ":"")+e.join(", ")+");\n";d=(new Function("dynCall","rawFunction",f+"};\n"))(d,b);"function"!==typeof d&&U("unknown function pointer with signature "+a+": "+b);return d}var ib=void 0;
function jb(a,b){function d(g){f[g]||R[g]||(Na[g]?Na[g].forEach(d):(e.push(g),f[g]=!0))}var e=[],f={};b.forEach(d);throw new ib(a+": "+e.map(bb).join([", "]));}function kb(a,b,d){switch(b){case 0:return d?function(e){return ra[e]}:function(e){return I[e]};case 1:return d?function(e){return J[e>>1]}:function(e){return sa[e>>1]};case 2:return d?function(e){return K[e>>2]}:function(e){return M[e>>2]};default:throw new TypeError("Unknown integer type: "+a);}}Ra=c.InternalError=Qa("InternalError");
for(var lb=Array(256),mb=0;256>mb;++mb)lb[mb]=String.fromCharCode(mb);Ua=lb;Va=c.BindingError=Qa("BindingError");c.count_emval_handles=function(){for(var a=0,b=5;b<V.length;++b)void 0!==V[b]&&++a;return a};c.get_first_emval=function(){for(var a=5;a<V.length;++a)if(void 0!==V[a])return V[a];return null};ib=c.UnboundTypeError=Qa("UnboundTypeError");
var ob={i:function(a){return nb(a)},h:function(a){"uncaught_exception"in Ja?Ja.da++:Ja.da=1;throw a;},k:function(a){var b=Ka[a];delete Ka[a];var d=b.ma,e=b.na,f=b.ea,g=f.map(function(n){return n.ka}).concat(f.map(function(n){return n.pa}));Sa([a],g,function(n){var h={};f.forEach(function(k,l){var m=n[l],p=k.ia,r=k.ja,v=n[l+f.length],q=k.oa,t=k.qa;h[k.ga]={read:function(A){return m.fromWireType(p(r,A))},write:function(A,H){var W=[];q(t,A,v.toWireType(W,H));La(W)}}});return[{name:b.name,fromWireType:function(k){var l=
{},m;for(m in h)l[m]=h[m].read(k);e(k);return l},toWireType:function(k,l){for(var m in h)if(!(m in l))throw new TypeError("Missing field");var p=d();for(m in h)h[m].write(p,l[m]);null!==k&&k.push(e,p);return p},argPackAdvance:8,readValueFromPointer:Ma,Z:e}]})},t:function(a,b,d,e,f){var g=Ta(d);b=T(b);S(a,{name:b,fromWireType:function(n){return!!n},toWireType:function(n,h){return h?e:f},argPackAdvance:8,readValueFromPointer:function(n){if(1===d)var h=ra;else if(2===d)h=J;else if(4===d)h=K;else throw new TypeError("Unknown boolean type size: "+
b);return this.fromWireType(h[n>>g])},Z:null})},s:function(a,b){b=T(b);S(a,{name:b,fromWireType:function(d){var e=V[d].value;Xa(d);return e},toWireType:function(d,e){return Ya(e)},argPackAdvance:8,readValueFromPointer:Ma,Z:null})},n:function(a,b,d,e){function f(){}d=Ta(d);b=T(b);f.values={};S(a,{name:b,constructor:f,fromWireType:function(g){return this.constructor.values[g]},toWireType:function(g,n){return n.value},argPackAdvance:8,readValueFromPointer:ab(b,d,e),Z:null});$a(b,f)},m:function(a,b,d){var e=
db(a,"enum");b=T(b);a=e.constructor;e=Object.create(e.constructor.prototype,{value:{value:d},constructor:{value:Pa(e.name+"_"+b,function(){})}});a.values[d]=e;a[b]=e},f:function(a,b,d){d=Ta(d);b=T(b);S(a,{name:b,fromWireType:function(e){return e},toWireType:function(e,f){if("number"!==typeof f&&"boolean"!==typeof f)throw new TypeError('Cannot convert "'+eb(f)+'" to '+this.name);return f},argPackAdvance:8,readValueFromPointer:fb(b,d),Z:null})},c:function(a,b,d,e,f,g){var n=hb(b,d);a=T(a);f=Y(e,f);
$a(a,function(){jb("Cannot call "+a+" due to unbound types",n)},b-1);Sa([],n,function(h){var k=[h[0],null].concat(h.slice(1)),l=h=a,m=f,p=k.length;2>p&&U("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var r=null!==k[1]&&!1,v=!1,q=1;q<k.length;++q)if(null!==k[q]&&void 0===k[q].Z){v=!0;break}var t="void"!==k[0].name,A="",H="";for(q=0;q<p-2;++q)A+=(0!==q?", ":"")+"arg"+q,H+=(0!==q?", ":"")+"arg"+q+"Wired";l="return function "+Oa(l)+"("+A+") {\nif (arguments.length !== "+
(p-2)+") {\nthrowBindingError('function "+l+" called with ' + arguments.length + ' arguments, expected "+(p-2)+" args!');\n}\n";v&&(l+="var destructors = [];\n");var W=v?"destructors":"null";A="throwBindingError invoker fn runDestructors retType classParam".split(" ");m=[U,m,g,La,k[0],k[1]];r&&(l+="var thisWired = classParam.toWireType("+W+", this);\n");for(q=0;q<p-2;++q)l+="var arg"+q+"Wired = argType"+q+".toWireType("+W+", arg"+q+"); // "+k[q+2].name+"\n",A.push("argType"+q),m.push(k[q+2]);r&&(H=
"thisWired"+(0<H.length?", ":"")+H);l+=(t?"var rv = ":"")+"invoker(fn"+(0<H.length?", ":"")+H+");\n";if(v)l+="runDestructors(destructors);\n";else for(q=r?1:2;q<k.length;++q)p=1===q?"thisWired":"arg"+(q-2)+"Wired",null!==k[q].Z&&(l+=p+"_dtor("+p+"); // "+k[q].name+"\n",A.push(p+"_dtor"),m.push(k[q].Z));t&&(l+="var ret = retType.fromWireType(rv);\nreturn ret;\n");A.push(l+"}\n");k=gb(A).apply(null,m);q=b-1;if(!c.hasOwnProperty(h))throw new Ra("Replacing nonexistant public symbol");void 0!==c[h].$&&
void 0!==q?c[h].$[q]=k:(c[h]=k,c[h].fa=q);return[]})},b:function(a,b,d,e,f){function g(l){return l}b=T(b);-1===f&&(f=4294967295);var n=Ta(d);if(0===e){var h=32-8*d;g=function(l){return l<<h>>>h}}var k=-1!=b.indexOf("unsigned");S(a,{name:b,fromWireType:g,toWireType:function(l,m){if("number"!==typeof m&&"boolean"!==typeof m)throw new TypeError('Cannot convert "'+eb(m)+'" to '+this.name);if(m<e||m>f)throw new TypeError('Passing a number "'+eb(m)+'" from JS side to C/C++ side to an argument of type "'+
b+'", which is outside the valid range ['+e+", "+f+"]!");return k?m>>>0:m|0},argPackAdvance:8,readValueFromPointer:kb(b,n,0!==e),Z:null})},a:function(a,b,d){function e(g){g>>=2;var n=M;return new f(L,n[g+1],n[g])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];d=T(d);S(a,{name:d,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{la:!0})},g:function(a,b){b=T(b);var d="std::string"===b;S(a,{name:b,fromWireType:function(e){var f=M[e>>2];if(d){var g=
I[e+4+f],n=0;0!=g&&(n=g,I[e+4+f]=0);var h=e+4;for(g=0;g<=f;++g){var k=e+4+g;if(0==I[k]){if(h){for(var l=I,m=h+NaN,p=h;l[p]&&!(p>=m);)++p;if(16<p-h&&l.subarray&&ia)h=ia.decode(l.subarray(h,p));else{for(m="";h<p;){var r=l[h++];if(r&128){var v=l[h++]&63;if(192==(r&224))m+=String.fromCharCode((r&31)<<6|v);else{var q=l[h++]&63;r=224==(r&240)?(r&15)<<12|v<<6|q:(r&7)<<18|v<<12|q<<6|l[h++]&63;65536>r?m+=String.fromCharCode(r):(r-=65536,m+=String.fromCharCode(55296|r>>10,56320|r&1023))}}else m+=String.fromCharCode(r)}h=
m}}else h="";if(void 0===t)var t=h;else t+=String.fromCharCode(0),t+=h;h=k+1}}0!=n&&(I[e+4+f]=n)}else{t=Array(f);for(g=0;g<f;++g)t[g]=String.fromCharCode(I[e+4+g]);t=t.join("")}X(e);return t},toWireType:function(e,f){f instanceof ArrayBuffer&&(f=new Uint8Array(f));var g="string"===typeof f;g||f instanceof Uint8Array||f instanceof Uint8ClampedArray||f instanceof Int8Array||U("Cannot pass non-string to std::string");var n=(d&&g?function(){for(var l=0,m=0;m<f.length;++m){var p=f.charCodeAt(m);55296<=
p&&57343>=p&&(p=65536+((p&1023)<<10)|f.charCodeAt(++m)&1023);127>=p?++l:l=2047>=p?l+2:65535>=p?l+3:l+4}return l}:function(){return f.length})(),h=nb(4+n+1);M[h>>2]=n;if(d&&g)ja(f,h+4,n+1);else if(g)for(g=0;g<n;++g){var k=f.charCodeAt(g);255<k&&(X(h),U("String has UTF-16 code units that do not fit in 8 bits"));I[h+4+g]=k}else for(g=0;g<n;++g)I[h+4+g]=f[g];null!==e&&e.push(X,h);return h},argPackAdvance:8,readValueFromPointer:Ma,Z:function(e){X(e)}})},e:function(a,b,d){d=T(d);if(2===b){var e=la;var f=
ma;var g=na;var n=function(){return sa};var h=1}else 4===b&&(e=oa,f=pa,g=qa,n=function(){return M},h=2);S(a,{name:d,fromWireType:function(k){var l=M[k>>2],m=n(),p=m[k+4+l*b>>h],r=0;0!=p&&(r=p,m[k+4+l*b>>h]=0);var v=k+4;for(p=0;p<=l;++p){var q=k+4+p*b;if(0==m[q>>h]){v=e(v);if(void 0===t)var t=v;else t+=String.fromCharCode(0),t+=v;v=q+b}}0!=r&&(m[k+4+l*b>>h]=r);X(k);return t},toWireType:function(k,l){"string"!==typeof l&&U("Cannot pass non-string to C++ string type "+d);var m=g(l),p=nb(4+m+b);M[p>>
2]=m>>h;f(l,p+4,m+b);null!==k&&k.push(X,p);return p},argPackAdvance:8,readValueFromPointer:Ma,Z:function(k){X(k)}})},l:function(a,b,d,e,f,g){Ka[a]={name:T(b),ma:Y(d,e),na:Y(f,g),ea:[]}},d:function(a,b,d,e,f,g,n,h,k,l){Ka[a].ea.push({ga:T(b),ka:d,ia:Y(e,f),ja:g,pa:n,oa:Y(h,k),qa:l})},u:function(a,b){b=T(b);S(a,{ra:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},w:Xa,j:function(a){4<a&&(V[a].ba+=1)},r:function(a,b){a=db(a,"_emval_take_value");a=a.readValueFromPointer(b);
return Ya(a)},v:function(){D()},p:function(a,b,d){I.copyWithin(a,b,b+d)},q:function(a){var b=I.length;if(2147418112<a)return!1;for(var d=1;4>=d;d*=2){var e=b*(1+.2/d);e=Math.min(e,a+100663296);e=Math.max(16777216,a,e);0<e%65536&&(e+=65536-e%65536);a:{try{G.grow(Math.min(2147418112,e)-L.byteLength+65535>>16);va(G.buffer);var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},memory:G,o:function(){},table:fa},pb=function(){function a(f){c.asm=f.exports;N--;c.monitorRunDependencies&&c.monitorRunDependencies(N);
0==N&&(null!==Da&&(clearInterval(Da),Da=null),O&&(f=O,O=null,f()))}function b(f){a(f.instance)}function d(f){return Ha().then(function(g){return WebAssembly.instantiate(g,e)}).then(f,function(g){E("failed to asynchronously prepare wasm: "+g);D(g)})}var e={a:ob};N++;c.monitorRunDependencies&&c.monitorRunDependencies(N);if(c.instantiateWasm)try{return c.instantiateWasm(e,a)}catch(f){return E("Module.instantiateWasm callback failed with error: "+f),!1}(function(){if(F||"function"!==typeof WebAssembly.instantiateStreaming||
Ea()||"function"!==typeof fetch)return d(b);fetch(P,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,e).then(b,function(g){E("wasm streaming compile failed: "+g);E("falling back to ArrayBuffer instantiation");d(b)})})})();return{}}();c.asm=pb;
var Ia=c.___wasm_call_ctors=function(){return(Ia=c.___wasm_call_ctors=c.asm.x).apply(null,arguments)},nb=c._malloc=function(){return(nb=c._malloc=c.asm.y).apply(null,arguments)},X=c._free=function(){return(X=c._free=c.asm.z).apply(null,arguments)},cb=c.___getTypeName=function(){return(cb=c.___getTypeName=c.asm.A).apply(null,arguments)};c.___embind_register_native_and_builtin_types=function(){return(c.___embind_register_native_and_builtin_types=c.asm.B).apply(null,arguments)};
c.dynCall_iiii=function(){return(c.dynCall_iiii=c.asm.C).apply(null,arguments)};c.dynCall_ii=function(){return(c.dynCall_ii=c.asm.D).apply(null,arguments)};c.dynCall_i=function(){return(c.dynCall_i=c.asm.E).apply(null,arguments)};c.dynCall_viiiii=function(){return(c.dynCall_viiiii=c.asm.F).apply(null,arguments)};c.dynCall_v=function(){return(c.dynCall_v=c.asm.G).apply(null,arguments)};c.dynCall_vi=function(){return(c.dynCall_vi=c.asm.H).apply(null,arguments)};
c.dynCall_iii=function(){return(c.dynCall_iii=c.asm.I).apply(null,arguments)};c.dynCall_viii=function(){return(c.dynCall_viii=c.asm.J).apply(null,arguments)};c.dynCall_fii=function(){return(c.dynCall_fii=c.asm.K).apply(null,arguments)};c.dynCall_viif=function(){return(c.dynCall_viif=c.asm.L).apply(null,arguments)};c.dynCall_iiiiii=function(){return(c.dynCall_iiiiii=c.asm.M).apply(null,arguments)};c.dynCall_viiii=function(){return(c.dynCall_viiii=c.asm.N).apply(null,arguments)};
c.dynCall_viiiiii=function(){return(c.dynCall_viiiiii=c.asm.O).apply(null,arguments)};c.dynCall_iiiiiii=function(){return(c.dynCall_iiiiiii=c.asm.P).apply(null,arguments)};c.dynCall_viiiiiiiii=function(){return(c.dynCall_viiiiiiiii=c.asm.Q).apply(null,arguments)};c.dynCall_jiiii=function(){return(c.dynCall_jiiii=c.asm.R).apply(null,arguments)};c.dynCall_diiii=function(){return(c.dynCall_diiii=c.asm.S).apply(null,arguments)};
c.dynCall_diiiiiiii=function(){return(c.dynCall_diiiiiiii=c.asm.T).apply(null,arguments)};c.dynCall_vii=function(){return(c.dynCall_vii=c.asm.U).apply(null,arguments)};c.dynCall_viiiiiii=function(){return(c.dynCall_viiiiiii=c.asm.V).apply(null,arguments)};c.dynCall_fi=function(){return(c.dynCall_fi=c.asm.W).apply(null,arguments)};c.dynCall_dii=function(){return(c.dynCall_dii=c.asm.X).apply(null,arguments)};c.dynCall_diii=function(){return(c.dynCall_diii=c.asm.Y).apply(null,arguments)};c.asm=pb;var Z;
c.then=function(a){if(Z)a(c);else{var b=c.onRuntimeInitialized;c.onRuntimeInitialized=function(){b&&b();a(c)}}return c};O=function qb(){Z||rb();Z||(O=qb)};
function rb(){function a(){if(!Z&&(Z=!0,c.calledRun=!0,!ha)){xa(za);xa(Aa);if(c.onRuntimeInitialized)c.onRuntimeInitialized();if(c.postRun)for("function"==typeof c.postRun&&(c.postRun=[c.postRun]);c.postRun.length;){var b=c.postRun.shift();Ba.unshift(b)}xa(Ba)}}if(!(0<N)){if(c.preRun)for("function"==typeof c.preRun&&(c.preRun=[c.preRun]);c.preRun.length;)Ca();xa(ya);0<N||(c.setStatus?(c.setStatus("Running..."),setTimeout(function(){setTimeout(function(){c.setStatus("")},1);a()},1)):a())}}c.run=rb;
if(c.preInit)for("function"==typeof c.preInit&&(c.preInit=[c.preInit]);0<c.preInit.length;)c.preInit.pop()();noExitRuntime=!0;rb();
return webp_enc

Binary file not shown.