From 60bcd241215f0053c2e606d17cf260276fc9316d Mon Sep 17 00:00:00 2001 From: Mark B Date: Wed, 30 Mar 2022 20:43:03 -0400 Subject: [PATCH] first HTML5 build --- Main.c | 263 +++++++++++++++++++++++++++++++++++++++++++ assets/sfx/boing.mp3 | Bin 0 -> 13800 bytes build-html5.sh | 3 + game.html | 1 + game.js | 1 + game.wasm | Bin 0 -> 332299 bytes 6 files changed, 268 insertions(+) create mode 100644 Main.c create mode 100644 assets/sfx/boing.mp3 create mode 100755 build-html5.sh create mode 100644 game.html create mode 100644 game.js create mode 100755 game.wasm diff --git a/Main.c b/Main.c new file mode 100644 index 0000000..ac1011a --- /dev/null +++ b/Main.c @@ -0,0 +1,263 @@ +#if defined(PLATFORM_WEB) + #include "/usr/local/include/raylib.h" + #include +#else + #include "raylib.h" +#endif + +// screen variables +static const int screenWidth = 800; +static const int screenHeight = 450; + +// Gamescreens +typedef enum GameScreen { TITLE = 0, GAMEPLAY, GAMEOVER, CREDITS } GameScreen; + +// structs +typedef struct Ball { + Vector2 position; + Vector2 speed; + float radius; + Color color; + bool active; +} Ball; + +typedef struct Player { + Rectangle hitbox; + int hp; +} Player; + +// Game variables +static GameScreen currentScreen = { 0 }; +static Music Bgm01 = { 0 }; +static Sound fxbounce = { 0 }; +static Player player = { 0 }; +static Ball ball = { 0 }; +static bool pause; +static bool mute; +static int pauseTimer; +static int BallFrameCounter; +static int selected = 0; + +// Game functions +static void GameInit(void); +static void UpdateGame(void); +static void DrawGame(void); +static void UpdateDrawFrame(void); +static void UnloadGame(void); + +int main(void) +{ + InitWindow(screenWidth, screenHeight, "Avoid"); + + InitAudioDevice(); + + GameInit(); + +#if defined(PLATFORM_WEB) + emscripten_set_main_loop(UpdateDrawFrame, 0, 1); +#else + SetTargetFPS(60); + + while (!WindowShouldClose()) UpdateDrawFrame(); +#endif + + UnloadGame(); + + CloseWindow(); + + return 0; +} + +void GameInit(void) +{ + currentScreen = TITLE; + + Bgm01 = LoadMusicStream("assets/bgm/01-Slipin-Sunday.ogg"); + + fxbounce = LoadSound("assets/sfx/boing.mp3"); + + + PlayMusicStream(Bgm01); + SetMasterVolume(0.2); + + player.hp = 30; + player.hitbox = (Rectangle) { + GetScreenWidth()/2.0f - 30, + GetScreenHeight()/2.0f - 30, + 50, + 50 + }; + + ball.position = (Vector2){ 50, 50 }; + ball.radius = 20; + ball.speed = (Vector2){ 400.0f, 400.0f }; + ball.color = MAROON; + ball.active = true; + + pause = 0; + mute = 0; + + pauseTimer = 0; + BallFrameCounter = 0; +} + +void UpdateGame(void) +{ + if ((IsKeyDown(KEY_LEFT_SHIFT)) && (IsKeyPressed(KEY_F))) ToggleFullscreen(); + + switch(currentScreen) { + case TITLE: + if (IsKeyPressed(KEY_UP)) selected++; + if (IsKeyPressed(KEY_DOWN)) selected--; + if (selected > 0) selected--; + if (selected < -2) selected++; + + if ((selected == 0) && (IsKeyPressed(KEY_ENTER))) currentScreen = GAMEPLAY; + if ((selected == -1) && (IsKeyPressed(KEY_ENTER))) currentScreen = CREDITS; + if ((selected == -2) && (IsKeyPressed(KEY_ENTER))) OpenURL("https://gitdab.com/Canneddonuts/Avoid.git"); + break; + case GAMEPLAY: + UpdateMusicStream(Bgm01); + + if (IsKeyPressed(KEY_M)) { + mute = !mute; + + if (mute) PauseMusicStream(Bgm01); + else ResumeMusicStream(Bgm01); + } + + if (IsKeyPressed(KEY_ENTER)) pause = !pause; + + if (!pause) { + // Controls + if (IsKeyDown(KEY_LEFT)) player.hitbox.x -= GetFrameTime() * 300.0f; + if (IsKeyDown(KEY_RIGHT)) player.hitbox.x += GetFrameTime() * 300.0f; + if (IsKeyDown(KEY_UP)) player.hitbox.y -= GetFrameTime() * 300.0f; + if (IsKeyDown(KEY_DOWN)) player.hitbox.y += GetFrameTime() * 300.0f; + + // Player to da wallz collies + if ((player.hitbox.x + player.hitbox.width) >= GetScreenWidth()) player.hitbox.x = GetScreenWidth() - player.hitbox.width; + else if (player.hitbox.x <= 0) player.hitbox.x = 0; + + if ((player.hitbox.y + player.hitbox.height) >= GetScreenHeight()) player.hitbox.y = GetScreenHeight() - player.hitbox.height; + else if (player.hitbox.y <= 0) player.hitbox.y = 0; + + if (IsKeyPressed(KEY_D)) ball.active = !ball.active; + if (IsKeyPressed(KEY_R)) { GameInit(); currentScreen = TITLE; } + if (ball.active) { + BallFrameCounter++; + // moveiement oof the balls + ball.position.x += GetFrameTime() * ball.speed.x; + ball.position.y += GetFrameTime() * ball.speed.y; + + + // Ballz to da wallz collies + if ((ball.position.x >= (GetScreenWidth() - ball.radius)) || (ball.position.x <= ball.radius)) { + ball.speed.x *= -1.0f; + if (!mute) PlaySoundMulti(fxbounce); + } + + if ((ball.position.y >= (GetScreenHeight() - ball.radius)) || (ball.position.y <= ball.radius)) { + ball.speed.y *= -1.0f; + if (!mute) PlaySoundMulti(fxbounce); + } + + if (CheckCollisionCircleRec(ball.position, ball.radius, player.hitbox)) player.hp--; + + if (BallFrameCounter==1000) ball.radius = 40; + if (BallFrameCounter==2000) ball.radius = 50; + if (BallFrameCounter==3000) ball.radius = 60; + if (BallFrameCounter==4000) ball.radius = 70; + if (BallFrameCounter==5000) ball.radius = 80; + } + + if (player.hp <= 0) currentScreen = GAMEOVER; + + } + else pauseTimer++; + + break; + case GAMEOVER: + if (IsKeyPressed(KEY_ENTER)) { + GameInit(); + currentScreen = GAMEPLAY; + } + break; + case CREDITS: + if (IsKeyPressed(KEY_ENTER)) currentScreen = TITLE; + default: break; + } +} + +void DrawGame(void) +{ + BeginDrawing(); + + ClearBackground(RAYWHITE); + + switch(currentScreen) { + case TITLE: + DrawRectangle(0, 0, screenWidth, screenHeight, ORANGE); + DrawText("Controls", 10, 10, 30, PURPLE); + DrawText("Press the arrow keys to move", 10, 40, 10, RED); + DrawText("Press 'ENTER' to pause", 10, 60, 10, RED); + DrawText("Press 'M' to mute", 10, 80, 10, RED); + DrawText("Press 'LSHIFT' + 'F' for full screen", 10, 100, 10, RED); + DrawText("Press 'R' to restart", 10, 120, 10, RED); + DrawText("Press 'ENTER' to select an option", 10, 140, 10, RED); + DrawText("Avoid", 330, 20, 50, BLUE); + if (selected == 0) DrawText("PLAY", 360, 220, 20, WHITE); + else DrawText("PLAY", 360, 220, 20, BLUE); + + if (selected == -1) DrawText("CREDITS", 340, 240, 20, WHITE); + else DrawText("CREDITS", 340, 240, 20, BLUE); + + if (selected == -2) DrawText("SOURCE CODE", 315, 260, 20, WHITE); + else DrawText("SOURCE CODE", 315, 260, 20, BLUE); + break; + + case GAMEPLAY: + DrawRectangle(0, 0, screenWidth, screenHeight, BLACK); + DrawFPS(10, 430); + DrawText(TextFormat("HP: %i", player.hp), 10, 10, 20, RED); + DrawText(TextFormat("BALL FRAMES: %i", BallFrameCounter), 10, 30, 20, BLUE); + DrawText(TextFormat("BALL SIZE: %f", ball.radius), 10, 50, 20, PINK); + if (ball.active) DrawCircleV(ball.position, (float)ball.radius, ball.color); + DrawRectangleRec(player.hitbox, BLUE); + if (pause && ((pauseTimer/30)%2)) DrawText("PAUSED", 330, 190, 30, PURPLE); + break; + + case GAMEOVER: + DrawRectangle(0, 0, screenWidth, screenHeight, BLUE); + DrawText("GAMEOVER", 250, 20, 50, RED); + DrawText("PRESS ENTER TO RESET", 270, 220, 20, WHITE); + break; + + case CREDITS: + DrawRectangle(0, 0, screenWidth, screenHeight, GREEN); + DrawText("Avoid", 330, 20, 50, PINK); + DrawText("Programming by M-C-O-B", 10, 210, 20, BLUE); + DrawText("Morale support by Tobi/Tobrella and Jelly_man", 10, 240, 20, BLUE); + DrawText("Powered by raylib 4.0", 10, 270, 20, BLUE); + DrawText("A Canneddonuts project 2022", 10, 310, 40, RED); + DrawText("Press 'ENTER' ", 10, 350, 20, WHITE); + break; + + default: break; + } + + EndDrawing(); +} + + +void UpdateDrawFrame(void) +{ + UpdateGame(); + DrawGame(); +} + +void UnloadGame(void) +{ + UnloadMusicStream(Bgm01); + UnloadSound(fxbounce); +} diff --git a/assets/sfx/boing.mp3 b/assets/sfx/boing.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..585ea87947678cc718e3080ebb110e14ebcd1a8d GIT binary patch literal 13800 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 z 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 literal 0 HcmV?d00001 diff --git a/build-html5.sh b/build-html5.sh new file mode 100755 index 0000000..66a07a2 --- /dev/null +++ b/build-html5.sh @@ -0,0 +1,3 @@ +#!/bin/sh +emcc -o game.html Main.c -Os -Wall /usr/local/lib/libraylib.a -I. -I/usr/local/include/raylib.h -L. -L/usr/local/lib/libraylib.a -s USE_GLFW=3 -s ASYNCIFY -DPLATFORM_WEB + diff --git a/game.html b/game.html new file mode 100644 index 0000000..46c5adf --- /dev/null +++ b/game.html @@ -0,0 +1 @@ +Emscripten-Generated Codeimage/svg+xml
Downloading...
Resize canvasLock/hide mouse pointer    
\ No newline at end of file diff --git a/game.js b/game.js new file mode 100644 index 0000000..cd4664c --- /dev/null +++ b/game.js @@ -0,0 +1 @@ +var Module=typeof Module!="undefined"?Module:{};var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof importScripts=="function";var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;let toLog=e;err("exiting due to exception: "+toLog)}var fs;var nodePath;var requireNodeFS;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}requireNodeFS=(()=>{if(!nodePath){fs=require("fs");nodePath=require("path")}});read_=function shell_read(filename,binary){requireNodeFS();filename=nodePath["normalize"](filename);return fs.readFileSync(filename,binary?undefined:"utf8")};readBinary=(filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}return ret});readAsync=((filename,onload,onerror)=>{requireNodeFS();filename=nodePath["normalize"](filename);fs.readFile(filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})});if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);if(typeof module!="undefined"){module["exports"]=Module}process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",function(reason){throw reason});quit_=((status,toThrow)=>{if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}logExceptionOnExit(toThrow);process["exit"](status)});Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=(url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText});if(ENVIRONMENT_IS_WORKER){readBinary=(url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)})}readAsync=((url,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=(()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()});xhr.onerror=onerror;xhr.send(null)})}setWindowTitle=(title=>document.title=title)}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);Object.assign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;if(typeof WebAssembly!="object"){abort("no native wasm support detected")}function setValue(ptr,value,type="i8",noSafe){if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":HEAP8[ptr>>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math.abs(tempDouble)>=1?tempDouble>0?(Math.min(+Math.floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var wasmMemory;var ABORT=false;var EXITSTATUS;function assert(condition,text){if(!condition){abort(text)}}function getCFunc(ident){var func=Module["_"+ident];return func}function ccall(ident,returnType,argTypes,args,opts){var toC={"string":function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret},"array":function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string")return UTF8ToString(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}function allocateUTF8(str){var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8Array(str,HEAP8,ret,size);return ret}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();FS.ignorePermissions=false;TTY.init();callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){{if(Module["onAbort"]){Module["onAbort"](what)}}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="game.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch=="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"a":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;exports=Asyncify.instrumentWasmExports(exports);Module["asm"]=exports;wasmMemory=Module["asm"]["_d"];updateGlobalBufferAndViews(wasmMemory.buffer);wasmTable=Module["asm"]["be"];addOnInit(Module["asm"]["$d"]);removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(function(instance){return instance}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch=="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);exports=Asyncify.instrumentWasmExports(exports);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync();return{}}var tempDouble;var tempI64;var ASM_CONSTS={54856:function(){if(document.fullscreenElement)document.exitFullscreen();else Module.requestFullscreen(false,true)},54959:function(){if((window.AudioContext||window.webkitAudioContext)===undefined){return 0}if(typeof miniaudio==="undefined"){miniaudio={};miniaudio.devices=[];miniaudio.track_device=function(device){for(var iDevice=0;iDevice0){if(miniaudio.devices[miniaudio.devices.length-1]==null){miniaudio.devices.pop()}else{break}}};miniaudio.untrack_device=function(device){for(var iDevice=0;iDevicedevice.intermediaryBufferSizeInBytes/channels/4){framesToProcess=device.intermediaryBufferSizeInBytes/channels/4}if(sendSilence){device.intermediaryBufferView.fill(0)}else{for(var iFrame=0;iFramedevice.intermediaryBufferSizeInBytes/channels/4){framesToProcess=device.intermediaryBufferSizeInBytes/channels/4}ccall("ma_device_process_pcm_frames_playback__webaudio","undefined",["number","number","number"],[pDevice,framesToProcess,device.intermediaryBuffer]);if(outputSilence){for(var iChannel=0;iChannel0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func=="number"){if(callback.arg===undefined){(function(){dynCall_v.call(null,func)})()}else{(function(a1){dynCall_vi.apply(null,[func,a1])})(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}function handleException(e){if(e instanceof ExitStatus||e=="unwind"){return EXITSTATUS}quit_(1,e)}function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+UTF8ToString(condition)+", at: "+[filename?UTF8ToString(filename):"unknown filename",line,func?UTF8ToString(func):"unknown function"])}function setErrNo(value){HEAP32[___errno_location()>>2]=value;return value}var PATH={splitPath:function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:function(path){if(path==="/")return"/";path=PATH.normalize(path);path=path.replace(/\/$/,"");var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},extname:function(path){return PATH.splitPath(path)[3]},join:function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))},join2:function(l,r){return PATH.normalize(l+"/"+r)}};function getRandomDevice(){if(typeof crypto=="object"&&typeof crypto["getRandomValues"]=="function"){var randomBuffer=new Uint8Array(1);return function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]}}else if(ENVIRONMENT_IS_NODE){try{var crypto_module=require("crypto");return function(){return crypto_module["randomBytes"](1)[0]}}catch(e){}}return function(){abort("randomDevice")}}var PATH_FS={resolve:function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(function(p){return!!p}),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:function(from,to){from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()},put_char:function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}}},default_tty1_ops:{put_char:function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};function mmapAlloc(size){abort()}var MEMFS={ops_table:null,mount:function(mount){return MEMFS.createNode(null,"/",16384|511,0)},createNode:function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node;parent.timestamp=node.timestamp}return node},getFileDataAsTypedArray:function(node){if(!node.contents)return new Uint8Array(0);if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)},expandFileStorage:function(node,newCapacity){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity>>0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0)},resizeFileStorage:function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0}else{var oldContents=node.contents;node.contents=new Uint8Array(newSize);if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize}},node_ops:{getattr:function(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr},setattr:function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}},lookup:function(parent,name){throw FS.genericErrors[44]},mknod:function(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)},rename:function(old_node,new_dir,new_name){if(FS.isDir(old_node.mode)){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){for(var i in new_node.contents){throw new FS.ErrnoError(55)}}}delete old_node.parent.contents[old_node.name];old_node.parent.timestamp=Date.now();old_node.name=new_name;new_dir.contents[new_name]=old_node;new_dir.timestamp=old_node.parent.timestamp;old_node.parent=new_dir},unlink:function(parent,name){delete parent.contents[name];parent.timestamp=Date.now()},rmdir:function(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(55)}delete parent.contents[name];parent.timestamp=Date.now()},readdir:function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries},symlink:function(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node},readlink:function(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(28)}return node.link}},stream_ops:{read:function(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length{path=PATH_FS.resolve(FS.cwd(),path);if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(32)}var parts=PATH.normalizeArray(path.split("/").filter(p=>!!p),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(32)}}}}return{path:current_path,node:current}},getPath:node=>{var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}},hashName:(parentid,name)=>{var hash=0;for(var i=0;i>>0)%FS.nameTable.length},hashAddNode:node=>{var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode:node=>{var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode:(parent,name)=>{var errCode=FS.mayLookup(parent);if(errCode){throw new FS.ErrnoError(errCode,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode:(parent,name,mode,rdev)=>{var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode:node=>{FS.hashRemoveNode(node)},isRoot:node=>{return node===node.parent},isMountpoint:node=>{return!!node.mounted},isFile:mode=>{return(mode&61440)===32768},isDir:mode=>{return(mode&61440)===16384},isLink:mode=>{return(mode&61440)===40960},isChrdev:mode=>{return(mode&61440)===8192},isBlkdev:mode=>{return(mode&61440)===24576},isFIFO:mode=>{return(mode&61440)===4096},isSocket:mode=>{return(mode&49152)===49152},flagModes:{"r":0,"r+":2,"w":577,"w+":578,"a":1089,"a+":1090},modeStringToFlags:str=>{var flags=FS.flagModes[str];if(typeof flags=="undefined"){throw new Error("Unknown file open mode: "+str)}return flags},flagsToPermissionString:flag=>{var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions:(node,perms)=>{if(FS.ignorePermissions){return 0}if(perms.includes("r")&&!(node.mode&292)){return 2}else if(perms.includes("w")&&!(node.mode&146)){return 2}else if(perms.includes("x")&&!(node.mode&73)){return 2}return 0},mayLookup:dir=>{var errCode=FS.nodePermissions(dir,"x");if(errCode)return errCode;if(!dir.node_ops.lookup)return 2;return 0},mayCreate:(dir,name)=>{try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete:(dir,name,isdir)=>{var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var errCode=FS.nodePermissions(dir,"wx");if(errCode){return errCode}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen:(node,flags)=>{if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd:(fd_start=0,fd_end=FS.MAX_OPEN_FDS)=>{for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStream:fd=>FS.streams[fd],createStream:(stream,fd_start,fd_end)=>{if(!FS.FSStream){FS.FSStream=function(){};FS.FSStream.prototype={object:{get:function(){return this.node},set:function(val){this.node=val}},isRead:{get:function(){return(this.flags&2097155)!==1}},isWrite:{get:function(){return(this.flags&2097155)!==0}},isAppend:{get:function(){return this.flags&1024}}}}stream=Object.assign(new FS.FSStream,stream);var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream:fd=>{FS.streams[fd]=null},chrdev_stream_ops:{open:stream=>{var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}},llseek:()=>{throw new FS.ErrnoError(70)}},major:dev=>dev>>8,minor:dev=>dev&255,makedev:(ma,mi)=>ma<<8|mi,registerDevice:(dev,ops)=>{FS.devices[dev]={stream_ops:ops}},getDevice:dev=>FS.devices[dev],getMounts:mount=>{var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts},syncfs:(populate,callback)=>{if(typeof populate=="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){err("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(errCode){FS.syncFSRequests--;return callback(errCode)}function done(errCode){if(errCode){if(!done.errored){done.errored=true;return doCallback(errCode)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(mount=>{if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount:(type,opts,mountpoint)=>{var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount:mountpoint=>{var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(hash=>{var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.includes(current.mount)){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup:(parent,name)=>{return parent.node_ops.lookup(parent,name)},mknod:(path,mode,dev)=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(28)}var errCode=FS.mayCreate(parent,name);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},create:(path,mode)=>{mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir:(path,mode)=>{mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree:(path,mode)=>{var dirs=path.split("/");var d="";for(var i=0;i{if(typeof dev=="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)},symlink:(oldpath,newpath)=>{if(!PATH_FS.resolve(oldpath)){throw new FS.ErrnoError(44)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var newname=PATH.basename(newpath);var errCode=FS.mayCreate(parent,newname);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(63)}return parent.node_ops.symlink(parent,newname,oldpath)},rename:(old_path,new_path)=>{var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node;if(!old_dir||!new_dir)throw new FS.ErrnoError(44);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(75)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH_FS.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(28)}relative=PATH_FS.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(55)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var errCode=FS.mayDelete(old_dir,old_name,isdir);if(errCode){throw new FS.ErrnoError(errCode)}errCode=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(errCode){throw new FS.ErrnoError(errCode)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(63)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(10)}if(new_dir!==old_dir){errCode=FS.nodePermissions(old_dir,"w");if(errCode){throw new FS.ErrnoError(errCode)}}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}},rmdir:path=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,true);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node)},readdir:path=>{var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node.node_ops.readdir){throw new FS.ErrnoError(54)}return node.node_ops.readdir(node)},unlink:path=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,false);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.unlink(parent,name);FS.destroyNode(node)},readlink:path=>{var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(44)}if(!link.node_ops.readlink){throw new FS.ErrnoError(28)}return PATH_FS.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))},stat:(path,dontFollow)=>{var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(44)}if(!node.node_ops.getattr){throw new FS.ErrnoError(63)}return node.node_ops.getattr(node)},lstat:path=>{return FS.stat(path,true)},chmod:(path,mode,dontFollow)=>{var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,timestamp:Date.now()})},lchmod:(path,mode)=>{FS.chmod(path,mode,true)},fchmod:(fd,mode)=>{var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}FS.chmod(stream.node,mode)},chown:(path,uid,gid,dontFollow)=>{var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}node.node_ops.setattr(node,{timestamp:Date.now()})},lchown:(path,uid,gid)=>{FS.chown(path,uid,gid,true)},fchown:(fd,uid,gid)=>{var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}FS.chown(stream.node,uid,gid)},truncate:(path,len)=>{if(len<0){throw new FS.ErrnoError(28)}var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(31)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(28)}var errCode=FS.nodePermissions(node,"w");if(errCode){throw new FS.ErrnoError(errCode)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})},ftruncate:(fd,len)=>{var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(28)}FS.truncate(stream.node,len)},utime:(path,atime,mtime)=>{var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{timestamp:Math.max(atime,mtime)})},open:(path,flags,mode,fd_start,fd_end)=>{if(path===""){throw new FS.ErrnoError(44)}flags=typeof flags=="string"?FS.modeStringToFlags(flags):flags;mode=typeof mode=="undefined"?438:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path=="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(20)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(44)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}if(!created){var errCode=FS.mayOpen(node,flags);if(errCode){throw new FS.ErrnoError(errCode)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512|131072);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1}}return stream},close:stream=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}stream.fd=null},isClosed:stream=>{return stream.fd===null},llseek:(stream,offset,whence)=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(70)}if(whence!=0&&whence!=1&&whence!=2){throw new FS.ErrnoError(28)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position},read:(stream,buffer,offset,length,position)=>{if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.read){throw new FS.ErrnoError(28)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead},write:(stream,buffer,offset,length,position,canOwn)=>{if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.write){throw new FS.ErrnoError(28)}if(stream.seekable&&stream.flags&1024){FS.llseek(stream,0,2)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;return bytesWritten},allocate:(stream,offset,length)=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(offset<0||length<=0){throw new FS.ErrnoError(28)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(stream.node.mode)){throw new FS.ErrnoError(43)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(138)}stream.stream_ops.allocate(stream,offset,length)},mmap:(stream,address,length,position,prot,flags)=>{if((prot&2)!==0&&(flags&2)===0&&(stream.flags&2097155)!==2){throw new FS.ErrnoError(2)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(2)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(43)}return stream.stream_ops.mmap(stream,address,length,position,prot,flags)},msync:(stream,buffer,offset,length,mmapFlags)=>{if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)},munmap:stream=>0,ioctl:(stream,cmd,arg)=>{if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(59)}return stream.stream_ops.ioctl(stream,cmd,arg)},readFile:(path,opts={})=>{opts.flags=opts.flags||0;opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf,0)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret},writeFile:(path,data,opts={})=>{opts.flags=opts.flags||577;var stream=FS.open(path,opts.flags,opts.mode);if(typeof data=="string"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,undefined,opts.canOwn)}else if(ArrayBuffer.isView(data)){FS.write(stream,data,0,data.byteLength,undefined,opts.canOwn)}else{throw new Error("Unsupported data type")}FS.close(stream)},cwd:()=>FS.currentPath,chdir:path=>{var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(44)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(54)}var errCode=FS.nodePermissions(lookup.node,"x");if(errCode){throw new FS.ErrnoError(errCode)}FS.currentPath=lookup.path},createDefaultDirectories:()=>{FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")},createDefaultDevices:()=>{FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:()=>0,write:(stream,buffer,offset,length,pos)=>length});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device=getRandomDevice();FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")},createSpecialDirectories:()=>{FS.mkdir("/proc");var proc_self=FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:()=>{var node=FS.createNode(proc_self,"fd",16384|511,73);node.node_ops={lookup:(parent,name)=>{var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(8);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>stream.path}};ret.parent=ret;return ret}};return node}},{},"/proc/self/fd")},createStandardStreams:()=>{if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin",0);var stdout=FS.open("/dev/stdout",1);var stderr=FS.open("/dev/stderr",1)},ensureErrnoError:()=>{if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=function(errno){this.errno=errno};this.setErrno(errno);this.message="FS error"};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[44].forEach(code=>{FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack=""})},staticInit:()=>{FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS}},init:(input,output,error)=>{FS.init.initialized=true;FS.ensureErrnoError();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()},quit:()=>{FS.init.initialized=false;for(var i=0;i{var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode},findObject:(path,dontResolveLastLink)=>{var ret=FS.analyzePath(path,dontResolveLastLink);if(ret.exists){return ret.object}else{return null}},analyzePath:(path,dontResolveLastLink)=>{try{var lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});path=lookup.path}catch(e){}var ret={isRoot:false,exists:false,error:0,name:null,path:null,object:null,parentExists:false,parentPath:null,parentObject:null};try{var lookup=FS.lookupPath(path,{parent:true});ret.parentExists=true;ret.parentPath=lookup.path;ret.parentObject=lookup.node;ret.name=PATH.basename(path);lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});ret.exists=true;ret.path=lookup.path;ret.object=lookup.node;ret.name=lookup.node.name;ret.isRoot=lookup.path==="/"}catch(e){ret.error=e.errno}return ret},createPath:(parent,path,canRead,canWrite)=>{parent=typeof parent=="string"?parent:FS.getPath(parent);var parts=path.split("/").reverse();while(parts.length){var part=parts.pop();if(!part)continue;var current=PATH.join2(parent,part);try{FS.mkdir(current)}catch(e){}parent=current}return current},createFile:(parent,name,properties,canRead,canWrite)=>{var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(canRead,canWrite);return FS.create(path,mode)},createDataFile:(parent,name,data,canRead,canWrite,canOwn)=>{var path=name;if(parent){parent=typeof parent=="string"?parent:FS.getPath(parent);path=name?PATH.join2(parent,name):parent}var mode=FS.getMode(canRead,canWrite);var node=FS.create(path,mode);if(data){if(typeof data=="string"){var arr=new Array(data.length);for(var i=0,len=data.length;i{var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(!!input,!!output);if(!FS.createDevice.major)FS.createDevice.major=64;var dev=FS.makedev(FS.createDevice.major++,0);FS.registerDevice(dev,{open:stream=>{stream.seekable=false},close:stream=>{if(output&&output.buffer&&output.buffer.length){output(10)}},read:(stream,buffer,offset,length,pos)=>{var bytesRead=0;for(var i=0;i{for(var i=0;i{if(obj.isDevice||obj.isFolder||obj.link||obj.contents)return true;if(typeof XMLHttpRequest!="undefined"){throw new 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.")}else if(read_){try{obj.contents=intArrayFromString(read_(obj.url),true);obj.usedBytes=obj.contents.length}catch(e){throw new FS.ErrnoError(29)}}else{throw new Error("Cannot load without read() or XMLHttpRequest.")}},createLazyFile:(parent,name,url,canRead,canWrite)=>{function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(from,to)=>{if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}};var lazyArray=this;lazyArray.setDataGetter(chunkNum=>{var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]=="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]=="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;out("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._length}},chunkSize:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(key=>{var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){FS.forceLoadFile(node);return fn.apply(null,arguments)}});stream_ops.read=((stream,buffer,offset,length,position)=>{FS.forceLoadFile(node);var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i{var fullname=name?PATH_FS.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}if(Browser.handledByPreloadPlugin(byteArray,fullname,finish,()=>{if(onerror)onerror();removeRunDependency(dep)})){return}finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){asyncLoad(url,byteArray=>processData(byteArray),onerror)}else{processData(url)}},indexedDB:()=>{return window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB},DB_NAME:()=>{return"EM_FS_"+window.location.pathname},DB_VERSION:20,DB_STORE_NAME:"FILE_DATA",saveFilesToDB:(paths,onload,onerror)=>{onload=onload||(()=>{});onerror=onerror||(()=>{});var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=(()=>{out("creating db");var db=openRequest.result;db.createObjectStore(FS.DB_STORE_NAME)});openRequest.onsuccess=(()=>{var db=openRequest.result;var transaction=db.transaction([FS.DB_STORE_NAME],"readwrite");var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach(path=>{var putRequest=files.put(FS.analyzePath(path).object.contents,path);putRequest.onsuccess=(()=>{ok++;if(ok+fail==total)finish()});putRequest.onerror=(()=>{fail++;if(ok+fail==total)finish()})});transaction.onerror=onerror});openRequest.onerror=onerror},loadFilesFromDB:(paths,onload,onerror)=>{onload=onload||(()=>{});onerror=onerror||(()=>{});var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=onerror;openRequest.onsuccess=(()=>{var db=openRequest.result;try{var transaction=db.transaction([FS.DB_STORE_NAME],"readonly")}catch(e){onerror(e);return}var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach(path=>{var getRequest=files.get(path);getRequest.onsuccess=(()=>{if(FS.analyzePath(path).exists){FS.unlink(path)}FS.createDataFile(PATH.dirname(path),PATH.basename(path),getRequest.result,true,true,true);ok++;if(ok+fail==total)finish()});getRequest.onerror=(()=>{fail++;if(ok+fail==total)finish()})});transaction.onerror=onerror});openRequest.onerror=onerror}};var SYSCALLS={DEFAULT_POLLMASK:5,calculateAt:function(dirfd,path,allowEmpty){if(path[0]==="/"){return path}var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=FS.getStream(dirfd);if(!dirstream)throw new FS.ErrnoError(8);dir=dirstream.path}if(path.length==0){if(!allowEmpty){throw new FS.ErrnoError(44)}return dir}return PATH.join2(dir,path)},doStat:function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-54}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math.abs(tempDouble)>=1?tempDouble>0?(Math.min(+Math.floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+40>>2]=tempI64[0],HEAP32[buf+44>>2]=tempI64[1];HEAP32[buf+48>>2]=4096;HEAP32[buf+52>>2]=stat.blocks;HEAP32[buf+56>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+76>>2]=0;tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math.abs(tempDouble)>=1?tempDouble>0?(Math.min(+Math.floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+80>>2]=tempI64[0],HEAP32[buf+84>>2]=tempI64[1];return 0},doMsync:function(addr,stream,len,flags,offset){var buffer=HEAPU8.slice(addr,addr+len);FS.msync(stream,buffer,offset,len,flags)},doMkdir:function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0},doMknod:function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-28}FS.mknod(path,mode,dev);return 0},doReadlink:function(path,buf,bufsize){if(bufsize<=0)return-28;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len},doAccess:function(path,amode){if(amode&~7){return-28}var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node){return-44}var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-2}return 0},doDup:function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd},doReadv:function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret},varargs:undefined,get:function(){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(ptr){var ret=UTF8ToString(ptr);return ret},getStreamFromFD:function(fd){var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(8);return stream},get64:function(low,high){return low}};function ___syscall_fcntl64(fd,cmd,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-28}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0}case 5:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 6:case 7:return 0;case 16:case 8:return-28;case 9:setErrNo(28);return-1;default:{return-28}}}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}function ___syscall_getcwd(buf,size){try{if(size===0)return-28;var cwd=FS.cwd();var cwdLengthInBytes=lengthBytesUTF8(cwd);if(size>2]=0;return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-59;return 0}case 21524:{if(!stream.tty)return-59;return 0}default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}function ___syscall_open(path,flags,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(path);var mode=varargs?SYSCALLS.get():0;var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}var readAsmConstArgsArray=[];function readAsmConstArgs(sigPtr,buf){readAsmConstArgsArray.length=0;var ch;buf>>=2;while(ch=HEAPU8[sigPtr++]){var readAsmConstArgsDouble=ch<105;if(readAsmConstArgsDouble&&buf&1)buf++;readAsmConstArgsArray.push(readAsmConstArgsDouble?HEAPF64[buf++>>1]:HEAP32[buf]);++buf}return readAsmConstArgsArray}function _emscripten_asm_const_int(code,sigPtr,argbuf){var args=readAsmConstArgs(sigPtr,argbuf);return ASM_CONSTS[code].apply(null,args)}var JSEvents={inEventHandler:0,removeAllEventListeners:function(){for(var i=JSEvents.eventHandlers.length-1;i>=0;--i){JSEvents._removeHandler(i)}JSEvents.eventHandlers=[];JSEvents.deferredCalls=[]},registerRemoveEventListeners:function(){if(!JSEvents.removeEventListenersRegistered){__ATEXIT__.push(JSEvents.removeAllEventListeners);JSEvents.removeEventListenersRegistered=true}},deferredCalls:[],deferCall:function(targetFunction,precedence,argsList){function arraysHaveEqualContent(arrA,arrB){if(arrA.length!=arrB.length)return false;for(var i in arrA){if(arrA[i]!=arrB[i])return false}return true}for(var i in JSEvents.deferredCalls){var call=JSEvents.deferredCalls[i];if(call.targetFunction==targetFunction&&arraysHaveEqualContent(call.argsList,argsList)){return}}JSEvents.deferredCalls.push({targetFunction:targetFunction,precedence:precedence,argsList:argsList});JSEvents.deferredCalls.sort(function(x,y){return x.precedence2?UTF8ToString(cString):cString}var specialHTMLTargets=[0,typeof document!="undefined"?document:0,typeof window!="undefined"?window:0];function findEventTarget(target){target=maybeCStringToJsString(target);var domElement=specialHTMLTargets[target]||(typeof document!="undefined"?document.querySelector(target):undefined);return domElement}function getBoundingClientRect(e){return specialHTMLTargets.indexOf(e)<0?e.getBoundingClientRect():{"left":0,"top":0}}function _emscripten_get_element_css_size(target,width,height){target=findEventTarget(target);if(!target)return-4;var rect=getBoundingClientRect(target);HEAPF64[width>>3]=rect.width;HEAPF64[height>>3]=rect.height;return 0}function fillGamepadEventData(eventStruct,e){HEAPF64[eventStruct>>3]=e.timestamp;for(var i=0;i>3]=e.axes[i]}for(var i=0;i>3]=e.buttons[i].value}else{HEAPF64[eventStruct+i*8+528>>3]=e.buttons[i]}}for(var i=0;i>2]=e.buttons[i].pressed}else{HEAP32[eventStruct+i*4+1040>>2]=e.buttons[i]==1}}HEAP32[eventStruct+1296>>2]=e.connected;HEAP32[eventStruct+1300>>2]=e.index;HEAP32[eventStruct+8>>2]=e.axes.length;HEAP32[eventStruct+12>>2]=e.buttons.length;stringToUTF8(e.id,eventStruct+1304,64);stringToUTF8(e.mapping,eventStruct+1368,64)}function _emscripten_get_gamepad_status(index,gamepadState){if(index<0||index>=JSEvents.lastGamepadState.length)return-5;if(!JSEvents.lastGamepadState[index])return-7;fillGamepadEventData(gamepadState,JSEvents.lastGamepadState[index]);return 0}var _emscripten_get_now;if(ENVIRONMENT_IS_NODE){_emscripten_get_now=(()=>{var t=process["hrtime"]();return t[0]*1e3+t[1]/1e6})}else _emscripten_get_now=(()=>performance.now());function _emscripten_get_num_gamepads(){return JSEvents.lastGamepadState.length}function __webgl_enable_ANGLE_instanced_arrays(ctx){var ext=ctx.getExtension("ANGLE_instanced_arrays");if(ext){ctx["vertexAttribDivisor"]=function(index,divisor){ext["vertexAttribDivisorANGLE"](index,divisor)};ctx["drawArraysInstanced"]=function(mode,first,count,primcount){ext["drawArraysInstancedANGLE"](mode,first,count,primcount)};ctx["drawElementsInstanced"]=function(mode,count,type,indices,primcount){ext["drawElementsInstancedANGLE"](mode,count,type,indices,primcount)};return 1}}function __webgl_enable_OES_vertex_array_object(ctx){var ext=ctx.getExtension("OES_vertex_array_object");if(ext){ctx["createVertexArray"]=function(){return ext["createVertexArrayOES"]()};ctx["deleteVertexArray"]=function(vao){ext["deleteVertexArrayOES"](vao)};ctx["bindVertexArray"]=function(vao){ext["bindVertexArrayOES"](vao)};ctx["isVertexArray"]=function(vao){return ext["isVertexArrayOES"](vao)};return 1}}function __webgl_enable_WEBGL_draw_buffers(ctx){var ext=ctx.getExtension("WEBGL_draw_buffers");if(ext){ctx["drawBuffers"]=function(n,bufs){ext["drawBuffersWEBGL"](n,bufs)};return 1}}function __webgl_enable_WEBGL_multi_draw(ctx){return!!(ctx.multiDrawWebgl=ctx.getExtension("WEBGL_multi_draw"))}var GL={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:[],offscreenCanvases:{},queries:[],stringCache:{},unpackAlignment:4,recordError:function recordError(errorCode){if(!GL.lastError){GL.lastError=errorCode}},getNewId:function(table){var ret=GL.counter++;for(var i=table.length;i>2]:-1;source+=UTF8ToString(HEAP32[string+i*4>>2],len<0?undefined:len)}return source},createContext:function(canvas,webGLContextAttributes){if(!canvas.getContextSafariWebGL2Fixed){canvas.getContextSafariWebGL2Fixed=canvas.getContext;function fixedGetContext(ver,attrs){var gl=canvas.getContextSafariWebGL2Fixed(ver,attrs);return ver=="webgl"==gl instanceof WebGLRenderingContext?gl:null}canvas.getContext=fixedGetContext}var ctx=canvas.getContext("webgl",webGLContextAttributes);if(!ctx)return 0;var handle=GL.registerContext(ctx,webGLContextAttributes);return handle},registerContext:function(ctx,webGLContextAttributes){var handle=GL.getNewId(GL.contexts);var context={handle:handle,attributes:webGLContextAttributes,version:webGLContextAttributes.majorVersion,GLctx:ctx};if(ctx.canvas)ctx.canvas.GLctxObject=context;GL.contexts[handle]=context;if(typeof webGLContextAttributes.enableExtensionsByDefault=="undefined"||webGLContextAttributes.enableExtensionsByDefault){GL.initExtensions(context)}return handle},makeContextCurrent:function(contextHandle){GL.currentContext=GL.contexts[contextHandle];Module.ctx=GLctx=GL.currentContext&&GL.currentContext.GLctx;return!(contextHandle&&!GLctx)},getContext:function(contextHandle){return GL.contexts[contextHandle]},deleteContext:function(contextHandle){if(GL.currentContext===GL.contexts[contextHandle])GL.currentContext=null;if(typeof JSEvents=="object")JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas);if(GL.contexts[contextHandle]&&GL.contexts[contextHandle].GLctx.canvas)GL.contexts[contextHandle].GLctx.canvas.GLctxObject=undefined;GL.contexts[contextHandle]=null},initExtensions:function(context){if(!context)context=GL.currentContext;if(context.initExtensionsDone)return;context.initExtensionsDone=true;var GLctx=context.GLctx;__webgl_enable_ANGLE_instanced_arrays(GLctx);__webgl_enable_OES_vertex_array_object(GLctx);__webgl_enable_WEBGL_draw_buffers(GLctx);{GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query")}__webgl_enable_WEBGL_multi_draw(GLctx);var exts=GLctx.getSupportedExtensions()||[];exts.forEach(function(ext){if(!ext.includes("lose_context")&&!ext.includes("debug")){GLctx.getExtension(ext)}})}};function _emscripten_glActiveTexture(x0){GLctx["activeTexture"](x0)}function _emscripten_glAttachShader(program,shader){GLctx.attachShader(GL.programs[program],GL.shaders[shader])}function _emscripten_glBeginQueryEXT(target,id){GLctx.disjointTimerQueryExt["beginQueryEXT"](target,GL.queries[id])}function _emscripten_glBindAttribLocation(program,index,name){GLctx.bindAttribLocation(GL.programs[program],index,UTF8ToString(name))}function _emscripten_glBindBuffer(target,buffer){GLctx.bindBuffer(target,GL.buffers[buffer])}function _emscripten_glBindFramebuffer(target,framebuffer){GLctx.bindFramebuffer(target,GL.framebuffers[framebuffer])}function _emscripten_glBindRenderbuffer(target,renderbuffer){GLctx.bindRenderbuffer(target,GL.renderbuffers[renderbuffer])}function _emscripten_glBindTexture(target,texture){GLctx.bindTexture(target,GL.textures[texture])}function _emscripten_glBindVertexArrayOES(vao){GLctx["bindVertexArray"](GL.vaos[vao])}function _emscripten_glBlendColor(x0,x1,x2,x3){GLctx["blendColor"](x0,x1,x2,x3)}function _emscripten_glBlendEquation(x0){GLctx["blendEquation"](x0)}function _emscripten_glBlendEquationSeparate(x0,x1){GLctx["blendEquationSeparate"](x0,x1)}function _emscripten_glBlendFunc(x0,x1){GLctx["blendFunc"](x0,x1)}function _emscripten_glBlendFuncSeparate(x0,x1,x2,x3){GLctx["blendFuncSeparate"](x0,x1,x2,x3)}function _emscripten_glBufferData(target,size,data,usage){GLctx.bufferData(target,data?HEAPU8.subarray(data,data+size):size,usage)}function _emscripten_glBufferSubData(target,offset,size,data){GLctx.bufferSubData(target,offset,HEAPU8.subarray(data,data+size))}function _emscripten_glCheckFramebufferStatus(x0){return GLctx["checkFramebufferStatus"](x0)}function _emscripten_glClear(x0){GLctx["clear"](x0)}function _emscripten_glClearColor(x0,x1,x2,x3){GLctx["clearColor"](x0,x1,x2,x3)}function _emscripten_glClearDepthf(x0){GLctx["clearDepth"](x0)}function _emscripten_glClearStencil(x0){GLctx["clearStencil"](x0)}function _emscripten_glColorMask(red,green,blue,alpha){GLctx.colorMask(!!red,!!green,!!blue,!!alpha)}function _emscripten_glCompileShader(shader){GLctx.compileShader(GL.shaders[shader])}function _emscripten_glCompressedTexImage2D(target,level,internalFormat,width,height,border,imageSize,data){GLctx["compressedTexImage2D"](target,level,internalFormat,width,height,border,data?HEAPU8.subarray(data,data+imageSize):null)}function _emscripten_glCompressedTexSubImage2D(target,level,xoffset,yoffset,width,height,format,imageSize,data){GLctx["compressedTexSubImage2D"](target,level,xoffset,yoffset,width,height,format,data?HEAPU8.subarray(data,data+imageSize):null)}function _emscripten_glCopyTexImage2D(x0,x1,x2,x3,x4,x5,x6,x7){GLctx["copyTexImage2D"](x0,x1,x2,x3,x4,x5,x6,x7)}function _emscripten_glCopyTexSubImage2D(x0,x1,x2,x3,x4,x5,x6,x7){GLctx["copyTexSubImage2D"](x0,x1,x2,x3,x4,x5,x6,x7)}function _emscripten_glCreateProgram(){var id=GL.getNewId(GL.programs);var program=GLctx.createProgram();program.name=id;program.maxUniformLength=program.maxAttributeLength=program.maxUniformBlockNameLength=0;program.uniformIdCounter=1;GL.programs[id]=program;return id}function _emscripten_glCreateShader(shaderType){var id=GL.getNewId(GL.shaders);GL.shaders[id]=GLctx.createShader(shaderType);return id}function _emscripten_glCullFace(x0){GLctx["cullFace"](x0)}function _emscripten_glDeleteBuffers(n,buffers){for(var i=0;i>2];var buffer=GL.buffers[id];if(!buffer)continue;GLctx.deleteBuffer(buffer);buffer.name=0;GL.buffers[id]=null}}function _emscripten_glDeleteFramebuffers(n,framebuffers){for(var i=0;i>2];var framebuffer=GL.framebuffers[id];if(!framebuffer)continue;GLctx.deleteFramebuffer(framebuffer);framebuffer.name=0;GL.framebuffers[id]=null}}function _emscripten_glDeleteProgram(id){if(!id)return;var program=GL.programs[id];if(!program){GL.recordError(1281);return}GLctx.deleteProgram(program);program.name=0;GL.programs[id]=null}function _emscripten_glDeleteQueriesEXT(n,ids){for(var i=0;i>2];var query=GL.queries[id];if(!query)continue;GLctx.disjointTimerQueryExt["deleteQueryEXT"](query);GL.queries[id]=null}}function _emscripten_glDeleteRenderbuffers(n,renderbuffers){for(var i=0;i>2];var renderbuffer=GL.renderbuffers[id];if(!renderbuffer)continue;GLctx.deleteRenderbuffer(renderbuffer);renderbuffer.name=0;GL.renderbuffers[id]=null}}function _emscripten_glDeleteShader(id){if(!id)return;var shader=GL.shaders[id];if(!shader){GL.recordError(1281);return}GLctx.deleteShader(shader);GL.shaders[id]=null}function _emscripten_glDeleteTextures(n,textures){for(var i=0;i>2];var texture=GL.textures[id];if(!texture)continue;GLctx.deleteTexture(texture);texture.name=0;GL.textures[id]=null}}function _emscripten_glDeleteVertexArraysOES(n,vaos){for(var i=0;i>2];GLctx["deleteVertexArray"](GL.vaos[id]);GL.vaos[id]=null}}function _emscripten_glDepthFunc(x0){GLctx["depthFunc"](x0)}function _emscripten_glDepthMask(flag){GLctx.depthMask(!!flag)}function _emscripten_glDepthRangef(x0,x1){GLctx["depthRange"](x0,x1)}function _emscripten_glDetachShader(program,shader){GLctx.detachShader(GL.programs[program],GL.shaders[shader])}function _emscripten_glDisable(x0){GLctx["disable"](x0)}function _emscripten_glDisableVertexAttribArray(index){GLctx.disableVertexAttribArray(index)}function _emscripten_glDrawArrays(mode,first,count){GLctx.drawArrays(mode,first,count)}function _emscripten_glDrawArraysInstancedANGLE(mode,first,count,primcount){GLctx["drawArraysInstanced"](mode,first,count,primcount)}var tempFixedLengthArray=[];function _emscripten_glDrawBuffersWEBGL(n,bufs){var bufArray=tempFixedLengthArray[n];for(var i=0;i>2]}GLctx["drawBuffers"](bufArray)}function _emscripten_glDrawElements(mode,count,type,indices){GLctx.drawElements(mode,count,type,indices)}function _emscripten_glDrawElementsInstancedANGLE(mode,count,type,indices,primcount){GLctx["drawElementsInstanced"](mode,count,type,indices,primcount)}function _emscripten_glEnable(x0){GLctx["enable"](x0)}function _emscripten_glEnableVertexAttribArray(index){GLctx.enableVertexAttribArray(index)}function _emscripten_glEndQueryEXT(target){GLctx.disjointTimerQueryExt["endQueryEXT"](target)}function _emscripten_glFinish(){GLctx["finish"]()}function _emscripten_glFlush(){GLctx["flush"]()}function _emscripten_glFramebufferRenderbuffer(target,attachment,renderbuffertarget,renderbuffer){GLctx.framebufferRenderbuffer(target,attachment,renderbuffertarget,GL.renderbuffers[renderbuffer])}function _emscripten_glFramebufferTexture2D(target,attachment,textarget,texture,level){GLctx.framebufferTexture2D(target,attachment,textarget,GL.textures[texture],level)}function _emscripten_glFrontFace(x0){GLctx["frontFace"](x0)}function __glGenObject(n,buffers,createFunction,objectTable){for(var i=0;i>2]=id}}function _emscripten_glGenBuffers(n,buffers){__glGenObject(n,buffers,"createBuffer",GL.buffers)}function _emscripten_glGenFramebuffers(n,ids){__glGenObject(n,ids,"createFramebuffer",GL.framebuffers)}function _emscripten_glGenQueriesEXT(n,ids){for(var i=0;i>2]=0;return}var id=GL.getNewId(GL.queries);query.name=id;GL.queries[id]=query;HEAP32[ids+i*4>>2]=id}}function _emscripten_glGenRenderbuffers(n,renderbuffers){__glGenObject(n,renderbuffers,"createRenderbuffer",GL.renderbuffers)}function _emscripten_glGenTextures(n,textures){__glGenObject(n,textures,"createTexture",GL.textures)}function _emscripten_glGenVertexArraysOES(n,arrays){__glGenObject(n,arrays,"createVertexArray",GL.vaos)}function _emscripten_glGenerateMipmap(x0){GLctx["generateMipmap"](x0)}function __glGetActiveAttribOrUniform(funcName,program,index,bufSize,length,size,type,name){program=GL.programs[program];var info=GLctx[funcName](program,index);if(info){var numBytesWrittenExclNull=name&&stringToUTF8(info.name,name,bufSize);if(length)HEAP32[length>>2]=numBytesWrittenExclNull;if(size)HEAP32[size>>2]=info.size;if(type)HEAP32[type>>2]=info.type}}function _emscripten_glGetActiveAttrib(program,index,bufSize,length,size,type,name){__glGetActiveAttribOrUniform("getActiveAttrib",program,index,bufSize,length,size,type,name)}function _emscripten_glGetActiveUniform(program,index,bufSize,length,size,type,name){__glGetActiveAttribOrUniform("getActiveUniform",program,index,bufSize,length,size,type,name)}function _emscripten_glGetAttachedShaders(program,maxCount,count,shaders){var result=GLctx.getAttachedShaders(GL.programs[program]);var len=result.length;if(len>maxCount){len=maxCount}HEAP32[count>>2]=len;for(var i=0;i>2]=id}}function _emscripten_glGetAttribLocation(program,name){return GLctx.getAttribLocation(GL.programs[program],UTF8ToString(name))}function writeI53ToI64(ptr,num){HEAPU32[ptr>>2]=num;HEAPU32[ptr+4>>2]=(num-HEAPU32[ptr>>2])/4294967296}function emscriptenWebGLGet(name_,p,type){if(!p){GL.recordError(1281);return}var ret=undefined;switch(name_){case 36346:ret=1;break;case 36344:if(type!=0&&type!=1){GL.recordError(1280)}return;case 36345:ret=0;break;case 34466:var formats=GLctx.getParameter(34467);ret=formats?formats.length:0;break}if(ret===undefined){var result=GLctx.getParameter(name_);switch(typeof result){case"number":ret=result;break;case"boolean":ret=result?1:0;break;case"string":GL.recordError(1280);return;case"object":if(result===null){switch(name_){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 34068:{ret=0;break}default:{GL.recordError(1280);return}}}else if(result instanceof Float32Array||result instanceof Uint32Array||result instanceof Int32Array||result instanceof Array){for(var i=0;i>2]=result[i];break;case 2:HEAPF32[p+i*4>>2]=result[i];break;case 4:HEAP8[p+i>>0]=result[i]?1:0;break}}return}else{try{ret=result.name|0}catch(e){GL.recordError(1280);err("GL_INVALID_ENUM in glGet"+type+"v: Unknown object returned from WebGL getParameter("+name_+")! (error: "+e+")");return}}break;default:GL.recordError(1280);err("GL_INVALID_ENUM in glGet"+type+"v: Native code calling glGet"+type+"v("+name_+") and it returns "+result+" of type "+typeof result+"!");return}}switch(type){case 1:writeI53ToI64(p,ret);break;case 0:HEAP32[p>>2]=ret;break;case 2:HEAPF32[p>>2]=ret;break;case 4:HEAP8[p>>0]=ret?1:0;break}}function _emscripten_glGetBooleanv(name_,p){emscriptenWebGLGet(name_,p,4)}function _emscripten_glGetBufferParameteriv(target,value,data){if(!data){GL.recordError(1281);return}HEAP32[data>>2]=GLctx.getBufferParameter(target,value)}function _emscripten_glGetError(){var error=GLctx.getError()||GL.lastError;GL.lastError=0;return error}function _emscripten_glGetFloatv(name_,p){emscriptenWebGLGet(name_,p,2)}function _emscripten_glGetFramebufferAttachmentParameteriv(target,attachment,pname,params){var result=GLctx.getFramebufferAttachmentParameter(target,attachment,pname);if(result instanceof WebGLRenderbuffer||result instanceof WebGLTexture){result=result.name|0}HEAP32[params>>2]=result}function _emscripten_glGetIntegerv(name_,p){emscriptenWebGLGet(name_,p,0)}function _emscripten_glGetProgramInfoLog(program,maxLength,length,infoLog){var log=GLctx.getProgramInfoLog(GL.programs[program]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull}function _emscripten_glGetProgramiv(program,pname,p){if(!p){GL.recordError(1281);return}if(program>=GL.counter){GL.recordError(1281);return}program=GL.programs[program];if(pname==35716){var log=GLctx.getProgramInfoLog(program);if(log===null)log="(unknown error)";HEAP32[p>>2]=log.length+1}else if(pname==35719){if(!program.maxUniformLength){for(var i=0;i>2]=program.maxUniformLength}else if(pname==35722){if(!program.maxAttributeLength){for(var i=0;i>2]=program.maxAttributeLength}else if(pname==35381){if(!program.maxUniformBlockNameLength){for(var i=0;i>2]=program.maxUniformBlockNameLength}else{HEAP32[p>>2]=GLctx.getProgramParameter(program,pname)}}function _emscripten_glGetQueryObjecti64vEXT(id,pname,params){if(!params){GL.recordError(1281);return}var query=GL.queries[id];var param;{param=GLctx.disjointTimerQueryExt["getQueryObjectEXT"](query,pname)}var ret;if(typeof param=="boolean"){ret=param?1:0}else{ret=param}writeI53ToI64(params,ret)}function _emscripten_glGetQueryObjectivEXT(id,pname,params){if(!params){GL.recordError(1281);return}var query=GL.queries[id];var param=GLctx.disjointTimerQueryExt["getQueryObjectEXT"](query,pname);var ret;if(typeof param=="boolean"){ret=param?1:0}else{ret=param}HEAP32[params>>2]=ret}function _emscripten_glGetQueryObjectui64vEXT(id,pname,params){if(!params){GL.recordError(1281);return}var query=GL.queries[id];var param;{param=GLctx.disjointTimerQueryExt["getQueryObjectEXT"](query,pname)}var ret;if(typeof param=="boolean"){ret=param?1:0}else{ret=param}writeI53ToI64(params,ret)}function _emscripten_glGetQueryObjectuivEXT(id,pname,params){if(!params){GL.recordError(1281);return}var query=GL.queries[id];var param=GLctx.disjointTimerQueryExt["getQueryObjectEXT"](query,pname);var ret;if(typeof param=="boolean"){ret=param?1:0}else{ret=param}HEAP32[params>>2]=ret}function _emscripten_glGetQueryivEXT(target,pname,params){if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.disjointTimerQueryExt["getQueryEXT"](target,pname)}function _emscripten_glGetRenderbufferParameteriv(target,pname,params){if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.getRenderbufferParameter(target,pname)}function _emscripten_glGetShaderInfoLog(shader,maxLength,length,infoLog){var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull}function _emscripten_glGetShaderPrecisionFormat(shaderType,precisionType,range,precision){var result=GLctx.getShaderPrecisionFormat(shaderType,precisionType);HEAP32[range>>2]=result.rangeMin;HEAP32[range+4>>2]=result.rangeMax;HEAP32[precision>>2]=result.precision}function _emscripten_glGetShaderSource(shader,bufSize,length,source){var result=GLctx.getShaderSource(GL.shaders[shader]);if(!result)return;var numBytesWrittenExclNull=bufSize>0&&source?stringToUTF8(result,source,bufSize):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull}function _emscripten_glGetShaderiv(shader,pname,p){if(!p){GL.recordError(1281);return}if(pname==35716){var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";var logLength=log?log.length+1:0;HEAP32[p>>2]=logLength}else if(pname==35720){var source=GLctx.getShaderSource(GL.shaders[shader]);var sourceLength=source?source.length+1:0;HEAP32[p>>2]=sourceLength}else{HEAP32[p>>2]=GLctx.getShaderParameter(GL.shaders[shader],pname)}}function stringToNewUTF8(jsString){var length=lengthBytesUTF8(jsString)+1;var cString=_malloc(length);stringToUTF8(jsString,cString,length);return cString}function _emscripten_glGetString(name_){var ret=GL.stringCache[name_];if(!ret){switch(name_){case 7939:var exts=GLctx.getSupportedExtensions()||[];exts=exts.concat(exts.map(function(e){return"GL_"+e}));ret=stringToNewUTF8(exts.join(" "));break;case 7936:case 7937:case 37445:case 37446:var s=GLctx.getParameter(name_);if(!s){GL.recordError(1280)}ret=s&&stringToNewUTF8(s);break;case 7938:var glVersion=GLctx.getParameter(7938);{glVersion="OpenGL ES 2.0 ("+glVersion+")"}ret=stringToNewUTF8(glVersion);break;case 35724:var glslVersion=GLctx.getParameter(35724);var ver_re=/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/;var ver_num=glslVersion.match(ver_re);if(ver_num!==null){if(ver_num[1].length==3)ver_num[1]=ver_num[1]+"0";glslVersion="OpenGL ES GLSL ES "+ver_num[1]+" ("+glslVersion+")"}ret=stringToNewUTF8(glslVersion);break;default:GL.recordError(1280)}GL.stringCache[name_]=ret}return ret}function _emscripten_glGetTexParameterfv(target,pname,params){if(!params){GL.recordError(1281);return}HEAPF32[params>>2]=GLctx.getTexParameter(target,pname)}function _emscripten_glGetTexParameteriv(target,pname,params){if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.getTexParameter(target,pname)}function jstoi_q(str){return parseInt(str)}function webglGetLeftBracePos(name){return name.slice(-1)=="]"&&name.lastIndexOf("[")}function webglPrepareUniformLocationsBeforeFirstUse(program){var uniformLocsById=program.uniformLocsById,uniformSizeAndIdsByName=program.uniformSizeAndIdsByName,i,j;if(!uniformLocsById){program.uniformLocsById=uniformLocsById={};program.uniformArrayNamesById={};for(i=0;i0?nm.slice(0,lb):nm;var id=program.uniformIdCounter;program.uniformIdCounter+=sz;uniformSizeAndIdsByName[arrayName]=[sz,id];for(j=0;j0){arrayIndex=jstoi_q(name.slice(leftBrace+1))>>>0;uniformBaseName=name.slice(0,leftBrace)}var sizeAndId=program.uniformSizeAndIdsByName[uniformBaseName];if(sizeAndId&&arrayIndex0?"["+webglLoc+"]":""))}return webglLoc}else{GL.recordError(1282)}}function emscriptenWebGLGetUniform(program,location,params,type){if(!params){GL.recordError(1281);return}program=GL.programs[program];webglPrepareUniformLocationsBeforeFirstUse(program);var data=GLctx.getUniform(program,webglGetUniformLocation(location));if(typeof data=="number"||typeof data=="boolean"){switch(type){case 0:HEAP32[params>>2]=data;break;case 2:HEAPF32[params>>2]=data;break}}else{for(var i=0;i>2]=data[i];break;case 2:HEAPF32[params+i*4>>2]=data[i];break}}}}function _emscripten_glGetUniformfv(program,location,params){emscriptenWebGLGetUniform(program,location,params,2)}function _emscripten_glGetUniformiv(program,location,params){emscriptenWebGLGetUniform(program,location,params,0)}function _emscripten_glGetVertexAttribPointerv(index,pname,pointer){if(!pointer){GL.recordError(1281);return}HEAP32[pointer>>2]=GLctx.getVertexAttribOffset(index,pname)}function emscriptenWebGLGetVertexAttrib(index,pname,params,type){if(!params){GL.recordError(1281);return}var data=GLctx.getVertexAttrib(index,pname);if(pname==34975){HEAP32[params>>2]=data&&data["name"]}else if(typeof data=="number"||typeof data=="boolean"){switch(type){case 0:HEAP32[params>>2]=data;break;case 2:HEAPF32[params>>2]=data;break;case 5:HEAP32[params>>2]=Math.fround(data);break}}else{for(var i=0;i>2]=data[i];break;case 2:HEAPF32[params+i*4>>2]=data[i];break;case 5:HEAP32[params+i*4>>2]=Math.fround(data[i]);break}}}}function _emscripten_glGetVertexAttribfv(index,pname,params){emscriptenWebGLGetVertexAttrib(index,pname,params,2)}function _emscripten_glGetVertexAttribiv(index,pname,params){emscriptenWebGLGetVertexAttrib(index,pname,params,5)}function _emscripten_glHint(x0,x1){GLctx["hint"](x0,x1)}function _emscripten_glIsBuffer(buffer){var b=GL.buffers[buffer];if(!b)return 0;return GLctx.isBuffer(b)}function _emscripten_glIsEnabled(x0){return GLctx["isEnabled"](x0)}function _emscripten_glIsFramebuffer(framebuffer){var fb=GL.framebuffers[framebuffer];if(!fb)return 0;return GLctx.isFramebuffer(fb)}function _emscripten_glIsProgram(program){program=GL.programs[program];if(!program)return 0;return GLctx.isProgram(program)}function _emscripten_glIsQueryEXT(id){var query=GL.queries[id];if(!query)return 0;return GLctx.disjointTimerQueryExt["isQueryEXT"](query)}function _emscripten_glIsRenderbuffer(renderbuffer){var rb=GL.renderbuffers[renderbuffer];if(!rb)return 0;return GLctx.isRenderbuffer(rb)}function _emscripten_glIsShader(shader){var s=GL.shaders[shader];if(!s)return 0;return GLctx.isShader(s)}function _emscripten_glIsTexture(id){var texture=GL.textures[id];if(!texture)return 0;return GLctx.isTexture(texture)}function _emscripten_glIsVertexArrayOES(array){var vao=GL.vaos[array];if(!vao)return 0;return GLctx["isVertexArray"](vao)}function _emscripten_glLineWidth(x0){GLctx["lineWidth"](x0)}function _emscripten_glLinkProgram(program){program=GL.programs[program];GLctx.linkProgram(program);program.uniformLocsById=0;program.uniformSizeAndIdsByName={}}function _emscripten_glPixelStorei(pname,param){if(pname==3317){GL.unpackAlignment=param}GLctx.pixelStorei(pname,param)}function _emscripten_glPolygonOffset(x0,x1){GLctx["polygonOffset"](x0,x1)}function _emscripten_glQueryCounterEXT(id,target){GLctx.disjointTimerQueryExt["queryCounterEXT"](GL.queries[id],target)}function computeUnpackAlignedImageSize(width,height,sizePerPixel,alignment){function roundedToNextMultipleOf(x,y){return x+y-1&-y}var plainRowSize=width*sizePerPixel;var alignedRowSize=roundedToNextMultipleOf(plainRowSize,alignment);return height*alignedRowSize}function __colorChannelsInGlTextureFormat(format){var colorChannels={5:3,6:4,8:2,29502:3,29504:4};return colorChannels[format-6402]||1}function heapObjectForWebGLType(type){type-=5120;if(type==1)return HEAPU8;if(type==4)return HEAP32;if(type==6)return HEAPF32;if(type==5||type==28922)return HEAPU32;return HEAPU16}function heapAccessShiftForWebGLHeap(heap){return 31-Math.clz32(heap.BYTES_PER_ELEMENT)}function emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,internalFormat){var heap=heapObjectForWebGLType(type);var shift=heapAccessShiftForWebGLHeap(heap);var byteSize=1<>shift,pixels+bytes>>shift)}function _emscripten_glReadPixels(x,y,width,height,format,type,pixels){var pixelData=emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,format);if(!pixelData){GL.recordError(1280);return}GLctx.readPixels(x,y,width,height,format,type,pixelData)}function _emscripten_glReleaseShaderCompiler(){}function _emscripten_glRenderbufferStorage(x0,x1,x2,x3){GLctx["renderbufferStorage"](x0,x1,x2,x3)}function _emscripten_glSampleCoverage(value,invert){GLctx.sampleCoverage(value,!!invert)}function _emscripten_glScissor(x0,x1,x2,x3){GLctx["scissor"](x0,x1,x2,x3)}function _emscripten_glShaderBinary(){GL.recordError(1280)}function _emscripten_glShaderSource(shader,count,string,length){var source=GL.getSource(shader,count,string,length);GLctx.shaderSource(GL.shaders[shader],source)}function _emscripten_glStencilFunc(x0,x1,x2){GLctx["stencilFunc"](x0,x1,x2)}function _emscripten_glStencilFuncSeparate(x0,x1,x2,x3){GLctx["stencilFuncSeparate"](x0,x1,x2,x3)}function _emscripten_glStencilMask(x0){GLctx["stencilMask"](x0)}function _emscripten_glStencilMaskSeparate(x0,x1){GLctx["stencilMaskSeparate"](x0,x1)}function _emscripten_glStencilOp(x0,x1,x2){GLctx["stencilOp"](x0,x1,x2)}function _emscripten_glStencilOpSeparate(x0,x1,x2,x3){GLctx["stencilOpSeparate"](x0,x1,x2,x3)}function _emscripten_glTexImage2D(target,level,internalFormat,width,height,border,format,type,pixels){GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixels?emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,internalFormat):null)}function _emscripten_glTexParameterf(x0,x1,x2){GLctx["texParameterf"](x0,x1,x2)}function _emscripten_glTexParameterfv(target,pname,params){var param=HEAPF32[params>>2];GLctx.texParameterf(target,pname,param)}function _emscripten_glTexParameteri(x0,x1,x2){GLctx["texParameteri"](x0,x1,x2)}function _emscripten_glTexParameteriv(target,pname,params){var param=HEAP32[params>>2];GLctx.texParameteri(target,pname,param)}function _emscripten_glTexSubImage2D(target,level,xoffset,yoffset,width,height,format,type,pixels){var pixelData=null;if(pixels)pixelData=emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,0);GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,pixelData)}function _emscripten_glUniform1f(location,v0){GLctx.uniform1f(webglGetUniformLocation(location),v0)}var miniTempWebGLFloatBuffers=[];function _emscripten_glUniform1fv(location,count,value){if(count<=288){var view=miniTempWebGLFloatBuffers[count-1];for(var i=0;i>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*4>>2)}GLctx.uniform1fv(webglGetUniformLocation(location),view)}function _emscripten_glUniform1i(location,v0){GLctx.uniform1i(webglGetUniformLocation(location),v0)}var __miniTempWebGLIntBuffers=[];function _emscripten_glUniform1iv(location,count,value){if(count<=288){var view=__miniTempWebGLIntBuffers[count-1];for(var i=0;i>2]}}else{var view=HEAP32.subarray(value>>2,value+count*4>>2)}GLctx.uniform1iv(webglGetUniformLocation(location),view)}function _emscripten_glUniform2f(location,v0,v1){GLctx.uniform2f(webglGetUniformLocation(location),v0,v1)}function _emscripten_glUniform2fv(location,count,value){if(count<=144){var view=miniTempWebGLFloatBuffers[2*count-1];for(var i=0;i<2*count;i+=2){view[i]=HEAPF32[value+4*i>>2];view[i+1]=HEAPF32[value+(4*i+4)>>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*8>>2)}GLctx.uniform2fv(webglGetUniformLocation(location),view)}function _emscripten_glUniform2i(location,v0,v1){GLctx.uniform2i(webglGetUniformLocation(location),v0,v1)}function _emscripten_glUniform2iv(location,count,value){if(count<=144){var view=__miniTempWebGLIntBuffers[2*count-1];for(var i=0;i<2*count;i+=2){view[i]=HEAP32[value+4*i>>2];view[i+1]=HEAP32[value+(4*i+4)>>2]}}else{var view=HEAP32.subarray(value>>2,value+count*8>>2)}GLctx.uniform2iv(webglGetUniformLocation(location),view)}function _emscripten_glUniform3f(location,v0,v1,v2){GLctx.uniform3f(webglGetUniformLocation(location),v0,v1,v2)}function _emscripten_glUniform3fv(location,count,value){if(count<=96){var view=miniTempWebGLFloatBuffers[3*count-1];for(var i=0;i<3*count;i+=3){view[i]=HEAPF32[value+4*i>>2];view[i+1]=HEAPF32[value+(4*i+4)>>2];view[i+2]=HEAPF32[value+(4*i+8)>>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*12>>2)}GLctx.uniform3fv(webglGetUniformLocation(location),view)}function _emscripten_glUniform3i(location,v0,v1,v2){GLctx.uniform3i(webglGetUniformLocation(location),v0,v1,v2)}function _emscripten_glUniform3iv(location,count,value){if(count<=96){var view=__miniTempWebGLIntBuffers[3*count-1];for(var i=0;i<3*count;i+=3){view[i]=HEAP32[value+4*i>>2];view[i+1]=HEAP32[value+(4*i+4)>>2];view[i+2]=HEAP32[value+(4*i+8)>>2]}}else{var view=HEAP32.subarray(value>>2,value+count*12>>2)}GLctx.uniform3iv(webglGetUniformLocation(location),view)}function _emscripten_glUniform4f(location,v0,v1,v2,v3){GLctx.uniform4f(webglGetUniformLocation(location),v0,v1,v2,v3)}function _emscripten_glUniform4fv(location,count,value){if(count<=72){var view=miniTempWebGLFloatBuffers[4*count-1];var heap=HEAPF32;value>>=2;for(var i=0;i<4*count;i+=4){var dst=value+i;view[i]=heap[dst];view[i+1]=heap[dst+1];view[i+2]=heap[dst+2];view[i+3]=heap[dst+3]}}else{var view=HEAPF32.subarray(value>>2,value+count*16>>2)}GLctx.uniform4fv(webglGetUniformLocation(location),view)}function _emscripten_glUniform4i(location,v0,v1,v2,v3){GLctx.uniform4i(webglGetUniformLocation(location),v0,v1,v2,v3)}function _emscripten_glUniform4iv(location,count,value){if(count<=72){var view=__miniTempWebGLIntBuffers[4*count-1];for(var i=0;i<4*count;i+=4){view[i]=HEAP32[value+4*i>>2];view[i+1]=HEAP32[value+(4*i+4)>>2];view[i+2]=HEAP32[value+(4*i+8)>>2];view[i+3]=HEAP32[value+(4*i+12)>>2]}}else{var view=HEAP32.subarray(value>>2,value+count*16>>2)}GLctx.uniform4iv(webglGetUniformLocation(location),view)}function _emscripten_glUniformMatrix2fv(location,count,transpose,value){if(count<=72){var view=miniTempWebGLFloatBuffers[4*count-1];for(var i=0;i<4*count;i+=4){view[i]=HEAPF32[value+4*i>>2];view[i+1]=HEAPF32[value+(4*i+4)>>2];view[i+2]=HEAPF32[value+(4*i+8)>>2];view[i+3]=HEAPF32[value+(4*i+12)>>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*16>>2)}GLctx.uniformMatrix2fv(webglGetUniformLocation(location),!!transpose,view)}function _emscripten_glUniformMatrix3fv(location,count,transpose,value){if(count<=32){var view=miniTempWebGLFloatBuffers[9*count-1];for(var i=0;i<9*count;i+=9){view[i]=HEAPF32[value+4*i>>2];view[i+1]=HEAPF32[value+(4*i+4)>>2];view[i+2]=HEAPF32[value+(4*i+8)>>2];view[i+3]=HEAPF32[value+(4*i+12)>>2];view[i+4]=HEAPF32[value+(4*i+16)>>2];view[i+5]=HEAPF32[value+(4*i+20)>>2];view[i+6]=HEAPF32[value+(4*i+24)>>2];view[i+7]=HEAPF32[value+(4*i+28)>>2];view[i+8]=HEAPF32[value+(4*i+32)>>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*36>>2)}GLctx.uniformMatrix3fv(webglGetUniformLocation(location),!!transpose,view)}function _emscripten_glUniformMatrix4fv(location,count,transpose,value){if(count<=18){var view=miniTempWebGLFloatBuffers[16*count-1];var heap=HEAPF32;value>>=2;for(var i=0;i<16*count;i+=16){var dst=value+i;view[i]=heap[dst];view[i+1]=heap[dst+1];view[i+2]=heap[dst+2];view[i+3]=heap[dst+3];view[i+4]=heap[dst+4];view[i+5]=heap[dst+5];view[i+6]=heap[dst+6];view[i+7]=heap[dst+7];view[i+8]=heap[dst+8];view[i+9]=heap[dst+9];view[i+10]=heap[dst+10];view[i+11]=heap[dst+11];view[i+12]=heap[dst+12];view[i+13]=heap[dst+13];view[i+14]=heap[dst+14];view[i+15]=heap[dst+15]}}else{var view=HEAPF32.subarray(value>>2,value+count*64>>2)}GLctx.uniformMatrix4fv(webglGetUniformLocation(location),!!transpose,view)}function _emscripten_glUseProgram(program){program=GL.programs[program];GLctx.useProgram(program);GLctx.currentProgram=program}function _emscripten_glValidateProgram(program){GLctx.validateProgram(GL.programs[program])}function _emscripten_glVertexAttrib1f(x0,x1){GLctx["vertexAttrib1f"](x0,x1)}function _emscripten_glVertexAttrib1fv(index,v){GLctx.vertexAttrib1f(index,HEAPF32[v>>2])}function _emscripten_glVertexAttrib2f(x0,x1,x2){GLctx["vertexAttrib2f"](x0,x1,x2)}function _emscripten_glVertexAttrib2fv(index,v){GLctx.vertexAttrib2f(index,HEAPF32[v>>2],HEAPF32[v+4>>2])}function _emscripten_glVertexAttrib3f(x0,x1,x2,x3){GLctx["vertexAttrib3f"](x0,x1,x2,x3)}function _emscripten_glVertexAttrib3fv(index,v){GLctx.vertexAttrib3f(index,HEAPF32[v>>2],HEAPF32[v+4>>2],HEAPF32[v+8>>2])}function _emscripten_glVertexAttrib4f(x0,x1,x2,x3,x4){GLctx["vertexAttrib4f"](x0,x1,x2,x3,x4)}function _emscripten_glVertexAttrib4fv(index,v){GLctx.vertexAttrib4f(index,HEAPF32[v>>2],HEAPF32[v+4>>2],HEAPF32[v+8>>2],HEAPF32[v+12>>2])}function _emscripten_glVertexAttribDivisorANGLE(index,divisor){GLctx["vertexAttribDivisor"](index,divisor)}function _emscripten_glVertexAttribPointer(index,size,type,normalized,stride,ptr){GLctx.vertexAttribPointer(index,size,type,!!normalized,stride,ptr)}function _emscripten_glViewport(x0,x1,x2,x3){GLctx["viewport"](x0,x1,x2,x3)}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function abortOnCannotGrowMemory(requestedSize){abort("OOM")}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;abortOnCannotGrowMemory(requestedSize)}function _emscripten_run_script(ptr){eval(UTF8ToString(ptr))}function _emscripten_sample_gamepad_data(){return(JSEvents.lastGamepadState=navigator.getGamepads?navigator.getGamepads():navigator.webkitGetGamepads?navigator.webkitGetGamepads():null)?0:-1}function findCanvasEventTarget(target){return findEventTarget(target)}function _emscripten_set_canvas_element_size(target,width,height){var canvas=findCanvasEventTarget(target);if(!canvas)return-4;canvas.width=width;canvas.height=height;return 0}function fillMouseEventData(eventStruct,e,target){HEAPF64[eventStruct>>3]=e.timeStamp;var idx=eventStruct>>2;HEAP32[idx+2]=e.screenX;HEAP32[idx+3]=e.screenY;HEAP32[idx+4]=e.clientX;HEAP32[idx+5]=e.clientY;HEAP32[idx+6]=e.ctrlKey;HEAP32[idx+7]=e.shiftKey;HEAP32[idx+8]=e.altKey;HEAP32[idx+9]=e.metaKey;HEAP16[idx*2+20]=e.button;HEAP16[idx*2+21]=e.buttons;HEAP32[idx+11]=e["movementX"];HEAP32[idx+12]=e["movementY"];var rect=getBoundingClientRect(target);HEAP32[idx+13]=e.clientX-rect.left;HEAP32[idx+14]=e.clientY-rect.top}function registerMouseEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.mouseEvent)JSEvents.mouseEvent=_malloc(72);target=findEventTarget(target);var mouseEventHandlerFunc=function(ev){var e=ev||event;fillMouseEventData(JSEvents.mouseEvent,e,target);if(function(a1,a2,a3){return dynCall_iiii.apply(null,[callbackfunc,a1,a2,a3])}(eventTypeId,JSEvents.mouseEvent,userData))e.preventDefault()};var eventHandler={target:target,allowsDeferredCalls:eventTypeString!="mousemove"&&eventTypeString!="mouseenter"&&eventTypeString!="mouseleave",eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:mouseEventHandlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_click_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){registerMouseEventCallback(target,userData,useCapture,callbackfunc,4,"click",targetThread);return 0}function registerGamepadEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.gamepadEvent)JSEvents.gamepadEvent=_malloc(1432);var gamepadEventHandlerFunc=function(ev){var e=ev||event;var gamepadEvent=JSEvents.gamepadEvent;fillGamepadEventData(gamepadEvent,e["gamepad"]);if(function(a1,a2,a3){return dynCall_iiii.apply(null,[callbackfunc,a1,a2,a3])}(eventTypeId,gamepadEvent,userData))e.preventDefault()};var eventHandler={target:findEventTarget(target),allowsDeferredCalls:true,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:gamepadEventHandlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_gamepadconnected_callback_on_thread(userData,useCapture,callbackfunc,targetThread){if(!navigator.getGamepads&&!navigator.webkitGetGamepads)return-1;registerGamepadEventCallback(2,userData,useCapture,callbackfunc,26,"gamepadconnected",targetThread);return 0}function _emscripten_set_gamepaddisconnected_callback_on_thread(userData,useCapture,callbackfunc,targetThread){if(!navigator.getGamepads&&!navigator.webkitGetGamepads)return-1;registerGamepadEventCallback(2,userData,useCapture,callbackfunc,27,"gamepaddisconnected",targetThread);return 0}function callUserCallback(func,synchronous){if(runtimeExited||ABORT){return}if(synchronous){func();return}try{func()}catch(e){handleException(e)}}function runtimeKeepalivePush(){runtimeKeepaliveCounter+=1}function runtimeKeepalivePop(){runtimeKeepaliveCounter-=1}function safeSetTimeout(func,timeout){return setTimeout(function(){callUserCallback(func)},timeout)}var Browser={mainLoop:{running:false,scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;setMainLoop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()},updateStatus:function(){if(Module["setStatus"]){var message=Module["statusMessage"]||"Please wait...";var remaining=Browser.mainLoop.remainingBlockers;var expected=Browser.mainLoop.expectedBlockers;if(remaining){if(remaining{assert(img.complete,"Image "+name+" could not be decoded");var canvas=document.createElement("canvas");canvas.width=img.width;canvas.height=img.height;var ctx=canvas.getContext("2d");ctx.drawImage(img,0,0);Module["preloadedImages"][name]=canvas;Browser.URLObject.revokeObjectURL(url);if(onload)onload(byteArray)});img.onerror=(event=>{out("Image "+url+" could not be decoded");if(onerror)onerror()});img.src=url};Module["preloadPlugins"].push(imagePlugin);var audioPlugin={};audioPlugin["canHandle"]=function audioPlugin_canHandle(name){return!Module.noAudioDecoding&&name.substr(-4)in{".ogg":1,".wav":1,".mp3":1}};audioPlugin["handle"]=function audioPlugin_handle(byteArray,name,onload,onerror){var done=false;function finish(audio){if(done)return;done=true;Module["preloadedAudios"][name]=audio;if(onload)onload(byteArray)}function fail(){if(done)return;done=true;Module["preloadedAudios"][name]=new Audio;if(onerror)onerror()}if(Browser.hasBlobConstructor){try{var b=new Blob([byteArray],{type:Browser.getMimetype(name)})}catch(e){return fail()}var url=Browser.URLObject.createObjectURL(b);var audio=new Audio;audio.addEventListener("canplaythrough",function(){finish(audio)},false);audio.onerror=function audio_onerror(event){if(done)return;out("warning: browser could not fully decode audio "+name+", trying slower base64 approach");function encode64(data){var BASE="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var PAD="=";var ret="";var leftchar=0;var leftbits=0;for(var i=0;i=6){var curr=leftchar>>leftbits-6&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;safeSetTimeout(function(){finish(audio)},1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===Module["canvas"]||document["mozPointerLockElement"]===Module["canvas"]||document["webkitPointerLockElement"]===Module["canvas"]||document["msPointerLockElement"]===Module["canvas"]}var canvas=Module["canvas"];if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||function(){};canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||function(){};canvas.exitPointerLock=canvas.exitPointerLock.bind(document);document.addEventListener("pointerlockchange",pointerLockChange,false);document.addEventListener("mozpointerlockchange",pointerLockChange,false);document.addEventListener("webkitpointerlockchange",pointerLockChange,false);document.addEventListener("mspointerlockchange",pointerLockChange,false);if(Module["elementPointerLock"]){canvas.addEventListener("click",function(ev){if(!Browser.pointerLock&&Module["canvas"].requestPointerLock){Module["canvas"].requestPointerLock();ev.preventDefault()}},false)}}},handledByPreloadPlugin:function(byteArray,fullname,finish,onerror){Browser.init();var handled=false;Module["preloadPlugins"].forEach(function(plugin){if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,onerror);handled=true}});return handled},createContext:function(canvas,useWebGL,setInModule,webGLContextAttributes){if(useWebGL&&Module.ctx&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false,majorVersion:1};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}if(typeof GL!="undefined"){contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}}}else{ctx=canvas.getContext("2d")}if(!ctx)return null;if(setInModule){if(!useWebGL)assert(typeof GLctx=="undefined","cannot set in module if GLctx is used, but we are a non-GL context that would replace it");Module.ctx=ctx;if(useWebGL)GL.makeContextCurrent(contextHandle);Module.useWebGL=useWebGL;Browser.moduleContextCreatedCallbacks.forEach(function(callback){callback()});Browser.init()}return ctx},destroyContext:function(canvas,useWebGL,setInModule){},fullscreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullscreen:function(lockPointer,resizeCanvas){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;if(typeof Browser.lockPointer=="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas=="undefined")Browser.resizeCanvas=false;var canvas=Module["canvas"];function fullscreenChange(){Browser.isFullscreen=false;var canvasContainer=canvas.parentNode;if((document["fullscreenElement"]||document["mozFullScreenElement"]||document["msFullscreenElement"]||document["webkitFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvasContainer){canvas.exitFullscreen=Browser.exitFullscreen;if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullscreen=true;if(Browser.resizeCanvas){Browser.setFullscreenCanvasSize()}else{Browser.updateCanvasDimensions(canvas)}}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas){Browser.setWindowedCanvasSize()}else{Browser.updateCanvasDimensions(canvas)}}if(Module["onFullScreen"])Module["onFullScreen"](Browser.isFullscreen);if(Module["onFullscreen"])Module["onFullscreen"](Browser.isFullscreen)}if(!Browser.fullscreenHandlersInstalled){Browser.fullscreenHandlersInstalled=true;document.addEventListener("fullscreenchange",fullscreenChange,false);document.addEventListener("mozfullscreenchange",fullscreenChange,false);document.addEventListener("webkitfullscreenchange",fullscreenChange,false);document.addEventListener("MSFullscreenChange",fullscreenChange,false)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullscreen=canvasContainer["requestFullscreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullscreen"]?function(){canvasContainer["webkitRequestFullscreen"](Element["ALLOW_KEYBOARD_INPUT"])}:null)||(canvasContainer["webkitRequestFullScreen"]?function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}:null);canvasContainer.requestFullscreen()},exitFullscreen:function(){if(!Browser.isFullscreen){return false}var CFS=document["exitFullscreen"]||document["cancelFullScreen"]||document["mozCancelFullScreen"]||document["msExitFullscreen"]||document["webkitCancelFullScreen"]||function(){};CFS.apply(document,[]);return true},nextRAF:0,fakeRequestAnimationFrame:function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)},requestAnimationFrame:function(func){if(typeof requestAnimationFrame=="function"){requestAnimationFrame(func);return}var RAF=Browser.fakeRequestAnimationFrame;RAF(func)},safeSetTimeout:function(func){return safeSetTimeout(func)},safeRequestAnimationFrame:function(func){return Browser.requestAnimationFrame(function(){callUserCallback(func)})},getMimetype:function(name){return{"jpg":"image/jpeg","jpeg":"image/jpeg","png":"image/png","bmp":"image/bmp","ogg":"audio/ogg","wav":"audio/wav","mp3":"audio/mpeg"}[name.substr(name.lastIndexOf(".")+1)]},getUserMedia:function(func){if(!window.getUserMedia){window.getUserMedia=navigator["getUserMedia"]||navigator["mozGetUserMedia"]}window.getUserMedia(func)},getMovementX:function(event){return event["movementX"]||event["mozMovementX"]||event["webkitMovementX"]||0},getMovementY:function(event){return event["movementY"]||event["mozMovementY"]||event["webkitMovementY"]||0},getMouseWheelDelta:function(event){var delta=0;switch(event.type){case"DOMMouseScroll":delta=event.detail/3;break;case"mousewheel":delta=event.wheelDelta/120;break;case"wheel":delta=event.deltaY;switch(event.deltaMode){case 0:delta/=100;break;case 1:delta/=3;break;case 2:delta*=80;break;default:throw"unrecognized mouse wheel delta mode: "+event.deltaMode}break;default:throw"unrecognized mouse wheel event: "+event.type}return delta},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;var scrollX=typeof window.scrollX!="undefined"?window.scrollX:window.pageXOffset;var scrollY=typeof window.scrollY!="undefined"?window.scrollY:window.pageYOffset;if(event.type==="touchstart"||event.type==="touchend"||event.type==="touchmove"){var touch=event.touch;if(touch===undefined){return}var adjustedX=touch.pageX-(scrollX+rect.left);var adjustedY=touch.pageY-(scrollY+rect.top);adjustedX=adjustedX*(cw/rect.width);adjustedY=adjustedY*(ch/rect.height);var coords={x:adjustedX,y:adjustedY};if(event.type==="touchstart"){Browser.lastTouches[touch.identifier]=coords;Browser.touches[touch.identifier]=coords}else if(event.type==="touchend"||event.type==="touchmove"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);x=x*(cw/rect.width);y=y*(ch/rect.height);Browser.mouseMovementX=x-Browser.mouseX;Browser.mouseMovementY=y-Browser.mouseY;Browser.mouseX=x;Browser.mouseY=y}},resizeListeners:[],updateResizeListeners:function(){var canvas=Module["canvas"];Browser.resizeListeners.forEach(function(listener){listener(canvas.width,canvas.height)})},setCanvasSize:function(width,height,noUpdates){var canvas=Module["canvas"];Browser.updateCanvasDimensions(canvas,width,height);if(!noUpdates)Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize:function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen>>2];flags=flags|8388608;HEAP32[SDL.screen>>2]=flags}Browser.updateCanvasDimensions(Module["canvas"]);Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen>>2];flags=flags&~8388608;HEAP32[SDL.screen>>2]=flags}Browser.updateCanvasDimensions(Module["canvas"]);Browser.updateResizeListeners()},updateCanvasDimensions:function(canvas,wNative,hNative){if(wNative&&hNative){canvas.widthNative=wNative;canvas.heightNative=hNative}else{wNative=canvas.widthNative;hNative=canvas.heightNative}var w=wNative;var h=hNative;if(Module["forcedAspectRatio"]&&Module["forcedAspectRatio"]>0){if(w/h0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}out('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();if(!checkIsRunning())return;setTimeout(Browser.mainLoop.runner,0);return}if(!checkIsRunning())return;Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0;if(Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}else if(Browser.mainLoop.timingMode==0){Browser.mainLoop.tickStartTime=_emscripten_get_now()}Browser.mainLoop.runIter(browserIterationFunc);if(!checkIsRunning())return;if(typeof SDL=="object"&&SDL.audio&&SDL.audio.queueNewAudioData)SDL.audio.queueNewAudioData();Browser.mainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"unwind"}}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop){var browserIterationFunc=function(){dynCall_v.call(null,func)};setMainLoop(browserIterationFunc,fps,simulateInfiniteLoop)}function registerUiEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.uiEvent)JSEvents.uiEvent=_malloc(36);target=findEventTarget(target);var uiEventHandlerFunc=function(ev){var e=ev||event;if(e.target!=target){return}var b=document.body;if(!b){return}var uiEvent=JSEvents.uiEvent;HEAP32[uiEvent>>2]=e.detail;HEAP32[uiEvent+4>>2]=b.clientWidth;HEAP32[uiEvent+8>>2]=b.clientHeight;HEAP32[uiEvent+12>>2]=innerWidth;HEAP32[uiEvent+16>>2]=innerHeight;HEAP32[uiEvent+20>>2]=outerWidth;HEAP32[uiEvent+24>>2]=outerHeight;HEAP32[uiEvent+28>>2]=pageXOffset;HEAP32[uiEvent+32>>2]=pageYOffset;if(function(a1,a2,a3){return dynCall_iiii.apply(null,[callbackfunc,a1,a2,a3])}(eventTypeId,uiEvent,userData))e.preventDefault()};var eventHandler={target:target,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:uiEventHandlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_resize_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){registerUiEventCallback(target,userData,useCapture,callbackfunc,10,"resize",targetThread);return 0}function registerTouchEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.touchEvent)JSEvents.touchEvent=_malloc(1696);target=findEventTarget(target);var touchEventHandlerFunc=function(e){var t,touches={},et=e.touches;for(var i=0;i>3]=e.timeStamp;var idx=touchEvent>>2;HEAP32[idx+3]=e.ctrlKey;HEAP32[idx+4]=e.shiftKey;HEAP32[idx+5]=e.altKey;HEAP32[idx+6]=e.metaKey;idx+=7;var targetRect=getBoundingClientRect(target);var numTouches=0;for(var i in touches){t=touches[i];HEAP32[idx+0]=t.identifier;HEAP32[idx+1]=t.screenX;HEAP32[idx+2]=t.screenY;HEAP32[idx+3]=t.clientX;HEAP32[idx+4]=t.clientY;HEAP32[idx+5]=t.pageX;HEAP32[idx+6]=t.pageY;HEAP32[idx+7]=t.isChanged;HEAP32[idx+8]=t.onTarget;HEAP32[idx+9]=t.clientX-targetRect.left;HEAP32[idx+10]=t.clientY-targetRect.top;idx+=13;if(++numTouches>31){break}}HEAP32[touchEvent+8>>2]=numTouches;if(function(a1,a2,a3){return dynCall_iiii.apply(null,[callbackfunc,a1,a2,a3])}(eventTypeId,touchEvent,userData))e.preventDefault()};var eventHandler={target:target,allowsDeferredCalls:eventTypeString=="touchstart"||eventTypeString=="touchend",eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:touchEventHandlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_touchcancel_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){registerTouchEventCallback(target,userData,useCapture,callbackfunc,25,"touchcancel",targetThread);return 0}function _emscripten_set_touchend_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){registerTouchEventCallback(target,userData,useCapture,callbackfunc,23,"touchend",targetThread);return 0}function _emscripten_set_touchmove_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){registerTouchEventCallback(target,userData,useCapture,callbackfunc,24,"touchmove",targetThread);return 0}function _emscripten_set_touchstart_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){registerTouchEventCallback(target,userData,useCapture,callbackfunc,22,"touchstart",targetThread);return 0}function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return e.errno}}function _fd_read(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=SYSCALLS.doReadv(stream,iov,iovcnt);HEAP32[pnum>>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return e.errno}}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){try{var stream=SYSCALLS.getStreamFromFD(fd);var HIGH_OFFSET=4294967296;var offset=offset_high*HIGH_OFFSET+(offset_low>>>0);var DOUBLE_LIMIT=9007199254740992;if(offset<=-DOUBLE_LIMIT||offset>=DOUBLE_LIMIT){return-61}FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math.abs(tempDouble)>=1?tempDouble>0?(Math.min(+Math.floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[newOffset>>2]=tempI64[0],HEAP32[newOffset+4>>2]=tempI64[1];if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return e.errno}}function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=SYSCALLS.doWritev(stream,iov,iovcnt);HEAP32[pnum>>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return e.errno}}function _glActiveTexture(x0){GLctx["activeTexture"](x0)}function _glAttachShader(program,shader){GLctx.attachShader(GL.programs[program],GL.shaders[shader])}function _glBindAttribLocation(program,index,name){GLctx.bindAttribLocation(GL.programs[program],index,UTF8ToString(name))}function _glBindBuffer(target,buffer){GLctx.bindBuffer(target,GL.buffers[buffer])}function _glBindTexture(target,texture){GLctx.bindTexture(target,GL.textures[texture])}function _glBlendFunc(x0,x1){GLctx["blendFunc"](x0,x1)}function _glBufferData(target,size,data,usage){GLctx.bufferData(target,data?HEAPU8.subarray(data,data+size):size,usage)}function _glBufferSubData(target,offset,size,data){GLctx.bufferSubData(target,offset,HEAPU8.subarray(data,data+size))}function _glClear(x0){GLctx["clear"](x0)}function _glClearColor(x0,x1,x2,x3){GLctx["clearColor"](x0,x1,x2,x3)}function _glClearDepthf(x0){GLctx["clearDepth"](x0)}function _glCompileShader(shader){GLctx.compileShader(GL.shaders[shader])}function _glCompressedTexImage2D(target,level,internalFormat,width,height,border,imageSize,data){GLctx["compressedTexImage2D"](target,level,internalFormat,width,height,border,data?HEAPU8.subarray(data,data+imageSize):null)}function _glCreateProgram(){var id=GL.getNewId(GL.programs);var program=GLctx.createProgram();program.name=id;program.maxUniformLength=program.maxAttributeLength=program.maxUniformBlockNameLength=0;program.uniformIdCounter=1;GL.programs[id]=program;return id}function _glCreateShader(shaderType){var id=GL.getNewId(GL.shaders);GL.shaders[id]=GLctx.createShader(shaderType);return id}function _glCullFace(x0){GLctx["cullFace"](x0)}function _glDeleteBuffers(n,buffers){for(var i=0;i>2];var buffer=GL.buffers[id];if(!buffer)continue;GLctx.deleteBuffer(buffer);buffer.name=0;GL.buffers[id]=null}}function _glDeleteProgram(id){if(!id)return;var program=GL.programs[id];if(!program){GL.recordError(1281);return}GLctx.deleteProgram(program);program.name=0;GL.programs[id]=null}function _glDeleteShader(id){if(!id)return;var shader=GL.shaders[id];if(!shader){GL.recordError(1281);return}GLctx.deleteShader(shader);GL.shaders[id]=null}function _glDeleteTextures(n,textures){for(var i=0;i>2];var texture=GL.textures[id];if(!texture)continue;GLctx.deleteTexture(texture);texture.name=0;GL.textures[id]=null}}function _glDepthFunc(x0){GLctx["depthFunc"](x0)}function _glDetachShader(program,shader){GLctx.detachShader(GL.programs[program],GL.shaders[shader])}function _glDisable(x0){GLctx["disable"](x0)}function _glDisableVertexAttribArray(index){GLctx.disableVertexAttribArray(index)}function _glDrawArrays(mode,first,count){GLctx.drawArrays(mode,first,count)}function _glDrawElements(mode,count,type,indices){GLctx.drawElements(mode,count,type,indices)}function _glEnable(x0){GLctx["enable"](x0)}function _glEnableVertexAttribArray(index){GLctx.enableVertexAttribArray(index)}function _glFrontFace(x0){GLctx["frontFace"](x0)}function _glGenBuffers(n,buffers){__glGenObject(n,buffers,"createBuffer",GL.buffers)}function _glGenTextures(n,textures){__glGenObject(n,textures,"createTexture",GL.textures)}function _glGetAttribLocation(program,name){return GLctx.getAttribLocation(GL.programs[program],UTF8ToString(name))}function _glGetFloatv(name_,p){emscriptenWebGLGet(name_,p,2)}function _glGetProgramInfoLog(program,maxLength,length,infoLog){var log=GLctx.getProgramInfoLog(GL.programs[program]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull}function _glGetProgramiv(program,pname,p){if(!p){GL.recordError(1281);return}if(program>=GL.counter){GL.recordError(1281);return}program=GL.programs[program];if(pname==35716){var log=GLctx.getProgramInfoLog(program);if(log===null)log="(unknown error)";HEAP32[p>>2]=log.length+1}else if(pname==35719){if(!program.maxUniformLength){for(var i=0;i>2]=program.maxUniformLength}else if(pname==35722){if(!program.maxAttributeLength){for(var i=0;i>2]=program.maxAttributeLength}else if(pname==35381){if(!program.maxUniformBlockNameLength){for(var i=0;i>2]=program.maxUniformBlockNameLength}else{HEAP32[p>>2]=GLctx.getProgramParameter(program,pname)}}function _glGetShaderInfoLog(shader,maxLength,length,infoLog){var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull}function _glGetShaderiv(shader,pname,p){if(!p){GL.recordError(1281);return}if(pname==35716){var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";var logLength=log?log.length+1:0;HEAP32[p>>2]=logLength}else if(pname==35720){var source=GLctx.getShaderSource(GL.shaders[shader]);var sourceLength=source?source.length+1:0;HEAP32[p>>2]=sourceLength}else{HEAP32[p>>2]=GLctx.getShaderParameter(GL.shaders[shader],pname)}}function _glGetString(name_){var ret=GL.stringCache[name_];if(!ret){switch(name_){case 7939:var exts=GLctx.getSupportedExtensions()||[];exts=exts.concat(exts.map(function(e){return"GL_"+e}));ret=stringToNewUTF8(exts.join(" "));break;case 7936:case 7937:case 37445:case 37446:var s=GLctx.getParameter(name_);if(!s){GL.recordError(1280)}ret=s&&stringToNewUTF8(s);break;case 7938:var glVersion=GLctx.getParameter(7938);{glVersion="OpenGL ES 2.0 ("+glVersion+")"}ret=stringToNewUTF8(glVersion);break;case 35724:var glslVersion=GLctx.getParameter(35724);var ver_re=/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/;var ver_num=glslVersion.match(ver_re);if(ver_num!==null){if(ver_num[1].length==3)ver_num[1]=ver_num[1]+"0";glslVersion="OpenGL ES GLSL ES "+ver_num[1]+" ("+glslVersion+")"}ret=stringToNewUTF8(glslVersion);break;default:GL.recordError(1280)}GL.stringCache[name_]=ret}return ret}function _glGetUniformLocation(program,name){name=UTF8ToString(name);if(program=GL.programs[program]){webglPrepareUniformLocationsBeforeFirstUse(program);var uniformLocsById=program.uniformLocsById;var arrayIndex=0;var uniformBaseName=name;var leftBrace=webglGetLeftBracePos(name);if(leftBrace>0){arrayIndex=jstoi_q(name.slice(leftBrace+1))>>>0;uniformBaseName=name.slice(0,leftBrace)}var sizeAndId=program.uniformSizeAndIdsByName[uniformBaseName];if(sizeAndId&&arrayIndex>=2;for(var i=0;i<16*count;i+=16){var dst=value+i;view[i]=heap[dst];view[i+1]=heap[dst+1];view[i+2]=heap[dst+2];view[i+3]=heap[dst+3];view[i+4]=heap[dst+4];view[i+5]=heap[dst+5];view[i+6]=heap[dst+6];view[i+7]=heap[dst+7];view[i+8]=heap[dst+8];view[i+9]=heap[dst+9];view[i+10]=heap[dst+10];view[i+11]=heap[dst+11];view[i+12]=heap[dst+12];view[i+13]=heap[dst+13];view[i+14]=heap[dst+14];view[i+15]=heap[dst+15]}}else{var view=HEAPF32.subarray(value>>2,value+count*64>>2)}GLctx.uniformMatrix4fv(webglGetUniformLocation(location),!!transpose,view)}function _glUseProgram(program){program=GL.programs[program];GLctx.useProgram(program);GLctx.currentProgram=program}function _glVertexAttribPointer(index,size,type,normalized,stride,ptr){GLctx.vertexAttribPointer(index,size,type,!!normalized,stride,ptr)}function _glViewport(x0,x1,x2,x3){GLctx["viewport"](x0,x1,x2,x3)}function GLFW_Window(id,width,height,title,monitor,share){this.id=id;this.x=0;this.y=0;this.fullscreen=false;this.storedX=0;this.storedY=0;this.width=width;this.height=height;this.storedWidth=width;this.storedHeight=height;this.title=title;this.monitor=monitor;this.share=share;this.attributes=GLFW.hints;this.inputModes={208897:212993,208898:0,208899:0};this.buttons=0;this.keys=new Array;this.domKeys=new Array;this.shouldClose=0;this.title=null;this.windowPosFunc=null;this.windowSizeFunc=null;this.windowCloseFunc=null;this.windowRefreshFunc=null;this.windowFocusFunc=null;this.windowIconifyFunc=null;this.framebufferSizeFunc=null;this.mouseButtonFunc=null;this.cursorPosFunc=null;this.cursorEnterFunc=null;this.scrollFunc=null;this.dropFunc=null;this.keyFunc=null;this.charFunc=null;this.userptr=null}var GLFW={WindowFromId:function(id){if(id<=0||!GLFW.windows)return null;return GLFW.windows[id-1]},joystickFunc:null,errorFunc:null,monitorFunc:null,active:null,windows:null,monitors:null,monitorString:null,versionString:null,initialTime:null,extensions:null,hints:null,defaultHints:{131073:0,131074:0,131075:1,131076:1,131077:1,135169:8,135170:8,135171:8,135172:8,135173:24,135174:8,135175:0,135176:0,135177:0,135178:0,135179:0,135180:0,135181:0,135182:0,135183:0,139265:196609,139266:1,139267:0,139268:0,139269:0,139270:0,139271:0,139272:0},DOMToGLFWKeyCode:function(keycode){switch(keycode){case 32:return 32;case 222:return 39;case 188:return 44;case 173:return 45;case 189:return 45;case 190:return 46;case 191:return 47;case 48:return 48;case 49:return 49;case 50:return 50;case 51:return 51;case 52:return 52;case 53:return 53;case 54:return 54;case 55:return 55;case 56:return 56;case 57:return 57;case 59:return 59;case 61:return 61;case 187:return 61;case 65:return 65;case 66:return 66;case 67:return 67;case 68:return 68;case 69:return 69;case 70:return 70;case 71:return 71;case 72:return 72;case 73:return 73;case 74:return 74;case 75:return 75;case 76:return 76;case 77:return 77;case 78:return 78;case 79:return 79;case 80:return 80;case 81:return 81;case 82:return 82;case 83:return 83;case 84:return 84;case 85:return 85;case 86:return 86;case 87:return 87;case 88:return 88;case 89:return 89;case 90:return 90;case 219:return 91;case 220:return 92;case 221:return 93;case 192:return 96;case 27:return 256;case 13:return 257;case 9:return 258;case 8:return 259;case 45:return 260;case 46:return 261;case 39:return 262;case 37:return 263;case 40:return 264;case 38:return 265;case 33:return 266;case 34:return 267;case 36:return 268;case 35:return 269;case 20:return 280;case 145:return 281;case 144:return 282;case 44:return 283;case 19:return 284;case 112:return 290;case 113:return 291;case 114:return 292;case 115:return 293;case 116:return 294;case 117:return 295;case 118:return 296;case 119:return 297;case 120:return 298;case 121:return 299;case 122:return 300;case 123:return 301;case 124:return 302;case 125:return 303;case 126:return 304;case 127:return 305;case 128:return 306;case 129:return 307;case 130:return 308;case 131:return 309;case 132:return 310;case 133:return 311;case 134:return 312;case 135:return 313;case 136:return 314;case 96:return 320;case 97:return 321;case 98:return 322;case 99:return 323;case 100:return 324;case 101:return 325;case 102:return 326;case 103:return 327;case 104:return 328;case 105:return 329;case 110:return 330;case 111:return 331;case 106:return 332;case 109:return 333;case 107:return 334;case 16:return 340;case 17:return 341;case 18:return 342;case 91:return 343;case 93:return 348;default:return-1}},getModBits:function(win){var mod=0;if(win.keys[340])mod|=1;if(win.keys[341])mod|=2;if(win.keys[342])mod|=4;if(win.keys[343])mod|=8;return mod},onKeyPress:function(event){if(!GLFW.active||!GLFW.active.charFunc)return;if(event.ctrlKey||event.metaKey)return;var charCode=event.charCode;if(charCode==0||charCode>=0&&charCode<=31)return;(function(a1,a2){dynCall_vii.apply(null,[GLFW.active.charFunc,a1,a2])})(GLFW.active.id,charCode)},onKeyChanged:function(keyCode,status){if(!GLFW.active)return;var key=GLFW.DOMToGLFWKeyCode(keyCode);if(key==-1)return;var repeat=status&&GLFW.active.keys[key];GLFW.active.keys[key]=status;GLFW.active.domKeys[keyCode]=status;if(!GLFW.active.keyFunc)return;if(repeat)status=2;(function(a1,a2,a3,a4,a5){dynCall_viiiii.apply(null,[GLFW.active.keyFunc,a1,a2,a3,a4,a5])})(GLFW.active.id,key,keyCode,status,GLFW.getModBits(GLFW.active))},onGamepadConnected:function(event){GLFW.refreshJoysticks()},onGamepadDisconnected:function(event){GLFW.refreshJoysticks()},onKeydown:function(event){GLFW.onKeyChanged(event.keyCode,1);if(event.keyCode===8||event.keyCode===9){event.preventDefault()}},onKeyup:function(event){GLFW.onKeyChanged(event.keyCode,0)},onBlur:function(event){if(!GLFW.active)return;for(var i=0;i0){if(eventButton==1){eventButton=2}else{eventButton=1}}return eventButton},onMouseenter:function(event){if(!GLFW.active)return;if(event.target!=Module["canvas"]||!GLFW.active.cursorEnterFunc)return;(function(a1,a2){dynCall_vii.apply(null,[GLFW.active.cursorEnterFunc,a1,a2])})(GLFW.active.id,1)},onMouseleave:function(event){if(!GLFW.active)return;if(event.target!=Module["canvas"]||!GLFW.active.cursorEnterFunc)return;(function(a1,a2){dynCall_vii.apply(null,[GLFW.active.cursorEnterFunc,a1,a2])})(GLFW.active.id,0)},onMouseButtonChanged:function(event,status){if(!GLFW.active)return;Browser.calculateMouseEvent(event);if(event.target!=Module["canvas"])return;var eventButton=GLFW.DOMToGLFWMouseButton(event);if(status==1){GLFW.active.buttons|=1<0?Math.max(delta,1):Math.min(delta,-1);GLFW.wheelPos+=delta;if(!GLFW.active||!GLFW.active.scrollFunc||event.target!=Module["canvas"])return;var sx=0;var sy=0;if(event.type=="mousewheel"){sx=event.wheelDeltaX;sy=event.wheelDeltaY}else{sx=event.deltaX;sy=event.deltaY}(function(a1,a2,a3){dynCall_vidd.apply(null,[GLFW.active.scrollFunc,a1,a2,a3])})(GLFW.active.id,sx,sy);event.preventDefault()},onCanvasResize:function(width,height){if(!GLFW.active)return;var resizeNeeded=true;if(document["fullscreen"]||document["fullScreen"]||document["mozFullScreen"]||document["webkitIsFullScreen"]){GLFW.active.storedX=GLFW.active.x;GLFW.active.storedY=GLFW.active.y;GLFW.active.storedWidth=GLFW.active.width;GLFW.active.storedHeight=GLFW.active.height;GLFW.active.x=GLFW.active.y=0;GLFW.active.width=screen.width;GLFW.active.height=screen.height;GLFW.active.fullscreen=true}else if(GLFW.active.fullscreen==true){GLFW.active.x=GLFW.active.storedX;GLFW.active.y=GLFW.active.storedY;GLFW.active.width=GLFW.active.storedWidth;GLFW.active.height=GLFW.active.storedHeight;GLFW.active.fullscreen=false}else if(GLFW.active.width!=width||GLFW.active.height!=height){GLFW.active.width=width;GLFW.active.height=height}else{resizeNeeded=false}if(resizeNeeded){Browser.setCanvasSize(GLFW.active.width,GLFW.active.height,true);GLFW.onWindowSizeChanged();GLFW.onFramebufferSizeChanged()}},onWindowSizeChanged:function(){if(!GLFW.active)return;if(!GLFW.active.windowSizeFunc)return;callUserCallback(function(){(function(a1,a2,a3){dynCall_viii.apply(null,[GLFW.active.windowSizeFunc,a1,a2,a3])})(GLFW.active.id,GLFW.active.width,GLFW.active.height)})},onFramebufferSizeChanged:function(){if(!GLFW.active)return;if(!GLFW.active.framebufferSizeFunc)return;callUserCallback(function(){(function(a1,a2,a3){dynCall_viii.apply(null,[GLFW.active.framebufferSizeFunc,a1,a2,a3])})(GLFW.active.id,GLFW.active.width,GLFW.active.height)})},getTime:function(){return _emscripten_get_now()/1e3},setWindowTitle:function(winid,title){var win=GLFW.WindowFromId(winid);if(!win)return;win.title=UTF8ToString(title);if(GLFW.active.id==win.id){document.title=win.title}},setJoystickCallback:function(cbfun){GLFW.joystickFunc=cbfun;GLFW.refreshJoysticks()},joys:{},lastGamepadState:[],lastGamepadStateFrame:null,refreshJoysticks:function(){if(Browser.mainLoop.currentFrameNumber!==GLFW.lastGamepadStateFrame||!Browser.mainLoop.currentFrameNumber){GLFW.lastGamepadState=navigator.getGamepads?navigator.getGamepads():navigator.webkitGetGamepads?navigator.webkitGetGamepads:[];GLFW.lastGamepadStateFrame=Browser.mainLoop.currentFrameNumber;for(var joy=0;joy{if(reader.readyState!=2){++written;out("failed to read dropped file: "+file.name+": "+reader.error);return}var data=e.target.result;FS.writeFile(path,new Uint8Array(data));if(++written===count){(function(a1,a2,a3){dynCall_viii.apply(null,[GLFW.active.dropFunc,a1,a2,a3])})(GLFW.active.id,count,filenames);for(var i=0;i0},getCursorPos:function(winid,x,y){setValue(x,Browser.mouseX,"double");setValue(y,Browser.mouseY,"double")},getMousePos:function(winid,x,y){setValue(x,Browser.mouseX,"i32");setValue(y,Browser.mouseY,"i32")},setCursorPos:function(winid,x,y){},getWindowPos:function(winid,x,y){var wx=0;var wy=0;var win=GLFW.WindowFromId(winid);if(win){wx=win.x;wy=win.y}if(x){setValue(x,wx,"i32")}if(y){setValue(y,wy,"i32")}},setWindowPos:function(winid,x,y){var win=GLFW.WindowFromId(winid);if(!win)return;win.x=x;win.y=y},getWindowSize:function(winid,width,height){var ww=0;var wh=0;var win=GLFW.WindowFromId(winid);if(win){ww=win.width;wh=win.height}if(width){setValue(width,ww,"i32")}if(height){setValue(height,wh,"i32")}},setWindowSize:function(winid,width,height){var win=GLFW.WindowFromId(winid);if(!win)return;if(GLFW.active.id==win.id){if(width==screen.width&&height==screen.height){Browser.requestFullscreen()}else{Browser.exitFullscreen();Browser.setCanvasSize(width,height);win.width=width;win.height=height}}if(!win.windowSizeFunc)return;(function(a1,a2,a3){dynCall_viii.apply(null,[win.windowSizeFunc,a1,a2,a3])})(win.id,width,height)},createWindow:function(width,height,title,monitor,share){var i,id;for(i=0;i0)throw"glfwCreateWindow only supports one window at time currently";id=i+1;if(width<=0||height<=0)return 0;if(monitor){Browser.requestFullscreen()}else{Browser.setCanvasSize(width,height)}for(i=0;i0;if(i==GLFW.windows.length){if(useWebGL){var contextAttributes={antialias:GLFW.hints[135181]>1,depth:GLFW.hints[135173]>0,stencil:GLFW.hints[135174]>0,alpha:GLFW.hints[135172]>0};Module.ctx=Browser.createContext(Module["canvas"],true,true,contextAttributes)}else{Browser.init()}}if(!Module.ctx&&useWebGL)return 0;var win=new GLFW_Window(id,width,height,title,monitor,share);if(id-1==GLFW.windows.length){GLFW.windows.push(win)}else{GLFW.windows[id-1]=win}GLFW.active=win;return win.id},destroyWindow:function(winid){var win=GLFW.WindowFromId(winid);if(!win)return;if(win.windowCloseFunc)(function(a1){dynCall_vi.apply(null,[win.windowCloseFunc,a1])})(win.id);GLFW.windows[win.id-1]=null;if(GLFW.active.id==win.id)GLFW.active=null;for(var i=0;i>2]=ret}return ret}function runAndAbortIfError(func){try{return func()}catch(e){abort(e)}}var Asyncify={State:{Normal:0,Unwinding:1,Rewinding:2,Disabled:3},state:0,StackSize:4096,currData:null,handleSleepReturnValue:0,exportCallStack:[],callStackNameToId:{},callStackIdToName:{},callStackId:0,asyncPromiseHandlers:null,sleepCallbacks:[],getCallStackId:function(funcName){var id=Asyncify.callStackNameToId[funcName];if(id===undefined){id=Asyncify.callStackId++;Asyncify.callStackNameToId[funcName]=id;Asyncify.callStackIdToName[id]=funcName}return id},instrumentWasmExports:function(exports){var ret={};for(var x in exports){(function(x){var original=exports[x];if(typeof original=="function"){ret[x]=function(){Asyncify.exportCallStack.push(x);try{return original.apply(null,arguments)}finally{if(!ABORT){var y=Asyncify.exportCallStack.pop();assert(y===x);Asyncify.maybeStopUnwind()}}}}else{ret[x]=original}})(x)}return ret},maybeStopUnwind:function(){if(Asyncify.currData&&Asyncify.state===Asyncify.State.Unwinding&&Asyncify.exportCallStack.length===0){Asyncify.state=Asyncify.State.Normal;runAndAbortIfError(Module["_asyncify_stop_unwind"]);if(typeof Fibers!="undefined"){Fibers.trampoline()}}},whenDone:function(){return new Promise((resolve,reject)=>{Asyncify.asyncPromiseHandlers={resolve:resolve,reject:reject}})},allocateData:function(){var ptr=_malloc(12+Asyncify.StackSize);Asyncify.setDataHeader(ptr,ptr+12,Asyncify.StackSize);Asyncify.setDataRewindFunc(ptr);return ptr},setDataHeader:function(ptr,stack,stackSize){HEAP32[ptr>>2]=stack;HEAP32[ptr+4>>2]=stack+stackSize},setDataRewindFunc:function(ptr){var bottomOfCallStack=Asyncify.exportCallStack[0];var rewindId=Asyncify.getCallStackId(bottomOfCallStack);HEAP32[ptr+8>>2]=rewindId},getDataRewindFunc:function(ptr){var id=HEAP32[ptr+8>>2];var name=Asyncify.callStackIdToName[id];var func=Module["asm"][name];return func},doRewind:function(ptr){var start=Asyncify.getDataRewindFunc(ptr);return start()},handleSleep:function(startAsync){if(ABORT)return;if(Asyncify.state===Asyncify.State.Normal){var reachedCallback=false;var reachedAfterCallback=false;startAsync(handleSleepReturnValue=>{if(ABORT)return;Asyncify.handleSleepReturnValue=handleSleepReturnValue||0;reachedCallback=true;if(!reachedAfterCallback){return}Asyncify.state=Asyncify.State.Rewinding;runAndAbortIfError(()=>Module["_asyncify_start_rewind"](Asyncify.currData));if(typeof Browser!="undefined"&&Browser.mainLoop.func){Browser.mainLoop.resume()}var asyncWasmReturnValue,isError=false;try{asyncWasmReturnValue=Asyncify.doRewind(Asyncify.currData)}catch(err){asyncWasmReturnValue=err;isError=true}var handled=false;if(!Asyncify.currData){var asyncPromiseHandlers=Asyncify.asyncPromiseHandlers;if(asyncPromiseHandlers){Asyncify.asyncPromiseHandlers=null;(isError?asyncPromiseHandlers.reject:asyncPromiseHandlers.resolve)(asyncWasmReturnValue);handled=true}}if(isError&&!handled){throw asyncWasmReturnValue}});reachedAfterCallback=true;if(!reachedCallback){Asyncify.state=Asyncify.State.Unwinding;Asyncify.currData=Asyncify.allocateData();runAndAbortIfError(()=>Module["_asyncify_start_unwind"](Asyncify.currData));if(typeof Browser!="undefined"&&Browser.mainLoop.func){Browser.mainLoop.pause()}}}else if(Asyncify.state===Asyncify.State.Rewinding){Asyncify.state=Asyncify.State.Normal;runAndAbortIfError(Module["_asyncify_stop_rewind"]);_free(Asyncify.currData);Asyncify.currData=null;Asyncify.sleepCallbacks.forEach(func=>callUserCallback(func))}else{abort("invalid state: "+Asyncify.state)}return Asyncify.handleSleepReturnValue},handleAsync:function(startAsync){return Asyncify.handleSleep(wakeUp=>{startAsync().then(wakeUp)})}};var FSNode=function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev};var readMode=292|73;var writeMode=146;Object.defineProperties(FSNode.prototype,{read:{get:function(){return(this.mode&readMode)===readMode},set:function(val){val?this.mode|=readMode:this.mode&=~readMode}},write:{get:function(){return(this.mode&writeMode)===writeMode},set:function(val){val?this.mode|=writeMode:this.mode&=~writeMode}},isFolder:{get:function(){return FS.isDir(this.mode)}},isDevice:{get:function(){return FS.isChrdev(this.mode)}}});FS.FSNode=FSNode;FS.staticInit();var GLctx;for(var i=0;i<32;++i)tempFixedLengthArray.push(new Array(i));var miniTempWebGLFloatBuffersStorage=new Float32Array(288);for(var i=0;i<288;++i){miniTempWebGLFloatBuffers[i]=miniTempWebGLFloatBuffersStorage.subarray(0,i+1)}var __miniTempWebGLIntBuffersStorage=new Int32Array(288);for(var i=0;i<288;++i){__miniTempWebGLIntBuffers[i]=__miniTempWebGLIntBuffersStorage.subarray(0,i+1)}Module["requestFullscreen"]=function Module_requestFullscreen(lockPointer,resizeCanvas){Browser.requestFullscreen(lockPointer,resizeCanvas)};Module["requestAnimationFrame"]=function Module_requestAnimationFrame(func){Browser.requestAnimationFrame(func)};Module["setCanvasSize"]=function Module_setCanvasSize(width,height,noUpdates){Browser.setCanvasSize(width,height,noUpdates)};Module["pauseMainLoop"]=function Module_pauseMainLoop(){Browser.mainLoop.pause()};Module["resumeMainLoop"]=function Module_resumeMainLoop(){Browser.mainLoop.resume()};Module["getUserMedia"]=function Module_getUserMedia(){Browser.getUserMedia()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var asmLibraryArg={"_":GetCanvasHeight,"$":GetCanvasWidth,"a":___assert_fail,"H":___syscall_fcntl64,"Na":___syscall_getcwd,"Pa":___syscall_ioctl,"Ra":___syscall_open,"c":_emscripten_asm_const_int,"Y":_emscripten_get_element_css_size,"S":_emscripten_get_gamepad_status,"F":_emscripten_get_now,"T":_emscripten_get_num_gamepads,"Id":_emscripten_glActiveTexture,"Hd":_emscripten_glAttachShader,"N":_emscripten_glBeginQueryEXT,"Gd":_emscripten_glBindAttribLocation,"Fd":_emscripten_glBindBuffer,"Ed":_emscripten_glBindFramebuffer,"Cd":_emscripten_glBindRenderbuffer,"Bd":_emscripten_glBindTexture,"Qd":_emscripten_glBindVertexArrayOES,"Ad":_emscripten_glBlendColor,"zd":_emscripten_glBlendEquation,"yd":_emscripten_glBlendEquationSeparate,"xd":_emscripten_glBlendFunc,"wd":_emscripten_glBlendFuncSeparate,"vd":_emscripten_glBufferData,"ud":_emscripten_glBufferSubData,"td":_emscripten_glCheckFramebufferStatus,"rd":_emscripten_glClear,"qd":_emscripten_glClearColor,"pd":_emscripten_glClearDepthf,"od":_emscripten_glClearStencil,"nd":_emscripten_glColorMask,"md":_emscripten_glCompileShader,"ld":_emscripten_glCompressedTexImage2D,"kd":_emscripten_glCompressedTexSubImage2D,"jd":_emscripten_glCopyTexImage2D,"id":_emscripten_glCopyTexSubImage2D,"hd":_emscripten_glCreateProgram,"gd":_emscripten_glCreateShader,"fd":_emscripten_glCullFace,"ed":_emscripten_glDeleteBuffers,"dd":_emscripten_glDeleteFramebuffers,"cd":_emscripten_glDeleteProgram,"P":_emscripten_glDeleteQueriesEXT,"bd":_emscripten_glDeleteRenderbuffers,"ad":_emscripten_glDeleteShader,"$c":_emscripten_glDeleteTextures,"Pd":_emscripten_glDeleteVertexArraysOES,"_c":_emscripten_glDepthFunc,"Zc":_emscripten_glDepthMask,"Yc":_emscripten_glDepthRangef,"Xc":_emscripten_glDetachShader,"Wc":_emscripten_glDisable,"Vc":_emscripten_glDisableVertexAttribArray,"Uc":_emscripten_glDrawArrays,"Ld":_emscripten_glDrawArraysInstancedANGLE,"Md":_emscripten_glDrawBuffersWEBGL,"Tc":_emscripten_glDrawElements,"Kd":_emscripten_glDrawElementsInstancedANGLE,"Sc":_emscripten_glEnable,"Rc":_emscripten_glEnableVertexAttribArray,"Xd":_emscripten_glEndQueryEXT,"Qc":_emscripten_glFinish,"Oc":_emscripten_glFlush,"Nc":_emscripten_glFramebufferRenderbuffer,"Mc":_emscripten_glFramebufferTexture2D,"Lc":_emscripten_glFrontFace,"Kc":_emscripten_glGenBuffers,"Ic":_emscripten_glGenFramebuffers,"Q":_emscripten_glGenQueriesEXT,"Hc":_emscripten_glGenRenderbuffers,"Gc":_emscripten_glGenTextures,"Od":_emscripten_glGenVertexArraysOES,"Jc":_emscripten_glGenerateMipmap,"Fc":_emscripten_glGetActiveAttrib,"Dc":_emscripten_glGetActiveUniform,"Cc":_emscripten_glGetAttachedShaders,"Bc":_emscripten_glGetAttribLocation,"Ac":_emscripten_glGetBooleanv,"zc":_emscripten_glGetBufferParameteriv,"yc":_emscripten_glGetError,"xc":_emscripten_glGetFloatv,"wc":_emscripten_glGetFramebufferAttachmentParameteriv,"vc":_emscripten_glGetIntegerv,"tc":_emscripten_glGetProgramInfoLog,"uc":_emscripten_glGetProgramiv,"Sd":_emscripten_glGetQueryObjecti64vEXT,"Ud":_emscripten_glGetQueryObjectivEXT,"Rd":_emscripten_glGetQueryObjectui64vEXT,"Td":_emscripten_glGetQueryObjectuivEXT,"Vd":_emscripten_glGetQueryivEXT,"sc":_emscripten_glGetRenderbufferParameteriv,"qc":_emscripten_glGetShaderInfoLog,"pc":_emscripten_glGetShaderPrecisionFormat,"oc":_emscripten_glGetShaderSource,"rc":_emscripten_glGetShaderiv,"nc":_emscripten_glGetString,"mc":_emscripten_glGetTexParameterfv,"lc":_emscripten_glGetTexParameteriv,"ic":_emscripten_glGetUniformLocation,"kc":_emscripten_glGetUniformfv,"jc":_emscripten_glGetUniformiv,"fc":_emscripten_glGetVertexAttribPointerv,"hc":_emscripten_glGetVertexAttribfv,"gc":_emscripten_glGetVertexAttribiv,"ec":_emscripten_glHint,"dc":_emscripten_glIsBuffer,"cc":_emscripten_glIsEnabled,"bc":_emscripten_glIsFramebuffer,"ac":_emscripten_glIsProgram,"O":_emscripten_glIsQueryEXT,"_b":_emscripten_glIsRenderbuffer,"Zb":_emscripten_glIsShader,"Yb":_emscripten_glIsTexture,"Nd":_emscripten_glIsVertexArrayOES,"Xb":_emscripten_glLineWidth,"Wb":_emscripten_glLinkProgram,"Vb":_emscripten_glPixelStorei,"Ub":_emscripten_glPolygonOffset,"Wd":_emscripten_glQueryCounterEXT,"Tb":_emscripten_glReadPixels,"Sb":_emscripten_glReleaseShaderCompiler,"Rb":_emscripten_glRenderbufferStorage,"Pb":_emscripten_glSampleCoverage,"Ob":_emscripten_glScissor,"Nb":_emscripten_glShaderBinary,"Mb":_emscripten_glShaderSource,"Lb":_emscripten_glStencilFunc,"Kb":_emscripten_glStencilFuncSeparate,"Jb":_emscripten_glStencilMask,"Ib":_emscripten_glStencilMaskSeparate,"Hb":_emscripten_glStencilOp,"Gb":_emscripten_glStencilOpSeparate,"Eb":_emscripten_glTexImage2D,"Db":_emscripten_glTexParameterf,"Cb":_emscripten_glTexParameterfv,"Bb":_emscripten_glTexParameteri,"Ab":_emscripten_glTexParameteriv,"zb":_emscripten_glTexSubImage2D,"yb":_emscripten_glUniform1f,"xb":_emscripten_glUniform1fv,"wb":_emscripten_glUniform1i,"vb":_emscripten_glUniform1iv,"tb":_emscripten_glUniform2f,"sb":_emscripten_glUniform2fv,"rb":_emscripten_glUniform2i,"qb":_emscripten_glUniform2iv,"pb":_emscripten_glUniform3f,"ob":_emscripten_glUniform3fv,"nb":_emscripten_glUniform3i,"mb":_emscripten_glUniform3iv,"lb":_emscripten_glUniform4f,"kb":_emscripten_glUniform4fv,"ib":_emscripten_glUniform4i,"hb":_emscripten_glUniform4iv,"gb":_emscripten_glUniformMatrix2fv,"fb":_emscripten_glUniformMatrix3fv,"eb":_emscripten_glUniformMatrix4fv,"db":_emscripten_glUseProgram,"cb":_emscripten_glValidateProgram,"bb":_emscripten_glVertexAttrib1f,"ab":_emscripten_glVertexAttrib1fv,"$a":_emscripten_glVertexAttrib2f,"Za":_emscripten_glVertexAttrib2fv,"Ya":_emscripten_glVertexAttrib3f,"Xa":_emscripten_glVertexAttrib3fv,"Wa":_emscripten_glVertexAttrib4f,"Va":_emscripten_glVertexAttrib4fv,"Jd":_emscripten_glVertexAttribDivisorANGLE,"Ua":_emscripten_glVertexAttribPointer,"Ta":_emscripten_glViewport,"Sa":_emscripten_memcpy_big,"Ma":_emscripten_resize_heap,"p":_emscripten_run_script,"V":_emscripten_sample_gamepad_data,"Z":_emscripten_set_canvas_element_size,"xa":_emscripten_set_click_callback_on_thread,"sa":_emscripten_set_gamepadconnected_callback_on_thread,"ra":_emscripten_set_gamepaddisconnected_callback_on_thread,"Zd":_emscripten_set_main_loop,"ya":_emscripten_set_resize_callback_on_thread,"ta":_emscripten_set_touchcancel_callback_on_thread,"va":_emscripten_set_touchend_callback_on_thread,"ua":_emscripten_set_touchmove_callback_on_thread,"wa":_emscripten_set_touchstart_callback_on_thread,"u":_exit,"I":_fd_close,"Oa":_fd_read,"La":_fd_seek,"G":_fd_write,"M":_glActiveTexture,"y":_glAttachShader,"h":_glBindAttribLocation,"b":_glBindBuffer,"i":_glBindTexture,"$b":_glBlendFunc,"m":_glBufferData,"s":_glBufferSubData,"J":_glClear,"K":_glClearColor,"jb":_glClearDepthf,"Fa":_glCompileShader,"Ja":_glCompressedTexImage2D,"Da":_glCreateProgram,"Ha":_glCreateShader,"Fb":_glCullFace,"k":_glDeleteBuffers,"B":_glDeleteProgram,"C":_glDeleteShader,"E":_glDeleteTextures,"Qb":_glDepthFunc,"D":_glDetachShader,"Pc":_glDisable,"l":_glDisableVertexAttribArray,"Dd":_glDrawArrays,"sd":_glDrawElements,"L":_glEnable,"f":_glEnableVertexAttribArray,"ub":_glFrontFace,"n":_glGenBuffers,"Qa":_glGenTextures,"t":_glGetAttribLocation,"Ec":_glGetFloatv,"Aa":_glGetProgramInfoLog,"A":_glGetProgramiv,"Ea":_glGetShaderInfoLog,"z":_glGetShaderiv,"j":_glGetString,"r":_glGetUniformLocation,"Ba":_glLinkProgram,"_a":_glPixelStorei,"Ia":_glReadPixels,"Ga":_glShaderSource,"Ka":_glTexImage2D,"o":_glTexParameteri,"U":_glUniform1i,"aa":_glUniform4f,"Ca":_glUniformMatrix4fv,"q":_glUseProgram,"g":_glVertexAttribPointer,"Yd":_glViewport,"w":_glfwCreateWindow,"oa":_glfwDefaultWindowHints,"X":_glfwDestroyWindow,"x":_glfwGetPrimaryMonitor,"e":_glfwGetTime,"na":_glfwGetVideoModes,"pa":_glfwInit,"ca":_glfwMakeContextCurrent,"ha":_glfwSetCharCallback,"da":_glfwSetCursorEnterCallback,"fa":_glfwSetCursorPosCallback,"ja":_glfwSetDropCallback,"qa":_glfwSetErrorCallback,"ia":_glfwSetKeyCallback,"ga":_glfwSetMouseButtonCallback,"ea":_glfwSetScrollCallback,"ka":_glfwSetWindowFocusCallback,"la":_glfwSetWindowIconifyCallback,"R":_glfwSetWindowShouldClose,"ma":_glfwSetWindowSizeCallback,"W":_glfwSwapBuffers,"ba":_glfwSwapInterval,"v":_glfwTerminate,"d":_glfwWindowHint,"za":_time};var asm=createWasm();var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["$d"]).apply(null,arguments)};var _main=Module["_main"]=function(){return(_main=Module["_main"]=Module["asm"]["ae"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["ce"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["de"]).apply(null,arguments)};var _ma_device_process_pcm_frames_capture__webaudio=Module["_ma_device_process_pcm_frames_capture__webaudio"]=function(){return(_ma_device_process_pcm_frames_capture__webaudio=Module["_ma_device_process_pcm_frames_capture__webaudio"]=Module["asm"]["ee"]).apply(null,arguments)};var _ma_device_process_pcm_frames_playback__webaudio=Module["_ma_device_process_pcm_frames_playback__webaudio"]=function(){return(_ma_device_process_pcm_frames_playback__webaudio=Module["_ma_device_process_pcm_frames_playback__webaudio"]=Module["asm"]["fe"]).apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){return(___errno_location=Module["___errno_location"]=Module["asm"]["ge"]).apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return(stackSave=Module["stackSave"]=Module["asm"]["he"]).apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return(stackRestore=Module["stackRestore"]=Module["asm"]["ie"]).apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return(stackAlloc=Module["stackAlloc"]=Module["asm"]["je"]).apply(null,arguments)};var dynCall_v=Module["dynCall_v"]=function(){return(dynCall_v=Module["dynCall_v"]=Module["asm"]["ke"]).apply(null,arguments)};var dynCall_iiii=Module["dynCall_iiii"]=function(){return(dynCall_iiii=Module["dynCall_iiii"]=Module["asm"]["le"]).apply(null,arguments)};var dynCall_vii=Module["dynCall_vii"]=function(){return(dynCall_vii=Module["dynCall_vii"]=Module["asm"]["me"]).apply(null,arguments)};var dynCall_viii=Module["dynCall_viii"]=function(){return(dynCall_viii=Module["dynCall_viii"]=Module["asm"]["ne"]).apply(null,arguments)};var dynCall_viiiii=Module["dynCall_viiiii"]=function(){return(dynCall_viiiii=Module["dynCall_viiiii"]=Module["asm"]["oe"]).apply(null,arguments)};var dynCall_viiii=Module["dynCall_viiii"]=function(){return(dynCall_viiii=Module["dynCall_viiii"]=Module["asm"]["pe"]).apply(null,arguments)};var dynCall_vidd=Module["dynCall_vidd"]=function(){return(dynCall_vidd=Module["dynCall_vidd"]=Module["asm"]["qe"]).apply(null,arguments)};var dynCall_vi=Module["dynCall_vi"]=function(){return(dynCall_vi=Module["dynCall_vi"]=Module["asm"]["re"]).apply(null,arguments)};var _asyncify_start_unwind=Module["_asyncify_start_unwind"]=function(){return(_asyncify_start_unwind=Module["_asyncify_start_unwind"]=Module["asm"]["se"]).apply(null,arguments)};var _asyncify_stop_unwind=Module["_asyncify_stop_unwind"]=function(){return(_asyncify_stop_unwind=Module["_asyncify_stop_unwind"]=Module["asm"]["te"]).apply(null,arguments)};var _asyncify_start_rewind=Module["_asyncify_start_rewind"]=function(){return(_asyncify_start_rewind=Module["_asyncify_start_rewind"]=Module["asm"]["ue"]).apply(null,arguments)};var _asyncify_stop_rewind=Module["_asyncify_stop_rewind"]=function(){return(_asyncify_stop_rewind=Module["_asyncify_stop_rewind"]=Module["asm"]["ve"]).apply(null,arguments)};var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}var calledMain=false;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function callMain(args){var entryFunction=Module["_main"];var argc=0;var argv=0;try{var ret=entryFunction(argc,argv);exit(ret,true);return ret}catch(e){return handleException(e)}finally{calledMain=true}}function run(args){args=args||arguments_;if(runDependencies>0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(shouldRunNow)callMain(args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;function exit(status,implicit){EXITSTATUS=status;if(keepRuntimeAlive()){}else{exitRuntime()}procExit(status)}function procExit(code){EXITSTATUS=code;if(!keepRuntimeAlive()){if(Module["onExit"])Module["onExit"](code);ABORT=true}quit_(code,new ExitStatus(code))}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"])shouldRunNow=false;run(); diff --git a/game.wasm b/game.wasm new file mode 100755 index 0000000000000000000000000000000000000000..1efa585c11aa4634e256be7e19a0ebbfffef8a9d GIT binary patch literal 332299 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%0AoDIK>gjhEp=t{;cH71QR3 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 CluBm+ literal 0 HcmV?d00001