text: /* eslint-disable */
  var WebSketch = (function() {
      var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
      if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;
      return (
    function(WebSketch) {
      WebSketch = WebSketch || {};
    
    
    var c;c||(c=typeof WebSketch !== 'undefined' ? WebSketch : {});var aa,ba;c.ready=new Promise(function(a,b){aa=a;ba=b});Object.getOwnPropertyDescriptor(c.ready,"_malloc")||(Object.defineProperty(c.ready,"_malloc",{configurable:!0,get:function(){e("You are getting _malloc on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(c.ready,"_malloc",{configurable:!0,set:function(){e("You are setting _malloc on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));
    Object.getOwnPropertyDescriptor(c.ready,"_stackSave")||(Object.defineProperty(c.ready,"_stackSave",{configurable:!0,get:function(){e("You are getting _stackSave on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(c.ready,"_stackSave",{configurable:!0,set:function(){e("You are setting _stackSave on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));
    Object.getOwnPropertyDescriptor(c.ready,"_stackRestore")||(Object.defineProperty(c.ready,"_stackRestore",{configurable:!0,get:function(){e("You are getting _stackRestore on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(c.ready,"_stackRestore",{configurable:!0,set:function(){e("You are setting _stackRestore on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));
    Object.getOwnPropertyDescriptor(c.ready,"_stackAlloc")||(Object.defineProperty(c.ready,"_stackAlloc",{configurable:!0,get:function(){e("You are getting _stackAlloc on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(c.ready,"_stackAlloc",{configurable:!0,set:function(){e("You are setting _stackAlloc on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));
    Object.getOwnPropertyDescriptor(c.ready,"___data_end")||(Object.defineProperty(c.ready,"___data_end",{configurable:!0,get:function(){e("You are getting ___data_end on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(c.ready,"___data_end",{configurable:!0,set:function(){e("You are setting ___data_end on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));
    Object.getOwnPropertyDescriptor(c.ready,"___wasm_call_ctors")||(Object.defineProperty(c.ready,"___wasm_call_ctors",{configurable:!0,get:function(){e("You are getting ___wasm_call_ctors on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(c.ready,"___wasm_call_ctors",{configurable:!0,set:function(){e("You are setting ___wasm_call_ctors on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));
    Object.getOwnPropertyDescriptor(c.ready,"_fflush")||(Object.defineProperty(c.ready,"_fflush",{configurable:!0,get:function(){e("You are getting _fflush on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(c.ready,"_fflush",{configurable:!0,set:function(){e("You are setting _fflush on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));
    Object.getOwnPropertyDescriptor(c.ready,"___errno_location")||(Object.defineProperty(c.ready,"___errno_location",{configurable:!0,get:function(){e("You are getting ___errno_location on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(c.ready,"___errno_location",{configurable:!0,set:function(){e("You are setting ___errno_location on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));
    Object.getOwnPropertyDescriptor(c.ready,"_free")||(Object.defineProperty(c.ready,"_free",{configurable:!0,get:function(){e("You are getting _free on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(c.ready,"_free",{configurable:!0,set:function(){e("You are setting _free on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));
    Object.getOwnPropertyDescriptor(c.ready,"onRuntimeInitialized")||(Object.defineProperty(c.ready,"onRuntimeInitialized",{configurable:!0,get:function(){e("You are getting onRuntimeInitialized on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}),Object.defineProperty(c.ready,"onRuntimeInitialized",{configurable:!0,set:function(){e("You are setting onRuntimeInitialized on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}}));
    var ca={},h;for(h in c)c.hasOwnProperty(h)&&(ca[h]=c[h]);var da=!1,t=!1,v=!1,ea=!1;da="object"===typeof window;t="function"===typeof importScripts;v="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node;ea=!da&&!v&&!t;if(c.ENVIRONMENT)throw Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)");var y="",fa,ha,ia,ja;
    if(v)y=t?require("path").dirname(y)+"/":__dirname+"/",fa=function(a,b){ia||(ia=require("fs"));ja||(ja=require("path"));a=ja.normalize(a);return ia.readFileSync(a,b?null:"utf8")},ha=function(a){a=fa(a,!0);a.buffer||(a=new Uint8Array(a));assert(a.buffer);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",e),c.inspect=function(){return"[Emscripten Module object]"};else if(ea)"undefined"!=
    typeof read&&(fa=function(a){return read(a)}),ha=function(a){if("function"===typeof readbuffer)return new Uint8Array(readbuffer(a));a=read(a,"binary");assert("object"===typeof a);return a},"undefined"!==typeof print&&("undefined"===typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!==typeof printErr?printErr:print);else if(da||t)t?y=self.location.href:document.currentScript&&(y=document.currentScript.src),_scriptDir&&(y=_scriptDir),0!==y.indexOf("blob:")?y=y.substr(0,
    y.lastIndexOf("/")+1):y="",fa=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},t&&(ha=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)});else throw Error("environment detection error");var ka=c.print||console.log.bind(console),z=c.printErr||console.warn.bind(console);for(h in ca)ca.hasOwnProperty(h)&&(c[h]=ca[h]);ca=null;
    Object.getOwnPropertyDescriptor(c,"arguments")||Object.defineProperty(c,"arguments",{configurable:!0,get:function(){e("Module.arguments has been replaced with plain arguments_ (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}});Object.getOwnPropertyDescriptor(c,"thisProgram")||Object.defineProperty(c,"thisProgram",{configurable:!0,get:function(){e("Module.thisProgram has been replaced with plain thisProgram (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}});
    Object.getOwnPropertyDescriptor(c,"quit")||Object.defineProperty(c,"quit",{configurable:!0,get:function(){e("Module.quit has been replaced with plain quit_ (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}});assert("undefined"===typeof c.memoryInitializerPrefixURL,"Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");assert("undefined"===typeof c.pthreadMainPrefixURL,"Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");
    assert("undefined"===typeof c.cdInitializerPrefixURL,"Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");assert("undefined"===typeof c.filePackagePrefixURL,"Module.filePackagePrefixURL option was removed, use Module.locateFile instead");assert("undefined"===typeof c.read,"Module.read option was removed (modify read_ in JS)");assert("undefined"===typeof c.readAsync,"Module.readAsync option was removed (modify readAsync in JS)");
    assert("undefined"===typeof c.readBinary,"Module.readBinary option was removed (modify readBinary in JS)");assert("undefined"===typeof c.setWindowTitle,"Module.setWindowTitle option was removed (modify setWindowTitle in JS)");assert("undefined"===typeof c.TOTAL_MEMORY,"Module.TOTAL_MEMORY has been renamed Module.INITIAL_MEMORY");Object.getOwnPropertyDescriptor(c,"read")||Object.defineProperty(c,"read",{configurable:!0,get:function(){e("Module.read has been replaced with plain read_ (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}});
    Object.getOwnPropertyDescriptor(c,"readAsync")||Object.defineProperty(c,"readAsync",{configurable:!0,get:function(){e("Module.readAsync has been replaced with plain readAsync (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}});Object.getOwnPropertyDescriptor(c,"readBinary")||Object.defineProperty(c,"readBinary",{configurable:!0,get:function(){e("Module.readBinary has been replaced with plain readBinary (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}});
    Object.getOwnPropertyDescriptor(c,"setWindowTitle")||Object.defineProperty(c,"setWindowTitle",{configurable:!0,get:function(){e("Module.setWindowTitle has been replaced with plain setWindowTitle (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}});function la(a){ma||(ma={});ma[a]||(ma[a]=1,z(a))}var ma,na;c.wasmBinary&&(na=c.wasmBinary);
    Object.getOwnPropertyDescriptor(c,"wasmBinary")||Object.defineProperty(c,"wasmBinary",{configurable:!0,get:function(){e("Module.wasmBinary has been replaced with plain wasmBinary (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}});var noExitRuntime;c.noExitRuntime&&(noExitRuntime=c.noExitRuntime);Object.getOwnPropertyDescriptor(c,"noExitRuntime")||Object.defineProperty(c,"noExitRuntime",{configurable:!0,get:function(){e("Module.noExitRuntime has been replaced with plain noExitRuntime (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}});
    "object"!==typeof WebAssembly&&e("no native wasm support detected");var B,oa=new WebAssembly.Table({initial:39,maximum:39,element:"anyfunc"}),pa=!1;function assert(a,b){a||e("Assertion failed: "+b)}var qa="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;
    function C(a,b,d){var f=b+d;for(d=b;a[d]&&!(d>=f);)++d;if(16<d-b&&a.subarray&&qa)return qa.decode(a.subarray(b,d));for(f="";b<d;){var g=a[b++];if(g&128){var k=a[b++]&63;if(192==(g&224))f+=String.fromCharCode((g&31)<<6|k);else{var l=a[b++]&63;224==(g&240)?g=(g&15)<<12|k<<6|l:(240!=(g&248)&&la("Invalid UTF-8 leading byte 0x"+g.toString(16)+" encountered when deserializing a UTF-8 string on the asm.js/wasm heap to a JS string!"),g=(g&7)<<18|k<<12|l<<6|a[b++]&63);65536>g?f+=String.fromCharCode(g):(g-=
    65536,f+=String.fromCharCode(55296|g>>10,56320|g&1023))}}else f+=String.fromCharCode(g)}return f}
    function ra(a,b,d,f){if(!(0<f))return 0;var g=d;f=d+f-1;for(var k=0;k<a.length;++k){var l=a.charCodeAt(k);if(55296<=l&&57343>=l){var m=a.charCodeAt(++k);l=65536+((l&1023)<<10)|m&1023}if(127>=l){if(d>=f)break;b[d++]=l}else{if(2047>=l){if(d+1>=f)break;b[d++]=192|l>>6}else{if(65535>=l){if(d+2>=f)break;b[d++]=224|l>>12}else{if(d+3>=f)break;2097152<=l&&la("Invalid Unicode code point 0x"+l.toString(16)+" encountered when serializing a JS string to an UTF-8 string on the asm.js/wasm heap! (Valid unicode code points should be in range 0-0x1FFFFF).");b[d++]=
    240|l>>18;b[d++]=128|l>>12&63}b[d++]=128|l>>6&63}b[d++]=128|l&63}}b[d]=0;return d-g}function sa(a,b,d){assert("number"==typeof d,"stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");ra(a,D,b,d)}function ta(a){for(var b=0,d=0;d<a.length;++d){var f=a.charCodeAt(d);55296<=f&&57343>=f&&(f=65536+((f&1023)<<10)|a.charCodeAt(++d)&1023);127>=f?++b:b=2047>=f?b+2:65535>=f?b+3:b+4}return b}
    var ua="undefined"!==typeof TextDecoder?new TextDecoder("utf-16le"):void 0;function va(a,b){assert(0==a%2,"Pointer passed to UTF16ToString must be aligned to two bytes!");var d=a>>1;for(var f=d+b/2;!(d>=f)&&wa[d];)++d;d<<=1;if(32<d-a&&ua)return ua.decode(D.subarray(a,d));d=0;for(f="";;){var g=xa[a+2*d>>1];if(0==g||d==b/2)return f;++d;f+=String.fromCharCode(g)}}
    function za(a,b,d){assert(0==b%2,"Pointer passed to stringToUTF16 must be aligned to two bytes!");assert("number"==typeof d,"stringToUTF16(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");void 0===d&&(d=2147483647);if(2>d)return 0;d-=2;var f=b;d=d<2*a.length?d/2:a.length;for(var g=0;g<d;++g)xa[b>>1]=a.charCodeAt(g),b+=2;xa[b>>1]=0;return b-f}function Aa(a){return 2*a.length}
    function Ba(a,b){assert(0==a%4,"Pointer passed to UTF32ToString must be aligned to four bytes!");for(var d=0,f="";!(d>=b/4);){var g=E[a+4*d>>2];if(0==g)break;++d;65536<=g?(g-=65536,f+=String.fromCharCode(55296|g>>10,56320|g&1023)):f+=String.fromCharCode(g)}return f}
    function Ca(a,b,d){assert(0==b%4,"Pointer passed to stringToUTF32 must be aligned to four bytes!");assert("number"==typeof d,"stringToUTF32(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");void 0===d&&(d=2147483647);if(4>d)return 0;var f=b;d=f+d-4;for(var g=0;g<a.length;++g){var k=a.charCodeAt(g);if(55296<=k&&57343>=k){var l=a.charCodeAt(++g);k=65536+((k&1023)<<10)|l&1023}E[b>>2]=k;b+=4;if(b+4>d)break}E[b>>2]=0;return b-f}
    function Da(a){for(var b=0,d=0;d<a.length;++d){var f=a.charCodeAt(d);55296<=f&&57343>=f&&++d;b+=4}return b}var I,J,D,xa,wa,E,K,Ea,Fa;function Ga(a){I=a;c.HEAP8=J=new Int8Array(a);c.HEAP16=xa=new Int16Array(a);c.HEAP32=E=new Int32Array(a);c.HEAPU8=D=new Uint8Array(a);c.HEAPU16=wa=new Uint16Array(a);c.HEAPU32=K=new Uint32Array(a);c.HEAPF32=Ea=new Float32Array(a);c.HEAPF64=Fa=new Float64Array(a)}assert(!0,"stack must start aligned");assert(!0,"heap must start aligned");
    c.TOTAL_STACK&&assert(5242880===c.TOTAL_STACK,"the stack size can no longer be determined at runtime");var Ha=c.INITIAL_MEMORY||16777216;Object.getOwnPropertyDescriptor(c,"INITIAL_MEMORY")||Object.defineProperty(c,"INITIAL_MEMORY",{configurable:!0,get:function(){e("Module.INITIAL_MEMORY has been replaced with plain INITIAL_INITIAL_MEMORY (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}});
    assert(5242880<=Ha,"INITIAL_MEMORY should be larger than TOTAL_STACK, was "+Ha+"! (TOTAL_STACK=5242880)");assert("undefined"!==typeof Int32Array&&"undefined"!==typeof Float64Array&&void 0!==Int32Array.prototype.subarray&&void 0!==Int32Array.prototype.set,"JS engine does not provide full typed array support");c.wasmMemory?B=c.wasmMemory:B=new WebAssembly.Memory({initial:Ha/65536,maximum:32768});B&&(I=B.buffer);Ha=I.byteLength;assert(0===Ha%65536);assert(!0);Ga(I);
    function Ia(){assert(!0);K[8233]=34821223;K[8234]=2310721022;E[0]=1668509029}function Ja(){var a=K[8233],b=K[8234];34821223==a&&2310721022==b||e("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x2135467, but received 0x"+b.toString(16)+" "+a.toString(16));1668509029!==E[0]&&e("Runtime error: The application has corrupted its heap memory area (address zero)!")}var Ka=new Int16Array(1),La=new Int8Array(Ka.buffer);Ka[0]=25459;
    if(115!==La[0]||99!==La[1])throw"Runtime error: expected the system to be little-endian!";var Ma=[],Na=[],Oa=[],Pa=[],Qa=!1;function Ra(){var a=c.preRun.shift();Ma.unshift(a)}assert(Math.imul,"This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.fround,"This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.clz32,"This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");
    assert(Math.trunc,"This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");var Sa=Math.abs,Ta=Math.ceil,Ua=Math.floor,Va=Math.min,L=0,M=null,Wa=null,Xa={};function Ya(a){for(var b=a;;){if(!Xa[a])return a;a=b+Math.random()}}
    function Za(a){L++;c.monitorRunDependencies&&c.monitorRunDependencies(L);a?(assert(!Xa[a]),Xa[a]=1,null===M&&"undefined"!==typeof setInterval&&(M=setInterval(function(){if(pa)clearInterval(M),M=null;else{var b=!1,d;for(d in Xa)b||(b=!0,z("still waiting on run dependencies:")),z("dependency: "+d);b&&z("(end of list)")}},1E4))):z("warning: run dependency added without ID")}
    function $a(a){L--;c.monitorRunDependencies&&c.monitorRunDependencies(L);a?(assert(Xa[a]),delete Xa[a]):z("warning: run dependency removed without ID");0==L&&(null!==M&&(clearInterval(M),M=null),Wa&&(a=Wa,Wa=null,a()))}c.preloadedImages={};c.preloadedAudios={};function e(a){if(c.onAbort)c.onAbort(a);z(a);pa=!0;a="abort("+a+") at "+ab();a=new WebAssembly.RuntimeError(a);ba(a);throw a;}function bb(a){var b=cb;return String.prototype.startsWith?b.startsWith(a):0===b.indexOf(a)}
    function db(){return bb("data:application/octet-stream;base64,")}function N(a){return function(){var b=c.asm;assert(Qa,"native function `"+a+"` called before runtime initialization");assert(!0,"native function `"+a+"` called after runtime exit (use NO_EXIT_RUNTIME to keep it alive after main() exits)");b[a]||assert(b[a],"exported native function `"+a+"` not found");return b[a].apply(null,arguments)}}var cb="web_sketch.wasm";if(!db()){var eb=cb;cb=c.locateFile?c.locateFile(eb,y):y+eb}
    function fb(){try{if(na)return new Uint8Array(na);if(ha)return ha(cb);throw"both async and sync fetching of the wasm failed";}catch(a){e(a)}}function gb(){return na||!da&&!t||"function"!==typeof fetch||bb("file://")?Promise.resolve().then(fb):fetch(cb,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file at '"+cb+"'";return a.arrayBuffer()}).catch(function(){return fb()})}var hb,ib;
    function jb(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b(c);else{var d=b.Db;"number"===typeof d?void 0===b.sa?oa.get(d)():oa.get(d)(b.sa):d(void 0===b.sa?null:b.sa)}}}function kb(a){return a.replace(/\b_Z[\w\d_]+/g,function(b){la("warning: build with  -s DEMANGLE_SUPPORT=1  to link in libcxxabi demangling");return b===b?b:b+" ["+b+"]"})}
    function ab(){a:{var a=Error();if(!a.stack){try{throw Error();}catch(b){a=b}if(!a.stack){a="(no stack trace available)";break a}}a=a.stack.toString()}c.extraStackTrace&&(a+="\n"+c.extraStackTrace());return kb(a)}function lb(a,b){for(var d=0,f=a.length-1;0<=f;f--){var g=a[f];"."===g?a.splice(f,1):".."===g?(a.splice(f,1),d++):d&&(a.splice(f,1),d--)}if(b)for(;d;d--)a.unshift("..");return a}
    function mb(a){var b="/"===a.charAt(0),d="/"===a.substr(-1);(a=lb(a.split("/").filter(function(f){return!!f}),!b).join("/"))||b||(a=".");a&&d&&(a+="/");return(b?"/":"")+a}function nb(a){var b=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(a).slice(1);a=b[0];b=b[1];if(!a&&!b)return".";b&&(b=b.substr(0,b.length-1));return a+b}function O(a){if("/"===a)return"/";a=mb(a);a=a.replace(/\/$/,"");var b=a.lastIndexOf("/");return-1===b?a:a.substr(b+1)}
    function ob(){var a=Array.prototype.slice.call(arguments,0);return mb(a.join("/"))}function P(a,b){return mb(a+"/"+b)}function pb(a){return E[qb()>>2]=a}function Q(){for(var a="",b=!1,d=arguments.length-1;-1<=d&&!b;d--){b=0<=d?arguments[d]:R.cwd();if("string"!==typeof b)throw new TypeError("Arguments to path.resolve must be strings");if(!b)return"";a=b+"/"+a;b="/"===b.charAt(0)}a=lb(a.split("/").filter(function(f){return!!f}),!b).join("/");return(b?"/":"")+a||"."}
    function rb(a,b){function d(l){for(var m=0;m<l.length&&""===l[m];m++);for(var n=l.length-1;0<=n&&""===l[n];n--);return m>n?[]:l.slice(m,n-m+1)}a=Q(a).substr(1);b=Q(b).substr(1);a=d(a.split("/"));b=d(b.split("/"));for(var f=Math.min(a.length,b.length),g=f,k=0;k<f;k++)if(a[k]!==b[k]){g=k;break}f=[];for(k=g;k<a.length;k++)f.push("..");f=f.concat(b.slice(g));return f.join("/")}var sb=[];function tb(a,b){sb[a]={input:[],output:[],Y:b};R.Ha(a,ub)}
    var ub={open:function(a){var b=sb[a.node.rdev];if(!b)throw new R.b(43);a.tty=b;a.seekable=!1},close:function(a){a.tty.Y.flush(a.tty)},flush:function(a){a.tty.Y.flush(a.tty)},read:function(a,b,d,f){if(!a.tty||!a.tty.Y.Xa)throw new R.b(60);for(var g=0,k=0;k<f;k++){try{var l=a.tty.Y.Xa(a.tty)}catch(m){throw new R.b(29);}if(void 0===l&&0===g)throw new R.b(6);if(null===l||void 0===l)break;g++;b[d+k]=l}g&&(a.node.timestamp=Date.now());return g},write:function(a,b,d,f){if(!a.tty||!a.tty.Y.Da)throw new R.b(60);
    try{for(var g=0;g<f;g++)a.tty.Y.Da(a.tty,b[d+g])}catch(k){throw new R.b(29);}f&&(a.node.timestamp=Date.now());return g}},wb={Xa:function(a){if(!a.input.length){var b=null;if(v){var d=Buffer.K?Buffer.K(256):new Buffer(256),f=0;try{f=ia.readSync(process.stdin.fd,d,0,256,null)}catch(g){if(-1!=g.toString().indexOf("EOF"))f=0;else throw g;}0<f?b=d.slice(0,f).toString("utf-8"):b=null}else"undefined"!=typeof window&&"function"==typeof window.prompt?(b=window.prompt("Input: "),null!==b&&(b+="\n")):"function"==
    typeof readline&&(b=readline(),null!==b&&(b+="\n"));if(!b)return null;a.input=vb(b)}return a.input.shift()},Da:function(a,b){null===b||10===b?(ka(C(a.output,0)),a.output=[]):0!=b&&a.output.push(b)},flush:function(a){a.output&&0<a.output.length&&(ka(C(a.output,0)),a.output=[])}},xb={Da:function(a,b){null===b||10===b?(z(C(a.output,0)),a.output=[]):0!=b&&a.output.push(b)},flush:function(a){a.output&&0<a.output.length&&(z(C(a.output,0)),a.output=[])}},S={F:null,h:function(){return S.createNode(null,"/",
    16895,0)},createNode:function(a,b,d,f){if(R.Gb(d)||R.isFIFO(d))throw new R.b(63);S.F||(S.F={dir:{node:{u:S.f.u,m:S.f.m,lookup:S.f.lookup,B:S.f.B,rename:S.f.rename,unlink:S.f.unlink,rmdir:S.f.rmdir,readdir:S.f.readdir,symlink:S.f.symlink},stream:{v:S.g.v}},file:{node:{u:S.f.u,m:S.f.m},stream:{v:S.g.v,read:S.g.read,write:S.g.write,ba:S.g.ba,W:S.g.W,X:S.g.X}},link:{node:{u:S.f.u,m:S.f.m,readlink:S.f.readlink},stream:{}},Na:{node:{u:S.f.u,m:S.f.m},stream:R.sb}});d=R.createNode(a,b,d,f);R.l(d.mode)?(d.f=
    S.F.dir.node,d.g=S.F.dir.stream,d.c={}):R.isFile(d.mode)?(d.f=S.F.file.node,d.g=S.F.file.stream,d.i=0,d.c=null):R.V(d.mode)?(d.f=S.F.link.node,d.g=S.F.link.stream):R.ka(d.mode)&&(d.f=S.F.Na.node,d.g=S.F.Na.stream);d.timestamp=Date.now();a&&(a.c[b]=d);return d},ve:function(a){if(a.c&&a.c.subarray){for(var b=[],d=0;d<a.i;++d)b.push(a.c[d]);return b}return a.c},we:function(a){return a.c?a.c.subarray?a.c.subarray(0,a.i):new Uint8Array(a.c):new Uint8Array(0)},Sa:function(a,b){var d=a.c?a.c.length:0;d>=
    b||(b=Math.max(b,d*(1048576>d?2:1.125)>>>0),0!=d&&(b=Math.max(b,256)),d=a.c,a.c=new Uint8Array(b),0<a.i&&a.c.set(d.subarray(0,a.i),0))},Sb:function(a,b){if(a.i!=b)if(0==b)a.c=null,a.i=0;else{if(!a.c||a.c.subarray){var d=a.c;a.c=new Uint8Array(b);d&&a.c.set(d.subarray(0,Math.min(b,a.i)))}else if(a.c||(a.c=[]),a.c.length>b)a.c.length=b;else for(;a.c.length<b;)a.c.push(0);a.i=b}},f:{u:function(a){var b={};b.dev=R.ka(a.mode)?a.id:1;b.ino=a.id;b.mode=a.mode;b.nlink=1;b.uid=0;b.gid=0;b.rdev=a.rdev;R.l(a.mode)?
    b.size=4096:R.isFile(a.mode)?b.size=a.i:R.V(a.mode)?b.size=a.link.length:b.size=0;b.atime=new Date(a.timestamp);b.mtime=new Date(a.timestamp);b.ctime=new Date(a.timestamp);b.L=4096;b.blocks=Math.ceil(b.size/b.L);return b},m:function(a,b){void 0!==b.mode&&(a.mode=b.mode);void 0!==b.timestamp&&(a.timestamp=b.timestamp);void 0!==b.size&&S.Sb(a,b.size)},lookup:function(){throw R.va[44];},B:function(a,b,d,f){return S.createNode(a,b,d,f)},rename:function(a,b,d){if(R.l(a.mode)){try{var f=R.J(b,d)}catch(k){}if(f)for(var g in f.c)throw new R.b(55);
    }delete a.parent.c[a.name];a.name=d;b.c[d]=a;a.parent=b},unlink:function(a,b){delete a.c[b]},rmdir:function(a,b){var d=R.J(a,b),f;for(f in d.c)throw new R.b(55);delete a.c[b]},readdir:function(a){var b=[".",".."],d;for(d in a.c)a.c.hasOwnProperty(d)&&b.push(d);return b},symlink:function(a,b,d){a=S.createNode(a,b,41471,0);a.link=d;return a},readlink:function(a){if(!R.V(a.mode))throw new R.b(28);return a.link}},g:{read:function(a,b,d,f,g){var k=a.node.c;if(g>=a.node.i)return 0;a=Math.min(a.node.i-g,
    f);assert(0<=a);if(8<a&&k.subarray)b.set(k.subarray(g,g+a),d);else for(f=0;f<a;f++)b[d+f]=k[g+f];return a},write:function(a,b,d,f,g,k){assert(!(b instanceof ArrayBuffer));b.buffer===J.buffer&&(k=!1);if(!f)return 0;a=a.node;a.timestamp=Date.now();if(b.subarray&&(!a.c||a.c.subarray)){if(k)return assert(0===g,"canOwn must imply no weird position inside the file"),a.c=b.subarray(d,d+f),a.i=f;if(0===a.i&&0===g)return a.c=b.slice(d,d+f),a.i=f;if(g+f<=a.i)return a.c.set(b.subarray(d,d+f),g),f}S.Sa(a,g+f);
    if(a.c.subarray&&b.subarray)a.c.set(b.subarray(d,d+f),g);else for(k=0;k<f;k++)a.c[g+k]=b[d+k];a.i=Math.max(a.i,g+f);return f},v:function(a,b,d){1===d?b+=a.position:2===d&&R.isFile(a.node.mode)&&(b+=a.node.i);if(0>b)throw new R.b(28);return b},ba:function(a,b,d){S.Sa(a.node,b+d);a.node.i=Math.max(a.node.i,b+d)},W:function(a,b,d,f,g,k){assert(0===b);if(!R.isFile(a.node.mode))throw new R.b(43);a=a.node.c;if(k&2||a.buffer!==I){if(0<f||f+d<a.length)a.subarray?a=a.subarray(f,f+d):a=Array.prototype.slice.call(a,
    f,f+d);f=!0;d=R.cb(d);if(!d)throw new R.b(48);J.set(a,d)}else f=!1,d=a.byteOffset;return{Qb:d,ob:f}},X:function(a,b,d,f,g){if(!R.isFile(a.node.mode))throw new R.b(43);if(g&2)return 0;S.g.write(a,b,0,f,d,!1);return 0}}},yb={Nd:63,md:44,$d:71,Hc:27,Jc:29,Jd:60,Vb:1,nd:45,dc:8,nc:12,ac:6,je:6,rd:48,Wb:2,Ac:21,Ad:105,lc:10,zc:20,ke:75,ld:43,Cd:54,Lc:31,Ic:28,ed:41,Xc:33,Hd:59,ge:74,Bc:22,wd:51,Zd:70,Wd:69,Yc:34,Pd:64,wc:18,Td:68,sd:49,Ec:24,oc:106,Nc:156,Oc:107,Pc:108,Vc:109,he:110,jd:111,Mc:112,tc:16,
    od:46,cc:113,hc:114,le:115,gd:104,ic:103,jc:102,uc:16,kc:101,yd:100,kd:116,de:117,xd:118,td:119,ud:120,Vd:121,pd:47,Zb:122,ae:123,pc:124,Qd:65,$c:36,xc:125,fc:9,Id:126,ec:127,Ud:128,Qc:129,Rc:130,Uc:131,Tc:132,Sc:133,zd:52,Dd:55,ad:37,Wc:32,Kd:138,Od:139,sc:15,hd:42,$b:5,Sd:67,Fd:57,vd:50,Xd:140,rc:14,Xb:3,qc:13,dd:40,bd:38,ee:73,Cc:142,Dc:23,Gc:26,bc:7,vc:17,Zc:35,Rd:66,Yd:137,Yb:4,cd:39,Kc:30,Bd:53,fe:141,ie:136,yc:19,be:72,Gd:138,qd:148,Fc:25,Ld:61,mc:11,Ed:56,Md:62,ce:135},T={ma:!1,Ia:function(){T.ma=
    !!process.platform.match(/^win/);var a=process.binding("constants");a.fs&&(a=a.fs);T.Ta={1024:a.O_APPEND,64:a.O_CREAT,128:a.O_EXCL,0:a.O_RDONLY,2:a.O_RDWR,4096:a.O_SYNC,512:a.O_TRUNC,1:a.O_WRONLY}},La:function(a){return Buffer.alloc?Buffer.from(a):new Buffer(a)},s:function(a){a=a.code;assert(a in yb);return yb[a]},h:function(a){assert(v);return T.createNode(null,"/",T.O(a.Z.root),0)},createNode:function(a,b,d){if(!R.l(d)&&!R.isFile(d)&&!R.V(d))throw new R.b(28);a=R.createNode(a,b,d);a.f=T.f;a.g=T.g;
    return a},O:function(a){try{var b=fs.lstatSync(a);T.ma&&(b.mode=b.mode|(b.mode&292)>>2)}catch(d){if(!d.code)throw d;throw new R.b(T.s(d));}return b.mode},A:function(a){for(var b=[];a.parent!==a;)b.push(a.name),a=a.parent;b.push(a.h.Z.root);b.reverse();return ob.apply(null,b)},Cb:function(a){a&=-2656257;var b=0,d;for(d in T.Ta)a&d&&(b|=T.Ta[d],a^=d);if(a)throw new R.b(28);return b},f:{u:function(a){a=T.A(a);try{var b=fs.lstatSync(a)}catch(d){if(!d.code)throw d;throw new R.b(T.s(d));}T.ma&&!b.L&&(b.L=
    4096);T.ma&&!b.blocks&&(b.blocks=(b.size+b.L-1)/b.L|0);return{dev:b.dev,ino:b.ino,mode:b.mode,nlink:b.nlink,uid:b.uid,gid:b.gid,rdev:b.rdev,size:b.size,atime:b.atime,mtime:b.mtime,ctime:b.ctime,L:b.L,blocks:b.blocks}},m:function(a,b){var d=T.A(a);try{void 0!==b.mode&&(fs.chmodSync(d,b.mode),a.mode=b.mode),void 0!==b.size&&fs.truncateSync(d,b.size)}catch(f){if(!f.code)throw f;throw new R.b(T.s(f));}},lookup:function(a,b){var d=P(T.A(a),b);d=T.O(d);return T.createNode(a,b,d)},B:function(a,b,d,f){a=
    T.createNode(a,b,d,f);b=T.A(a);try{R.l(a.mode)?fs.mkdirSync(b,a.mode):fs.writeFileSync(b,"",{mode:a.mode})}catch(g){if(!g.code)throw g;throw new R.b(T.s(g));}return a},rename:function(a,b,d){var f=T.A(a);b=P(T.A(b),d);try{fs.renameSync(f,b)}catch(g){if(!g.code)throw g;throw new R.b(T.s(g));}a.name=d},unlink:function(a,b){a=P(T.A(a),b);try{fs.unlinkSync(a)}catch(d){if(!d.code)throw d;throw new R.b(T.s(d));}},rmdir:function(a,b){a=P(T.A(a),b);try{fs.rmdirSync(a)}catch(d){if(!d.code)throw d;throw new R.b(T.s(d));
    }},readdir:function(a){a=T.A(a);try{return fs.readdirSync(a)}catch(b){if(!b.code)throw b;throw new R.b(T.s(b));}},symlink:function(a,b,d){a=P(T.A(a),b);try{fs.symlinkSync(d,a)}catch(f){if(!f.code)throw f;throw new R.b(T.s(f));}},readlink:function(a){var b=T.A(a);try{return b=fs.readlinkSync(b),b=zb.relative(zb.resolve(a.h.Z.root),b)}catch(d){if(!d.code)throw d;throw new R.b(T.s(d));}}},g:{open:function(a){var b=T.A(a.node);try{R.isFile(a.node.mode)&&(a.ha=fs.openSync(b,T.Cb(a.flags)))}catch(d){if(!d.code)throw d;
    throw new R.b(T.s(d));}},close:function(a){try{R.isFile(a.node.mode)&&a.ha&&fs.closeSync(a.ha)}catch(b){if(!b.code)throw b;throw new R.b(T.s(b));}},read:function(a,b,d,f,g){if(0===f)return 0;try{return fs.readSync(a.ha,T.La(b.buffer),d,f,g)}catch(k){throw new R.b(T.s(k));}},write:function(a,b,d,f,g){try{return fs.writeSync(a.ha,T.La(b.buffer),d,f,g)}catch(k){throw new R.b(T.s(k));}},v:function(a,b,d){if(1===d)b+=a.position;else if(2===d&&R.isFile(a.node.mode))try{b+=fs.fstatSync(a.ha).size}catch(f){throw new R.b(T.s(f));
    }if(0>b)throw new R.b(28);return b},W:function(a,b,d,f){assert(0===b);if(!R.isFile(a.node.mode))throw new R.b(43);b=R.cb(d);T.g.read(a,J,b,d,f);return{Qb:b,ob:!0}},X:function(a,b,d,f,g){if(!R.isFile(a.node.mode))throw new R.b(43);if(g&2)return 0;T.g.write(a,b,0,f,d,!1);return 0}}},U={pa:16895,aa:33279,Fa:null,h:function(a){function b(k){k=k.split("/");for(var l=f,m=0;m<k.length-1;m++){var n=k.slice(0,m+1).join("/");g[n]||(g[n]=U.createNode(l,k[m],U.pa,0));l=g[n]}return l}function d(k){k=k.split("/");
    return k[k.length-1]}assert(t);U.Fa||(U.Fa=new FileReaderSync);var f=U.createNode(null,"/",U.pa,0),g={};Array.prototype.forEach.call(a.Z.files||[],function(k){U.createNode(b(k.name),d(k.name),U.aa,0,k,k.lastModifiedDate)});(a.Z.blobs||[]).forEach(function(k){U.createNode(b(k.name),d(k.name),U.aa,0,k.data)});(a.Z.packages||[]).forEach(function(k){k.metadata.files.forEach(function(l){var m=l.filename.substr(1);U.createNode(b(m),d(m),U.aa,0,k.blob.slice(l.start,l.end))})});return f},createNode:function(a,
    b,d,f,g,k){f=R.createNode(a,b,d);f.mode=d;f.f=U.f;f.g=U.g;f.timestamp=(k||new Date).getTime();assert(U.aa!==U.pa);d===U.aa?(f.size=g.size,f.c=g):(f.size=4096,f.c={});a&&(a.c[b]=f);return f},f:{u:function(a){return{dev:1,ino:a.id,mode:a.mode,nlink:1,uid:0,gid:0,rdev:void 0,size:a.size,atime:new Date(a.timestamp),mtime:new Date(a.timestamp),ctime:new Date(a.timestamp),L:4096,blocks:Math.ceil(a.size/4096)}},m:function(a,b){void 0!==b.mode&&(a.mode=b.mode);void 0!==b.timestamp&&(a.timestamp=b.timestamp)},
    lookup:function(){throw new R.b(44);},B:function(){throw new R.b(63);},rename:function(){throw new R.b(63);},unlink:function(){throw new R.b(63);},rmdir:function(){throw new R.b(63);},readdir:function(a){var b=[".",".."],d;for(d in a.c)a.c.hasOwnProperty(d)&&b.push(d);return b},symlink:function(){throw new R.b(63);},readlink:function(){throw new R.b(63);}},g:{read:function(a,b,d,f,g){if(g>=a.node.size)return 0;a=a.node.c.slice(g,g+f);f=U.Fa.readAsArrayBuffer(a);b.set(new Uint8Array(f),d);return a.size},
    write:function(){throw new R.b(29);},v:function(a,b,d){1===d?b+=a.position:2===d&&R.isFile(a.node.mode)&&(b+=a.node.size);if(0>b)throw new R.b(28);return b}}},Ab={0:"Success",1:"Arg list too long",2:"Permission denied",3:"Address already in use",4:"Address not available",5:"Address family not supported by protocol family",6:"No more processes",7:"Socket already connected",8:"Bad file number",9:"Trying to read unreadable message",10:"Mount device busy",11:"Operation canceled",12:"No children",13:"Connection aborted",
    14:"Connection refused",15:"Connection reset by peer",16:"File locking deadlock error",17:"Destination address required",18:"Math arg out of domain of func",19:"Quota exceeded",20:"File exists",21:"Bad address",22:"File too large",23:"Host is unreachable",24:"Identifier removed",25:"Illegal byte sequence",26:"Connection already in progress",27:"Interrupted system call",28:"Invalid argument",29:"I/O error",30:"Socket is already connected",31:"Is a directory",32:"Too many symbolic links",33:"Too many open files",
    34:"Too many links",35:"Message too long",36:"Multihop attempted",37:"File or path name too long",38:"Network interface is not configured",39:"Connection reset by network",40:"Network is unreachable",41:"Too many open files in system",42:"No buffer space available",43:"No such device",44:"No such file or directory",45:"Exec format error",46:"No record locks available",47:"The link has been severed",48:"Not enough core",49:"No message of desired type",50:"Protocol not available",51:"No space left on device",
    52:"Function not implemented",53:"Socket is not connected",54:"Not a directory",55:"Directory not empty",56:"State not recoverable",57:"Socket operation on non-socket",59:"Not a typewriter",60:"No such device or address",61:"Value too large for defined data type",62:"Previous owner died",63:"Not super-user",64:"Broken pipe",65:"Protocol error",66:"Unknown protocol",67:"Protocol wrong type for socket",68:"Math result not representable",69:"Read only file system",70:"Illegal seek",71:"No such process",
    72:"Stale file handle",73:"Connection timed out",74:"Text file busy",75:"Cross-device link",100:"Device not a stream",101:"Bad font file fmt",102:"Invalid slot",103:"Invalid request code",104:"No anode",105:"Block device required",106:"Channel number out of range",107:"Level 3 halted",108:"Level 3 reset",109:"Link number out of range",110:"Protocol driver not attached",111:"No CSI structure available",112:"Level 2 halted",113:"Invalid exchange",114:"Invalid request descriptor",115:"Exchange full",
    116:"No data (for no delay io)",117:"Timer expired",118:"Out of streams resources",119:"Machine is not on the network",120:"Package not installed",121:"The object is remote",122:"Advertise error",123:"Srmount error",124:"Communication error on send",125:"Cross mount point (not really error)",126:"Given log. name not unique",127:"f.d. invalid for this operation",128:"Remote address changed",129:"Can   access a needed shared lib",130:"Accessing a corrupted shared lib",131:".lib section in a.out corrupted",
    132:"Attempting to link in too many libs",133:"Attempting to exec a shared library",135:"Streams pipe error",136:"Too many users",137:"Socket type not supported",138:"Not supported",139:"Protocol family not supported",140:"Can't send after socket shutdown",141:"Too many references",142:"Host is down",148:"No medium (in tape drive)",156:"Level 2 not synchronized"},R={root:null,ga:[],Qa:{},streams:[],Lb:1,D:null,Pa:"/",ja:!1,ab:!0,o:{},hb:{fb:{kb:1,lb:2}},b:null,va:{},Ab:null,ia:0,xe:function(a){if(!(a instanceof
    R.b))throw a+" : "+ab();return pb(a.H)},j:function(a,b){a=Q(R.cwd(),a);b=b||{};if(!a)return{path:"",node:null};var d={ua:!0,Ga:0},f;for(f in d)void 0===b[f]&&(b[f]=d[f]);if(8<b.Ga)throw new R.b(32);a=lb(a.split("/").filter(function(l){return!!l}),!1);var g=R.root;d="/";for(f=0;f<a.length;f++){var k=f===a.length-1;if(k&&b.parent)break;g=R.J(g,a[f]);d=P(d,a[f]);R.P(g)&&(!k||k&&b.ua)&&(g=g.fa.root);if(!k||b.C)for(k=0;R.V(g.mode);)if(g=R.readlink(d),d=Q(nb(d),g),g=R.j(d,{Ga:b.Ga}).node,40<k++)throw new R.b(32);
    }return{path:d,node:g}},I:function(a){for(var b;;){if(R.la(a))return a=a.h.eb,b?"/"!==a[a.length-1]?a+"/"+b:a+b:a;b=b?a.name+"/"+b:a.name;a=a.parent}},ya:function(a,b){for(var d=0,f=0;f<b.length;f++)d=(d<<5)-d+b.charCodeAt(f)|0;return(a+d>>>0)%R.D.length},Za:function(a){var b=R.ya(a.parent.id,a.name);a.S=R.D[b];R.D[b]=a},$a:function(a){var b=R.ya(a.parent.id,a.name);if(R.D[b]===a)R.D[b]=a.S;else for(b=R.D[b];b;){if(b.S===a){b.S=a.S;break}b=b.S}},J:function(a,b){var d=R.Ib(a);if(d)throw new R.b(d,
    a);for(d=R.D[R.ya(a.id,b)];d;d=d.S){var f=d.name;if(d.parent.id===a.id&&f===b)return d}return R.lookup(a,b)},createNode:function(a,b,d,f){a=new R.ib(a,b,d,f);R.Za(a);return a},ta:function(a){R.$a(a)},la:function(a){return a===a.parent},P:function(a){return!!a.fa},isFile:function(a){return 32768===(a&61440)},l:function(a){return 16384===(a&61440)},V:function(a){return 40960===(a&61440)},ka:function(a){return 8192===(a&61440)},Gb:function(a){return 24576===(a&61440)},isFIFO:function(a){return 4096===
    (a&61440)},isSocket:function(a){return 49152===(a&49152)},Bb:{r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218},Kb:function(a){var b=R.Bb[a];if("undefined"===typeof b)throw Error("Unknown file open mode: "+a);return b},Ua:function(a){var b=["r","w","rw"][a&3];a&512&&(b+="w");return b},T:function(a,b){if(R.ab)return 0;if(-1===b.indexOf("r")||a.mode&292){if(-1!==b.indexOf("w")&&!(a.mode&146)||-1!==b.indexOf("x")&&!(a.mode&
    73))return 2}else return 2;return 0},Ib:function(a){var b=R.T(a,"x");return b?b:a.f.lookup?0:2},Ca:function(a,b){try{return R.J(a,b),20}catch(d){}return R.T(a,"wx")},na:function(a,b,d){try{var f=R.J(a,b)}catch(g){return g.H}if(a=R.T(a,"wx"))return a;if(d){if(!R.l(f.mode))return 54;if(R.la(f)||R.I(f)===R.cwd())return 10}else if(R.l(f.mode))return 31;return 0},Jb:function(a,b){return a?R.V(a.mode)?32:R.l(a.mode)&&("r"!==R.Ua(b)||b&512)?31:R.T(a,R.Ua(b)):44},jb:4096,Mb:function(a,b){b=b||R.jb;for(a=
    a||0;a<=b;a++)if(!R.streams[a])return a;throw new R.b(33);},da:function(a){return R.streams[a]},zb:function(a,b,d){R.qa||(R.qa=function(){},R.qa.prototype={object:{get:function(){return this.node},set:function(k){this.node=k}}});var f=new R.qa,g;for(g in a)f[g]=a[g];a=f;b=R.Mb(b,d);a.fd=b;return R.streams[b]=a},tb:function(a){R.streams[a]=null},sb:{open:function(a){a.g=R.Eb(a.node.rdev).g;a.g.open&&a.g.open(a)},v:function(){throw new R.b(70);}},Ba:function(a){return a>>8},Be:function(a){return a&
    255},R:function(a,b){return a<<8|b},Ha:function(a,b){R.Qa[a]={g:b}},Eb:function(a){return R.Qa[a]},Wa:function(a){var b=[];for(a=[a];a.length;){var d=a.pop();b.push(d);a.push.apply(a,d.ga)}return b},gb:function(a,b){function d(l){assert(0<R.ia);R.ia--;return b(l)}function f(l){if(l){if(!f.K)return f.K=!0,d(l)}else++k>=g.length&&d(null)}"function"===typeof a&&(b=a,a=!1);R.ia++;1<R.ia&&z("warning: "+R.ia+" FS.syncfs operations in flight at once, probably just doing extra work");var g=R.Wa(R.root.h),
    k=0;g.forEach(function(l){if(!l.type.gb)return f(null);l.type.gb(l,a,f)})},h:function(a,b,d){if("string"===typeof a)throw a;var f="/"===d,g=!d;if(f&&R.root)throw new R.b(10);if(!f&&!g){var k=R.j(d,{ua:!1});d=k.path;k=k.node;if(R.P(k))throw new R.b(10);if(!R.l(k.mode))throw new R.b(54);}b={type:a,Z:b,eb:d,ga:[]};a=a.h(b);a.h=b;b.root=a;f?R.root=a:k&&(k.fa=b,k.h&&k.h.ga.push(b));return a},He:function(a){a=R.j(a,{ua:!1});if(!R.P(a.node))throw new R.b(28);a=a.node;var b=a.fa,d=R.Wa(b);Object.keys(R.D).forEach(function(f){for(f=
    R.D[f];f;){var g=f.S;-1!==d.indexOf(f.h)&&R.ta(f);f=g}});a.fa=null;b=a.h.ga.indexOf(b);assert(-1!==b);a.h.ga.splice(b,1)},lookup:function(a,b){return a.f.lookup(a,b)},B:function(a,b,d){var f=R.j(a,{parent:!0}).node;a=O(a);if(!a||"."===a||".."===a)throw new R.b(28);var g=R.Ca(f,a);if(g)throw new R.b(g);if(!f.f.B)throw new R.b(63);return f.f.B(f,a,b,d)},create:function(a,b){return R.B(a,(void 0!==b?b:438)&4095|32768,0)},mkdir:function(a,b){return R.B(a,(void 0!==b?b:511)&1023|16384,0)},Ce:function(a,
    b){a=a.split("/");for(var d="",f=0;f<a.length;++f)if(a[f]){d+="/"+a[f];try{R.mkdir(d,b)}catch(g){if(20!=g.H)throw g;}}},oa:function(a,b,d){"undefined"===typeof d&&(d=b,b=438);return R.B(a,b|8192,d)},symlink:function(a,b){if(!Q(a))throw new R.b(44);var d=R.j(b,{parent:!0}).node;if(!d)throw new R.b(44);b=O(b);var f=R.Ca(d,b);if(f)throw new R.b(f);if(!d.f.symlink)throw new R.b(63);return d.f.symlink(d,b,a)},rename:function(a,b){var d=nb(a),f=nb(b),g=O(a),k=O(b);var l=R.j(a,{parent:!0});var m=l.node;
    l=R.j(b,{parent:!0});l=l.node;if(!m||!l)throw new R.b(44);if(m.h!==l.h)throw new R.b(75);var n=R.J(m,g);f=rb(a,f);if("."!==f.charAt(0))throw new R.b(28);f=rb(b,d);if("."!==f.charAt(0))throw new R.b(55);try{var p=R.J(l,k)}catch(q){}if(n!==p){d=R.l(n.mode);if(g=R.na(m,g,d))throw new R.b(g);if(g=p?R.na(l,k,d):R.Ca(l,k))throw new R.b(g);if(!m.f.rename)throw new R.b(63);if(R.P(n)||p&&R.P(p))throw new R.b(10);if(l!==m&&(g=R.T(m,"w")))throw new R.b(g);try{R.o.willMovePath&&R.o.willMovePath(a,b)}catch(q){z("FS.trackingDelegate['willMovePath']('"+
    a+"', '"+b+"') threw an exception: "+q.message)}R.$a(n);try{m.f.rename(n,l,k)}catch(q){throw q;}finally{R.Za(n)}try{if(R.o.onMovePath)R.o.onMovePath(a,b)}catch(q){z("FS.trackingDelegate['onMovePath']('"+a+"', '"+b+"') threw an exception: "+q.message)}}},rmdir:function(a){var b=R.j(a,{parent:!0}).node,d=O(a),f=R.J(b,d),g=R.na(b,d,!0);if(g)throw new R.b(g);if(!b.f.rmdir)throw new R.b(63);if(R.P(f))throw new R.b(10);try{R.o.willDeletePath&&R.o.willDeletePath(a)}catch(k){z("FS.trackingDelegate['willDeletePath']('"+
    a+"') threw an exception: "+k.message)}b.f.rmdir(b,d);R.ta(f);try{if(R.o.onDeletePath)R.o.onDeletePath(a)}catch(k){z("FS.trackingDelegate['onDeletePath']('"+a+"') threw an exception: "+k.message)}},readdir:function(a){a=R.j(a,{C:!0}).node;if(!a.f.readdir)throw new R.b(54);return a.f.readdir(a)},unlink:function(a){var b=R.j(a,{parent:!0}).node,d=O(a),f=R.J(b,d),g=R.na(b,d,!1);if(g)throw new R.b(g);if(!b.f.unlink)throw new R.b(63);if(R.P(f))throw new R.b(10);try{R.o.willDeletePath&&R.o.willDeletePath(a)}catch(k){z("FS.trackingDelegate['willDeletePath']('"+
    a+"') threw an exception: "+k.message)}b.f.unlink(b,d);R.ta(f);try{if(R.o.onDeletePath)R.o.onDeletePath(a)}catch(k){z("FS.trackingDelegate['onDeletePath']('"+a+"') threw an exception: "+k.message)}},readlink:function(a){a=R.j(a).node;if(!a)throw new R.b(44);if(!a.f.readlink)throw new R.b(28);return Q(R.I(a.parent),a.f.readlink(a))},stat:function(a,b){a=R.j(a,{C:!b}).node;if(!a)throw new R.b(44);if(!a.f.u)throw new R.b(63);return a.f.u(a)},lstat:function(a){return R.stat(a,!0)},chmod:function(a,b,
    d){var f;"string"===typeof a?f=R.j(a,{C:!d}).node:f=a;if(!f.f.m)throw new R.b(63);f.f.m(f,{mode:b&4095|f.mode&-4096,timestamp:Date.now()})},lchmod:function(a,b){R.chmod(a,b,!0)},fchmod:function(a,b){a=R.da(a);if(!a)throw new R.b(8);R.chmod(a.node,b)},chown:function(a,b,d,f){var g;"string"===typeof a?g=R.j(a,{C:!f}).node:g=a;if(!g.f.m)throw new R.b(63);g.f.m(g,{timestamp:Date.now()})},lchown:function(a,b,d){R.chown(a,b,d,!0)},fchown:function(a,b,d){a=R.da(a);if(!a)throw new R.b(8);R.chown(a.node,b,
    d)},truncate:function(a,b){if(0>b)throw new R.b(28);var d;"string"===typeof a?d=R.j(a,{C:!0}).node:d=a;if(!d.f.m)throw new R.b(63);if(R.l(d.mode))throw new R.b(31);if(!R.isFile(d.mode))throw new R.b(28);if(a=R.T(d,"w"))throw new R.b(a);d.f.m(d,{size:b,timestamp:Date.now()})},ue:function(a,b){a=R.da(a);if(!a)throw new R.b(8);if(0===(a.flags&2097155))throw new R.b(28);R.truncate(a.node,b)},Ie:function(a,b,d){a=R.j(a,{C:!0}).node;a.f.m(a,{timestamp:Math.max(b,d)})},open:function(a,b,d,f,g){if(""===a)throw new R.b(44);
    b="string"===typeof b?R.Kb(b):b;d=b&64?("undefined"===typeof d?438:d)&4095|32768:0;if("object"===typeof a)var k=a;else{a=mb(a);try{k=R.j(a,{C:!(b&131072)}).node}catch(m){}}var l=!1;if(b&64)if(k){if(b&128)throw new R.b(20);}else k=R.B(a,d,0),l=!0;if(!k)throw new R.b(44);R.ka(k.mode)&&(b&=-513);if(b&65536&&!R.l(k.mode))throw new R.b(54);if(!l&&(d=R.Jb(k,b)))throw new R.b(d);b&512&&R.truncate(k,0);b&=-131713;f=R.zb({node:k,path:R.I(k),flags:b,seekable:!0,position:0,g:k.g,Ub:[],error:!1},f,g);f.g.open&&
    f.g.open(f);!c.logReadFiles||b&1||(R.Ea||(R.Ea={}),a in R.Ea||(R.Ea[a]=1,z("FS.trackingDelegate error on read file: "+a)));try{R.o.onOpenFile&&(g=0,1!==(b&2097155)&&(g|=R.hb.fb.kb),0!==(b&2097155)&&(g|=R.hb.fb.lb),R.o.onOpenFile(a,g))}catch(m){z("FS.trackingDelegate['onOpenFile']('"+a+"', flags) threw an exception: "+m.message)}return f},close:function(a){if(R.ea(a))throw new R.b(8);a.wa&&(a.wa=null);try{a.g.close&&a.g.close(a)}catch(b){throw b;}finally{R.tb(a.fd)}a.fd=null},ea:function(a){return null===
    a.fd},v:function(a,b,d){if(R.ea(a))throw new R.b(8);if(!a.seekable||!a.g.v)throw new R.b(70);if(0!=d&&1!=d&&2!=d)throw new R.b(28);a.position=a.g.v(a,b,d);a.Ub=[];return a.position},read:function(a,b,d,f,g){if(0>f||0>g)throw new R.b(28);if(R.ea(a))throw new R.b(8);if(1===(a.flags&2097155))throw new R.b(8);if(R.l(a.node.mode))throw new R.b(31);if(!a.g.read)throw new R.b(28);var k="undefined"!==typeof g;if(!k)g=a.position;else if(!a.seekable)throw new R.b(70);b=a.g.read(a,b,d,f,g);k||(a.position+=b);
    return b},write:function(a,b,d,f,g,k){if(0>f||0>g)throw new R.b(28);if(R.ea(a))throw new R.b(8);if(0===(a.flags&2097155))throw new R.b(8);if(R.l(a.node.mode))throw new R.b(31);if(!a.g.write)throw new R.b(28);a.seekable&&a.flags&1024&&R.v(a,0,2);var l="undefined"!==typeof g;if(!l)g=a.position;else if(!a.seekable)throw new R.b(70);b=a.g.write(a,b,d,f,g,k);l||(a.position+=b);try{if(a.path&&R.o.onWriteToFile)R.o.onWriteToFile(a.path)}catch(m){z("FS.trackingDelegate['onWriteToFile']('"+a.path+"') threw an exception: "+
    m.message)}return b},ba:function(a,b,d){if(R.ea(a))throw new R.b(8);if(0>b||0>=d)throw new R.b(28);if(0===(a.flags&2097155))throw new R.b(8);if(!R.isFile(a.node.mode)&&!R.l(a.node.mode))throw new R.b(43);if(!a.g.ba)throw new R.b(138);a.g.ba(a,b,d)},W:function(a,b,d,f,g,k){if(0!==(g&2)&&0===(k&2)&&2!==(a.flags&2097155))throw new R.b(2);if(1===(a.flags&2097155))throw new R.b(2);if(!a.g.W)throw new R.b(43);return a.g.W(a,b,d,f,g,k)},X:function(a,b,d,f,g){return a&&a.g.X?a.g.X(a,b,d,f,g):0},De:function(){return 0},
    bb:function(a,b,d){if(!a.g.bb)throw new R.b(59);return a.g.bb(a,b,d)},readFile:function(a,b){b=b||{};b.flags=b.flags||"r";b.encoding=b.encoding||"binary";if("utf8"!==b.encoding&&"binary"!==b.encoding)throw Error('Invalid encoding type "'+b.encoding+'"');var d,f=R.open(a,b.flags);a=R.stat(a).size;var g=new Uint8Array(a);R.read(f,g,0,a,0);"utf8"===b.encoding?d=C(g,0):"binary"===b.encoding&&(d=g);R.close(f);return d},writeFile:function(a,b,d){d=d||{};d.flags=d.flags||"w";a=R.open(a,d.flags,d.mode);if("string"===
    typeof b){var f=new Uint8Array(ta(b)+1);b=ra(b,f,0,f.length);R.write(a,f,0,b,void 0,d.rb)}else if(ArrayBuffer.isView(b))R.write(a,b,0,b.byteLength,void 0,d.rb);else throw Error("Unsupported data type");R.close(a)},cwd:function(){return R.Pa},chdir:function(a){a=R.j(a,{C:!0});if(null===a.node)throw new R.b(44);if(!R.l(a.node.mode))throw new R.b(54);var b=R.T(a.node,"x");if(b)throw new R.b(b);R.Pa=a.path},vb:function(){R.mkdir("/tmp");R.mkdir("/home");R.mkdir("/home/web_user")},ub:function(){R.mkdir("/dev");
    R.Ha(R.R(1,3),{read:function(){return 0},write:function(f,g,k,l){return l}});R.oa("/dev/null",R.R(1,3));tb(R.R(5,0),wb);tb(R.R(6,0),xb);R.oa("/dev/tty",R.R(5,0));R.oa("/dev/tty1",R.R(6,0));if("object"===typeof crypto&&"function"===typeof crypto.getRandomValues){var a=new Uint8Array(1);var b=function(){crypto.getRandomValues(a);return a[0]}}else if(v)try{var d=require("crypto");b=function(){return d.randomBytes(1)[0]}}catch(f){}b||(b=function(){e("no cryptographic support found for random_device. consider polyfilling it if you want to use something insecure like Math.random(), e.g. put this in a --pre-js: var crypto = { getRandomValues: function(array) { for (var i = 0; i < array.length; i++) array[i] = (Math.random()*256)|0 } };")});
    R.M("/dev","random",b);R.M("/dev","urandom",b);R.mkdir("/dev/shm");R.mkdir("/dev/shm/tmp")},xb:function(){R.mkdir("/proc");R.mkdir("/proc/self");R.mkdir("/proc/self/fd");R.h({h:function(){var a=R.createNode("/proc/self","fd",16895,73);a.f={lookup:function(b,d){var f=R.da(+d);if(!f)throw new R.b(8);b={parent:null,h:{eb:"fake"},f:{readlink:function(){return f.path}}};return b.parent=b}};return a}},{},"/proc/self/fd")},yb:function(){c.stdin?R.M("/dev","stdin",c.stdin):R.symlink("/dev/tty","/dev/stdin");
    c.stdout?R.M("/dev","stdout",null,c.stdout):R.symlink("/dev/tty","/dev/stdout");c.stderr?R.M("/dev","stderr",null,c.stderr):R.symlink("/dev/tty1","/dev/stderr");var a=R.open("/dev/stdin","r"),b=R.open("/dev/stdout","w"),d=R.open("/dev/stderr","w");assert(0===a.fd,"invalid handle for stdin ("+a.fd+")");assert(1===b.fd,"invalid handle for stdout ("+b.fd+")");assert(2===d.fd,"invalid handle for stderr ("+d.fd+")")},Ra:function(){R.b||(R.b=function(a,b){this.node=b;this.Tb=function(d){this.H=d;for(var f in yb)if(yb[f]===
    d){this.code=f;break}};this.Tb(a);this.message=Ab[a];this.stack&&(Object.defineProperty(this,"stack",{value:Error().stack,writable:!0}),this.stack=kb(this.stack))},R.b.prototype=Error(),R.b.prototype.constructor=R.b,[44].forEach(function(a){R.va[a]=new R.b(a);R.va[a].stack="<generic error, no stack>"}))},Ia:function(){R.Ra();R.D=Array(4096);R.h(S,{},"/");R.vb();R.ub();R.xb();R.Ab={MEMFS:S,NODEFS:T,WORKERFS:U}},U:function(a,b,d){assert(!R.U.ja,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");
    R.U.ja=!0;R.Ra();c.stdin=a||c.stdin;c.stdout=b||c.stdout;c.stderr=d||c.stderr;R.yb()},quit:function(){R.U.ja=!1;var a=c._fflush;a&&a(0);for(a=0;a<R.streams.length;a++){var b=R.streams[a];b&&R.close(b)}},O:function(a,b){var d=0;a&&(d|=365);b&&(d|=146);return d},ze:function(a,b){a=ob.apply(null,a);b&&"/"==a[0]&&(a=a.substr(1));return a},me:function(a,b){return Q(b,a)},Ge:function(a){return mb(a)},te:function(a,b){a=R.ra(a,b);if(a.exists)return a.object;pb(a.error);return null},ra:function(a,b){try{var d=
    R.j(a,{C:!b});a=d.path}catch(g){}var f={la:!1,exists:!1,error:0,name:null,path:null,object:null,Nb:!1,Pb:null,Ob:null};try{d=R.j(a,{parent:!0}),f.Nb=!0,f.Pb=d.path,f.Ob=d.node,f.name=O(a),d=R.j(a,{C:!b}),f.exists=!0,f.path=d.path,f.object=d.node,f.name=d.node.name,f.la="/"===d.path}catch(g){f.error=g.H}return f},oe:function(a,b,d,f){a=P("string"===typeof a?a:R.I(a),b);d=R.O(d,f);return R.mkdir(a,d)},re:function(a,b){a="string"===typeof a?a:R.I(a);for(b=b.split("/").reverse();b.length;){var d=b.pop();
    if(d){var f=P(a,d);try{R.mkdir(f)}catch(g){}a=f}}return f},wb:function(a,b,d,f,g){a=P("string"===typeof a?a:R.I(a),b);f=R.O(f,g);return R.create(a,f)},Oa:function(a,b,d,f,g,k){a=b?P("string"===typeof a?a:R.I(a),b):a;f=R.O(f,g);g=R.create(a,f);if(d){if("string"===typeof d){a=Array(d.length);b=0;for(var l=d.length;b<l;++b)a[b]=d.charCodeAt(b);d=a}R.chmod(g,f|146);a=R.open(g,"w");R.write(a,d,0,d.length,0,k);R.close(a);R.chmod(g,f)}return g},M:function(a,b,d,f){a=P("string"===typeof a?a:R.I(a),b);b=R.O(!!d,
    !!f);R.M.Ba||(R.M.Ba=64);var g=R.R(R.M.Ba++,0);R.Ha(g,{open:function(k){k.seekable=!1},close:function(){f&&f.buffer&&f.buffer.length&&f(10)},read:function(k,l,m,n){for(var p=0,q=0;q<n;q++){try{var u=d()}catch(w){throw new R.b(29);}if(void 0===u&&0===p)throw new R.b(6);if(null===u||void 0===u)break;p++;l[m+q]=u}p&&(k.node.timestamp=Date.now());return p},write:function(k,l,m,n){for(var p=0;p<n;p++)try{f(l[m+p])}catch(q){throw new R.b(29);}n&&(k.node.timestamp=Date.now());return p}});return R.oa(a,b,
    g)},qe:function(a,b,d){a=P("string"===typeof a?a:R.I(a),b);return R.symlink(d,a)},Va:function(a){if(a.za||a.Hb||a.link||a.c)return!0;var b=!0;if("undefined"!==typeof XMLHttpRequest)throw Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.");if(fa)try{a.c=vb(fa(a.url)),a.i=a.c.length}catch(d){b=!1}else throw Error("Cannot load without read() or XMLHttpRequest.");
    b||pb(29);return b},pe:function(a,b,d,f,g){function k(){this.Aa=!1;this.K=[]}k.prototype.get=function(p){if(!(p>this.length-1||0>p)){var q=p%this.chunkSize;return this.Ya(p/this.chunkSize|0)[q]}};k.prototype.qb=function(p){this.Ya=p};k.prototype.Ma=function(){var p=new XMLHttpRequest;p.open("HEAD",d,!1);p.send(null);if(!(200<=p.status&&300>p.status||304===p.status))throw Error("Couldn't load "+d+". Status: "+p.status);var q=Number(p.getResponseHeader("Content-length")),u,w=(u=p.getResponseHeader("Accept-Ranges"))&&
    "bytes"===u;p=(u=p.getResponseHeader("Content-Encoding"))&&"gzip"===u;var x=1048576;w||(x=q);var r=this;r.qb(function(F){var A=F*x,G=(F+1)*x-1;G=Math.min(G,q-1);if("undefined"===typeof r.K[F]){var ya=r.K;if(A>G)throw Error("invalid range ("+A+", "+G+") or no bytes requested!");if(G>q-1)throw Error("only "+q+" bytes available! programmer error!");var H=new XMLHttpRequest;H.open("GET",d,!1);q!==x&&H.setRequestHeader("Range","bytes="+A+"-"+G);"undefined"!=typeof Uint8Array&&(H.responseType="arraybuffer");
    H.overrideMimeType&&H.overrideMimeType("text/plain; charset=x-user-defined");H.send(null);if(!(200<=H.status&&300>H.status||304===H.status))throw Error("Couldn't load "+d+". Status: "+H.status);A=void 0!==H.response?new Uint8Array(H.response||[]):vb(H.responseText||"");ya[F]=A}if("undefined"===typeof r.K[F])throw Error("doXHR failed!");return r.K[F]});if(p||!q)x=q=1,x=q=this.Ya(0).length,ka("LazyFiles on gzip forces download of the whole file when length is accessed");this.nb=q;this.mb=x;this.Aa=
    !0};if("undefined"!==typeof XMLHttpRequest){if(!t)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var l=new k;Object.defineProperties(l,{length:{get:function(){this.Aa||this.Ma();return this.nb}},chunkSize:{get:function(){this.Aa||this.Ma();return this.mb}}});l={za:!1,c:l}}else l={za:!1,url:d};var m=R.wb(a,b,l,f,g);l.c?m.c=l.c:l.url&&(m.c=null,m.url=l.url);Object.defineProperties(m,{i:{get:function(){return this.c.length}}});
    var n={};Object.keys(m.g).forEach(function(p){var q=m.g[p];n[p]=function(){if(!R.Va(m))throw new R.b(29);return q.apply(null,arguments)}});n.read=function(p,q,u,w,x){if(!R.Va(m))throw new R.b(29);p=p.node.c;if(x>=p.length)return 0;w=Math.min(p.length-x,w);assert(0<=w);if(p.slice)for(var r=0;r<w;r++)q[u+r]=p[x+r];else for(r=0;r<w;r++)q[u+r]=p.get(x+r);return w};m.g=n;return m},se:function(a,b,d,f,g,k,l,m,n,p){function q(x){function r(A){p&&p();m||R.Oa(a,b,A,f,g,n);k&&k();$a(w)}var F=!1;c.preloadPlugins.forEach(function(A){!F&&
    A.canHandle(u)&&(A.handle(x,u,r,function(){l&&l();$a(w)}),F=!0)});F||r(x)}Bb.U();var u=b?Q(P(a,b)):a,w=Ya("cp "+u);Za(w);"string"==typeof d?Bb.ne(d,function(x){q(x)},l):q(d)},indexedDB:function(){return window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB},Ja:function(){return"EM_FS_"+window.location.pathname},Ka:20,$:"FILE_DATA",Fe:function(a,b,d){b=b||function(){};d=d||function(){};var f=R.indexedDB();try{var g=f.open(R.Ja(),R.Ka)}catch(k){return d(k)}g.onupgradeneeded=
    function(){ka("creating db");g.result.createObjectStore(R.$)};g.onsuccess=function(){var k=g.result.transaction([R.$],"readwrite"),l=k.objectStore(R.$),m=0,n=0,p=a.length;a.forEach(function(q){q=l.put(R.ra(q).object.c,q);q.onsuccess=function(){m++;m+n==p&&(0==n?b():d())};q.onerror=function(){n++;m+n==p&&(0==n?b():d())}});k.onerror=d};g.onerror=d},Ae:function(a,b,d){b=b||function(){};d=d||function(){};var f=R.indexedDB();try{var g=f.open(R.Ja(),R.Ka)}catch(k){return d(k)}g.onupgradeneeded=d;g.onsuccess=
    function(){var k=g.result;try{var l=k.transaction([R.$],"readonly")}catch(u){d(u);return}var m=l.objectStore(R.$),n=0,p=0,q=a.length;a.forEach(function(u){var w=m.get(u);w.onsuccess=function(){R.ra(u).exists&&R.unlink(u);R.Oa(nb(u),O(u),w.result,!0,!0,!0);n++;n+p==q&&(0==p?b():d())};w.onerror=function(){p++;n+p==q&&(0==p?b():d())}});l.onerror=d};g.onerror=d},cb:function(a){var b=16384*Math.ceil(a/16384);for(var d=Cb(b);a<b;)J[d+a++]=0;return d}},Db=void 0;
    function Eb(a){a=R.da(a);if(!a)throw new R.b(8);return a}function Fb(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 V(a){for(var b="";D[a];)b+=Gb[D[a++]];return b}var Hb={},Ib={},Jb={};function Kb(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 Lb(a,b){a=Kb(a);return(new Function("body","return function "+a+'() {\n    "use strict";    return body.apply(this, arguments);\n};\n'))(b)}function Mb(a){var b=Error,d=Lb(a,function(f){this.name=a;this.message=f;f=Error(f).stack;void 0!==f&&(this.stack=this.toString()+"\n"+f.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 Nb=void 0;function W(a){throw new Nb(a);}var Ob=void 0;function Pb(a,b){function d(m){m=b(m);if(m.length!==f.length)throw new Ob("Mismatched type converter count");for(var n=0;n<f.length;++n)X(f[n],m[n])}var f=[];f.forEach(function(m){Jb[m]=a});var g=Array(a.length),k=[],l=0;a.forEach(function(m,n){Ib.hasOwnProperty(m)?g[n]=Ib[m]:(k.push(m),Hb.hasOwnProperty(m)||(Hb[m]=[]),Hb[m].push(function(){g[n]=Ib[m];++l;l===k.length&&d(g)}))});0===k.length&&d(g)}
    function X(a,b,d){d=d||{};if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var f=b.name;a||W('type "'+f+'" must have a positive integer typeid pointer');if(Ib.hasOwnProperty(a)){if(d.Fb)return;W("Cannot register type '"+f+"' twice")}Ib[a]=b;delete Jb[a];Hb.hasOwnProperty(a)&&(b=Hb[a],delete Hb[a],b.forEach(function(g){g()}))}var Qb=[],Y=[{},{value:void 0},{value:null},{value:!0},{value:!1}];
    function Rb(a){switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:var b=Qb.length?Qb.pop():Y.length;Y[b]={Rb:1,value:a};return b}}function Sb(a){return this.fromWireType(K[a>>2])}function Tb(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a}
    function Ub(a,b){switch(b){case 2:return function(d){return this.fromWireType(Ea[d>>2])};case 3:return function(d){return this.fromWireType(Fa[d>>3])};default:throw new TypeError("Unknown float type: "+a);}}function Vb(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=Lb(b.name||"unknownFunctionName",function(){});d.prototype=b.prototype;d=new d;a=b.apply(d,a);return a instanceof Object?a:d}
    function Wb(a){for(;a.length;){var b=a.pop();a.pop()(b)}}function Xb(a,b){var d=c;if(void 0===d[a].G){var f=d[a];d[a]=function(){d[a].G.hasOwnProperty(arguments.length)||W("Function '"+b+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+d[a].G+")!");return d[a].G[arguments.length].apply(this,arguments)};d[a].G=[];d[a].G[f.pb]=f}}
    function Yb(a,b,d){c.hasOwnProperty(a)?((void 0===d||void 0!==c[a].G&&void 0!==c[a].G[d])&&W("Cannot register public name '"+a+"' twice"),Xb(a,a),c.hasOwnProperty(d)&&W("Cannot register multiple overloads of a function with the same number of arguments ("+d+")!"),c[a].G[d]=b):(c[a]=b,void 0!==d&&(c[a].Ee=d))}function Zb(a,b){for(var d=[],f=0;f<a;f++)d.push(E[(b>>2)+f]);return d}
    function $b(a,b){assert(0<=a.indexOf("j"),"getDynCaller should only be called with i64 sigs");var d=[];return function(){d.length=arguments.length;for(var f=0;f<arguments.length;f++)d[f]=arguments[f];-1!=a.indexOf("j")?(assert("dynCall_"+a in c,"bad function pointer type - no table for sig '"+a+"'"),d&&d.length?assert(d.length===a.substring(1).replace(/j/g,"--").length):assert(1==a.length),f=d&&d.length?c["dynCall_"+a].apply(null,[b].concat(d)):c["dynCall_"+a].call(null,b)):f=oa.get(b).apply(null,
    d);return f}}function ac(a,b){a=V(a);var d=-1!=a.indexOf("j")?$b(a,b):oa.get(b);"function"!==typeof d&&W("unknown function pointer with signature "+a+": "+b);return d}var bc=void 0;function cc(a){a=dc(a);var b=V(a);Z(a);return b}function ec(a,b){function d(k){g[k]||Ib[k]||(Jb[k]?Jb[k].forEach(d):(f.push(k),g[k]=!0))}var f=[],g={};b.forEach(d);throw new bc(a+": "+f.map(cc).join([", "]));}
    function fc(a,b,d){switch(b){case 0:return d?function(f){return J[f]}:function(f){return D[f]};case 1:return d?function(f){return xa[f>>1]}:function(f){return wa[f>>1]};case 2:return d?function(f){return E[f>>2]}:function(f){return K[f>>2]};default:throw new TypeError("Unknown integer type: "+a);}}function hc(a,b,d,f){a||(a=this);this.parent=a;this.h=a.h;this.fa=null;this.id=R.Lb++;this.name=b;this.mode=d;this.f={};this.g={};this.rdev=f}
    Object.defineProperties(hc.prototype,{read:{get:function(){return 365===(this.mode&365)},set:function(a){a?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146===(this.mode&146)},set:function(a){a?this.mode|=146:this.mode&=-147}},Hb:{get:function(){return R.l(this.mode)}},za:{get:function(){return R.ka(this.mode)}}});R.ib=hc;R.Ia();var Bb;if(v){var fs=require("fs"),zb=require("path");T.Ia()}for(var ic=Array(256),jc=0;256>jc;++jc)ic[jc]=String.fromCharCode(jc);Gb=ic;
    Nb=c.BindingError=Mb("BindingError");Ob=c.InternalError=Mb("InternalError");c.count_emval_handles=function(){for(var a=0,b=5;b<Y.length;++b)void 0!==Y[b]&&++a;return a};c.get_first_emval=function(){for(var a=5;a<Y.length;++a)if(void 0!==Y[a])return Y[a];return null};bc=c.UnboundTypeError=Mb("UnboundTypeError");function vb(a){var b=Array(ta(a)+1);a=ra(a,b,0,b.length);b.length=a;return b}Na.push({Db:function(){kc()}});
    var lc={__assert_fail:function(a,b,d,f){e("Assertion failed: "+(a?C(D,a,void 0):"")+", at: "+[b?b?C(D,b,void 0):"":"unknown filename",d,f?f?C(D,f,void 0):"":"unknown function"])},__indirect_function_table:oa,__sys_open:function(a,b,d){Db=d;try{var f=a?C(D,a,void 0):"";assert(void 0!=Db);Db+=4;return R.open(f,b,E[Db-4>>2]).fd}catch(g){return"undefined"!==typeof R&&g instanceof R.b||e(g),-g.H}},__sys_read:function(a,b,d){try{var f=Eb(a);return R.read(f,J,b,d)}catch(g){return"undefined"!==typeof R&&
    g instanceof R.b||e(g),-g.H}},_embind_register_bool:function(a,b,d,f,g){var k=Fb(d);b=V(b);X(a,{name:b,fromWireType:function(l){return!!l},toWireType:function(l,m){return m?f:g},argPackAdvance:8,readValueFromPointer:function(l){if(1===d)var m=J;else if(2===d)m=xa;else if(4===d)m=E;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(m[l>>k])},N:null})},_embind_register_emval:function(a,b){b=V(b);X(a,{name:b,fromWireType:function(d){var f=Y[d].value;4<d&&0===--Y[d].Rb&&
    (Y[d]=void 0,Qb.push(d));return f},toWireType:function(d,f){return Rb(f)},argPackAdvance:8,readValueFromPointer:Sb,N:null})},_embind_register_float:function(a,b,d){d=Fb(d);b=V(b);X(a,{name:b,fromWireType:function(f){return f},toWireType:function(f,g){if("number"!==typeof g&&"boolean"!==typeof g)throw new TypeError('Cannot convert "'+Tb(g)+'" to '+this.name);return g},argPackAdvance:8,readValueFromPointer:Ub(b,d),N:null})},_embind_register_function:function(a,b,d,f,g,k){var l=Zb(b,d);a=V(a);g=ac(f,
    g);Yb(a,function(){ec("Cannot call "+a+" due to unbound types",l)},b-1);Pb(l,function(m){var n=[m[0],null].concat(m.slice(1)),p=m=a,q=g,u=n.length;2>u&&W("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var w=null!==n[1]&&!1,x=!1,r=1;r<n.length;++r)if(null!==n[r]&&void 0===n[r].N){x=!0;break}var F="void"!==n[0].name,A="",G="";for(r=0;r<u-2;++r)A+=(0!==r?", ":"")+"arg"+r,G+=(0!==r?", ":"")+"arg"+r+"Wired";p="return function "+Kb(p)+"("+A+") {\nif (arguments.length !== "+
    (u-2)+") {\nthrowBindingError('function "+p+" called with ' + arguments.length + ' arguments, expected "+(u-2)+" args!');\n}\n";x&&(p+="var destructors = [];\n");var ya=x?"destructors":"null";A="throwBindingError invoker fn runDestructors retType classParam".split(" ");q=[W,q,k,Wb,n[0],n[1]];w&&(p+="var thisWired = classParam.toWireType("+ya+", this);\n");for(r=0;r<u-2;++r)p+="var arg"+r+"Wired = argType"+r+".toWireType("+ya+", arg"+r+"); // "+n[r+2].name+"\n",A.push("argType"+r),q.push(n[r+2]);w&&
    (G="thisWired"+(0<G.length?", ":"")+G);p+=(F?"var rv = ":"")+"invoker(fn"+(0<G.length?", ":"")+G+");\n";if(x)p+="runDestructors(destructors);\n";else for(r=w?1:2;r<n.length;++r)u=1===r?"thisWired":"arg"+(r-2)+"Wired",null!==n[r].N&&(p+=u+"_dtor("+u+"); // "+n[r].name+"\n",A.push(u+"_dtor"),q.push(n[r].N));F&&(p+="var ret = retType.fromWireType(rv);\nreturn ret;\n");A.push(p+"}\n");n=Vb(A).apply(null,q);r=b-1;if(!c.hasOwnProperty(m))throw new Ob("Replacing nonexistant public symbol");void 0!==c[m].G&&
    void 0!==r?c[m].G[r]=n:(c[m]=n,c[m].pb=r);return[]})},_embind_register_integer:function(a,b,d,f,g){function k(p){return p}b=V(b);-1===g&&(g=4294967295);var l=Fb(d);if(0===f){var m=32-8*d;k=function(p){return p<<m>>>m}}var n=-1!=b.indexOf("unsigned");X(a,{name:b,fromWireType:k,toWireType:function(p,q){if("number"!==typeof q&&"boolean"!==typeof q)throw new TypeError('Cannot convert "'+Tb(q)+'" to '+this.name);if(q<f||q>g)throw new TypeError('Passing a number "'+Tb(q)+'" from JS side to C/C++ side to an argument of type "'+
    b+'", which is outside the valid range ['+f+", "+g+"]!");return n?q>>>0:q|0},argPackAdvance:8,readValueFromPointer:fc(b,l,0!==f),N:null})},_embind_register_memory_view:function(a,b,d){function f(k){k>>=2;var l=K;return new g(I,l[k+1],l[k])}var g=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];d=V(d);X(a,{name:d,fromWireType:f,argPackAdvance:8,readValueFromPointer:f},{Fb:!0})},_embind_register_std_string:function(a,b){b=V(b);var d="std::string"===b;
    X(a,{name:b,fromWireType:function(f){var g=K[f>>2];if(d)for(var k=f+4,l=0;l<=g;++l){var m=f+4+l;if(l==g||0==D[m]){k=k?C(D,k,m-k):"";if(void 0===n)var n=k;else n+=String.fromCharCode(0),n+=k;k=m+1}}else{n=Array(g);for(l=0;l<g;++l)n[l]=String.fromCharCode(D[f+4+l]);n=n.join("")}Z(f);return n},toWireType:function(f,g){g instanceof ArrayBuffer&&(g=new Uint8Array(g));var k="string"===typeof g;k||g instanceof Uint8Array||g instanceof Uint8ClampedArray||g instanceof Int8Array||W("Cannot pass non-string to std::string");
    var l=(d&&k?function(){return ta(g)}:function(){return g.length})(),m=Cb(4+l+1);K[m>>2]=l;if(d&&k)sa(g,m+4,l+1);else if(k)for(k=0;k<l;++k){var n=g.charCodeAt(k);255<n&&(Z(m),W("String has UTF-16 code units that do not fit in 8 bits"));D[m+4+k]=n}else for(k=0;k<l;++k)D[m+4+k]=g[k];null!==f&&f.push(Z,m);return m},argPackAdvance:8,readValueFromPointer:Sb,N:function(f){Z(f)}})},_embind_register_std_wstring:function(a,b,d){d=V(d);if(2===b){var f=va;var g=za;var k=Aa;var l=function(){return wa};var m=1}else 4===
    b&&(f=Ba,g=Ca,k=Da,l=function(){return K},m=2);X(a,{name:d,fromWireType:function(n){for(var p=K[n>>2],q=l(),u,w=n+4,x=0;x<=p;++x){var r=n+4+x*b;if(x==p||0==q[r>>m])w=f(w,r-w),void 0===u?u=w:(u+=String.fromCharCode(0),u+=w),w=r+b}Z(n);return u},toWireType:function(n,p){"string"!==typeof p&&W("Cannot pass non-string to C++ string type "+d);var q=k(p),u=Cb(4+q+b);K[u>>2]=q>>m;g(p,u+4,q+b);null!==n&&n.push(Z,u);return u},argPackAdvance:8,readValueFromPointer:Sb,N:function(n){Z(n)}})},_embind_register_void:function(a,
    b){b=V(b);X(a,{ye:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},abort:function(){e()},emscripten_memcpy_big:function(a,b,d){D.copyWithin(a,b,b+d)},emscripten_resize_heap:function(a){a>>>=0;var b=D.length;assert(a>b);if(2147483648<a)return z("Cannot enlarge memory, asked to go up to "+a+" bytes, but the limit is 2147483648 bytes!"),!1;for(var d=1;4>=d;d*=2){var f=b*(1+.2/d);f=Math.min(f,a+100663296);f=Math.max(16777216,a,f);0<f%65536&&(f+=65536-f%65536);f=Math.min(2147483648,
    f);a:{var g=f;try{B.grow(g-I.byteLength+65535>>>16);Ga(B.buffer);var k=1;break a}catch(l){console.error("emscripten_realloc_buffer: Attempted to grow heap from "+I.byteLength+" bytes to "+g+" bytes, but got error: "+l)}k=void 0}if(k)return!0}z("Failed to grow the heap from "+b+" bytes to "+f+" bytes, not enough memory!");return!1},fd_close:function(a){try{var b=Eb(a);R.close(b);return 0}catch(d){return"undefined"!==typeof R&&d instanceof R.b||e(d),d.H}},fd_seek:function(a,b,d,f,g){try{var k=Eb(a);
    a=4294967296*d+(b>>>0);if(-9007199254740992>=a||9007199254740992<=a)return-61;R.v(k,a,f);ib=[k.position>>>0,(hb=k.position,1<=+Sa(hb)?0<hb?(Va(+Ua(hb/4294967296),4294967295)|0)>>>0:~~+Ta((hb-+(~~hb>>>0))/4294967296)>>>0:0)];E[g>>2]=ib[0];E[g+4>>2]=ib[1];k.wa&&0===a&&0===f&&(k.wa=null);return 0}catch(l){return"undefined"!==typeof R&&l instanceof R.b||e(l),l.H}},fd_write:function(a,b,d,f){try{a:{for(var g=Eb(a),k=a=0;k<d;k++){var l=R.write(g,J,E[b+8*k>>2],E[b+(8*k+4)>>2],void 0);if(0>l){var m=-1;break a}a+=
    l}m=a}E[f>>2]=m;return 0}catch(n){return"undefined"!==typeof R&&n instanceof R.b||e(n),n.H}},memory:B,setTempRet0:function(){}};
    (function(){function a(k){c.asm=k.exports;$a("wasm-instantiate")}function b(k){assert(c===g,"the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?");g=null;a(k.instance)}function d(k){return gb().then(function(l){return WebAssembly.instantiate(l,f)}).then(k,function(l){z("failed to asynchronously prepare wasm: "+l);e(l)})}var f={env:lc,wasi_snapshot_preview1:lc};Za("wasm-instantiate");var g=c;if(c.instantiateWasm)try{return c.instantiateWasm(f,
    a)}catch(k){return z("Module.instantiateWasm callback failed with error: "+k),!1}(function(){if(na||"function"!==typeof WebAssembly.instantiateStreaming||db()||bb("file://")||"function"!==typeof fetch)return d(b);fetch(cb,{credentials:"same-origin"}).then(function(k){return WebAssembly.instantiateStreaming(k,f).then(b,function(l){z("wasm streaming compile failed: "+l);z("falling back to ArrayBuffer instantiation");return d(b)})})})();return{}})();
    var kc=c.___wasm_call_ctors=N("__wasm_call_ctors"),Z=c._free=N("free"),Cb=c._malloc=N("malloc"),qb=c.___errno_location=N("__errno_location"),dc=c.___getTypeName=N("__getTypeName");c.___embind_register_native_and_builtin_types=N("__embind_register_native_and_builtin_types");c._fflush=N("fflush");c.stackSave=N("stackSave");c.stackRestore=N("stackRestore");c.stackAlloc=N("stackAlloc");c.dynCall_jiji=N("dynCall_jiji");c.__growWasmMemory=N("__growWasmMemory");
    Object.getOwnPropertyDescriptor(c,"intArrayFromString")||(c.intArrayFromString=function(){e("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"intArrayToString")||(c.intArrayToString=function(){e("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"ccall")||(c.ccall=function(){e("'ccall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"cwrap")||(c.cwrap=function(){e("'cwrap' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"setValue")||(c.setValue=function(){e("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"getValue")||(c.getValue=function(){e("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"allocate")||(c.allocate=function(){e("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"UTF8ArrayToString")||(c.UTF8ArrayToString=function(){e("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"UTF8ToString")||(c.UTF8ToString=function(){e("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"stringToUTF8Array")||(c.stringToUTF8Array=function(){e("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"stringToUTF8")||(c.stringToUTF8=function(){e("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"lengthBytesUTF8")||(c.lengthBytesUTF8=function(){e("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"stackTrace")||(c.stackTrace=function(){e("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"addOnPreRun")||(c.addOnPreRun=function(){e("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"addOnInit")||(c.addOnInit=function(){e("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"addOnPreMain")||(c.addOnPreMain=function(){e("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"addOnExit")||(c.addOnExit=function(){e("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"addOnPostRun")||(c.addOnPostRun=function(){e("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"writeStringToMemory")||(c.writeStringToMemory=function(){e("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"writeArrayToMemory")||(c.writeArrayToMemory=function(){e("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"writeAsciiToMemory")||(c.writeAsciiToMemory=function(){e("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"addRunDependency")||(c.addRunDependency=function(){e("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});Object.getOwnPropertyDescriptor(c,"removeRunDependency")||(c.removeRunDependency=function(){e("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});
    Object.getOwnPropertyDescriptor(c,"FS_createFolder")||(c.FS_createFolder=function(){e("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});Object.getOwnPropertyDescriptor(c,"FS_createPath")||(c.FS_createPath=function(){e("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});
    Object.getOwnPropertyDescriptor(c,"FS_createDataFile")||(c.FS_createDataFile=function(){e("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});Object.getOwnPropertyDescriptor(c,"FS_createPreloadedFile")||(c.FS_createPreloadedFile=function(){e("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});
    Object.getOwnPropertyDescriptor(c,"FS_createLazyFile")||(c.FS_createLazyFile=function(){e("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});Object.getOwnPropertyDescriptor(c,"FS_createLink")||(c.FS_createLink=function(){e("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});
    Object.getOwnPropertyDescriptor(c,"FS_createDevice")||(c.FS_createDevice=function(){e("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});Object.getOwnPropertyDescriptor(c,"FS_unlink")||(c.FS_unlink=function(){e("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")});
    Object.getOwnPropertyDescriptor(c,"getLEB")||(c.getLEB=function(){e("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"getFunctionTables")||(c.getFunctionTables=function(){e("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"alignFunctionTables")||(c.alignFunctionTables=function(){e("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"registerFunctions")||(c.registerFunctions=function(){e("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"addFunction")||(c.addFunction=function(){e("'addFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"removeFunction")||(c.removeFunction=function(){e("'removeFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"getFuncWrapper")||(c.getFuncWrapper=function(){e("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"prettyPrint")||(c.prettyPrint=function(){e("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"makeBigInt")||(c.makeBigInt=function(){e("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"dynCall")||(c.dynCall=function(){e("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"getCompilerSetting")||(c.getCompilerSetting=function(){e("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"print")||(c.print=function(){e("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"printErr")||(c.printErr=function(){e("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"getTempRet0")||(c.getTempRet0=function(){e("'getTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"setTempRet0")||(c.setTempRet0=function(){e("'setTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"callMain")||(c.callMain=function(){e("'callMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"abort")||(c.abort=function(){e("'abort' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"stringToNewUTF8")||(c.stringToNewUTF8=function(){e("'stringToNewUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"emscripten_realloc_buffer")||(c.emscripten_realloc_buffer=function(){e("'emscripten_realloc_buffer' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"ENV")||(c.ENV=function(){e("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"ERRNO_CODES")||(c.ERRNO_CODES=function(){e("'ERRNO_CODES' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"ERRNO_MESSAGES")||(c.ERRNO_MESSAGES=function(){e("'ERRNO_MESSAGES' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"setErrNo")||(c.setErrNo=function(){e("'setErrNo' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"DNS")||(c.DNS=function(){e("'DNS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"GAI_ERRNO_MESSAGES")||(c.GAI_ERRNO_MESSAGES=function(){e("'GAI_ERRNO_MESSAGES' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"Protocols")||(c.Protocols=function(){e("'Protocols' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"Sockets")||(c.Sockets=function(){e("'Sockets' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"traverseStack")||(c.traverseStack=function(){e("'traverseStack' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"UNWIND_CACHE")||(c.UNWIND_CACHE=function(){e("'UNWIND_CACHE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"withBuiltinMalloc")||(c.withBuiltinMalloc=function(){e("'withBuiltinMalloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"readAsmConstArgsArray")||(c.readAsmConstArgsArray=function(){e("'readAsmConstArgsArray' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"readAsmConstArgs")||(c.readAsmConstArgs=function(){e("'readAsmConstArgs' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"mainThreadEM_ASM")||(c.mainThreadEM_ASM=function(){e("'mainThreadEM_ASM' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"jstoi_q")||(c.jstoi_q=function(){e("'jstoi_q' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"jstoi_s")||(c.jstoi_s=function(){e("'jstoi_s' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"getExecutableName")||(c.getExecutableName=function(){e("'getExecutableName' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"listenOnce")||(c.listenOnce=function(){e("'listenOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"autoResumeAudioContext")||(c.autoResumeAudioContext=function(){e("'autoResumeAudioContext' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"dynCallLegacy")||(c.dynCallLegacy=function(){e("'dynCallLegacy' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"getDynCaller")||(c.getDynCaller=function(){e("'getDynCaller' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"dynCall")||(c.dynCall=function(){e("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"callRuntimeCallbacks")||(c.callRuntimeCallbacks=function(){e("'callRuntimeCallbacks' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"abortStackOverflow")||(c.abortStackOverflow=function(){e("'abortStackOverflow' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"reallyNegative")||(c.reallyNegative=function(){e("'reallyNegative' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"unSign")||(c.unSign=function(){e("'unSign' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"reSign")||(c.reSign=function(){e("'reSign' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"formatString")||(c.formatString=function(){e("'formatString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"PATH")||(c.PATH=function(){e("'PATH' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"PATH_FS")||(c.PATH_FS=function(){e("'PATH_FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"SYSCALLS")||(c.SYSCALLS=function(){e("'SYSCALLS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"syscallMmap2")||(c.syscallMmap2=function(){e("'syscallMmap2' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"syscallMunmap")||(c.syscallMunmap=function(){e("'syscallMunmap' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"JSEvents")||(c.JSEvents=function(){e("'JSEvents' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"specialHTMLTargets")||(c.specialHTMLTargets=function(){e("'specialHTMLTargets' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"maybeCStringToJsString")||(c.maybeCStringToJsString=function(){e("'maybeCStringToJsString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"findEventTarget")||(c.findEventTarget=function(){e("'findEventTarget' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"findCanvasEventTarget")||(c.findCanvasEventTarget=function(){e("'findCanvasEventTarget' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"polyfillSetImmediate")||(c.polyfillSetImmediate=function(){e("'polyfillSetImmediate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"demangle")||(c.demangle=function(){e("'demangle' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"demangleAll")||(c.demangleAll=function(){e("'demangleAll' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"jsStackTrace")||(c.jsStackTrace=function(){e("'jsStackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"stackTrace")||(c.stackTrace=function(){e("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"getEnvStrings")||(c.getEnvStrings=function(){e("'getEnvStrings' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"checkWasiClock")||(c.checkWasiClock=function(){e("'checkWasiClock' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"writeI53ToI64")||(c.writeI53ToI64=function(){e("'writeI53ToI64' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"writeI53ToI64Clamped")||(c.writeI53ToI64Clamped=function(){e("'writeI53ToI64Clamped' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"writeI53ToI64Signaling")||(c.writeI53ToI64Signaling=function(){e("'writeI53ToI64Signaling' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"writeI53ToU64Clamped")||(c.writeI53ToU64Clamped=function(){e("'writeI53ToU64Clamped' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"writeI53ToU64Signaling")||(c.writeI53ToU64Signaling=function(){e("'writeI53ToU64Signaling' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"readI53FromI64")||(c.readI53FromI64=function(){e("'readI53FromI64' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"readI53FromU64")||(c.readI53FromU64=function(){e("'readI53FromU64' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"convertI32PairToI53")||(c.convertI32PairToI53=function(){e("'convertI32PairToI53' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"convertU32PairToI53")||(c.convertU32PairToI53=function(){e("'convertU32PairToI53' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"Browser")||(c.Browser=function(){e("'Browser' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"funcWrappers")||(c.funcWrappers=function(){e("'funcWrappers' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"getFuncWrapper")||(c.getFuncWrapper=function(){e("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"setMainLoop")||(c.setMainLoop=function(){e("'setMainLoop' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});c.FS=R;Object.getOwnPropertyDescriptor(c,"MEMFS")||(c.MEMFS=function(){e("'MEMFS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"TTY")||(c.TTY=function(){e("'TTY' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"PIPEFS")||(c.PIPEFS=function(){e("'PIPEFS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"SOCKFS")||(c.SOCKFS=function(){e("'SOCKFS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"SDL_unicode")||(c.SDL_unicode=function(){e("'SDL_unicode' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"SDL_ttfContext")||(c.SDL_ttfContext=function(){e("'SDL_ttfContext' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"SDL_audio")||(c.SDL_audio=function(){e("'SDL_audio' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"SDL")||(c.SDL=function(){e("'SDL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"SDL_gfx")||(c.SDL_gfx=function(){e("'SDL_gfx' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"emval_handle_array")||(c.emval_handle_array=function(){e("'emval_handle_array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"emval_free_list")||(c.emval_free_list=function(){e("'emval_free_list' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"emval_symbols")||(c.emval_symbols=function(){e("'emval_symbols' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"init_emval")||(c.init_emval=function(){e("'init_emval' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"count_emval_handles")||(c.count_emval_handles=function(){e("'count_emval_handles' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"get_first_emval")||(c.get_first_emval=function(){e("'get_first_emval' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"getStringOrSymbol")||(c.getStringOrSymbol=function(){e("'getStringOrSymbol' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"requireHandle")||(c.requireHandle=function(){e("'requireHandle' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"emval_newers")||(c.emval_newers=function(){e("'emval_newers' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"craftEmvalAllocator")||(c.craftEmvalAllocator=function(){e("'craftEmvalAllocator' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"emval_get_global")||(c.emval_get_global=function(){e("'emval_get_global' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"emval_methodCallers")||(c.emval_methodCallers=function(){e("'emval_methodCallers' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"InternalError")||(c.InternalError=function(){e("'InternalError' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"BindingError")||(c.BindingError=function(){e("'BindingError' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"UnboundTypeError")||(c.UnboundTypeError=function(){e("'UnboundTypeError' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"PureVirtualError")||(c.PureVirtualError=function(){e("'PureVirtualError' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"init_embind")||(c.init_embind=function(){e("'init_embind' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"throwInternalError")||(c.throwInternalError=function(){e("'throwInternalError' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"throwBindingError")||(c.throwBindingError=function(){e("'throwBindingError' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"throwUnboundTypeError")||(c.throwUnboundTypeError=function(){e("'throwUnboundTypeError' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"ensureOverloadTable")||(c.ensureOverloadTable=function(){e("'ensureOverloadTable' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"exposePublicSymbol")||(c.exposePublicSymbol=function(){e("'exposePublicSymbol' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"replacePublicSymbol")||(c.replacePublicSymbol=function(){e("'replacePublicSymbol' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"extendError")||(c.extendError=function(){e("'extendError' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"createNamedFunction")||(c.createNamedFunction=function(){e("'createNamedFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"registeredInstances")||(c.registeredInstances=function(){e("'registeredInstances' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"getBasestPointer")||(c.getBasestPointer=function(){e("'getBasestPointer' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"registerInheritedInstance")||(c.registerInheritedInstance=function(){e("'registerInheritedInstance' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"unregisterInheritedInstance")||(c.unregisterInheritedInstance=function(){e("'unregisterInheritedInstance' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"getInheritedInstance")||(c.getInheritedInstance=function(){e("'getInheritedInstance' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"getInheritedInstanceCount")||(c.getInheritedInstanceCount=function(){e("'getInheritedInstanceCount' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"getLiveInheritedInstances")||(c.getLiveInheritedInstances=function(){e("'getLiveInheritedInstances' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"registeredTypes")||(c.registeredTypes=function(){e("'registeredTypes' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"awaitingDependencies")||(c.awaitingDependencies=function(){e("'awaitingDependencies' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"typeDependencies")||(c.typeDependencies=function(){e("'typeDependencies' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"registeredPointers")||(c.registeredPointers=function(){e("'registeredPointers' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"registerType")||(c.registerType=function(){e("'registerType' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"whenDependentTypesAreResolved")||(c.whenDependentTypesAreResolved=function(){e("'whenDependentTypesAreResolved' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"embind_charCodes")||(c.embind_charCodes=function(){e("'embind_charCodes' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"embind_init_charCodes")||(c.embind_init_charCodes=function(){e("'embind_init_charCodes' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"readLatin1String")||(c.readLatin1String=function(){e("'readLatin1String' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"getTypeName")||(c.getTypeName=function(){e("'getTypeName' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"heap32VectorToArray")||(c.heap32VectorToArray=function(){e("'heap32VectorToArray' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"requireRegisteredType")||(c.requireRegisteredType=function(){e("'requireRegisteredType' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"getShiftFromSize")||(c.getShiftFromSize=function(){e("'getShiftFromSize' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"integerReadValueFromPointer")||(c.integerReadValueFromPointer=function(){e("'integerReadValueFromPointer' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"enumReadValueFromPointer")||(c.enumReadValueFromPointer=function(){e("'enumReadValueFromPointer' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"floatReadValueFromPointer")||(c.floatReadValueFromPointer=function(){e("'floatReadValueFromPointer' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"simpleReadValueFromPointer")||(c.simpleReadValueFromPointer=function(){e("'simpleReadValueFromPointer' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"runDestructors")||(c.runDestructors=function(){e("'runDestructors' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"new_")||(c.new_=function(){e("'new_' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"craftInvokerFunction")||(c.craftInvokerFunction=function(){e("'craftInvokerFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"embind__requireFunction")||(c.embind__requireFunction=function(){e("'embind__requireFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"tupleRegistrations")||(c.tupleRegistrations=function(){e("'tupleRegistrations' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"structRegistrations")||(c.structRegistrations=function(){e("'structRegistrations' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"genericPointerToWireType")||(c.genericPointerToWireType=function(){e("'genericPointerToWireType' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"constNoSmartPtrRawPointerToWireType")||(c.constNoSmartPtrRawPointerToWireType=function(){e("'constNoSmartPtrRawPointerToWireType' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"nonConstNoSmartPtrRawPointerToWireType")||(c.nonConstNoSmartPtrRawPointerToWireType=function(){e("'nonConstNoSmartPtrRawPointerToWireType' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"init_RegisteredPointer")||(c.init_RegisteredPointer=function(){e("'init_RegisteredPointer' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"RegisteredPointer")||(c.RegisteredPointer=function(){e("'RegisteredPointer' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"RegisteredPointer_getPointee")||(c.RegisteredPointer_getPointee=function(){e("'RegisteredPointer_getPointee' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"RegisteredPointer_destructor")||(c.RegisteredPointer_destructor=function(){e("'RegisteredPointer_destructor' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"RegisteredPointer_deleteObject")||(c.RegisteredPointer_deleteObject=function(){e("'RegisteredPointer_deleteObject' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"RegisteredPointer_fromWireType")||(c.RegisteredPointer_fromWireType=function(){e("'RegisteredPointer_fromWireType' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"runDestructor")||(c.runDestructor=function(){e("'runDestructor' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"releaseClassHandle")||(c.releaseClassHandle=function(){e("'releaseClassHandle' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"finalizationGroup")||(c.finalizationGroup=function(){e("'finalizationGroup' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"detachFinalizer_deps")||(c.detachFinalizer_deps=function(){e("'detachFinalizer_deps' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"detachFinalizer")||(c.detachFinalizer=function(){e("'detachFinalizer' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"attachFinalizer")||(c.attachFinalizer=function(){e("'attachFinalizer' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"makeClassHandle")||(c.makeClassHandle=function(){e("'makeClassHandle' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"init_ClassHandle")||(c.init_ClassHandle=function(){e("'init_ClassHandle' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"ClassHandle")||(c.ClassHandle=function(){e("'ClassHandle' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"ClassHandle_isAliasOf")||(c.ClassHandle_isAliasOf=function(){e("'ClassHandle_isAliasOf' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"throwInstanceAlreadyDeleted")||(c.throwInstanceAlreadyDeleted=function(){e("'throwInstanceAlreadyDeleted' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"ClassHandle_clone")||(c.ClassHandle_clone=function(){e("'ClassHandle_clone' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"ClassHandle_delete")||(c.ClassHandle_delete=function(){e("'ClassHandle_delete' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"deletionQueue")||(c.deletionQueue=function(){e("'deletionQueue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"ClassHandle_isDeleted")||(c.ClassHandle_isDeleted=function(){e("'ClassHandle_isDeleted' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"ClassHandle_deleteLater")||(c.ClassHandle_deleteLater=function(){e("'ClassHandle_deleteLater' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"flushPendingDeletes")||(c.flushPendingDeletes=function(){e("'flushPendingDeletes' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"delayFunction")||(c.delayFunction=function(){e("'delayFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"setDelayFunction")||(c.setDelayFunction=function(){e("'setDelayFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"RegisteredClass")||(c.RegisteredClass=function(){e("'RegisteredClass' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"shallowCopyInternalPointer")||(c.shallowCopyInternalPointer=function(){e("'shallowCopyInternalPointer' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"downcastPointer")||(c.downcastPointer=function(){e("'downcastPointer' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"upcastPointer")||(c.upcastPointer=function(){e("'upcastPointer' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"validateThis")||(c.validateThis=function(){e("'validateThis' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"char_0")||(c.char_0=function(){e("'char_0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"char_9")||(c.char_9=function(){e("'char_9' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"makeLegalFunctionName")||(c.makeLegalFunctionName=function(){e("'makeLegalFunctionName' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"NODEFS")||(c.NODEFS=function(){e("'NODEFS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"WORKERFS")||(c.WORKERFS=function(){e("'WORKERFS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"warnOnce")||(c.warnOnce=function(){e("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"stackSave")||(c.stackSave=function(){e("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"stackRestore")||(c.stackRestore=function(){e("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"stackAlloc")||(c.stackAlloc=function(){e("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"AsciiToString")||(c.AsciiToString=function(){e("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"stringToAscii")||(c.stringToAscii=function(){e("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"UTF16ToString")||(c.UTF16ToString=function(){e("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"stringToUTF16")||(c.stringToUTF16=function(){e("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"lengthBytesUTF16")||(c.lengthBytesUTF16=function(){e("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"UTF32ToString")||(c.UTF32ToString=function(){e("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"stringToUTF32")||(c.stringToUTF32=function(){e("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"lengthBytesUTF32")||(c.lengthBytesUTF32=function(){e("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});
    Object.getOwnPropertyDescriptor(c,"allocateUTF8")||(c.allocateUTF8=function(){e("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});Object.getOwnPropertyDescriptor(c,"allocateUTF8OnStack")||(c.allocateUTF8OnStack=function(){e("'allocateUTF8OnStack' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")});c.writeStackCookie=Ia;c.checkStackCookie=Ja;
    Object.getOwnPropertyDescriptor(c,"ALLOC_NORMAL")||Object.defineProperty(c,"ALLOC_NORMAL",{configurable:!0,get:function(){e("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});Object.getOwnPropertyDescriptor(c,"ALLOC_STACK")||Object.defineProperty(c,"ALLOC_STACK",{configurable:!0,get:function(){e("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});
    Object.getOwnPropertyDescriptor(c,"ALLOC_NONE")||Object.defineProperty(c,"ALLOC_NONE",{configurable:!0,get:function(){e("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}});var mc;Wa=function nc(){mc||oc();mc||(Wa=nc)};
    function oc(){function a(){if(!mc&&(mc=!0,c.calledRun=!0,!pa)){Ja();assert(!Qa);Qa=!0;c.noFSInit||R.U.ja||R.U();jb(Na);Ja();R.ab=!1;jb(Oa);aa(c);if(c.onRuntimeInitialized)c.onRuntimeInitialized();assert(!c._main,'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]');Ja();if(c.postRun)for("function"==typeof c.postRun&&(c.postRun=[c.postRun]);c.postRun.length;){var b=c.postRun.shift();Pa.unshift(b)}jb(Pa)}}if(!(0<L)){Ia();if(c.preRun)for("function"==
    typeof c.preRun&&(c.preRun=[c.preRun]);c.preRun.length;)Ra();jb(Ma);0<L||(c.setStatus?(c.setStatus("Running..."),setTimeout(function(){setTimeout(function(){c.setStatus("")},1);a()},1)):a(),Ja())}}c.run=oc;if(c.preInit)for("function"==typeof c.preInit&&(c.preInit=[c.preInit]);0<c.preInit.length;)c.preInit.pop()();noExitRuntime=!0;oc();
    
    
      return WebSketch.ready
    }
    );
    })();
    if (typeof exports === 'object' && typeof module === 'object')
          module.exports = WebSketch;
        else if (typeof define === 'function' && define['amd'])
          define([], function() { return WebSketch; });
        else if (typeof exports === 'object')
          exports["WebSketch"] = WebSketch;
        