2 lines
433 KiB
JavaScript
2 lines
433 KiB
JavaScript
var Module=typeof Module!="undefined"?Module:{};if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads=0}Module.expectedDataFileDownloads++;(function(){if(Module["ENVIRONMENT_IS_PTHREAD"])return;var loadPackage=function(metadata){var PACKAGE_PATH="";if(typeof window==="object"){PACKAGE_PATH=window["encodeURIComponent"](window.location.pathname.toString().substring(0,window.location.pathname.toString().lastIndexOf("/"))+"/")}else if(typeof process==="undefined"&&typeof location!=="undefined"){PACKAGE_PATH=encodeURIComponent(location.pathname.toString().substring(0,location.pathname.toString().lastIndexOf("/"))+"/")}var PACKAGE_NAME="index.data";var REMOTE_PACKAGE_BASE="index.data";if(typeof Module["locateFilePackage"]==="function"&&!Module["locateFile"]){Module["locateFile"]=Module["locateFilePackage"];err("warning: you defined Module.locateFilePackage, that has been renamed to Module.locateFile (using your locateFilePackage for now)")}var REMOTE_PACKAGE_NAME=Module["locateFile"]?Module["locateFile"](REMOTE_PACKAGE_BASE,""):REMOTE_PACKAGE_BASE;var REMOTE_PACKAGE_SIZE=metadata["remote_package_size"];var PACKAGE_UUID=metadata["package_uuid"];function fetchRemotePackage(packageName,packageSize,callback,errback){if(typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string"){require("fs").readFile(packageName,function(err,contents){if(err){errback(err)}else{callback(contents.buffer)}});return}var xhr=new XMLHttpRequest;xhr.open("GET",packageName,true);xhr.responseType="arraybuffer";xhr.onprogress=function(event){var url=packageName;var size=packageSize;if(event.total)size=event.total;if(event.loaded){if(!xhr.addedTotal){xhr.addedTotal=true;if(!Module.dataFileDownloads)Module.dataFileDownloads={};Module.dataFileDownloads[url]={loaded:event.loaded,total:size}}else{Module.dataFileDownloads[url].loaded=event.loaded}var total=0;var loaded=0;var num=0;for(var download in Module.dataFileDownloads){var data=Module.dataFileDownloads[download];total+=data.total;loaded+=data.loaded;num++}total=Math.ceil(total*Module.expectedDataFileDownloads/num);if(Module["setStatus"])Module["setStatus"]("Downloading data... ("+loaded+"/"+total+")")}else if(!Module.dataFileDownloads){if(Module["setStatus"])Module["setStatus"]("Downloading data...")}};xhr.onerror=function(event){throw new Error("NetworkError for: "+packageName)};xhr.onload=function(event){if(xhr.status==200||xhr.status==304||xhr.status==206||xhr.status==0&&xhr.response){var packageData=xhr.response;callback(packageData)}else{throw new Error(xhr.statusText+" : "+xhr.responseURL)}};xhr.send(null)}function handleError(error){console.error("package error:",error)}var fetchedCallback=null;var fetched=Module["getPreloadedPackage"]?Module["getPreloadedPackage"](REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE):null;if(!fetched)fetchRemotePackage(REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE,function(data){if(fetchedCallback){fetchedCallback(data);fetchedCallback=null}else{fetched=data}},handleError);function runWithFS(){function assert(check,msg){if(!check)throw msg+(new Error).stack}Module["FS_createPath"]("/","shaders wasm",true,true);Module["FS_createPath"]("/","data",true,true);Module["FS_createPath"]("/data","cutscenes",true,true);Module["FS_createPath"]("/data","levels",true,true);Module["FS_createPath"]("/data/levels","cloners",true,true);Module["FS_createPath"]("/data/levels","cloners2",true,true);Module["FS_createPath"]("/data/levels","conveyors",true,true);Module["FS_createPath"]("/data/levels","deadman",true,true);Module["FS_createPath"]("/data/levels","flags",true,true);Module["FS_createPath"]("/data/levels","hypothethical main",true,true);Module["FS_createPath"]("/data/levels","ice",true,true);Module["FS_createPath"]("/data/levels","main",true,true);Module["FS_createPath"]("/data/levels","mapAuditTest",true,true);Module["FS_createPath"]("/data/levels","meta",true,true);Module["FS_createPath"]("/data/levels","misc",true,true);Module["FS_createPath"]("/data/levels","misc 2",true,true);Module["FS_createPath"]("/data/levels","moveTests",true,true);Module["FS_createPath"]("/data/levels","multiman",true,true);Module["FS_createPath"]("/data/levels","old",true,true);Module["FS_createPath"]("/data/levels/old","cloners",true,true);Module["FS_createPath"]("/data/levels/old","cloners2",true,true);Module["FS_createPath"]("/data/levels/old","conveyors",true,true);Module["FS_createPath"]("/data/levels/old","deadman",true,true);Module["FS_createPath"]("/data/levels/old","example",true,true);Module["FS_createPath"]("/data/levels/old","ice",true,true);Module["FS_createPath"]("/data/levels/old","kitten spawner",true,true);Module["FS_createPath"]("/data/levels/old","main",true,true);Module["FS_createPath"]("/data/levels/old","misc",true,true);Module["FS_createPath"]("/data/levels/old","multiman",true,true);Module["FS_createPath"]("/data/levels/old","old main 1",true,true);Module["FS_createPath"]("/data/levels/old","old main 10",true,true);Module["FS_createPath"]("/data/levels/old","old main 11",true,true);Module["FS_createPath"]("/data/levels/old","old main 2",true,true);Module["FS_createPath"]("/data/levels/old","old main 3",true,true);Module["FS_createPath"]("/data/levels/old","old main 4",true,true);Module["FS_createPath"]("/data/levels/old","old main 5",true,true);Module["FS_createPath"]("/data/levels/old","old main 6",true,true);Module["FS_createPath"]("/data/levels/old","old main 7",true,true);Module["FS_createPath"]("/data/levels/old","old main 8",true,true);Module["FS_createPath"]("/data/levels/old","old main 9",true,true);Module["FS_createPath"]("/data/levels/old","old statues",true,true);Module["FS_createPath"]("/data/levels/old","statues",true,true);Module["FS_createPath"]("/data/levels","old hypothethical main",true,true);Module["FS_createPath"]("/data/levels","old main 1",true,true);Module["FS_createPath"]("/data/levels","old main 10",true,true);Module["FS_createPath"]("/data/levels","old main 2",true,true);Module["FS_createPath"]("/data/levels","old main 3",true,true);Module["FS_createPath"]("/data/levels","old main 4",true,true);Module["FS_createPath"]("/data/levels","old main 5",true,true);Module["FS_createPath"]("/data/levels","old main 6",true,true);Module["FS_createPath"]("/data/levels","old main 7",true,true);Module["FS_createPath"]("/data/levels","old main 8",true,true);Module["FS_createPath"]("/data/levels","old main 9",true,true);Module["FS_createPath"]("/data/levels","redesigns",true,true);Module["FS_createPath"]("/data/levels","resize",true,true);Module["FS_createPath"]("/data/levels","statues",true,true);Module["FS_createPath"]("/data/levels","statues 2",true,true);Module["FS_createPath"]("/data/levels","testing",true,true);Module["FS_createPath"]("/","images",true,true);Module["FS_createPath"]("/images","cryptid",true,true);Module["FS_createPath"]("/images","font",true,true);Module["FS_createPath"]("/images","gallery",true,true);Module["FS_createPath"]("/images","tile",true,true);Module["FS_createPath"]("/","audio",true,true);Module["FS_createPath"]("/","save games",true,true);function DataRequest(start,end,audio){this.start=start;this.end=end;this.audio=audio}DataRequest.prototype={requests:{},open:function(mode,name){this.name=name;this.requests[name]=this;Module["addRunDependency"]("fp "+this.name)},send:function(){},onload:function(){var byteArray=this.byteArray.subarray(this.start,this.end);this.finish(byteArray)},finish:function(byteArray){var that=this;Module["FS_createDataFile"](this.name,null,byteArray,true,true,true);Module["removeRunDependency"]("fp "+that.name);this.requests[this.name]=null}};var files=metadata["files"];for(var i=0;i<files.length;++i){new DataRequest(files[i]["start"],files[i]["end"],files[i]["audio"]||0).open("GET",files[i]["filename"])}function processPackageData(arrayBuffer){assert(arrayBuffer,"Loading data file failed.");assert(arrayBuffer instanceof ArrayBuffer,"bad input to processPackageData");var byteArray=new Uint8Array(arrayBuffer);DataRequest.prototype.byteArray=byteArray;var files=metadata["files"];for(var i=0;i<files.length;++i){DataRequest.prototype.requests[files[i].filename].onload()}Module["removeRunDependency"]("datafile_index.data")}Module["addRunDependency"]("datafile_index.data");if(!Module.preloadResults)Module.preloadResults={};Module.preloadResults[PACKAGE_NAME]={fromCache:false};if(fetched){processPackageData(fetched);fetched=null}else{fetchedCallback=processPackageData}}if(Module["calledRun"]){runWithFS()}else{if(!Module["preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}};loadPackage({"files":[{"filename":"/shaders wasm/fragmentAlpha.glsl","start":0,"end":320},{"filename":"/shaders wasm/fragmentColor.glsl","start":320,"end":674},{"filename":"/shaders wasm/fragmentDefault.glsl","start":674,"end":904},{"filename":"/shaders wasm/fragmentGray.glsl","start":904,"end":1861},{"filename":"/shaders wasm/fragmentKittenGet.glsl","start":1861,"end":3500},{"filename":"/shaders wasm/fragmentMasking.glsl","start":3500,"end":3948},{"filename":"/shaders wasm/fragmentParticle.glsl","start":3948,"end":4444},{"filename":"/shaders wasm/fragmentRecolor.glsl","start":4444,"end":4919},{"filename":"/shaders wasm/fragmentShipTransition.glsl","start":4919,"end":5461},{"filename":"/shaders wasm/fragmentText.glsl","start":5461,"end":6077},{"filename":"/shaders wasm/fragmentTransition.glsl","start":6077,"end":6940},{"filename":"/shaders wasm/fragmentViewfinder.glsl","start":6940,"end":8542},{"filename":"/shaders wasm/fragmentVortex.glsl","start":8542,"end":9940},{"filename":"/shaders wasm/vertexDefault.glsl","start":9940,"end":11249},{"filename":"/data/audioCatalog.txt","start":11249,"end":11558},{"filename":"/data/credits.txt","start":11558,"end":13285},{"filename":"/data/imageCatalog.txt","start":13285,"end":16136},{"filename":"/data/kittenDialog.txt","start":16136,"end":21764},{"filename":"/data/localvars.txt","start":21764,"end":22094},{"filename":"/data/shaderList.txt","start":22094,"end":22358},{"filename":"/data/cutscenes/ending.txt","start":22358,"end":22495},{"filename":"/data/cutscenes/laikahalf.txt","start":22495,"end":22810},{"filename":"/data/cutscenes/laikatwo.txt","start":22810,"end":23091},{"filename":"/data/cutscenes/laikaunlock.txt","start":23091,"end":23332},{"filename":"/data/cutscenes/outro2.txt","start":23332,"end":23605},{"filename":"/data/cutscenes/test.txt","start":23605,"end":23901},{"filename":"/data/levels/cloners/mapData.txt","start":23901,"end":24395},{"filename":"/data/levels/cloners/room10,10.txt","start":24395,"end":24924},{"filename":"/data/levels/cloners/room10,11.txt","start":24924,"end":25517},{"filename":"/data/levels/cloners/room10,12.txt","start":25517,"end":26114},{"filename":"/data/levels/cloners/room10,9.txt","start":26114,"end":26635},{"filename":"/data/levels/cloners/room11,10.txt","start":26635,"end":27363},{"filename":"/data/levels/cloners/room11,11.txt","start":27363,"end":27895},{"filename":"/data/levels/cloners/room11,8.txt","start":27895,"end":28468},{"filename":"/data/levels/cloners/room11,9.txt","start":28468,"end":29137},{"filename":"/data/levels/cloners/room12,10.txt","start":29137,"end":29770},{"filename":"/data/levels/cloners/room12,11.txt","start":29770,"end":30316},{"filename":"/data/levels/cloners/room12,12.txt","start":30316,"end":30861},{"filename":"/data/levels/cloners/room12,13.txt","start":30861,"end":31405},{"filename":"/data/levels/cloners/room12,14.txt","start":31405,"end":31954},{"filename":"/data/levels/cloners/room12,15.txt","start":31954,"end":32509},{"filename":"/data/levels/cloners/room12,9.txt","start":32509,"end":33035},{"filename":"/data/levels/cloners/room13,15.txt","start":33035,"end":33585},{"filename":"/data/levels/cloners/room13,16.txt","start":33585,"end":34135},{"filename":"/data/levels/cloners/room7,10.txt","start":34135,"end":34670},{"filename":"/data/levels/cloners/room7,11.txt","start":34670,"end":35373},{"filename":"/data/levels/cloners/room7,12.txt","start":35373,"end":35902},{"filename":"/data/levels/cloners/room7,13.txt","start":35902,"end":36597},{"filename":"/data/levels/cloners/room8,10.txt","start":36597,"end":37459},{"filename":"/data/levels/cloners/room8,11.txt","start":37459,"end":37992},{"filename":"/data/levels/cloners/room8,12.txt","start":37992,"end":38611},{"filename":"/data/levels/cloners/room8,13.txt","start":38611,"end":39341},{"filename":"/data/levels/cloners/room8,14.txt","start":39341,"end":40140},{"filename":"/data/levels/cloners/room8,9.txt","start":40140,"end":40661},{"filename":"/data/levels/cloners/room9,10.txt","start":40661,"end":41203},{"filename":"/data/levels/cloners/room9,11.txt","start":41203,"end":41724},{"filename":"/data/levels/cloners/room9,12.txt","start":41724,"end":42245},{"filename":"/data/levels/cloners/room9,13.txt","start":42245,"end":42789},{"filename":"/data/levels/cloners2/mapData.txt","start":42789,"end":43442},{"filename":"/data/levels/cloners2/room10,10.txt","start":43442,"end":44027},{"filename":"/data/levels/cloners2/room10,11.txt","start":44027,"end":44552},{"filename":"/data/levels/cloners2/room10,7.txt","start":44552,"end":45183},{"filename":"/data/levels/cloners2/room10,8.txt","start":45183,"end":45756},{"filename":"/data/levels/cloners2/room10,9.txt","start":45756,"end":46285},{"filename":"/data/levels/cloners2/room11,10.txt","start":46285,"end":46828},{"filename":"/data/levels/cloners2/room11,9.txt","start":46828,"end":47349},{"filename":"/data/levels/cloners2/room12,10.txt","start":47349,"end":47923},{"filename":"/data/levels/cloners2/room12,21.txt","start":47923,"end":48478},{"filename":"/data/levels/cloners2/room13,21.txt","start":48478,"end":49197},{"filename":"/data/levels/cloners2/room8,10.txt","start":49197,"end":49802},{"filename":"/data/levels/cloners2/room8,9.txt","start":49802,"end":51096},{"filename":"/data/levels/cloners2/room9,10.txt","start":51096,"end":51681},{"filename":"/data/levels/cloners2/room9,11.txt","start":51681,"end":52252},{"filename":"/data/levels/cloners2/room9,12.txt","start":52252,"end":52804},{"filename":"/data/levels/cloners2/room9,13.txt","start":52804,"end":53329},{"filename":"/data/levels/cloners2/room9,14.txt","start":53329,"end":53908},{"filename":"/data/levels/cloners2/room9,15.txt","start":53908,"end":54516},{"filename":"/data/levels/cloners2/room9,16.txt","start":54516,"end":55132},{"filename":"/data/levels/cloners2/room9,7.txt","start":55132,"end":55653},{"filename":"/data/levels/cloners2/room9,8.txt","start":55653,"end":56174},{"filename":"/data/levels/cloners2/room9,9.txt","start":56174,"end":56772},{"filename":"/data/levels/conveyors/mapData.txt","start":56772,"end":57071},{"filename":"/data/levels/conveyors/room10,10.txt","start":57071,"end":57600},{"filename":"/data/levels/conveyors/room10,11.txt","start":57600,"end":58185},{"filename":"/data/levels/conveyors/room10,12.txt","start":58185,"end":58817},{"filename":"/data/levels/conveyors/room9,11.txt","start":58817,"end":59395},{"filename":"/data/levels/deadman/room10,10.txt","start":59395,"end":59916},{"filename":"/data/levels/deadman/room10,11.txt","start":59916,"end":60670},{"filename":"/data/levels/deadman/room10,12.txt","start":60670,"end":61216},{"filename":"/data/levels/deadman/room9,11.txt","start":61216,"end":61743},{"filename":"/data/levels/flags/mapData.txt","start":61743,"end":62128},{"filename":"/data/levels/flags/room10,10.txt","start":62128,"end":62649},{"filename":"/data/levels/flags/room10,11.txt","start":62649,"end":63178},{"filename":"/data/levels/flags/room10,12.txt","start":63178,"end":63715},{"filename":"/data/levels/flags/room10,13.txt","start":63715,"end":64455},{"filename":"/data/levels/flags/room11,12.txt","start":64455,"end":65126},{"filename":"/data/levels/flags/room11,13.txt","start":65126,"end":65740},{"filename":"/data/levels/flags/room12,12.txt","start":65740,"end":66261},{"filename":"/data/levels/flags/room12,13.txt","start":66261,"end":66782},{"filename":"/data/levels/flags/room9,13.txt","start":66782,"end":67303},{"filename":"/data/levels/hypothethical main/editorDefault.txt","start":67303,"end":69360},{"filename":"/data/levels/hypothethical main/mapData.txt","start":69360,"end":70391},{"filename":"/data/levels/hypothethical main/room0,0.txt","start":70391,"end":70912},{"filename":"/data/levels/hypothethical main/room0,1.txt","start":70912,"end":71433},{"filename":"/data/levels/hypothethical main/room1,0.txt","start":71433,"end":71954},{"filename":"/data/levels/hypothethical main/room1,1.txt","start":71954,"end":72475},{"filename":"/data/levels/hypothethical main/room10,10.txt","start":72475,"end":73265},{"filename":"/data/levels/hypothethical main/room10,11.txt","start":73265,"end":74090},{"filename":"/data/levels/hypothethical main/room10,12.txt","start":74090,"end":74692},{"filename":"/data/levels/hypothethical main/room10,13.txt","start":74692,"end":75341},{"filename":"/data/levels/hypothethical main/room10,14.txt","start":75341,"end":76072},{"filename":"/data/levels/hypothethical main/room10,15.txt","start":76072,"end":76711},{"filename":"/data/levels/hypothethical main/room10,16.txt","start":76711,"end":77400},{"filename":"/data/levels/hypothethical main/room10,17.txt","start":77400,"end":78191},{"filename":"/data/levels/hypothethical main/room10,18.txt","start":78191,"end":78851},{"filename":"/data/levels/hypothethical main/room10,19.txt","start":78851,"end":80197},{"filename":"/data/levels/hypothethical main/room10,20.txt","start":80197,"end":81208},{"filename":"/data/levels/hypothethical main/room10,21.txt","start":81208,"end":82318},{"filename":"/data/levels/hypothethical main/room10,7.txt","start":82318,"end":82541},{"filename":"/data/levels/hypothethical main/room11,10.txt","start":82541,"end":83160},{"filename":"/data/levels/hypothethical main/room11,11.txt","start":83160,"end":83810},{"filename":"/data/levels/hypothethical main/room11,12.txt","start":83810,"end":84426},{"filename":"/data/levels/hypothethical main/room11,13.txt","start":84426,"end":85270},{"filename":"/data/levels/hypothethical main/room11,14.txt","start":85270,"end":85964},{"filename":"/data/levels/hypothethical main/room11,15.txt","start":85964,"end":86700},{"filename":"/data/levels/hypothethical main/room11,16.txt","start":86700,"end":87712},{"filename":"/data/levels/hypothethical main/room11,17.txt","start":87712,"end":88527},{"filename":"/data/levels/hypothethical main/room11,18.txt","start":88527,"end":89407},{"filename":"/data/levels/hypothethical main/room11,19.txt","start":89407,"end":90093},{"filename":"/data/levels/hypothethical main/room11,20.txt","start":90093,"end":90951},{"filename":"/data/levels/hypothethical main/room11,21.txt","start":90951,"end":91877},{"filename":"/data/levels/hypothethical main/room11,7.txt","start":91877,"end":92110},{"filename":"/data/levels/hypothethical main/room11,9.txt","start":92110,"end":92772},{"filename":"/data/levels/hypothethical main/room12,10.txt","start":92772,"end":93416},{"filename":"/data/levels/hypothethical main/room12,11.txt","start":93416,"end":94005},{"filename":"/data/levels/hypothethical main/room12,12.txt","start":94005,"end":94799},{"filename":"/data/levels/hypothethical main/room12,13.txt","start":94799,"end":95452},{"filename":"/data/levels/hypothethical main/room12,14.txt","start":95452,"end":96145},{"filename":"/data/levels/hypothethical main/room12,15.txt","start":96145,"end":97132},{"filename":"/data/levels/hypothethical main/room12,16.txt","start":97132,"end":98015},{"filename":"/data/levels/hypothethical main/room12,17.txt","start":98015,"end":98817},{"filename":"/data/levels/hypothethical main/room12,18.txt","start":98817,"end":100151},{"filename":"/data/levels/hypothethical main/room12,19.txt","start":100151,"end":100748},{"filename":"/data/levels/hypothethical main/room12,20.txt","start":100748,"end":102248},{"filename":"/data/levels/hypothethical main/room12,21.txt","start":102248,"end":103018},{"filename":"/data/levels/hypothethical main/room12,7.txt","start":103018,"end":103440},{"filename":"/data/levels/hypothethical main/room12,8.txt","start":103440,"end":104102},{"filename":"/data/levels/hypothethical main/room12,9.txt","start":104102,"end":104665},{"filename":"/data/levels/hypothethical main/room13,10.txt","start":104665,"end":105236},{"filename":"/data/levels/hypothethical main/room13,11.txt","start":105236,"end":105848},{"filename":"/data/levels/hypothethical main/room13,12.txt","start":105848,"end":106480},{"filename":"/data/levels/hypothethical main/room13,14.txt","start":106480,"end":107524},{"filename":"/data/levels/hypothethical main/room13,15.txt","start":107524,"end":108169},{"filename":"/data/levels/hypothethical main/room13,16.txt","start":108169,"end":108829},{"filename":"/data/levels/hypothethical main/room13,17.txt","start":108829,"end":109489},{"filename":"/data/levels/hypothethical main/room13,18.txt","start":109489,"end":110122},{"filename":"/data/levels/hypothethical main/room13,19.txt","start":110122,"end":110800},{"filename":"/data/levels/hypothethical main/room13,20.txt","start":110800,"end":111472},{"filename":"/data/levels/hypothethical main/room13,21.txt","start":111472,"end":112159},{"filename":"/data/levels/hypothethical main/room13,3.txt","start":112159,"end":112748},{"filename":"/data/levels/hypothethical main/room13,4.txt","start":112748,"end":113356},{"filename":"/data/levels/hypothethical main/room13,7.txt","start":113356,"end":113549},{"filename":"/data/levels/hypothethical main/room13,8.txt","start":113549,"end":115189},{"filename":"/data/levels/hypothethical main/room13,9.txt","start":115189,"end":115778},{"filename":"/data/levels/hypothethical main/room14,10.txt","start":115778,"end":116367},{"filename":"/data/levels/hypothethical main/room14,11.txt","start":116367,"end":116956},{"filename":"/data/levels/hypothethical main/room14,14.txt","start":116956,"end":117670},{"filename":"/data/levels/hypothethical main/room14,15.txt","start":117670,"end":118487},{"filename":"/data/levels/hypothethical main/room14,16.txt","start":118487,"end":119206},{"filename":"/data/levels/hypothethical main/room14,17.txt","start":119206,"end":119889},{"filename":"/data/levels/hypothethical main/room14,18.txt","start":119889,"end":120682},{"filename":"/data/levels/hypothethical main/room14,19.txt","start":120682,"end":121501},{"filename":"/data/levels/hypothethical main/room14,20.txt","start":121501,"end":122362},{"filename":"/data/levels/hypothethical main/room14,8.txt","start":122362,"end":124148},{"filename":"/data/levels/hypothethical main/room14,9.txt","start":124148,"end":125090},{"filename":"/data/levels/hypothethical main/room15,10.txt","start":125090,"end":125455},{"filename":"/data/levels/hypothethical main/room15,11.txt","start":125455,"end":126430},{"filename":"/data/levels/hypothethical main/room15,14.txt","start":126430,"end":127079},{"filename":"/data/levels/hypothethical main/room15,19.txt","start":127079,"end":127754},{"filename":"/data/levels/hypothethical main/room15,20.txt","start":127754,"end":128522},{"filename":"/data/levels/hypothethical main/room15,8.txt","start":128522,"end":129690},{"filename":"/data/levels/hypothethical main/room15,9.txt","start":129690,"end":130933},{"filename":"/data/levels/hypothethical main/room16,10.txt","start":130933,"end":131914},{"filename":"/data/levels/hypothethical main/room16,11.txt","start":131914,"end":132885},{"filename":"/data/levels/hypothethical main/room16,20.txt","start":132885,"end":133831},{"filename":"/data/levels/hypothethical main/room17,20.txt","start":133831,"end":134634},{"filename":"/data/levels/hypothethical main/room18,20.txt","start":134634,"end":135283},{"filename":"/data/levels/hypothethical main/room3,20.txt","start":135283,"end":136140},{"filename":"/data/levels/hypothethical main/room4,15.txt","start":136140,"end":136748},{"filename":"/data/levels/hypothethical main/room4,16.txt","start":136748,"end":137337},{"filename":"/data/levels/hypothethical main/room4,19.txt","start":137337,"end":138020},{"filename":"/data/levels/hypothethical main/room4,20.txt","start":138020,"end":138807},{"filename":"/data/levels/hypothethical main/room4,21.txt","start":138807,"end":139561},{"filename":"/data/levels/hypothethical main/room4,4.txt","start":139561,"end":140657},{"filename":"/data/levels/hypothethical main/room5,14.txt","start":140657,"end":141298},{"filename":"/data/levels/hypothethical main/room5,15.txt","start":141298,"end":142112},{"filename":"/data/levels/hypothethical main/room5,16.txt","start":142112,"end":142847},{"filename":"/data/levels/hypothethical main/room5,20.txt","start":142847,"end":143870},{"filename":"/data/levels/hypothethical main/room5,9.txt","start":143870,"end":144531},{"filename":"/data/levels/hypothethical main/room6,10.txt","start":144531,"end":145199},{"filename":"/data/levels/hypothethical main/room6,13.txt","start":145199,"end":146230},{"filename":"/data/levels/hypothethical main/room6,14.txt","start":146230,"end":146863},{"filename":"/data/levels/hypothethical main/room6,15.txt","start":146863,"end":147589},{"filename":"/data/levels/hypothethical main/room6,16.txt","start":147589,"end":148341},{"filename":"/data/levels/hypothethical main/room6,17.txt","start":148341,"end":149476},{"filename":"/data/levels/hypothethical main/room6,18.txt","start":149476,"end":150500},{"filename":"/data/levels/hypothethical main/room6,19.txt","start":150500,"end":151158},{"filename":"/data/levels/hypothethical main/room6,20.txt","start":151158,"end":152276},{"filename":"/data/levels/hypothethical main/room6,21.txt","start":152276,"end":152918},{"filename":"/data/levels/hypothethical main/room6,8.txt","start":152918,"end":153507},{"filename":"/data/levels/hypothethical main/room6,9.txt","start":153507,"end":154066},{"filename":"/data/levels/hypothethical main/room7,10.txt","start":154066,"end":154641},{"filename":"/data/levels/hypothethical main/room7,11.txt","start":154641,"end":155230},{"filename":"/data/levels/hypothethical main/room7,12.txt","start":155230,"end":155961},{"filename":"/data/levels/hypothethical main/room7,13.txt","start":155961,"end":156706},{"filename":"/data/levels/hypothethical main/room7,14.txt","start":156706,"end":157429},{"filename":"/data/levels/hypothethical main/room7,15.txt","start":157429,"end":158143},{"filename":"/data/levels/hypothethical main/room7,16.txt","start":158143,"end":159026},{"filename":"/data/levels/hypothethical main/room7,17.txt","start":159026,"end":159648},{"filename":"/data/levels/hypothethical main/room7,18.txt","start":159648,"end":160325},{"filename":"/data/levels/hypothethical main/room7,19.txt","start":160325,"end":161016},{"filename":"/data/levels/hypothethical main/room7,20.txt","start":161016,"end":161653},{"filename":"/data/levels/hypothethical main/room7,21.txt","start":161653,"end":162528},{"filename":"/data/levels/hypothethical main/room7,8.txt","start":162528,"end":163117},{"filename":"/data/levels/hypothethical main/room7,9.txt","start":163117,"end":163759},{"filename":"/data/levels/hypothethical main/room8,10.txt","start":163759,"end":164322},{"filename":"/data/levels/hypothethical main/room8,11.txt","start":164322,"end":164911},{"filename":"/data/levels/hypothethical main/room8,12.txt","start":164911,"end":166049},{"filename":"/data/levels/hypothethical main/room8,13.txt","start":166049,"end":166765},{"filename":"/data/levels/hypothethical main/room8,14.txt","start":166765,"end":167417},{"filename":"/data/levels/hypothethical main/room8,15.txt","start":167417,"end":168078},{"filename":"/data/levels/hypothethical main/room8,16.txt","start":168078,"end":169049},{"filename":"/data/levels/hypothethical main/room8,17.txt","start":169049,"end":169899},{"filename":"/data/levels/hypothethical main/room8,18.txt","start":169899,"end":170568},{"filename":"/data/levels/hypothethical main/room8,19.txt","start":170568,"end":171509},{"filename":"/data/levels/hypothethical main/room8,20.txt","start":171509,"end":172393},{"filename":"/data/levels/hypothethical main/room8,21.txt","start":172393,"end":172988},{"filename":"/data/levels/hypothethical main/room8,9.txt","start":172988,"end":173647},{"filename":"/data/levels/hypothethical main/room9,10.txt","start":173647,"end":174271},{"filename":"/data/levels/hypothethical main/room9,11.txt","start":174271,"end":174891},{"filename":"/data/levels/hypothethical main/room9,12.txt","start":174891,"end":175503},{"filename":"/data/levels/hypothethical main/room9,13.txt","start":175503,"end":176092},{"filename":"/data/levels/hypothethical main/room9,14.txt","start":176092,"end":176811},{"filename":"/data/levels/hypothethical main/room9,15.txt","start":176811,"end":177406},{"filename":"/data/levels/hypothethical main/room9,16.txt","start":177406,"end":178396},{"filename":"/data/levels/hypothethical main/room9,17.txt","start":178396,"end":179313},{"filename":"/data/levels/hypothethical main/room9,18.txt","start":179313,"end":180181},{"filename":"/data/levels/hypothethical main/room9,19.txt","start":180181,"end":180908},{"filename":"/data/levels/hypothethical main/room9,20.txt","start":180908,"end":182135},{"filename":"/data/levels/hypothethical main/room9,9.txt","start":182135,"end":182803},{"filename":"/data/levels/ice/mapData.txt","start":182803,"end":183169},{"filename":"/data/levels/ice/room10,10.txt","start":183169,"end":183770},{"filename":"/data/levels/ice/room11,10.txt","start":183770,"end":184572},{"filename":"/data/levels/ice/room12,10.txt","start":184572,"end":185342},{"filename":"/data/levels/ice/room13,10.txt","start":185342,"end":185863},{"filename":"/data/levels/ice/room6,11.txt","start":185863,"end":186730},{"filename":"/data/levels/ice/room7,11.txt","start":186730,"end":187306},{"filename":"/data/levels/ice/room8,10.txt","start":187306,"end":187827},{"filename":"/data/levels/ice/room8,11.txt","start":187827,"end":188434},{"filename":"/data/levels/ice/room8,7.txt","start":188434,"end":188987},{"filename":"/data/levels/ice/room8,8.txt","start":188987,"end":189542},{"filename":"/data/levels/ice/room8,9.txt","start":189542,"end":190131},{"filename":"/data/levels/ice/room9,10.txt","start":190131,"end":190764},{"filename":"/data/levels/ice/room9,11.txt","start":190764,"end":191342},{"filename":"/data/levels/ice/room9,7.txt","start":191342,"end":191877},{"filename":"/data/levels/ice/room9,8.txt","start":191877,"end":192410},{"filename":"/data/levels/ice/room9,9.txt","start":192410,"end":192951},{"filename":"/data/levels/main/editorDefault.txt","start":192951,"end":195008},{"filename":"/data/levels/main/mapData.txt","start":195008,"end":196048},{"filename":"/data/levels/main/room0,0.txt","start":196048,"end":196603},{"filename":"/data/levels/main/room0,1.txt","start":196603,"end":197158},{"filename":"/data/levels/main/room1,0.txt","start":197158,"end":197713},{"filename":"/data/levels/main/room1,1.txt","start":197713,"end":198268},{"filename":"/data/levels/main/room10,10.txt","start":198268,"end":198866},{"filename":"/data/levels/main/room10,11.txt","start":198866,"end":199831},{"filename":"/data/levels/main/room10,12.txt","start":199831,"end":200433},{"filename":"/data/levels/main/room10,13.txt","start":200433,"end":201082},{"filename":"/data/levels/main/room10,14.txt","start":201082,"end":201813},{"filename":"/data/levels/main/room10,15.txt","start":201813,"end":202452},{"filename":"/data/levels/main/room10,16.txt","start":202452,"end":203141},{"filename":"/data/levels/main/room10,17.txt","start":203141,"end":203932},{"filename":"/data/levels/main/room10,18.txt","start":203932,"end":204592},{"filename":"/data/levels/main/room10,19.txt","start":204592,"end":206036},{"filename":"/data/levels/main/room10,20.txt","start":206036,"end":206932},{"filename":"/data/levels/main/room10,21.txt","start":206932,"end":207842},{"filename":"/data/levels/main/room10,5.txt","start":207842,"end":208927},{"filename":"/data/levels/main/room10,6.txt","start":208927,"end":221838},{"filename":"/data/levels/main/room10,7.txt","start":221838,"end":222065},{"filename":"/data/levels/main/room11,10.txt","start":222065,"end":222688},{"filename":"/data/levels/main/room11,11.txt","start":222688,"end":223342},{"filename":"/data/levels/main/room11,12.txt","start":223342,"end":224041},{"filename":"/data/levels/main/room11,13.txt","start":224041,"end":227104},{"filename":"/data/levels/main/room11,14.txt","start":227104,"end":227798},{"filename":"/data/levels/main/room11,15.txt","start":227798,"end":228534},{"filename":"/data/levels/main/room11,16.txt","start":228534,"end":229570},{"filename":"/data/levels/main/room11,17.txt","start":229570,"end":230365},{"filename":"/data/levels/main/room11,18.txt","start":230365,"end":231245},{"filename":"/data/levels/main/room11,19.txt","start":231245,"end":231931},{"filename":"/data/levels/main/room11,20.txt","start":231931,"end":232789},{"filename":"/data/levels/main/room11,21.txt","start":232789,"end":233747},{"filename":"/data/levels/main/room11,7.txt","start":233747,"end":233984},{"filename":"/data/levels/main/room11,9.txt","start":233984,"end":234677},{"filename":"/data/levels/main/room12,10.txt","start":234677,"end":235325},{"filename":"/data/levels/main/room12,11.txt","start":235325,"end":235959},{"filename":"/data/levels/main/room12,12.txt","start":235959,"end":236614},{"filename":"/data/levels/main/room12,13.txt","start":236614,"end":237308},{"filename":"/data/levels/main/room12,14.txt","start":237308,"end":238001},{"filename":"/data/levels/main/room12,15.txt","start":238001,"end":238988},{"filename":"/data/levels/main/room12,16.txt","start":238988,"end":239958},{"filename":"/data/levels/main/room12,17.txt","start":239958,"end":240760},{"filename":"/data/levels/main/room12,18.txt","start":240760,"end":242087},{"filename":"/data/levels/main/room12,19.txt","start":242087,"end":242684},{"filename":"/data/levels/main/room12,20.txt","start":242684,"end":244228},{"filename":"/data/levels/main/room12,21.txt","start":244228,"end":245003},{"filename":"/data/levels/main/room12,7.txt","start":245003,"end":245429},{"filename":"/data/levels/main/room12,8.txt","start":245429,"end":246121},{"filename":"/data/levels/main/room12,9.txt","start":246121,"end":246736},{"filename":"/data/levels/main/room13,10.txt","start":246736,"end":247359},{"filename":"/data/levels/main/room13,11.txt","start":247359,"end":247974},{"filename":"/data/levels/main/room13,12.txt","start":247974,"end":248651},{"filename":"/data/levels/main/room13,13.txt","start":248651,"end":249477},{"filename":"/data/levels/main/room13,14.txt","start":249477,"end":250246},{"filename":"/data/levels/main/room13,15.txt","start":250246,"end":250891},{"filename":"/data/levels/main/room13,16.txt","start":250891,"end":251551},{"filename":"/data/levels/main/room13,17.txt","start":251551,"end":252211},{"filename":"/data/levels/main/room13,18.txt","start":252211,"end":252844},{"filename":"/data/levels/main/room13,19.txt","start":252844,"end":253522},{"filename":"/data/levels/main/room13,20.txt","start":253522,"end":254228},{"filename":"/data/levels/main/room13,21.txt","start":254228,"end":254931},{"filename":"/data/levels/main/room13,3.txt","start":254931,"end":255623},{"filename":"/data/levels/main/room13,4.txt","start":255623,"end":256235},{"filename":"/data/levels/main/room13,7.txt","start":256235,"end":256432},{"filename":"/data/levels/main/room13,8.txt","start":256432,"end":258054},{"filename":"/data/levels/main/room13,9.txt","start":258054,"end":258672},{"filename":"/data/levels/main/room14,10.txt","start":258672,"end":259288},{"filename":"/data/levels/main/room14,11.txt","start":259288,"end":259921},{"filename":"/data/levels/main/room14,14.txt","start":259921,"end":260635},{"filename":"/data/levels/main/room14,15.txt","start":260635,"end":261481},{"filename":"/data/levels/main/room14,16.txt","start":261481,"end":262200},{"filename":"/data/levels/main/room14,17.txt","start":262200,"end":262883},{"filename":"/data/levels/main/room14,18.txt","start":262883,"end":263676},{"filename":"/data/levels/main/room14,19.txt","start":263676,"end":264495},{"filename":"/data/levels/main/room14,20.txt","start":264495,"end":265291},{"filename":"/data/levels/main/room14,8.txt","start":265291,"end":267043},{"filename":"/data/levels/main/room14,9.txt","start":267043,"end":268077},{"filename":"/data/levels/main/room15,10.txt","start":268077,"end":268475},{"filename":"/data/levels/main/room15,11.txt","start":268475,"end":269449},{"filename":"/data/levels/main/room15,14.txt","start":269449,"end":270128},{"filename":"/data/levels/main/room15,19.txt","start":270128,"end":270826},{"filename":"/data/levels/main/room15,20.txt","start":270826,"end":271594},{"filename":"/data/levels/main/room15,8.txt","start":271594,"end":272762},{"filename":"/data/levels/main/room15,9.txt","start":272762,"end":274081},{"filename":"/data/levels/main/room16,10.txt","start":274081,"end":274311},{"filename":"/data/levels/main/room16,11.txt","start":274311,"end":275282},{"filename":"/data/levels/main/room16,20.txt","start":275282,"end":276033},{"filename":"/data/levels/main/room16,9.txt","start":276033,"end":277459},{"filename":"/data/levels/main/room17,20.txt","start":277459,"end":278262},{"filename":"/data/levels/main/room18,20.txt","start":278262,"end":278944},{"filename":"/data/levels/main/room3,20.txt","start":278944,"end":279801},{"filename":"/data/levels/main/room4,15.txt","start":279801,"end":280413},{"filename":"/data/levels/main/room4,16.txt","start":280413,"end":281035},{"filename":"/data/levels/main/room4,19.txt","start":281035,"end":281747},{"filename":"/data/levels/main/room4,20.txt","start":281747,"end":282569},{"filename":"/data/levels/main/room4,21.txt","start":282569,"end":283323},{"filename":"/data/levels/main/room4,4.txt","start":283323,"end":284340},{"filename":"/data/levels/main/room5,14.txt","start":284340,"end":285016},{"filename":"/data/levels/main/room5,15.txt","start":285016,"end":285830},{"filename":"/data/levels/main/room5,16.txt","start":285830,"end":286565},{"filename":"/data/levels/main/room5,20.txt","start":286565,"end":287588},{"filename":"/data/levels/main/room5,9.txt","start":287588,"end":288275},{"filename":"/data/levels/main/room6,10.txt","start":288275,"end":288984},{"filename":"/data/levels/main/room6,11.txt","start":288984,"end":289802},{"filename":"/data/levels/main/room6,13.txt","start":289802,"end":290662},{"filename":"/data/levels/main/room6,14.txt","start":290662,"end":291295},{"filename":"/data/levels/main/room6,15.txt","start":291295,"end":292021},{"filename":"/data/levels/main/room6,16.txt","start":292021,"end":292773},{"filename":"/data/levels/main/room6,17.txt","start":292773,"end":293981},{"filename":"/data/levels/main/room6,18.txt","start":293981,"end":294769},{"filename":"/data/levels/main/room6,19.txt","start":294769,"end":295472},{"filename":"/data/levels/main/room6,20.txt","start":295472,"end":296605},{"filename":"/data/levels/main/room6,21.txt","start":296605,"end":297272},{"filename":"/data/levels/main/room6,8.txt","start":297272,"end":297896},{"filename":"/data/levels/main/room6,9.txt","start":297896,"end":298459},{"filename":"/data/levels/main/room7,10.txt","start":298459,"end":299038},{"filename":"/data/levels/main/room7,11.txt","start":299038,"end":299665},{"filename":"/data/levels/main/room7,12.txt","start":299665,"end":300396},{"filename":"/data/levels/main/room7,13.txt","start":300396,"end":301141},{"filename":"/data/levels/main/room7,14.txt","start":301141,"end":301864},{"filename":"/data/levels/main/room7,15.txt","start":301864,"end":302578},{"filename":"/data/levels/main/room7,16.txt","start":302578,"end":303461},{"filename":"/data/levels/main/room7,17.txt","start":303461,"end":304083},{"filename":"/data/levels/main/room7,18.txt","start":304083,"end":304760},{"filename":"/data/levels/main/room7,19.txt","start":304760,"end":305451},{"filename":"/data/levels/main/room7,20.txt","start":305451,"end":306122},{"filename":"/data/levels/main/room7,21.txt","start":306122,"end":307049},{"filename":"/data/levels/main/room7,8.txt","start":307049,"end":307673},{"filename":"/data/levels/main/room7,9.txt","start":307673,"end":308322},{"filename":"/data/levels/main/room8,10.txt","start":308322,"end":308939},{"filename":"/data/levels/main/room8,11.txt","start":308939,"end":309563},{"filename":"/data/levels/main/room8,12.txt","start":309563,"end":310701},{"filename":"/data/levels/main/room8,13.txt","start":310701,"end":311347},{"filename":"/data/levels/main/room8,14.txt","start":311347,"end":311999},{"filename":"/data/levels/main/room8,15.txt","start":311999,"end":312660},{"filename":"/data/levels/main/room8,16.txt","start":312660,"end":313437},{"filename":"/data/levels/main/room8,17.txt","start":313437,"end":314316},{"filename":"/data/levels/main/room8,18.txt","start":314316,"end":314985},{"filename":"/data/levels/main/room8,19.txt","start":314985,"end":315926},{"filename":"/data/levels/main/room8,20.txt","start":315926,"end":316733},{"filename":"/data/levels/main/room8,21.txt","start":316733,"end":317328},{"filename":"/data/levels/main/room8,8.txt","start":317328,"end":317994},{"filename":"/data/levels/main/room8,9.txt","start":317994,"end":319713},{"filename":"/data/levels/main/room9,10.txt","start":319713,"end":320336},{"filename":"/data/levels/main/room9,11.txt","start":320336,"end":320960},{"filename":"/data/levels/main/room9,12.txt","start":320960,"end":321572},{"filename":"/data/levels/main/room9,13.txt","start":321572,"end":322187},{"filename":"/data/levels/main/room9,14.txt","start":322187,"end":322938},{"filename":"/data/levels/main/room9,15.txt","start":322938,"end":323533},{"filename":"/data/levels/main/room9,16.txt","start":323533,"end":324175},{"filename":"/data/levels/main/room9,17.txt","start":324175,"end":324894},{"filename":"/data/levels/main/room9,18.txt","start":324894,"end":325793},{"filename":"/data/levels/main/room9,19.txt","start":325793,"end":326520},{"filename":"/data/levels/main/room9,20.txt","start":326520,"end":327779},{"filename":"/data/levels/main/room9,9.txt","start":327779,"end":328495},{"filename":"/data/levels/mapAuditTest/mapData.txt","start":328495,"end":328771},{"filename":"/data/levels/mapAuditTest/room10,10.txt","start":328771,"end":329394},{"filename":"/data/levels/mapAuditTest/room11,10.txt","start":329394,"end":329954},{"filename":"/data/levels/mapAuditTest/room11,9.txt","start":329954,"end":330514},{"filename":"/data/levels/meta/mapData.txt","start":330514,"end":330791},{"filename":"/data/levels/meta/room10,10.txt","start":330791,"end":331488},{"filename":"/data/levels/meta/room10,11.txt","start":331488,"end":332017},{"filename":"/data/levels/meta/room9,10.txt","start":332017,"end":332778},{"filename":"/data/levels/meta/room9,11.txt","start":332778,"end":333371},{"filename":"/data/levels/misc/mapData.txt","start":333371,"end":334284},{"filename":"/data/levels/misc/room10,10.txt","start":334284,"end":334821},{"filename":"/data/levels/misc/room10,11.txt","start":334821,"end":335473},{"filename":"/data/levels/misc/room10,12.txt","start":335473,"end":336092},{"filename":"/data/levels/misc/room10,13.txt","start":336092,"end":336613},{"filename":"/data/levels/misc/room10,5.txt","start":336613,"end":337186},{"filename":"/data/levels/misc/room10,6.txt","start":337186,"end":337899},{"filename":"/data/levels/misc/room10,7.txt","start":337899,"end":338547},{"filename":"/data/levels/misc/room10,8.txt","start":338547,"end":339076},{"filename":"/data/levels/misc/room10,9.txt","start":339076,"end":339622},{"filename":"/data/levels/misc/room11,10.txt","start":339622,"end":340169},{"filename":"/data/levels/misc/room11,11.txt","start":340169,"end":340690},{"filename":"/data/levels/misc/room11,12.txt","start":340690,"end":341229},{"filename":"/data/levels/misc/room11,16.txt","start":341229,"end":342235},{"filename":"/data/levels/misc/room11,17.txt","start":342235,"end":342756},{"filename":"/data/levels/misc/room11,5.txt","start":342756,"end":343278},{"filename":"/data/levels/misc/room11,9.txt","start":343278,"end":343840},{"filename":"/data/levels/misc/room12,10.txt","start":343840,"end":344447},{"filename":"/data/levels/misc/room13,10.txt","start":344447,"end":344968},{"filename":"/data/levels/misc/room14,17.txt","start":344968,"end":345651},{"filename":"/data/levels/misc/room14,18.txt","start":345651,"end":346172},{"filename":"/data/levels/misc/room14,19.txt","start":346172,"end":346995},{"filename":"/data/levels/misc/room15,19.txt","start":346995,"end":347516},{"filename":"/data/levels/misc/room5,15.txt","start":347516,"end":348037},{"filename":"/data/levels/misc/room5,16.txt","start":348037,"end":348924},{"filename":"/data/levels/misc/room6,16.txt","start":348924,"end":349569},{"filename":"/data/levels/misc/room6,9.txt","start":349569,"end":350166},{"filename":"/data/levels/misc/room7,10.txt","start":350166,"end":351290},{"filename":"/data/levels/misc/room7,16.txt","start":351290,"end":352194},{"filename":"/data/levels/misc/room7,17.txt","start":352194,"end":352715},{"filename":"/data/levels/misc/room7,18.txt","start":352715,"end":362174},{"filename":"/data/levels/misc/room7,21.txt","start":362174,"end":362984},{"filename":"/data/levels/misc/room7,22.txt","start":362984,"end":363687},{"filename":"/data/levels/misc/room7,23.txt","start":363687,"end":364384},{"filename":"/data/levels/misc/room7,24.txt","start":364384,"end":365089},{"filename":"/data/levels/misc/room7,25.txt","start":365089,"end":366065},{"filename":"/data/levels/misc/room7,9.txt","start":366065,"end":366677},{"filename":"/data/levels/misc/room8,10.txt","start":366677,"end":367214},{"filename":"/data/levels/misc/room8,17.txt","start":367214,"end":368004},{"filename":"/data/levels/misc/room8,18.txt","start":368004,"end":368671},{"filename":"/data/levels/misc/room8,19.txt","start":368671,"end":369606},{"filename":"/data/levels/misc/room8,9.txt","start":369606,"end":370502},{"filename":"/data/levels/misc/room9,10.txt","start":370502,"end":371023},{"filename":"/data/levels/misc/room9,11.txt","start":371023,"end":371548},{"filename":"/data/levels/misc/room9,5.txt","start":371548,"end":372077},{"filename":"/data/levels/misc/room9,9.txt","start":372077,"end":372610},{"filename":"/data/levels/misc 2/room8,17.txt","start":372610,"end":373131},{"filename":"/data/levels/misc 2/room8,18.txt","start":373131,"end":373800},{"filename":"/data/levels/moveTests/recording.txt","start":373800,"end":375309},{"filename":"/data/levels/moveTests/room0,0.txt","start":375309,"end":375832},{"filename":"/data/levels/moveTests/room1,0.txt","start":375832,"end":376359},{"filename":"/data/levels/moveTests/room10,0.txt","start":376359,"end":376888},{"filename":"/data/levels/moveTests/room11,0.txt","start":376888,"end":377414},{"filename":"/data/levels/moveTests/room12,0.txt","start":377414,"end":377943},{"filename":"/data/levels/moveTests/room13,0.txt","start":377943,"end":378479},{"filename":"/data/levels/moveTests/room14,0.txt","start":378479,"end":379021},{"filename":"/data/levels/moveTests/room15,0.txt","start":379021,"end":379563},{"filename":"/data/levels/moveTests/room16,0.txt","start":379563,"end":380102},{"filename":"/data/levels/moveTests/room17,0.txt","start":380102,"end":380626},{"filename":"/data/levels/moveTests/room18,0.txt","start":380626,"end":381157},{"filename":"/data/levels/moveTests/room19,0.txt","start":381157,"end":381712},{"filename":"/data/levels/moveTests/room2,0.txt","start":381712,"end":382241},{"filename":"/data/levels/moveTests/room20,0.txt","start":382241,"end":382786},{"filename":"/data/levels/moveTests/room21,0.txt","start":382786,"end":383327},{"filename":"/data/levels/moveTests/room22,0.txt","start":383327,"end":383868},{"filename":"/data/levels/moveTests/room23,0.txt","start":383868,"end":384457},{"filename":"/data/levels/moveTests/room24,0.txt","start":384457,"end":384996},{"filename":"/data/levels/moveTests/room25,0.txt","start":384996,"end":385519},{"filename":"/data/levels/moveTests/room26,0.txt","start":385519,"end":386045},{"filename":"/data/levels/moveTests/room3,0.txt","start":386045,"end":386590},{"filename":"/data/levels/moveTests/room4,0.txt","start":386590,"end":387139},{"filename":"/data/levels/moveTests/room5,0.txt","start":387139,"end":387699},{"filename":"/data/levels/moveTests/room6,0.txt","start":387699,"end":388220},{"filename":"/data/levels/moveTests/room7,0.txt","start":388220,"end":388748},{"filename":"/data/levels/moveTests/room8,0.txt","start":388748,"end":389278},{"filename":"/data/levels/moveTests/room9,0.txt","start":389278,"end":389807},{"filename":"/data/levels/multiman/mapData.txt","start":389807,"end":390249},{"filename":"/data/levels/multiman/room10,10.txt","start":390249,"end":390770},{"filename":"/data/levels/multiman/room10,11.txt","start":390770,"end":391291},{"filename":"/data/levels/multiman/room11,11.txt","start":391291,"end":391878},{"filename":"/data/levels/multiman/room11,12.txt","start":391878,"end":392413},{"filename":"/data/levels/multiman/room12,11.txt","start":392413,"end":393032},{"filename":"/data/levels/multiman/room13,10.txt","start":393032,"end":393553},{"filename":"/data/levels/multiman/room13,11.txt","start":393553,"end":394110},{"filename":"/data/levels/multiman/room13,12.txt","start":394110,"end":394692},{"filename":"/data/levels/multiman/room13,4.txt","start":394692,"end":395264},{"filename":"/data/levels/multiman/room14,11.txt","start":395264,"end":395871},{"filename":"/data/levels/multiman/room14,12.txt","start":395871,"end":396455},{"filename":"/data/levels/multiman/room14,4.txt","start":396455,"end":396976},{"filename":"/data/levels/multiman/room15,11.txt","start":396976,"end":397497},{"filename":"/data/levels/multiman/room15,12.txt","start":397497,"end":398079},{"filename":"/data/levels/multiman/room9,11.txt","start":398079,"end":398604},{"filename":"/data/levels/old/cloners/mapData.txt","start":398604,"end":399021},{"filename":"/data/levels/old/cloners/room10,10.txt","start":399021,"end":399560},{"filename":"/data/levels/old/cloners/room10,11.txt","start":399560,"end":400087},{"filename":"/data/levels/old/cloners/room10,8.txt","start":400087,"end":400628},{"filename":"/data/levels/old/cloners/room10,9.txt","start":400628,"end":401185},{"filename":"/data/levels/old/cloners/room11,10.txt","start":401185,"end":401706},{"filename":"/data/levels/old/cloners/room11,11.txt","start":401706,"end":402243},{"filename":"/data/levels/old/cloners/room11,9.txt","start":402243,"end":402788},{"filename":"/data/levels/old/cloners/room12,10.txt","start":402788,"end":403315},{"filename":"/data/levels/old/cloners/room12,11.txt","start":403315,"end":403836},{"filename":"/data/levels/old/cloners/room12,12.txt","start":403836,"end":404393},{"filename":"/data/levels/old/cloners/room12,9.txt","start":404393,"end":404938},{"filename":"/data/levels/old/cloners/room13,10.txt","start":404938,"end":406044},{"filename":"/data/levels/old/cloners/room13,11.txt","start":406044,"end":406565},{"filename":"/data/levels/old/cloners/room14,11.txt","start":406565,"end":407144},{"filename":"/data/levels/old/cloners/room9,10.txt","start":407144,"end":407694},{"filename":"/data/levels/old/cloners/room9,11.txt","start":407694,"end":408226},{"filename":"/data/levels/old/cloners2/mapData.txt","start":408226,"end":408508},{"filename":"/data/levels/old/cloners2/room10,10.txt","start":408508,"end":409056},{"filename":"/data/levels/old/cloners2/room10,11.txt","start":409056,"end":409577},{"filename":"/data/levels/old/cloners2/room10,12.txt","start":409577,"end":410114},{"filename":"/data/levels/old/cloners2/room10,8.txt","start":410114,"end":410667},{"filename":"/data/levels/old/cloners2/room10,9.txt","start":410667,"end":411230},{"filename":"/data/levels/old/cloners2/room11,10.txt","start":411230,"end":411748},{"filename":"/data/levels/old/cloners2/room11,8.txt","start":411748,"end":412283},{"filename":"/data/levels/old/cloners2/room11,9.txt","start":412283,"end":412839},{"filename":"/data/levels/old/conveyors/mapData.txt","start":412839,"end":413313},{"filename":"/data/levels/old/conveyors/room10,10.txt","start":413313,"end":413852},{"filename":"/data/levels/old/conveyors/room10,11.txt","start":413852,"end":414391},{"filename":"/data/levels/old/conveyors/room10,9.txt","start":414391,"end":414912},{"filename":"/data/levels/old/conveyors/room11,10.txt","start":414912,"end":415433},{"filename":"/data/levels/old/conveyors/room11,11.txt","start":415433,"end":415972},{"filename":"/data/levels/old/conveyors/room11,9.txt","start":415972,"end":416546},{"filename":"/data/levels/old/conveyors/room12,10.txt","start":416546,"end":417067},{"filename":"/data/levels/old/conveyors/room12,11.txt","start":417067,"end":417597},{"filename":"/data/levels/old/conveyors/room12,12.txt","start":417597,"end":418142},{"filename":"/data/levels/old/conveyors/room12,13.txt","start":418142,"end":418681},{"filename":"/data/levels/old/conveyors/room13,10.txt","start":418681,"end":419199},{"filename":"/data/levels/old/conveyors/room13,9.txt","start":419199,"end":419717},{"filename":"/data/levels/old/conveyors/room14,10.txt","start":419717,"end":420313},{"filename":"/data/levels/old/conveyors/room14,11.txt","start":420313,"end":420831},{"filename":"/data/levels/old/conveyors/room14,9.txt","start":420831,"end":421374},{"filename":"/data/levels/old/conveyors/room15,10.txt","start":421374,"end":421900},{"filename":"/data/levels/old/conveyors/room9,10.txt","start":421900,"end":422430},{"filename":"/data/levels/old/conveyors/room9,9.txt","start":422430,"end":422952},{"filename":"/data/levels/old/deadman/mapData.txt","start":422952,"end":423342},{"filename":"/data/levels/old/deadman/room10,10.txt","start":423342,"end":423869},{"filename":"/data/levels/old/deadman/room10,11.txt","start":423869,"end":424390},{"filename":"/data/levels/old/deadman/room10,12.txt","start":424390,"end":424911},{"filename":"/data/levels/old/deadman/room10,13.txt","start":424911,"end":425432},{"filename":"/data/levels/old/deadman/room10,14.txt","start":425432,"end":425953},{"filename":"/data/levels/old/deadman/room10,9.txt","start":425953,"end":426505},{"filename":"/data/levels/old/deadman/room11,11.txt","start":426505,"end":427065},{"filename":"/data/levels/old/deadman/room11,12.txt","start":427065,"end":427645},{"filename":"/data/levels/old/deadman/room11,13.txt","start":427645,"end":428181},{"filename":"/data/levels/old/deadman/room11,14.txt","start":428181,"end":428729},{"filename":"/data/levels/old/deadman/room12,11.txt","start":428729,"end":429247},{"filename":"/data/levels/old/deadman/room12,13.txt","start":429247,"end":429788},{"filename":"/data/levels/old/deadman/room8,10.txt","start":429788,"end":430306},{"filename":"/data/levels/old/deadman/room9,10.txt","start":430306,"end":430827},{"filename":"/data/levels/old/example/room10,10.txt","start":430827,"end":431386},{"filename":"/data/levels/old/ice/mapData.txt","start":431386,"end":431786},{"filename":"/data/levels/old/ice/room10,10.txt","start":431786,"end":432319},{"filename":"/data/levels/old/ice/room10,11.txt","start":432319,"end":432857},{"filename":"/data/levels/old/ice/room10,9.txt","start":432857,"end":433387},{"filename":"/data/levels/old/ice/room11,10.txt","start":433387,"end":433908},{"filename":"/data/levels/old/ice/room11,11.txt","start":433908,"end":434442},{"filename":"/data/levels/old/ice/room11,8.txt","start":434442,"end":434985},{"filename":"/data/levels/old/ice/room11,9.txt","start":434985,"end":435551},{"filename":"/data/levels/old/ice/room12,10.txt","start":435551,"end":436072},{"filename":"/data/levels/old/ice/room12,11.txt","start":436072,"end":436610},{"filename":"/data/levels/old/ice/room12,12.txt","start":436610,"end":437146},{"filename":"/data/levels/old/ice/room12,8.txt","start":437146,"end":437664},{"filename":"/data/levels/old/ice/room12,9.txt","start":437664,"end":438304},{"filename":"/data/levels/old/ice/room13,10.txt","start":438304,"end":438831},{"filename":"/data/levels/old/ice/room13,11.txt","start":438831,"end":439349},{"filename":"/data/levels/old/ice/room13,8.txt","start":439349,"end":439932},{"filename":"/data/levels/old/ice/room13,9.txt","start":439932,"end":440560},{"filename":"/data/levels/old/ice/room8,10.txt","start":440560,"end":441130},{"filename":"/data/levels/old/ice/room9,10.txt","start":441130,"end":441751},{"filename":"/data/levels/old/kitten spawner/room10,10.txt","start":441751,"end":442287},{"filename":"/data/levels/old/kitten spawner/room10,9.txt","start":442287,"end":442829},{"filename":"/data/levels/old/kitten spawner/room9,10.txt","start":442829,"end":443372},{"filename":"/data/levels/old/kitten spawner/room9,9.txt","start":443372,"end":443911},{"filename":"/data/levels/old/main/mapData.txt","start":443911,"end":444390},{"filename":"/data/levels/old/main/room0,12.txt","start":444390,"end":445147},{"filename":"/data/levels/old/main/room1,12.txt","start":445147,"end":445757},{"filename":"/data/levels/old/main/room10,10.txt","start":445757,"end":446401},{"filename":"/data/levels/old/main/room10,11.txt","start":446401,"end":447038},{"filename":"/data/levels/old/main/room10,12.txt","start":447038,"end":447624},{"filename":"/data/levels/old/main/room2,12.txt","start":447624,"end":448222},{"filename":"/data/levels/old/main/room3,11.txt","start":448222,"end":448868},{"filename":"/data/levels/old/main/room3,12.txt","start":448868,"end":449509},{"filename":"/data/levels/old/main/room3,13.txt","start":449509,"end":450565},{"filename":"/data/levels/old/main/room3,14.txt","start":450565,"end":451156},{"filename":"/data/levels/old/main/room3,15.txt","start":451156,"end":451683},{"filename":"/data/levels/old/main/room3,16.txt","start":451683,"end":452215},{"filename":"/data/levels/old/main/room3,17.txt","start":452215,"end":453682},{"filename":"/data/levels/old/main/room4,10.txt","start":453682,"end":454280},{"filename":"/data/levels/old/main/room4,11.txt","start":454280,"end":454895},{"filename":"/data/levels/old/main/room4,12.txt","start":454895,"end":455580},{"filename":"/data/levels/old/main/room4,13.txt","start":455580,"end":456267},{"filename":"/data/levels/old/main/room4,7.txt","start":456267,"end":456938},{"filename":"/data/levels/old/main/room5,10.txt","start":456938,"end":457580},{"filename":"/data/levels/old/main/room5,11.txt","start":457580,"end":458263},{"filename":"/data/levels/old/main/room5,12.txt","start":458263,"end":458907},{"filename":"/data/levels/old/main/room5,13.txt","start":458907,"end":459601},{"filename":"/data/levels/old/main/room5,14.txt","start":459601,"end":460273},{"filename":"/data/levels/old/main/room5,7.txt","start":460273,"end":460795},{"filename":"/data/levels/old/main/room5,8.txt","start":460795,"end":461419},{"filename":"/data/levels/old/main/room5,9.txt","start":461419,"end":462011},{"filename":"/data/levels/old/main/room6,10.txt","start":462011,"end":462623},{"filename":"/data/levels/old/main/room6,11.txt","start":462623,"end":463328},{"filename":"/data/levels/old/main/room6,12.txt","start":463328,"end":463886},{"filename":"/data/levels/old/main/room6,8.txt","start":463886,"end":464476},{"filename":"/data/levels/old/main/room6,9.txt","start":464476,"end":465043},{"filename":"/data/levels/old/main/room7,10.txt","start":465043,"end":465854},{"filename":"/data/levels/old/main/room7,11.txt","start":465854,"end":466624},{"filename":"/data/levels/old/main/room7,12.txt","start":466624,"end":467149},{"filename":"/data/levels/old/main/room7,7.txt","start":467149,"end":467667},{"filename":"/data/levels/old/main/room7,8.txt","start":467667,"end":468313},{"filename":"/data/levels/old/main/room7,9.txt","start":468313,"end":470473},{"filename":"/data/levels/old/main/room8,10.txt","start":470473,"end":471065},{"filename":"/data/levels/old/main/room8,11.txt","start":471065,"end":471696},{"filename":"/data/levels/old/main/room8,12.txt","start":471696,"end":472719},{"filename":"/data/levels/old/main/room8,13.txt","start":472719,"end":473318},{"filename":"/data/levels/old/main/room8,14.txt","start":473318,"end":474046},{"filename":"/data/levels/old/main/room8,15.txt","start":474046,"end":474641},{"filename":"/data/levels/old/main/room8,8.txt","start":474641,"end":475204},{"filename":"/data/levels/old/main/room8,9.txt","start":475204,"end":476001},{"filename":"/data/levels/old/main/room9,12.txt","start":476001,"end":476864},{"filename":"/data/levels/old/main/room9,8.txt","start":476864,"end":477464},{"filename":"/data/levels/old/main/room9,9.txt","start":477464,"end":478147},{"filename":"/data/levels/old/misc/mapData.txt","start":478147,"end":478505},{"filename":"/data/levels/old/misc/room10,10.txt","start":478505,"end":479100},{"filename":"/data/levels/old/misc/room10,11.txt","start":479100,"end":479799},{"filename":"/data/levels/old/misc/room10,12.txt","start":479799,"end":480382},{"filename":"/data/levels/old/misc/room10,13.txt","start":480382,"end":480930},{"filename":"/data/levels/old/misc/room11,10.txt","start":480930,"end":481454},{"filename":"/data/levels/old/misc/room11,11.txt","start":481454,"end":482178},{"filename":"/data/levels/old/misc/room11,12.txt","start":482178,"end":482767},{"filename":"/data/levels/old/misc/room11,13.txt","start":482767,"end":483299},{"filename":"/data/levels/old/misc/room8,10.txt","start":483299,"end":483821},{"filename":"/data/levels/old/misc/room9,10.txt","start":483821,"end":484798},{"filename":"/data/levels/old/misc/room9,11.txt","start":484798,"end":485323},{"filename":"/data/levels/old/misc/room9,12.txt","start":485323,"end":485856},{"filename":"/data/levels/old/misc/room9,13.txt","start":485856,"end":486404},{"filename":"/data/levels/old/multiman/mapData.txt","start":486404,"end":486853},{"filename":"/data/levels/old/multiman/room10,10.txt","start":486853,"end":487389},{"filename":"/data/levels/old/multiman/room10,11.txt","start":487389,"end":488054},{"filename":"/data/levels/old/multiman/room10,8.txt","start":488054,"end":488572},{"filename":"/data/levels/old/multiman/room11,10.txt","start":488572,"end":489111},{"filename":"/data/levels/old/multiman/room11,11.txt","start":489111,"end":489629},{"filename":"/data/levels/old/multiman/room11,4.txt","start":489629,"end":490166},{"filename":"/data/levels/old/multiman/room11,5.txt","start":490166,"end":490689},{"filename":"/data/levels/old/multiman/room11,6.txt","start":490689,"end":491228},{"filename":"/data/levels/old/multiman/room11,7.txt","start":491228,"end":491752},{"filename":"/data/levels/old/multiman/room11,8.txt","start":491752,"end":492350},{"filename":"/data/levels/old/multiman/room11,9.txt","start":492350,"end":492910},{"filename":"/data/levels/old/multiman/room12,10.txt","start":492910,"end":493448},{"filename":"/data/levels/old/multiman/room12,4.txt","start":493448,"end":494013},{"filename":"/data/levels/old/multiman/room12,5.txt","start":494013,"end":494536},{"filename":"/data/levels/old/multiman/room12,6.txt","start":494536,"end":495063},{"filename":"/data/levels/old/multiman/room12,7.txt","start":495063,"end":495635},{"filename":"/data/levels/old/multiman/room12,8.txt","start":495635,"end":496209},{"filename":"/data/levels/old/multiman/room12,9.txt","start":496209,"end":496754},{"filename":"/data/levels/old/multiman/room13,10.txt","start":496754,"end":497297},{"filename":"/data/levels/old/multiman/room13,6.txt","start":497297,"end":497815},{"filename":"/data/levels/old/multiman/room13,7.txt","start":497815,"end":498343},{"filename":"/data/levels/old/multiman/room13,8.txt","start":498343,"end":498937},{"filename":"/data/levels/old/multiman/room13,9.txt","start":498937,"end":499477},{"filename":"/data/levels/old/multiman/room14,6.txt","start":499477,"end":499998},{"filename":"/data/levels/old/multiman/room15,6.txt","start":499998,"end":500551},{"filename":"/data/levels/old/multiman/room16,6.txt","start":500551,"end":501086},{"filename":"/data/levels/old/multiman/room9,10.txt","start":501086,"end":501640},{"filename":"/data/levels/old/old main 1/mapData.txt","start":501640,"end":502016},{"filename":"/data/levels/old/old main 1/room10,10.txt","start":502016,"end":502556},{"filename":"/data/levels/old/old main 1/room10,11.txt","start":502556,"end":503098},{"filename":"/data/levels/old/old main 1/room10,12.txt","start":503098,"end":503636},{"filename":"/data/levels/old/old main 1/room2,12.txt","start":503636,"end":504186},{"filename":"/data/levels/old/old main 1/room3,12.txt","start":504186,"end":504722},{"filename":"/data/levels/old/old main 1/room4,10.txt","start":504722,"end":505244},{"filename":"/data/levels/old/old main 1/room4,12.txt","start":505244,"end":505765},{"filename":"/data/levels/old/old main 1/room5,10.txt","start":505765,"end":506302},{"filename":"/data/levels/old/old main 1/room5,12.txt","start":506302,"end":506824},{"filename":"/data/levels/old/old main 1/room6,10.txt","start":506824,"end":507450},{"filename":"/data/levels/old/old main 1/room6,11.txt","start":507450,"end":507985},{"filename":"/data/levels/old/old main 1/room6,12.txt","start":507985,"end":508527},{"filename":"/data/levels/old/old main 1/room6,13.txt","start":508527,"end":509086},{"filename":"/data/levels/old/old main 1/room7,12.txt","start":509086,"end":509639},{"filename":"/data/levels/old/old main 1/room8,10.txt","start":509639,"end":510236},{"filename":"/data/levels/old/old main 1/room8,11.txt","start":510236,"end":510799},{"filename":"/data/levels/old/old main 1/room8,12.txt","start":510799,"end":511467},{"filename":"/data/levels/old/old main 1/room8,13.txt","start":511467,"end":512003},{"filename":"/data/levels/old/old main 1/room8,14.txt","start":512003,"end":512552},{"filename":"/data/levels/old/old main 1/room8,9.txt","start":512552,"end":513122},{"filename":"/data/levels/old/old main 1/room9,11.txt","start":513122,"end":513658},{"filename":"/data/levels/old/old main 1/room9,12.txt","start":513658,"end":514194},{"filename":"/data/levels/old/old main 10/mapData.txt","start":514194,"end":514692},{"filename":"/data/levels/old/old main 10/room0,12.txt","start":514692,"end":515384},{"filename":"/data/levels/old/old main 10/room1,12.txt","start":515384,"end":515970},{"filename":"/data/levels/old/old main 10/room10,10.txt","start":515970,"end":516609},{"filename":"/data/levels/old/old main 10/room10,11.txt","start":516609,"end":517159},{"filename":"/data/levels/old/old main 10/room10,12.txt","start":517159,"end":517697},{"filename":"/data/levels/old/old main 10/room2,12.txt","start":517697,"end":518275},{"filename":"/data/levels/old/old main 10/room3,11.txt","start":518275,"end":518873},{"filename":"/data/levels/old/old main 10/room3,12.txt","start":518873,"end":519484},{"filename":"/data/levels/old/old main 10/room3,13.txt","start":519484,"end":520540},{"filename":"/data/levels/old/old main 10/room3,14.txt","start":520540,"end":521069},{"filename":"/data/levels/old/old main 10/room3,15.txt","start":521069,"end":521596},{"filename":"/data/levels/old/old main 10/room3,16.txt","start":521596,"end":522187},{"filename":"/data/levels/old/old main 10/room3,17.txt","start":522187,"end":523418},{"filename":"/data/levels/old/old main 10/room4,10.txt","start":523418,"end":524016},{"filename":"/data/levels/old/old main 10/room4,11.txt","start":524016,"end":524596},{"filename":"/data/levels/old/old main 10/room4,12.txt","start":524596,"end":525252},{"filename":"/data/levels/old/old main 10/room4,13.txt","start":525252,"end":525939},{"filename":"/data/levels/old/old main 10/room4,7.txt","start":525939,"end":526570},{"filename":"/data/levels/old/old main 10/room5,10.txt","start":526570,"end":527180},{"filename":"/data/levels/old/old main 10/room5,11.txt","start":527180,"end":527894},{"filename":"/data/levels/old/old main 10/room5,12.txt","start":527894,"end":528525},{"filename":"/data/levels/old/old main 10/room5,13.txt","start":528525,"end":529160},{"filename":"/data/levels/old/old main 10/room5,14.txt","start":529160,"end":529794},{"filename":"/data/levels/old/old main 10/room5,7.txt","start":529794,"end":530316},{"filename":"/data/levels/old/old main 10/room5,8.txt","start":530316,"end":530924},{"filename":"/data/levels/old/old main 10/room5,9.txt","start":530924,"end":531516},{"filename":"/data/levels/old/old main 10/room6,10.txt","start":531516,"end":532128},{"filename":"/data/levels/old/old main 10/room6,11.txt","start":532128,"end":532833},{"filename":"/data/levels/old/old main 10/room6,12.txt","start":532833,"end":533391},{"filename":"/data/levels/old/old main 10/room6,8.txt","start":533391,"end":533944},{"filename":"/data/levels/old/old main 10/room6,9.txt","start":533944,"end":534475},{"filename":"/data/levels/old/old main 10/room7,10.txt","start":534475,"end":535252},{"filename":"/data/levels/old/old main 10/room7,11.txt","start":535252,"end":536009},{"filename":"/data/levels/old/old main 10/room7,12.txt","start":536009,"end":536534},{"filename":"/data/levels/old/old main 10/room7,7.txt","start":536534,"end":537052},{"filename":"/data/levels/old/old main 10/room7,8.txt","start":537052,"end":537649},{"filename":"/data/levels/old/old main 10/room7,9.txt","start":537649,"end":538242},{"filename":"/data/levels/old/old main 10/room8,10.txt","start":538242,"end":538825},{"filename":"/data/levels/old/old main 10/room8,11.txt","start":538825,"end":539456},{"filename":"/data/levels/old/old main 10/room8,12.txt","start":539456,"end":540226},{"filename":"/data/levels/old/old main 10/room8,13.txt","start":540226,"end":540825},{"filename":"/data/levels/old/old main 10/room8,14.txt","start":540825,"end":541511},{"filename":"/data/levels/old/old main 10/room8,15.txt","start":541511,"end":542106},{"filename":"/data/levels/old/old main 10/room8,8.txt","start":542106,"end":542651},{"filename":"/data/levels/old/old main 10/room8,9.txt","start":542651,"end":543360},{"filename":"/data/levels/old/old main 10/room9,12.txt","start":543360,"end":544130},{"filename":"/data/levels/old/old main 10/room9,8.txt","start":544130,"end":544663},{"filename":"/data/levels/old/old main 10/room9,9.txt","start":544663,"end":545274},{"filename":"/data/levels/old/old main 11/mapData.txt","start":545274,"end":545754},{"filename":"/data/levels/old/old main 11/room0,12.txt","start":545754,"end":546485},{"filename":"/data/levels/old/old main 11/room1,12.txt","start":546485,"end":547075},{"filename":"/data/levels/old/old main 11/room10,10.txt","start":547075,"end":547722},{"filename":"/data/levels/old/old main 11/room10,11.txt","start":547722,"end":548359},{"filename":"/data/levels/old/old main 11/room10,12.txt","start":548359,"end":548945},{"filename":"/data/levels/old/old main 11/room2,12.txt","start":548945,"end":549526},{"filename":"/data/levels/old/old main 11/room3,11.txt","start":549526,"end":550172},{"filename":"/data/levels/old/old main 11/room3,12.txt","start":550172,"end":550787},{"filename":"/data/levels/old/old main 11/room3,13.txt","start":550787,"end":551843},{"filename":"/data/levels/old/old main 11/room3,14.txt","start":551843,"end":552434},{"filename":"/data/levels/old/old main 11/room3,15.txt","start":552434,"end":552961},{"filename":"/data/levels/old/old main 11/room3,16.txt","start":552961,"end":553554},{"filename":"/data/levels/old/old main 11/room3,17.txt","start":553554,"end":554814},{"filename":"/data/levels/old/old main 11/room4,10.txt","start":554814,"end":555412},{"filename":"/data/levels/old/old main 11/room4,11.txt","start":555412,"end":556027},{"filename":"/data/levels/old/old main 11/room4,12.txt","start":556027,"end":556691},{"filename":"/data/levels/old/old main 11/room4,13.txt","start":556691,"end":557378},{"filename":"/data/levels/old/old main 11/room4,7.txt","start":557378,"end":558049},{"filename":"/data/levels/old/old main 11/room5,10.txt","start":558049,"end":558659},{"filename":"/data/levels/old/old main 11/room5,11.txt","start":558659,"end":559373},{"filename":"/data/levels/old/old main 11/room5,12.txt","start":559373,"end":560004},{"filename":"/data/levels/old/old main 11/room5,13.txt","start":560004,"end":560698},{"filename":"/data/levels/old/old main 11/room5,14.txt","start":560698,"end":561370},{"filename":"/data/levels/old/old main 11/room5,7.txt","start":561370,"end":561892},{"filename":"/data/levels/old/old main 11/room5,8.txt","start":561892,"end":562500},{"filename":"/data/levels/old/old main 11/room5,9.txt","start":562500,"end":563092},{"filename":"/data/levels/old/old main 11/room6,10.txt","start":563092,"end":563704},{"filename":"/data/levels/old/old main 11/room6,11.txt","start":563704,"end":564409},{"filename":"/data/levels/old/old main 11/room6,12.txt","start":564409,"end":564967},{"filename":"/data/levels/old/old main 11/room6,8.txt","start":564967,"end":565557},{"filename":"/data/levels/old/old main 11/room6,9.txt","start":565557,"end":566124},{"filename":"/data/levels/old/old main 11/room7,10.txt","start":566124,"end":566922},{"filename":"/data/levels/old/old main 11/room7,11.txt","start":566922,"end":567680},{"filename":"/data/levels/old/old main 11/room7,12.txt","start":567680,"end":568205},{"filename":"/data/levels/old/old main 11/room7,7.txt","start":568205,"end":568723},{"filename":"/data/levels/old/old main 11/room7,8.txt","start":568723,"end":569369},{"filename":"/data/levels/old/old main 11/room7,9.txt","start":569369,"end":570151},{"filename":"/data/levels/old/old main 11/room8,10.txt","start":570151,"end":570743},{"filename":"/data/levels/old/old main 11/room8,11.txt","start":570743,"end":571374},{"filename":"/data/levels/old/old main 11/room8,12.txt","start":571374,"end":572397},{"filename":"/data/levels/old/old main 11/room8,13.txt","start":572397,"end":572996},{"filename":"/data/levels/old/old main 11/room8,14.txt","start":572996,"end":573724},{"filename":"/data/levels/old/old main 11/room8,15.txt","start":573724,"end":574319},{"filename":"/data/levels/old/old main 11/room8,8.txt","start":574319,"end":574882},{"filename":"/data/levels/old/old main 11/room8,9.txt","start":574882,"end":575654},{"filename":"/data/levels/old/old main 11/room9,12.txt","start":575654,"end":576516},{"filename":"/data/levels/old/old main 11/room9,8.txt","start":576516,"end":577116},{"filename":"/data/levels/old/old main 11/room9,9.txt","start":577116,"end":577799},{"filename":"/data/levels/old/old main 2/room10,10.txt","start":577799,"end":578339},{"filename":"/data/levels/old/old main 2/room10,11.txt","start":578339,"end":578881},{"filename":"/data/levels/old/old main 2/room10,12.txt","start":578881,"end":579419},{"filename":"/data/levels/old/old main 2/room2,12.txt","start":579419,"end":579960},{"filename":"/data/levels/old/old main 2/room3,12.txt","start":579960,"end":580496},{"filename":"/data/levels/old/old main 2/room4,10.txt","start":580496,"end":581018},{"filename":"/data/levels/old/old main 2/room4,12.txt","start":581018,"end":581539},{"filename":"/data/levels/old/old main 2/room5,10.txt","start":581539,"end":582080},{"filename":"/data/levels/old/old main 2/room5,12.txt","start":582080,"end":582602},{"filename":"/data/levels/old/old main 2/room6,10.txt","start":582602,"end":583231},{"filename":"/data/levels/old/old main 2/room6,11.txt","start":583231,"end":583766},{"filename":"/data/levels/old/old main 2/room6,12.txt","start":583766,"end":584308},{"filename":"/data/levels/old/old main 2/room6,13.txt","start":584308,"end":584868},{"filename":"/data/levels/old/old main 2/room7,12.txt","start":584868,"end":585421},{"filename":"/data/levels/old/old main 2/room8,10.txt","start":585421,"end":586018},{"filename":"/data/levels/old/old main 2/room8,11.txt","start":586018,"end":586581},{"filename":"/data/levels/old/old main 2/room8,12.txt","start":586581,"end":587249},{"filename":"/data/levels/old/old main 2/room8,13.txt","start":587249,"end":587785},{"filename":"/data/levels/old/old main 2/room8,14.txt","start":587785,"end":588332},{"filename":"/data/levels/old/old main 2/room8,9.txt","start":588332,"end":588900},{"filename":"/data/levels/old/old main 2/room9,11.txt","start":588900,"end":589436},{"filename":"/data/levels/old/old main 2/room9,12.txt","start":589436,"end":589967},{"filename":"/data/levels/old/old main 3/mapData.txt","start":589967,"end":590376},{"filename":"/data/levels/old/old main 3/room1,12.txt","start":590376,"end":591011},{"filename":"/data/levels/old/old main 3/room10,10.txt","start":591011,"end":591550},{"filename":"/data/levels/old/old main 3/room10,11.txt","start":591550,"end":592103},{"filename":"/data/levels/old/old main 3/room10,12.txt","start":592103,"end":592641},{"filename":"/data/levels/old/old main 3/room2,12.txt","start":592641,"end":593177},{"filename":"/data/levels/old/old main 3/room3,12.txt","start":593177,"end":593713},{"filename":"/data/levels/old/old main 3/room4,10.txt","start":593713,"end":594356},{"filename":"/data/levels/old/old main 3/room4,12.txt","start":594356,"end":594878},{"filename":"/data/levels/old/old main 3/room4,13.txt","start":594878,"end":595469},{"filename":"/data/levels/old/old main 3/room5,10.txt","start":595469,"end":596053},{"filename":"/data/levels/old/old main 3/room5,11.txt","start":596053,"end":596588},{"filename":"/data/levels/old/old main 3/room5,12.txt","start":596588,"end":597184},{"filename":"/data/levels/old/old main 3/room5,13.txt","start":597184,"end":597761},{"filename":"/data/levels/old/old main 3/room5,14.txt","start":597761,"end":598399},{"filename":"/data/levels/old/old main 3/room5,7.txt","start":598399,"end":599004},{"filename":"/data/levels/old/old main 3/room5,8.txt","start":599004,"end":599631},{"filename":"/data/levels/old/old main 3/room5,9.txt","start":599631,"end":600197},{"filename":"/data/levels/old/old main 3/room6,10.txt","start":600197,"end":600737},{"filename":"/data/levels/old/old main 3/room6,12.txt","start":600737,"end":601295},{"filename":"/data/levels/old/old main 3/room6,9.txt","start":601295,"end":601816},{"filename":"/data/levels/old/old main 3/room7,10.txt","start":601816,"end":602491},{"filename":"/data/levels/old/old main 3/room7,12.txt","start":602491,"end":603020},{"filename":"/data/levels/old/old main 3/room8,10.txt","start":603020,"end":603606},{"filename":"/data/levels/old/old main 3/room8,11.txt","start":603606,"end":604169},{"filename":"/data/levels/old/old main 3/room8,12.txt","start":604169,"end":604907},{"filename":"/data/levels/old/old main 3/room8,13.txt","start":604907,"end":605443},{"filename":"/data/levels/old/old main 3/room8,14.txt","start":605443,"end":606100},{"filename":"/data/levels/old/old main 3/room8,15.txt","start":606100,"end":606695},{"filename":"/data/levels/old/old main 3/room8,9.txt","start":606695,"end":607357},{"filename":"/data/levels/old/old main 3/room9,12.txt","start":607357,"end":607951},{"filename":"/data/levels/old/old main 4/mapData.txt","start":607951,"end":608437},{"filename":"/data/levels/old/old main 4/room1,12.txt","start":608437,"end":609122},{"filename":"/data/levels/old/old main 4/room10,10.txt","start":609122,"end":609661},{"filename":"/data/levels/old/old main 4/room10,11.txt","start":609661,"end":610214},{"filename":"/data/levels/old/old main 4/room10,12.txt","start":610214,"end":610752},{"filename":"/data/levels/old/old main 4/room10,8.txt","start":610752,"end":611270},{"filename":"/data/levels/old/old main 4/room11,8.txt","start":611270,"end":611788},{"filename":"/data/levels/old/old main 4/room12,8.txt","start":611788,"end":612398},{"filename":"/data/levels/old/old main 4/room12,9.txt","start":612398,"end":612961},{"filename":"/data/levels/old/old main 4/room2,12.txt","start":612961,"end":613547},{"filename":"/data/levels/old/old main 4/room3,12.txt","start":613547,"end":614133},{"filename":"/data/levels/old/old main 4/room4,10.txt","start":614133,"end":614826},{"filename":"/data/levels/old/old main 4/room4,12.txt","start":614826,"end":615398},{"filename":"/data/levels/old/old main 4/room4,13.txt","start":615398,"end":615989},{"filename":"/data/levels/old/old main 4/room5,10.txt","start":615989,"end":616605},{"filename":"/data/levels/old/old main 4/room5,11.txt","start":616605,"end":617140},{"filename":"/data/levels/old/old main 4/room5,12.txt","start":617140,"end":617768},{"filename":"/data/levels/old/old main 4/room5,13.txt","start":617768,"end":618389},{"filename":"/data/levels/old/old main 4/room5,14.txt","start":618389,"end":619027},{"filename":"/data/levels/old/old main 4/room5,7.txt","start":619027,"end":619673},{"filename":"/data/levels/old/old main 4/room5,8.txt","start":619673,"end":620265},{"filename":"/data/levels/old/old main 4/room5,9.txt","start":620265,"end":620854},{"filename":"/data/levels/old/old main 4/room6,10.txt","start":620854,"end":621463},{"filename":"/data/levels/old/old main 4/room6,12.txt","start":621463,"end":622021},{"filename":"/data/levels/old/old main 4/room6,8.txt","start":622021,"end":622612},{"filename":"/data/levels/old/old main 4/room6,9.txt","start":622612,"end":623143},{"filename":"/data/levels/old/old main 4/room7,10.txt","start":623143,"end":623818},{"filename":"/data/levels/old/old main 4/room7,12.txt","start":623818,"end":624347},{"filename":"/data/levels/old/old main 4/room7,8.txt","start":624347,"end":624865},{"filename":"/data/levels/old/old main 4/room8,10.txt","start":624865,"end":625451},{"filename":"/data/levels/old/old main 4/room8,11.txt","start":625451,"end":626058},{"filename":"/data/levels/old/old main 4/room8,12.txt","start":626058,"end":626828},{"filename":"/data/levels/old/old main 4/room8,13.txt","start":626828,"end":627411},{"filename":"/data/levels/old/old main 4/room8,14.txt","start":627411,"end":628068},{"filename":"/data/levels/old/old main 4/room8,15.txt","start":628068,"end":628663},{"filename":"/data/levels/old/old main 4/room8,8.txt","start":628663,"end":629181},{"filename":"/data/levels/old/old main 4/room8,9.txt","start":629181,"end":629843},{"filename":"/data/levels/old/old main 4/room9,12.txt","start":629843,"end":630437},{"filename":"/data/levels/old/old main 4/room9,8.txt","start":630437,"end":631019},{"filename":"/data/levels/old/old main 5/mapData.txt","start":631019,"end":631507},{"filename":"/data/levels/old/old main 5/room1,12.txt","start":631507,"end":632192},{"filename":"/data/levels/old/old main 5/room10,10.txt","start":632192,"end":632731},{"filename":"/data/levels/old/old main 5/room10,11.txt","start":632731,"end":633284},{"filename":"/data/levels/old/old main 5/room10,12.txt","start":633284,"end":633822},{"filename":"/data/levels/old/old main 5/room10,8.txt","start":633822,"end":634340},{"filename":"/data/levels/old/old main 5/room11,8.txt","start":634340,"end":634858},{"filename":"/data/levels/old/old main 5/room12,8.txt","start":634858,"end":635468},{"filename":"/data/levels/old/old main 5/room12,9.txt","start":635468,"end":636108},{"filename":"/data/levels/old/old main 5/room2,12.txt","start":636108,"end":636694},{"filename":"/data/levels/old/old main 5/room3,12.txt","start":636694,"end":637276},{"filename":"/data/levels/old/old main 5/room4,10.txt","start":637276,"end":637969},{"filename":"/data/levels/old/old main 5/room4,12.txt","start":637969,"end":638541},{"filename":"/data/levels/old/old main 5/room4,13.txt","start":638541,"end":639132},{"filename":"/data/levels/old/old main 5/room4,7.txt","start":639132,"end":639769},{"filename":"/data/levels/old/old main 5/room5,10.txt","start":639769,"end":640385},{"filename":"/data/levels/old/old main 5/room5,11.txt","start":640385,"end":640920},{"filename":"/data/levels/old/old main 5/room5,12.txt","start":640920,"end":641548},{"filename":"/data/levels/old/old main 5/room5,13.txt","start":641548,"end":642169},{"filename":"/data/levels/old/old main 5/room5,14.txt","start":642169,"end":642807},{"filename":"/data/levels/old/old main 5/room5,7.txt","start":642807,"end":643329},{"filename":"/data/levels/old/old main 5/room5,8.txt","start":643329,"end":643920},{"filename":"/data/levels/old/old main 5/room5,9.txt","start":643920,"end":644512},{"filename":"/data/levels/old/old main 5/room6,10.txt","start":644512,"end":645121},{"filename":"/data/levels/old/old main 5/room6,12.txt","start":645121,"end":645679},{"filename":"/data/levels/old/old main 5/room6,8.txt","start":645679,"end":646270},{"filename":"/data/levels/old/old main 5/room6,9.txt","start":646270,"end":646801},{"filename":"/data/levels/old/old main 5/room7,10.txt","start":646801,"end":647476},{"filename":"/data/levels/old/old main 5/room7,12.txt","start":647476,"end":648005},{"filename":"/data/levels/old/old main 5/room7,8.txt","start":648005,"end":648523},{"filename":"/data/levels/old/old main 5/room8,10.txt","start":648523,"end":649109},{"filename":"/data/levels/old/old main 5/room8,11.txt","start":649109,"end":649716},{"filename":"/data/levels/old/old main 5/room8,12.txt","start":649716,"end":650486},{"filename":"/data/levels/old/old main 5/room8,13.txt","start":650486,"end":651069},{"filename":"/data/levels/old/old main 5/room8,14.txt","start":651069,"end":651726},{"filename":"/data/levels/old/old main 5/room8,15.txt","start":651726,"end":652321},{"filename":"/data/levels/old/old main 5/room8,8.txt","start":652321,"end":652839},{"filename":"/data/levels/old/old main 5/room8,9.txt","start":652839,"end":653501},{"filename":"/data/levels/old/old main 5/room9,12.txt","start":653501,"end":654095},{"filename":"/data/levels/old/old main 5/room9,8.txt","start":654095,"end":654677},{"filename":"/data/levels/old/old main 6/mapData.txt","start":654677,"end":655181},{"filename":"/data/levels/old/old main 6/room0,12.txt","start":655181,"end":655870},{"filename":"/data/levels/old/old main 6/room1,12.txt","start":655870,"end":656456},{"filename":"/data/levels/old/old main 6/room10,10.txt","start":656456,"end":656995},{"filename":"/data/levels/old/old main 6/room10,11.txt","start":656995,"end":657548},{"filename":"/data/levels/old/old main 6/room10,12.txt","start":657548,"end":658086},{"filename":"/data/levels/old/old main 6/room10,7.txt","start":658086,"end":658639},{"filename":"/data/levels/old/old main 6/room10,8.txt","start":658639,"end":659157},{"filename":"/data/levels/old/old main 6/room11,7.txt","start":659157,"end":659762},{"filename":"/data/levels/old/old main 6/room11,8.txt","start":659762,"end":660280},{"filename":"/data/levels/old/old main 6/room12,8.txt","start":660280,"end":660890},{"filename":"/data/levels/old/old main 6/room12,9.txt","start":660890,"end":661530},{"filename":"/data/levels/old/old main 6/room2,12.txt","start":661530,"end":662112},{"filename":"/data/levels/old/old main 6/room3,11.txt","start":662112,"end":662710},{"filename":"/data/levels/old/old main 6/room3,12.txt","start":662710,"end":663314},{"filename":"/data/levels/old/old main 6/room4,10.txt","start":663314,"end":663903},{"filename":"/data/levels/old/old main 6/room4,11.txt","start":663903,"end":664483},{"filename":"/data/levels/old/old main 6/room4,12.txt","start":664483,"end":665055},{"filename":"/data/levels/old/old main 6/room4,13.txt","start":665055,"end":665646},{"filename":"/data/levels/old/old main 6/room4,7.txt","start":665646,"end":666283},{"filename":"/data/levels/old/old main 6/room5,10.txt","start":666283,"end":666899},{"filename":"/data/levels/old/old main 6/room5,11.txt","start":666899,"end":667434},{"filename":"/data/levels/old/old main 6/room5,12.txt","start":667434,"end":668062},{"filename":"/data/levels/old/old main 6/room5,13.txt","start":668062,"end":668697},{"filename":"/data/levels/old/old main 6/room5,14.txt","start":668697,"end":669335},{"filename":"/data/levels/old/old main 6/room5,7.txt","start":669335,"end":669857},{"filename":"/data/levels/old/old main 6/room5,8.txt","start":669857,"end":670448},{"filename":"/data/levels/old/old main 6/room5,9.txt","start":670448,"end":671040},{"filename":"/data/levels/old/old main 6/room6,10.txt","start":671040,"end":671649},{"filename":"/data/levels/old/old main 6/room6,12.txt","start":671649,"end":672207},{"filename":"/data/levels/old/old main 6/room6,2.txt","start":672207,"end":672869},{"filename":"/data/levels/old/old main 6/room6,3.txt","start":672869,"end":673439},{"filename":"/data/levels/old/old main 6/room6,4.txt","start":673439,"end":674036},{"filename":"/data/levels/old/old main 6/room6,5.txt","start":674036,"end":674560},{"filename":"/data/levels/old/old main 6/room6,6.txt","start":674560,"end":675084},{"filename":"/data/levels/old/old main 6/room6,7.txt","start":675084,"end":675608},{"filename":"/data/levels/old/old main 6/room6,8.txt","start":675608,"end":676199},{"filename":"/data/levels/old/old main 6/room6,9.txt","start":676199,"end":676730},{"filename":"/data/levels/old/old main 6/room7,10.txt","start":676730,"end":677372},{"filename":"/data/levels/old/old main 6/room7,11.txt","start":677372,"end":677960},{"filename":"/data/levels/old/old main 6/room7,12.txt","start":677960,"end":678489},{"filename":"/data/levels/old/old main 6/room7,7.txt","start":678489,"end":679130},{"filename":"/data/levels/old/old main 6/room7,8.txt","start":679130,"end":679648},{"filename":"/data/levels/old/old main 6/room8,10.txt","start":679648,"end":680234},{"filename":"/data/levels/old/old main 6/room8,11.txt","start":680234,"end":680856},{"filename":"/data/levels/old/old main 6/room8,12.txt","start":680856,"end":681626},{"filename":"/data/levels/old/old main 6/room8,13.txt","start":681626,"end":682225},{"filename":"/data/levels/old/old main 6/room8,14.txt","start":682225,"end":682882},{"filename":"/data/levels/old/old main 6/room8,15.txt","start":682882,"end":683477},{"filename":"/data/levels/old/old main 6/room8,7.txt","start":683477,"end":684146},{"filename":"/data/levels/old/old main 6/room8,8.txt","start":684146,"end":684664},{"filename":"/data/levels/old/old main 6/room8,9.txt","start":684664,"end":685402},{"filename":"/data/levels/old/old main 6/room9,12.txt","start":685402,"end":685996},{"filename":"/data/levels/old/old main 6/room9,7.txt","start":685996,"end":686588},{"filename":"/data/levels/old/old main 6/room9,8.txt","start":686588,"end":687179},{"filename":"/data/levels/old/old main 6/room9,9.txt","start":687179,"end":687875},{"filename":"/data/levels/old/old main 7/mapData.txt","start":687875,"end":688378},{"filename":"/data/levels/old/old main 7/room0,12.txt","start":688378,"end":689067},{"filename":"/data/levels/old/old main 7/room1,12.txt","start":689067,"end":689653},{"filename":"/data/levels/old/old main 7/room10,10.txt","start":689653,"end":690254},{"filename":"/data/levels/old/old main 7/room10,11.txt","start":690254,"end":690804},{"filename":"/data/levels/old/old main 7/room10,12.txt","start":690804,"end":691342},{"filename":"/data/levels/old/old main 7/room10,7.txt","start":691342,"end":691895},{"filename":"/data/levels/old/old main 7/room10,8.txt","start":691895,"end":692413},{"filename":"/data/levels/old/old main 7/room11,7.txt","start":692413,"end":693018},{"filename":"/data/levels/old/old main 7/room11,8.txt","start":693018,"end":693536},{"filename":"/data/levels/old/old main 7/room12,8.txt","start":693536,"end":694160},{"filename":"/data/levels/old/old main 7/room12,9.txt","start":694160,"end":694800},{"filename":"/data/levels/old/old main 7/room2,12.txt","start":694800,"end":695382},{"filename":"/data/levels/old/old main 7/room3,11.txt","start":695382,"end":695980},{"filename":"/data/levels/old/old main 7/room3,12.txt","start":695980,"end":696584},{"filename":"/data/levels/old/old main 7/room4,10.txt","start":696584,"end":697182},{"filename":"/data/levels/old/old main 7/room4,11.txt","start":697182,"end":697762},{"filename":"/data/levels/old/old main 7/room4,12.txt","start":697762,"end":698350},{"filename":"/data/levels/old/old main 7/room4,13.txt","start":698350,"end":698941},{"filename":"/data/levels/old/old main 7/room4,7.txt","start":698941,"end":699572},{"filename":"/data/levels/old/old main 7/room5,10.txt","start":699572,"end":700182},{"filename":"/data/levels/old/old main 7/room5,11.txt","start":700182,"end":700797},{"filename":"/data/levels/old/old main 7/room5,12.txt","start":700797,"end":701425},{"filename":"/data/levels/old/old main 7/room5,13.txt","start":701425,"end":702060},{"filename":"/data/levels/old/old main 7/room5,14.txt","start":702060,"end":702698},{"filename":"/data/levels/old/old main 7/room5,7.txt","start":702698,"end":703220},{"filename":"/data/levels/old/old main 7/room5,8.txt","start":703220,"end":703828},{"filename":"/data/levels/old/old main 7/room5,9.txt","start":703828,"end":704420},{"filename":"/data/levels/old/old main 7/room6,10.txt","start":704420,"end":705028},{"filename":"/data/levels/old/old main 7/room6,11.txt","start":705028,"end":705733},{"filename":"/data/levels/old/old main 7/room6,12.txt","start":705733,"end":706291},{"filename":"/data/levels/old/old main 7/room6,2.txt","start":706291,"end":706953},{"filename":"/data/levels/old/old main 7/room6,3.txt","start":706953,"end":707529},{"filename":"/data/levels/old/old main 7/room6,4.txt","start":707529,"end":708126},{"filename":"/data/levels/old/old main 7/room6,5.txt","start":708126,"end":708650},{"filename":"/data/levels/old/old main 7/room6,6.txt","start":708650,"end":709174},{"filename":"/data/levels/old/old main 7/room6,7.txt","start":709174,"end":709698},{"filename":"/data/levels/old/old main 7/room6,8.txt","start":709698,"end":710289},{"filename":"/data/levels/old/old main 7/room6,9.txt","start":710289,"end":710820},{"filename":"/data/levels/old/old main 7/room7,10.txt","start":710820,"end":711463},{"filename":"/data/levels/old/old main 7/room7,11.txt","start":711463,"end":712191},{"filename":"/data/levels/old/old main 7/room7,12.txt","start":712191,"end":712720},{"filename":"/data/levels/old/old main 7/room7,7.txt","start":712720,"end":713361},{"filename":"/data/levels/old/old main 7/room7,8.txt","start":713361,"end":713879},{"filename":"/data/levels/old/old main 7/room8,10.txt","start":713879,"end":714465},{"filename":"/data/levels/old/old main 7/room8,11.txt","start":714465,"end":715087},{"filename":"/data/levels/old/old main 7/room8,12.txt","start":715087,"end":715857},{"filename":"/data/levels/old/old main 7/room8,13.txt","start":715857,"end":716456},{"filename":"/data/levels/old/old main 7/room8,14.txt","start":716456,"end":717113},{"filename":"/data/levels/old/old main 7/room8,15.txt","start":717113,"end":717708},{"filename":"/data/levels/old/old main 7/room8,7.txt","start":717708,"end":718377},{"filename":"/data/levels/old/old main 7/room8,8.txt","start":718377,"end":718895},{"filename":"/data/levels/old/old main 7/room8,9.txt","start":718895,"end":719633},{"filename":"/data/levels/old/old main 7/room9,12.txt","start":719633,"end":720366},{"filename":"/data/levels/old/old main 7/room9,7.txt","start":720366,"end":720958},{"filename":"/data/levels/old/old main 7/room9,8.txt","start":720958,"end":721549},{"filename":"/data/levels/old/old main 7/room9,9.txt","start":721549,"end":722281},{"filename":"/data/levels/old/old main 8/mapData.txt","start":722281,"end":722757},{"filename":"/data/levels/old/old main 8/room0,12.txt","start":722757,"end":723449},{"filename":"/data/levels/old/old main 8/room1,12.txt","start":723449,"end":724035},{"filename":"/data/levels/old/old main 8/room10,10.txt","start":724035,"end":724674},{"filename":"/data/levels/old/old main 8/room10,11.txt","start":724674,"end":725224},{"filename":"/data/levels/old/old main 8/room10,12.txt","start":725224,"end":725762},{"filename":"/data/levels/old/old main 8/room2,12.txt","start":725762,"end":726340},{"filename":"/data/levels/old/old main 8/room3,11.txt","start":726340,"end":726938},{"filename":"/data/levels/old/old main 8/room3,12.txt","start":726938,"end":727549},{"filename":"/data/levels/old/old main 8/room3,13.txt","start":727549,"end":728605},{"filename":"/data/levels/old/old main 8/room3,14.txt","start":728605,"end":729134},{"filename":"/data/levels/old/old main 8/room3,15.txt","start":729134,"end":729661},{"filename":"/data/levels/old/old main 8/room3,16.txt","start":729661,"end":730252},{"filename":"/data/levels/old/old main 8/room3,17.txt","start":730252,"end":731483},{"filename":"/data/levels/old/old main 8/room4,10.txt","start":731483,"end":732081},{"filename":"/data/levels/old/old main 8/room4,11.txt","start":732081,"end":732661},{"filename":"/data/levels/old/old main 8/room4,12.txt","start":732661,"end":733317},{"filename":"/data/levels/old/old main 8/room4,13.txt","start":733317,"end":734004},{"filename":"/data/levels/old/old main 8/room4,7.txt","start":734004,"end":734635},{"filename":"/data/levels/old/old main 8/room5,10.txt","start":734635,"end":735245},{"filename":"/data/levels/old/old main 8/room5,11.txt","start":735245,"end":735892},{"filename":"/data/levels/old/old main 8/room5,12.txt","start":735892,"end":736523},{"filename":"/data/levels/old/old main 8/room5,13.txt","start":736523,"end":737158},{"filename":"/data/levels/old/old main 8/room5,14.txt","start":737158,"end":737792},{"filename":"/data/levels/old/old main 8/room5,7.txt","start":737792,"end":738314},{"filename":"/data/levels/old/old main 8/room5,8.txt","start":738314,"end":738922},{"filename":"/data/levels/old/old main 8/room5,9.txt","start":738922,"end":739514},{"filename":"/data/levels/old/old main 8/room6,10.txt","start":739514,"end":740126},{"filename":"/data/levels/old/old main 8/room6,11.txt","start":740126,"end":740863},{"filename":"/data/levels/old/old main 8/room6,12.txt","start":740863,"end":741421},{"filename":"/data/levels/old/old main 8/room6,8.txt","start":741421,"end":741974},{"filename":"/data/levels/old/old main 8/room6,9.txt","start":741974,"end":742505},{"filename":"/data/levels/old/old main 8/room7,10.txt","start":742505,"end":743180},{"filename":"/data/levels/old/old main 8/room7,11.txt","start":743180,"end":743940},{"filename":"/data/levels/old/old main 8/room7,12.txt","start":743940,"end":744465},{"filename":"/data/levels/old/old main 8/room7,7.txt","start":744465,"end":744983},{"filename":"/data/levels/old/old main 8/room7,8.txt","start":744983,"end":745521},{"filename":"/data/levels/old/old main 8/room7,9.txt","start":745521,"end":746213},{"filename":"/data/levels/old/old main 8/room8,10.txt","start":746213,"end":746805},{"filename":"/data/levels/old/old main 8/room8,11.txt","start":746805,"end":747436},{"filename":"/data/levels/old/old main 8/room8,12.txt","start":747436,"end":748206},{"filename":"/data/levels/old/old main 8/room8,13.txt","start":748206,"end":748805},{"filename":"/data/levels/old/old main 8/room8,14.txt","start":748805,"end":749491},{"filename":"/data/levels/old/old main 8/room8,15.txt","start":749491,"end":750086},{"filename":"/data/levels/old/old main 8/room8,8.txt","start":750086,"end":750631},{"filename":"/data/levels/old/old main 8/room8,9.txt","start":750631,"end":751340},{"filename":"/data/levels/old/old main 8/room9,12.txt","start":751340,"end":752110},{"filename":"/data/levels/old/old main 8/room9,8.txt","start":752110,"end":752643},{"filename":"/data/levels/old/old main 9/mapData.txt","start":752643,"end":753120},{"filename":"/data/levels/old/old main 9/room0,12.txt","start":753120,"end":753812},{"filename":"/data/levels/old/old main 9/room1,12.txt","start":753812,"end":754398},{"filename":"/data/levels/old/old main 9/room10,10.txt","start":754398,"end":755037},{"filename":"/data/levels/old/old main 9/room10,11.txt","start":755037,"end":755587},{"filename":"/data/levels/old/old main 9/room10,12.txt","start":755587,"end":756125},{"filename":"/data/levels/old/old main 9/room2,12.txt","start":756125,"end":756703},{"filename":"/data/levels/old/old main 9/room3,11.txt","start":756703,"end":757301},{"filename":"/data/levels/old/old main 9/room3,12.txt","start":757301,"end":757912},{"filename":"/data/levels/old/old main 9/room3,13.txt","start":757912,"end":758968},{"filename":"/data/levels/old/old main 9/room3,14.txt","start":758968,"end":759497},{"filename":"/data/levels/old/old main 9/room3,15.txt","start":759497,"end":760024},{"filename":"/data/levels/old/old main 9/room3,16.txt","start":760024,"end":760615},{"filename":"/data/levels/old/old main 9/room3,17.txt","start":760615,"end":761846},{"filename":"/data/levels/old/old main 9/room4,10.txt","start":761846,"end":762444},{"filename":"/data/levels/old/old main 9/room4,11.txt","start":762444,"end":763024},{"filename":"/data/levels/old/old main 9/room4,12.txt","start":763024,"end":763680},{"filename":"/data/levels/old/old main 9/room4,13.txt","start":763680,"end":764367},{"filename":"/data/levels/old/old main 9/room4,7.txt","start":764367,"end":764998},{"filename":"/data/levels/old/old main 9/room5,10.txt","start":764998,"end":765608},{"filename":"/data/levels/old/old main 9/room5,11.txt","start":765608,"end":766322},{"filename":"/data/levels/old/old main 9/room5,12.txt","start":766322,"end":766953},{"filename":"/data/levels/old/old main 9/room5,13.txt","start":766953,"end":767588},{"filename":"/data/levels/old/old main 9/room5,14.txt","start":767588,"end":768222},{"filename":"/data/levels/old/old main 9/room5,7.txt","start":768222,"end":768744},{"filename":"/data/levels/old/old main 9/room5,8.txt","start":768744,"end":769352},{"filename":"/data/levels/old/old main 9/room5,9.txt","start":769352,"end":769944},{"filename":"/data/levels/old/old main 9/room6,10.txt","start":769944,"end":770556},{"filename":"/data/levels/old/old main 9/room6,11.txt","start":770556,"end":771261},{"filename":"/data/levels/old/old main 9/room6,12.txt","start":771261,"end":771819},{"filename":"/data/levels/old/old main 9/room6,8.txt","start":771819,"end":772372},{"filename":"/data/levels/old/old main 9/room6,9.txt","start":772372,"end":772903},{"filename":"/data/levels/old/old main 9/room7,10.txt","start":772903,"end":773680},{"filename":"/data/levels/old/old main 9/room7,11.txt","start":773680,"end":774437},{"filename":"/data/levels/old/old main 9/room7,12.txt","start":774437,"end":774962},{"filename":"/data/levels/old/old main 9/room7,7.txt","start":774962,"end":775480},{"filename":"/data/levels/old/old main 9/room7,8.txt","start":775480,"end":776077},{"filename":"/data/levels/old/old main 9/room7,9.txt","start":776077,"end":776670},{"filename":"/data/levels/old/old main 9/room8,10.txt","start":776670,"end":777253},{"filename":"/data/levels/old/old main 9/room8,11.txt","start":777253,"end":777884},{"filename":"/data/levels/old/old main 9/room8,12.txt","start":777884,"end":778654},{"filename":"/data/levels/old/old main 9/room8,13.txt","start":778654,"end":779253},{"filename":"/data/levels/old/old main 9/room8,14.txt","start":779253,"end":779939},{"filename":"/data/levels/old/old main 9/room8,15.txt","start":779939,"end":780534},{"filename":"/data/levels/old/old main 9/room8,8.txt","start":780534,"end":781079},{"filename":"/data/levels/old/old main 9/room8,9.txt","start":781079,"end":781788},{"filename":"/data/levels/old/old main 9/room9,12.txt","start":781788,"end":782558},{"filename":"/data/levels/old/old main 9/room9,8.txt","start":782558,"end":783091},{"filename":"/data/levels/old/old main 9/room9,9.txt","start":783091,"end":783702},{"filename":"/data/levels/old/old statues/mapData.txt","start":783702,"end":784257},{"filename":"/data/levels/old/old statues/room10,10.txt","start":784257,"end":784784},{"filename":"/data/levels/old/old statues/room10,11.txt","start":784784,"end":785305},{"filename":"/data/levels/old/old statues/room10,13.txt","start":785305,"end":785834},{"filename":"/data/levels/old/old statues/room10,14.txt","start":785834,"end":786361},{"filename":"/data/levels/old/old statues/room10,15.txt","start":786361,"end":786883},{"filename":"/data/levels/old/old statues/room10,9.txt","start":786883,"end":787410},{"filename":"/data/levels/old/old statues/room11,10.txt","start":787410,"end":788023},{"filename":"/data/levels/old/old statues/room11,11.txt","start":788023,"end":788544},{"filename":"/data/levels/old/old statues/room11,12.txt","start":788544,"end":789071},{"filename":"/data/levels/old/old statues/room11,13.txt","start":789071,"end":789598},{"filename":"/data/levels/old/old statues/room11,14.txt","start":789598,"end":790158},{"filename":"/data/levels/old/old statues/room11,15.txt","start":790158,"end":790695},{"filename":"/data/levels/old/old statues/room11,16.txt","start":790695,"end":791219},{"filename":"/data/levels/old/old statues/room12,10.txt","start":791219,"end":791748},{"filename":"/data/levels/old/old statues/room12,11.txt","start":791748,"end":792269},{"filename":"/data/levels/old/old statues/room12,12.txt","start":792269,"end":792822},{"filename":"/data/levels/old/old statues/room12,14.txt","start":792822,"end":793352},{"filename":"/data/levels/old/old statues/room13,10.txt","start":793352,"end":793883},{"filename":"/data/levels/old/old statues/room13,11.txt","start":793883,"end":794407},{"filename":"/data/levels/old/old statues/room13,12.txt","start":794407,"end":794948},{"filename":"/data/levels/old/old statues/room13,13.txt","start":794948,"end":795478},{"filename":"/data/levels/old/old statues/room14,10.txt","start":795478,"end":796027},{"filename":"/data/levels/old/old statues/room14,11.txt","start":796027,"end":796554},{"filename":"/data/levels/old/old statues/room14,12.txt","start":796554,"end":797089},{"filename":"/data/levels/old/old statues/room14,13.txt","start":797089,"end":797646},{"filename":"/data/levels/old/old statues/room14,14.txt","start":797646,"end":798182},{"filename":"/data/levels/old/old statues/room14,9.txt","start":798182,"end":798713},{"filename":"/data/levels/old/old statues/room8,10.txt","start":798713,"end":799231},{"filename":"/data/levels/old/old statues/room8,9.txt","start":799231,"end":799780},{"filename":"/data/levels/old/old statues/room9,10.txt","start":799780,"end":800362},{"filename":"/data/levels/old/old statues/room9,11.txt","start":800362,"end":800941},{"filename":"/data/levels/old/old statues/room9,9.txt","start":800941,"end":801478},{"filename":"/data/levels/old/statues/mapData.txt","start":801478,"end":802035},{"filename":"/data/levels/old/statues/room10,10.txt","start":802035,"end":802727},{"filename":"/data/levels/old/statues/room10,11.txt","start":802727,"end":803287},{"filename":"/data/levels/old/statues/room10,13.txt","start":803287,"end":803816},{"filename":"/data/levels/old/statues/room10,14.txt","start":803816,"end":804343},{"filename":"/data/levels/old/statues/room10,15.txt","start":804343,"end":804865},{"filename":"/data/levels/old/statues/room10,9.txt","start":804865,"end":805392},{"filename":"/data/levels/old/statues/room11,10.txt","start":805392,"end":806005},{"filename":"/data/levels/old/statues/room11,11.txt","start":806005,"end":806526},{"filename":"/data/levels/old/statues/room11,12.txt","start":806526,"end":807053},{"filename":"/data/levels/old/statues/room11,13.txt","start":807053,"end":807580},{"filename":"/data/levels/old/statues/room11,14.txt","start":807580,"end":808140},{"filename":"/data/levels/old/statues/room11,15.txt","start":808140,"end":808677},{"filename":"/data/levels/old/statues/room11,16.txt","start":808677,"end":809201},{"filename":"/data/levels/old/statues/room12,10.txt","start":809201,"end":809730},{"filename":"/data/levels/old/statues/room12,11.txt","start":809730,"end":810251},{"filename":"/data/levels/old/statues/room12,12.txt","start":810251,"end":810804},{"filename":"/data/levels/old/statues/room12,14.txt","start":810804,"end":811334},{"filename":"/data/levels/old/statues/room13,10.txt","start":811334,"end":811865},{"filename":"/data/levels/old/statues/room13,11.txt","start":811865,"end":812389},{"filename":"/data/levels/old/statues/room13,12.txt","start":812389,"end":812930},{"filename":"/data/levels/old/statues/room13,13.txt","start":812930,"end":813460},{"filename":"/data/levels/old/statues/room14,10.txt","start":813460,"end":814009},{"filename":"/data/levels/old/statues/room14,11.txt","start":814009,"end":814536},{"filename":"/data/levels/old/statues/room14,12.txt","start":814536,"end":815071},{"filename":"/data/levels/old/statues/room14,13.txt","start":815071,"end":815628},{"filename":"/data/levels/old/statues/room14,14.txt","start":815628,"end":816164},{"filename":"/data/levels/old/statues/room14,9.txt","start":816164,"end":816695},{"filename":"/data/levels/old/statues/room15,14.txt","start":816695,"end":817303},{"filename":"/data/levels/old/statues/room16,14.txt","start":817303,"end":817852},{"filename":"/data/levels/old/statues/room8,10.txt","start":817852,"end":818370},{"filename":"/data/levels/old/statues/room8,9.txt","start":818370,"end":818919},{"filename":"/data/levels/old/statues/room9,10.txt","start":818919,"end":819473},{"filename":"/data/levels/old/statues/room9,11.txt","start":819473,"end":820052},{"filename":"/data/levels/old/statues/room9,9.txt","start":820052,"end":820589},{"filename":"/data/levels/old hypothethical main/editorDefault.txt","start":820589,"end":822646},{"filename":"/data/levels/old hypothethical main/mapData.txt","start":822646,"end":823675},{"filename":"/data/levels/old hypothethical main/room0,0.txt","start":823675,"end":824196},{"filename":"/data/levels/old hypothethical main/room0,1.txt","start":824196,"end":824717},{"filename":"/data/levels/old hypothethical main/room1,0.txt","start":824717,"end":825238},{"filename":"/data/levels/old hypothethical main/room1,1.txt","start":825238,"end":825759},{"filename":"/data/levels/old hypothethical main/room10,10.txt","start":825759,"end":826549},{"filename":"/data/levels/old hypothethical main/room10,11.txt","start":826549,"end":827341},{"filename":"/data/levels/old hypothethical main/room10,12.txt","start":827341,"end":827943},{"filename":"/data/levels/old hypothethical main/room10,13.txt","start":827943,"end":828592},{"filename":"/data/levels/old hypothethical main/room10,14.txt","start":828592,"end":829323},{"filename":"/data/levels/old hypothethical main/room10,15.txt","start":829323,"end":829962},{"filename":"/data/levels/old hypothethical main/room10,16.txt","start":829962,"end":830651},{"filename":"/data/levels/old hypothethical main/room10,17.txt","start":830651,"end":831442},{"filename":"/data/levels/old hypothethical main/room10,18.txt","start":831442,"end":832102},{"filename":"/data/levels/old hypothethical main/room10,19.txt","start":832102,"end":833448},{"filename":"/data/levels/old hypothethical main/room10,20.txt","start":833448,"end":834459},{"filename":"/data/levels/old hypothethical main/room10,21.txt","start":834459,"end":835569},{"filename":"/data/levels/old hypothethical main/room10,7.txt","start":835569,"end":835792},{"filename":"/data/levels/old hypothethical main/room11,10.txt","start":835792,"end":836411},{"filename":"/data/levels/old hypothethical main/room11,11.txt","start":836411,"end":837061},{"filename":"/data/levels/old hypothethical main/room11,12.txt","start":837061,"end":837647},{"filename":"/data/levels/old hypothethical main/room11,13.txt","start":837647,"end":838491},{"filename":"/data/levels/old hypothethical main/room11,14.txt","start":838491,"end":839185},{"filename":"/data/levels/old hypothethical main/room11,15.txt","start":839185,"end":839921},{"filename":"/data/levels/old hypothethical main/room11,16.txt","start":839921,"end":840931},{"filename":"/data/levels/old hypothethical main/room11,17.txt","start":840931,"end":841746},{"filename":"/data/levels/old hypothethical main/room11,18.txt","start":841746,"end":842626},{"filename":"/data/levels/old hypothethical main/room11,19.txt","start":842626,"end":843312},{"filename":"/data/levels/old hypothethical main/room11,20.txt","start":843312,"end":844170},{"filename":"/data/levels/old hypothethical main/room11,21.txt","start":844170,"end":845096},{"filename":"/data/levels/old hypothethical main/room11,7.txt","start":845096,"end":845329},{"filename":"/data/levels/old hypothethical main/room11,9.txt","start":845329,"end":845991},{"filename":"/data/levels/old hypothethical main/room12,10.txt","start":845991,"end":846562},{"filename":"/data/levels/old hypothethical main/room12,11.txt","start":846562,"end":847151},{"filename":"/data/levels/old hypothethical main/room12,13.txt","start":847151,"end":847804},{"filename":"/data/levels/old hypothethical main/room12,14.txt","start":847804,"end":848497},{"filename":"/data/levels/old hypothethical main/room12,15.txt","start":848497,"end":849569},{"filename":"/data/levels/old hypothethical main/room12,16.txt","start":849569,"end":850512},{"filename":"/data/levels/old hypothethical main/room12,17.txt","start":850512,"end":851274},{"filename":"/data/levels/old hypothethical main/room12,18.txt","start":851274,"end":852670},{"filename":"/data/levels/old hypothethical main/room12,19.txt","start":852670,"end":853307},{"filename":"/data/levels/old hypothethical main/room12,20.txt","start":853307,"end":854842},{"filename":"/data/levels/old hypothethical main/room12,21.txt","start":854842,"end":855602},{"filename":"/data/levels/old hypothethical main/room12,7.txt","start":855602,"end":856024},{"filename":"/data/levels/old hypothethical main/room12,8.txt","start":856024,"end":856686},{"filename":"/data/levels/old hypothethical main/room12,9.txt","start":856686,"end":857249},{"filename":"/data/levels/old hypothethical main/room13,10.txt","start":857249,"end":857820},{"filename":"/data/levels/old hypothethical main/room13,11.txt","start":857820,"end":858383},{"filename":"/data/levels/old hypothethical main/room13,12.txt","start":858383,"end":859015},{"filename":"/data/levels/old hypothethical main/room13,14.txt","start":859015,"end":860059},{"filename":"/data/levels/old hypothethical main/room13,15.txt","start":860059,"end":860704},{"filename":"/data/levels/old hypothethical main/room13,16.txt","start":860704,"end":861291},{"filename":"/data/levels/old hypothethical main/room13,17.txt","start":861291,"end":861902},{"filename":"/data/levels/old hypothethical main/room13,18.txt","start":861902,"end":862535},{"filename":"/data/levels/old hypothethical main/room13,19.txt","start":862535,"end":863213},{"filename":"/data/levels/old hypothethical main/room13,20.txt","start":863213,"end":863885},{"filename":"/data/levels/old hypothethical main/room13,21.txt","start":863885,"end":864572},{"filename":"/data/levels/old hypothethical main/room13,3.txt","start":864572,"end":865161},{"filename":"/data/levels/old hypothethical main/room13,4.txt","start":865161,"end":865769},{"filename":"/data/levels/old hypothethical main/room13,7.txt","start":865769,"end":865962},{"filename":"/data/levels/old hypothethical main/room13,8.txt","start":865962,"end":867602},{"filename":"/data/levels/old hypothethical main/room13,9.txt","start":867602,"end":868191},{"filename":"/data/levels/old hypothethical main/room14,10.txt","start":868191,"end":868780},{"filename":"/data/levels/old hypothethical main/room14,11.txt","start":868780,"end":869369},{"filename":"/data/levels/old hypothethical main/room14,14.txt","start":869369,"end":870083},{"filename":"/data/levels/old hypothethical main/room14,15.txt","start":870083,"end":870900},{"filename":"/data/levels/old hypothethical main/room14,16.txt","start":870900,"end":871619},{"filename":"/data/levels/old hypothethical main/room14,17.txt","start":871619,"end":872355},{"filename":"/data/levels/old hypothethical main/room14,18.txt","start":872355,"end":873148},{"filename":"/data/levels/old hypothethical main/room14,19.txt","start":873148,"end":873967},{"filename":"/data/levels/old hypothethical main/room14,20.txt","start":873967,"end":874828},{"filename":"/data/levels/old hypothethical main/room14,8.txt","start":874828,"end":876614},{"filename":"/data/levels/old hypothethical main/room14,9.txt","start":876614,"end":877515},{"filename":"/data/levels/old hypothethical main/room15,10.txt","start":877515,"end":877880},{"filename":"/data/levels/old hypothethical main/room15,11.txt","start":877880,"end":878855},{"filename":"/data/levels/old hypothethical main/room15,14.txt","start":878855,"end":879504},{"filename":"/data/levels/old hypothethical main/room15,19.txt","start":879504,"end":880179},{"filename":"/data/levels/old hypothethical main/room15,20.txt","start":880179,"end":880947},{"filename":"/data/levels/old hypothethical main/room15,8.txt","start":880947,"end":882115},{"filename":"/data/levels/old hypothethical main/room15,9.txt","start":882115,"end":883358},{"filename":"/data/levels/old hypothethical main/room16,10.txt","start":883358,"end":884339},{"filename":"/data/levels/old hypothethical main/room16,11.txt","start":884339,"end":885310},{"filename":"/data/levels/old hypothethical main/room16,20.txt","start":885310,"end":886256},{"filename":"/data/levels/old hypothethical main/room17,20.txt","start":886256,"end":887059},{"filename":"/data/levels/old hypothethical main/room18,20.txt","start":887059,"end":887708},{"filename":"/data/levels/old hypothethical main/room3,20.txt","start":887708,"end":888565},{"filename":"/data/levels/old hypothethical main/room4,15.txt","start":888565,"end":889173},{"filename":"/data/levels/old hypothethical main/room4,16.txt","start":889173,"end":889762},{"filename":"/data/levels/old hypothethical main/room4,19.txt","start":889762,"end":890445},{"filename":"/data/levels/old hypothethical main/room4,21.txt","start":890445,"end":891199},{"filename":"/data/levels/old hypothethical main/room4,4.txt","start":891199,"end":892295},{"filename":"/data/levels/old hypothethical main/room5,14.txt","start":892295,"end":892936},{"filename":"/data/levels/old hypothethical main/room5,15.txt","start":892936,"end":893750},{"filename":"/data/levels/old hypothethical main/room5,16.txt","start":893750,"end":894480},{"filename":"/data/levels/old hypothethical main/room5,20.txt","start":894480,"end":895503},{"filename":"/data/levels/old hypothethical main/room6,10.txt","start":895503,"end":896163},{"filename":"/data/levels/old hypothethical main/room6,13.txt","start":896163,"end":897194},{"filename":"/data/levels/old hypothethical main/room6,14.txt","start":897194,"end":897827},{"filename":"/data/levels/old hypothethical main/room6,15.txt","start":897827,"end":898553},{"filename":"/data/levels/old hypothethical main/room6,16.txt","start":898553,"end":899305},{"filename":"/data/levels/old hypothethical main/room6,17.txt","start":899305,"end":900440},{"filename":"/data/levels/old hypothethical main/room6,18.txt","start":900440,"end":901464},{"filename":"/data/levels/old hypothethical main/room6,19.txt","start":901464,"end":902122},{"filename":"/data/levels/old hypothethical main/room6,20.txt","start":902122,"end":902800},{"filename":"/data/levels/old hypothethical main/room6,21.txt","start":902800,"end":903442},{"filename":"/data/levels/old hypothethical main/room6,8.txt","start":903442,"end":904031},{"filename":"/data/levels/old hypothethical main/room6,9.txt","start":904031,"end":904590},{"filename":"/data/levels/old hypothethical main/room7,10.txt","start":904590,"end":905165},{"filename":"/data/levels/old hypothethical main/room7,11.txt","start":905165,"end":905754},{"filename":"/data/levels/old hypothethical main/room7,12.txt","start":905754,"end":906480},{"filename":"/data/levels/old hypothethical main/room7,13.txt","start":906480,"end":907266},{"filename":"/data/levels/old hypothethical main/room7,14.txt","start":907266,"end":907988},{"filename":"/data/levels/old hypothethical main/room7,15.txt","start":907988,"end":908702},{"filename":"/data/levels/old hypothethical main/room7,16.txt","start":908702,"end":909585},{"filename":"/data/levels/old hypothethical main/room7,17.txt","start":909585,"end":910207},{"filename":"/data/levels/old hypothethical main/room7,18.txt","start":910207,"end":910884},{"filename":"/data/levels/old hypothethical main/room7,19.txt","start":910884,"end":911575},{"filename":"/data/levels/old hypothethical main/room7,20.txt","start":911575,"end":912212},{"filename":"/data/levels/old hypothethical main/room7,21.txt","start":912212,"end":912966},{"filename":"/data/levels/old hypothethical main/room7,8.txt","start":912966,"end":913555},{"filename":"/data/levels/old hypothethical main/room7,9.txt","start":913555,"end":914122},{"filename":"/data/levels/old hypothethical main/room8,10.txt","start":914122,"end":914685},{"filename":"/data/levels/old hypothethical main/room8,11.txt","start":914685,"end":915274},{"filename":"/data/levels/old hypothethical main/room8,12.txt","start":915274,"end":916387},{"filename":"/data/levels/old hypothethical main/room8,13.txt","start":916387,"end":917103},{"filename":"/data/levels/old hypothethical main/room8,14.txt","start":917103,"end":917750},{"filename":"/data/levels/old hypothethical main/room8,15.txt","start":917750,"end":918411},{"filename":"/data/levels/old hypothethical main/room8,16.txt","start":918411,"end":919382},{"filename":"/data/levels/old hypothethical main/room8,17.txt","start":919382,"end":920232},{"filename":"/data/levels/old hypothethical main/room8,18.txt","start":920232,"end":920901},{"filename":"/data/levels/old hypothethical main/room8,19.txt","start":920901,"end":921842},{"filename":"/data/levels/old hypothethical main/room8,20.txt","start":921842,"end":922682},{"filename":"/data/levels/old hypothethical main/room8,21.txt","start":922682,"end":923277},{"filename":"/data/levels/old hypothethical main/room8,9.txt","start":923277,"end":923936},{"filename":"/data/levels/old hypothethical main/room9,10.txt","start":923936,"end":924560},{"filename":"/data/levels/old hypothethical main/room9,11.txt","start":924560,"end":925180},{"filename":"/data/levels/old hypothethical main/room9,12.txt","start":925180,"end":925792},{"filename":"/data/levels/old hypothethical main/room9,13.txt","start":925792,"end":926347},{"filename":"/data/levels/old hypothethical main/room9,14.txt","start":926347,"end":927066},{"filename":"/data/levels/old hypothethical main/room9,15.txt","start":927066,"end":927661},{"filename":"/data/levels/old hypothethical main/room9,16.txt","start":927661,"end":928651},{"filename":"/data/levels/old hypothethical main/room9,17.txt","start":928651,"end":929452},{"filename":"/data/levels/old hypothethical main/room9,18.txt","start":929452,"end":930320},{"filename":"/data/levels/old hypothethical main/room9,19.txt","start":930320,"end":931040},{"filename":"/data/levels/old hypothethical main/room9,20.txt","start":931040,"end":932267},{"filename":"/data/levels/old hypothethical main/room9,9.txt","start":932267,"end":932935},{"filename":"/data/levels/old main 1/mapData.txt","start":932935,"end":933394},{"filename":"/data/levels/old main 1/room10,10.txt","start":933394,"end":934201},{"filename":"/data/levels/old main 1/room10,11.txt","start":934201,"end":934974},{"filename":"/data/levels/old main 1/room10,5.txt","start":934974,"end":935585},{"filename":"/data/levels/old main 1/room10,6.txt","start":935585,"end":936134},{"filename":"/data/levels/old main 1/room10,7.txt","start":936134,"end":936780},{"filename":"/data/levels/old main 1/room10,8.txt","start":936780,"end":937385},{"filename":"/data/levels/old main 1/room10,9.txt","start":937385,"end":937997},{"filename":"/data/levels/old main 1/room11,10.txt","start":937997,"end":938802},{"filename":"/data/levels/old main 1/room11,5.txt","start":938802,"end":939387},{"filename":"/data/levels/old main 1/room11,6.txt","start":939387,"end":939916},{"filename":"/data/levels/old main 1/room11,7.txt","start":939916,"end":940581},{"filename":"/data/levels/old main 1/room11,8.txt","start":940581,"end":941116},{"filename":"/data/levels/old main 1/room11,9.txt","start":941116,"end":941735},{"filename":"/data/levels/old main 1/room12,3.txt","start":941735,"end":942256},{"filename":"/data/levels/old main 1/room12,4.txt","start":942256,"end":942923},{"filename":"/data/levels/old main 1/room12,5.txt","start":942923,"end":943571},{"filename":"/data/levels/old main 1/room12,6.txt","start":943571,"end":944237},{"filename":"/data/levels/old main 1/room12,7.txt","start":944237,"end":944784},{"filename":"/data/levels/old main 1/room12,8.txt","start":944784,"end":945431},{"filename":"/data/levels/old main 1/room12,9.txt","start":945431,"end":945997},{"filename":"/data/levels/old main 1/room13,10.txt","start":945997,"end":946526},{"filename":"/data/levels/old main 1/room13,4.txt","start":946526,"end":947064},{"filename":"/data/levels/old main 1/room13,5.txt","start":947064,"end":947701},{"filename":"/data/levels/old main 1/room13,6.txt","start":947701,"end":948238},{"filename":"/data/levels/old main 1/room13,7.txt","start":948238,"end":948803},{"filename":"/data/levels/old main 1/room13,8.txt","start":948803,"end":949388},{"filename":"/data/levels/old main 1/room13,9.txt","start":949388,"end":950016},{"filename":"/data/levels/old main 1/room14,4.txt","start":950016,"end":950586},{"filename":"/data/levels/old main 1/room14,5.txt","start":950586,"end":951255},{"filename":"/data/levels/old main 1/room14,6.txt","start":951255,"end":951792},{"filename":"/data/levels/old main 1/room14,7.txt","start":951792,"end":952321},{"filename":"/data/levels/old main 1/room15,4.txt","start":952321,"end":952900},{"filename":"/data/levels/old main 1/room5,4.txt","start":952900,"end":953481},{"filename":"/data/levels/old main 1/room5,5.txt","start":953481,"end":954159},{"filename":"/data/levels/old main 1/room5,6.txt","start":954159,"end":954712},{"filename":"/data/levels/old main 1/room6,4.txt","start":954712,"end":955233},{"filename":"/data/levels/old main 1/room6,5.txt","start":955233,"end":955770},{"filename":"/data/levels/old main 1/room6,6.txt","start":955770,"end":956334},{"filename":"/data/levels/old main 1/room6,8.txt","start":956334,"end":957338},{"filename":"/data/levels/old main 1/room6,9.txt","start":957338,"end":957930},{"filename":"/data/levels/old main 1/room7,10.txt","start":957930,"end":958459},{"filename":"/data/levels/old main 1/room7,2.txt","start":958459,"end":959122},{"filename":"/data/levels/old main 1/room7,3.txt","start":959122,"end":959839},{"filename":"/data/levels/old main 1/room7,4.txt","start":959839,"end":960538},{"filename":"/data/levels/old main 1/room7,5.txt","start":960538,"end":961205},{"filename":"/data/levels/old main 1/room7,6.txt","start":961205,"end":961794},{"filename":"/data/levels/old main 1/room7,7.txt","start":961794,"end":962319},{"filename":"/data/levels/old main 1/room7,8.txt","start":962319,"end":962904},{"filename":"/data/levels/old main 1/room7,9.txt","start":962904,"end":963546},{"filename":"/data/levels/old main 1/room8,2.txt","start":963546,"end":964514},{"filename":"/data/levels/old main 1/room8,3.txt","start":964514,"end":965069},{"filename":"/data/levels/old main 1/room8,4.txt","start":965069,"end":965656},{"filename":"/data/levels/old main 1/room8,5.txt","start":965656,"end":966193},{"filename":"/data/levels/old main 1/room8,7.txt","start":966193,"end":966777},{"filename":"/data/levels/old main 1/room8,8.txt","start":966777,"end":967505},{"filename":"/data/levels/old main 1/room8,9.txt","start":967505,"end":968034},{"filename":"/data/levels/old main 1/room9,10.txt","start":968034,"end":968555},{"filename":"/data/levels/old main 1/room9,5.txt","start":968555,"end":969084},{"filename":"/data/levels/old main 1/room9,7.txt","start":969084,"end":969807},{"filename":"/data/levels/old main 1/room9,8.txt","start":969807,"end":970571},{"filename":"/data/levels/old main 1/room9,9.txt","start":970571,"end":971100},{"filename":"/data/levels/old main 10/editorDefault.txt","start":971100,"end":973157},{"filename":"/data/levels/old main 10/mapData.txt","start":973157,"end":974194},{"filename":"/data/levels/old main 10/room0,0.txt","start":974194,"end":974715},{"filename":"/data/levels/old main 10/room0,1.txt","start":974715,"end":975236},{"filename":"/data/levels/old main 10/room1,0.txt","start":975236,"end":975757},{"filename":"/data/levels/old main 10/room1,1.txt","start":975757,"end":976278},{"filename":"/data/levels/old main 10/room10,10.txt","start":976278,"end":976872},{"filename":"/data/levels/old main 10/room10,11.txt","start":976872,"end":977707},{"filename":"/data/levels/old main 10/room10,12.txt","start":977707,"end":978309},{"filename":"/data/levels/old main 10/room10,13.txt","start":978309,"end":978958},{"filename":"/data/levels/old main 10/room10,14.txt","start":978958,"end":979689},{"filename":"/data/levels/old main 10/room10,15.txt","start":979689,"end":980328},{"filename":"/data/levels/old main 10/room10,16.txt","start":980328,"end":981017},{"filename":"/data/levels/old main 10/room10,17.txt","start":981017,"end":981808},{"filename":"/data/levels/old main 10/room10,18.txt","start":981808,"end":982468},{"filename":"/data/levels/old main 10/room10,19.txt","start":982468,"end":983912},{"filename":"/data/levels/old main 10/room10,20.txt","start":983912,"end":984950},{"filename":"/data/levels/old main 10/room10,21.txt","start":984950,"end":986060},{"filename":"/data/levels/old main 10/room10,5.txt","start":986060,"end":987145},{"filename":"/data/levels/old main 10/room10,6.txt","start":987145,"end":996672},{"filename":"/data/levels/old main 10/room10,7.txt","start":996672,"end":996895},{"filename":"/data/levels/old main 10/room11,10.txt","start":996895,"end":997514},{"filename":"/data/levels/old main 10/room11,11.txt","start":997514,"end":998164},{"filename":"/data/levels/old main 10/room11,12.txt","start":998164,"end":998863},{"filename":"/data/levels/old main 10/room11,13.txt","start":998863,"end":1001193},{"filename":"/data/levels/old main 10/room11,14.txt","start":1001193,"end":1001887},{"filename":"/data/levels/old main 10/room11,15.txt","start":1001887,"end":1002623},{"filename":"/data/levels/old main 10/room11,16.txt","start":1002623,"end":1003659},{"filename":"/data/levels/old main 10/room11,17.txt","start":1003659,"end":1004449},{"filename":"/data/levels/old main 10/room11,18.txt","start":1004449,"end":1005329},{"filename":"/data/levels/old main 10/room11,19.txt","start":1005329,"end":1006015},{"filename":"/data/levels/old main 10/room11,20.txt","start":1006015,"end":1006873},{"filename":"/data/levels/old main 10/room11,21.txt","start":1006873,"end":1007832},{"filename":"/data/levels/old main 10/room11,7.txt","start":1007832,"end":1008065},{"filename":"/data/levels/old main 10/room11,9.txt","start":1008065,"end":1008754},{"filename":"/data/levels/old main 10/room12,10.txt","start":1008754,"end":1009398},{"filename":"/data/levels/old main 10/room12,11.txt","start":1009398,"end":1010028},{"filename":"/data/levels/old main 10/room12,12.txt","start":1010028,"end":1010679},{"filename":"/data/levels/old main 10/room12,13.txt","start":1010679,"end":1011373},{"filename":"/data/levels/old main 10/room12,14.txt","start":1011373,"end":1012066},{"filename":"/data/levels/old main 10/room12,15.txt","start":1012066,"end":1013053},{"filename":"/data/levels/old main 10/room12,16.txt","start":1013053,"end":1014e3},{"filename":"/data/levels/old main 10/room12,17.txt","start":1014e3,"end":1014802},{"filename":"/data/levels/old main 10/room12,18.txt","start":1014802,"end":1016129},{"filename":"/data/levels/old main 10/room12,19.txt","start":1016129,"end":1016726},{"filename":"/data/levels/old main 10/room12,20.txt","start":1016726,"end":1018227},{"filename":"/data/levels/old main 10/room12,21.txt","start":1018227,"end":1019002},{"filename":"/data/levels/old main 10/room12,7.txt","start":1019002,"end":1019424},{"filename":"/data/levels/old main 10/room12,8.txt","start":1019424,"end":1020112},{"filename":"/data/levels/old main 10/room12,9.txt","start":1020112,"end":1020723},{"filename":"/data/levels/old main 10/room13,10.txt","start":1020723,"end":1021342},{"filename":"/data/levels/old main 10/room13,11.txt","start":1021342,"end":1021953},{"filename":"/data/levels/old main 10/room13,12.txt","start":1021953,"end":1022626},{"filename":"/data/levels/old main 10/room13,13.txt","start":1022626,"end":1023448},{"filename":"/data/levels/old main 10/room13,14.txt","start":1023448,"end":1024493},{"filename":"/data/levels/old main 10/room13,15.txt","start":1024493,"end":1025138},{"filename":"/data/levels/old main 10/room13,16.txt","start":1025138,"end":1025798},{"filename":"/data/levels/old main 10/room13,17.txt","start":1025798,"end":1026458},{"filename":"/data/levels/old main 10/room13,18.txt","start":1026458,"end":1027091},{"filename":"/data/levels/old main 10/room13,19.txt","start":1027091,"end":1027769},{"filename":"/data/levels/old main 10/room13,20.txt","start":1027769,"end":1028441},{"filename":"/data/levels/old main 10/room13,21.txt","start":1028441,"end":1029144},{"filename":"/data/levels/old main 10/room13,3.txt","start":1029144,"end":1029832},{"filename":"/data/levels/old main 10/room13,4.txt","start":1029832,"end":1030440},{"filename":"/data/levels/old main 10/room13,7.txt","start":1030440,"end":1030633},{"filename":"/data/levels/old main 10/room13,8.txt","start":1030633,"end":1032273},{"filename":"/data/levels/old main 10/room13,9.txt","start":1032273,"end":1032897},{"filename":"/data/levels/old main 10/room14,10.txt","start":1032897,"end":1033509},{"filename":"/data/levels/old main 10/room14,11.txt","start":1033509,"end":1034138},{"filename":"/data/levels/old main 10/room14,14.txt","start":1034138,"end":1034852},{"filename":"/data/levels/old main 10/room14,15.txt","start":1034852,"end":1035697},{"filename":"/data/levels/old main 10/room14,16.txt","start":1035697,"end":1036416},{"filename":"/data/levels/old main 10/room14,17.txt","start":1036416,"end":1037099},{"filename":"/data/levels/old main 10/room14,18.txt","start":1037099,"end":1037892},{"filename":"/data/levels/old main 10/room14,19.txt","start":1037892,"end":1038711},{"filename":"/data/levels/old main 10/room14,20.txt","start":1038711,"end":1039572},{"filename":"/data/levels/old main 10/room14,8.txt","start":1039572,"end":1041361},{"filename":"/data/levels/old main 10/room14,9.txt","start":1041361,"end":1042308},{"filename":"/data/levels/old main 10/room15,10.txt","start":1042308,"end":1042673},{"filename":"/data/levels/old main 10/room15,11.txt","start":1042673,"end":1043648},{"filename":"/data/levels/old main 10/room15,14.txt","start":1043648,"end":1044327},{"filename":"/data/levels/old main 10/room15,19.txt","start":1044327,"end":1045025},{"filename":"/data/levels/old main 10/room15,20.txt","start":1045025,"end":1045793},{"filename":"/data/levels/old main 10/room15,8.txt","start":1045793,"end":1046961},{"filename":"/data/levels/old main 10/room15,9.txt","start":1046961,"end":1048204},{"filename":"/data/levels/old main 10/room16,10.txt","start":1048204,"end":1048434},{"filename":"/data/levels/old main 10/room16,11.txt","start":1048434,"end":1049405},{"filename":"/data/levels/old main 10/room16,20.txt","start":1049405,"end":1050351},{"filename":"/data/levels/old main 10/room16,9.txt","start":1050351,"end":1051777},{"filename":"/data/levels/old main 10/room17,20.txt","start":1051777,"end":1052580},{"filename":"/data/levels/old main 10/room18,20.txt","start":1052580,"end":1053262},{"filename":"/data/levels/old main 10/room3,20.txt","start":1053262,"end":1054119},{"filename":"/data/levels/old main 10/room4,15.txt","start":1054119,"end":1054727},{"filename":"/data/levels/old main 10/room4,16.txt","start":1054727,"end":1055316},{"filename":"/data/levels/old main 10/room4,19.txt","start":1055316,"end":1056028},{"filename":"/data/levels/old main 10/room4,20.txt","start":1056028,"end":1056850},{"filename":"/data/levels/old main 10/room4,21.txt","start":1056850,"end":1057604},{"filename":"/data/levels/old main 10/room4,4.txt","start":1057604,"end":1058700},{"filename":"/data/levels/old main 10/room5,14.txt","start":1058700,"end":1059376},{"filename":"/data/levels/old main 10/room5,15.txt","start":1059376,"end":1060190},{"filename":"/data/levels/old main 10/room5,16.txt","start":1060190,"end":1060925},{"filename":"/data/levels/old main 10/room5,20.txt","start":1060925,"end":1061948},{"filename":"/data/levels/old main 10/room5,9.txt","start":1061948,"end":1062631},{"filename":"/data/levels/old main 10/room6,10.txt","start":1062631,"end":1063336},{"filename":"/data/levels/old main 10/room6,11.txt","start":1063336,"end":1064150},{"filename":"/data/levels/old main 10/room6,13.txt","start":1064150,"end":1065193},{"filename":"/data/levels/old main 10/room6,14.txt","start":1065193,"end":1065826},{"filename":"/data/levels/old main 10/room6,15.txt","start":1065826,"end":1066552},{"filename":"/data/levels/old main 10/room6,16.txt","start":1066552,"end":1067304},{"filename":"/data/levels/old main 10/room6,17.txt","start":1067304,"end":1068439},{"filename":"/data/levels/old main 10/room6,18.txt","start":1068439,"end":1069463},{"filename":"/data/levels/old main 10/room6,19.txt","start":1069463,"end":1070166},{"filename":"/data/levels/old main 10/room6,20.txt","start":1070166,"end":1071299},{"filename":"/data/levels/old main 10/room6,21.txt","start":1071299,"end":1071966},{"filename":"/data/levels/old main 10/room6,8.txt","start":1071966,"end":1072586},{"filename":"/data/levels/old main 10/room6,9.txt","start":1072586,"end":1073145},{"filename":"/data/levels/old main 10/room7,10.txt","start":1073145,"end":1073720},{"filename":"/data/levels/old main 10/room7,11.txt","start":1073720,"end":1074343},{"filename":"/data/levels/old main 10/room7,12.txt","start":1074343,"end":1075074},{"filename":"/data/levels/old main 10/room7,13.txt","start":1075074,"end":1075819},{"filename":"/data/levels/old main 10/room7,14.txt","start":1075819,"end":1076542},{"filename":"/data/levels/old main 10/room7,15.txt","start":1076542,"end":1077256},{"filename":"/data/levels/old main 10/room7,16.txt","start":1077256,"end":1078139},{"filename":"/data/levels/old main 10/room7,17.txt","start":1078139,"end":1078761},{"filename":"/data/levels/old main 10/room7,18.txt","start":1078761,"end":1079438},{"filename":"/data/levels/old main 10/room7,19.txt","start":1079438,"end":1080129},{"filename":"/data/levels/old main 10/room7,20.txt","start":1080129,"end":1080766},{"filename":"/data/levels/old main 10/room7,21.txt","start":1080766,"end":1081641},{"filename":"/data/levels/old main 10/room7,8.txt","start":1081641,"end":1082261},{"filename":"/data/levels/old main 10/room7,9.txt","start":1082261,"end":1082906},{"filename":"/data/levels/old main 10/room8,10.txt","start":1082906,"end":1083469},{"filename":"/data/levels/old main 10/room8,11.txt","start":1083469,"end":1084093},{"filename":"/data/levels/old main 10/room8,12.txt","start":1084093,"end":1085231},{"filename":"/data/levels/old main 10/room8,13.txt","start":1085231,"end":1085947},{"filename":"/data/levels/old main 10/room8,14.txt","start":1085947,"end":1086599},{"filename":"/data/levels/old main 10/room8,15.txt","start":1086599,"end":1087260},{"filename":"/data/levels/old main 10/room8,16.txt","start":1087260,"end":1088267},{"filename":"/data/levels/old main 10/room8,17.txt","start":1088267,"end":1089146},{"filename":"/data/levels/old main 10/room8,18.txt","start":1089146,"end":1089815},{"filename":"/data/levels/old main 10/room8,19.txt","start":1089815,"end":1090756},{"filename":"/data/levels/old main 10/room8,20.txt","start":1090756,"end":1091563},{"filename":"/data/levels/old main 10/room8,21.txt","start":1091563,"end":1092158},{"filename":"/data/levels/old main 10/room8,9.txt","start":1092158,"end":1092842},{"filename":"/data/levels/old main 10/room9,10.txt","start":1092842,"end":1093461},{"filename":"/data/levels/old main 10/room9,11.txt","start":1093461,"end":1094081},{"filename":"/data/levels/old main 10/room9,12.txt","start":1094081,"end":1094693},{"filename":"/data/levels/old main 10/room9,13.txt","start":1094693,"end":1095304},{"filename":"/data/levels/old main 10/room9,14.txt","start":1095304,"end":1096055},{"filename":"/data/levels/old main 10/room9,15.txt","start":1096055,"end":1096650},{"filename":"/data/levels/old main 10/room9,16.txt","start":1096650,"end":1097640},{"filename":"/data/levels/old main 10/room9,17.txt","start":1097640,"end":1098359},{"filename":"/data/levels/old main 10/room9,18.txt","start":1098359,"end":1099258},{"filename":"/data/levels/old main 10/room9,19.txt","start":1099258,"end":1099985},{"filename":"/data/levels/old main 10/room9,20.txt","start":1099985,"end":1101212},{"filename":"/data/levels/old main 10/room9,9.txt","start":1101212,"end":1101924},{"filename":"/data/levels/old main 2/mapData.txt","start":1101924,"end":1102395},{"filename":"/data/levels/old main 2/room10,10.txt","start":1102395,"end":1103202},{"filename":"/data/levels/old main 2/room10,11.txt","start":1103202,"end":1103975},{"filename":"/data/levels/old main 2/room10,5.txt","start":1103975,"end":1104586},{"filename":"/data/levels/old main 2/room10,6.txt","start":1104586,"end":1105143},{"filename":"/data/levels/old main 2/room10,7.txt","start":1105143,"end":1105789},{"filename":"/data/levels/old main 2/room10,8.txt","start":1105789,"end":1106531},{"filename":"/data/levels/old main 2/room10,9.txt","start":1106531,"end":1107143},{"filename":"/data/levels/old main 2/room11,10.txt","start":1107143,"end":1107983},{"filename":"/data/levels/old main 2/room11,5.txt","start":1107983,"end":1108568},{"filename":"/data/levels/old main 2/room11,6.txt","start":1108568,"end":1109097},{"filename":"/data/levels/old main 2/room11,7.txt","start":1109097,"end":1109868},{"filename":"/data/levels/old main 2/room11,8.txt","start":1109868,"end":1110728},{"filename":"/data/levels/old main 2/room11,9.txt","start":1110728,"end":1111347},{"filename":"/data/levels/old main 2/room12,3.txt","start":1111347,"end":1111930},{"filename":"/data/levels/old main 2/room12,4.txt","start":1111930,"end":1112597},{"filename":"/data/levels/old main 2/room12,5.txt","start":1112597,"end":1113245},{"filename":"/data/levels/old main 2/room12,6.txt","start":1113245,"end":1113911},{"filename":"/data/levels/old main 2/room12,7.txt","start":1113911,"end":1114454},{"filename":"/data/levels/old main 2/room12,8.txt","start":1114454,"end":1115059},{"filename":"/data/levels/old main 2/room12,9.txt","start":1115059,"end":1115625},{"filename":"/data/levels/old main 2/room13,10.txt","start":1115625,"end":1116161},{"filename":"/data/levels/old main 2/room13,4.txt","start":1116161,"end":1117008},{"filename":"/data/levels/old main 2/room13,5.txt","start":1117008,"end":1117645},{"filename":"/data/levels/old main 2/room13,6.txt","start":1117645,"end":1118182},{"filename":"/data/levels/old main 2/room13,7.txt","start":1118182,"end":1118747},{"filename":"/data/levels/old main 2/room13,8.txt","start":1118747,"end":1119360},{"filename":"/data/levels/old main 2/room13,9.txt","start":1119360,"end":1119988},{"filename":"/data/levels/old main 2/room14,4.txt","start":1119988,"end":1120569},{"filename":"/data/levels/old main 2/room14,5.txt","start":1120569,"end":1121235},{"filename":"/data/levels/old main 2/room14,6.txt","start":1121235,"end":1121772},{"filename":"/data/levels/old main 2/room14,7.txt","start":1121772,"end":1122301},{"filename":"/data/levels/old main 2/room14,8.txt","start":1122301,"end":1122840},{"filename":"/data/levels/old main 2/room14,9.txt","start":1122840,"end":1123454},{"filename":"/data/levels/old main 2/room15,4.txt","start":1123454,"end":1124033},{"filename":"/data/levels/old main 2/room15,8.txt","start":1124033,"end":1124589},{"filename":"/data/levels/old main 2/room15,9.txt","start":1124589,"end":1125292},{"filename":"/data/levels/old main 2/room5,4.txt","start":1125292,"end":1125873},{"filename":"/data/levels/old main 2/room5,5.txt","start":1125873,"end":1126551},{"filename":"/data/levels/old main 2/room5,6.txt","start":1126551,"end":1127104},{"filename":"/data/levels/old main 2/room6,10.txt","start":1127104,"end":1127625},{"filename":"/data/levels/old main 2/room6,11.txt","start":1127625,"end":1128207},{"filename":"/data/levels/old main 2/room6,4.txt","start":1128207,"end":1128728},{"filename":"/data/levels/old main 2/room6,5.txt","start":1128728,"end":1129265},{"filename":"/data/levels/old main 2/room6,6.txt","start":1129265,"end":1129829},{"filename":"/data/levels/old main 2/room6,8.txt","start":1129829,"end":1130833},{"filename":"/data/levels/old main 2/room6,9.txt","start":1130833,"end":1131425},{"filename":"/data/levels/old main 2/room7,10.txt","start":1131425,"end":1131965},{"filename":"/data/levels/old main 2/room7,11.txt","start":1131965,"end":1132602},{"filename":"/data/levels/old main 2/room7,2.txt","start":1132602,"end":1133265},{"filename":"/data/levels/old main 2/room7,3.txt","start":1133265,"end":1133982},{"filename":"/data/levels/old main 2/room7,4.txt","start":1133982,"end":1134681},{"filename":"/data/levels/old main 2/room7,5.txt","start":1134681,"end":1135348},{"filename":"/data/levels/old main 2/room7,6.txt","start":1135348,"end":1135937},{"filename":"/data/levels/old main 2/room7,7.txt","start":1135937,"end":1136462},{"filename":"/data/levels/old main 2/room7,8.txt","start":1136462,"end":1137047},{"filename":"/data/levels/old main 2/room7,9.txt","start":1137047,"end":1137689},{"filename":"/data/levels/old main 2/room8,10.txt","start":1137689,"end":1138333},{"filename":"/data/levels/old main 2/room8,11.txt","start":1138333,"end":1138871},{"filename":"/data/levels/old main 2/room8,2.txt","start":1138871,"end":1139839},{"filename":"/data/levels/old main 2/room8,3.txt","start":1139839,"end":1140394},{"filename":"/data/levels/old main 2/room8,4.txt","start":1140394,"end":1140981},{"filename":"/data/levels/old main 2/room8,5.txt","start":1140981,"end":1141518},{"filename":"/data/levels/old main 2/room8,6.txt","start":1141518,"end":1142350},{"filename":"/data/levels/old main 2/room8,7.txt","start":1142350,"end":1142998},{"filename":"/data/levels/old main 2/room8,8.txt","start":1142998,"end":1143726},{"filename":"/data/levels/old main 2/room8,9.txt","start":1143726,"end":1144367},{"filename":"/data/levels/old main 2/room9,10.txt","start":1144367,"end":1144895},{"filename":"/data/levels/old main 2/room9,4.txt","start":1144895,"end":1145542},{"filename":"/data/levels/old main 2/room9,5.txt","start":1145542,"end":1146075},{"filename":"/data/levels/old main 2/room9,6.txt","start":1146075,"end":1146992},{"filename":"/data/levels/old main 2/room9,7.txt","start":1146992,"end":1147720},{"filename":"/data/levels/old main 2/room9,8.txt","start":1147720,"end":1148484},{"filename":"/data/levels/old main 2/room9,9.txt","start":1148484,"end":1149045},{"filename":"/data/levels/old main 3/mapData.txt","start":1149045,"end":1149539},{"filename":"/data/levels/old main 3/room10,10.txt","start":1149539,"end":1150518},{"filename":"/data/levels/old main 3/room10,11.txt","start":1150518,"end":1151850},{"filename":"/data/levels/old main 3/room10,4.txt","start":1151850,"end":1152605},{"filename":"/data/levels/old main 3/room10,5.txt","start":1152605,"end":1153244},{"filename":"/data/levels/old main 3/room10,6.txt","start":1153244,"end":1153801},{"filename":"/data/levels/old main 3/room10,7.txt","start":1153801,"end":1154556},{"filename":"/data/levels/old main 3/room10,8.txt","start":1154556,"end":1155298},{"filename":"/data/levels/old main 3/room10,9.txt","start":1155298,"end":1156261},{"filename":"/data/levels/old main 3/room11,10.txt","start":1156261,"end":1157101},{"filename":"/data/levels/old main 3/room11,11.txt","start":1157101,"end":1157740},{"filename":"/data/levels/old main 3/room11,5.txt","start":1157740,"end":1158396},{"filename":"/data/levels/old main 3/room11,6.txt","start":1158396,"end":1159192},{"filename":"/data/levels/old main 3/room11,7.txt","start":1159192,"end":1159942},{"filename":"/data/levels/old main 3/room11,8.txt","start":1159942,"end":1160835},{"filename":"/data/levels/old main 3/room11,9.txt","start":1160835,"end":1161466},{"filename":"/data/levels/old main 3/room12,10.txt","start":1161466,"end":1162347},{"filename":"/data/levels/old main 3/room12,3.txt","start":1162347,"end":1162934},{"filename":"/data/levels/old main 3/room12,4.txt","start":1162934,"end":1163604},{"filename":"/data/levels/old main 3/room12,5.txt","start":1163604,"end":1164418},{"filename":"/data/levels/old main 3/room12,6.txt","start":1164418,"end":1165288},{"filename":"/data/levels/old main 3/room12,7.txt","start":1165288,"end":1166016},{"filename":"/data/levels/old main 3/room12,8.txt","start":1166016,"end":1166659},{"filename":"/data/levels/old main 3/room12,9.txt","start":1166659,"end":1167296},{"filename":"/data/levels/old main 3/room13,10.txt","start":1167296,"end":1167936},{"filename":"/data/levels/old main 3/room13,4.txt","start":1167936,"end":1168903},{"filename":"/data/levels/old main 3/room13,5.txt","start":1168903,"end":1169540},{"filename":"/data/levels/old main 3/room13,6.txt","start":1169540,"end":1170077},{"filename":"/data/levels/old main 3/room13,7.txt","start":1170077,"end":1170642},{"filename":"/data/levels/old main 3/room13,8.txt","start":1170642,"end":1171255},{"filename":"/data/levels/old main 3/room13,9.txt","start":1171255,"end":1171883},{"filename":"/data/levels/old main 3/room14,10.txt","start":1171883,"end":1172507},{"filename":"/data/levels/old main 3/room14,4.txt","start":1172507,"end":1173155},{"filename":"/data/levels/old main 3/room14,5.txt","start":1173155,"end":1173905},{"filename":"/data/levels/old main 3/room14,6.txt","start":1173905,"end":1174555},{"filename":"/data/levels/old main 3/room14,7.txt","start":1174555,"end":1175124},{"filename":"/data/levels/old main 3/room14,8.txt","start":1175124,"end":1175702},{"filename":"/data/levels/old main 3/room14,9.txt","start":1175702,"end":1176320},{"filename":"/data/levels/old main 3/room15,4.txt","start":1176320,"end":1176903},{"filename":"/data/levels/old main 3/room15,8.txt","start":1176903,"end":1177576},{"filename":"/data/levels/old main 3/room15,9.txt","start":1177576,"end":1178356},{"filename":"/data/levels/old main 3/room5,4.txt","start":1178356,"end":1178940},{"filename":"/data/levels/old main 3/room5,5.txt","start":1178940,"end":1179694},{"filename":"/data/levels/old main 3/room5,6.txt","start":1179694,"end":1180361},{"filename":"/data/levels/old main 3/room6,10.txt","start":1180361,"end":1181020},{"filename":"/data/levels/old main 3/room6,11.txt","start":1181020,"end":1181605},{"filename":"/data/levels/old main 3/room6,4.txt","start":1181605,"end":1182126},{"filename":"/data/levels/old main 3/room6,5.txt","start":1182126,"end":1182840},{"filename":"/data/levels/old main 3/room6,6.txt","start":1182840,"end":1183485},{"filename":"/data/levels/old main 3/room6,7.txt","start":1183485,"end":1184189},{"filename":"/data/levels/old main 3/room6,8.txt","start":1184189,"end":1185191},{"filename":"/data/levels/old main 3/room6,9.txt","start":1185191,"end":1185786},{"filename":"/data/levels/old main 3/room7,10.txt","start":1185786,"end":1186391},{"filename":"/data/levels/old main 3/room7,11.txt","start":1186391,"end":1187109},{"filename":"/data/levels/old main 3/room7,2.txt","start":1187109,"end":1187772},{"filename":"/data/levels/old main 3/room7,3.txt","start":1187772,"end":1188489},{"filename":"/data/levels/old main 3/room7,4.txt","start":1188489,"end":1189188},{"filename":"/data/levels/old main 3/room7,5.txt","start":1189188,"end":1189899},{"filename":"/data/levels/old main 3/room7,6.txt","start":1189899,"end":1190614},{"filename":"/data/levels/old main 3/room7,7.txt","start":1190614,"end":1191221},{"filename":"/data/levels/old main 3/room7,8.txt","start":1191221,"end":1191818},{"filename":"/data/levels/old main 3/room7,9.txt","start":1191818,"end":1192468},{"filename":"/data/levels/old main 3/room8,10.txt","start":1192468,"end":1193403},{"filename":"/data/levels/old main 3/room8,11.txt","start":1193403,"end":1193941},{"filename":"/data/levels/old main 3/room8,2.txt","start":1193941,"end":1194909},{"filename":"/data/levels/old main 3/room8,3.txt","start":1194909,"end":1195464},{"filename":"/data/levels/old main 3/room8,4.txt","start":1195464,"end":1196051},{"filename":"/data/levels/old main 3/room8,5.txt","start":1196051,"end":1196596},{"filename":"/data/levels/old main 3/room8,6.txt","start":1196596,"end":1197507},{"filename":"/data/levels/old main 3/room8,7.txt","start":1197507,"end":1198158},{"filename":"/data/levels/old main 3/room8,8.txt","start":1198158,"end":1198889},{"filename":"/data/levels/old main 3/room8,9.txt","start":1198889,"end":1199534},{"filename":"/data/levels/old main 3/room9,10.txt","start":1199534,"end":1200197},{"filename":"/data/levels/old main 3/room9,4.txt","start":1200197,"end":1200850},{"filename":"/data/levels/old main 3/room9,5.txt","start":1200850,"end":1201411},{"filename":"/data/levels/old main 3/room9,6.txt","start":1201411,"end":1202384},{"filename":"/data/levels/old main 3/room9,7.txt","start":1202384,"end":1203223},{"filename":"/data/levels/old main 3/room9,8.txt","start":1203223,"end":1203987},{"filename":"/data/levels/old main 3/room9,9.txt","start":1203987,"end":1204675},{"filename":"/data/levels/old main 4/mapData.txt","start":1204675,"end":1205169},{"filename":"/data/levels/old main 4/room10,10.txt","start":1205169,"end":1206148},{"filename":"/data/levels/old main 4/room10,11.txt","start":1206148,"end":1207480},{"filename":"/data/levels/old main 4/room10,4.txt","start":1207480,"end":1208235},{"filename":"/data/levels/old main 4/room10,5.txt","start":1208235,"end":1208874},{"filename":"/data/levels/old main 4/room10,6.txt","start":1208874,"end":1209431},{"filename":"/data/levels/old main 4/room10,7.txt","start":1209431,"end":1210186},{"filename":"/data/levels/old main 4/room10,8.txt","start":1210186,"end":1210928},{"filename":"/data/levels/old main 4/room10,9.txt","start":1210928,"end":1211891},{"filename":"/data/levels/old main 4/room11,10.txt","start":1211891,"end":1212731},{"filename":"/data/levels/old main 4/room11,11.txt","start":1212731,"end":1213370},{"filename":"/data/levels/old main 4/room11,5.txt","start":1213370,"end":1214026},{"filename":"/data/levels/old main 4/room11,6.txt","start":1214026,"end":1214822},{"filename":"/data/levels/old main 4/room11,7.txt","start":1214822,"end":1215572},{"filename":"/data/levels/old main 4/room11,8.txt","start":1215572,"end":1216629},{"filename":"/data/levels/old main 4/room11,9.txt","start":1216629,"end":1217260},{"filename":"/data/levels/old main 4/room12,10.txt","start":1217260,"end":1218141},{"filename":"/data/levels/old main 4/room12,3.txt","start":1218141,"end":1218728},{"filename":"/data/levels/old main 4/room12,4.txt","start":1218728,"end":1219398},{"filename":"/data/levels/old main 4/room12,5.txt","start":1219398,"end":1220212},{"filename":"/data/levels/old main 4/room12,6.txt","start":1220212,"end":1221082},{"filename":"/data/levels/old main 4/room12,7.txt","start":1221082,"end":1221810},{"filename":"/data/levels/old main 4/room12,8.txt","start":1221810,"end":1222453},{"filename":"/data/levels/old main 4/room12,9.txt","start":1222453,"end":1223090},{"filename":"/data/levels/old main 4/room13,10.txt","start":1223090,"end":1223730},{"filename":"/data/levels/old main 4/room13,4.txt","start":1223730,"end":1224697},{"filename":"/data/levels/old main 4/room13,5.txt","start":1224697,"end":1225334},{"filename":"/data/levels/old main 4/room13,6.txt","start":1225334,"end":1225871},{"filename":"/data/levels/old main 4/room13,7.txt","start":1225871,"end":1226436},{"filename":"/data/levels/old main 4/room13,8.txt","start":1226436,"end":1227049},{"filename":"/data/levels/old main 4/room13,9.txt","start":1227049,"end":1227677},{"filename":"/data/levels/old main 4/room14,10.txt","start":1227677,"end":1228301},{"filename":"/data/levels/old main 4/room14,4.txt","start":1228301,"end":1228949},{"filename":"/data/levels/old main 4/room14,5.txt","start":1228949,"end":1229699},{"filename":"/data/levels/old main 4/room14,6.txt","start":1229699,"end":1230348},{"filename":"/data/levels/old main 4/room14,7.txt","start":1230348,"end":1230920},{"filename":"/data/levels/old main 4/room14,8.txt","start":1230920,"end":1231498},{"filename":"/data/levels/old main 4/room14,9.txt","start":1231498,"end":1232116},{"filename":"/data/levels/old main 4/room15,4.txt","start":1232116,"end":1232699},{"filename":"/data/levels/old main 4/room15,8.txt","start":1232699,"end":1233372},{"filename":"/data/levels/old main 4/room15,9.txt","start":1233372,"end":1234205},{"filename":"/data/levels/old main 4/room5,4.txt","start":1234205,"end":1234789},{"filename":"/data/levels/old main 4/room5,5.txt","start":1234789,"end":1235543},{"filename":"/data/levels/old main 4/room5,6.txt","start":1235543,"end":1236210},{"filename":"/data/levels/old main 4/room6,10.txt","start":1236210,"end":1236869},{"filename":"/data/levels/old main 4/room6,11.txt","start":1236869,"end":1237454},{"filename":"/data/levels/old main 4/room6,4.txt","start":1237454,"end":1237975},{"filename":"/data/levels/old main 4/room6,5.txt","start":1237975,"end":1238689},{"filename":"/data/levels/old main 4/room6,6.txt","start":1238689,"end":1239334},{"filename":"/data/levels/old main 4/room6,7.txt","start":1239334,"end":1240038},{"filename":"/data/levels/old main 4/room6,8.txt","start":1240038,"end":1241040},{"filename":"/data/levels/old main 4/room6,9.txt","start":1241040,"end":1241635},{"filename":"/data/levels/old main 4/room7,10.txt","start":1241635,"end":1242240},{"filename":"/data/levels/old main 4/room7,11.txt","start":1242240,"end":1242958},{"filename":"/data/levels/old main 4/room7,2.txt","start":1242958,"end":1243621},{"filename":"/data/levels/old main 4/room7,3.txt","start":1243621,"end":1244338},{"filename":"/data/levels/old main 4/room7,4.txt","start":1244338,"end":1245037},{"filename":"/data/levels/old main 4/room7,5.txt","start":1245037,"end":1245748},{"filename":"/data/levels/old main 4/room7,6.txt","start":1245748,"end":1246467},{"filename":"/data/levels/old main 4/room7,7.txt","start":1246467,"end":1247074},{"filename":"/data/levels/old main 4/room7,8.txt","start":1247074,"end":1247671},{"filename":"/data/levels/old main 4/room7,9.txt","start":1247671,"end":1248321},{"filename":"/data/levels/old main 4/room8,10.txt","start":1248321,"end":1249256},{"filename":"/data/levels/old main 4/room8,11.txt","start":1249256,"end":1249794},{"filename":"/data/levels/old main 4/room8,2.txt","start":1249794,"end":1250762},{"filename":"/data/levels/old main 4/room8,3.txt","start":1250762,"end":1251317},{"filename":"/data/levels/old main 4/room8,4.txt","start":1251317,"end":1251904},{"filename":"/data/levels/old main 4/room8,5.txt","start":1251904,"end":1252449},{"filename":"/data/levels/old main 4/room8,6.txt","start":1252449,"end":1253360},{"filename":"/data/levels/old main 4/room8,7.txt","start":1253360,"end":1254011},{"filename":"/data/levels/old main 4/room8,8.txt","start":1254011,"end":1254742},{"filename":"/data/levels/old main 4/room8,9.txt","start":1254742,"end":1255387},{"filename":"/data/levels/old main 4/room9,10.txt","start":1255387,"end":1256050},{"filename":"/data/levels/old main 4/room9,4.txt","start":1256050,"end":1256703},{"filename":"/data/levels/old main 4/room9,5.txt","start":1256703,"end":1257264},{"filename":"/data/levels/old main 4/room9,6.txt","start":1257264,"end":1258237},{"filename":"/data/levels/old main 4/room9,7.txt","start":1258237,"end":1259076},{"filename":"/data/levels/old main 4/room9,8.txt","start":1259076,"end":1259919},{"filename":"/data/levels/old main 4/room9,9.txt","start":1259919,"end":1260607},{"filename":"/data/levels/old main 5/mapData.txt","start":1260607,"end":1261296},{"filename":"/data/levels/old main 5/room10,1.txt","start":1261296,"end":1261869},{"filename":"/data/levels/old main 5/room10,10.txt","start":1261869,"end":1262848},{"filename":"/data/levels/old main 5/room10,11.txt","start":1262848,"end":1264180},{"filename":"/data/levels/old main 5/room10,13.txt","start":1264180,"end":1265885},{"filename":"/data/levels/old main 5/room10,16.txt","start":1265885,"end":1267199},{"filename":"/data/levels/old main 5/room10,2.txt","start":1267199,"end":1267802},{"filename":"/data/levels/old main 5/room10,3.txt","start":1267802,"end":1268395},{"filename":"/data/levels/old main 5/room10,4.txt","start":1268395,"end":1269043},{"filename":"/data/levels/old main 5/room10,5.txt","start":1269043,"end":1269682},{"filename":"/data/levels/old main 5/room10,6.txt","start":1269682,"end":1270239},{"filename":"/data/levels/old main 5/room10,7.txt","start":1270239,"end":1270994},{"filename":"/data/levels/old main 5/room10,8.txt","start":1270994,"end":1271736},{"filename":"/data/levels/old main 5/room10,9.txt","start":1271736,"end":1272727},{"filename":"/data/levels/old main 5/room11,1.txt","start":1272727,"end":1273279},{"filename":"/data/levels/old main 5/room11,10.txt","start":1273279,"end":1274134},{"filename":"/data/levels/old main 5/room11,11.txt","start":1274134,"end":1274773},{"filename":"/data/levels/old main 5/room11,13.txt","start":1274773,"end":1276525},{"filename":"/data/levels/old main 5/room11,14.txt","start":1276525,"end":1277446},{"filename":"/data/levels/old main 5/room11,16.txt","start":1277446,"end":1278440},{"filename":"/data/levels/old main 5/room11,5.txt","start":1278440,"end":1279097},{"filename":"/data/levels/old main 5/room11,6.txt","start":1279097,"end":1279893},{"filename":"/data/levels/old main 5/room11,7.txt","start":1279893,"end":1280643},{"filename":"/data/levels/old main 5/room11,8.txt","start":1280643,"end":1281700},{"filename":"/data/levels/old main 5/room11,9.txt","start":1281700,"end":1282331},{"filename":"/data/levels/old main 5/room12,10.txt","start":1282331,"end":1283212},{"filename":"/data/levels/old main 5/room12,13.txt","start":1283212,"end":1284346},{"filename":"/data/levels/old main 5/room12,14.txt","start":1284346,"end":1285465},{"filename":"/data/levels/old main 5/room12,15.txt","start":1285465,"end":1285795},{"filename":"/data/levels/old main 5/room12,16.txt","start":1285795,"end":1286736},{"filename":"/data/levels/old main 5/room12,3.txt","start":1286736,"end":1287327},{"filename":"/data/levels/old main 5/room12,4.txt","start":1287327,"end":1287997},{"filename":"/data/levels/old main 5/room12,5.txt","start":1287997,"end":1288811},{"filename":"/data/levels/old main 5/room12,6.txt","start":1288811,"end":1289681},{"filename":"/data/levels/old main 5/room12,7.txt","start":1289681,"end":1290409},{"filename":"/data/levels/old main 5/room12,8.txt","start":1290409,"end":1291052},{"filename":"/data/levels/old main 5/room12,9.txt","start":1291052,"end":1291689},{"filename":"/data/levels/old main 5/room13,10.txt","start":1291689,"end":1292329},{"filename":"/data/levels/old main 5/room13,4.txt","start":1292329,"end":1293296},{"filename":"/data/levels/old main 5/room13,5.txt","start":1293296,"end":1293933},{"filename":"/data/levels/old main 5/room13,6.txt","start":1293933,"end":1294470},{"filename":"/data/levels/old main 5/room13,7.txt","start":1294470,"end":1295069},{"filename":"/data/levels/old main 5/room13,8.txt","start":1295069,"end":1295682},{"filename":"/data/levels/old main 5/room13,9.txt","start":1295682,"end":1296310},{"filename":"/data/levels/old main 5/room14,10.txt","start":1296310,"end":1296934},{"filename":"/data/levels/old main 5/room14,4.txt","start":1296934,"end":1297582},{"filename":"/data/levels/old main 5/room14,5.txt","start":1297582,"end":1298332},{"filename":"/data/levels/old main 5/room14,6.txt","start":1298332,"end":1298981},{"filename":"/data/levels/old main 5/room14,7.txt","start":1298981,"end":1299617},{"filename":"/data/levels/old main 5/room14,8.txt","start":1299617,"end":1300195},{"filename":"/data/levels/old main 5/room14,9.txt","start":1300195,"end":1300813},{"filename":"/data/levels/old main 5/room15,4.txt","start":1300813,"end":1301396},{"filename":"/data/levels/old main 5/room15,8.txt","start":1301396,"end":1302069},{"filename":"/data/levels/old main 5/room15,9.txt","start":1302069,"end":1302902},{"filename":"/data/levels/old main 5/room2,10.txt","start":1302902,"end":1303427},{"filename":"/data/levels/old main 5/room3,10.txt","start":1303427,"end":1304093},{"filename":"/data/levels/old main 5/room4,10.txt","start":1304093,"end":1304934},{"filename":"/data/levels/old main 5/room5,10.txt","start":1304934,"end":1305565},{"filename":"/data/levels/old main 5/room5,4.txt","start":1305565,"end":1306149},{"filename":"/data/levels/old main 5/room5,5.txt","start":1306149,"end":1306903},{"filename":"/data/levels/old main 5/room5,6.txt","start":1306903,"end":1307570},{"filename":"/data/levels/old main 5/room6,10.txt","start":1307570,"end":1308279},{"filename":"/data/levels/old main 5/room6,11.txt","start":1308279,"end":1308864},{"filename":"/data/levels/old main 5/room6,3.txt","start":1308864,"end":1309658},{"filename":"/data/levels/old main 5/room6,4.txt","start":1309658,"end":1310230},{"filename":"/data/levels/old main 5/room6,5.txt","start":1310230,"end":1310952},{"filename":"/data/levels/old main 5/room6,6.txt","start":1310952,"end":1311597},{"filename":"/data/levels/old main 5/room6,7.txt","start":1311597,"end":1312301},{"filename":"/data/levels/old main 5/room6,8.txt","start":1312301,"end":1313303},{"filename":"/data/levels/old main 5/room6,9.txt","start":1313303,"end":1313898},{"filename":"/data/levels/old main 5/room7,10.txt","start":1313898,"end":1314503},{"filename":"/data/levels/old main 5/room7,11.txt","start":1314503,"end":1315206},{"filename":"/data/levels/old main 5/room7,13.txt","start":1315206,"end":1315396},{"filename":"/data/levels/old main 5/room7,2.txt","start":1315396,"end":1316059},{"filename":"/data/levels/old main 5/room7,3.txt","start":1316059,"end":1316776},{"filename":"/data/levels/old main 5/room7,4.txt","start":1316776,"end":1317475},{"filename":"/data/levels/old main 5/room7,5.txt","start":1317475,"end":1318186},{"filename":"/data/levels/old main 5/room7,6.txt","start":1318186,"end":1319080},{"filename":"/data/levels/old main 5/room7,7.txt","start":1319080,"end":1319667},{"filename":"/data/levels/old main 5/room7,8.txt","start":1319667,"end":1320264},{"filename":"/data/levels/old main 5/room7,9.txt","start":1320264,"end":1320906},{"filename":"/data/levels/old main 5/room8,10.txt","start":1320906,"end":1321687},{"filename":"/data/levels/old main 5/room8,11.txt","start":1321687,"end":1322225},{"filename":"/data/levels/old main 5/room8,13.txt","start":1322225,"end":1322424},{"filename":"/data/levels/old main 5/room8,2.txt","start":1322424,"end":1323392},{"filename":"/data/levels/old main 5/room8,3.txt","start":1323392,"end":1323947},{"filename":"/data/levels/old main 5/room8,4.txt","start":1323947,"end":1324534},{"filename":"/data/levels/old main 5/room8,5.txt","start":1324534,"end":1325079},{"filename":"/data/levels/old main 5/room8,6.txt","start":1325079,"end":1325990},{"filename":"/data/levels/old main 5/room8,7.txt","start":1325990,"end":1326774},{"filename":"/data/levels/old main 5/room8,8.txt","start":1326774,"end":1327393},{"filename":"/data/levels/old main 5/room8,9.txt","start":1327393,"end":1328328},{"filename":"/data/levels/old main 5/room9,1.txt","start":1328328,"end":1328857},{"filename":"/data/levels/old main 5/room9,10.txt","start":1328857,"end":1329520},{"filename":"/data/levels/old main 5/room9,13.txt","start":1329520,"end":1329909},{"filename":"/data/levels/old main 5/room9,4.txt","start":1329909,"end":1330623},{"filename":"/data/levels/old main 5/room9,5.txt","start":1330623,"end":1331184},{"filename":"/data/levels/old main 5/room9,6.txt","start":1331184,"end":1332157},{"filename":"/data/levels/old main 5/room9,7.txt","start":1332157,"end":1332815},{"filename":"/data/levels/old main 5/room9,8.txt","start":1332815,"end":1333618},{"filename":"/data/levels/old main 5/room9,9.txt","start":1333618,"end":1334327},{"filename":"/data/levels/old main 6/editorDefault.txt","start":1334327,"end":1336384},{"filename":"/data/levels/old main 6/mapData.txt","start":1336384,"end":1337179},{"filename":"/data/levels/old main 6/room10,1.txt","start":1337179,"end":1337747},{"filename":"/data/levels/old main 6/room10,10.txt","start":1337747,"end":1338726},{"filename":"/data/levels/old main 6/room10,11.txt","start":1338726,"end":1340058},{"filename":"/data/levels/old main 6/room10,13.txt","start":1340058,"end":1341763},{"filename":"/data/levels/old main 6/room10,16.txt","start":1341763,"end":1343077},{"filename":"/data/levels/old main 6/room10,2.txt","start":1343077,"end":1343692},{"filename":"/data/levels/old main 6/room10,3.txt","start":1343692,"end":1344285},{"filename":"/data/levels/old main 6/room10,4.txt","start":1344285,"end":1344933},{"filename":"/data/levels/old main 6/room10,5.txt","start":1344933,"end":1345572},{"filename":"/data/levels/old main 6/room10,6.txt","start":1345572,"end":1346231},{"filename":"/data/levels/old main 6/room10,7.txt","start":1346231,"end":1346986},{"filename":"/data/levels/old main 6/room10,8.txt","start":1346986,"end":1347728},{"filename":"/data/levels/old main 6/room10,9.txt","start":1347728,"end":1348719},{"filename":"/data/levels/old main 6/room11,1.txt","start":1348719,"end":1349271},{"filename":"/data/levels/old main 6/room11,10.txt","start":1349271,"end":1350126},{"filename":"/data/levels/old main 6/room11,11.txt","start":1350126,"end":1350765},{"filename":"/data/levels/old main 6/room11,13.txt","start":1350765,"end":1352517},{"filename":"/data/levels/old main 6/room11,14.txt","start":1352517,"end":1353438},{"filename":"/data/levels/old main 6/room11,16.txt","start":1353438,"end":1354432},{"filename":"/data/levels/old main 6/room11,5.txt","start":1354432,"end":1355093},{"filename":"/data/levels/old main 6/room11,6.txt","start":1355093,"end":1355942},{"filename":"/data/levels/old main 6/room11,7.txt","start":1355942,"end":1356692},{"filename":"/data/levels/old main 6/room11,8.txt","start":1356692,"end":1357749},{"filename":"/data/levels/old main 6/room11,9.txt","start":1357749,"end":1358380},{"filename":"/data/levels/old main 6/room12,10.txt","start":1358380,"end":1359261},{"filename":"/data/levels/old main 6/room12,13.txt","start":1359261,"end":1360395},{"filename":"/data/levels/old main 6/room12,14.txt","start":1360395,"end":1361514},{"filename":"/data/levels/old main 6/room12,15.txt","start":1361514,"end":1361844},{"filename":"/data/levels/old main 6/room12,16.txt","start":1361844,"end":1362785},{"filename":"/data/levels/old main 6/room12,3.txt","start":1362785,"end":1363376},{"filename":"/data/levels/old main 6/room12,4.txt","start":1363376,"end":1364046},{"filename":"/data/levels/old main 6/room12,5.txt","start":1364046,"end":1364860},{"filename":"/data/levels/old main 6/room12,6.txt","start":1364860,"end":1365730},{"filename":"/data/levels/old main 6/room12,7.txt","start":1365730,"end":1366527},{"filename":"/data/levels/old main 6/room12,8.txt","start":1366527,"end":1367170},{"filename":"/data/levels/old main 6/room12,9.txt","start":1367170,"end":1367807},{"filename":"/data/levels/old main 6/room13,10.txt","start":1367807,"end":1368447},{"filename":"/data/levels/old main 6/room13,4.txt","start":1368447,"end":1369419},{"filename":"/data/levels/old main 6/room13,5.txt","start":1369419,"end":1370056},{"filename":"/data/levels/old main 6/room13,6.txt","start":1370056,"end":1370593},{"filename":"/data/levels/old main 6/room13,7.txt","start":1370593,"end":1371192},{"filename":"/data/levels/old main 6/room13,8.txt","start":1371192,"end":1371805},{"filename":"/data/levels/old main 6/room13,9.txt","start":1371805,"end":1372433},{"filename":"/data/levels/old main 6/room14,10.txt","start":1372433,"end":1373109},{"filename":"/data/levels/old main 6/room14,4.txt","start":1373109,"end":1373757},{"filename":"/data/levels/old main 6/room14,5.txt","start":1373757,"end":1374507},{"filename":"/data/levels/old main 6/room14,6.txt","start":1374507,"end":1375156},{"filename":"/data/levels/old main 6/room14,7.txt","start":1375156,"end":1375832},{"filename":"/data/levels/old main 6/room14,8.txt","start":1375832,"end":1376410},{"filename":"/data/levels/old main 6/room14,9.txt","start":1376410,"end":1377028},{"filename":"/data/levels/old main 6/room15,10.txt","start":1377028,"end":1377657},{"filename":"/data/levels/old main 6/room15,4.txt","start":1377657,"end":1378240},{"filename":"/data/levels/old main 6/room15,8.txt","start":1378240,"end":1378913},{"filename":"/data/levels/old main 6/room15,9.txt","start":1378913,"end":1379766},{"filename":"/data/levels/old main 6/room16,10.txt","start":1379766,"end":1380608},{"filename":"/data/levels/old main 6/room17,10.txt","start":1380608,"end":1381272},{"filename":"/data/levels/old main 6/room18,10.txt","start":1381272,"end":1381827},{"filename":"/data/levels/old main 6/room4,9.txt","start":1381827,"end":1382476},{"filename":"/data/levels/old main 6/room5,4.txt","start":1382476,"end":1383060},{"filename":"/data/levels/old main 6/room5,5.txt","start":1383060,"end":1383814},{"filename":"/data/levels/old main 6/room5,6.txt","start":1383814,"end":1384481},{"filename":"/data/levels/old main 6/room6,11.txt","start":1384481,"end":1385066},{"filename":"/data/levels/old main 6/room6,3.txt","start":1385066,"end":1385860},{"filename":"/data/levels/old main 6/room6,4.txt","start":1385860,"end":1386432},{"filename":"/data/levels/old main 6/room6,5.txt","start":1386432,"end":1387154},{"filename":"/data/levels/old main 6/room6,6.txt","start":1387154,"end":1387799},{"filename":"/data/levels/old main 6/room6,7.txt","start":1387799,"end":1388503},{"filename":"/data/levels/old main 6/room6,8.txt","start":1388503,"end":1389505},{"filename":"/data/levels/old main 6/room6,9.txt","start":1389505,"end":1390100},{"filename":"/data/levels/old main 6/room7,10.txt","start":1390100,"end":1390705},{"filename":"/data/levels/old main 6/room7,11.txt","start":1390705,"end":1391400},{"filename":"/data/levels/old main 6/room7,13.txt","start":1391400,"end":1391590},{"filename":"/data/levels/old main 6/room7,2.txt","start":1391590,"end":1392253},{"filename":"/data/levels/old main 6/room7,3.txt","start":1392253,"end":1392970},{"filename":"/data/levels/old main 6/room7,4.txt","start":1392970,"end":1393669},{"filename":"/data/levels/old main 6/room7,5.txt","start":1393669,"end":1394380},{"filename":"/data/levels/old main 6/room7,6.txt","start":1394380,"end":1395274},{"filename":"/data/levels/old main 6/room7,7.txt","start":1395274,"end":1395861},{"filename":"/data/levels/old main 6/room7,8.txt","start":1395861,"end":1396506},{"filename":"/data/levels/old main 6/room7,9.txt","start":1396506,"end":1397148},{"filename":"/data/levels/old main 6/room8,10.txt","start":1397148,"end":1397929},{"filename":"/data/levels/old main 6/room8,11.txt","start":1397929,"end":1398467},{"filename":"/data/levels/old main 6/room8,13.txt","start":1398467,"end":1398666},{"filename":"/data/levels/old main 6/room8,2.txt","start":1398666,"end":1399634},{"filename":"/data/levels/old main 6/room8,3.txt","start":1399634,"end":1400189},{"filename":"/data/levels/old main 6/room8,4.txt","start":1400189,"end":1400776},{"filename":"/data/levels/old main 6/room8,5.txt","start":1400776,"end":1401321},{"filename":"/data/levels/old main 6/room8,6.txt","start":1401321,"end":1402232},{"filename":"/data/levels/old main 6/room8,7.txt","start":1402232,"end":1403016},{"filename":"/data/levels/old main 6/room8,8.txt","start":1403016,"end":1403635},{"filename":"/data/levels/old main 6/room8,9.txt","start":1403635,"end":1404570},{"filename":"/data/levels/old main 6/room9,1.txt","start":1404570,"end":1405099},{"filename":"/data/levels/old main 6/room9,10.txt","start":1405099,"end":1405762},{"filename":"/data/levels/old main 6/room9,13.txt","start":1405762,"end":1406151},{"filename":"/data/levels/old main 6/room9,4.txt","start":1406151,"end":1406865},{"filename":"/data/levels/old main 6/room9,5.txt","start":1406865,"end":1407426},{"filename":"/data/levels/old main 6/room9,6.txt","start":1407426,"end":1408399},{"filename":"/data/levels/old main 6/room9,7.txt","start":1408399,"end":1409057},{"filename":"/data/levels/old main 6/room9,8.txt","start":1409057,"end":1409860},{"filename":"/data/levels/old main 6/room9,9.txt","start":1409860,"end":1410565},{"filename":"/data/levels/old main 7/editorDefault.txt","start":1410565,"end":1412622},{"filename":"/data/levels/old main 7/mapData.txt","start":1412622,"end":1413419},{"filename":"/data/levels/old main 7/room10,1.txt","start":1413419,"end":1413987},{"filename":"/data/levels/old main 7/room10,10.txt","start":1413987,"end":1414966},{"filename":"/data/levels/old main 7/room10,11.txt","start":1414966,"end":1416298},{"filename":"/data/levels/old main 7/room10,13.txt","start":1416298,"end":1416488},{"filename":"/data/levels/old main 7/room10,2.txt","start":1416488,"end":1417103},{"filename":"/data/levels/old main 7/room10,3.txt","start":1417103,"end":1417696},{"filename":"/data/levels/old main 7/room10,4.txt","start":1417696,"end":1418344},{"filename":"/data/levels/old main 7/room10,5.txt","start":1418344,"end":1418983},{"filename":"/data/levels/old main 7/room10,6.txt","start":1418983,"end":1419634},{"filename":"/data/levels/old main 7/room10,7.txt","start":1419634,"end":1420389},{"filename":"/data/levels/old main 7/room10,8.txt","start":1420389,"end":1421046},{"filename":"/data/levels/old main 7/room10,9.txt","start":1421046,"end":1422037},{"filename":"/data/levels/old main 7/room11,1.txt","start":1422037,"end":1422589},{"filename":"/data/levels/old main 7/room11,10.txt","start":1422589,"end":1423444},{"filename":"/data/levels/old main 7/room11,11.txt","start":1423444,"end":1424227},{"filename":"/data/levels/old main 7/room11,13.txt","start":1424227,"end":1424426},{"filename":"/data/levels/old main 7/room11,3.txt","start":1424426,"end":1424983},{"filename":"/data/levels/old main 7/room11,4.txt","start":1424983,"end":1425568},{"filename":"/data/levels/old main 7/room11,5.txt","start":1425568,"end":1426260},{"filename":"/data/levels/old main 7/room11,6.txt","start":1426260,"end":1427266},{"filename":"/data/levels/old main 7/room11,7.txt","start":1427266,"end":1428016},{"filename":"/data/levels/old main 7/room11,8.txt","start":1428016,"end":1428829},{"filename":"/data/levels/old main 7/room11,9.txt","start":1428829,"end":1429511},{"filename":"/data/levels/old main 7/room12,10.txt","start":1429511,"end":1430392},{"filename":"/data/levels/old main 7/room12,11.txt","start":1430392,"end":1430947},{"filename":"/data/levels/old main 7/room12,13.txt","start":1430947,"end":1431336},{"filename":"/data/levels/old main 7/room12,3.txt","start":1431336,"end":1431927},{"filename":"/data/levels/old main 7/room12,4.txt","start":1431927,"end":1432597},{"filename":"/data/levels/old main 7/room12,5.txt","start":1432597,"end":1433411},{"filename":"/data/levels/old main 7/room12,6.txt","start":1433411,"end":1434281},{"filename":"/data/levels/old main 7/room12,7.txt","start":1434281,"end":1434976},{"filename":"/data/levels/old main 7/room12,8.txt","start":1434976,"end":1435619},{"filename":"/data/levels/old main 7/room12,9.txt","start":1435619,"end":1436256},{"filename":"/data/levels/old main 7/room13,10.txt","start":1436256,"end":1436896},{"filename":"/data/levels/old main 7/room13,11.txt","start":1436896,"end":1437609},{"filename":"/data/levels/old main 7/room13,13.txt","start":1437609,"end":1439518},{"filename":"/data/levels/old main 7/room13,4.txt","start":1439518,"end":1440490},{"filename":"/data/levels/old main 7/room13,5.txt","start":1440490,"end":1441127},{"filename":"/data/levels/old main 7/room13,6.txt","start":1441127,"end":1441664},{"filename":"/data/levels/old main 7/room13,7.txt","start":1441664,"end":1442263},{"filename":"/data/levels/old main 7/room13,8.txt","start":1442263,"end":1442876},{"filename":"/data/levels/old main 7/room13,9.txt","start":1442876,"end":1443552},{"filename":"/data/levels/old main 7/room14,10.txt","start":1443552,"end":1444304},{"filename":"/data/levels/old main 7/room14,13.txt","start":1444304,"end":1446056},{"filename":"/data/levels/old main 7/room14,14.txt","start":1446056,"end":1446972},{"filename":"/data/levels/old main 7/room14,15.txt","start":1446972,"end":1448278},{"filename":"/data/levels/old main 7/room14,16.txt","start":1448278,"end":1449270},{"filename":"/data/levels/old main 7/room14,4.txt","start":1449270,"end":1449918},{"filename":"/data/levels/old main 7/room14,5.txt","start":1449918,"end":1450668},{"filename":"/data/levels/old main 7/room14,6.txt","start":1450668,"end":1451317},{"filename":"/data/levels/old main 7/room14,7.txt","start":1451317,"end":1451993},{"filename":"/data/levels/old main 7/room14,8.txt","start":1451993,"end":1452571},{"filename":"/data/levels/old main 7/room14,9.txt","start":1452571,"end":1453189},{"filename":"/data/levels/old main 7/room15,10.txt","start":1453189,"end":1453818},{"filename":"/data/levels/old main 7/room15,13.txt","start":1453818,"end":1454952},{"filename":"/data/levels/old main 7/room15,14.txt","start":1454952,"end":1456071},{"filename":"/data/levels/old main 7/room15,15.txt","start":1456071,"end":1456401},{"filename":"/data/levels/old main 7/room15,16.txt","start":1456401,"end":1457371},{"filename":"/data/levels/old main 7/room15,4.txt","start":1457371,"end":1457954},{"filename":"/data/levels/old main 7/room15,8.txt","start":1457954,"end":1458627},{"filename":"/data/levels/old main 7/room15,9.txt","start":1458627,"end":1459480},{"filename":"/data/levels/old main 7/room16,10.txt","start":1459480,"end":1460322},{"filename":"/data/levels/old main 7/room17,10.txt","start":1460322,"end":1460986},{"filename":"/data/levels/old main 7/room18,10.txt","start":1460986,"end":1461541},{"filename":"/data/levels/old main 7/room4,9.txt","start":1461541,"end":1462536},{"filename":"/data/levels/old main 7/room5,4.txt","start":1462536,"end":1463120},{"filename":"/data/levels/old main 7/room5,5.txt","start":1463120,"end":1463874},{"filename":"/data/levels/old main 7/room5,6.txt","start":1463874,"end":1464541},{"filename":"/data/levels/old main 7/room6,10.txt","start":1464541,"end":1465159},{"filename":"/data/levels/old main 7/room6,11.txt","start":1465159,"end":1465744},{"filename":"/data/levels/old main 7/room6,3.txt","start":1465744,"end":1466628},{"filename":"/data/levels/old main 7/room6,4.txt","start":1466628,"end":1467200},{"filename":"/data/levels/old main 7/room6,5.txt","start":1467200,"end":1467862},{"filename":"/data/levels/old main 7/room6,6.txt","start":1467862,"end":1468507},{"filename":"/data/levels/old main 7/room6,7.txt","start":1468507,"end":1469211},{"filename":"/data/levels/old main 7/room6,8.txt","start":1469211,"end":1470213},{"filename":"/data/levels/old main 7/room6,9.txt","start":1470213,"end":1470808},{"filename":"/data/levels/old main 7/room7,10.txt","start":1470808,"end":1471413},{"filename":"/data/levels/old main 7/room7,11.txt","start":1471413,"end":1472108},{"filename":"/data/levels/old main 7/room7,2.txt","start":1472108,"end":1472771},{"filename":"/data/levels/old main 7/room7,3.txt","start":1472771,"end":1473488},{"filename":"/data/levels/old main 7/room7,4.txt","start":1473488,"end":1474187},{"filename":"/data/levels/old main 7/room7,5.txt","start":1474187,"end":1474898},{"filename":"/data/levels/old main 7/room7,6.txt","start":1474898,"end":1475792},{"filename":"/data/levels/old main 7/room7,7.txt","start":1475792,"end":1476379},{"filename":"/data/levels/old main 7/room7,8.txt","start":1476379,"end":1477024},{"filename":"/data/levels/old main 7/room7,9.txt","start":1477024,"end":1477713},{"filename":"/data/levels/old main 7/room8,10.txt","start":1477713,"end":1478494},{"filename":"/data/levels/old main 7/room8,11.txt","start":1478494,"end":1479032},{"filename":"/data/levels/old main 7/room8,2.txt","start":1479032,"end":148e4},{"filename":"/data/levels/old main 7/room8,3.txt","start":148e4,"end":1480555},{"filename":"/data/levels/old main 7/room8,4.txt","start":1480555,"end":1481142},{"filename":"/data/levels/old main 7/room8,5.txt","start":1481142,"end":1481687},{"filename":"/data/levels/old main 7/room8,6.txt","start":1481687,"end":1482599},{"filename":"/data/levels/old main 7/room8,7.txt","start":1482599,"end":1483383},{"filename":"/data/levels/old main 7/room8,8.txt","start":1483383,"end":1484002},{"filename":"/data/levels/old main 7/room8,9.txt","start":1484002,"end":1484937},{"filename":"/data/levels/old main 7/room9,1.txt","start":1484937,"end":1485466},{"filename":"/data/levels/old main 7/room9,10.txt","start":1485466,"end":1486129},{"filename":"/data/levels/old main 7/room9,2.txt","start":1486129,"end":1486650},{"filename":"/data/levels/old main 7/room9,3.txt","start":1486650,"end":1487267},{"filename":"/data/levels/old main 7/room9,4.txt","start":1487267,"end":1487981},{"filename":"/data/levels/old main 7/room9,5.txt","start":1487981,"end":1488542},{"filename":"/data/levels/old main 7/room9,6.txt","start":1488542,"end":1489476},{"filename":"/data/levels/old main 7/room9,7.txt","start":1489476,"end":1490134},{"filename":"/data/levels/old main 7/room9,8.txt","start":1490134,"end":1490937},{"filename":"/data/levels/old main 7/room9,9.txt","start":1490937,"end":1491642},{"filename":"/data/levels/old main 8/editorDefault.txt","start":1491642,"end":1493699},{"filename":"/data/levels/old main 8/mapData.txt","start":1493699,"end":1494704},{"filename":"/data/levels/old main 8/room10,11.txt","start":1494704,"end":1495225},{"filename":"/data/levels/old main 8/room10,12.txt","start":1495225,"end":1495793},{"filename":"/data/levels/old main 8/room10,13.txt","start":1495793,"end":1496408},{"filename":"/data/levels/old main 8/room10,14.txt","start":1496408,"end":1497107},{"filename":"/data/levels/old main 8/room10,15.txt","start":1497107,"end":1497746},{"filename":"/data/levels/old main 8/room10,16.txt","start":1497746,"end":1498403},{"filename":"/data/levels/old main 8/room10,17.txt","start":1498403,"end":1499164},{"filename":"/data/levels/old main 8/room10,18.txt","start":1499164,"end":1499824},{"filename":"/data/levels/old main 8/room10,19.txt","start":1499824,"end":1500815},{"filename":"/data/levels/old main 8/room10,20.txt","start":1500815,"end":1501796},{"filename":"/data/levels/old main 8/room10,21.txt","start":1501796,"end":1503130},{"filename":"/data/levels/old main 8/room10,7.txt","start":1503130,"end":1503319},{"filename":"/data/levels/old main 8/room11,12.txt","start":1503319,"end":1503871},{"filename":"/data/levels/old main 8/room11,13.txt","start":1503871,"end":1504396},{"filename":"/data/levels/old main 8/room11,14.txt","start":1504396,"end":1505056},{"filename":"/data/levels/old main 8/room11,15.txt","start":1505056,"end":1505748},{"filename":"/data/levels/old main 8/room11,16.txt","start":1505748,"end":1506706},{"filename":"/data/levels/old main 8/room11,17.txt","start":1506706,"end":1507459},{"filename":"/data/levels/old main 8/room11,18.txt","start":1507459,"end":1508275},{"filename":"/data/levels/old main 8/room11,19.txt","start":1508275,"end":1508961},{"filename":"/data/levels/old main 8/room11,20.txt","start":1508961,"end":1509819},{"filename":"/data/levels/old main 8/room11,21.txt","start":1509819,"end":1510605},{"filename":"/data/levels/old main 8/room11,7.txt","start":1510605,"end":1510804},{"filename":"/data/levels/old main 8/room12,11.txt","start":1510804,"end":1511325},{"filename":"/data/levels/old main 8/room12,13.txt","start":1511325,"end":1511916},{"filename":"/data/levels/old main 8/room12,14.txt","start":1511916,"end":1512547},{"filename":"/data/levels/old main 8/room12,15.txt","start":1512547,"end":1513415},{"filename":"/data/levels/old main 8/room12,16.txt","start":1513415,"end":1514297},{"filename":"/data/levels/old main 8/room12,17.txt","start":1514297,"end":1514998},{"filename":"/data/levels/old main 8/room12,18.txt","start":1514998,"end":1515641},{"filename":"/data/levels/old main 8/room12,19.txt","start":1515641,"end":1516280},{"filename":"/data/levels/old main 8/room12,20.txt","start":1516280,"end":1517164},{"filename":"/data/levels/old main 8/room12,21.txt","start":1517164,"end":1517719},{"filename":"/data/levels/old main 8/room12,7.txt","start":1517719,"end":1518108},{"filename":"/data/levels/old main 8/room13,14.txt","start":1518108,"end":1519086},{"filename":"/data/levels/old main 8/room13,15.txt","start":1519086,"end":1519723},{"filename":"/data/levels/old main 8/room13,16.txt","start":1519723,"end":1520260},{"filename":"/data/levels/old main 8/room13,17.txt","start":1520260,"end":1520859},{"filename":"/data/levels/old main 8/room13,18.txt","start":1520859,"end":1521472},{"filename":"/data/levels/old main 8/room13,19.txt","start":1521472,"end":1522150},{"filename":"/data/levels/old main 8/room13,20.txt","start":1522150,"end":1522790},{"filename":"/data/levels/old main 8/room13,21.txt","start":1522790,"end":1523503},{"filename":"/data/levels/old main 8/room13,3.txt","start":1523503,"end":1524024},{"filename":"/data/levels/old main 8/room13,7.txt","start":1524024,"end":1524184},{"filename":"/data/levels/old main 8/room13,8.txt","start":1524184,"end":1526062},{"filename":"/data/levels/old main 8/room13,9.txt","start":1526062,"end":1526583},{"filename":"/data/levels/old main 8/room14,10.txt","start":1526583,"end":1527889},{"filename":"/data/levels/old main 8/room14,11.txt","start":1527889,"end":1528881},{"filename":"/data/levels/old main 8/room14,14.txt","start":1528881,"end":1529529},{"filename":"/data/levels/old main 8/room14,15.txt","start":1529529,"end":1530282},{"filename":"/data/levels/old main 8/room14,16.txt","start":1530282,"end":1530937},{"filename":"/data/levels/old main 8/room14,17.txt","start":1530937,"end":1531616},{"filename":"/data/levels/old main 8/room14,18.txt","start":1531616,"end":1532431},{"filename":"/data/levels/old main 8/room14,19.txt","start":1532431,"end":1533257},{"filename":"/data/levels/old main 8/room14,20.txt","start":1533257,"end":1534012},{"filename":"/data/levels/old main 8/room14,8.txt","start":1534012,"end":1535765},{"filename":"/data/levels/old main 8/room14,9.txt","start":1535765,"end":1536680},{"filename":"/data/levels/old main 8/room15,10.txt","start":1536680,"end":1537010},{"filename":"/data/levels/old main 8/room15,11.txt","start":1537010,"end":1537980},{"filename":"/data/levels/old main 8/room15,14.txt","start":1537980,"end":1538563},{"filename":"/data/levels/old main 8/room15,19.txt","start":1538563,"end":1539181},{"filename":"/data/levels/old main 8/room15,20.txt","start":1539181,"end":1539810},{"filename":"/data/levels/old main 8/room15,8.txt","start":1539810,"end":1540944},{"filename":"/data/levels/old main 8/room15,9.txt","start":1540944,"end":1542063},{"filename":"/data/levels/old main 8/room16,20.txt","start":1542063,"end":1542905},{"filename":"/data/levels/old main 8/room17,20.txt","start":1542905,"end":1543569},{"filename":"/data/levels/old main 8/room18,20.txt","start":1543569,"end":1544124},{"filename":"/data/levels/old main 8/room3,20.txt","start":1544124,"end":1544918},{"filename":"/data/levels/old main 8/room4,16.txt","start":1544918,"end":1545439},{"filename":"/data/levels/old main 8/room4,19.txt","start":1545439,"end":1546059},{"filename":"/data/levels/old main 8/room4,21.txt","start":1546059,"end":1546750},{"filename":"/data/levels/old main 8/room4,4.txt","start":1546750,"end":1547745},{"filename":"/data/levels/old main 8/room5,14.txt","start":1547745,"end":1548329},{"filename":"/data/levels/old main 8/room5,15.txt","start":1548329,"end":1549086},{"filename":"/data/levels/old main 8/room5,16.txt","start":1549086,"end":1549759},{"filename":"/data/levels/old main 8/room5,20.txt","start":1549759,"end":1550764},{"filename":"/data/levels/old main 8/room6,13.txt","start":1550764,"end":1551651},{"filename":"/data/levels/old main 8/room6,14.txt","start":1551651,"end":1552223},{"filename":"/data/levels/old main 8/room6,15.txt","start":1552223,"end":1552891},{"filename":"/data/levels/old main 8/room6,16.txt","start":1552891,"end":1553536},{"filename":"/data/levels/old main 8/room6,17.txt","start":1553536,"end":1554243},{"filename":"/data/levels/old main 8/room6,18.txt","start":1554243,"end":1555251},{"filename":"/data/levels/old main 8/room6,19.txt","start":1555251,"end":1555846},{"filename":"/data/levels/old main 8/room6,20.txt","start":1555846,"end":1556479},{"filename":"/data/levels/old main 8/room6,21.txt","start":1556479,"end":1557064},{"filename":"/data/levels/old main 8/room7,11.txt","start":1557064,"end":1557585},{"filename":"/data/levels/old main 8/room7,12.txt","start":1557585,"end":1558248},{"filename":"/data/levels/old main 8/room7,13.txt","start":1558248,"end":1558971},{"filename":"/data/levels/old main 8/room7,14.txt","start":1558971,"end":1559676},{"filename":"/data/levels/old main 8/room7,15.txt","start":1559676,"end":1560390},{"filename":"/data/levels/old main 8/room7,16.txt","start":1560390,"end":1561293},{"filename":"/data/levels/old main 8/room7,17.txt","start":1561293,"end":1561883},{"filename":"/data/levels/old main 8/room7,18.txt","start":1561883,"end":1562528},{"filename":"/data/levels/old main 8/room7,19.txt","start":1562528,"end":1563219},{"filename":"/data/levels/old main 8/room7,20.txt","start":1563219,"end":1563824},{"filename":"/data/levels/old main 8/room7,21.txt","start":1563824,"end":1564521},{"filename":"/data/levels/old main 8/room7,8.txt","start":1564521,"end":1565042},{"filename":"/data/levels/old main 8/room8,11.txt","start":1565042,"end":1565563},{"filename":"/data/levels/old main 8/room8,12.txt","start":1565563,"end":1566534},{"filename":"/data/levels/old main 8/room8,13.txt","start":1566534,"end":1567089},{"filename":"/data/levels/old main 8/room8,14.txt","start":1567089,"end":1567679},{"filename":"/data/levels/old main 8/room8,15.txt","start":1567679,"end":1568224},{"filename":"/data/levels/old main 8/room8,16.txt","start":1568224,"end":1569139},{"filename":"/data/levels/old main 8/room8,17.txt","start":1569139,"end":1569929},{"filename":"/data/levels/old main 8/room8,18.txt","start":1569929,"end":1570548},{"filename":"/data/levels/old main 8/room8,19.txt","start":1570548,"end":1571483},{"filename":"/data/levels/old main 8/room8,20.txt","start":1571483,"end":1572270},{"filename":"/data/levels/old main 8/room8,21.txt","start":1572270,"end":1572808},{"filename":"/data/levels/old main 8/room9,12.txt","start":1572808,"end":1573337},{"filename":"/data/levels/old main 8/room9,14.txt","start":1573337,"end":1574051},{"filename":"/data/levels/old main 8/room9,15.txt","start":1574051,"end":1574612},{"filename":"/data/levels/old main 8/room9,16.txt","start":1574612,"end":1575546},{"filename":"/data/levels/old main 8/room9,17.txt","start":1575546,"end":1576207},{"filename":"/data/levels/old main 8/room9,18.txt","start":1576207,"end":1577016},{"filename":"/data/levels/old main 8/room9,19.txt","start":1577016,"end":1577723},{"filename":"/data/levels/old main 8/room9,20.txt","start":1577723,"end":1578389},{"filename":"/data/levels/old main 9/editorDefault.txt","start":1578389,"end":1580446},{"filename":"/data/levels/old main 9/mapData.txt","start":1580446,"end":1581460},{"filename":"/data/levels/old main 9/room10,10.txt","start":1581460,"end":1582216},{"filename":"/data/levels/old main 9/room10,11.txt","start":1582216,"end":1582974},{"filename":"/data/levels/old main 9/room10,12.txt","start":1582974,"end":1583542},{"filename":"/data/levels/old main 9/room10,13.txt","start":1583542,"end":1584157},{"filename":"/data/levels/old main 9/room10,14.txt","start":1584157,"end":1584856},{"filename":"/data/levels/old main 9/room10,15.txt","start":1584856,"end":1585495},{"filename":"/data/levels/old main 9/room10,16.txt","start":1585495,"end":1586152},{"filename":"/data/levels/old main 9/room10,17.txt","start":1586152,"end":1586911},{"filename":"/data/levels/old main 9/room10,18.txt","start":1586911,"end":1587571},{"filename":"/data/levels/old main 9/room10,19.txt","start":1587571,"end":1588562},{"filename":"/data/levels/old main 9/room10,20.txt","start":1588562,"end":1589543},{"filename":"/data/levels/old main 9/room10,21.txt","start":1589543,"end":1590877},{"filename":"/data/levels/old main 9/room10,7.txt","start":1590877,"end":1591066},{"filename":"/data/levels/old main 9/room11,10.txt","start":1591066,"end":1591651},{"filename":"/data/levels/old main 9/room11,11.txt","start":1591651,"end":1592188},{"filename":"/data/levels/old main 9/room11,12.txt","start":1592188,"end":1592740},{"filename":"/data/levels/old main 9/room11,13.txt","start":1592740,"end":1593265},{"filename":"/data/levels/old main 9/room11,14.txt","start":1593265,"end":1593925},{"filename":"/data/levels/old main 9/room11,15.txt","start":1593925,"end":1594545},{"filename":"/data/levels/old main 9/room11,16.txt","start":1594545,"end":1595503},{"filename":"/data/levels/old main 9/room11,17.txt","start":1595503,"end":1596256},{"filename":"/data/levels/old main 9/room11,18.txt","start":1596256,"end":1597072},{"filename":"/data/levels/old main 9/room11,19.txt","start":1597072,"end":1597758},{"filename":"/data/levels/old main 9/room11,20.txt","start":1597758,"end":1598616},{"filename":"/data/levels/old main 9/room11,21.txt","start":1598616,"end":1599402},{"filename":"/data/levels/old main 9/room11,7.txt","start":1599402,"end":1599601},{"filename":"/data/levels/old main 9/room12,10.txt","start":1599601,"end":1600130},{"filename":"/data/levels/old main 9/room12,11.txt","start":1600130,"end":1600685},{"filename":"/data/levels/old main 9/room12,13.txt","start":1600685,"end":1601276},{"filename":"/data/levels/old main 9/room12,14.txt","start":1601276,"end":1601907},{"filename":"/data/levels/old main 9/room12,15.txt","start":1601907,"end":1602844},{"filename":"/data/levels/old main 9/room12,16.txt","start":1602844,"end":1603726},{"filename":"/data/levels/old main 9/room12,17.txt","start":1603726,"end":1604427},{"filename":"/data/levels/old main 9/room12,18.txt","start":1604427,"end":1605762},{"filename":"/data/levels/old main 9/room12,19.txt","start":1605762,"end":1606399},{"filename":"/data/levels/old main 9/room12,20.txt","start":1606399,"end":1607900},{"filename":"/data/levels/old main 9/room12,21.txt","start":1607900,"end":1608455},{"filename":"/data/levels/old main 9/room12,7.txt","start":1608455,"end":1608843},{"filename":"/data/levels/old main 9/room12,9.txt","start":1608843,"end":1609368},{"filename":"/data/levels/old main 9/room13,10.txt","start":1609368,"end":1609905},{"filename":"/data/levels/old main 9/room13,11.txt","start":1609905,"end":1610434},{"filename":"/data/levels/old main 9/room13,14.txt","start":1610434,"end":1611412},{"filename":"/data/levels/old main 9/room13,15.txt","start":1611412,"end":1612049},{"filename":"/data/levels/old main 9/room13,16.txt","start":1612049,"end":1612586},{"filename":"/data/levels/old main 9/room13,17.txt","start":1612586,"end":1613185},{"filename":"/data/levels/old main 9/room13,18.txt","start":1613185,"end":1613798},{"filename":"/data/levels/old main 9/room13,19.txt","start":1613798,"end":1614476},{"filename":"/data/levels/old main 9/room13,20.txt","start":1614476,"end":1615116},{"filename":"/data/levels/old main 9/room13,21.txt","start":1615116,"end":1615740},{"filename":"/data/levels/old main 9/room13,3.txt","start":1615740,"end":1616295},{"filename":"/data/levels/old main 9/room13,4.txt","start":1616295,"end":1616869},{"filename":"/data/levels/old main 9/room13,7.txt","start":1616869,"end":1617028},{"filename":"/data/levels/old main 9/room13,8.txt","start":1617028,"end":1618634},{"filename":"/data/levels/old main 9/room13,9.txt","start":1618634,"end":1619189},{"filename":"/data/levels/old main 9/room14,10.txt","start":1619189,"end":1619744},{"filename":"/data/levels/old main 9/room14,11.txt","start":1619744,"end":1620299},{"filename":"/data/levels/old main 9/room14,14.txt","start":1620299,"end":1620947},{"filename":"/data/levels/old main 9/room14,15.txt","start":1620947,"end":1621700},{"filename":"/data/levels/old main 9/room14,16.txt","start":1621700,"end":1622355},{"filename":"/data/levels/old main 9/room14,17.txt","start":1622355,"end":1623034},{"filename":"/data/levels/old main 9/room14,18.txt","start":1623034,"end":1623849},{"filename":"/data/levels/old main 9/room14,19.txt","start":1623849,"end":1624675},{"filename":"/data/levels/old main 9/room14,20.txt","start":1624675,"end":1625518},{"filename":"/data/levels/old main 9/room14,8.txt","start":1625518,"end":1627270},{"filename":"/data/levels/old main 9/room14,9.txt","start":1627270,"end":1628185},{"filename":"/data/levels/old main 9/room15,10.txt","start":1628185,"end":1628516},{"filename":"/data/levels/old main 9/room15,11.txt","start":1628516,"end":1629492},{"filename":"/data/levels/old main 9/room15,14.txt","start":1629492,"end":1630075},{"filename":"/data/levels/old main 9/room15,19.txt","start":1630075,"end":1630693},{"filename":"/data/levels/old main 9/room15,20.txt","start":1630693,"end":1631397},{"filename":"/data/levels/old main 9/room15,8.txt","start":1631397,"end":1632531},{"filename":"/data/levels/old main 9/room15,9.txt","start":1632531,"end":1633740},{"filename":"/data/levels/old main 9/room16,10.txt","start":1633740,"end":1634565},{"filename":"/data/levels/old main 9/room16,11.txt","start":1634565,"end":1635522},{"filename":"/data/levels/old main 9/room16,20.txt","start":1635522,"end":1636404},{"filename":"/data/levels/old main 9/room17,20.txt","start":1636404,"end":1637143},{"filename":"/data/levels/old main 9/room18,20.txt","start":1637143,"end":1637728},{"filename":"/data/levels/old main 9/room3,20.txt","start":1637728,"end":1638522},{"filename":"/data/levels/old main 9/room4,15.txt","start":1638522,"end":1639096},{"filename":"/data/levels/old main 9/room4,16.txt","start":1639096,"end":1639651},{"filename":"/data/levels/old main 9/room4,19.txt","start":1639651,"end":1640271},{"filename":"/data/levels/old main 9/room4,21.txt","start":1640271,"end":1640962},{"filename":"/data/levels/old main 9/room4,4.txt","start":1640962,"end":1641957},{"filename":"/data/levels/old main 9/room5,14.txt","start":1641957,"end":1642541},{"filename":"/data/levels/old main 9/room5,15.txt","start":1642541,"end":1643298},{"filename":"/data/levels/old main 9/room5,16.txt","start":1643298,"end":1643971},{"filename":"/data/levels/old main 9/room5,20.txt","start":1643971,"end":1644976},{"filename":"/data/levels/old main 9/room6,13.txt","start":1644976,"end":1645863},{"filename":"/data/levels/old main 9/room6,14.txt","start":1645863,"end":1646435},{"filename":"/data/levels/old main 9/room6,15.txt","start":1646435,"end":1647103},{"filename":"/data/levels/old main 9/room6,16.txt","start":1647103,"end":1647798},{"filename":"/data/levels/old main 9/room6,17.txt","start":1647798,"end":1648915},{"filename":"/data/levels/old main 9/room6,18.txt","start":1648915,"end":1649923},{"filename":"/data/levels/old main 9/room6,19.txt","start":1649923,"end":1650565},{"filename":"/data/levels/old main 9/room6,20.txt","start":1650565,"end":1651198},{"filename":"/data/levels/old main 9/room6,21.txt","start":1651198,"end":1651783},{"filename":"/data/levels/old main 9/room7,10.txt","start":1651783,"end":1652328},{"filename":"/data/levels/old main 9/room7,11.txt","start":1652328,"end":1652885},{"filename":"/data/levels/old main 9/room7,12.txt","start":1652885,"end":1653548},{"filename":"/data/levels/old main 9/room7,13.txt","start":1653548,"end":1654271},{"filename":"/data/levels/old main 9/room7,14.txt","start":1654271,"end":1654976},{"filename":"/data/levels/old main 9/room7,15.txt","start":1654976,"end":1655690},{"filename":"/data/levels/old main 9/room7,16.txt","start":1655690,"end":1656545},{"filename":"/data/levels/old main 9/room7,17.txt","start":1656545,"end":1657135},{"filename":"/data/levels/old main 9/room7,18.txt","start":1657135,"end":1657780},{"filename":"/data/levels/old main 9/room7,19.txt","start":1657780,"end":1658471},{"filename":"/data/levels/old main 9/room7,20.txt","start":1658471,"end":1659076},{"filename":"/data/levels/old main 9/room7,21.txt","start":1659076,"end":1659773},{"filename":"/data/levels/old main 9/room7,8.txt","start":1659773,"end":1660328},{"filename":"/data/levels/old main 9/room7,9.txt","start":1660328,"end":1660861},{"filename":"/data/levels/old main 9/room8,10.txt","start":1660861,"end":1661390},{"filename":"/data/levels/old main 9/room8,11.txt","start":1661390,"end":1661945},{"filename":"/data/levels/old main 9/room8,12.txt","start":1661945,"end":1662908},{"filename":"/data/levels/old main 9/room8,13.txt","start":1662908,"end":1663495},{"filename":"/data/levels/old main 9/room8,14.txt","start":1663495,"end":1664085},{"filename":"/data/levels/old main 9/room8,15.txt","start":1664085,"end":1664630},{"filename":"/data/levels/old main 9/room8,16.txt","start":1664630,"end":1665545},{"filename":"/data/levels/old main 9/room8,17.txt","start":1665545,"end":1666335},{"filename":"/data/levels/old main 9/room8,18.txt","start":1666335,"end":1667012},{"filename":"/data/levels/old main 9/room8,19.txt","start":1667012,"end":1667947},{"filename":"/data/levels/old main 9/room8,20.txt","start":1667947,"end":1668734},{"filename":"/data/levels/old main 9/room8,21.txt","start":1668734,"end":1669272},{"filename":"/data/levels/old main 9/room9,10.txt","start":1669272,"end":1669862},{"filename":"/data/levels/old main 9/room9,11.txt","start":1669862,"end":1670448},{"filename":"/data/levels/old main 9/room9,12.txt","start":1670448,"end":1671026},{"filename":"/data/levels/old main 9/room9,13.txt","start":1671026,"end":1671581},{"filename":"/data/levels/old main 9/room9,14.txt","start":1671581,"end":1672295},{"filename":"/data/levels/old main 9/room9,15.txt","start":1672295,"end":1672856},{"filename":"/data/levels/old main 9/room9,16.txt","start":1672856,"end":1673790},{"filename":"/data/levels/old main 9/room9,17.txt","start":1673790,"end":1674526},{"filename":"/data/levels/old main 9/room9,18.txt","start":1674526,"end":1675335},{"filename":"/data/levels/old main 9/room9,19.txt","start":1675335,"end":1676046},{"filename":"/data/levels/old main 9/room9,20.txt","start":1676046,"end":1677239},{"filename":"/data/levels/redesigns/mapData.txt","start":1677239,"end":1677897},{"filename":"/data/levels/redesigns/room10,17.txt","start":1677897,"end":1678418},{"filename":"/data/levels/redesigns/room11,16.txt","start":1678418,"end":1678939},{"filename":"/data/levels/redesigns/room11,17.txt","start":1678939,"end":1679729},{"filename":"/data/levels/redesigns/room13,14.txt","start":1679729,"end":1680774},{"filename":"/data/levels/redesigns/room14,14.txt","start":1680774,"end":1681295},{"filename":"/data/levels/redesigns/room16,20.txt","start":1681295,"end":1682258},{"filename":"/data/levels/redesigns/room17,20.txt","start":1682258,"end":1683217},{"filename":"/data/levels/redesigns/room18,20.txt","start":1683217,"end":1684290},{"filename":"/data/levels/redesigns/room19,20.txt","start":1684290,"end":1685249},{"filename":"/data/levels/redesigns/room4,20.txt","start":1685249,"end":1686071},{"filename":"/data/levels/redesigns/room7,12.txt","start":1686071,"end":1686692},{"filename":"/data/levels/redesigns/room7,13.txt","start":1686692,"end":1687409},{"filename":"/data/levels/redesigns/room7,14.txt","start":1687409,"end":1688131},{"filename":"/data/levels/resize/mapData.txt","start":1688131,"end":1688570},{"filename":"/data/levels/resize/room10,10.txt","start":1688570,"end":1688712},{"filename":"/data/levels/resize/room10,9.txt","start":1688712,"end":1688760},{"filename":"/data/levels/resize/room11,10.txt","start":1688760,"end":1688959},{"filename":"/data/levels/resize/room12,10.txt","start":1688959,"end":1689348},{"filename":"/data/levels/resize/room13,10.txt","start":1689348,"end":1691052},{"filename":"/data/levels/resize/room13,11.txt","start":1691052,"end":1692601},{"filename":"/data/levels/resize/room14,10.txt","start":1692601,"end":1693184},{"filename":"/data/levels/resize/room14,11.txt","start":1693184,"end":1694041},{"filename":"/data/levels/resize/room14,12.txt","start":1694041,"end":1694934},{"filename":"/data/levels/resize/room15,10.txt","start":1694934,"end":1696626},{"filename":"/data/levels/resize/room16,10.txt","start":1696626,"end":1696722},{"filename":"/data/levels/statues/mapData.txt","start":1696722,"end":1697399},{"filename":"/data/levels/statues/room10,10.txt","start":1697399,"end":1698091},{"filename":"/data/levels/statues/room10,11.txt","start":1698091,"end":1698651},{"filename":"/data/levels/statues/room10,13.txt","start":1698651,"end":1699180},{"filename":"/data/levels/statues/room10,14.txt","start":1699180,"end":1699785},{"filename":"/data/levels/statues/room10,15.txt","start":1699785,"end":1700307},{"filename":"/data/levels/statues/room10,9.txt","start":1700307,"end":1700834},{"filename":"/data/levels/statues/room11,10.txt","start":1700834,"end":1701447},{"filename":"/data/levels/statues/room11,11.txt","start":1701447,"end":1701968},{"filename":"/data/levels/statues/room11,12.txt","start":1701968,"end":1702495},{"filename":"/data/levels/statues/room11,13.txt","start":1702495,"end":1703022},{"filename":"/data/levels/statues/room11,14.txt","start":1703022,"end":1703582},{"filename":"/data/levels/statues/room11,15.txt","start":1703582,"end":1704119},{"filename":"/data/levels/statues/room11,16.txt","start":1704119,"end":1704643},{"filename":"/data/levels/statues/room12,10.txt","start":1704643,"end":1705172},{"filename":"/data/levels/statues/room12,11.txt","start":1705172,"end":1705693},{"filename":"/data/levels/statues/room12,12.txt","start":1705693,"end":1706246},{"filename":"/data/levels/statues/room12,14.txt","start":1706246,"end":1706776},{"filename":"/data/levels/statues/room13,10.txt","start":1706776,"end":1707307},{"filename":"/data/levels/statues/room13,11.txt","start":1707307,"end":1707831},{"filename":"/data/levels/statues/room13,12.txt","start":1707831,"end":1708372},{"filename":"/data/levels/statues/room13,13.txt","start":1708372,"end":1708902},{"filename":"/data/levels/statues/room14,10.txt","start":1708902,"end":1709451},{"filename":"/data/levels/statues/room14,11.txt","start":1709451,"end":1709984},{"filename":"/data/levels/statues/room14,12.txt","start":1709984,"end":1710519},{"filename":"/data/levels/statues/room14,13.txt","start":1710519,"end":1711076},{"filename":"/data/levels/statues/room14,14.txt","start":1711076,"end":1711612},{"filename":"/data/levels/statues/room14,9.txt","start":1711612,"end":1712143},{"filename":"/data/levels/statues/room15,10.txt","start":1712143,"end":1712898},{"filename":"/data/levels/statues/room15,11.txt","start":1712898,"end":1713427},{"filename":"/data/levels/statues/room15,15.txt","start":1713427,"end":1713997},{"filename":"/data/levels/statues/room16,10.txt","start":1713997,"end":1714648},{"filename":"/data/levels/statues/room16,11.txt","start":1714648,"end":1715205},{"filename":"/data/levels/statues/room16,12.txt","start":1715205,"end":1715755},{"filename":"/data/levels/statues/room17,10.txt","start":1715755,"end":1716307},{"filename":"/data/levels/statues/room8,10.txt","start":1716307,"end":1716825},{"filename":"/data/levels/statues/room8,9.txt","start":1716825,"end":1717374},{"filename":"/data/levels/statues/room9,10.txt","start":1717374,"end":1717928},{"filename":"/data/levels/statues/room9,11.txt","start":1717928,"end":1718507},{"filename":"/data/levels/statues/room9,12.txt","start":1718507,"end":1719070},{"filename":"/data/levels/statues/room9,13.txt","start":1719070,"end":1719618},{"filename":"/data/levels/statues/room9,14.txt","start":1719618,"end":1720221},{"filename":"/data/levels/statues/room9,15.txt","start":1720221,"end":1720746},{"filename":"/data/levels/statues/room9,9.txt","start":1720746,"end":1721283},{"filename":"/data/levels/statues 2/mapData.txt","start":1721283,"end":1721973},{"filename":"/data/levels/statues 2/room10,10.txt","start":1721973,"end":1722498},{"filename":"/data/levels/statues 2/room11,10.txt","start":1722498,"end":1723169},{"filename":"/data/levels/statues 2/room11,9.txt","start":1723169,"end":1723867},{"filename":"/data/levels/statues 2/room14,16.txt","start":1723867,"end":1724522},{"filename":"/data/levels/statues 2/room14,19.txt","start":1724522,"end":1725274},{"filename":"/data/levels/statues 2/room14,6.txt","start":1725274,"end":1725967},{"filename":"/data/levels/statues 2/room15,10.txt","start":1725967,"end":1726815},{"filename":"/data/levels/statues 2/room15,6.txt","start":1726815,"end":1727464},{"filename":"/data/levels/statues 2/room15,7.txt","start":1727464,"end":1728006},{"filename":"/data/levels/statues 2/room15,8.txt","start":1728006,"end":1728849},{"filename":"/data/levels/statues 2/room15,9.txt","start":1728849,"end":1729702},{"filename":"/data/levels/statues 2/room6,4.txt","start":1729702,"end":1730405},{"filename":"/data/levels/statues 2/room6,5.txt","start":1730405,"end":1731287},{"filename":"/data/levels/statues 2/room6,6.txt","start":1731287,"end":1732108},{"filename":"/data/levels/statues 2/room6,7.txt","start":1732108,"end":1732925},{"filename":"/data/levels/statues 2/room7,4.txt","start":1732925,"end":1733446},{"filename":"/data/levels/statues 2/room7,5.txt","start":1733446,"end":1733967},{"filename":"/data/levels/statues 2/room7,6.txt","start":1733967,"end":1734488},{"filename":"/data/levels/statues 2/room7,7.txt","start":1734488,"end":1735009},{"filename":"/data/levels/testing/mapData.txt","start":1735009,"end":1735402},{"filename":"/data/levels/testing/room10,10.txt","start":1735402,"end":1735985},{"filename":"/data/levels/testing/room10,11.txt","start":1735985,"end":1736558},{"filename":"/data/levels/testing/room10,12.txt","start":1736558,"end":1737082},{"filename":"/data/levels/testing/room10,13.txt","start":1737082,"end":1737143},{"filename":"/data/levels/testing/room10,9.txt","start":1737143,"end":1737664},{"filename":"/data/levels/testing/room11,10.txt","start":1737664,"end":1738585},{"filename":"/data/levels/testing/room11,11.txt","start":1738585,"end":1739154},{"filename":"/data/levels/testing/room11,12.txt","start":1739154,"end":1739679},{"filename":"/data/levels/testing/room11,9.txt","start":1739679,"end":1740234},{"filename":"/data/levels/testing/room12,10.txt","start":1740234,"end":1741069},{"filename":"/data/levels/testing/room12,11.txt","start":1741069,"end":1741163},{"filename":"/data/levels/testing/room12,12.txt","start":1741163,"end":1741712},{"filename":"/data/levels/testing/room12,9.txt","start":1741712,"end":1742241},{"filename":"/data/levels/testing/room13,10.txt","start":1742241,"end":1742769},{"filename":"/data/levels/testing/room13,11.txt","start":1742769,"end":1744014},{"filename":"/data/levels/testing/room14,11.txt","start":1744014,"end":1744823},{"filename":"/data/levels/testing/room7,11.txt","start":1744823,"end":1746076},{"filename":"/data/levels/testing/room8,10.txt","start":1746076,"end":1746618},{"filename":"/data/levels/testing/room8,11.txt","start":1746618,"end":1747178},{"filename":"/data/levels/testing/room8,9.txt","start":1747178,"end":1747888},{"filename":"/data/levels/testing/room9,10.txt","start":1747888,"end":1748409},{"filename":"/data/levels/testing/room9,11.txt","start":1748409,"end":1748930},{"filename":"/data/levels/testing/room9,9.txt","start":1748930,"end":1750987},{"filename":"/images/0.png","start":1750987,"end":1753403},{"filename":"/images/1.png","start":1753403,"end":1754826},{"filename":"/images/2.png","start":1754826,"end":1757005},{"filename":"/images/3.png","start":1757005,"end":1759297},{"filename":"/images/4.png","start":1759297,"end":1760863},{"filename":"/images/5.png","start":1760863,"end":1762957},{"filename":"/images/6.png","start":1762957,"end":1765490},{"filename":"/images/7.png","start":1765490,"end":1766926},{"filename":"/images/8.png","start":1766926,"end":1769655},{"filename":"/images/9.png","start":1769655,"end":1772116},{"filename":"/images/arrow.png","start":1772116,"end":1772771},{"filename":"/images/art.png","start":1772771,"end":1774140},{"filename":"/images/base.png","start":1774140,"end":1775070},{"filename":"/images/childIcon.png","start":1775070,"end":1780575},{"filename":"/images/childSprite.png","start":1780575,"end":1782790},{"filename":"/images/continue.png","start":1782790,"end":1786834},{"filename":"/images/editorCursor.png","start":1786834,"end":1787396},{"filename":"/images/exhaustPort.png","start":1787396,"end":1789710},{"filename":"/images/goatSleeping.png","start":1789710,"end":1798282},{"filename":"/images/kitten.png","start":1798282,"end":1802210},{"filename":"/images/laikaCry.png","start":1802210,"end":1808998},{"filename":"/images/laikaIcon.png","start":1808998,"end":1814777},{"filename":"/images/lock.png","start":1814777,"end":1815354},{"filename":"/images/mapBase.png","start":1815354,"end":1815910},{"filename":"/images/mapBg.png","start":1815910,"end":1816071},{"filename":"/images/mapKitten.png","start":1816071,"end":1816613},{"filename":"/images/mapNode.png","start":1816613,"end":1816837},{"filename":"/images/mapPlayer.png","start":1816837,"end":1818090},{"filename":"/images/mapSelect.png","start":1818090,"end":1818407},{"filename":"/images/mapWall.png","start":1818407,"end":1818531},{"filename":"/images/move.png","start":1818531,"end":1823954},{"filename":"/images/moveToContinue.png","start":1823954,"end":1830361},{"filename":"/images/numberShadow.png","start":1830361,"end":1831413},{"filename":"/images/obj.png","start":1831413,"end":1833973},{"filename":"/images/outroPlanet.png","start":1833973,"end":1840021},{"filename":"/images/pause.png","start":1840021,"end":1846609},{"filename":"/images/prompt.png","start":1846609,"end":1852884},{"filename":"/images/shipEnd.png","start":1852884,"end":1857863},{"filename":"/images/shipInterior.png","start":1857863,"end":1973596},{"filename":"/images/sign.png","start":1973596,"end":1975143},{"filename":"/images/sleeping.png","start":1975143,"end":2083053},{"filename":"/images/starReset.png","start":2083053,"end":2085443},{"filename":"/images/stars.png","start":2085443,"end":2119108},{"filename":"/images/teleporter.png","start":2119108,"end":2119834},{"filename":"/images/teleporterLightning.png","start":2119834,"end":2120420},{"filename":"/images/undo.png","start":2120420,"end":2124263},{"filename":"/images/viewfinder.png","start":2124263,"end":2126400},{"filename":"/images/wolfIcon.png","start":2126400,"end":2132033},{"filename":"/images/wolfSprite.png","start":2132033,"end":2134317},{"filename":"/images/wormhole.png","start":2134317,"end":2136979},{"filename":"/images/wormhole.png~","start":2136979,"end":2144427},{"filename":"/images/wormholeLocked.png","start":2144427,"end":2147023},{"filename":"/images/cryptid/10.png","start":2147023,"end":2151698},{"filename":"/images/cryptid/11.png","start":2151698,"end":2157911},{"filename":"/images/cryptid/12.png","start":2157911,"end":2163346},{"filename":"/images/cryptid/13.png","start":2163346,"end":2168253},{"filename":"/images/cryptid/14.png","start":2168253,"end":2175202},{"filename":"/images/cryptid/15.png","start":2175202,"end":2186453},{"filename":"/images/cryptid/16.png","start":2186453,"end":2190987},{"filename":"/images/cryptid/17.png","start":2190987,"end":2195391},{"filename":"/images/cryptid/2.png","start":2195391,"end":2203755},{"filename":"/images/cryptid/3.png","start":2203755,"end":2210144},{"filename":"/images/cryptid/4.png","start":2210144,"end":2214382},{"filename":"/images/cryptid/5.png","start":2214382,"end":2231071},{"filename":"/images/cryptid/6.png","start":2231071,"end":2241893},{"filename":"/images/cryptid/7.png","start":2241893,"end":2252509},{"filename":"/images/cryptid/8.png","start":2252509,"end":2260051},{"filename":"/images/cryptid/9.png","start":2260051,"end":2268200},{"filename":"/images/cryptid/anime.png","start":2268200,"end":2279295},{"filename":"/images/cryptid/bottle.png","start":2279295,"end":2284740},{"filename":"/images/cryptid/fish.png","start":2284740,"end":2287260},{"filename":"/images/cryptid/goat.png","start":2287260,"end":2291156},{"filename":"/images/cryptid/lochness.png","start":2291156,"end":2297403},{"filename":"/images/cryptid/mouse.png","start":2297403,"end":2303118},{"filename":"/images/cryptid/mrpuzzles.png","start":2303118,"end":2309738},{"filename":"/images/cryptid/pipes.png","start":2309738,"end":2311639},{"filename":"/images/cryptid/sphere.png","start":2311639,"end":2323382},{"filename":"/images/cryptid/wolf.png","start":2323382,"end":2330480},{"filename":"/images/cryptid/you.png","start":2330480,"end":2335685},{"filename":"/images/cryptid/zach.png","start":2335685,"end":2340972},{"filename":"/images/font/0.png","start":2340972,"end":2341877},{"filename":"/images/font/1.png","start":2341877,"end":2342988},{"filename":"/images/font/2.png","start":2342988,"end":2344101},{"filename":"/images/font/3.png","start":2344101,"end":2344899},{"filename":"/images/font/4.png","start":2344899,"end":2345846},{"filename":"/images/font/5.png","start":2345846,"end":2346983},{"filename":"/images/font/6.png","start":2346983,"end":2348351},{"filename":"/images/font/7.png","start":2348351,"end":2349377},{"filename":"/images/font/8.png","start":2349377,"end":2350216},{"filename":"/images/font/9.png","start":2350216,"end":2351452},{"filename":"/images/font/a.png","start":2351452,"end":2352749},{"filename":"/images/font/amperstand.png","start":2352749,"end":2354156},{"filename":"/images/font/apostrophe.png","start":2354156,"end":2354593},{"filename":"/images/font/atsign.png","start":2354593,"end":2356502},{"filename":"/images/font/b.png","start":2356502,"end":2357674},{"filename":"/images/font/c.png","start":2357674,"end":2358556},{"filename":"/images/font/colon.png","start":2358556,"end":2359023},{"filename":"/images/font/comma.png","start":2359023,"end":2359521},{"filename":"/images/font/d.png","start":2359521,"end":2360688},{"filename":"/images/font/dash.png","start":2360688,"end":2361173},{"filename":"/images/font/e.png","start":2361173,"end":2361937},{"filename":"/images/font/equals.png","start":2361937,"end":2362401},{"filename":"/images/font/exclamation.png","start":2362401,"end":2363063},{"filename":"/images/font/f.png","start":2363063,"end":2363821},{"filename":"/images/font/g.png","start":2363821,"end":2365073},{"filename":"/images/font/gthan.png","start":2365073,"end":2365922},{"filename":"/images/font/h.png","start":2365922,"end":2366579},{"filename":"/images/font/i.png","start":2366579,"end":2367299},{"filename":"/images/font/j.png","start":2367299,"end":2368206},{"filename":"/images/font/k.png","start":2368206,"end":2369375},{"filename":"/images/font/l.png","start":2369375,"end":2370064},{"filename":"/images/font/lbracket.png","start":2370064,"end":2370993},{"filename":"/images/font/lparen.png","start":2370993,"end":2371594},{"filename":"/images/font/lthan.png","start":2371594,"end":2372448},{"filename":"/images/font/m.png","start":2372448,"end":2373975},{"filename":"/images/font/n.png","start":2373975,"end":2375239},{"filename":"/images/font/o.png","start":2375239,"end":2376281},{"filename":"/images/font/p.png","start":2376281,"end":2377168},{"filename":"/images/font/percent.png","start":2377168,"end":2378337},{"filename":"/images/font/period.png","start":2378337,"end":2378771},{"filename":"/images/font/q.png","start":2378771,"end":2380008},{"filename":"/images/font/question.png","start":2380008,"end":2380953},{"filename":"/images/font/quotes.png","start":2380953,"end":2381467},{"filename":"/images/font/r.png","start":2381467,"end":2382930},{"filename":"/images/font/rbracket.png","start":2382930,"end":2383863},{"filename":"/images/font/rparen.png","start":2383863,"end":2384468},{"filename":"/images/font/s.png","start":2384468,"end":2385485},{"filename":"/images/font/semicolon.png","start":2385485,"end":2385998},{"filename":"/images/font/slash.png","start":2385998,"end":2386788},{"filename":"/images/font/star.png","start":2386788,"end":2387673},{"filename":"/images/font/t.png","start":2387673,"end":2388312},{"filename":"/images/font/u.png","start":2388312,"end":2389375},{"filename":"/images/font/underscore.png","start":2389375,"end":2389809},{"filename":"/images/font/v.png","start":2389809,"end":2390899},{"filename":"/images/font/w.png","start":2390899,"end":2392254},{"filename":"/images/font/x.png","start":2392254,"end":2393051},{"filename":"/images/font/y.png","start":2393051,"end":2394113},{"filename":"/images/font/z.png","start":2394113,"end":2395329},{"filename":"/images/font/_a.png","start":2395329,"end":2396479},{"filename":"/images/font/_b.png","start":2396479,"end":2397388},{"filename":"/images/font/_c.png","start":2397388,"end":2398150},{"filename":"/images/font/_d.png","start":2398150,"end":2399015},{"filename":"/images/font/_e.png","start":2399015,"end":2399888},{"filename":"/images/font/_f.png","start":2399888,"end":2400523},{"filename":"/images/font/_g.png","start":2400523,"end":2401619},{"filename":"/images/font/_h.png","start":2401619,"end":2402603},{"filename":"/images/font/_i.png","start":2402603,"end":2403079},{"filename":"/images/font/_j.png","start":2403079,"end":2403828},{"filename":"/images/font/_k.png","start":2403828,"end":2404781},{"filename":"/images/font/_l.png","start":2404781,"end":2405145},{"filename":"/images/font/_m.png","start":2405145,"end":2406441},{"filename":"/images/font/_n.png","start":2406441,"end":2407321},{"filename":"/images/font/_o.png","start":2407321,"end":2408270},{"filename":"/images/font/_p.png","start":2408270,"end":2409076},{"filename":"/images/font/_q.png","start":2409076,"end":2409850},{"filename":"/images/font/_r.png","start":2409850,"end":2410495},{"filename":"/images/font/_s.png","start":2410495,"end":2411428},{"filename":"/images/font/_t.png","start":2411428,"end":2412232},{"filename":"/images/font/_u.png","start":2412232,"end":2413136},{"filename":"/images/font/_v.png","start":2413136,"end":2413966},{"filename":"/images/font/_w.png","start":2413966,"end":2415076},{"filename":"/images/font/_x.png","start":2415076,"end":2415921},{"filename":"/images/font/_y.png","start":2415921,"end":2416816},{"filename":"/images/font/_z.png","start":2416816,"end":2417614},{"filename":"/images/gallery/1.png","start":2417614,"end":2971309},{"filename":"/images/gallery/10.png","start":2971309,"end":3015425},{"filename":"/images/gallery/11.png","start":3015425,"end":3069236},{"filename":"/images/gallery/12.png","start":3069236,"end":3113969},{"filename":"/images/gallery/13.png","start":3113969,"end":3148221},{"filename":"/images/gallery/14.png","start":3148221,"end":3204441},{"filename":"/images/gallery/15.png","start":3204441,"end":3227094},{"filename":"/images/gallery/16.png","start":3227094,"end":3271654},{"filename":"/images/gallery/17.png","start":3271654,"end":3320797},{"filename":"/images/gallery/2.png","start":3320797,"end":3827686},{"filename":"/images/gallery/3.png","start":3827686,"end":4352038},{"filename":"/images/gallery/4.png","start":4352038,"end":4704128},{"filename":"/images/gallery/5.png","start":4704128,"end":4728215},{"filename":"/images/gallery/6.png","start":4728215,"end":4772041},{"filename":"/images/gallery/7.png","start":4772041,"end":4823822},{"filename":"/images/gallery/8.png","start":4823822,"end":4862956},{"filename":"/images/gallery/9.png","start":4862956,"end":4911244},{"filename":"/images/tile/arrowHint.png","start":4911244,"end":4912204},{"filename":"/images/tile/barrier.png","start":4912204,"end":4912467},{"filename":"/images/tile/barrierErase.png","start":4912467,"end":4913491},{"filename":"/images/tile/block.png","start":4913491,"end":4913793},{"filename":"/images/tile/clonerArrow.png","start":4913793,"end":4914666},{"filename":"/images/tile/clonerH.png","start":4914666,"end":4915228},{"filename":"/images/tile/clonerV.png","start":4915228,"end":4915829},{"filename":"/images/tile/conveyorArrow.png","start":4915829,"end":4917580},{"filename":"/images/tile/conveyorD.png","start":4917580,"end":4918545},{"filename":"/images/tile/conveyorL.png","start":4918545,"end":4919511},{"filename":"/images/tile/conveyorR.png","start":4919511,"end":4920496},{"filename":"/images/tile/conveyorU.png","start":4920496,"end":4921482},{"filename":"/images/tile/editorKitten.png","start":4921482,"end":4925546},{"filename":"/images/tile/editorKitten.png~","start":4925546,"end":4929474},{"filename":"/images/tile/empty.png","start":4929474,"end":4929816},{"filename":"/images/tile/emptyAccent.png","start":4929816,"end":4930595},{"filename":"/images/tile/exitButton.png","start":4930595,"end":4931790},{"filename":"/images/tile/flag.png","start":4931790,"end":4932364},{"filename":"/images/tile/flagActive.png","start":4932364,"end":4932764},{"filename":"/images/tile/flagBroken.png","start":4932764,"end":4933686},{"filename":"/images/tile/flagPips1.png","start":4933686,"end":4933852},{"filename":"/images/tile/flagPips2.png","start":4933852,"end":4934038},{"filename":"/images/tile/flagPips3.png","start":4934038,"end":4934240},{"filename":"/images/tile/flagPips4.png","start":4934240,"end":4934426},{"filename":"/images/tile/flagPips5.png","start":4934426,"end":4934632},{"filename":"/images/tile/flagPips6.png","start":4934632,"end":4934821},{"filename":"/images/tile/flagPips7.png","start":4934821,"end":4935019},{"filename":"/images/tile/flagPips8.png","start":4935019,"end":4935213},{"filename":"/images/tile/flagPips9.png","start":4935213,"end":4935385},{"filename":"/images/tile/ice.png","start":4935385,"end":4936950},{"filename":"/images/tile/iceBg.png","start":4936950,"end":4939791},{"filename":"/images/tile/iceTransparent.png","start":4939791,"end":4942734},{"filename":"/images/tile/lighterBlock.png","start":4942734,"end":4943013},{"filename":"/images/tile/loadButton.png","start":4943013,"end":4944240},{"filename":"/images/tile/playButton.png","start":4944240,"end":4945238},{"filename":"/images/tile/player.png","start":4945238,"end":4947246},{"filename":"/images/tile/playerSpawner.png","start":4947246,"end":4948120},{"filename":"/images/tile/player_1.png","start":4948120,"end":4949740},{"filename":"/images/tile/player_dead.png","start":4949740,"end":4951193},{"filename":"/images/tile/player_eyes.png","start":4951193,"end":4958410},{"filename":"/images/tile/player_step.png","start":4958410,"end":4959909},{"filename":"/images/tile/reflection.png","start":4959909,"end":4961083},{"filename":"/images/tile/saveButton.png","start":4961083,"end":4962314},{"filename":"/images/tile/spike.png","start":4962314,"end":4963898},{"filename":"/images/tile/star.png","start":4963898,"end":4965042},{"filename":"/images/tile/statue.png","start":4965042,"end":4966246},{"filename":"/images/tile/stone.png","start":4966246,"end":4967203},{"filename":"/images/tile/switcherGizmo.png","start":4967203,"end":4967590},{"filename":"/audio/clone.ogg","start":4967590,"end":4975993,"audio":1},{"filename":"/audio/clone_1.wav","start":4975993,"end":5001471,"audio":1},{"filename":"/audio/clone_2.wav","start":5001471,"end":5024585,"audio":1},{"filename":"/audio/flag.wav","start":5024585,"end":5057041,"audio":1},{"filename":"/audio/mus_ambient.ogg","start":5057041,"end":7768767,"audio":1},{"filename":"/audio/mus_circus.ogg","start":7768767,"end":11331458,"audio":1},{"filename":"/audio/mus_circus_intro.ogg","start":11331458,"end":11659008,"audio":1},{"filename":"/audio/mus_elementary.ogg","start":11659008,"end":14235161,"audio":1},{"filename":"/audio/mus_exponentiation.ogg","start":14235161,"end":16286355,"audio":1},{"filename":"/audio/mus_factory.ogg","start":16286355,"end":20837324,"audio":1},{"filename":"/audio/mus_garden.ogg","start":20837324,"end":25771669,"audio":1},{"filename":"/audio/mus_ice_cave.ogg","start":25771669,"end":28468895,"audio":1},{"filename":"/audio/mus_intro.ogg","start":28468895,"end":28948361,"audio":1},{"filename":"/audio/mus_meta.ogg","start":28948361,"end":31667092,"audio":1},{"filename":"/audio/mus_multiply.ogg","start":31667092,"end":33981570,"audio":1},{"filename":"/audio/mus_multiply2.ogg","start":33981570,"end":36267974,"audio":1},{"filename":"/audio/mus_noise.ogg","start":36267974,"end":36596580,"audio":1},{"filename":"/audio/mus_outro.ogg","start":36596580,"end":37969938,"audio":1},{"filename":"/audio/mus_theme.ogg","start":37969938,"end":39268517,"audio":1},{"filename":"/audio/mus_victory.ogg","start":39268517,"end":39395885,"audio":1},{"filename":"/audio/select.wav","start":39395885,"end":39397493,"audio":1},{"filename":"/audio/spike.wav","start":39397493,"end":39413905,"audio":1},{"filename":"/audio/star.wav","start":39413905,"end":39669949,"audio":1},{"filename":"/audio/statue.wav","start":39669949,"end":39767491,"audio":1},{"filename":"/audio/step.wav","start":39767491,"end":39787803,"audio":1},{"filename":"/audio/teleport.wav","start":39787803,"end":39837287,"audio":1},{"filename":"/save games/saveDefault.txt","start":39837287,"end":39838752}],"remote_package_size":39838752,"package_uuid":"8fc778f2-f81e-44a1-b643-17505d854ae1"})})();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 tempRet0=0;var setTempRet0=value=>{tempRet0=value};var getTempRet0=()=>tempRet0;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.endsWith("*"))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<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);function onDone(ret){if(stack!==0)stackRestore(stack);return convertReturnValue(ret)}ret=onDone(ret);return ret}function cwrap(ident,returnType,argTypes,opts){argTypes=argTypes||[];var numericArgs=argTypes.every(function(type){return type==="number"});var numericRet=returnType!=="string";if(numericRet&&numericArgs&&!opts){return getCFunc(ident)}return function(){return ccall(ident,returnType,argTypes,arguments,opts)}}var UTF8Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(heapOrArray,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}else{var str="";while(idx<endPtr){var u0=heapOrArray[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}var u1=heapOrArray[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}var u2=heapOrArray[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u0=(u0&7)<<18|u1<<12|u2<<6|heapOrArray[idx++]&63}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>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<str.length;++i){var u=str.charCodeAt(i);if(u>=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<str.length;++i){var u=str.charCodeAt(i);if(u>=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 allocateUTF8OnStack(str){var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8Array(str,HEAP8,ret,size);return ret}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}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"]||262144e3;var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;function keepRuntimeAlive(){return noExitRuntime}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 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()}}}function abort(what){{if(Module["onAbort"]){Module["onAbort"](what)}}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -sASSERTIONS 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="index.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;Module["asm"]=exports;wasmMemory=Module["asm"]["ff"];updateGlobalBufferAndViews(wasmMemory.buffer);wasmTable=Module["asm"]["kf"];addOnInit(Module["asm"]["gf"]);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);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync();return{}}var tempDouble;var tempI64;var ASM_CONSTS={93722:function(){if(typeof AudioContext!=="undefined"){return true}else if(typeof webkitAudioContext!=="undefined"){return true}return false},93869:function(){if(typeof navigator.mediaDevices!=="undefined"&&typeof navigator.mediaDevices.getUserMedia!=="undefined"){return true}else if(typeof navigator.webkitGetUserMedia!=="undefined"){return true}return false},94103:function($0){if(typeof Module["SDL2"]==="undefined"){Module["SDL2"]={}}var SDL2=Module["SDL2"];if(!$0){SDL2.audio={}}else{SDL2.capture={}}if(!SDL2.audioContext){if(typeof AudioContext!=="undefined"){SDL2.audioContext=new AudioContext}else if(typeof webkitAudioContext!=="undefined"){SDL2.audioContext=new webkitAudioContext}if(SDL2.audioContext){autoResumeAudioContext(SDL2.audioContext)}}return SDL2.audioContext===undefined?-1:0},94596:function(){var SDL2=Module["SDL2"];return SDL2.audioContext.sampleRate},94664:function($0,$1,$2,$3){var SDL2=Module["SDL2"];var have_microphone=function(stream){if(SDL2.capture.silenceTimer!==undefined){clearTimeout(SDL2.capture.silenceTimer);SDL2.capture.silenceTimer=undefined}SDL2.capture.mediaStreamNode=SDL2.audioContext.createMediaStreamSource(stream);SDL2.capture.scriptProcessorNode=SDL2.audioContext.createScriptProcessor($1,$0,1);SDL2.capture.scriptProcessorNode.onaudioprocess=function(audioProcessingEvent){if(SDL2===undefined||SDL2.capture===undefined){return}audioProcessingEvent.outputBuffer.getChannelData(0).fill(0);SDL2.capture.currentCaptureBuffer=audioProcessingEvent.inputBuffer;dynCall("vi",$2,[$3])};SDL2.capture.mediaStreamNode.connect(SDL2.capture.scriptProcessorNode);SDL2.capture.scriptProcessorNode.connect(SDL2.audioContext.destination);SDL2.capture.stream=stream};var no_microphone=function(error){};SDL2.capture.silenceBuffer=SDL2.audioContext.createBuffer($0,$1,SDL2.audioContext.sampleRate);SDL2.capture.silenceBuffer.getChannelData(0).fill(0);var silence_callback=function(){SDL2.capture.currentCaptureBuffer=SDL2.capture.silenceBuffer;dynCall("vi",$2,[$3])};SDL2.capture.silenceTimer=setTimeout(silence_callback,$1/SDL2.audioContext.sampleRate*1e3);if(navigator.mediaDevices!==undefined&&navigator.mediaDevices.getUserMedia!==undefined){navigator.mediaDevices.getUserMedia({audio:true,video:false}).then(have_microphone).catch(no_microphone)}else if(navigator.webkitGetUserMedia!==undefined){navigator.webkitGetUserMedia({audio:true,video:false},have_microphone,no_microphone)}},96316:function($0,$1,$2,$3){var SDL2=Module["SDL2"];SDL2.audio.scriptProcessorNode=SDL2.audioContext["createScriptProcessor"]($1,0,$0);SDL2.audio.scriptProcessorNode["onaudioprocess"]=function(e){if(SDL2===undefined||SDL2.audio===undefined){return}SDL2.audio.currentOutputBuffer=e["outputBuffer"];dynCall("vi",$2,[$3])};SDL2.audio.scriptProcessorNode["connect"](SDL2.audioContext["destination"])},96726:function($0,$1){var SDL2=Module["SDL2"];var numChannels=SDL2.capture.currentCaptureBuffer.numberOfChannels;for(var c=0;c<numChannels;++c){var channelData=SDL2.capture.currentCaptureBuffer.getChannelData(c);if(channelData.length!=$1){throw"Web Audio capture buffer length mismatch! Destination size: "+channelData.length+" samples vs expected "+$1+" samples!"}if(numChannels==1){for(var j=0;j<$1;++j){setValue($0+j*4,channelData[j],"float")}}else{for(var j=0;j<$1;++j){setValue($0+(j*numChannels+c)*4,channelData[j],"float")}}}},97331:function($0,$1){var SDL2=Module["SDL2"];var numChannels=SDL2.audio.currentOutputBuffer["numberOfChannels"];for(var c=0;c<numChannels;++c){var channelData=SDL2.audio.currentOutputBuffer["getChannelData"](c);if(channelData.length!=$1){throw"Web Audio output buffer length mismatch! Destination size: "+channelData.length+" samples vs expected "+$1+" samples!"}for(var j=0;j<$1;++j){channelData[j]=HEAPF32[$0+(j*numChannels+c<<2)>>2]}}},97811:function($0){var SDL2=Module["SDL2"];if($0){if(SDL2.capture.silenceTimer!==undefined){clearTimeout(SDL2.capture.silenceTimer)}if(SDL2.capture.stream!==undefined){var tracks=SDL2.capture.stream.getAudioTracks();for(var i=0;i<tracks.length;i++){SDL2.capture.stream.removeTrack(tracks[i])}SDL2.capture.stream=undefined}if(SDL2.capture.scriptProcessorNode!==undefined){SDL2.capture.scriptProcessorNode.onaudioprocess=function(audioProcessingEvent){};SDL2.capture.scriptProcessorNode.disconnect();SDL2.capture.scriptProcessorNode=undefined}if(SDL2.capture.mediaStreamNode!==undefined){SDL2.capture.mediaStreamNode.disconnect();SDL2.capture.mediaStreamNode=undefined}if(SDL2.capture.silenceBuffer!==undefined){SDL2.capture.silenceBuffer=undefined}SDL2.capture=undefined}else{if(SDL2.audio.scriptProcessorNode!=undefined){SDL2.audio.scriptProcessorNode.disconnect();SDL2.audio.scriptProcessorNode=undefined}SDL2.audio=undefined}if(SDL2.audioContext!==undefined&&SDL2.audio===undefined&&SDL2.capture===undefined){SDL2.audioContext.close();SDL2.audioContext=undefined}},98983:function($0,$1,$2){var w=$0;var h=$1;var pixels=$2;if(!Module["SDL2"])Module["SDL2"]={};var SDL2=Module["SDL2"];if(SDL2.ctxCanvas!==Module["canvas"]){SDL2.ctx=Module["createContext"](Module["canvas"],false,true);SDL2.ctxCanvas=Module["canvas"]}if(SDL2.w!==w||SDL2.h!==h||SDL2.imageCtx!==SDL2.ctx){SDL2.image=SDL2.ctx.createImageData(w,h);SDL2.w=w;SDL2.h=h;SDL2.imageCtx=SDL2.ctx}var data=SDL2.image.data;var src=pixels>>2;var dst=0;var num;if(typeof CanvasPixelArray!=="undefined"&&data instanceof CanvasPixelArray){num=data.length;while(dst<num){var val=HEAP32[src];data[dst]=val&255;data[dst+1]=val>>8&255;data[dst+2]=val>>16&255;data[dst+3]=255;src++;dst+=4}}else{if(SDL2.data32Data!==data){SDL2.data32=new Int32Array(data.buffer);SDL2.data8=new Uint8Array(data.buffer);SDL2.data32Data=data}var data32=SDL2.data32;num=data32.length;data32.set(HEAP32.subarray(src,src+num));var data8=SDL2.data8;var i=3;var j=i+4*num;if(num%8==0){while(i<j){data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0}}else{while(i<j){data8[i]=255;i=i+4|0}}}SDL2.ctx.putImageData(SDL2.image,0,0);return 0},100462:function($0,$1,$2,$3,$4){var w=$0;var h=$1;var hot_x=$2;var hot_y=$3;var pixels=$4;var canvas=document.createElement("canvas");canvas.width=w;canvas.height=h;var ctx=canvas.getContext("2d");var image=ctx.createImageData(w,h);var data=image.data;var src=pixels>>2;var dst=0;var num;if(typeof CanvasPixelArray!=="undefined"&&data instanceof CanvasPixelArray){num=data.length;while(dst<num){var val=HEAP32[src];data[dst]=val&255;data[dst+1]=val>>8&255;data[dst+2]=val>>16&255;data[dst+3]=val>>24&255;src++;dst+=4}}else{var data32=new Int32Array(data.buffer);num=data32.length;data32.set(HEAP32.subarray(src,src+num))}ctx.putImageData(image,0,0);var url=hot_x===0&&hot_y===0?"url("+canvas.toDataURL()+"), auto":"url("+canvas.toDataURL()+") "+hot_x+" "+hot_y+", auto";var urlBuf=_malloc(url.length+1);stringToUTF8(url,urlBuf,url.length+1);return urlBuf},101451:function($0){if(Module["canvas"]){Module["canvas"].style["cursor"]=UTF8ToString($0)}return 0},101544:function(){if(Module["canvas"]){Module["canvas"].style["cursor"]="none"}},101613:function(){return window.innerWidth},101643:function(){return window.innerHeight}};function alertLevelCodeJS(str){let textInputDiv=document.getElementById("textInput");textInputDiv.style.display="flex";let textInput=document.getElementById("textInputTextArea");textInput.value=UTF8ToString(str);let textP=document.getElementById("textInputText");textP.innerText="Copy this level code to your clipboard and save it or share it!";let button=document.getElementById("textInputButton");button.textContent="Done";JSEvents.removeAllEventListeners();return true}function freeStringJs(str){_free(str)}function isSafariJs(){let safari1=window.safari!==undefined;let safari2=window.navigator.userAgent.toLowerCase().indexOf("safari")!=-1;let chrome=window.navigator.userAgent.toLowerCase().indexOf("chrome")!=-1;return!chrome&&(safari1||safari2)}function readLocalstorageJs(str){var jsString=localStorage[UTF8ToString(str)];if(jsString==null||jsString==undefined){jsString="null"}var lengthBytes=lengthBytesUTF8(jsString)+1;var stringOnWasmHeap=_malloc(lengthBytes);stringToUTF8(jsString,stringOnWasmHeap,lengthBytes+1);return stringOnWasmHeap}function testLocalstorageJs(){try{let itemName=document.URL+"test";localStorage[itemName]="test";localStorage.getItem(itemName);localStorage.removeItem(itemName)}catch(e){return 0}return 1}function webLoadLevelJs(forceNewRead){let jsString="";let textInputDiv=document.getElementById("textInput");textArea=document.getElementById("textInputTextArea");if(forceNewRead){window.textInputButtonClicked=false;textArea.value=""}if(window.textInputButtonClicked){jsString="1";jsString+=textArea.value}else{textInputDiv.style.display="flex";let textP=document.getElementById("textInputText");textP.innerText='Paste a level code below, then click "load"';let button=document.getElementById("textInputButton");button.textContent="Load";JSEvents.removeAllEventListeners();jsString="0"}let lengthBytes=lengthBytesUTF8(jsString)+1;let stringOnWasmHeap=_malloc(lengthBytes);stringToUTF8(jsString,stringOnWasmHeap,lengthBytes+1);return stringOnWasmHeap}function writeLocalstorageJs(fname,value){localStorage[UTF8ToString(fname)]=UTF8ToString(value)}function listenOnce(object,event,func){object.addEventListener(event,func,{"once":true})}function autoResumeAudioContext(ctx,elements){if(!elements){elements=[document,document.getElementById("canvas")]}["keydown","mousedown","touchstart"].forEach(function(event){elements.forEach(function(element){if(element){listenOnce(element,event,function(){if(ctx.state==="suspended")ctx.resume()})}})})}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func=="number"){if(callback.arg===undefined){getWasmTableEntry(func)()}else{getWasmTableEntry(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}function withStackSave(f){var stack=stackSave();var ret=f();stackRestore(stack);return ret}function dynCallLegacy(sig,ptr,args){var f=Module["dynCall_"+sig];return args&&args.length?f.apply(null,[ptr].concat(args)):f.call(null,ptr)}var wasmTableMirror=[];function getWasmTableEntry(funcPtr){var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func}function dynCall(sig,ptr,args){if(sig.includes("j")){return dynCallLegacy(sig,ptr,args)}return getWasmTableEntry(ptr).apply(null,args)}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 ___cxa_allocate_exception(size){return _malloc(size+24)+24}var exceptionCaught=[];function exception_addRef(info){info.add_ref()}var uncaughtExceptionCount=0;function ___cxa_begin_catch(ptr){var info=new ExceptionInfo(ptr);if(!info.get_caught()){info.set_caught(true);uncaughtExceptionCount--}info.set_rethrown(false);exceptionCaught.push(info);exception_addRef(info);return info.get_exception_ptr()}var exceptionLast=0;function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24;this.set_type=function(type){HEAPU32[this.ptr+4>>2]=type};this.get_type=function(){return HEAPU32[this.ptr+4>>2]};this.set_destructor=function(destructor){HEAPU32[this.ptr+8>>2]=destructor};this.get_destructor=function(){return HEAPU32[this.ptr+8>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+12>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+12>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+13>>0]!=0};this.init=function(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=prev-1;return prev===1};this.set_adjusted_ptr=function(adjustedPtr){HEAPU32[this.ptr+16>>2]=adjustedPtr};this.get_adjusted_ptr=function(){return HEAPU32[this.ptr+16>>2]};this.get_exception_ptr=function(){var isPointer=___cxa_is_pointer_type(this.get_type());if(isPointer){return HEAPU32[this.excPtr>>2]}var adjusted=this.get_adjusted_ptr();if(adjusted!==0)return adjusted;return this.excPtr}}function ___cxa_free_exception(ptr){try{return _free(new ExceptionInfo(ptr).ptr)}catch(e){}}function exception_decRef(info){if(info.release_ref()&&!info.get_rethrown()){var destructor=info.get_destructor();if(destructor){getWasmTableEntry(destructor)(info.excPtr)}___cxa_free_exception(info.excPtr)}}function ___cxa_end_catch(){_setThrew(0);var info=exceptionCaught.pop();exception_decRef(info);exceptionLast=0}function ___resumeException(ptr){if(!exceptionLast){exceptionLast=ptr}throw ptr}function ___cxa_find_matching_catch_2(){var thrown=exceptionLast;if(!thrown){setTempRet0(0);return 0}var info=new ExceptionInfo(thrown);info.set_adjusted_ptr(thrown);var thrownType=info.get_type();if(!thrownType){setTempRet0(0);return thrown}var typeArray=Array.prototype.slice.call(arguments);for(var i=0;i<typeArray.length;i++){var caughtType=typeArray[i];if(caughtType===0||caughtType===thrownType){break}var adjusted_ptr_addr=info.ptr+16;if(___cxa_can_catch(caughtType,thrownType,adjusted_ptr_addr)){setTempRet0(caughtType);return thrown}}setTempRet0(thrownType);return thrown}function ___cxa_find_matching_catch_3(){var thrown=exceptionLast;if(!thrown){setTempRet0(0);return 0}var info=new ExceptionInfo(thrown);info.set_adjusted_ptr(thrown);var thrownType=info.get_type();if(!thrownType){setTempRet0(0);return thrown}var typeArray=Array.prototype.slice.call(arguments);for(var i=0;i<typeArray.length;i++){var caughtType=typeArray[i];if(caughtType===0||caughtType===thrownType){break}var adjusted_ptr_addr=info.ptr+16;if(___cxa_can_catch(caughtType,thrownType,adjusted_ptr_addr)){setTempRet0(caughtType);return thrown}}setTempRet0(thrownType);return thrown}function ___cxa_rethrow(){var info=exceptionCaught.pop();if(!info){abort("no exception to throw")}var ptr=info.excPtr;if(!info.get_rethrown()){exceptionCaught.push(info);info.set_rethrown(true);info.set_caught(false);uncaughtExceptionCount++}exceptionLast=ptr;throw ptr}function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw ptr}function ___cxa_uncaught_exceptions(){return uncaughtExceptionCount}function setErrNo(value){HEAP32[___errno_location()>>2]=value;return value}var PATH={isAbs:path=>path.charAt(0)==="/",splitPath:filename=>{var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:(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:path=>{var isAbsolute=PATH.isAbs(path),trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(p=>!!p),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname: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: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)},join:function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))},join2:(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.isAbs(path)}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(p=>!!p),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:(from,to)=>{from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start<arr.length;start++){if(arr[start]!=="")break}var end=arr.length-1;for(;end>=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;i<length;i++){if(fromParts[i]!==toParts[i]){samePartsLength=i;break}}var outputParts=[];for(var i=samePartsLength;i<fromParts.length;i++){outputParts.push("..")}outputParts=outputParts.concat(toParts.slice(samePartsLength));return outputParts.join("/")}};var TTY={ttys:[],init:function(){},shutdown:function(){},register:function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open:function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(43)}stream.tty=tty;stream.seekable=false},close:function(stream){stream.tty.ops.flush(stream.tty)},flush:function(stream){stream.tty.ops.flush(stream.tty)},read:function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(60)}var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=stream.tty.ops.get_char(stream.tty)}catch(e){throw new FS.ErrnoError(29)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(6)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead},write:function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.put_char){throw new FS.ErrnoError(60)}try{for(var i=0;i<length;i++){stream.tty.ops.put_char(stream.tty,buffer[offset+i])}}catch(e){throw new FS.ErrnoError(29)}if(length){stream.node.timestamp=Date.now()}return i}},default_tty_ops:{get_char:function(tty){if(!tty.input.length){var result=null;if(ENVIRONMENT_IS_NODE){var BUFSIZE=256;var buf=Buffer.alloc(BUFSIZE);var bytesRead=0;try{bytesRead=fs.readSync(process.stdin.fd,buf,0,BUFSIZE,-1)}catch(e){if(e.toString().includes("EOF"))bytesRead=0;else throw e}if(bytesRead>0){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<CAPACITY_DOUBLING_MAX?2:1.125)>>>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;i<size;i++)buffer[offset+i]=contents[position+i]}return size},write:function(stream,buffer,offset,length,position,canOwn){if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=buffer.slice(offset,offset+length);node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray){node.contents.set(buffer.subarray(offset,offset+length),position)}else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length},llseek:function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(28)}return position},allocate:function(stream,offset,length){MEMFS.expandFileStorage(stream.node,offset+length);stream.node.usedBytes=Math.max(stream.node.usedBytes,offset+length)},mmap:function(stream,address,length,position,prot,flags){if(address!==0){throw new FS.ErrnoError(28)}if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}var ptr;var allocated;var contents=stream.node.contents;if(!(flags&2)&&contents.buffer===buffer){allocated=false;ptr=contents.byteOffset}else{if(position>0||position+length<contents.length){if(contents.subarray){contents=contents.subarray(position,position+length)}else{contents=Array.prototype.slice.call(contents,position,position+length)}}allocated=true;ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}HEAP8.set(contents,ptr)}return{ptr:ptr,allocated:allocated}},msync:function(stream,buffer,offset,length,mmapFlags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}if(mmapFlags&2){return 0}var bytesWritten=MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0}}};function asyncLoad(url,onload,onerror,noRunDep){var dep=!noRunDep?getUniqueRunDependency("al "+url):"";readAsync(url,function(arrayBuffer){assert(arrayBuffer,'Loading data file "'+url+'" failed (no arrayBuffer).');onload(new Uint8Array(arrayBuffer));if(dep)removeRunDependency(dep)},function(event){if(onerror){onerror()}else{throw'Loading data file "'+url+'" failed.'}});if(dep)addRunDependency(dep)}var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,lookupPath:(path,opts={})=>{path=PATH_FS.resolve(FS.cwd(),path);if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};opts=Object.assign(defaults,opts);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;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH_FS.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count+1});current=lookup.node;if(count++>40){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<name.length;i++){hash=(hash<<5)-hash+name.charCodeAt(i)|0}return(parentid+hash>>>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(){this.shared={}};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}},flags:{get:function(){return this.shared.flags},set:function(val){this.shared.flags=val}},position:{get function(){return this.shared.position},set:function(val){this.shared.position=val}}}}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<dirs.length;++i){if(!dirs[i])continue;d+="/"+dirs[i];try{FS.mkdir(d,mode)}catch(e){if(e.errno!=20)throw e}}},mkdev:(path,mode,dev)=>{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)=>{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&&!created){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});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="<generic error, no 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<FS.streams.length;i++){var stream=FS.streams[i];if(!stream){continue}FS.close(stream)}},getMode:(canRead,canWrite)=>{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<len;++i)arr[i]=data.charCodeAt(i);data=arr}FS.chmod(node,mode|146);var stream=FS.open(node,577);FS.write(stream,data,0,data.length,0,canOwn);FS.close(stream);FS.chmod(node,mode)}return node},createDevice:(parent,name,input,output)=>{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<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(29)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(6)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead},write:(stream,buffer,offset,length,pos)=>{for(var i=0;i<length;i++){try{output(buffer[offset+i])}catch(e){throw new FS.ErrnoError(29)}}if(length){stream.node.timestamp=Date.now()}return i}});return FS.mkdev(path,mode,dev)},forceLoadFile:obj=>{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<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size});node.stream_ops=stream_ops;return node},createPreloadedFile:(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish)=>{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.isAbs(path)){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)},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}};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.createStream(stream,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_ioctl(fd,op,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(op){case 21509:case 21505:{if(!stream.tty)return-59;return 0}case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-59;return 0}case 21519:{if(!stream.tty)return-59;var argp=SYSCALLS.get();HEAP32[argp>>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_openat(dirfd,path,flags,varargs){SYSCALLS.varargs=varargs;try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);var mode=varargs?SYSCALLS.get():0;return FS.open(path,flags,mode).fd}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}function __emscripten_date_now(){return Date.now()}var nowIsMonotonic=true;function __emscripten_get_now_is_monotonic(){return nowIsMonotonic}function _abort(){abort("")}function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(!Browser.mainLoop.running){Browser.mainLoop.running=true}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){var timeUntilNextTick=Math.max(0,Browser.mainLoop.tickStartTime+value-_emscripten_get_now())|0;setTimeout(Browser.mainLoop.runner,timeUntilNextTick)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(typeof setImmediate=="undefined"){var setImmediates=[];var emscriptenMainLoopMessageId="setimmediate";var Browser_setImmediate_messageHandler=function(event){if(event.data===emscriptenMainLoopMessageId||event.data.target===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}};addEventListener("message",Browser_setImmediate_messageHandler,true);setImmediate=function Browser_emulated_setImmediate(func){setImmediates.push(func);if(ENVIRONMENT_IS_WORKER){if(Module["setImmediates"]===undefined)Module["setImmediates"]=[];Module["setImmediates"].push(func);postMessage({target:emscriptenMainLoopMessageId})}else postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){setImmediate(Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}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 maybeExit(){}function setMainLoop(browserIterationFunc,fps,simulateInfiniteLoop,arg,noSetTiming){assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=browserIterationFunc;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;function checkIsRunning(){if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop){maybeExit();return false}return true}Browser.mainLoop.running=false;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){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 callUserCallback(func,synchronous){if(ABORT){return}if(synchronous){func();return}try{func()}catch(e){handleException(e)}}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<expected){Module["setStatus"](message+" ("+(expected-remaining)+"/"+expected+")")}else{Module["setStatus"](message)}}else{Module["setStatus"]("")}}},runIter:function(func){if(ABORT)return;if(Module["preMainLoop"]){var preRet=Module["preMainLoop"]();if(preRet===false){return}}callUserCallback(func);if(Module["postMainLoop"])Module["postMainLoop"]()}},isFullscreen:false,pointerLock:false,moduleContextCreatedCallbacks:[],workers:[],init:function(){if(!Module["preloadPlugins"])Module["preloadPlugins"]=[];if(Browser.initted)return;Browser.initted=true;try{new Blob;Browser.hasBlobConstructor=true}catch(e){Browser.hasBlobConstructor=false;out("warning: no blob constructor, cannot create blobs with mimetypes")}Browser.BlobBuilder=typeof MozBlobBuilder!="undefined"?MozBlobBuilder:typeof WebKitBlobBuilder!="undefined"?WebKitBlobBuilder:!Browser.hasBlobConstructor?out("warning: no BlobBuilder"):null;Browser.URLObject=typeof window!="undefined"?window.URL?window.URL:window.webkitURL:undefined;if(!Module.noImageDecoding&&typeof Browser.URLObject=="undefined"){out("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available.");Module.noImageDecoding=true}var imagePlugin={};imagePlugin["canHandle"]=function imagePlugin_canHandle(name){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(name)};imagePlugin["handle"]=function imagePlugin_handle(byteArray,name,onload,onerror){var b=null;if(Browser.hasBlobConstructor){try{b=new Blob([byteArray],{type:Browser.getMimetype(name)});if(b.size!==byteArray.length){b=new Blob([new Uint8Array(byteArray).buffer],{type:Browser.getMimetype(name)})}}catch(e){warnOnce("Blob constructor present but fails: "+e+"; falling back to blob builder")}}if(!b){var bb=new Browser.BlobBuilder;bb.append(new Uint8Array(byteArray).buffer);b=bb.getBlob()}var url=Browser.URLObject.createObjectURL(b);var img=new Image;img.onload=(()=>{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);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;preloadedAudios[name]=audio;if(onload)onload(byteArray)}function fail(){if(done)return;done=true;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<data.length;i++){leftchar=leftchar<<8|data[i];leftbits+=8;while(leftbits>=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/h<Module["forcedAspectRatio"]){w=Math.round(h*Module["forcedAspectRatio"])}else{h=Math.round(w/Module["forcedAspectRatio"])}}if((document["fullscreenElement"]||document["mozFullScreenElement"]||document["msFullscreenElement"]||document["webkitFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvas.parentNode&&typeof screen!="undefined"){var factor=Math.min(screen.width/w,screen.height/h);w=Math.round(w*factor);h=Math.round(h*factor)}if(Browser.resizeCanvas){if(canvas.width!=w)canvas.width=w;if(canvas.height!=h)canvas.height=h;if(typeof canvas.style!="undefined"){canvas.style.removeProperty("width");canvas.style.removeProperty("height")}}else{if(canvas.width!=wNative)canvas.width=wNative;if(canvas.height!=hNative)canvas.height=hNative;if(typeof canvas.style!="undefined"){if(w!=wNative||h!=hNative){canvas.style.setProperty("width",w+"px","important");canvas.style.setProperty("height",h+"px","important")}else{canvas.style.removeProperty("width");canvas.style.removeProperty("height")}}}}};var EGL={errorCode:12288,defaultDisplayInitialized:false,currentContext:0,currentReadSurface:0,currentDrawSurface:0,contextAttributes:{alpha:false,depth:false,stencil:false,antialias:false},stringCache:{},setErrorCode:function(code){EGL.errorCode=code},chooseConfig:function(display,attribList,config,config_size,numConfigs){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(attribList){for(;;){var param=HEAP32[attribList>>2];if(param==12321){var alphaSize=HEAP32[attribList+4>>2];EGL.contextAttributes.alpha=alphaSize>0}else if(param==12325){var depthSize=HEAP32[attribList+4>>2];EGL.contextAttributes.depth=depthSize>0}else if(param==12326){var stencilSize=HEAP32[attribList+4>>2];EGL.contextAttributes.stencil=stencilSize>0}else if(param==12337){var samples=HEAP32[attribList+4>>2];EGL.contextAttributes.antialias=samples>0}else if(param==12338){var samples=HEAP32[attribList+4>>2];EGL.contextAttributes.antialias=samples==1}else if(param==12544){var requestedPriority=HEAP32[attribList+4>>2];EGL.contextAttributes.lowLatency=requestedPriority!=12547}else if(param==12344){break}attribList+=8}}if((!config||!config_size)&&!numConfigs){EGL.setErrorCode(12300);return 0}if(numConfigs){HEAP32[numConfigs>>2]=1}if(config&&config_size>0){HEAP32[config>>2]=62002}EGL.setErrorCode(12288);return 1}};function _eglBindAPI(api){if(api==12448){EGL.setErrorCode(12288);return 1}else{EGL.setErrorCode(12300);return 0}}function _eglChooseConfig(display,attrib_list,configs,config_size,numConfigs){return EGL.chooseConfig(display,attrib_list,configs,config_size,numConfigs)}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<ret;i++){table[i]=null}return ret},getSource:function(shader,count,string,length){var source="";for(var i=0;i<count;++i){var len=length?HEAP32[length+i*4>>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 _eglCreateContext(display,config,hmm,contextAttribs){if(display!=62e3){EGL.setErrorCode(12296);return 0}var glesContextVersion=1;for(;;){var param=HEAP32[contextAttribs>>2];if(param==12440){glesContextVersion=HEAP32[contextAttribs+4>>2]}else if(param==12344){break}else{EGL.setErrorCode(12292);return 0}contextAttribs+=8}if(glesContextVersion!=2){EGL.setErrorCode(12293);return 0}EGL.contextAttributes.majorVersion=glesContextVersion-1;EGL.contextAttributes.minorVersion=0;EGL.context=GL.createContext(Module["canvas"],EGL.contextAttributes);if(EGL.context!=0){EGL.setErrorCode(12288);GL.makeContextCurrent(EGL.context);Module.useWebGL=true;Browser.moduleContextCreatedCallbacks.forEach(function(callback){callback()});GL.makeContextCurrent(null);return 62004}else{EGL.setErrorCode(12297);return 0}}function _eglCreateWindowSurface(display,config,win,attrib_list){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(config!=62002){EGL.setErrorCode(12293);return 0}EGL.setErrorCode(12288);return 62006}function _eglDestroyContext(display,context){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(context!=62004){EGL.setErrorCode(12294);return 0}GL.deleteContext(EGL.context);EGL.setErrorCode(12288);if(EGL.currentContext==context){EGL.currentContext=0}return 1}function _eglDestroySurface(display,surface){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(surface!=62006){EGL.setErrorCode(12301);return 1}if(EGL.currentReadSurface==surface){EGL.currentReadSurface=0}if(EGL.currentDrawSurface==surface){EGL.currentDrawSurface=0}EGL.setErrorCode(12288);return 1}function _eglGetConfigAttrib(display,config,attribute,value){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(config!=62002){EGL.setErrorCode(12293);return 0}if(!value){EGL.setErrorCode(12300);return 0}EGL.setErrorCode(12288);switch(attribute){case 12320:HEAP32[value>>2]=EGL.contextAttributes.alpha?32:24;return 1;case 12321:HEAP32[value>>2]=EGL.contextAttributes.alpha?8:0;return 1;case 12322:HEAP32[value>>2]=8;return 1;case 12323:HEAP32[value>>2]=8;return 1;case 12324:HEAP32[value>>2]=8;return 1;case 12325:HEAP32[value>>2]=EGL.contextAttributes.depth?24:0;return 1;case 12326:HEAP32[value>>2]=EGL.contextAttributes.stencil?8:0;return 1;case 12327:HEAP32[value>>2]=12344;return 1;case 12328:HEAP32[value>>2]=62002;return 1;case 12329:HEAP32[value>>2]=0;return 1;case 12330:HEAP32[value>>2]=4096;return 1;case 12331:HEAP32[value>>2]=16777216;return 1;case 12332:HEAP32[value>>2]=4096;return 1;case 12333:HEAP32[value>>2]=0;return 1;case 12334:HEAP32[value>>2]=0;return 1;case 12335:HEAP32[value>>2]=12344;return 1;case 12337:HEAP32[value>>2]=EGL.contextAttributes.antialias?4:0;return 1;case 12338:HEAP32[value>>2]=EGL.contextAttributes.antialias?1:0;return 1;case 12339:HEAP32[value>>2]=4;return 1;case 12340:HEAP32[value>>2]=12344;return 1;case 12341:case 12342:case 12343:HEAP32[value>>2]=-1;return 1;case 12345:case 12346:HEAP32[value>>2]=0;return 1;case 12347:HEAP32[value>>2]=0;return 1;case 12348:HEAP32[value>>2]=1;return 1;case 12349:case 12350:HEAP32[value>>2]=0;return 1;case 12351:HEAP32[value>>2]=12430;return 1;case 12352:HEAP32[value>>2]=4;return 1;case 12354:HEAP32[value>>2]=0;return 1;default:EGL.setErrorCode(12292);return 0}}function _eglGetDisplay(nativeDisplayType){EGL.setErrorCode(12288);return 62e3}function _eglGetError(){return EGL.errorCode}function _eglInitialize(display,majorVersion,minorVersion){if(display==62e3){if(majorVersion){HEAP32[majorVersion>>2]=1}if(minorVersion){HEAP32[minorVersion>>2]=4}EGL.defaultDisplayInitialized=true;EGL.setErrorCode(12288);return 1}else{EGL.setErrorCode(12296);return 0}}function _eglMakeCurrent(display,draw,read,context){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(context!=0&&context!=62004){EGL.setErrorCode(12294);return 0}if(read!=0&&read!=62006||draw!=0&&draw!=62006){EGL.setErrorCode(12301);return 0}GL.makeContextCurrent(context?EGL.context:null);EGL.currentContext=context;EGL.currentDrawSurface=draw;EGL.currentReadSurface=read;EGL.setErrorCode(12288);return 1}function _eglQueryString(display,name){if(display!=62e3){EGL.setErrorCode(12296);return 0}EGL.setErrorCode(12288);if(EGL.stringCache[name])return EGL.stringCache[name];var ret;switch(name){case 12371:ret=allocateUTF8("Emscripten");break;case 12372:ret=allocateUTF8("1.4 Emscripten EGL");break;case 12373:ret=allocateUTF8("");break;case 12429:ret=allocateUTF8("OpenGL_ES");break;default:EGL.setErrorCode(12300);return 0}EGL.stringCache[name]=ret;return ret}function _eglSwapBuffers(){if(!EGL.defaultDisplayInitialized){EGL.setErrorCode(12289)}else if(!Module.ctx){EGL.setErrorCode(12290)}else if(Module.ctx.isContextLost()){EGL.setErrorCode(12302)}else{EGL.setErrorCode(12288);return 1}return 0}function _eglSwapInterval(display,interval){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(interval==0)_emscripten_set_main_loop_timing(0,0);else _emscripten_set_main_loop_timing(1,interval);EGL.setErrorCode(12288);return 1}function _eglTerminate(display){if(display!=62e3){EGL.setErrorCode(12296);return 0}EGL.currentContext=0;EGL.currentReadSurface=0;EGL.currentDrawSurface=0;EGL.defaultDisplayInitialized=false;EGL.setErrorCode(12288);return 1}function _eglWaitClient(){EGL.setErrorCode(12288);return 1}function _eglWaitGL(){return _eglWaitClient()}function _eglWaitNative(nativeEngineId){EGL.setErrorCode(12288);return 1}var readAsmConstArgsArray=[];function readAsmConstArgs(sigPtr,buf){readAsmConstArgsArray.length=0;var ch;buf>>=2;while(ch=HEAPU8[sigPtr++]){buf+=ch!=105&buf;readAsmConstArgsArray.push(ch==105?HEAP32[buf]:HEAPF64[buf++>>1]);++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.precedence<y.precedence})},removeDeferredCalls:function(targetFunction){for(var i=0;i<JSEvents.deferredCalls.length;++i){if(JSEvents.deferredCalls[i].targetFunction==targetFunction){JSEvents.deferredCalls.splice(i,1);--i}}},canPerformEventHandlerRequests:function(){return JSEvents.inEventHandler&&JSEvents.currentEventHandler.allowsDeferredCalls},runDeferredCalls:function(){if(!JSEvents.canPerformEventHandlerRequests()){return}for(var i=0;i<JSEvents.deferredCalls.length;++i){var call=JSEvents.deferredCalls[i];JSEvents.deferredCalls.splice(i,1);--i;call.targetFunction.apply(null,call.argsList)}},eventHandlers:[],removeAllHandlersOnTarget:function(target,eventTypeString){for(var i=0;i<JSEvents.eventHandlers.length;++i){if(JSEvents.eventHandlers[i].target==target&&(!eventTypeString||eventTypeString==JSEvents.eventHandlers[i].eventTypeString)){JSEvents._removeHandler(i--)}}},_removeHandler:function(i){var h=JSEvents.eventHandlers[i];h.target.removeEventListener(h.eventTypeString,h.eventListenerFunc,h.useCapture);JSEvents.eventHandlers.splice(i,1)},registerOrRemoveHandler:function(eventHandler){var jsEventHandler=function jsEventHandler(event){++JSEvents.inEventHandler;JSEvents.currentEventHandler=eventHandler;JSEvents.runDeferredCalls();eventHandler.handlerFunc(event);JSEvents.runDeferredCalls();--JSEvents.inEventHandler};if(eventHandler.callbackfunc){eventHandler.eventListenerFunc=jsEventHandler;eventHandler.target.addEventListener(eventHandler.eventTypeString,jsEventHandler,eventHandler.useCapture);JSEvents.eventHandlers.push(eventHandler);JSEvents.registerRemoveEventListeners()}else{for(var i=0;i<JSEvents.eventHandlers.length;++i){if(JSEvents.eventHandlers[i].target==eventHandler.target&&JSEvents.eventHandlers[i].eventTypeString==eventHandler.eventTypeString){JSEvents._removeHandler(i--)}}}},getNodeNameForTarget:function(target){if(!target)return"";if(target==window)return"#window";if(target==screen)return"#screen";return target&&target.nodeName?target.nodeName:""},fullscreenEnabled:function(){return document.fullscreenEnabled||document.webkitFullscreenEnabled}};var currentFullscreenStrategy={};function maybeCStringToJsString(cString){return cString>2?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 findCanvasEventTarget(target){return findEventTarget(target)}function _emscripten_get_canvas_element_size(target,width,height){var canvas=findCanvasEventTarget(target);if(!canvas)return-4;HEAP32[width>>2]=canvas.width;HEAP32[height>>2]=canvas.height}function getCanvasElementSize(target){return withStackSave(function(){var w=stackAlloc(8);var h=w+4;var targetInt=stackAlloc(target.id.length+1);stringToUTF8(target.id,targetInt,target.id.length+1);var ret=_emscripten_get_canvas_element_size(targetInt,w,h);var size=[HEAP32[w>>2],HEAP32[h>>2]];return size})}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 setCanvasElementSize(target,width,height){if(!target.controlTransferredOffscreen){target.width=width;target.height=height}else{withStackSave(function(){var targetInt=stackAlloc(target.id.length+1);stringToUTF8(target.id,targetInt,target.id.length+1);_emscripten_set_canvas_element_size(targetInt,width,height)})}}function registerRestoreOldStyle(canvas){var canvasSize=getCanvasElementSize(canvas);var oldWidth=canvasSize[0];var oldHeight=canvasSize[1];var oldCssWidth=canvas.style.width;var oldCssHeight=canvas.style.height;var oldBackgroundColor=canvas.style.backgroundColor;var oldDocumentBackgroundColor=document.body.style.backgroundColor;var oldPaddingLeft=canvas.style.paddingLeft;var oldPaddingRight=canvas.style.paddingRight;var oldPaddingTop=canvas.style.paddingTop;var oldPaddingBottom=canvas.style.paddingBottom;var oldMarginLeft=canvas.style.marginLeft;var oldMarginRight=canvas.style.marginRight;var oldMarginTop=canvas.style.marginTop;var oldMarginBottom=canvas.style.marginBottom;var oldDocumentBodyMargin=document.body.style.margin;var oldDocumentOverflow=document.documentElement.style.overflow;var oldDocumentScroll=document.body.scroll;var oldImageRendering=canvas.style.imageRendering;function restoreOldStyle(){var fullscreenElement=document.fullscreenElement||document.webkitFullscreenElement||document.msFullscreenElement;if(!fullscreenElement){document.removeEventListener("fullscreenchange",restoreOldStyle);document.removeEventListener("webkitfullscreenchange",restoreOldStyle);setCanvasElementSize(canvas,oldWidth,oldHeight);canvas.style.width=oldCssWidth;canvas.style.height=oldCssHeight;canvas.style.backgroundColor=oldBackgroundColor;if(!oldDocumentBackgroundColor)document.body.style.backgroundColor="white";document.body.style.backgroundColor=oldDocumentBackgroundColor;canvas.style.paddingLeft=oldPaddingLeft;canvas.style.paddingRight=oldPaddingRight;canvas.style.paddingTop=oldPaddingTop;canvas.style.paddingBottom=oldPaddingBottom;canvas.style.marginLeft=oldMarginLeft;canvas.style.marginRight=oldMarginRight;canvas.style.marginTop=oldMarginTop;canvas.style.marginBottom=oldMarginBottom;document.body.style.margin=oldDocumentBodyMargin;document.documentElement.style.overflow=oldDocumentOverflow;document.body.scroll=oldDocumentScroll;canvas.style.imageRendering=oldImageRendering;if(canvas.GLctxObject)canvas.GLctxObject.GLctx.viewport(0,0,oldWidth,oldHeight);if(currentFullscreenStrategy.canvasResizedCallback){getWasmTableEntry(currentFullscreenStrategy.canvasResizedCallback)(37,0,currentFullscreenStrategy.canvasResizedCallbackUserData)}}}document.addEventListener("fullscreenchange",restoreOldStyle);document.addEventListener("webkitfullscreenchange",restoreOldStyle);return restoreOldStyle}function setLetterbox(element,topBottom,leftRight){element.style.paddingLeft=element.style.paddingRight=leftRight+"px";element.style.paddingTop=element.style.paddingBottom=topBottom+"px"}function getBoundingClientRect(e){return specialHTMLTargets.indexOf(e)<0?e.getBoundingClientRect():{"left":0,"top":0}}function _JSEvents_resizeCanvasForFullscreen(target,strategy){var restoreOldStyle=registerRestoreOldStyle(target);var cssWidth=strategy.softFullscreen?innerWidth:screen.width;var cssHeight=strategy.softFullscreen?innerHeight:screen.height;var rect=getBoundingClientRect(target);var windowedCssWidth=rect.width;var windowedCssHeight=rect.height;var canvasSize=getCanvasElementSize(target);var windowedRttWidth=canvasSize[0];var windowedRttHeight=canvasSize[1];if(strategy.scaleMode==3){setLetterbox(target,(cssHeight-windowedCssHeight)/2,(cssWidth-windowedCssWidth)/2);cssWidth=windowedCssWidth;cssHeight=windowedCssHeight}else if(strategy.scaleMode==2){if(cssWidth*windowedRttHeight<windowedRttWidth*cssHeight){var desiredCssHeight=windowedRttHeight*cssWidth/windowedRttWidth;setLetterbox(target,(cssHeight-desiredCssHeight)/2,0);cssHeight=desiredCssHeight}else{var desiredCssWidth=windowedRttWidth*cssHeight/windowedRttHeight;setLetterbox(target,0,(cssWidth-desiredCssWidth)/2);cssWidth=desiredCssWidth}}if(!target.style.backgroundColor)target.style.backgroundColor="black";if(!document.body.style.backgroundColor)document.body.style.backgroundColor="black";target.style.width=cssWidth+"px";target.style.height=cssHeight+"px";if(strategy.filteringMode==1){target.style.imageRendering="optimizeSpeed";target.style.imageRendering="-moz-crisp-edges";target.style.imageRendering="-o-crisp-edges";target.style.imageRendering="-webkit-optimize-contrast";target.style.imageRendering="optimize-contrast";target.style.imageRendering="crisp-edges";target.style.imageRendering="pixelated"}var dpiScale=strategy.canvasResolutionScaleMode==2?devicePixelRatio:1;if(strategy.canvasResolutionScaleMode!=0){var newWidth=cssWidth*dpiScale|0;var newHeight=cssHeight*dpiScale|0;setCanvasElementSize(target,newWidth,newHeight);if(target.GLctxObject)target.GLctxObject.GLctx.viewport(0,0,newWidth,newHeight)}return restoreOldStyle}function _JSEvents_requestFullscreen(target,strategy){if(strategy.scaleMode!=0||strategy.canvasResolutionScaleMode!=0){_JSEvents_resizeCanvasForFullscreen(target,strategy)}if(target.requestFullscreen){target.requestFullscreen()}else if(target.webkitRequestFullscreen){target.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}else{return JSEvents.fullscreenEnabled()?-3:-1}currentFullscreenStrategy=strategy;if(strategy.canvasResizedCallback){getWasmTableEntry(strategy.canvasResizedCallback)(37,0,strategy.canvasResizedCallbackUserData)}return 0}function _emscripten_exit_fullscreen(){if(!JSEvents.fullscreenEnabled())return-1;JSEvents.removeDeferredCalls(_JSEvents_requestFullscreen);var d=specialHTMLTargets[1];if(d.exitFullscreen){d.fullscreenElement&&d.exitFullscreen()}else if(d.webkitExitFullscreen){d.webkitFullscreenElement&&d.webkitExitFullscreen()}else{return-1}return 0}function requestPointerLock(target){if(target.requestPointerLock){target.requestPointerLock()}else if(target.msRequestPointerLock){target.msRequestPointerLock()}else{if(document.body.requestPointerLock||document.body.msRequestPointerLock){return-3}else{return-1}}return 0}function _emscripten_exit_pointerlock(){JSEvents.removeDeferredCalls(requestPointerLock);if(document.exitPointerLock){document.exitPointerLock()}else if(document.msExitPointerLock){document.msExitPointerLock()}else{return-1}return 0}function _emscripten_get_device_pixel_ratio(){return typeof devicePixelRatio=="number"&&devicePixelRatio||1}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<e.axes.length;++i){HEAPF64[eventStruct+i*8+16>>3]=e.axes[i]}for(var i=0;i<e.buttons.length;++i){if(typeof e.buttons[i]=="object"){HEAPF64[eventStruct+i*8+528>>3]=e.buttons[i].value}else{HEAPF64[eventStruct+i*8+528>>3]=e.buttons[i]}}for(var i=0;i<e.buttons.length;++i){if(typeof e.buttons[i]=="object"){HEAP32[eventStruct+i*4+1040>>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}function _emscripten_get_num_gamepads(){return JSEvents.lastGamepadState.length}function _emscripten_get_screen_size(width,height){HEAP32[width>>2]=screen.width;HEAP32[height>>2]=screen.height}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<n;i++){var id=HEAP32[buffers+i*4>>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<n;++i){var id=HEAP32[framebuffers+i*4>>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<n;i++){var id=HEAP32[ids+i*4>>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<n;i++){var id=HEAP32[renderbuffers+i*4>>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<n;i++){var id=HEAP32[textures+i*4>>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<n;i++){var id=HEAP32[vaos+i*4>>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<n;i++){bufArray[i]=HEAP32[bufs+i*4>>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<n;i++){var buffer=GLctx[createFunction]();var id=buffer&&GL.getNewId(objectTable);if(buffer){buffer.name=id;objectTable[id]=buffer}else{GL.recordError(1282)}HEAP32[buffers+i*4>>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<n;i++){var query=GLctx.disjointTimerQueryExt["createQueryEXT"]();if(!query){GL.recordError(1282);while(i<n)HEAP32[ids+i++*4>>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<len;++i){var id=GL.shaders.indexOf(result[i]);HEAP32[shaders+i*4>>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<result.length;++i){switch(type){case 0:HEAP32[p+i*4>>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<GLctx.getProgramParameter(program,35718);++i){program.maxUniformLength=Math.max(program.maxUniformLength,GLctx.getActiveUniform(program,i).name.length+1)}}HEAP32[p>>2]=program.maxUniformLength}else if(pname==35722){if(!program.maxAttributeLength){for(var i=0;i<GLctx.getProgramParameter(program,35721);++i){program.maxAttributeLength=Math.max(program.maxAttributeLength,GLctx.getActiveAttrib(program,i).name.length+1)}}HEAP32[p>>2]=program.maxAttributeLength}else if(pname==35381){if(!program.maxUniformBlockNameLength){for(var i=0;i<GLctx.getProgramParameter(program,35382);++i){program.maxUniformBlockNameLength=Math.max(program.maxUniformBlockNameLength,GLctx.getActiveUniformBlockName(program,i).length+1)}}HEAP32[p>>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;i<GLctx.getProgramParameter(program,35718);++i){var u=GLctx.getActiveUniform(program,i);var nm=u.name;var sz=u.size;var lb=webglGetLeftBracePos(nm);var arrayName=lb>0?nm.slice(0,lb):nm;var id=program.uniformIdCounter;program.uniformIdCounter+=sz;uniformSizeAndIdsByName[arrayName]=[sz,id];for(j=0;j<sz;++j){uniformLocsById[id]=j;program.uniformArrayNamesById[id++]=arrayName}}}}function _emscripten_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<sizeAndId[0]){arrayIndex+=sizeAndId[1];if(uniformLocsById[arrayIndex]=uniformLocsById[arrayIndex]||GLctx.getUniformLocation(program,name)){return arrayIndex}}}else{GL.recordError(1281)}return-1}function webglGetUniformLocation(location){var p=GLctx.currentProgram;if(p){var webglLoc=p.uniformLocsById[location];if(typeof webglLoc=="number"){p.uniformLocsById[location]=webglLoc=GLctx.getUniformLocation(p,p.uniformArrayNamesById[location]+(webglLoc>0?"["+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<data.length;i++){switch(type){case 0:HEAP32[params+i*4>>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<data.length;i++){switch(type){case 0:HEAP32[params+i*4>>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;var sizePerPixel=__colorChannelsInGlTextureFormat(format)*byteSize;var bytes=computeUnpackAlignedImageSize(width,height,sizePerPixel,GL.unpackAlignment);return heap.subarray(pixels>>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<count;++i){view[i]=HEAPF32[value+4*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<count;++i){view[i]=HEAP32[value+4*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_has_asyncify(){return false}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function doRequestFullscreen(target,strategy){if(!JSEvents.fullscreenEnabled())return-1;target=findEventTarget(target);if(!target)return-4;if(!target.requestFullscreen&&!target.webkitRequestFullscreen){return-3}var canPerformRequests=JSEvents.canPerformEventHandlerRequests();if(!canPerformRequests){if(strategy.deferUntilInEventHandler){JSEvents.deferCall(_JSEvents_requestFullscreen,1,[target,strategy]);return 1}else{return-2}}return _JSEvents_requestFullscreen(target,strategy)}function _emscripten_request_fullscreen_strategy(target,deferUntilInEventHandler,fullscreenStrategy){var strategy={scaleMode:HEAP32[fullscreenStrategy>>2],canvasResolutionScaleMode:HEAP32[fullscreenStrategy+4>>2],filteringMode:HEAP32[fullscreenStrategy+8>>2],deferUntilInEventHandler:deferUntilInEventHandler,canvasResizedCallback:HEAP32[fullscreenStrategy+12>>2],canvasResizedCallbackUserData:HEAP32[fullscreenStrategy+16>>2]};return doRequestFullscreen(target,strategy)}function _emscripten_request_pointerlock(target,deferUntilInEventHandler){target=findEventTarget(target);if(!target)return-4;if(!target.requestPointerLock&&!target.msRequestPointerLock){return-1}var canPerformRequests=JSEvents.canPerformEventHandlerRequests();if(!canPerformRequests){if(deferUntilInEventHandler){JSEvents.deferCall(requestPointerLock,2,[target]);return 1}else{return-2}}return requestPointerLock(target)}function abortOnCannotGrowMemory(requestedSize){abort("OOM")}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;abortOnCannotGrowMemory(requestedSize)}function _emscripten_sample_gamepad_data(){return(JSEvents.lastGamepadState=navigator.getGamepads?navigator.getGamepads():navigator.webkitGetGamepads?navigator.webkitGetGamepads():null)?0:-1}function registerBeforeUnloadEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){var beforeUnloadEventHandlerFunc=function(ev){var e=ev||event;var confirmationMessage=getWasmTableEntry(callbackfunc)(eventTypeId,0,userData);if(confirmationMessage){confirmationMessage=UTF8ToString(confirmationMessage)}if(confirmationMessage){e.preventDefault();e.returnValue=confirmationMessage;return confirmationMessage}};var eventHandler={target:findEventTarget(target),eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:beforeUnloadEventHandlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_beforeunload_callback_on_thread(userData,callbackfunc,targetThread){if(typeof onbeforeunload=="undefined")return-1;if(targetThread!==1)return-5;registerBeforeUnloadEventCallback(2,userData,true,callbackfunc,28,"beforeunload");return 0}function registerFocusEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.focusEvent)JSEvents.focusEvent=_malloc(256);var focusEventHandlerFunc=function(ev){var e=ev||event;var nodeName=JSEvents.getNodeNameForTarget(e.target);var id=e.target.id?e.target.id:"";var focusEvent=JSEvents.focusEvent;stringToUTF8(nodeName,focusEvent+0,128);stringToUTF8(id,focusEvent+128,128);if(getWasmTableEntry(callbackfunc)(eventTypeId,focusEvent,userData))e.preventDefault()};var eventHandler={target:findEventTarget(target),eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:focusEventHandlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_blur_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){registerFocusEventCallback(target,userData,useCapture,callbackfunc,12,"blur",targetThread);return 0}function _emscripten_set_element_css_size(target,width,height){target=findEventTarget(target);if(!target)return-4;target.style.width=width+"px";target.style.height=height+"px";return 0}function _emscripten_set_focus_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){registerFocusEventCallback(target,userData,useCapture,callbackfunc,13,"focus",targetThread);return 0}function fillFullscreenChangeEventData(eventStruct){var fullscreenElement=document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement;var isFullscreen=!!fullscreenElement;HEAP32[eventStruct>>2]=isFullscreen;HEAP32[eventStruct+4>>2]=JSEvents.fullscreenEnabled();var reportedElement=isFullscreen?fullscreenElement:JSEvents.previousFullscreenElement;var nodeName=JSEvents.getNodeNameForTarget(reportedElement);var id=reportedElement&&reportedElement.id?reportedElement.id:"";stringToUTF8(nodeName,eventStruct+8,128);stringToUTF8(id,eventStruct+136,128);HEAP32[eventStruct+264>>2]=reportedElement?reportedElement.clientWidth:0;HEAP32[eventStruct+268>>2]=reportedElement?reportedElement.clientHeight:0;HEAP32[eventStruct+272>>2]=screen.width;HEAP32[eventStruct+276>>2]=screen.height;if(isFullscreen){JSEvents.previousFullscreenElement=fullscreenElement}}function registerFullscreenChangeEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.fullscreenChangeEvent)JSEvents.fullscreenChangeEvent=_malloc(280);var fullscreenChangeEventhandlerFunc=function(ev){var e=ev||event;var fullscreenChangeEvent=JSEvents.fullscreenChangeEvent;fillFullscreenChangeEventData(fullscreenChangeEvent);if(getWasmTableEntry(callbackfunc)(eventTypeId,fullscreenChangeEvent,userData))e.preventDefault()};var eventHandler={target:target,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:fullscreenChangeEventhandlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_fullscreenchange_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){if(!JSEvents.fullscreenEnabled())return-1;target=findEventTarget(target);if(!target)return-4;registerFullscreenChangeEventCallback(target,userData,useCapture,callbackfunc,19,"fullscreenchange",targetThread);registerFullscreenChangeEventCallback(target,userData,useCapture,callbackfunc,19,"webkitfullscreenchange",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(getWasmTableEntry(callbackfunc)(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 registerKeyEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.keyEvent)JSEvents.keyEvent=_malloc(176);var keyEventHandlerFunc=function(e){var keyEventData=JSEvents.keyEvent;HEAPF64[keyEventData>>3]=e.timeStamp;var idx=keyEventData>>2;HEAP32[idx+2]=e.location;HEAP32[idx+3]=e.ctrlKey;HEAP32[idx+4]=e.shiftKey;HEAP32[idx+5]=e.altKey;HEAP32[idx+6]=e.metaKey;HEAP32[idx+7]=e.repeat;HEAP32[idx+8]=e.charCode;HEAP32[idx+9]=e.keyCode;HEAP32[idx+10]=e.which;stringToUTF8(e.key||"",keyEventData+44,32);stringToUTF8(e.code||"",keyEventData+76,32);stringToUTF8(e.char||"",keyEventData+108,32);stringToUTF8(e.locale||"",keyEventData+140,32);if(getWasmTableEntry(callbackfunc)(eventTypeId,keyEventData,userData))e.preventDefault()};var eventHandler={target:findEventTarget(target),allowsDeferredCalls:true,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:keyEventHandlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_keydown_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){registerKeyEventCallback(target,userData,useCapture,callbackfunc,2,"keydown",targetThread);return 0}function _emscripten_set_keypress_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){registerKeyEventCallback(target,userData,useCapture,callbackfunc,1,"keypress",targetThread);return 0}function _emscripten_set_keyup_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){registerKeyEventCallback(target,userData,useCapture,callbackfunc,3,"keyup",targetThread);return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop){var browserIterationFunc=getWasmTableEntry(func);setMainLoop(browserIterationFunc,fps,simulateInfiniteLoop)}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(getWasmTableEntry(callbackfunc)(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_mousedown_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){registerMouseEventCallback(target,userData,useCapture,callbackfunc,5,"mousedown",targetThread);return 0}function _emscripten_set_mouseenter_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){registerMouseEventCallback(target,userData,useCapture,callbackfunc,33,"mouseenter",targetThread);return 0}function _emscripten_set_mouseleave_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){registerMouseEventCallback(target,userData,useCapture,callbackfunc,34,"mouseleave",targetThread);return 0}function _emscripten_set_mousemove_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){registerMouseEventCallback(target,userData,useCapture,callbackfunc,8,"mousemove",targetThread);return 0}function _emscripten_set_mouseup_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){registerMouseEventCallback(target,userData,useCapture,callbackfunc,6,"mouseup",targetThread);return 0}function fillPointerlockChangeEventData(eventStruct){var pointerLockElement=document.pointerLockElement||document.mozPointerLockElement||document.webkitPointerLockElement||document.msPointerLockElement;var isPointerlocked=!!pointerLockElement;HEAP32[eventStruct>>2]=isPointerlocked;var nodeName=JSEvents.getNodeNameForTarget(pointerLockElement);var id=pointerLockElement&&pointerLockElement.id?pointerLockElement.id:"";stringToUTF8(nodeName,eventStruct+4,128);stringToUTF8(id,eventStruct+132,128)}function registerPointerlockChangeEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.pointerlockChangeEvent)JSEvents.pointerlockChangeEvent=_malloc(260);var pointerlockChangeEventHandlerFunc=function(ev){var e=ev||event;var pointerlockChangeEvent=JSEvents.pointerlockChangeEvent;fillPointerlockChangeEventData(pointerlockChangeEvent);if(getWasmTableEntry(callbackfunc)(eventTypeId,pointerlockChangeEvent,userData))e.preventDefault()};var eventHandler={target:target,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:pointerlockChangeEventHandlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_pointerlockchange_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){if(!document||!document.body||!document.body.requestPointerLock&&!document.body.mozRequestPointerLock&&!document.body.webkitRequestPointerLock&&!document.body.msRequestPointerLock){return-1}target=findEventTarget(target);if(!target)return-4;registerPointerlockChangeEventCallback(target,userData,useCapture,callbackfunc,20,"pointerlockchange",targetThread);registerPointerlockChangeEventCallback(target,userData,useCapture,callbackfunc,20,"mozpointerlockchange",targetThread);registerPointerlockChangeEventCallback(target,userData,useCapture,callbackfunc,20,"webkitpointerlockchange",targetThread);registerPointerlockChangeEventCallback(target,userData,useCapture,callbackfunc,20,"mspointerlockchange",targetThread);return 0}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(getWasmTableEntry(callbackfunc)(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<et.length;++i){t=et[i];t.isChanged=t.onTarget=0;touches[t.identifier]=t}for(var i=0;i<e.changedTouches.length;++i){t=e.changedTouches[i];t.isChanged=1;touches[t.identifier]=t}for(var i=0;i<e.targetTouches.length;++i){touches[e.targetTouches[i].identifier].onTarget=1}var touchEvent=JSEvents.touchEvent;HEAPF64[touchEvent>>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(getWasmTableEntry(callbackfunc)(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 fillVisibilityChangeEventData(eventStruct){var visibilityStates=["hidden","visible","prerender","unloaded"];var visibilityState=visibilityStates.indexOf(document.visibilityState);HEAP32[eventStruct>>2]=document.hidden;HEAP32[eventStruct+4>>2]=visibilityState}function registerVisibilityChangeEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.visibilityChangeEvent)JSEvents.visibilityChangeEvent=_malloc(8);var visibilityChangeEventHandlerFunc=function(ev){var e=ev||event;var visibilityChangeEvent=JSEvents.visibilityChangeEvent;fillVisibilityChangeEventData(visibilityChangeEvent);if(getWasmTableEntry(callbackfunc)(eventTypeId,visibilityChangeEvent,userData))e.preventDefault()};var eventHandler={target:target,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:visibilityChangeEventHandlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_visibilitychange_callback_on_thread(userData,useCapture,callbackfunc,targetThread){if(!specialHTMLTargets[1]){return-4}registerVisibilityChangeEventCallback(specialHTMLTargets[1],userData,useCapture,callbackfunc,21,"visibilitychange",targetThread);return 0}function registerWheelEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.wheelEvent)JSEvents.wheelEvent=_malloc(104);var wheelHandlerFunc=function(ev){var e=ev||event;var wheelEvent=JSEvents.wheelEvent;fillMouseEventData(wheelEvent,e,target);HEAPF64[wheelEvent+72>>3]=e["deltaX"];HEAPF64[wheelEvent+80>>3]=e["deltaY"];HEAPF64[wheelEvent+88>>3]=e["deltaZ"];HEAP32[wheelEvent+96>>2]=e["deltaMode"];if(getWasmTableEntry(callbackfunc)(eventTypeId,wheelEvent,userData))e.preventDefault()};var eventHandler={target:target,allowsDeferredCalls:true,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:wheelHandlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_wheel_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){target=findEventTarget(target);if(typeof target.onwheel!="undefined"){registerWheelEventCallback(target,userData,useCapture,callbackfunc,9,"wheel",targetThread);return 0}else{return-1}}function _emscripten_set_window_title(title){setWindowTitle(UTF8ToString(title))}function _emscripten_sleep(){throw"Please compile your program with async support in order to use asynchronous operations like emscripten_sleep"}var ENV={};function getExecutableName(){return thisProgram||"./this.program"}function getEnvStrings(){if(!getEnvStrings.strings){var lang=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";var env={"USER":"web_user","LOGNAME":"web_user","PATH":"/","PWD":"/","HOME":"/home/web_user","LANG":lang,"_":getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(x+"="+env[x])}getEnvStrings.strings=strings}return getEnvStrings.strings}function _environ_get(__environ,environ_buf){var bufSize=0;getEnvStrings().forEach(function(string,i){var ptr=environ_buf+bufSize;HEAP32[__environ+i*4>>2]=ptr;writeAsciiToMemory(string,ptr);bufSize+=string.length+1});return 0}function _environ_sizes_get(penviron_count,penviron_buf_size){var strings=getEnvStrings();HEAP32[penviron_count>>2]=strings.length;var bufSize=0;strings.forEach(function(string){bufSize+=string.length+1});HEAP32[penviron_buf_size>>2]=bufSize;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 doReadv(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAPU32[iov>>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len)break}return ret}function _fd_read(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=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 doWritev(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAPU32[iov>>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=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 _getTempRet0(){return getTempRet0()}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 _glBindFramebuffer(target,framebuffer){GLctx.bindFramebuffer(target,GL.framebuffers[framebuffer])}function _glBindTexture(target,texture){GLctx.bindTexture(target,GL.textures[texture])}function _glBindVertexArray(vao){GLctx["bindVertexArray"](GL.vaos[vao])}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 _glCheckFramebufferStatus(x0){return GLctx["checkFramebufferStatus"](x0)}function _glClearColor(x0,x1,x2,x3){GLctx["clearColor"](x0,x1,x2,x3)}function _glCompileShader(shader){GLctx.compileShader(GL.shaders[shader])}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 _glDisable(x0){GLctx["disable"](x0)}function _glDrawArrays(mode,first,count){GLctx.drawArrays(mode,first,count)}function _glEnable(x0){GLctx["enable"](x0)}function _glEnableVertexAttribArray(index){GLctx.enableVertexAttribArray(index)}function _glFramebufferTexture2D(target,attachment,textarget,texture,level){GLctx.framebufferTexture2D(target,attachment,textarget,GL.textures[texture],level)}function _glGenBuffers(n,buffers){__glGenObject(n,buffers,"createBuffer",GL.buffers)}function _glGenFramebuffers(n,ids){__glGenObject(n,ids,"createFramebuffer",GL.framebuffers)}function _glGenTextures(n,textures){__glGenObject(n,textures,"createTexture",GL.textures)}function _glGenVertexArrays(n,arrays){__glGenObject(n,arrays,"createVertexArray",GL.vaos)}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<GLctx.getProgramParameter(program,35718);++i){program.maxUniformLength=Math.max(program.maxUniformLength,GLctx.getActiveUniform(program,i).name.length+1)}}HEAP32[p>>2]=program.maxUniformLength}else if(pname==35722){if(!program.maxAttributeLength){for(var i=0;i<GLctx.getProgramParameter(program,35721);++i){program.maxAttributeLength=Math.max(program.maxAttributeLength,GLctx.getActiveAttrib(program,i).name.length+1)}}HEAP32[p>>2]=program.maxAttributeLength}else if(pname==35381){if(!program.maxUniformBlockNameLength){for(var i=0;i<GLctx.getProgramParameter(program,35382);++i){program.maxUniformBlockNameLength=Math.max(program.maxUniformBlockNameLength,GLctx.getActiveUniformBlockName(program,i).length+1)}}HEAP32[p>>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<sizeAndId[0]){arrayIndex+=sizeAndId[1];if(uniformLocsById[arrayIndex]=uniformLocsById[arrayIndex]||GLctx.getUniformLocation(program,name)){return arrayIndex}}}else{GL.recordError(1281)}return-1}function _glLinkProgram(program){program=GL.programs[program];GLctx.linkProgram(program);program.uniformLocsById=0;program.uniformSizeAndIdsByName={}}function _glShaderSource(shader,count,string,length){var source=GL.getSource(shader,count,string,length);GLctx.shaderSource(GL.shaders[shader],source)}function _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 _glTexParameteri(x0,x1,x2){GLctx["texParameteri"](x0,x1,x2)}function _glUniform1f(location,v0){GLctx.uniform1f(webglGetUniformLocation(location),v0)}function _glUniform4f(location,v0,v1,v2,v3){GLctx.uniform4f(webglGetUniformLocation(location),v0,v1,v2,v3)}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)}var GLEW={isLinaroFork:1,extensions:null,error:{0:null,1:null,2:null,3:null,4:null,5:null,6:null,7:null,8:null},version:{1:null,2:null,3:null,4:null},errorStringConstantFromCode:function(error){if(GLEW.isLinaroFork){switch(error){case 4:return"OpenGL ES lib expected, found OpenGL lib";case 5:return"OpenGL lib expected, found OpenGL ES lib";case 6:return"Missing EGL version";case 7:return"EGL 1.1 and up are supported";default:break}}switch(error){case 0:return"No error";case 1:return"Missing GL version";case 2:return"GL 1.1 and up are supported";case 3:return"GLX 1.2 and up are supported";default:return null}},errorString:function(error){if(!GLEW.error[error]){var string=GLEW.errorStringConstantFromCode(error);if(!string){string="Unknown error";error=8}GLEW.error[error]=allocateUTF8(string)}return GLEW.error[error]},versionStringConstantFromCode:function(name){switch(name){case 1:return"1.10.0";case 2:return"1";case 3:return"10";case 4:return"0";default:return null}},versionString:function(name){if(!GLEW.version[name]){var string=GLEW.versionStringConstantFromCode(name);if(!string)return 0;GLEW.version[name]=allocateUTF8(string)}return GLEW.version[name]},extensionIsSupported:function(name){if(!GLEW.extensions){GLEW.extensions=UTF8ToString(_glGetString(7939)).split(" ")}if(GLEW.extensions.includes(name))return 1;return GLEW.extensions.includes("GL_"+name)}};function _glewInit(){return 0}function _glewIsSupported(name){var exts=UTF8ToString(name).split(" ");for(var i=0;i<exts.length;++i){if(!GLEW.extensionIsSupported(exts[i]))return 0}return 1}function _llvm_eh_typeid_for(type){return type}function _setTempRet0(val){setTempRet0(val)}function __isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function __arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]){}return sum}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=__isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function _strftime(s,maxsize,format,tm){var tm_zone=HEAP32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?UTF8ToString(tm_zone):""};var pattern=UTF8ToString(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value=="number"?value.toString():value||"";while(str.length<digits){str=character[0]+str}return str}function leadingNulls(value,digits){return leadingSomething(value,digits,"0")}function compareByDay(date1,date2){function sgn(value){return value<0?-1:value>0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}else{return thisDate.getFullYear()}}else{return thisDate.getFullYear()-1}}var EXPANSION_RULES_2={"%a":function(date){return WEEKDAYS[date.tm_wday].substring(0,3)},"%A":function(date){return WEEKDAYS[date.tm_wday]},"%b":function(date){return MONTHS[date.tm_mon].substring(0,3)},"%B":function(date){return MONTHS[date.tm_mon]},"%C":function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)},"%d":function(date){return leadingNulls(date.tm_mday,2)},"%e":function(date){return leadingSomething(date.tm_mday,2," ")},"%g":function(date){return getWeekBasedYear(date).toString().substring(2)},"%G":function(date){return getWeekBasedYear(date)},"%H":function(date){return leadingNulls(date.tm_hour,2)},"%I":function(date){var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)},"%j":function(date){return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,date.tm_mon-1),3)},"%m":function(date){return leadingNulls(date.tm_mon+1,2)},"%M":function(date){return leadingNulls(date.tm_min,2)},"%n":function(){return"\n"},"%p":function(date){if(date.tm_hour>=0&&date.tm_hour<12){return"AM"}else{return"PM"}},"%S":function(date){return leadingNulls(date.tm_sec,2)},"%t":function(){return"\t"},"%u":function(date){return date.tm_wday||7},"%U":function(date){var days=date.tm_yday+7-date.tm_wday;return leadingNulls(Math.floor(days/7),2)},"%V":function(date){var val=Math.floor((date.tm_yday+7-(date.tm_wday+6)%7)/7);if((date.tm_wday+371-date.tm_yday-2)%7<=2){val++}if(!val){val=52;var dec31=(date.tm_wday+7-date.tm_yday-1)%7;if(dec31==4||dec31==5&&__isLeapYear(date.tm_year%400-1)){val++}}else if(val==53){var jan1=(date.tm_wday+371-date.tm_yday)%7;if(jan1!=4&&(jan1!=3||!__isLeapYear(date.tm_year)))val=1}return leadingNulls(val,2)},"%w":function(date){return date.tm_wday},"%W":function(date){var days=date.tm_yday+7-(date.tm_wday+6)%7;return leadingNulls(Math.floor(days/7),2)},"%y":function(date){return(date.tm_year+1900).toString().substring(2)},"%Y":function(date){return date.tm_year+1900},"%z":function(date){var off=date.tm_gmtoff;var ahead=off>=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)},"%Z":function(date){return date.tm_zone},"%%":function(){return"%"}};pattern=pattern.replace(/%%/g,"\0\0");for(var rule in EXPANSION_RULES_2){if(pattern.includes(rule)){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}pattern=pattern.replace(/\0\0/g,"%");var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _strftime_l(s,maxsize,format,tm){return _strftime(s,maxsize,format,tm)}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();Module["FS_createPath"]=FS.createPath;Module["FS_createDataFile"]=FS.createDataFile;Module["FS_createPreloadedFile"]=FS.createPreloadedFile;Module["FS_unlink"]=FS.unlink;Module["FS_createLazyFile"]=FS.createLazyFile;Module["FS_createDevice"]=FS.createDevice;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)};var preloadedImages={};var preloadedAudios={};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)}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={"r":___assert_fail,"E":___cxa_allocate_exception,"m":___cxa_begin_catch,"y":___cxa_end_catch,"b":___cxa_find_matching_catch_2,"i":___cxa_find_matching_catch_3,"I":___cxa_free_exception,"ra":___cxa_rethrow,"D":___cxa_throw,"Fb":___cxa_uncaught_exceptions,"g":___resumeException,"oa":___syscall_fcntl64,"Kb":___syscall_ioctl,"Lb":___syscall_openat,"pa":__emscripten_date_now,"Mb":__emscripten_get_now_is_monotonic,"Z":_abort,"Ya":alertLevelCodeJS,"Ra":_eglBindAPI,"Ua":_eglChooseConfig,"Ye":_eglCreateContext,"_e":_eglCreateWindowSurface,"Ze":_eglDestroyContext,"$e":_eglDestroySurface,"Va":_eglGetConfigAttrib,"ba":_eglGetDisplay,"Xe":_eglGetError,"Sa":_eglInitialize,"af":_eglMakeCurrent,"We":_eglQueryString,"bf":_eglSwapBuffers,"cf":_eglSwapInterval,"Ta":_eglTerminate,"ef":_eglWaitGL,"df":_eglWaitNative,"v":_emscripten_asm_const_int,"Re":_emscripten_exit_fullscreen,"Ue":_emscripten_exit_pointerlock,"N":_emscripten_get_device_pixel_ratio,"F":_emscripten_get_element_css_size,"ea":_emscripten_get_gamepad_status,"O":_emscripten_get_now,"Wa":_emscripten_get_num_gamepads,"Ve":_emscripten_get_screen_size,"we":_emscripten_glActiveTexture,"ve":_emscripten_glAttachShader,"Ne":_emscripten_glBeginQueryEXT,"ue":_emscripten_glBindAttribLocation,"te":_emscripten_glBindBuffer,"se":_emscripten_glBindFramebuffer,"re":_emscripten_glBindRenderbuffer,"qe":_emscripten_glBindTexture,"Ee":_emscripten_glBindVertexArrayOES,"pe":_emscripten_glBlendColor,"oe":_emscripten_glBlendEquation,"ne":_emscripten_glBlendEquationSeparate,"le":_emscripten_glBlendFunc,"ke":_emscripten_glBlendFuncSeparate,"je":_emscripten_glBufferData,"ie":_emscripten_glBufferSubData,"he":_emscripten_glCheckFramebufferStatus,"ge":_emscripten_glClear,"fe":_emscripten_glClearColor,"ee":_emscripten_glClearDepthf,"de":_emscripten_glClearStencil,"ce":_emscripten_glColorMask,"be":_emscripten_glCompileShader,"ae":_emscripten_glCompressedTexImage2D,"$d":_emscripten_glCompressedTexSubImage2D,"_d":_emscripten_glCopyTexImage2D,"Zd":_emscripten_glCopyTexSubImage2D,"Yd":_emscripten_glCreateProgram,"Xd":_emscripten_glCreateShader,"Wd":_emscripten_glCullFace,"Vd":_emscripten_glDeleteBuffers,"Ud":_emscripten_glDeleteFramebuffers,"Td":_emscripten_glDeleteProgram,"Pe":_emscripten_glDeleteQueriesEXT,"Sd":_emscripten_glDeleteRenderbuffers,"Rd":_emscripten_glDeleteShader,"Qd":_emscripten_glDeleteTextures,"De":_emscripten_glDeleteVertexArraysOES,"Pd":_emscripten_glDepthFunc,"Od":_emscripten_glDepthMask,"Nd":_emscripten_glDepthRangef,"Md":_emscripten_glDetachShader,"Ld":_emscripten_glDisable,"Kd":_emscripten_glDisableVertexAttribArray,"Jd":_emscripten_glDrawArrays,"ze":_emscripten_glDrawArraysInstancedANGLE,"Ae":_emscripten_glDrawBuffersWEBGL,"Id":_emscripten_glDrawElements,"ye":_emscripten_glDrawElementsInstancedANGLE,"Hd":_emscripten_glEnable,"Gd":_emscripten_glEnableVertexAttribArray,"Me":_emscripten_glEndQueryEXT,"Fd":_emscripten_glFinish,"Ed":_emscripten_glFlush,"Dd":_emscripten_glFramebufferRenderbuffer,"Cd":_emscripten_glFramebufferTexture2D,"Bd":_emscripten_glFrontFace,"Ad":_emscripten_glGenBuffers,"yd":_emscripten_glGenFramebuffers,"Qe":_emscripten_glGenQueriesEXT,"xd":_emscripten_glGenRenderbuffers,"wd":_emscripten_glGenTextures,"Ce":_emscripten_glGenVertexArraysOES,"zd":_emscripten_glGenerateMipmap,"vd":_emscripten_glGetActiveAttrib,"ud":_emscripten_glGetActiveUniform,"td":_emscripten_glGetAttachedShaders,"sd":_emscripten_glGetAttribLocation,"rd":_emscripten_glGetBooleanv,"qd":_emscripten_glGetBufferParameteriv,"pd":_emscripten_glGetError,"od":_emscripten_glGetFloatv,"nd":_emscripten_glGetFramebufferAttachmentParameteriv,"md":_emscripten_glGetIntegerv,"kd":_emscripten_glGetProgramInfoLog,"ld":_emscripten_glGetProgramiv,"Ge":_emscripten_glGetQueryObjecti64vEXT,"Je":_emscripten_glGetQueryObjectivEXT,"Fe":_emscripten_glGetQueryObjectui64vEXT,"Ie":_emscripten_glGetQueryObjectuivEXT,"Ke":_emscripten_glGetQueryivEXT,"jd":_emscripten_glGetRenderbufferParameteriv,"hd":_emscripten_glGetShaderInfoLog,"gd":_emscripten_glGetShaderPrecisionFormat,"fd":_emscripten_glGetShaderSource,"id":_emscripten_glGetShaderiv,"ed":_emscripten_glGetString,"dd":_emscripten_glGetTexParameterfv,"cd":_emscripten_glGetTexParameteriv,"$c":_emscripten_glGetUniformLocation,"bd":_emscripten_glGetUniformfv,"ad":_emscripten_glGetUniformiv,"Yc":_emscripten_glGetVertexAttribPointerv,"_c":_emscripten_glGetVertexAttribfv,"Zc":_emscripten_glGetVertexAttribiv,"Xc":_emscripten_glHint,"Wc":_emscripten_glIsBuffer,"Vc":_emscripten_glIsEnabled,"Uc":_emscripten_glIsFramebuffer,"Tc":_emscripten_glIsProgram,"Oe":_emscripten_glIsQueryEXT,"Sc":_emscripten_glIsRenderbuffer,"Rc":_emscripten_glIsShader,"Qc":_emscripten_glIsTexture,"Be":_emscripten_glIsVertexArrayOES,"Pc":_emscripten_glLineWidth,"Oc":_emscripten_glLinkProgram,"Nc":_emscripten_glPixelStorei,"Mc":_emscripten_glPolygonOffset,"Le":_emscripten_glQueryCounterEXT,"Lc":_emscripten_glReadPixels,"Kc":_emscripten_glReleaseShaderCompiler,"Jc":_emscripten_glRenderbufferStorage,"Ic":_emscripten_glSampleCoverage,"Hc":_emscripten_glScissor,"Gc":_emscripten_glShaderBinary,"Fc":_emscripten_glShaderSource,"Ec":_emscripten_glStencilFunc,"Dc":_emscripten_glStencilFuncSeparate,"Cc":_emscripten_glStencilMask,"Bc":_emscripten_glStencilMaskSeparate,"Ac":_emscripten_glStencilOp,"zc":_emscripten_glStencilOpSeparate,"yc":_emscripten_glTexImage2D,"xc":_emscripten_glTexParameterf,"wc":_emscripten_glTexParameterfv,"vc":_emscripten_glTexParameteri,"uc":_emscripten_glTexParameteriv,"tc":_emscripten_glTexSubImage2D,"sc":_emscripten_glUniform1f,"rc":_emscripten_glUniform1fv,"qc":_emscripten_glUniform1i,"pc":_emscripten_glUniform1iv,"oc":_emscripten_glUniform2f,"nc":_emscripten_glUniform2fv,"mc":_emscripten_glUniform2i,"lc":_emscripten_glUniform2iv,"kc":_emscripten_glUniform3f,"ic":_emscripten_glUniform3fv,"hc":_emscripten_glUniform3i,"gc":_emscripten_glUniform3iv,"fc":_emscripten_glUniform4f,"ec":_emscripten_glUniform4fv,"dc":_emscripten_glUniform4i,"cc":_emscripten_glUniform4iv,"bc":_emscripten_glUniformMatrix2fv,"ac":_emscripten_glUniformMatrix3fv,"$b":_emscripten_glUniformMatrix4fv,"_b":_emscripten_glUseProgram,"Zb":_emscripten_glValidateProgram,"Yb":_emscripten_glVertexAttrib1f,"Xb":_emscripten_glVertexAttrib1fv,"Wb":_emscripten_glVertexAttrib2f,"Vb":_emscripten_glVertexAttrib2fv,"Ub":_emscripten_glVertexAttrib3f,"Tb":_emscripten_glVertexAttrib3fv,"Sb":_emscripten_glVertexAttrib4f,"Rb":_emscripten_glVertexAttrib4fv,"xe":_emscripten_glVertexAttribDivisorANGLE,"Pb":_emscripten_glVertexAttribPointer,"Ob":_emscripten_glViewport,"U":_emscripten_has_asyncify,"Nb":_emscripten_memcpy_big,"Se":_emscripten_request_fullscreen_strategy,"Qa":_emscripten_request_pointerlock,"Gb":_emscripten_resize_heap,"fa":_emscripten_sample_gamepad_data,"ua":_emscripten_set_beforeunload_callback_on_thread,"Ha":_emscripten_set_blur_callback_on_thread,"M":_emscripten_set_canvas_element_size,"aa":_emscripten_set_element_css_size,"Ia":_emscripten_set_focus_callback_on_thread,"xa":_emscripten_set_fullscreenchange_callback_on_thread,"da":_emscripten_set_gamepadconnected_callback_on_thread,"ca":_emscripten_set_gamepaddisconnected_callback_on_thread,"Aa":_emscripten_set_keydown_callback_on_thread,"ya":_emscripten_set_keypress_callback_on_thread,"za":_emscripten_set_keyup_callback_on_thread,"me":_emscripten_set_main_loop,"Oa":_emscripten_set_mousedown_callback_on_thread,"La":_emscripten_set_mouseenter_callback_on_thread,"Ka":_emscripten_set_mouseleave_callback_on_thread,"Pa":_emscripten_set_mousemove_callback_on_thread,"Ma":_emscripten_set_mouseup_callback_on_thread,"Ba":_emscripten_set_pointerlockchange_callback_on_thread,"wa":_emscripten_set_resize_callback_on_thread,"Da":_emscripten_set_touchcancel_callback_on_thread,"Fa":_emscripten_set_touchend_callback_on_thread,"Ea":_emscripten_set_touchmove_callback_on_thread,"Ga":_emscripten_set_touchstart_callback_on_thread,"va":_emscripten_set_visibilitychange_callback_on_thread,"Ja":_emscripten_set_wheel_callback_on_thread,"Te":_emscripten_set_window_title,"T":_emscripten_sleep,"Hb":_environ_get,"Ib":_environ_sizes_get,"la":_fd_close,"Jb":_fd_read,"Bb":_fd_seek,"na":_fd_write,"_a":freeStringJs,"a":_getTempRet0,"ub":_glAttachShader,"tb":_glBindAttribLocation,"kb":_glBindBuffer,"X":_glBindFramebuffer,"$":_glBindTexture,"hb":_glBindVertexArray,"Ca":_glBlendFunc,"jb":_glBufferData,"cb":_glCheckFramebufferStatus,"sa":_glClearColor,"yb":_glCompileShader,"vb":_glCreateProgram,"ia":_glCreateShader,"Na":_glDisable,"Qb":_glDrawArrays,"ta":_glEnable,"fb":_glEnableVertexAttribArray,"db":_glFramebufferTexture2D,"lb":_glGenBuffers,"eb":_glGenFramebuffers,"ha":_glGenTextures,"ib":_glGenVertexArrays,"qb":_glGetProgramInfoLog,"rb":_glGetProgramiv,"wb":_glGetShaderInfoLog,"xb":_glGetShaderiv,"mb":_glGetString,"pb":_glGetUniformLocation,"sb":_glLinkProgram,"zb":_glShaderSource,"ma":_glTexImage2D,"L":_glTexParameteri,"qa":_glUniform1f,"jc":_glUniform4f,"ob":_glUseProgram,"gb":_glVertexAttribPointer,"He":_glewInit,"nb":_glewIsSupported,"W":invoke_di,"w":invoke_dii,"_":invoke_diii,"ja":invoke_fiii,"u":invoke_i,"e":invoke_ii,"z":invoke_iiddi,"Q":invoke_iiddii,"h":invoke_iii,"d":invoke_iiii,"q":invoke_iiiii,"ka":invoke_iiiiid,"k":invoke_iiiiii,"B":invoke_iiiiiii,"ga":invoke_iiiiiiii,"S":invoke_iiiiiiiiiiii,"Ab":invoke_jiiii,"l":invoke_v,"J":invoke_vdddddddd,"j":invoke_vi,"V":invoke_vid,"P":invoke_viddd,"G":invoke_vidddd,"p":invoke_vidddi,"s":invoke_viddi,"x":invoke_vif,"c":invoke_vii,"Db":invoke_viid,"C":invoke_viidd,"f":invoke_viii,"t":invoke_viiii,"o":invoke_viiiiii,"A":invoke_viiiiiii,"K":invoke_viiiiiiiii,"H":invoke_viiiiiiiiii,"R":invoke_viiiiiiiiiiiiiii,"Cb":invoke_vij,"Za":isSafariJs,"n":_llvm_eh_typeid_for,"$a":readLocalstorageJs,"Y":_setTempRet0,"Eb":_strftime_l,"bb":testLocalstorageJs,"Xa":webLoadLevelJs,"ab":writeLocalstorageJs};var asm=createWasm();var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["gf"]).apply(null,arguments)};var _assertMouseDown=Module["_assertMouseDown"]=function(){return(_assertMouseDown=Module["_assertMouseDown"]=Module["asm"]["hf"]).apply(null,arguments)};var _main=Module["_main"]=function(){return(_main=Module["_main"]=Module["asm"]["jf"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["lf"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["mf"]).apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){return(___errno_location=Module["___errno_location"]=Module["asm"]["nf"]).apply(null,arguments)};var _setThrew=Module["_setThrew"]=function(){return(_setThrew=Module["_setThrew"]=Module["asm"]["of"]).apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return(stackSave=Module["stackSave"]=Module["asm"]["pf"]).apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return(stackRestore=Module["stackRestore"]=Module["asm"]["qf"]).apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return(stackAlloc=Module["stackAlloc"]=Module["asm"]["rf"]).apply(null,arguments)};var ___cxa_can_catch=Module["___cxa_can_catch"]=function(){return(___cxa_can_catch=Module["___cxa_can_catch"]=Module["asm"]["sf"]).apply(null,arguments)};var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=function(){return(___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=Module["asm"]["tf"]).apply(null,arguments)};var dynCall_vij=Module["dynCall_vij"]=function(){return(dynCall_vij=Module["dynCall_vij"]=Module["asm"]["uf"]).apply(null,arguments)};var dynCall_jiji=Module["dynCall_jiji"]=function(){return(dynCall_jiji=Module["dynCall_jiji"]=Module["asm"]["vf"]).apply(null,arguments)};var dynCall_ji=Module["dynCall_ji"]=function(){return(dynCall_ji=Module["dynCall_ji"]=Module["asm"]["wf"]).apply(null,arguments)};var dynCall_viijii=Module["dynCall_viijii"]=function(){return(dynCall_viijii=Module["dynCall_viijii"]=Module["asm"]["xf"]).apply(null,arguments)};var dynCall_jiiii=Module["dynCall_jiiii"]=function(){return(dynCall_jiiii=Module["dynCall_jiiii"]=Module["asm"]["yf"]).apply(null,arguments)};var dynCall_iiiiij=Module["dynCall_iiiiij"]=function(){return(dynCall_iiiiij=Module["dynCall_iiiiij"]=Module["asm"]["zf"]).apply(null,arguments)};var dynCall_iiiiijj=Module["dynCall_iiiiijj"]=function(){return(dynCall_iiiiijj=Module["dynCall_iiiiijj"]=Module["asm"]["Af"]).apply(null,arguments)};var dynCall_iiiiiijj=Module["dynCall_iiiiiijj"]=function(){return(dynCall_iiiiiijj=Module["dynCall_iiiiiijj"]=Module["asm"]["Bf"]).apply(null,arguments)};function invoke_iii(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vii(index,a1,a2){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ii(index,a1){var sp=stackSave();try{return getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viii(index,a1,a2,a3){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiii(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiii(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vi(index,a1){var sp=stackSave();try{getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_v(index){var sp=stackSave();try{getWasmTableEntry(index)()}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_i(index){var sp=stackSave();try{return getWasmTableEntry(index)()}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiddii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiddi(index,a1,a2,a3,a4){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viddi(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vidddi(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_dii(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_di(index,a1){var sp=stackSave();try{return getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viidd(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vdddddddd(index,a1,a2,a3,a4,a5,a6,a7,a8){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vidddd(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vid(index,a1,a2){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vif(index,a1,a2){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viddd(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiid(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_fiii(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_diii(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viid(index,a1,a2,a3){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vij(index,a1,a2,a3){var sp=stackSave();try{dynCall_vij(index,a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_jiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return dynCall_jiiii(index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}Module["ccall"]=ccall;Module["cwrap"]=cwrap;Module["addRunDependency"]=addRunDependency;Module["removeRunDependency"]=removeRunDependency;Module["FS_createPath"]=FS.createPath;Module["FS_createDataFile"]=FS.createDataFile;Module["FS_createPreloadedFile"]=FS.createPreloadedFile;Module["FS_createLazyFile"]=FS.createLazyFile;Module["FS_createDevice"]=FS.createDevice;Module["FS_unlink"]=FS.unlink;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"];args=args||[];var argc=args.length+1;var argv=stackAlloc((argc+1)*4);HEAP32[argv>>2]=allocateUTF8OnStack(thisProgram);for(var i=1;i<argc;i++){HEAP32[(argv>>2)+i]=allocateUTF8OnStack(args[i-1])}HEAP32[(argv>>2)+argc]=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;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();
|