var WORKER_ENABLED=!!(window.URL&&window.Blob&&window.Worker);function __GET_FUNC_BODY__(A){return A.trim().match(/^function\s*\w*\s*\([\w\s,]*\)\s*{([\w\W]*?)}$/)[1]}function __GLUE_EXEC__(E){var Q=!1;try{Q=!!new SharedArrayBuffer(0)}catch(A){}var A="function"==typeof importScripts,B="__CODE_BRIDGE__"+ +new Date;(A?self:window)[B]={onHeader:function(A){E.postMessage({type:"header",data:A})},onMediaInfo:function(A){E.postMessage({type:"mediaInfo",data:A})},onAudioDataSize:function(A){E.audioBufferSize=A.size,E.audioBuffer=E._malloc(E.audioBufferSize),E._codecSetAudioBuffer(E.audioBuffer)},onAudioData:function(A){var I=A.timestamp;E.audioTimestamps.push(I);var B=E.HEAPU8.subarray(E.audioBuffer,E.audioBuffer+E.audioBufferSize),g=null;Q?(g=new Uint8Array(new SharedArrayBuffer(B.byteLength))).set(B):g=new Uint8Array(B),E._free(E.audioBuffer),E.audioBuffer=null,E.postMessage({type:"audio",data:{buffer:g.buffer,timestamp:I}},Q?null:[g.buffer])},onVideoDataSize:function(A){null==E.videoBuffer&&(E.videoBufferSize=A.size,E.videoBuffer=E._malloc(E.videoBufferSize),Q&&(E.videoSharedBuffer=new SharedArrayBuffer(A.size))),E._codecSetVideoBuffer(E.videoBuffer)},onVideoData:function(A){var I=A.timestamp;E.videoTimestamps.push(I);var B=E.HEAPU8.subarray(E.videoBuffer,E.videoBuffer+E.videoBufferSize),g=null;Q?(g=new Uint8Array(E.videoSharedBuffer)).set(B):g=new Uint8Array(B),E.postMessage({type:"video",data:{buffer:g.buffer,timestamp:I,width:A.width,height:A.height,stride0:A.stride0,stride1:A.stride1}},Q?null:[g.buffer])},onComplete:function(){E.postMessage({type:"complete"})}};var I={audioTimestamps:[],videoTimestamps:[],audioBufferSize:0,videoBufferSize:0,audioBuffer:null,videoBuffer:null,postMessage:A?postMessage.bind(self):function(){},onRuntimeInitialized:function(){E._codecInit();var A=B.split("");A=A.map(function(A){return A.charCodeAt(0)}).concat(0);var I=E._malloc(A.length-1);E.HEAPU8.set(A,I),E._codecSetBridgeName(I),E.postMessage({type:"ready"})}};for(var g in E=E||{},I)I.hasOwnProperty(g)&&(E[g]=I[g]);E.onmessage=function(A){switch((B=A.data).type){case"decode":var I=new Uint8Array(B.buffer),B=E._malloc(I.length);E.HEAPU8.set(I,B);var g=+new Date;E.audioTimestamps=[],E.videoTimestamps=[],E._codecDecode(B,I.length);var Q=E.audioTimestamps,C=E.videoTimestamps;E.postMessage({type:"decode",data:{consume:+new Date-g,duration:Math.max(0>2];return(A=I+A+15&-16)>yA()&&EI("failure to dynamicAlloc - memory growth etc. is not supported there, call malloc/sbrk directly"),J[e>>2]=A,I}function a(A){(R=R||{})[A]||(R[A]=1,w(A))}B=null,Object.getOwnPropertyDescriptor(E,"arguments")||Object.defineProperty(E,"arguments",{get:function(){EI("Module.arguments has been replaced with plain arguments_")}}),E.thisProgram&&(D=E.thisProgram),Object.getOwnPropertyDescriptor(E,"thisProgram")||Object.defineProperty(E,"thisProgram",{get:function(){EI("Module.thisProgram has been replaced with plain thisProgram")}}),Object.getOwnPropertyDescriptor(E,"quit")||Object.defineProperty(E,"quit",{get:function(){EI("Module.quit has been replaced with plain quit_")}}),H(void 0===E.memoryInitializerPrefixURL,"Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead"),H(void 0===E.pthreadMainPrefixURL,"Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead"),H(void 0===E.cdInitializerPrefixURL,"Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead"),H(void 0===E.filePackagePrefixURL,"Module.filePackagePrefixURL option was removed, use Module.locateFile instead"),H(void 0===E.read,"Module.read option was removed (modify read_ in JS)"),H(void 0===E.readAsync,"Module.readAsync option was removed (modify readAsync in JS)"),H(void 0===E.readBinary,"Module.readBinary option was removed (modify readBinary in JS)"),H(void 0===E.setWindowTitle,"Module.setWindowTitle option was removed (modify setWindowTitle in JS)"),Object.getOwnPropertyDescriptor(E,"read")||Object.defineProperty(E,"read",{get:function(){EI("Module.read has been replaced with plain read_")}}),Object.getOwnPropertyDescriptor(E,"readAsync")||Object.defineProperty(E,"readAsync",{get:function(){EI("Module.readAsync has been replaced with plain readAsync")}}),Object.getOwnPropertyDescriptor(E,"readBinary")||Object.defineProperty(E,"readBinary",{get:function(){EI("Module.readBinary has been replaced with plain readBinary")}}),pA=XA=function(){EI("cannot use the stack before compiled code is ready to run, and has provided stack access")};var R,U,y={"f64-rem":function(A,I){return A%I},debugger:function(){}},S=0;E.wasmBinary&&(U=E.wasmBinary),Object.getOwnPropertyDescriptor(E,"wasmBinary")||Object.defineProperty(E,"wasmBinary",{get:function(){EI("Module.wasmBinary has been replaced with plain wasmBinary")}}),Object.getOwnPropertyDescriptor(E,"noExitRuntime")||Object.defineProperty(E,"noExitRuntime",{get:function(){EI("Module.noExitRuntime has been replaced with plain noExitRuntime")}}),"object"!=typeof WebAssembly&&EI("No WebAssembly support found. Build with -s WASM=0 to target JavaScript instead.");var h,s=!1;function H(A,I){A||EI("Assertion failed: "+I)}var k,Y,N,L,J,c,M="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function K(A,I,B){var g=I+B;for(B=I;A[B]&&!(g<=B);)++B;if(16>10,56320|1023&Q))}}else g+=String.fromCharCode(Q)}return g}function q(A){return A?K(N,A,void 0):""}function d(A,I,B,g){if(0>6}else{if(C<=65535){if(g<=B+2)break;I[B++]=224|C>>12}else{if(g<=B+3)break;2097152<=C&&a("Invalid Unicode code point 0x"+C.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)."),I[B++]=240|C>>18,I[B++]=128|C>>12&63}I[B++]=128|C>>6&63}I[B++]=128|63&C}}I[B]=0}}function t(A){for(var I=0,B=0;B>2]=5298560,J[0]=1668509029,L[1]=25459,115!==N[2]||99!==N[3])throw"Runtime error: expected the system to be little-endian!";function Z(A,I){EI("Invalid function pointer "+A+" called with signature '"+I+"'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this). Build with ASSERTIONS=2 for more info.")}function x(A){for(;0>2],I.v.push(A),S=g[Q],0|A;return A=J[A>>2],S=B,0|A}function DA(A){return E.___errno_location?J[E.___errno_location()>>2]=A:w("failed to set errno from JS"),A}E.___cxa_find_matching_catch=FA;var wA=[null,[],[]];function GA(A,I){var B=wA[A];H(B),0===I||10===I?((1===A?C:w)(K(B,0)),B.length=0):B.push(I)}var aA=0;function RA(){return J[(aA+=4)-4>>2]}var UA={};function yA(){return Y.length}function SA(){return SA.b||(SA.b=[]),SA.b.push(pA()),SA.b.length-1}function hA(A){return 0==A%4&&(0!=A%100||0==A%400)}function sA(A,I){for(var B=0,g=0;g<=I;B+=A[g++]);return B}var HA=[31,29,31,30,31,30,31,31,30,31,30,31],kA=[31,28,31,30,31,30,31,31,30,31,30,31];function YA(A,I){for(A=new Date(A.getTime());0g-A.getDate())){A.setDate(A.getDate()+I);break}I-=g-A.getDate()+1,A.setDate(1),B<11?A.setMonth(B+1):(A.setMonth(0),A.setFullYear(A.getFullYear()+1))}return A}function NA(A,I,B,g){function Q(A,I,B){for(A="number"==typeof A?A.toString():A||"";A.length>2];for(var D in g={J:J[g>>2],I:J[g+4>>2],l:J[g+8>>2],f:J[g+12>>2],c:J[g+16>>2],a:J[g+20>>2],m:J[g+24>>2],o:J[g+28>>2],$:J[g+32>>2],H:J[g+36>>2],K:F?q(F):""},B=q(B),F={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"})B=B.replace(new RegExp(D,"g"),F[D]);var w="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),G="January February March April May June July August September October November December".split(" ");for(D in F={"%a":function(A){return w[A.m].substring(0,3)},"%A":function(A){return w[A.m]},"%b":function(A){return G[A.c].substring(0,3)},"%B":function(A){return G[A.c]},"%C":function(A){return C((A.a+1900)/100|0,2)},"%d":function(A){return C(A.f,2)},"%e":function(A){return Q(A.f,2," ")},"%g":function(A){return o(A).toString().substring(2)},"%G":function(A){return o(A)},"%H":function(A){return C(A.l,2)},"%I":function(A){return 0==(A=A.l)?A=12:12I?0:(function(A,I){H(0<=A.length,"writeArrayToMemory array must have a length (should be an array or typed array)"),Y.set(A,I)}(D,A),D.length-1)}m.push(function(){var A=E._fflush;A&&A(0),wA[1].length&&GA(1,10),wA[2].length&&GA(2,10)});var LA="function"==typeof atob?atob:function(A){var I="",B=0;A=A.replace(/[^A-Za-z0-9\+\/=]/g,"");do{var g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(A.charAt(B++)),Q="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(A.charAt(B++)),C="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(A.charAt(B++)),E="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(A.charAt(B++));g=g<<2|Q>>4,Q=(15&Q)<<4|C>>2;var i=(3&C)<<6|E;I+=String.fromCharCode(g),64!==C&&(I+=String.fromCharCode(Q)),64!==E&&(I+=String.fromCharCode(i))}while(B>2],g=J[B>>2];else A.b=!0,gA.USER=gA.LOGNAME="web_user",gA.PATH="/",gA.PWD="/",gA.HOME="/home/web_user",gA.LANG=("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",gA._=D,g=V?nA(1024):G(1024),B=V?nA(256):G(256),J[B>>2]=g,J[I>>2]=B;I=[];var Q,C=0;for(Q in gA)if("string"==typeof gA[Q]){var E=Q+"="+gA[Q];I.push(E),C+=E.length}if(1024>0]=C.charCodeAt(o);Y[i>>0]=0,J[B+4*Q>>2]=g,g+=E.length+1}J[B+4*I.length>>2]=0},___cxa_allocate_exception:function(A){return nA(A)},___cxa_atexit:function(){return function(A,I){m.unshift({B:A,h:I})}.apply(null,arguments)},___cxa_begin_catch:function(A){var I=QA[A];return I&&!I.w&&(I.w=!0,MA.s--),I&&(I.j=!1),CA.push(A),(I=EA(A))&&QA[I].i++,A},___cxa_end_catch:function(){fA(0);var A=CA.pop();if(A){if(A=EA(A)){var I=QA[A];H(0>2],i=J[I+(8*C+4)>>2],o=0;o>2]=Q,0}catch(A){return void 0!==F&&A instanceof F.g||EI(A),-A.u}}.apply(null,arguments)},_abort:function(){E.abort()},_emscripten_asm_const_ii:function(A,I){return IA[A](I)},_emscripten_asm_const_iii:function(A,I,B){return IA[A](I,B)},_emscripten_asm_const_iiii:function(A,I,B,g){return IA[A](I,B,g)},_emscripten_asm_const_iiiiiii:function(A,I,B,g,Q,C,E){return IA[A](I,B,g,Q,C,E)},_emscripten_get_heap_size:yA,_emscripten_memcpy_big:function(A,I,B){N.set(N.subarray(I,I+B),A)},_emscripten_resize_heap:function(I){var A=yA();if(H(A>16),f(h.buffer);var g=1;break A}catch(A){console.error("emscripten_realloc_buffer: Attempted to grow heap from "+k.byteLength+" bytes to "+I+" bytes, but got error: "+A)}g=void 0}return!!g||(w("Failed to grow the heap from "+A+" bytes to "+B+" bytes, not enough memory!"),!1)},_getenv:function A(I){if(0===I)return 0;if(I=q(I),!gA.hasOwnProperty(I))return 0;A.b&&tA(A.b);var B=t(I=gA[I])+1,g=nA(B);return g&&d(I,Y,g,B),A.b=g},_gettimeofday:function(A){var I=Date.now();return J[A>>2]=I/1e3|0,J[A+4>>2]=I%1e3*1e3|0,0},_llvm_exp2_f64:function(A){return Math.pow(2,A)},_llvm_stackrestore:function(A){var I=SA.b[A];SA.b.splice(A,1),XA(I)},_llvm_stacksave:SA,_pthread_cond_wait:function(){return 0},_strftime_l:function(A,I,B,g){return NA(A,I,B,g)},abortOnCannotGrowMemory:function(A){EI("Cannot enlarge memory arrays to size "+A+" bytes (OOM). Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+Y.length+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")},DYNAMICTOP_PTR:e,___dso_handle:55472},k);E.asm=cA;var MA=E.__ZSt18uncaught_exceptionv=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.__ZSt18uncaught_exceptionv.apply(null,arguments)},KA=E.___cxa_can_catch=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.___cxa_can_catch.apply(null,arguments)},qA=E.___cxa_is_pointer_type=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.___cxa_is_pointer_type.apply(null,arguments)},dA=E.___emscripten_environ_constructor=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.___emscripten_environ_constructor.apply(null,arguments)};E._codecDecode=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm._codecDecode.apply(null,arguments)},E._codecFree=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm._codecFree.apply(null,arguments)},E._codecInit=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm._codecInit.apply(null,arguments)},E._codecSetAudioBuffer=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm._codecSetAudioBuffer.apply(null,arguments)},E._codecSetBridgeName=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm._codecSetBridgeName.apply(null,arguments)},E._codecSetVideoBuffer=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm._codecSetVideoBuffer.apply(null,arguments)},E._codecTry2Seek=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm._codecTry2Seek.apply(null,arguments)};var tA=E._free=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm._free.apply(null,arguments)},nA=E._malloc=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm._malloc.apply(null,arguments)},fA=E._setThrew=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm._setThrew.apply(null,arguments)};E.establishStackSpace=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.establishStackSpace.apply(null,arguments)},E.stackAlloc=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.stackAlloc.apply(null,arguments)};var eA,XA=E.stackRestore=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.stackRestore.apply(null,arguments)},pA=E.stackSave=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.stackSave.apply(null,arguments)},ZA=E.dynCall_dii=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_dii.apply(null,arguments)},xA=E.dynCall_i=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_i.apply(null,arguments)},lA=E.dynCall_ii=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_ii.apply(null,arguments)},WA=E.dynCall_iid=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_iid.apply(null,arguments)},rA=E.dynCall_iii=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_iii.apply(null,arguments)},mA=E.dynCall_iiii=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_iiii.apply(null,arguments)},OA=E.dynCall_iiiii=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_iiiii.apply(null,arguments)},VA=E.dynCall_iiiiid=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_iiiiid.apply(null,arguments)},bA=E.dynCall_iiiiii=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_iiiiii.apply(null,arguments)},TA=E.dynCall_iiiiiii=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_iiiiiii.apply(null,arguments)},jA=E.dynCall_iiiiiiii=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_iiiiiiii.apply(null,arguments)},uA=E.dynCall_iiiiiiiii=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_iiiiiiiii.apply(null,arguments)},PA=E.dynCall_iiiiiiiiiiii=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_iiiiiiiiiiii.apply(null,arguments)},zA=E.dynCall_v=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_v.apply(null,arguments)},vA=E.dynCall_vi=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_vi.apply(null,arguments)},_A=E.dynCall_vii=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_vii.apply(null,arguments)},$A=E.dynCall_viii=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_viii.apply(null,arguments)},AI=E.dynCall_viiii=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_viiii.apply(null,arguments)},II=E.dynCall_viiiiiii=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_viiiiiii.apply(null,arguments)},BI=E.dynCall_viiiiiiiiii=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_viiiiiiiiii.apply(null,arguments)},gI=E.dynCall_viiiiiiiiiiiiiii=function(){return H(V,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),H(!0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_viiiiiiiiiiiiiii.apply(null,arguments)};function QI(){function A(){if(!eA&&(eA=!0,!s)){if(p(),H(!V),V=!0,x(W),p(),x(r),E.onRuntimeInitialized&&E.onRuntimeInitialized(),H(!E._main,'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]'),p(),E.postRun)for("function"==typeof E.postRun&&(E.postRun=[E.postRun]);E.postRun.length;){var A=E.postRun.shift();O.unshift(A)}x(O)}}if(!(0