var imagequant = (function() { var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; return ( function(imagequant) { imagequant = imagequant || {}; var c;c||(c=typeof imagequant !== 'undefined' ? imagequant : {});var r={},t;for(t in c)c.hasOwnProperty(t)&&(r[t]=c[t]);var u=!1,v=!1,aa=!1,ba=!1;u="object"===typeof window;v="function"===typeof importScripts;aa="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node;ba=!u&&!aa&&!v;var w="",x,z,ca,da; if(aa)w=v?require("path").dirname(w)+"/":__dirname+"/",x=function(a,b){ca||(ca=require("fs"));da||(da=require("path"));a=da.normalize(a);return ca.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=e);)++d;if(16f?e+=String.fromCharCode(f):(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else e+=String.fromCharCode(f)}return e} function ka(a,b,d){var e=E;if(0=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 la="undefined"!==typeof TextDecoder?new TextDecoder("utf-16le"):void 0; function ma(a){var b;for(b=a>>1;F[b];)++b;b<<=1;if(32>1];if(0==e)return d;++b;d+=String.fromCharCode(e)}}function na(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>1]=a.charCodeAt(f),b+=2;F[b>>1]=0;return b-e}function oa(a){return 2*a.length} function pa(a){for(var b=0,d="";;){var e=G[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 qa(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=g){var m=a.charCodeAt(++f);g=65536+((g&1023)<<10)|m&1023}G[b>>2]=g;b+=4;if(b+4>d)break}G[b>>2]=0;return b-e} function ra(a){for(var b=0,d=0;d=e&&++d;b+=4}return b}var H,sa,E,F,ta,G,I,ua,va;function wa(a){H=a;c.HEAP8=sa=new Int8Array(a);c.HEAP16=F=new Int16Array(a);c.HEAP32=G=new Int32Array(a);c.HEAPU8=E=new Uint8Array(a);c.HEAPU16=ta=new Uint16Array(a);c.HEAPU32=I=new Uint32Array(a);c.HEAPF32=ua=new Float32Array(a);c.HEAPF64=va=new Float64Array(a)}var xa=c.INITIAL_MEMORY||16777216;c.wasmMemory?D=c.wasmMemory:D=new WebAssembly.Memory({initial:xa/65536}); D&&(H=D.buffer);xa=H.byteLength;wa(H);G[1468]=5248912;function J(a){for(;0=b?"_"+a:a} function Na(a,b){a=Ma(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)}function Oa(a){var b=Error,d=Na(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 Pa=void 0;function V(a){throw new Pa(a);}var Qa=void 0;function Ra(a,b){function d(h){h=b(h);if(h.length!==e.length)throw new Qa("Mismatched type converter count");for(var k=0;k>2])}function Xa(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a} function Ya(a,b){switch(b){case 2:return function(d){return this.fromWireType(ua[d>>2])};case 3:return function(d){return this.fromWireType(va[d>>3])};default:throw new TypeError("Unknown float type: "+a);}}function Za(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=Na(b.name||"unknownFunctionName",function(){});d.prototype=b.prototype;d=new d;a=b.apply(d,a);return a instanceof Object?a:d} function $a(a){for(;a.length;){var b=a.pop();a.pop()(b)}}function ab(a,b){var d=c;if(void 0===d[a].R){var e=d[a];d[a]=function(){d[a].R.hasOwnProperty(arguments.length)||V("Function '"+b+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+d[a].R+")!");return d[a].R[arguments.length].apply(this,arguments)};d[a].R=[];d[a].R[e.W]=e}} function bb(a,b,d){c.hasOwnProperty(a)?((void 0===d||void 0!==c[a].R&&void 0!==c[a].R[d])&&V("Cannot register public name '"+a+"' twice"),ab(a,a),c.hasOwnProperty(d)&&V("Cannot register multiple overloads of a function with the same number of arguments ("+d+")!"),c[a].R[d]=b):(c[a]=b,void 0!==d&&(c[a].$=d))}function cb(a,b){for(var d=[],e=0;e>2)+e]);return d} function db(a,b){a=S(a);var d=c["dynCall_"+a];for(var e=[],f=1;f>1]}:function(e){return ta[e>>1]};case 2:return d?function(e){return G[e>>2]}:function(e){return I[e>>2]};default:throw new TypeError("Unknown integer type: "+a);}}var jb={}; function kb(){return"object"===typeof globalThis?globalThis:Function("return this")()}function lb(a,b){var d=U[a];void 0===d&&V(b+" has unknown type "+fb(a));return d}for(var mb={},nb=[null,[],[]],ob=Array(256),pb=0;256>pb;++pb)ob[pb]=String.fromCharCode(pb);Ka=ob;Pa=c.BindingError=Oa("BindingError");Qa=c.InternalError=Oa("InternalError");c.count_emval_handles=function(){for(var a=0,b=5;b>g])},S:null})},r:function(a,b){b=S(b);W(a,{name:b,fromWireType:function(d){var e=X[d].value; Ta(d);return e},toWireType:function(d,e){return Va(e)},argPackAdvance:8,readValueFromPointer:Wa,S:null})},g:function(a,b,d){d=Ja(d);b=S(b);W(a,{name:b,fromWireType:function(e){return e},toWireType:function(e,f){if("number"!==typeof f&&"boolean"!==typeof f)throw new TypeError('Cannot convert "'+Xa(f)+'" to '+this.name);return f},argPackAdvance:8,readValueFromPointer:Ya(b,d),S:null})},d:function(a,b,d,e,f,g){var m=cb(b,d);a=S(a);f=db(e,f);bb(a,function(){hb("Cannot call "+a+" due to unbound types", m)},b-1);Ra(m,function(h){var k=[h[0],null].concat(h.slice(1)),l=h=a,p=f,q=k.length;2>q&&V("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var K=null!==k[1]&&!1,y=!1,n=1;n>>h}}var k=-1!=b.indexOf("unsigned");W(a,{name:b,fromWireType:g,toWireType:function(l,p){if("number"!==typeof p&&"boolean"!==typeof p)throw new TypeError('Cannot convert "'+Xa(p)+'" to '+this.name);if(pf)throw new TypeError('Passing a number "'+Xa(p)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+e+", "+f+"]!");return k?p>>>0:p|0},argPackAdvance:8,readValueFromPointer:ib(b, m,0!==e),S:null})},a:function(a,b,d){function e(g){g>>=2;var m=I;return new f(H,m[g+1],m[g])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];d=S(d);W(a,{name:d,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{Y:!0})},h:function(a,b){b=S(b);var d="std::string"===b;W(a,{name:b,fromWireType:function(e){var f=I[e>>2];if(d){var g=E[e+4+f],m=0;0!=g&&(m=g,E[e+4+f]=0);var h=e+4;for(g=0;g<=f;++g){var k=e+4+g;if(0==E[k]){h=h?ja(E,h,void 0):""; if(void 0===l)var l=h;else l+=String.fromCharCode(0),l+=h;h=k+1}}0!=m&&(E[e+4+f]=m)}else{l=Array(f);for(g=0;g=q&& (q=65536+((q&1023)<<10)|f.charCodeAt(++p)&1023);127>=q?++l:l=2047>=q?l+2:65535>=q?l+3:l+4}return l}:function(){return f.length})(),h=qb(4+m+1);I[h>>2]=m;if(d&&g)ka(f,h+4,m+1);else if(g)for(g=0;g>2],p=m(),q=p[k+4+l*b>>h],K=0;0!=q&&(K=q,p[k+4+l*b>>h]=0);var y=k+4;for(q=0;q<=l;++q){var n=k+4+q*b;if(0==p[n>>h]){y=e(y);if(void 0===L)var L=y;else L+=String.fromCharCode(0),L+=y;y=n+b}}0!=K&&(p[k+4+l*b>>h]=K);Y(k);return L},toWireType:function(k,l){"string"!==typeof l&&V("Cannot pass non-string to C++ string type "+d);var p=g(l),q=qb(4+p+b);I[q>>2]=p>>h;f(l, q+4,p+b);null!==k&&k.push(Y,q);return q},argPackAdvance:8,readValueFromPointer:Wa,S:function(k){Y(k)}})},t:function(a,b){b=S(b);W(a,{Z:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},u:Ta,v:function(a){if(0===a)return Va(kb());var b=jb[a];a=void 0===b?S(a):b;return Va(kb()[a])},k:function(a){4> 2) + "+g+'], "parameter '+g+'");\nvar arg'+g+" = argType"+g+".readValueFromPointer(args);\nargs += argType"+g+"['argPackAdvance'];\n";f=(new Function("requireRegisteredType","Module","__emval_register",m+("var obj = new constructor("+f+");\nreturn __emval_register(obj);\n}\n")))(lb,c,Va);mb[b]=f}return f(a,d,e)},j:function(){A()},q:function(a,b,d){E.copyWithin(a,b,b+d)}, c:function(a){var b=E.length;if(2147418112=d;d*=2){var e=b*(1+.2/d);e=Math.min(e,a+100663296);e=Math.max(16777216,a,e);0>16);wa(D.buffer);var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},i:function(){return 0},n:function(){},f:function(a,b,d,e){for(var f=0,g=0;g>2],h=G[b+(8*g+4)>>2],k=0;k>2]=f;return 0},memory:D,o:function(){},table:fa},sb=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){B("failed to asynchronously prepare wasm: "+g);A(g)})}var e={a:rb};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||Ea()||"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=sb; var Ia=c.___wasm_call_ctors=function(){return(Ia=c.___wasm_call_ctors=c.asm.w).apply(null,arguments)},qb=c._malloc=function(){return(qb=c._malloc=c.asm.x).apply(null,arguments)},Y=c._free=function(){return(Y=c._free=c.asm.y).apply(null,arguments)},gb=c.___getTypeName=function(){return(gb=c.___getTypeName=c.asm.z).apply(null,arguments)};c.___embind_register_native_and_builtin_types=function(){return(c.___embind_register_native_and_builtin_types=c.asm.A).apply(null,arguments)}; c.dynCall_vi=function(){return(c.dynCall_vi=c.asm.B).apply(null,arguments)};c.dynCall_iiiiiif=function(){return(c.dynCall_iiiiiif=c.asm.C).apply(null,arguments)};c.dynCall_viiiiif=function(){return(c.dynCall_viiiiif=c.asm.D).apply(null,arguments)};c.dynCall_iiiiif=function(){return(c.dynCall_iiiiif=c.asm.E).apply(null,arguments)};c.dynCall_viiiif=function(){return(c.dynCall_viiiif=c.asm.F).apply(null,arguments)};c.dynCall_ii=function(){return(c.dynCall_ii=c.asm.G).apply(null,arguments)}; c.dynCall_i=function(){return(c.dynCall_i=c.asm.H).apply(null,arguments)};c.dynCall_iii=function(){return(c.dynCall_iii=c.asm.I).apply(null,arguments)};c.dynCall_vif=function(){return(c.dynCall_vif=c.asm.J).apply(null,arguments)};c.dynCall_iidiiii=function(){return(c.dynCall_iidiiii=c.asm.K).apply(null,arguments)};c.dynCall_vii=function(){return(c.dynCall_vii=c.asm.L).apply(null,arguments)};c.dynCall_iiii=function(){return(c.dynCall_iiii=c.asm.M).apply(null,arguments)}; c.dynCall_jiji=function(){return(c.dynCall_jiji=c.asm.N).apply(null,arguments)};c.dynCall_viiiiii=function(){return(c.dynCall_viiiiii=c.asm.O).apply(null,arguments)};c.dynCall_viiiii=function(){return(c.dynCall_viiiii=c.asm.P).apply(null,arguments)};c.dynCall_viiii=function(){return(c.dynCall_viiii=c.asm.Q).apply(null,arguments)};c.asm=sb;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 tb(){Z||ub();Z||(O=tb)}; function ub(){function a(){if(!Z&&(Z=!0,c.calledRun=!0,!ha)){J(za);J(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)}J(Ba)}}if(!(0