@pkg-nec/emulatorjs 4.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/.gitattributes +1 -0
  2. package/CHANGES.md +528 -0
  3. package/CODE_OF_CONDUCT.md +128 -0
  4. package/CONTRIBUTING.md +31 -0
  5. package/LICENSE +674 -0
  6. package/README.md +284 -0
  7. package/data/compression/README.md +11 -0
  8. package/data/compression/extract7z.js +1 -0
  9. package/data/compression/extractzip.js +1 -0
  10. package/data/compression/libunrar.js +519 -0
  11. package/data/compression/libunrar.wasm +0 -0
  12. package/data/cores/README.md +22 -0
  13. package/data/cores/package.json +65 -0
  14. package/data/emulator.css +1614 -0
  15. package/data/loader.js +170 -0
  16. package/data/localization/README.md +63 -0
  17. package/data/localization/af-FR.json +339 -0
  18. package/data/localization/ar-AR.json +301 -0
  19. package/data/localization/ben-BEN.json +301 -0
  20. package/data/localization/de-GER.json +301 -0
  21. package/data/localization/el-GR.json +301 -0
  22. package/data/localization/en-US.json +339 -0
  23. package/data/localization/es-ES.json +310 -0
  24. package/data/localization/fa-AF.json +310 -0
  25. package/data/localization/hi-HI.json +301 -0
  26. package/data/localization/it-IT.json +302 -0
  27. package/data/localization/ja-JA.json +301 -0
  28. package/data/localization/jv-JV.json +301 -0
  29. package/data/localization/ko-KO.json +336 -0
  30. package/data/localization/pt-BR.json +361 -0
  31. package/data/localization/retroarch.json +617 -0
  32. package/data/localization/ro-RO.json +310 -0
  33. package/data/localization/ru-RU.json +301 -0
  34. package/data/localization/tr-TR.json +310 -0
  35. package/data/localization/vi-VN.json +302 -0
  36. package/data/localization/zh-CN.json +351 -0
  37. package/data/src/GameManager.js +464 -0
  38. package/data/src/compression.js +142 -0
  39. package/data/src/emulator.js +6158 -0
  40. package/data/src/gamepad.js +167 -0
  41. package/data/src/nipplejs.js +1 -0
  42. package/data/src/shaders.js +236 -0
  43. package/data/src/socket.io.min.js +7 -0
  44. package/data/src/storage.js +125 -0
  45. package/data/version.json +5 -0
  46. package/docs/Logo-light.png +0 -0
  47. package/docs/Logo.png +0 -0
  48. package/docs/Logo.svg +4487 -0
  49. package/docs/contributors.json +46 -0
  50. package/docs/contributors.md +125 -0
  51. package/docs/favicon.ico +0 -0
  52. package/index.html +269 -0
  53. package/package.json +35 -0
@@ -0,0 +1 @@
1
+ var Module,Module=Module||((void 0!==Module?Module:null)||{}),moduleOverrides={},key;for(key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB=!1,ENVIRONMENT_IS_WORKER=!1,ENVIRONMENT_IS_NODE=!1,ENVIRONMENT_IS_SHELL=!1,nodeFS,nodePath,TRY_USE_DUMP,key;if(Module.ENVIRONMENT)if("WEB"===Module.ENVIRONMENT)ENVIRONMENT_IS_WEB=!0;else if("WORKER"===Module.ENVIRONMENT)ENVIRONMENT_IS_WORKER=!0;else if("NODE"===Module.ENVIRONMENT)ENVIRONMENT_IS_NODE=!0;else{if("SHELL"!==Module.ENVIRONMENT)throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.");ENVIRONMENT_IS_SHELL=!0}else ENVIRONMENT_IS_WEB="object"==typeof window,ENVIRONMENT_IS_WORKER="function"==typeof importScripts,ENVIRONMENT_IS_NODE="object"==typeof process&&"function"==typeof require&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE)Module.print||(Module.print=console.log),Module.printErr||(Module.printErr=console.warn),Module.read=function(e,r){nodeFS=nodeFS||require("fs"),e=(nodePath=nodePath||require("path")).normalize(e);e=nodeFS.readFileSync(e);return r?e:e.toString()},Module.readBinary=function(e){e=Module.read(e,!0);return e.buffer||(e=new Uint8Array(e)),assert(e.buffer),e},Module.load=function(e){globalEval(read(e))},Module.thisProgram||(1<process.argv.length?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),"undefined"!=typeof module&&(module.exports=Module),process.on("uncaughtException",function(e){if(!(e instanceof ExitStatus))throw e}),Module.inspect=function(){return"[Emscripten Module object]"};else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),"undefined"!=typeof printErr&&(Module.printErr=printErr),"undefined"!=typeof read?Module.read=read:Module.read=function(){throw"no read() available"},Module.readBinary=function(e){if("function"==typeof readbuffer)return new Uint8Array(readbuffer(e));e=read(e,"binary");return assert("object"==typeof e),e},"undefined"!=typeof scriptArgs?Module.arguments=scriptArgs:"undefined"!=typeof arguments&&(Module.arguments=arguments),"function"==typeof quit&&(Module.quit=function(e,r){quit(e)});else{if(!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER)throw"Unknown runtime environment. Where are we?";Module.read=function(e){var r=new XMLHttpRequest;return r.open("GET",e,!1),r.send(null),r.responseText},ENVIRONMENT_IS_WORKER&&(Module.readBinary=function(e){var r=new XMLHttpRequest;return r.open("GET",e,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}),Module.readAsync=function(e,r,t){var n=new XMLHttpRequest;n.open("GET",e,!0),n.responseType="arraybuffer",n.onload=function(){200==n.status||0==n.status&&n.response?r(n.response):t()},n.onerror=t,n.send(null)},"undefined"!=typeof arguments&&(Module.arguments=arguments),"undefined"!=typeof console?(Module.print||(Module.print=function(e){console.log(e)}),Module.printErr||(Module.printErr=function(e){console.warn(e)})):(TRY_USE_DUMP=!1,Module.print||(Module.print=TRY_USE_DUMP&&"undefined"!=typeof dump?function(e){dump(e)}:function(e){})),ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),void 0===Module.setWindowTitle&&(Module.setWindowTitle=function(e){document.title=e})}function globalEval(e){eval.call(null,e)}for(key in!Module.load&&Module.read&&(Module.load=function(e){globalEval(Module.read(e))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.quit||(Module.quit=function(e,r){throw r}),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[],moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);moduleOverrides=void 0;var Runtime={setTempRet0:function(e){return tempRet0=e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:if("*"===e[e.length-1])return Runtime.QUANTUM_SIZE;if("i"!==e[0])return 0;var r=parseInt(e.substr(1));return assert(r%8==0),r/8}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,r){return"double"===r||"i64"===r?7&e&&(assert(4==(7&e)),e+=4):assert(0==(3&e)),e},getAlignSize:function(e,r,t){return t||"i64"!=e&&"double"!=e?e?Math.min(r||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(r,8):8},dynCall:function(e,r,t){return t&&t.length?(assert(t.length==e.length-1),assert("dynCall_"+e in Module,"bad function pointer type - no table for sig '"+e+"'"),Module["dynCall_"+e].apply(null,[r].concat(t))):(assert(1==e.length),assert("dynCall_"+e in Module,"bad function pointer type - no table for sig '"+e+"'"),Module["dynCall_"+e].call(null,r))},functionPointers:[],addFunction:function(e){for(var r=0;r<Runtime.functionPointers.length;r++)if(!Runtime.functionPointers[r])return Runtime.functionPointers[r]=e,2*(1+r);throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."},removeFunction:function(e){Runtime.functionPointers[(e-2)/2]=null},warnOnce:function(e){Runtime.warnOnce.shown||(Runtime.warnOnce.shown={}),Runtime.warnOnce.shown[e]||(Runtime.warnOnce.shown[e]=1,Module.printErr(e))},funcWrappers:{},getFuncWrapper:function(r,t){if(r){assert(t),Runtime.funcWrappers[t]||(Runtime.funcWrappers[t]={});var e=Runtime.funcWrappers[t];return e[r]||(1===t.length?e[r]=function(){return Runtime.dynCall(t,r)}:2===t.length?e[r]=function(e){return Runtime.dynCall(t,r,[e])}:e[r]=function(){return Runtime.dynCall(t,r,Array.prototype.slice.call(arguments))}),e[r]}},getCompilerSetting:function(e){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"},stackAlloc:function(e){var r=STACKTOP;return assert((0|(STACKTOP=(STACKTOP=STACKTOP+e|0)+15&-16))<(0|STACK_MAX)|0),r},staticAlloc:function(e){var r=STATICTOP;return STATICTOP=(STATICTOP=STATICTOP+(assert(!staticSealed),e)|0)+15&-16,r},dynamicAlloc:function(e){assert(DYNAMICTOP_PTR);var r=HEAP32[DYNAMICTOP_PTR>>2],e=-16&(r+e+15|0);if((HEAP32[DYNAMICTOP_PTR>>2]=e,TOTAL_MEMORY<=e)&&!enlargeMemory())return HEAP32[DYNAMICTOP_PTR>>2]=r,0;return r},alignMemory:function(e,r){return e=Math.ceil(e/(r||16))*(r||16)},makeBigInt:function(e,r,t){return t?+(e>>>0)+4294967296*(r>>>0):+(e>>>0)+4294967296*(0|r)},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var ABORT=0,EXITSTATUS=0,cwrap,ccall;function assert(e,r){e||abort("Assertion failed: "+r)}function getCFunc(_0x5d9040){var _0x23b817=Module["_"+_0x5d9040];if(!_0x23b817)try{_0x23b817=eval("_"+_0x5d9040)}catch(_0x2989f0){}return assert(_0x23b817,"Cannot call unknown function "+_0x5d9040+" (perhaps LLVM optimizations or closure removed it?)"),_0x23b817}function setValue(e,r,t,n){switch("*"===(t=t||"i8").charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":HEAP8[e>>0]=r;break;case"i16":HEAP16[e>>1]=r;break;case"i32":HEAP32[e>>2]=r;break;case"i64":tempI64=[r>>>0,(tempDouble=r,1<=+Math_abs(tempDouble)?0<tempDouble?(0|Math_min(+Math_floor(tempDouble/4294967296),4294967295))>>>0:~~+Math_ceil((tempDouble-(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=r;break;case"double":HEAPF64[e>>3]=r;break;default:abort("invalid type for setValue: "+t)}}function getValue(e,r,t){switch("*"===(r=r||"i8").charAt(r.length-1)&&(r="i32"),r){case"i1":case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+r)}return null}!function(){var _0x2ad24a={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var r=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,r),r},stringToC:function(e){var r,t=0;return null!=e&&0!==e&&(r=1+(e.length<<2),stringToUTF8(e,t=Runtime.stackAlloc(r),r)),t}},_0x3c7171={string:_0x2ad24a.stringToC,array:_0x2ad24a.arrayToC};ccall=function(e,r,t,n,o){var e=getCFunc(e),i=[],a=0;if(assert("array"!==r,'Return type should not be "array".'),n)for(var s=0;s<n.length;s++){var u=_0x3c7171[t[s]];u?(0===a&&(a=Runtime.stackSave()),i[s]=u(n[s])):i[s]=n[s]}e=e.apply(null,i);if(o&&o.async||"object"!=typeof EmterpreterAsync||assert(!EmterpreterAsync.state,"cannot start async op with normal JS calling ccall"),o&&o.async&&assert(!r,"async ccalls cannot return values"),"string"===r&&(e=Pointer_stringify(e)),0!==a){if(o&&o.async)return void EmterpreterAsync.asyncFinalizers.push(function(){Runtime.stackRestore(a)});Runtime.stackRestore(a)}return e};var _0x4e9080=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function _0x525a72(e){e=e.toString().match(_0x4e9080).slice(1);return{arguments:e[0],body:e[1],returnValue:e[2]}}var _0x5507b1=null;function _0x576877(){if(!_0x5507b1)for(var e in _0x5507b1={},_0x2ad24a)_0x2ad24a.hasOwnProperty(e)&&(_0x5507b1[e]=_0x525a72(_0x2ad24a[e]))}cwrap=function cwrap(_0x557d23,_0x36bd20,_0x501373){_0x501373=_0x501373||[];var _0xc18cca=getCFunc(_0x557d23),_0x10a9e9=_0x501373.every(function(e){return"number"===e}),_0xda1dce="string"!==_0x36bd20;if(_0xda1dce&&_0x10a9e9)return _0xc18cca;var _0x3c93ad=_0x501373.map(function(e,r){return"$"+r}),_0x6f14b3="(function("+_0x3c93ad.join(",")+") {",_0x2c5f4f=_0x501373.length;if(!_0x10a9e9){_0x576877(),_0x6f14b3+="var stack = "+_0x5507b1.stackSave.body+";";for(var _0x32e944=0;_0x32e944<_0x2c5f4f;_0x32e944++){var _0x596eed=_0x3c93ad[_0x32e944],_0x31887c=_0x501373[_0x32e944],_0x2abb1c;"number"!==_0x31887c&&(_0x2abb1c=_0x5507b1[_0x31887c+"ToC"],_0x6f14b3+="var "+_0x2abb1c.arguments+" = "+_0x596eed+";",_0x6f14b3+=_0x2abb1c.body+";",_0x6f14b3+=_0x596eed+"=("+_0x2abb1c.returnValue+");")}}var _0x7f6ef=_0x525a72(function(){return _0xc18cca}).returnValue,_0x296ada;return _0x6f14b3+="var ret = "+_0x7f6ef+"("+_0x3c93ad.join(",")+");",_0xda1dce||(_0x296ada=_0x525a72(function(){return Pointer_stringify}).returnValue,_0x6f14b3+="ret = "+_0x296ada+"(ret);"),_0x6f14b3+="if (typeof EmterpreterAsync === 'object') { assert(!EmterpreterAsync.state, 'cannot start async op with normal JS calling cwrap') }",_0x10a9e9||(_0x576877(),_0x6f14b3+=_0x5507b1.stackRestore.body.replace("()","(stack)")+";"),_0x6f14b3+="return ret})",eval(_0x6f14b3)}}(),Module.ccall=ccall,Module.cwrap=cwrap,Module.setValue=setValue,Module.getValue=getValue;var ALLOC_NORMAL=0,ALLOC_STACK=1,ALLOC_STATIC=2,ALLOC_DYNAMIC=3,ALLOC_NONE=4;function allocate(e,r,t,n){var o,i="number"==typeof e?(o=!0,e):(o=!1,e.length),a="string"==typeof r?r:null,s=t==ALLOC_NONE?n:["function"==typeof _malloc?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][void 0===t?ALLOC_STATIC:t](Math.max(i,a?1:r.length));if(o){var u,n=s;for(assert(0==(3&s)),u=s+(-4&i);n<u;n+=4)HEAP32[n>>2]=0;for(u=s+i;n<u;)HEAP8[n++>>0]=0;return s}if("i8"===a)return e.subarray||e.slice?HEAPU8.set(e,s):HEAPU8.set(new Uint8Array(e),s),s;for(var c,l,f,d=0;d<i;){var E=e[d];"function"==typeof E&&(E=Runtime.getFunctionIndex(E)),0!==(c=a||r[d])?(assert(c,"Must know what type to store in allocate!"),"i64"==c&&(c="i32"),setValue(s+d,E,c),f!==c&&(l=Runtime.getNativeTypeSize(c),f=c),d+=l):d++}return s}function getMemory(e){return staticSealed?runtimeInitialized?_malloc(e):Runtime.dynamicAlloc(e):Runtime.staticAlloc(e)}function Pointer_stringify(e,r){if(0===r||!e)return"";for(var t,n=0,o=0;assert(e+o<TOTAL_MEMORY),n|=t=HEAPU8[e+o>>0],(0!=t||r)&&(o++,!r||o!=r););r=r||o;var i="";if(n<128){for(var a;0<r;)a=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(r,1024))),i=i?i+a:a,e+=1024,r-=1024;return i}return Module.UTF8ToString(e)}function AsciiToString(e){for(var r="";;){var t=HEAP8[e++>>0];if(!t)return r;r+=String.fromCharCode(t)}}function stringToAscii(e,r){return writeAsciiToMemory(e,r,!1)}Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE,Module.allocate=allocate,Module.getMemory=getMemory,Module.Pointer_stringify=Pointer_stringify,Module.AsciiToString=AsciiToString,Module.stringToAscii=stringToAscii;var UTF8Decoder="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function UTF8ArrayToString(e,r){for(var t=r;e[t];)++t;if(16<t-r&&e.subarray&&UTF8Decoder)return UTF8Decoder.decode(e.subarray(r,t));for(var n,o,i,a,s,u="";;){if(!(a=e[r++]))return u;128&a?(s=63&e[r++],192!=(224&a)?(i=63&e[r++],(a=224==(240&a)?(15&a)<<12|s<<6|i:(n=63&e[r++],240==(248&a)?(7&a)<<18|s<<12|i<<6|n:(o=63&e[r++],248==(252&a)?(3&a)<<24|s<<18|i<<12|n<<6|o:(1&a)<<30|s<<24|i<<18|n<<12|o<<6|63&e[r++])))<65536?u+=String.fromCharCode(a):(o=a-65536,u+=String.fromCharCode(55296|o>>10,56320|1023&o))):u+=String.fromCharCode((31&a)<<6|s)):u+=String.fromCharCode(a)}}function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}function stringToUTF8Array(e,r,t,n){if(!(0<n))return 0;for(var o=t,i=t+n-1,a=0;a<e.length;++a){var s=e.charCodeAt(a);if(55296<=s&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++a)),s<=127){if(i<=t)break;r[t++]=s}else if(s<=2047){if(i<=t+1)break;r[t++]=192|s>>6,r[t++]=128|63&s}else if(s<=65535){if(i<=t+2)break;r[t++]=224|s>>12,r[t++]=128|s>>6&63,r[t++]=128|63&s}else if(s<=2097151){if(i<=t+3)break;r[t++]=240|s>>18,r[t++]=128|s>>12&63,r[t++]=128|s>>6&63,r[t++]=128|63&s}else if(s<=67108863){if(i<=t+4)break;r[t++]=248|s>>24,r[t++]=128|s>>18&63,r[t++]=128|s>>12&63,r[t++]=128|s>>6&63,r[t++]=128|63&s}else{if(i<=t+5)break;r[t++]=252|s>>30,r[t++]=128|s>>24&63,r[t++]=128|s>>18&63,r[t++]=128|s>>12&63,r[t++]=128|s>>6&63,r[t++]=128|63&s}}return r[t]=0,t-o}function stringToUTF8(e,r,t){return assert("number"==typeof t,"stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!"),stringToUTF8Array(e,HEAPU8,r,t)}function lengthBytesUTF8(e){for(var r=0,t=0;t<e.length;++t){var n=e.charCodeAt(t);55296<=n&&n<=57343&&(n=65536+((1023&n)<<10)|1023&e.charCodeAt(++t)),n<=127?++r:r+=n<=2047?2:n<=65535?3:n<=2097151?4:n<=67108863?5:6}return r}Module.UTF8ArrayToString=UTF8ArrayToString,Module.UTF8ToString=UTF8ToString,Module.stringToUTF8Array=stringToUTF8Array,Module.stringToUTF8=stringToUTF8,Module.lengthBytesUTF8=lengthBytesUTF8;var UTF16Decoder="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0;function demangle(e){var r=Module.___cxa_demangle||Module.__cxa_demangle;if(r){try{var t=e.substr(1),n=lengthBytesUTF8(t)+1,o=_malloc(n);stringToUTF8(t,o,n);var i=_malloc(4),a=r(o,0,0,i);if(0===getValue(i,"i32")&&a)return Pointer_stringify(a)}catch(e){}finally{o&&_free(o),i&&_free(i),a&&_free(a)}return e}return Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),e}function demangleAll(e){return e.replace(/__Z[\w\d_]+/g,function(e){var r=demangle(e);return e===r?e:e+" ["+r+"]"})}function jsStackTrace(){var r=new Error;if(!r.stack){try{throw new Error(0)}catch(e){r=e}if(!r.stack)return"(no stack trace available)"}return r.stack.toString()}function stackTrace(){var e=jsStackTrace();return Module.extraStackTrace&&(e+="\n"+Module.extraStackTrace()),demangleAll(e)}Module.stackTrace=stackTrace;var WASM_PAGE_SIZE=65536,ASMJS_PAGE_SIZE=16777216,MIN_TOTAL_MEMORY=16777216,HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64,STATIC_BASE,STATICTOP,staticSealed,STACK_BASE,STACKTOP,STACK_MAX,DYNAMIC_BASE,DYNAMICTOP_PTR,byteLength;function alignUp(e,r){return 0<e%r&&(e+=r-e%r),e}function updateGlobalBuffer(e){Module.buffer=buffer=e}function updateGlobalBufferViews(){Module.HEAP8=HEAP8=new Int8Array(buffer),Module.HEAP16=HEAP16=new Int16Array(buffer),Module.HEAP32=HEAP32=new Int32Array(buffer),Module.HEAPU8=HEAPU8=new Uint8Array(buffer),Module.HEAPU16=HEAPU16=new Uint16Array(buffer),Module.HEAPU32=HEAPU32=new Uint32Array(buffer),Module.HEAPF32=HEAPF32=new Float32Array(buffer),Module.HEAPF64=HEAPF64=new Float64Array(buffer)}function writeStackCookie(){assert(0==(3&STACK_MAX)),HEAPU32[(STACK_MAX>>2)-1]=34821223,HEAPU32[(STACK_MAX>>2)-2]=2310721022}function checkStackCookie(){if(34821223==HEAPU32[(STACK_MAX>>2)-1]&&2310721022==HEAPU32[(STACK_MAX>>2)-2]||abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x"+HEAPU32[(STACK_MAX>>2)-2].toString(16)+" "+HEAPU32[(STACK_MAX>>2)-1].toString(16)),1668509029!==HEAP32[0])throw"Runtime error: The application has corrupted its heap memory area (address zero)!"}function abortStackOverflow(e){abort("Stack overflow! Attempted to allocate "+e+" bytes on the stack, but stack has only "+(STACK_MAX-Module.asm.stackSave()+e)+" bytes available!")}function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){assert(HEAP32[DYNAMICTOP_PTR>>2]>TOTAL_MEMORY);var e=Module.usingWasm?WASM_PAGE_SIZE:ASMJS_PAGE_SIZE,r=2147483648-e;if(HEAP32[DYNAMICTOP_PTR>>2]>r)return Module.printErr("Cannot enlarge memory, asked to go up to "+HEAP32[DYNAMICTOP_PTR>>2]+" bytes, but the limit is "+r+" bytes!"),!1;var t=TOTAL_MEMORY;for(TOTAL_MEMORY=Math.max(TOTAL_MEMORY,MIN_TOTAL_MEMORY);TOTAL_MEMORY<HEAP32[DYNAMICTOP_PTR>>2];)TOTAL_MEMORY=TOTAL_MEMORY<=536870912?alignUp(2*TOTAL_MEMORY,e):Math.min(alignUp((3*TOTAL_MEMORY+2147483648)/4,e),r);var n=Date.now(),o=Module.reallocBuffer(TOTAL_MEMORY);return o&&o.byteLength==TOTAL_MEMORY?(updateGlobalBuffer(o),updateGlobalBufferViews(),Module.printErr("enlarged memory arrays from "+t+" to "+TOTAL_MEMORY+", took "+(Date.now()-n)+" ms (has ArrayBuffer.transfer? "+!!ArrayBuffer.transfer+")"),Module.usingWasm||Module.printErr("Warning: Enlarging memory arrays, this is not fast! "+[t,TOTAL_MEMORY]),!0):(Module.printErr("Failed to grow the heap from "+t+" bytes to "+TOTAL_MEMORY+" bytes, not enough memory!"),o&&Module.printErr("Expected to get back a buffer of size "+TOTAL_MEMORY+" bytes, but instead got back a buffer of size "+o.byteLength),TOTAL_MEMORY=t,!1)}STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0,staticSealed=!1,Module.reallocBuffer||(Module.reallocBuffer=function(e){var r,t;try{ArrayBuffer.transfer?t=ArrayBuffer.transfer(buffer,e):(r=HEAP8,t=new ArrayBuffer(e),new Int8Array(t).set(r))}catch(e){return!1}return!!_emscripten_replace_memory(t)&&t});try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get),byteLength(new ArrayBuffer(4))}catch(_0x5226f8){byteLength=function(e){return e.byteLength}}var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||16777216;function getTotalMemory(){return TOTAL_MEMORY}if(TOTAL_MEMORY<TOTAL_STACK&&Module.printErr("TOTAL_MEMORY should be larger than TOTAL_STACK, was "+TOTAL_MEMORY+"! (TOTAL_STACK="+TOTAL_STACK+")"),assert("undefined"!=typeof Int32Array&&"undefined"!=typeof Float64Array&&void 0!==Int32Array.prototype.subarray&&void 0!==Int32Array.prototype.set,"JS engine does not provide full typed array support"),Module.buffer?(buffer=Module.buffer,assert(buffer.byteLength===TOTAL_MEMORY,"provided buffer should be "+TOTAL_MEMORY+" bytes, but it is "+buffer.byteLength)):(buffer=new ArrayBuffer(TOTAL_MEMORY),assert(buffer.byteLength===TOTAL_MEMORY)),updateGlobalBufferViews(),HEAP32[0]=1668509029,HEAP16[1]=25459,115!==HEAPU8[2]||99!==HEAPU8[3])throw"Runtime error: expected the system to be little-endian!";function callRuntimeCallbacks(e){for(;0<e.length;){var r,t=e.shift();"function"!=typeof t?"number"==typeof(r=t.func)?void 0===t.arg?Module.dynCall_v(r):Module.dynCall_vi(r,t.arg):r(void 0===t.arg?null:t.arg):t()}}Module.HEAP=HEAP,Module.buffer=buffer,Module.HEAP8=HEAP8,Module.HEAP16=HEAP16,Module.HEAP32=HEAP32,Module.HEAPU8=HEAPU8,Module.HEAPU16=HEAPU16,Module.HEAPU32=HEAPU32,Module.HEAPF32=HEAPF32,Module.HEAPF64=HEAPF64;var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for("function"==typeof Module.preRun&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){checkStackCookie(),runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){checkStackCookie(),callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){checkStackCookie(),callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(checkStackCookie(),Module.postRun)for("function"==typeof Module.postRun&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}function addOnInit(e){__ATINIT__.unshift(e)}function addOnPreMain(e){__ATMAIN__.unshift(e)}function addOnExit(e){__ATEXIT__.unshift(e)}function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}function intArrayFromString(e,r,t){t=0<t?t:lengthBytesUTF8(e)+1,t=new Array(t),e=stringToUTF8Array(e,t,0,t.length);return r&&(t.length=e),t}function intArrayToString(e){for(var r=[],t=0;t<e.length;t++){var n=e[t];255<n&&(assert(!1,"Character code "+n+" ("+String.fromCharCode(n)+") at offset "+t+" not in 0x00-0xFF."),n&=255),r.push(String.fromCharCode(n))}return r.join("")}function writeStringToMemory(e,r,t){var n,o;Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!"),t&&(o=r+lengthBytesUTF8(e),n=HEAP8[o]),stringToUTF8(e,r,1/0),t&&(HEAP8[o]=n)}function writeArrayToMemory(e,r){assert(0<=e.length,"writeArrayToMemory array must have a length (should be an array or typed array)"),HEAP8.set(e,r)}function writeAsciiToMemory(e,r,t){for(var n=0;n<e.length;++n)assert(e.charCodeAt(n)===e.charCodeAt(n)&255),HEAP8[r++>>0]=e.charCodeAt(n);t||(HEAP8[r>>0]=0)}Module.addOnPreRun=addOnPreRun,Module.addOnInit=addOnInit,Module.addOnPreMain=addOnPreMain,Module.addOnExit=addOnExit,Module.addOnPostRun=addOnPostRun,Module.intArrayFromString=intArrayFromString,Module.intArrayToString=intArrayToString,Module.writeStringToMemory=writeStringToMemory,Module.writeArrayToMemory=writeArrayToMemory,Module.writeAsciiToMemory=writeAsciiToMemory,Math.imul&&-5===Math.imul(4294967295,5)||(Math.imul=function(e,r){var t=65535&e,n=65535&r;return t*n+((e>>>16)*n+t*(r>>>16)<<16)|0}),Math.imul=Math.imul,Math.clz32||(Math.clz32=function(e){e>>>=0;for(var r=0;r<32;r++)if(e&1<<31-r)return r;return 32}),Math.clz32=Math.clz32,Math.trunc||(Math.trunc=function(e){return e<0?Math.ceil(e):Math.floor(e)}),Math.trunc=Math.trunc;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_round=Math.round,Math_min=Math.min,Math_clz32=Math.clz32,Math_trunc=Math.trunc,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null,runDependencyTracking={};function getUniqueRunDependency(e){for(var r=e;;){if(!runDependencyTracking[e])return e;e=r+Math.random()}return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),e?(assert(!runDependencyTracking[e]),runDependencyTracking[e]=1,null===runDependencyWatcher&&"undefined"!=typeof setInterval&&(runDependencyWatcher=setInterval(function(){if(ABORT)return clearInterval(runDependencyWatcher),void(runDependencyWatcher=null);var e,r=!1;for(e in runDependencyTracking)r||(r=!0,Module.printErr("still waiting on run dependencies:")),Module.printErr("dependency: "+e);r&&Module.printErr("(end of list)")},1e4))):Module.printErr("warning: run dependency added without ID")}function removeRunDependency(e){runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),e?(assert(runDependencyTracking[e]),delete runDependencyTracking[e]):Module.printErr("warning: run dependency removed without ID"),0==runDependencies&&(null!==runDependencyWatcher&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled&&(e=dependenciesFulfilled,dependenciesFulfilled=null,e()))}Module.addRunDependency=addRunDependency,Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var ASM_CONSTS=[function(e,r,t){for(var n=new Uint8Array(r),o=0;o<r;o++)n[o]=getValue(t+o);postMessage({t:2,file:Pointer_stringify(e),size:r,data:n}),n=null},function(){postMessage({t:1})},function(e,r){postMessage({t:4,current:e,total:r})}];function _emscripten_asm_const_i(e){return ASM_CONSTS[e]()}function _emscripten_asm_const_iiii(e,r,t,n){return ASM_CONSTS[e](r,t,n)}function _emscripten_asm_const_iii(e,r,t){return ASM_CONSTS[e](r,t)}STATIC_BASE=Runtime.GLOBAL_BASE,STATICTOP=STATIC_BASE+5408,__ATINIT__.push(),allocate([0,0,0,0,100,16,183,29,200,32,110,59,172,48,217,38,144,65,220,118,244,81,107,107,88,97,178,77,60,113,5,80,32,131,184,237,68,147,15,240,232,163,214,214,140,179,97,203,176,194,100,155,212,210,211,134,120,226,10,160,28,242,189,189,1,1,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,13,0,0,0,15,0,0,0,17,0,0,0,19,0,0,0,23,0,0,0,27,0,0,0,31,0,0,0,35,0,0,0,43,0,0,0,51,0,0,0,59,0,0,0,67,0,0,0,83,0,0,0,99,0,0,0,115,0,0,0,131,0,0,0,163,0,0,0,195,0,0,0,227,0,0,0,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,9,0,0,0,9,0,0,0,10,0,0,0,10,0,0,0,11,0,0,0,11,0,0,0,12,0,0,0,12,0,0,0,13,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,7,0,0,0,9,0,0,0,13,0,0,0,17,0,0,0,25,0,0,0,33,0,0,0,49,0,0,0,65,0,0,0,97,0,0,0,129,0,0,0,193,0,0,0,1,1,0,0,129,1,0,0,1,2,0,0,1,3,0,0,1,4,0,0,1,6,0,0,1,8,0,0,1,12,0,0,1,16,0,0,1,24,0,0,1,32,0,0,1,48,0,0,1,64,0,0,1,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,232,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,3,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,20,17,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,3,0,0,114,98,0,32,37,100,46,10,0,123,32,118,97,114,32,100,97,116,97,32,61,32,110,101,119,32,85,105,110,116,56,65,114,114,97,121,40,36,49,41,59,32,102,111,114,40,118,97,114,32,105,61,48,59,105,60,36,49,59,105,43,43,41,32,123,32,100,97,116,97,91,105,93,32,61,32,103,101,116,86,97,108,117,101,40,36,50,43,105,41,59,32,125,32,112,111,115,116,77,101,115,115,97,103,101,40,123,34,116,34,58,50,44,32,34,102,105,108,101,34,58,80,111,105,110,116,101,114,95,115,116,114,105,110,103,105,102,121,40,36,48,41,44,32,34,115,105,122,101,34,58,36,49,44,32,34,100,97,116,97,34,58,100,97,116,97,125,41,59,32,100,97,116,97,32,61,32,110,117,108,108,59,32,125,0,123,32,112,111,115,116,77,101,115,115,97,103,101,40,123,34,116,34,58,49,125,41,59,32,125,0,70,105,108,101,32,67,82,67,32,100,105,102,102,101,114,115,32,102,114,111,109,32,90,73,80,32,67,82,67,46,32,70,105,108,101,58,32,48,120,37,120,44,32,90,73,80,58,32,48,120,37,120,46,10,0,67,111,117,108,100,110,39,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,46,0,68,105,100,110,39,116,32,114,101,97,100,32,119,104,111,108,101,32,102,105,108,101,46,0,123,32,112,111,115,116,77,101,115,115,97,103,101,40,123,34,116,34,58,52,44,32,34,99,117,114,114,101,110,116,34,58,36,48,44,32,34,116,111,116,97,108,34,58,36,49,125,41,32,125,0,5,5,4,0,16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15,2,3,7,0,3,3,11,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,46,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,114,119,97,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);var tempDoublePtr=STATICTOP;STATICTOP+=16,assert(tempDoublePtr%8==0);var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86},ERRNO_MESSAGES={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"};function ___setErrNo(e){return Module.___errno_location?HEAP32[Module.___errno_location()>>2]=e:Module.printErr("failed to set errno from JS"),e}var PATH={splitPath:function(e){return/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(e).slice(1)},normalizeArray:function(e,r){for(var t=0,n=e.length-1;0<=n;n--){var o=e[n];"."===o?e.splice(n,1):".."===o?(e.splice(n,1),t++):t&&(e.splice(n,1),t--)}if(r)for(;t;t--)e.unshift("..");return e},normalize:function(e){var r="/"===e.charAt(0),t="/"===e.substr(-1);return(e=PATH.normalizeArray(e.split("/").filter(function(e){return!!e}),!r).join("/"))||r||(e="."),e&&t&&(e+="/"),(r?"/":"")+e},dirname:function(e){var r=PATH.splitPath(e),e=r[0],r=r[1];return e||r?e+(r=r&&r.substr(0,r.length-1)):"."},basename:function(e){if("/"===e)return"/";var r=e.lastIndexOf("/");return-1===r?e:e.substr(r+1)},extname:function(e){return PATH.splitPath(e)[3]},join:function(){var e=Array.prototype.slice.call(arguments,0);return PATH.normalize(e.join("/"))},join2:function(e,r){return PATH.normalize(e+"/"+r)},resolve:function(){for(var e="",r=!1,t=arguments.length-1;-1<=t&&!r;t--){var n=0<=t?arguments[t]:FS.cwd();if("string"!=typeof n)throw new TypeError("Arguments to path.resolve must be strings");if(!n)return"";e=n+"/"+e,r="/"===n.charAt(0)}return(r?"/":"")+(e=PATH.normalizeArray(e.split("/").filter(function(e){return!!e}),!r).join("/"))||"."},relative:function(e,r){function t(e){for(var r=0;r<e.length&&""===e[r];r++);for(var t=e.length-1;0<=t&&""===e[t];t--);return t<r?[]:e.slice(r,t-r+1)}e=PATH.resolve(e).substr(1),r=PATH.resolve(r).substr(1);for(var n=t(e.split("/")),o=t(r.split("/")),i=Math.min(n.length,o.length),a=i,s=0;s<i;s++)if(n[s]!==o[s]){a=s;break}for(var u=[],s=a;s<n.length;s++)u.push("..");return(u=u.concat(o.slice(a))).join("/")}},TTY={ttys:[],init:function(){},shutdown:function(){},register:function(e,r){TTY.ttys[e]={input:[],output:[],ops:r},FS.registerDevice(e,TTY.stream_ops)},stream_ops:{open:function(e){var r=TTY.ttys[e.node.rdev];if(!r)throw new FS.ErrnoError(ERRNO_CODES.ENODEV);e.tty=r,e.seekable=!1},close:function(e){e.tty.ops.flush(e.tty)},flush:function(e){e.tty.ops.flush(e.tty)},read:function(e,r,t,n,o){if(!e.tty||!e.tty.ops.get_char)throw new FS.ErrnoError(ERRNO_CODES.ENXIO);for(var i,a=0,s=0;s<n;s++){try{i=e.tty.ops.get_char(e.tty)}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}if(void 0===i&&0===a)throw new FS.ErrnoError(ERRNO_CODES.EAGAIN);if(null==i)break;a++,r[t+s]=i}return a&&(e.node.timestamp=Date.now()),a},write:function(e,r,t,n,o){if(!e.tty||!e.tty.ops.put_char)throw new FS.ErrnoError(ERRNO_CODES.ENXIO);for(var i=0;i<n;i++)try{e.tty.ops.put_char(e.tty,r[t+i])}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return n&&(e.node.timestamp=Date.now()),i}},default_tty_ops:{get_char:function(e){if(!e.input.length){var r=null;if(ENVIRONMENT_IS_NODE){var t=new Buffer(256),n=0,o="win32"!=process.platform,i=process.stdin.fd;if(o){var a=!1;try{i=fs.openSync("/dev/stdin","r"),a=!0}catch(e){}}try{n=fs.readSync(i,t,0,256,null)}catch(e){if(-1==e.toString().indexOf("EOF"))throw e;n=0}a&&fs.closeSync(i),r=0<n?t.slice(0,n).toString("utf-8"):null}else"undefined"!=typeof window&&"function"==typeof window.prompt?null!==(r=window.prompt("Input: "))&&(r+="\n"):"function"==typeof readline&&null!==(r=readline())&&(r+="\n");if(!r)return null;e.input=intArrayFromString(r,!0)}return e.input.shift()},put_char:function(e,r){null===r||10===r?(Module.print(UTF8ArrayToString(e.output,0)),e.output=[]):0!=r&&e.output.push(r)},flush:function(e){e.output&&0<e.output.length&&(Module.print(UTF8ArrayToString(e.output,0)),e.output=[])}},default_tty1_ops:{put_char:function(e,r){null===r||10===r?(Module.printErr(UTF8ArrayToString(e.output,0)),e.output=[]):0!=r&&e.output.push(r)},flush:function(e){e.output&&0<e.output.length&&(Module.printErr(UTF8ArrayToString(e.output,0)),e.output=[])}}},MEMFS={ops_table:null,mount:function(e){return MEMFS.createNode(null,"/",16895,0)},createNode:function(e,r,t,n){if(FS.isBlkdev(t)||FS.isFIFO(t))throw new FS.ErrnoError(ERRNO_CODES.EPERM);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}});n=FS.createNode(e,r,t,n);return FS.isDir(n.mode)?(n.node_ops=MEMFS.ops_table.dir.node,n.stream_ops=MEMFS.ops_table.dir.stream,n.contents={}):FS.isFile(n.mode)?(n.node_ops=MEMFS.ops_table.file.node,n.stream_ops=MEMFS.ops_table.file.stream,n.usedBytes=0,n.contents=null):FS.isLink(n.mode)?(n.node_ops=MEMFS.ops_table.link.node,n.stream_ops=MEMFS.ops_table.link.stream):FS.isChrdev(n.mode)&&(n.node_ops=MEMFS.ops_table.chrdev.node,n.stream_ops=MEMFS.ops_table.chrdev.stream),n.timestamp=Date.now(),e&&(e.contents[r]=n),n},getFileDataAsRegularArray:function(e){if(e.contents&&e.contents.subarray){for(var r=[],t=0;t<e.usedBytes;++t)r.push(e.contents[t]);return r}return e.contents},getFileDataAsTypedArray:function(e){return e.contents?e.contents.subarray?e.contents.subarray(0,e.usedBytes):new Uint8Array(e.contents):new Uint8Array},expandFileStorage:function(e,r){if(e.contents&&e.contents.subarray&&r>e.contents.length&&(e.contents=MEMFS.getFileDataAsRegularArray(e),e.usedBytes=e.contents.length),!e.contents||e.contents.subarray){var t=e.contents?e.contents.length:0;if(r<=t)return;r=Math.max(r,t*(t<1048576?2:1.125)|0),0!=t&&(r=Math.max(r,256));t=e.contents;return e.contents=new Uint8Array(r),void(0<e.usedBytes&&e.contents.set(t.subarray(0,e.usedBytes),0))}for(!e.contents&&0<r&&(e.contents=[]);e.contents.length<r;)e.contents.push(0)},resizeFileStorage:function(e,r){if(e.usedBytes!=r){if(0==r)return e.contents=null,void(e.usedBytes=0);if(!e.contents||e.contents.subarray){var t=e.contents;return e.contents=new Uint8Array(new ArrayBuffer(r)),t&&e.contents.set(t.subarray(0,Math.min(r,e.usedBytes))),void(e.usedBytes=r)}if(e.contents||(e.contents=[]),e.contents.length>r)e.contents.length=r;else for(;e.contents.length<r;)e.contents.push(0);e.usedBytes=r}},node_ops:{getattr:function(e){var r={};return r.dev=FS.isChrdev(e.mode)?e.id:1,r.ino=e.id,r.mode=e.mode,r.nlink=1,r.uid=0,r.gid=0,r.rdev=e.rdev,FS.isDir(e.mode)?r.size=4096:FS.isFile(e.mode)?r.size=e.usedBytes:FS.isLink(e.mode)?r.size=e.link.length:r.size=0,r.atime=new Date(e.timestamp),r.mtime=new Date(e.timestamp),r.ctime=new Date(e.timestamp),r.blksize=4096,r.blocks=Math.ceil(r.size/r.blksize),r},setattr:function(e,r){void 0!==r.mode&&(e.mode=r.mode),void 0!==r.timestamp&&(e.timestamp=r.timestamp),void 0!==r.size&&MEMFS.resizeFileStorage(e,r.size)},lookup:function(e,r){throw FS.genericErrors[ERRNO_CODES.ENOENT]},mknod:function(e,r,t,n){return MEMFS.createNode(e,r,t,n)},rename:function(e,r,t){if(FS.isDir(e.mode)){var n;try{n=FS.lookupNode(r,t)}catch(e){}if(n)for(var o in n.contents)throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}delete e.parent.contents[e.name],e.name=t,(r.contents[t]=e).parent=r},unlink:function(e,r){delete e.contents[r]},rmdir:function(e,r){for(var t in FS.lookupNode(e,r).contents)throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY);delete e.contents[r]},readdir:function(e){var r,t=[".",".."];for(r in e.contents)e.contents.hasOwnProperty(r)&&t.push(r);return t},symlink:function(e,r,t){r=MEMFS.createNode(e,r,41471,0);return r.link=t,r},readlink:function(e){if(!FS.isLink(e.mode))throw new FS.ErrnoError(ERRNO_CODES.EINVAL);return e.link}},stream_ops:{read:function(e,r,t,n,o){var i=e.node.contents;if(o>=e.node.usedBytes)return 0;var a=Math.min(e.node.usedBytes-o,n);if(assert(0<=a),8<a&&i.subarray)r.set(i.subarray(o,o+a),t);else for(var s=0;s<a;s++)r[t+s]=i[o+s];return a},write:function(e,r,t,n,o,i){if(!n)return 0;var a=e.node;if(a.timestamp=Date.now(),r.subarray&&(!a.contents||a.contents.subarray)){if(i)return assert(0===o,"canOwn must imply no weird position inside the file"),a.contents=r.subarray(t,t+n),a.usedBytes=n;if(0===a.usedBytes&&0===o)return a.contents=new Uint8Array(r.subarray(t,t+n)),a.usedBytes=n;if(o+n<=a.usedBytes)return a.contents.set(r.subarray(t,t+n),o),n}if(MEMFS.expandFileStorage(a,o+n),a.contents.subarray&&r.subarray)a.contents.set(r.subarray(t,t+n),o);else for(var s=0;s<n;s++)a.contents[o+s]=r[t+s];return a.usedBytes=Math.max(a.usedBytes,o+n),n},llseek:function(e,r,t){if(1===t?r+=e.position:2===t&&FS.isFile(e.node.mode)&&(r+=e.node.usedBytes),r<0)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);return r},allocate:function(e,r,t){MEMFS.expandFileStorage(e.node,r+t),e.node.usedBytes=Math.max(e.node.usedBytes,r+t)},mmap:function(e,r,t,n,o,i,a){if(!FS.isFile(e.node.mode))throw new FS.ErrnoError(ERRNO_CODES.ENODEV);var s,u,c=e.node.contents;if(2&a||c.buffer!==r&&c.buffer!==r.buffer){if((0<o||o+n<e.node.usedBytes)&&(c=c.subarray?c.subarray(o,o+n):Array.prototype.slice.call(c,o,o+n)),u=!0,!(s=_malloc(n)))throw new FS.ErrnoError(ERRNO_CODES.ENOMEM);r.set(c,s)}else u=!1,s=c.byteOffset;return{ptr:s,allocated:u}},msync:function(e,r,t,n,o){if(!FS.isFile(e.node.mode))throw new FS.ErrnoError(ERRNO_CODES.ENODEV);if(2&o)return 0;MEMFS.stream_ops.write(e,r,0,n,t,!1);return 0}}},IDBFS={dbs:{},indexedDB:function(){if("undefined"!=typeof indexedDB)return indexedDB;var e=null;return"object"==typeof window&&(e=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB),assert(e,"IDBFS used, but indexedDB not supported"),e},DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:function(e){return MEMFS.mount.apply(null,arguments)},syncfs:function(r,n,o){IDBFS.getLocalSet(r,function(e,t){return e?o(e):void IDBFS.getRemoteSet(r,function(e,r){if(e)return o(e);e=n?r:t,r=n?t:r;IDBFS.reconcile(e,r,o)})})},getDB:function(e,r){var t,n=IDBFS.dbs[e];if(n)return r(null,n);try{t=IDBFS.indexedDB().open(e,IDBFS.DB_VERSION)}catch(e){return r(e)}if(!t)return r("Unable to connect to IndexedDB");t.onupgradeneeded=function(e){var r=e.target.result,e=e.target.transaction,r=r.objectStoreNames.contains(IDBFS.DB_STORE_NAME)?e.objectStore(IDBFS.DB_STORE_NAME):r.createObjectStore(IDBFS.DB_STORE_NAME);r.indexNames.contains("timestamp")||r.createIndex("timestamp","timestamp",{unique:!1})},t.onsuccess=function(){n=t.result,IDBFS.dbs[e]=n,r(null,n)},t.onerror=function(e){r(this.error),e.preventDefault()}},getLocalSet:function(e,r){var t={};function n(e){return"."!==e&&".."!==e}function o(r){return function(e){return PATH.join2(r,e)}}for(var i=FS.readdir(e.mountpoint).filter(n).map(o(e.mountpoint));i.length;){var a,s=i.pop();try{a=FS.stat(s)}catch(e){return r(e)}FS.isDir(a.mode)&&i.push.apply(i,FS.readdir(s).filter(n).map(o(s))),t[s]={timestamp:a.mtime}}return r(null,{type:"local",entries:t})},getRemoteSet:function(e,t){var n={};IDBFS.getDB(e.mountpoint,function(e,r){if(e)return t(e);e=r.transaction([IDBFS.DB_STORE_NAME],"readonly");e.onerror=function(e){t(this.error),e.preventDefault()},e.objectStore(IDBFS.DB_STORE_NAME).index("timestamp").openKeyCursor().onsuccess=function(e){e=e.target.result;if(!e)return t(null,{type:"remote",db:r,entries:n});n[e.primaryKey]={timestamp:e.key},e.continue()}})},loadLocalEntry:function(e,r){try{var t=FS.lookupPath(e).node,n=FS.stat(e)}catch(e){return r(e)}return FS.isDir(n.mode)?r(null,{timestamp:n.mtime,mode:n.mode}):FS.isFile(n.mode)?(t.contents=MEMFS.getFileDataAsTypedArray(t),r(null,{timestamp:n.mtime,mode:n.mode,contents:t.contents})):r(new Error("node type not supported"))},storeLocalEntry:function(e,r,t){try{if(FS.isDir(r.mode))FS.mkdir(e,r.mode);else{if(!FS.isFile(r.mode))return t(new Error("node type not supported"));FS.writeFile(e,r.contents,{encoding:"binary",canOwn:!0})}FS.chmod(e,r.mode),FS.utime(e,r.timestamp,r.timestamp)}catch(e){return t(e)}t(null)},removeLocalEntry:function(e,r){try{FS.lookupPath(e);var t=FS.stat(e);FS.isDir(t.mode)?FS.rmdir(e):FS.isFile(t.mode)&&FS.unlink(e)}catch(e){return r(e)}r(null)},loadRemoteEntry:function(e,r,t){r=e.get(r);r.onsuccess=function(e){t(null,e.target.result)},r.onerror=function(e){t(this.error),e.preventDefault()}},storeRemoteEntry:function(e,r,t,n){r=e.put(t,r);r.onsuccess=function(){n(null)},r.onerror=function(e){n(this.error),e.preventDefault()}},removeRemoteEntry:function(e,r,t){r=e.delete(r);r.onsuccess=function(){t(null)},r.onerror=function(e){t(this.error),e.preventDefault()}},reconcile:function(n,o,r){var i=0,a=[];Object.keys(n.entries).forEach(function(e){var r=n.entries[e],t=o.entries[e];(!t||r.timestamp>t.timestamp)&&(a.push(e),i++)});var t=[];if(Object.keys(o.entries).forEach(function(e){o.entries[e];n.entries[e]||(t.push(e),i++)}),!i)return r(null);var s=0,e=("remote"===n.type?n:o).db.transaction([IDBFS.DB_STORE_NAME],"readwrite"),u=e.objectStore(IDBFS.DB_STORE_NAME);function c(e){return e?c.errored?void 0:(c.errored=!0,r(e)):++s>=i?r(null):void 0}e.onerror=function(e){c(this.error),e.preventDefault()},a.sort().forEach(function(t){"local"===o.type?IDBFS.loadRemoteEntry(u,t,function(e,r){return e?c(e):void IDBFS.storeLocalEntry(t,r,c)}):IDBFS.loadLocalEntry(t,function(e,r){return e?c(e):void IDBFS.storeRemoteEntry(u,t,r,c)})}),t.sort().reverse().forEach(function(e){"local"===o.type?IDBFS.removeLocalEntry(e,c):IDBFS.removeRemoteEntry(u,e,c)})}},NODEFS={isWindows:!1,staticInit:function(){NODEFS.isWindows=!!process.platform.match(/^win/)},mount:function(e){return assert(ENVIRONMENT_IS_NODE),NODEFS.createNode(null,"/",NODEFS.getMode(e.opts.root),0)},createNode:function(e,r,t,n){if(!FS.isDir(t)&&!FS.isFile(t)&&!FS.isLink(t))throw new FS.ErrnoError(ERRNO_CODES.EINVAL);t=FS.createNode(e,r,t);return t.node_ops=NODEFS.node_ops,t.stream_ops=NODEFS.stream_ops,t},getMode:function(e){var r;try{r=fs.lstatSync(e),NODEFS.isWindows&&(r.mode=r.mode|(146&r.mode)>>1)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return r.mode},realPath:function(e){for(var r=[];e.parent!==e;)r.push(e.name),e=e.parent;return r.push(e.mount.opts.root),r.reverse(),PATH.join.apply(null,r)},flagsToPermissionStringMap:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},flagsToPermissionString:function(e){if(e&=-2097153,e&=-2049,e&=-32769,(e&=-524289)in NODEFS.flagsToPermissionStringMap)return NODEFS.flagsToPermissionStringMap[e];throw new FS.ErrnoError(ERRNO_CODES.EINVAL)},node_ops:{getattr:function(e){var r,t=NODEFS.realPath(e);try{r=fs.lstatSync(t)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return NODEFS.isWindows&&!r.blksize&&(r.blksize=4096),NODEFS.isWindows&&!r.blocks&&(r.blocks=(r.size+r.blksize-1)/r.blksize|0),{dev:r.dev,ino:r.ino,mode:r.mode,nlink:r.nlink,uid:r.uid,gid:r.gid,rdev:r.rdev,size:r.size,atime:r.atime,mtime:r.mtime,ctime:r.ctime,blksize:r.blksize,blocks:r.blocks}},setattr:function(e,r){var t,n=NODEFS.realPath(e);try{void 0!==r.mode&&(fs.chmodSync(n,r.mode),e.mode=r.mode),void 0!==r.timestamp&&(t=new Date(r.timestamp),fs.utimesSync(n,t,t)),void 0!==r.size&&fs.truncateSync(n,r.size)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}},lookup:function(e,r){var t=PATH.join2(NODEFS.realPath(e),r),t=NODEFS.getMode(t);return NODEFS.createNode(e,r,t)},mknod:function(e,r,t,n){var o=NODEFS.createNode(e,r,t,n),i=NODEFS.realPath(o);try{FS.isDir(o.mode)?fs.mkdirSync(i,o.mode):fs.writeFileSync(i,"",{mode:o.mode})}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return o},rename:function(e,r,t){var n=NODEFS.realPath(e),o=PATH.join2(NODEFS.realPath(r),t);try{fs.renameSync(n,o)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}},unlink:function(e,r){var t=PATH.join2(NODEFS.realPath(e),r);try{fs.unlinkSync(t)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}},rmdir:function(e,r){var t=PATH.join2(NODEFS.realPath(e),r);try{fs.rmdirSync(t)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}},readdir:function(e){var r=NODEFS.realPath(e);try{return fs.readdirSync(r)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}},symlink:function(e,r,t){var n=PATH.join2(NODEFS.realPath(e),r);try{fs.symlinkSync(t,n)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}},readlink:function(e){var r=NODEFS.realPath(e);try{return r=fs.readlinkSync(r),NODEJS_PATH.relative(NODEJS_PATH.resolve(e.mount.opts.root),r)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}},stream_ops:{open:function(e){var r=NODEFS.realPath(e.node);try{FS.isFile(e.node.mode)&&(e.nfd=fs.openSync(r,NODEFS.flagsToPermissionString(e.flags)))}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}},close:function(e){try{FS.isFile(e.node.mode)&&e.nfd&&fs.closeSync(e.nfd)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}},read:function(e,r,t,n,o){if(0===n)return 0;var i,a=new Buffer(n);try{i=fs.readSync(e.nfd,a,0,n,o)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(0<i)for(var s=0;s<i;s++)r[t+s]=a[s];return i},write:function(e,r,t,n,o){var i,a=new Buffer(r.subarray(t,t+n));try{i=fs.writeSync(e.nfd,a,0,n,o)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}return i},llseek:function(e,r,t){var n=r;if(1===t)n+=e.position;else if(2===t&&FS.isFile(e.node.mode))try{n+=fs.fstatSync(e.nfd).size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(n<0)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);return n}}},WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:function(e){assert(ENVIRONMENT_IS_WORKER),WORKERFS.reader||(WORKERFS.reader=new FileReaderSync);var i=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0),a={};function n(e){for(var r=e.split("/"),t=i,n=0;n<r.length-1;n++){var o=r.slice(0,n+1).join("/");a[o]||(a[o]=WORKERFS.createNode(t,r[n],WORKERFS.DIR_MODE,0)),t=a[o]}return t}function o(e){e=e.split("/");return e[e.length-1]}return Array.prototype.forEach.call(e.opts.files||[],function(e){WORKERFS.createNode(n(e.name),o(e.name),WORKERFS.FILE_MODE,0,e,e.lastModifiedDate)}),(e.opts.blobs||[]).forEach(function(e){WORKERFS.createNode(n(e.name),o(e.name),WORKERFS.FILE_MODE,0,e.data)}),(e.opts.packages||[]).forEach(function(t){t.metadata.files.forEach(function(e){var r=e.filename.substr(1);WORKERFS.createNode(n(r),o(r),WORKERFS.FILE_MODE,0,t.blob.slice(e.start,e.end))})}),i},createNode:function(e,r,t,n,o,i){var a=FS.createNode(e,r,t);return a.mode=t,a.node_ops=WORKERFS.node_ops,a.stream_ops=WORKERFS.stream_ops,a.timestamp=(i||new Date).getTime(),assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE),t===WORKERFS.FILE_MODE?(a.size=o.size,a.contents=o):(a.size=4096,a.contents={}),e&&(e.contents[r]=a),a},node_ops:{getattr:function(e){return{dev:1,ino:void 0,mode:e.mode,nlink:1,uid:0,gid:0,rdev:void 0,size:e.size,atime:new Date(e.timestamp),mtime:new Date(e.timestamp),ctime:new Date(e.timestamp),blksize:4096,blocks:Math.ceil(e.size/4096)}},setattr:function(e,r){void 0!==r.mode&&(e.mode=r.mode),void 0!==r.timestamp&&(e.timestamp=r.timestamp)},lookup:function(e,r){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)},mknod:function(e,r,t,n){throw new FS.ErrnoError(ERRNO_CODES.EPERM)},rename:function(e,r,t){throw new FS.ErrnoError(ERRNO_CODES.EPERM)},unlink:function(e,r){throw new FS.ErrnoError(ERRNO_CODES.EPERM)},rmdir:function(e,r){throw new FS.ErrnoError(ERRNO_CODES.EPERM)},readdir:function(e){var r,t=[".",".."];for(r in e.contents)e.contents.hasOwnProperty(r)&&t.push(r);return t},symlink:function(e,r,t){throw new FS.ErrnoError(ERRNO_CODES.EPERM)},readlink:function(e){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}},stream_ops:{read:function(e,r,t,n,o){if(o>=e.node.size)return 0;o=e.node.contents.slice(o,o+n),n=WORKERFS.reader.readAsArrayBuffer(o);return r.set(new Uint8Array(n),t),o.size},write:function(e,r,t,n,o){throw new FS.ErrnoError(ERRNO_CODES.EIO)},llseek:function(e,r,t){if(1===t?r+=e.position:2===t&&FS.isFile(e.node.mode)&&(r+=e.node.size),r<0)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);return r}}};STATICTOP+=16,STATICTOP+=16,STATICTOP+=16;var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:!1,ignorePermissions:!0,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)},lookupPath:function(e,r){if(r=r||{},!(e=PATH.resolve(FS.cwd(),e)))return{path:"",node:null};var t,n={follow_mount:!0,recurse_count:0};for(t in n)void 0===r[t]&&(r[t]=n[t]);if(8<r.recurse_count)throw new FS.ErrnoError(ERRNO_CODES.ELOOP);for(var o=PATH.normalizeArray(e.split("/").filter(function(e){return!!e}),!1),i=FS.root,a="/",s=0;s<o.length;s++){var u=s===o.length-1;if(u&&r.parent)break;if(i=FS.lookupNode(i,o[s]),a=PATH.join2(a,o[s]),FS.isMountpoint(i)&&(!u||u&&r.follow_mount)&&(i=i.mounted.root),!u||r.follow)for(var c=0;FS.isLink(i.mode);){var l=FS.readlink(a),a=PATH.resolve(PATH.dirname(a),l),i=FS.lookupPath(a,{recurse_count:r.recurse_count}).node;if(40<c++)throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}}return{path:a,node:i}},getPath:function(e){for(var r;;){if(FS.isRoot(e)){var t=e.mount.mountpoint;return r?"/"!==t[t.length-1]?t+"/"+r:t+r:t}r=r?e.name+"/"+r:e.name,e=e.parent}},hashName:function(e,r){for(var t=0,n=0;n<r.length;n++)t=(t<<5)-t+r.charCodeAt(n)|0;return(e+t>>>0)%FS.nameTable.length},hashAddNode:function(e){var r=FS.hashName(e.parent.id,e.name);e.name_next=FS.nameTable[r],FS.nameTable[r]=e},hashRemoveNode:function(e){var r=FS.hashName(e.parent.id,e.name);if(FS.nameTable[r]===e)FS.nameTable[r]=e.name_next;else for(var t=FS.nameTable[r];t;){if(t.name_next===e){t.name_next=e.name_next;break}t=t.name_next}},lookupNode:function(e,r){var t=FS.mayLookup(e);if(t)throw new FS.ErrnoError(t,e);for(var t=FS.hashName(e.id,r),n=FS.nameTable[t];n;n=n.name_next){var o=n.name;if(n.parent.id===e.id&&o===r)return n}return FS.lookup(e,r)},createNode:function(e,r,t,n){FS.FSNode||(FS.FSNode=function(e,r,t,n){e=e||this,this.parent=e,this.mount=e.mount,this.mounted=null,this.id=FS.nextInode++,this.name=r,this.mode=t,this.node_ops={},this.stream_ops={},this.rdev=n},FS.FSNode.prototype={},Object.defineProperties(FS.FSNode.prototype,{read:{get:function(){return 365==(365&this.mode)},set:function(e){e?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146==(146&this.mode)},set:function(e){e?this.mode|=146:this.mode&=-147}},isFolder:{get:function(){return FS.isDir(this.mode)}},isDevice:{get:function(){return FS.isChrdev(this.mode)}}}));n=new FS.FSNode(e,r,t,n);return FS.hashAddNode(n),n},destroyNode:function(e){FS.hashRemoveNode(e)},isRoot:function(e){return e===e.parent},isMountpoint:function(e){return!!e.mounted},isFile:function(e){return 32768==(61440&e)},isDir:function(e){return 16384==(61440&e)},isLink:function(e){return 40960==(61440&e)},isChrdev:function(e){return 8192==(61440&e)},isBlkdev:function(e){return 24576==(61440&e)},isFIFO:function(e){return 4096==(61440&e)},isSocket:function(e){return 49152==(49152&e)},flagModes:{r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function(e){var r=FS.flagModes[e];if(void 0===r)throw new Error("Unknown file open mode: "+e);return r},flagsToPermissionString:function(e){var r=["r","w","rw"][3&e];return 512&e&&(r+="w"),r},nodePermissions:function(e,r){return FS.ignorePermissions||(-1===r.indexOf("r")||292&e.mode)&&(-1===r.indexOf("w")||146&e.mode)&&(-1===r.indexOf("x")||73&e.mode)?0:ERRNO_CODES.EACCES},mayLookup:function(e){var r=FS.nodePermissions(e,"x");return r||(e.node_ops.lookup?0:ERRNO_CODES.EACCES)},mayCreate:function(e,r){try{FS.lookupNode(e,r);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(e,"wx")},mayDelete:function(e,r,t){var n;try{n=FS.lookupNode(e,r)}catch(e){return e.errno}var o=FS.nodePermissions(e,"wx");if(o)return o;if(t){if(!FS.isDir(n.mode))return ERRNO_CODES.ENOTDIR;if(FS.isRoot(n)||FS.getPath(n)===FS.cwd())return ERRNO_CODES.EBUSY}else if(FS.isDir(n.mode))return ERRNO_CODES.EISDIR;return 0},mayOpen:function(e,r){return e?FS.isLink(e.mode)?ERRNO_CODES.ELOOP:FS.isDir(e.mode)&&("r"!==FS.flagsToPermissionString(r)||512&r)?ERRNO_CODES.EISDIR:FS.nodePermissions(e,FS.flagsToPermissionString(r)):ERRNO_CODES.ENOENT},MAX_OPEN_FDS:4096,nextfd:function(e,r){e=e||0,r=r||FS.MAX_OPEN_FDS;for(var t=e;t<=r;t++)if(!FS.streams[t])return t;throw new FS.ErrnoError(ERRNO_CODES.EMFILE)},getStream:function(e){return FS.streams[e]},createStream:function(e,r,t){FS.FSStream||(FS.FSStream=function(){},FS.FSStream.prototype={},Object.defineProperties(FS.FSStream.prototype,{object:{get:function(){return this.node},set:function(e){this.node=e}},isRead:{get:function(){return 1!=(2097155&this.flags)}},isWrite:{get:function(){return 0!=(2097155&this.flags)}},isAppend:{get:function(){return 1024&this.flags}}}));var n,o=new FS.FSStream;for(n in e)o[n]=e[n];e=o;t=FS.nextfd(r,t);return e.fd=t,FS.streams[t]=e},closeStream:function(e){FS.streams[e]=null},chrdev_stream_ops:{open:function(e){var r=FS.getDevice(e.node.rdev);e.stream_ops=r.stream_ops,e.stream_ops.open&&e.stream_ops.open(e)},llseek:function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}},major:function(e){return e>>8},minor:function(e){return 255&e},makedev:function(e,r){return e<<8|r},registerDevice:function(e,r){FS.devices[e]={stream_ops:r}},getDevice:function(e){return FS.devices[e]},getMounts:function(e){for(var r=[],t=[e];t.length;){var n=t.pop();r.push(n),t.push.apply(t,n.mounts)}return r},syncfs:function(r,t){"function"==typeof r&&(t=r,r=!1),FS.syncFSRequests++,1<FS.syncFSRequests&&console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work");var n=FS.getMounts(FS.root.mount),o=0;function i(e){return assert(0<FS.syncFSRequests),FS.syncFSRequests--,t(e)}function a(e){if(e)return a.errored?void 0:(a.errored=!0,i(e));++o>=n.length&&i(null)}n.forEach(function(e){return e.type.syncfs?void e.type.syncfs(e,r,a):a(null)})},mount:function(e,r,t){var n="/"===t,o=!t;if(n&&FS.root)throw new FS.ErrnoError(ERRNO_CODES.EBUSY);if(!n&&!o){var i=FS.lookupPath(t,{follow_mount:!1});if(t=i.path,i=i.node,FS.isMountpoint(i))throw new FS.ErrnoError(ERRNO_CODES.EBUSY);if(!FS.isDir(i.mode))throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}t={type:e,opts:r,mountpoint:t,mounts:[]},e=e.mount(t);return(e.mount=t).root=e,n?FS.root=e:i&&(i.mounted=t,i.mount&&i.mount.mounts.push(t)),e},unmount:function(e){var r=FS.lookupPath(e,{follow_mount:!1});if(!FS.isMountpoint(r.node))throw new FS.ErrnoError(ERRNO_CODES.EINVAL);var e=r.node,r=e.mounted,n=FS.getMounts(r);Object.keys(FS.nameTable).forEach(function(e){for(var r=FS.nameTable[e];r;){var t=r.name_next;-1!==n.indexOf(r.mount)&&FS.destroyNode(r),r=t}}),e.mounted=null;r=e.mount.mounts.indexOf(r);assert(-1!==r),e.mount.mounts.splice(r,1)},lookup:function(e,r){return e.node_ops.lookup(e,r)},mknod:function(e,r,t){var n=FS.lookupPath(e,{parent:!0}).node,o=PATH.basename(e);if(!o||"."===o||".."===o)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);e=FS.mayCreate(n,o);if(e)throw new FS.ErrnoError(e);if(!n.node_ops.mknod)throw new FS.ErrnoError(ERRNO_CODES.EPERM);return n.node_ops.mknod(n,o,r,t)},create:function(e,r){return r=void 0!==r?r:438,r&=4095,r|=32768,FS.mknod(e,r,0)},mkdir:function(e,r){return r=void 0!==r?r:511,r&=1023,r|=16384,FS.mknod(e,r,0)},mkdirTree:function(e,r){for(var t=e.split("/"),n="",o=0;o<t.length;++o)if(t[o]){n+="/"+t[o];try{FS.mkdir(n,r)}catch(e){if(e.errno!=ERRNO_CODES.EEXIST)throw e}}},mkdev:function(e,r,t){return void 0===t&&(t=r,r=438),r|=8192,FS.mknod(e,r,t)},symlink:function(e,r){if(!PATH.resolve(e))throw new FS.ErrnoError(ERRNO_CODES.ENOENT);var t=FS.lookupPath(r,{parent:!0}).node;if(!t)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);var n=PATH.basename(r),r=FS.mayCreate(t,n);if(r)throw new FS.ErrnoError(r);if(!t.node_ops.symlink)throw new FS.ErrnoError(ERRNO_CODES.EPERM);return t.node_ops.symlink(t,n,e)},rename:function(r,t){var e,n,o=PATH.dirname(r),i=PATH.dirname(t),a=PATH.basename(r),s=PATH.basename(t);try{e=FS.lookupPath(r,{parent:!0}).node,n=FS.lookupPath(t,{parent:!0}).node}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!e||!n)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(e.mount!==n.mount)throw new FS.ErrnoError(ERRNO_CODES.EXDEV);var u,c=FS.lookupNode(e,a),i=PATH.relative(r,i);if("."!==i.charAt(0))throw new FS.ErrnoError(ERRNO_CODES.EINVAL);if("."!==(i=PATH.relative(t,o)).charAt(0))throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY);try{u=FS.lookupNode(n,s)}catch(e){}if(c!==u){i=FS.isDir(c.mode),a=FS.mayDelete(e,a,i);if(a)throw new FS.ErrnoError(a);if(a=u?FS.mayDelete(n,s,i):FS.mayCreate(n,s))throw new FS.ErrnoError(a);if(!e.node_ops.rename)throw new FS.ErrnoError(ERRNO_CODES.EPERM);if(FS.isMountpoint(c)||u&&FS.isMountpoint(u))throw new FS.ErrnoError(ERRNO_CODES.EBUSY);if(n!==e&&(a=FS.nodePermissions(e,"w")))throw new FS.ErrnoError(a);try{FS.trackingDelegate.willMovePath&&FS.trackingDelegate.willMovePath(r,t)}catch(e){console.log("FS.trackingDelegate['willMovePath']('"+r+"', '"+t+"') threw an exception: "+e.message)}FS.hashRemoveNode(c);try{e.node_ops.rename(c,n,s)}catch(e){throw e}finally{FS.hashAddNode(c)}try{FS.trackingDelegate.onMovePath&&FS.trackingDelegate.onMovePath(r,t)}catch(e){console.log("FS.trackingDelegate['onMovePath']('"+r+"', '"+t+"') threw an exception: "+e.message)}}},rmdir:function(r){var e=FS.lookupPath(r,{parent:!0}).node,t=PATH.basename(r),n=FS.lookupNode(e,t),o=FS.mayDelete(e,t,!0);if(o)throw new FS.ErrnoError(o);if(!e.node_ops.rmdir)throw new FS.ErrnoError(ERRNO_CODES.EPERM);if(FS.isMountpoint(n))throw new FS.ErrnoError(ERRNO_CODES.EBUSY);try{FS.trackingDelegate.willDeletePath&&FS.trackingDelegate.willDeletePath(r)}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+r+"') threw an exception: "+e.message)}e.node_ops.rmdir(e,t),FS.destroyNode(n);try{FS.trackingDelegate.onDeletePath&&FS.trackingDelegate.onDeletePath(r)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+r+"') threw an exception: "+e.message)}},readdir:function(e){e=FS.lookupPath(e,{follow:!0}).node;if(!e.node_ops.readdir)throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);return e.node_ops.readdir(e)},unlink:function(r){var e=FS.lookupPath(r,{parent:!0}).node,t=PATH.basename(r),n=FS.lookupNode(e,t),o=FS.mayDelete(e,t,!1);if(o)throw new FS.ErrnoError(o);if(!e.node_ops.unlink)throw new FS.ErrnoError(ERRNO_CODES.EPERM);if(FS.isMountpoint(n))throw new FS.ErrnoError(ERRNO_CODES.EBUSY);try{FS.trackingDelegate.willDeletePath&&FS.trackingDelegate.willDeletePath(r)}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+r+"') threw an exception: "+e.message)}e.node_ops.unlink(e,t),FS.destroyNode(n);try{FS.trackingDelegate.onDeletePath&&FS.trackingDelegate.onDeletePath(r)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+r+"') threw an exception: "+e.message)}},readlink:function(e){e=FS.lookupPath(e).node;if(!e)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(!e.node_ops.readlink)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);return PATH.resolve(FS.getPath(e.parent),e.node_ops.readlink(e))},stat:function(e,r){r=FS.lookupPath(e,{follow:!r}).node;if(!r)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(!r.node_ops.getattr)throw new FS.ErrnoError(ERRNO_CODES.EPERM);return r.node_ops.getattr(r)},lstat:function(e){return FS.stat(e,!0)},chmod:function(e,r,t){if(!(e="string"==typeof e?FS.lookupPath(e,{follow:!t}).node:e).node_ops.setattr)throw new FS.ErrnoError(ERRNO_CODES.EPERM);e.node_ops.setattr(e,{mode:4095&r|-4096&e.mode,timestamp:Date.now()})},lchmod:function(e,r){FS.chmod(e,r,!0)},fchmod:function(e,r){e=FS.getStream(e);if(!e)throw new FS.ErrnoError(ERRNO_CODES.EBADF);FS.chmod(e.node,r)},chown:function(e,r,t,n){if(!(e="string"==typeof e?FS.lookupPath(e,{follow:!n}).node:e).node_ops.setattr)throw new FS.ErrnoError(ERRNO_CODES.EPERM);e.node_ops.setattr(e,{timestamp:Date.now()})},lchown:function(e,r,t){FS.chown(e,r,t,!0)},fchown:function(e,r,t){e=FS.getStream(e);if(!e)throw new FS.ErrnoError(ERRNO_CODES.EBADF);FS.chown(e.node,r,t)},truncate:function(e,r){if(r<0)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);var t;if(!(t="string"==typeof e?FS.lookupPath(e,{follow:!0}).node:e).node_ops.setattr)throw new FS.ErrnoError(ERRNO_CODES.EPERM);if(FS.isDir(t.mode))throw new FS.ErrnoError(ERRNO_CODES.EISDIR);if(!FS.isFile(t.mode))throw new FS.ErrnoError(ERRNO_CODES.EINVAL);e=FS.nodePermissions(t,"w");if(e)throw new FS.ErrnoError(e);t.node_ops.setattr(t,{size:r,timestamp:Date.now()})},ftruncate:function(e,r){e=FS.getStream(e);if(!e)throw new FS.ErrnoError(ERRNO_CODES.EBADF);if(0==(2097155&e.flags))throw new FS.ErrnoError(ERRNO_CODES.EINVAL);FS.truncate(e.node,r)},utime:function(e,r,t){e=FS.lookupPath(e,{follow:!0}).node;e.node_ops.setattr(e,{timestamp:Math.max(r,t)})},open:function(r,e,t,n,o){if(""===r)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(t=void 0===t?438:t,t=64&(e="string"==typeof e?FS.modeStringToFlags(e):e)?4095&t|32768:0,"object"==typeof r)i=r;else{r=PATH.normalize(r);try{var i=FS.lookupPath(r,{follow:!(131072&e)}).node}catch(e){}}var a=!1;if(64&e)if(i){if(128&e)throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}else i=FS.mknod(r,t,0),a=!0;if(!i)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(FS.isChrdev(i.mode)&&(e&=-513),65536&e&&!FS.isDir(i.mode))throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);if(!a){a=FS.mayOpen(i,e);if(a)throw new FS.ErrnoError(a)}512&e&&FS.truncate(i,0),e&=-641;var s,o=FS.createStream({node:i,path:FS.getPath(i),flags:e,seekable:!0,position:0,stream_ops:i.stream_ops,ungotten:[],error:!1},n,o);o.stream_ops.open&&o.stream_ops.open(o),!Module.logReadFiles||1&e||(FS.readFiles||(FS.readFiles={}),r in FS.readFiles||(FS.readFiles[r]=1,Module.printErr("read file: "+r)));try{FS.trackingDelegate.onOpenFile&&(s=0,1!=(2097155&e)&&(s|=FS.tracking.openFlags.READ),0!=(2097155&e)&&(s|=FS.tracking.openFlags.WRITE),FS.trackingDelegate.onOpenFile(r,s))}catch(e){console.log("FS.trackingDelegate['onOpenFile']('"+r+"', flags) threw an exception: "+e.message)}return o},close:function(e){e.getdents&&(e.getdents=null);try{e.stream_ops.close&&e.stream_ops.close(e)}catch(e){throw e}finally{FS.closeStream(e.fd)}},llseek:function(e,r,t){if(!e.seekable||!e.stream_ops.llseek)throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);return e.position=e.stream_ops.llseek(e,r,t),e.ungotten=[],e.position},read:function(e,r,t,n,o){if(n<0||o<0)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);if(1==(2097155&e.flags))throw new FS.ErrnoError(ERRNO_CODES.EBADF);if(FS.isDir(e.node.mode))throw new FS.ErrnoError(ERRNO_CODES.EISDIR);if(!e.stream_ops.read)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);var i=!0;if(void 0===o)o=e.position,i=!1;else if(!e.seekable)throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);o=e.stream_ops.read(e,r,t,n,o);return i||(e.position+=o),o},write:function(e,r,t,n,o,i){if(n<0||o<0)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);if(0==(2097155&e.flags))throw new FS.ErrnoError(ERRNO_CODES.EBADF);if(FS.isDir(e.node.mode))throw new FS.ErrnoError(ERRNO_CODES.EISDIR);if(!e.stream_ops.write)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);1024&e.flags&&FS.llseek(e,0,2);var a=!0;if(void 0===o)o=e.position,a=!1;else if(!e.seekable)throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);i=e.stream_ops.write(e,r,t,n,o,i);a||(e.position+=i);try{e.path&&FS.trackingDelegate.onWriteToFile&&FS.trackingDelegate.onWriteToFile(e.path)}catch(e){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+e.message)}return i},allocate:function(e,r,t){if(r<0||t<=0)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);if(0==(2097155&e.flags))throw new FS.ErrnoError(ERRNO_CODES.EBADF);if(!FS.isFile(e.node.mode)&&!FS.isDir(e.node.mode))throw new FS.ErrnoError(ERRNO_CODES.ENODEV);if(!e.stream_ops.allocate)throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP);e.stream_ops.allocate(e,r,t)},mmap:function(e,r,t,n,o,i,a){if(1==(2097155&e.flags))throw new FS.ErrnoError(ERRNO_CODES.EACCES);if(!e.stream_ops.mmap)throw new FS.ErrnoError(ERRNO_CODES.ENODEV);return e.stream_ops.mmap(e,r,t,n,o,i,a)},msync:function(e,r,t,n,o){return e&&e.stream_ops.msync?e.stream_ops.msync(e,r,t,n,o):0},munmap:function(e){return 0},ioctl:function(e,r,t){if(!e.stream_ops.ioctl)throw new FS.ErrnoError(ERRNO_CODES.ENOTTY);return e.stream_ops.ioctl(e,r,t)},readFile:function(e,r){if((r=r||{}).flags=r.flags||"r",r.encoding=r.encoding||"binary","utf8"!==r.encoding&&"binary"!==r.encoding)throw new Error('Invalid encoding type "'+r.encoding+'"');var t,n=FS.open(e,r.flags),o=FS.stat(e).size,e=new Uint8Array(o);return FS.read(n,e,0,o,0),"utf8"===r.encoding?t=UTF8ArrayToString(e,0):"binary"===r.encoding&&(t=e),FS.close(n),t},writeFile:function(e,r,t){if((t=t||{}).flags=t.flags||"w",t.encoding=t.encoding||"utf8","utf8"!==t.encoding&&"binary"!==t.encoding)throw new Error('Invalid encoding type "'+t.encoding+'"');var n,o=FS.open(e,t.flags,t.mode);"utf8"===t.encoding?(e=stringToUTF8Array(r,n=new Uint8Array(lengthBytesUTF8(r)+1),0,n.length),FS.write(o,n,0,e,0,t.canOwn)):"binary"===t.encoding&&FS.write(o,r,0,r.length,0,t.canOwn),FS.close(o)},cwd:function(){return FS.currentPath},chdir:function(e){var r=FS.lookupPath(e,{follow:!0});if(null===r.node)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(!FS.isDir(r.node.mode))throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);e=FS.nodePermissions(r.node,"x");if(e)throw new FS.ErrnoError(e);FS.currentPath=r.path},createDefaultDirectories:function(){FS.mkdir("/tmp"),FS.mkdir("/home"),FS.mkdir("/home/web_user")},createDefaultDevices:function(){var e,r;FS.mkdir("/dev"),FS.registerDevice(FS.makedev(1,3),{read:function(){return 0},write:function(e,r,t,n,o){return n}}),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)),r="undefined"!=typeof crypto?(e=new Uint8Array(1),function(){return crypto.getRandomValues(e),e[0]}):ENVIRONMENT_IS_NODE?function(){return require("crypto").randomBytes(1)[0]}:function(){return 256*Math.random()|0},FS.createDevice("/dev","random",r),FS.createDevice("/dev","urandom",r),FS.mkdir("/dev/shm"),FS.mkdir("/dev/shm/tmp")},createSpecialDirectories:function(){FS.mkdir("/proc"),FS.mkdir("/proc/self"),FS.mkdir("/proc/self/fd"),FS.mount({mount:function(){var e=FS.createNode("/proc/self","fd",16895,73);return e.node_ops={lookup:function(e,r){var r=+r,t=FS.getStream(r);if(!t)throw new FS.ErrnoError(ERRNO_CODES.EBADF);r={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:function(){return t.path}}};return r.parent=r}},e}},{},"/proc/self/fd")},createStandardStreams:function(){Module.stdin?FS.createDevice("/dev","stdin",Module.stdin):FS.symlink("/dev/tty","/dev/stdin"),Module.stdout?FS.createDevice("/dev","stdout",null,Module.stdout):FS.symlink("/dev/tty","/dev/stdout"),Module.stderr?FS.createDevice("/dev","stderr",null,Module.stderr):FS.symlink("/dev/tty1","/dev/stderr");var e=FS.open("/dev/stdin","r");assert(0===e.fd,"invalid handle for stdin ("+e.fd+")");e=FS.open("/dev/stdout","w");assert(1===e.fd,"invalid handle for stdout ("+e.fd+")");e=FS.open("/dev/stderr","w");assert(2===e.fd,"invalid handle for stderr ("+e.fd+")")},ensureErrnoError:function(){FS.ErrnoError||(FS.ErrnoError=function(e,r){this.node=r,this.setErrno=function(e){for(var r in this.errno=e,ERRNO_CODES)if(ERRNO_CODES[r]===e){this.code=r;break}},this.setErrno(e),this.message=ERRNO_MESSAGES[e],this.stack&&(this.stack=demangleAll(this.stack))},FS.ErrnoError.prototype=new Error,FS.ErrnoError.prototype.constructor=FS.ErrnoError,[ERRNO_CODES.ENOENT].forEach(function(e){FS.genericErrors[e]=new FS.ErrnoError(e),FS.genericErrors[e].stack="<generic error, no stack>"}))},staticInit:function(){FS.ensureErrnoError(),FS.nameTable=new Array(4096),FS.mount(MEMFS,{},"/"),FS.createDefaultDirectories(),FS.createDefaultDevices(),FS.createSpecialDirectories(),FS.filesystems={MEMFS:MEMFS,IDBFS:IDBFS,NODEFS:NODEFS,WORKERFS:WORKERFS}},init:function(e,r,t){assert(!FS.init.initialized,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)"),FS.init.initialized=!0,FS.ensureErrnoError(),Module.stdin=e||Module.stdin,Module.stdout=r||Module.stdout,Module.stderr=t||Module.stderr,FS.createStandardStreams()},quit:function(){FS.init.initialized=!1;var e=Module._fflush;e&&e(0);for(var r=0;r<FS.streams.length;r++){var t=FS.streams[r];t&&FS.close(t)}},getMode:function(e,r){var t=0;return e&&(t|=365),r&&(t|=146),t},joinPath:function(e,r){e=PATH.join.apply(null,e);return r&&"/"==e[0]&&(e=e.substr(1)),e},absolutePath:function(e,r){return PATH.resolve(r,e)},standardizePath:function(e){return PATH.normalize(e)},findObject:function(e,r){r=FS.analyzePath(e,r);return r.exists?r.object:(___setErrNo(r.error),null)},analyzePath:function(e,r){try{e=(n=FS.lookupPath(e,{follow:!r})).path}catch(e){}var t={isRoot:!1,exists:!1,error:0,name:null,path:null,object:null,parentExists:!1,parentPath:null,parentObject:null};try{var n=FS.lookupPath(e,{parent:!0});t.parentExists=!0,t.parentPath=n.path,t.parentObject=n.node,t.name=PATH.basename(e),n=FS.lookupPath(e,{follow:!r}),t.exists=!0,t.path=n.path,t.object=n.node,t.name=n.node.name,t.isRoot="/"===n.path}catch(e){t.error=e.errno}return t},createFolder:function(e,r,t,n){r=PATH.join2("string"==typeof e?e:FS.getPath(e),r),n=FS.getMode(t,n);return FS.mkdir(r,n)},createPath:function(e,r,t,n){e="string"==typeof e?e:FS.getPath(e);for(var o=r.split("/").reverse();o.length;){var i=o.pop();if(i){var a=PATH.join2(e,i);try{FS.mkdir(a)}catch(e){}e=a}}return a},createFile:function(e,r,t,n,o){r=PATH.join2("string"==typeof e?e:FS.getPath(e),r),o=FS.getMode(n,o);return FS.create(r,o)},createDataFile:function(e,r,t,n,o,i){e=r?PATH.join2("string"==typeof e?e:FS.getPath(e),r):e,n=FS.getMode(n,o),o=FS.create(e,n);if(t){if("string"==typeof t){for(var a=new Array(t.length),s=0,u=t.length;s<u;++s)a[s]=t.charCodeAt(s);t=a}FS.chmod(o,146|n);e=FS.open(o,"w");FS.write(e,t,0,t.length,0,i),FS.close(e),FS.chmod(o,n)}return o},createDevice:function(e,r,u,a){var t=PATH.join2("string"==typeof e?e:FS.getPath(e),r),e=FS.getMode(!!u,!!a);FS.createDevice.major||(FS.createDevice.major=64);r=FS.makedev(FS.createDevice.major++,0);return FS.registerDevice(r,{open:function(e){e.seekable=!1},close:function(e){a&&a.buffer&&a.buffer.length&&a(10)},read:function(e,r,t,n,o){for(var i,a=0,s=0;s<n;s++){try{i=u()}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}if(void 0===i&&0===a)throw new FS.ErrnoError(ERRNO_CODES.EAGAIN);if(null==i)break;a++,r[t+s]=i}return a&&(e.node.timestamp=Date.now()),a},write:function(e,r,t,n,o){for(var i=0;i<n;i++)try{a(r[t+i])}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return n&&(e.node.timestamp=Date.now()),i}}),FS.mkdev(t,e,r)},createLink:function(e,r,t,n,o){r=PATH.join2("string"==typeof e?e:FS.getPath(e),r);return FS.symlink(t,r)},forceLoadFile:function(e){if(e.isDevice||e.isFolder||e.link||e.contents)return!0;var r=!0;if("undefined"!=typeof XMLHttpRequest)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.");if(!Module.read)throw new Error("Cannot load without read() or XMLHttpRequest.");try{e.contents=intArrayFromString(Module.read(e.url),!0),e.usedBytes=e.contents.length}catch(e){r=!1}return r||___setErrNo(ERRNO_CODES.EIO),r},createLazyFile:function(e,r,a,t,n){function o(){this.lengthKnown=!1,this.chunks=[]}if(o.prototype.get=function(e){if(!(e>this.length-1||e<0)){var r=e%this.chunkSize,e=e/this.chunkSize|0;return this.getter(e)[r]}},o.prototype.setDataGetter=function(e){this.getter=e},o.prototype.cacheLength=function(){var e=new XMLHttpRequest;if(e.open("HEAD",a,!1),e.send(null),!(200<=e.status&&e.status<300||304===e.status))throw new Error("Couldn't load "+a+". Status: "+e.status);var n=Number(e.getResponseHeader("Content-length")),r=(t=e.getResponseHeader("Accept-Ranges"))&&"bytes"===t,t=(t=e.getResponseHeader("Content-Encoding"))&&"gzip"===t,o=1048576;r||(o=n);var i=this;i.setDataGetter(function(e){var r=e*o,t=(e+1)*o-1,t=Math.min(t,n-1);if(void 0===i.chunks[e]&&(i.chunks[e]=function(e,r){if(r<e)throw new Error("invalid range ("+e+", "+r+") or no bytes requested!");if(n-1<r)throw new Error("only "+n+" bytes available! programmer error!");var t=new XMLHttpRequest;if(t.open("GET",a,!1),n!==o&&t.setRequestHeader("Range","bytes="+e+"-"+r),"undefined"!=typeof Uint8Array&&(t.responseType="arraybuffer"),t.overrideMimeType&&t.overrideMimeType("text/plain; charset=x-user-defined"),t.send(null),!(200<=t.status&&t.status<300||304===t.status))throw new Error("Couldn't load "+a+". Status: "+t.status);return void 0!==t.response?new Uint8Array(t.response||[]):intArrayFromString(t.responseText||"",!0)}(r,t)),void 0===i.chunks[e])throw new Error("doXHR failed!");return i.chunks[e]}),!t&&n||(o=n=1,n=this.getter(0).length,o=n,console.log("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=n,this._chunkSize=o,this.lengthKnown=!0},"undefined"!=typeof XMLHttpRequest){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var i=new o;Object.defineProperties(i,{length:{get:function(){return this.lengthKnown||this.cacheLength(),this._length}},chunkSize:{get:function(){return this.lengthKnown||this.cacheLength(),this._chunkSize}}});i={isDevice:!1,contents:i}}else i={isDevice:!1,url:a};var u=FS.createFile(e,r,i,t,n);i.contents?u.contents=i.contents:i.url&&(u.contents=null,u.url=i.url),Object.defineProperties(u,{usedBytes:{get:function(){return this.contents.length}}});var s={};return Object.keys(u.stream_ops).forEach(function(e){var r=u.stream_ops[e];s[e]=function(){if(!FS.forceLoadFile(u))throw new FS.ErrnoError(ERRNO_CODES.EIO);return r.apply(null,arguments)}}),s.read=function(e,r,t,n,o){if(!FS.forceLoadFile(u))throw new FS.ErrnoError(ERRNO_CODES.EIO);var i=e.node.contents;if(o>=i.length)return 0;var a=Math.min(i.length-o,n);if(assert(0<=a),i.slice)for(var s=0;s<a;s++)r[t+s]=i[o+s];else for(s=0;s<a;s++)r[t+s]=i.get(o+s);return a},u.stream_ops=s,u},createPreloadedFile:function(o,i,e,a,s,u,c,l,f,d){Browser.init();var E=i?PATH.resolve(PATH.join2(o,i)):o,S=getUniqueRunDependency("cp "+E);function r(r){function t(e){d&&d(),l||FS.createDataFile(o,i,e,a,s,f),u&&u(),removeRunDependency(S)}var n=!1;Module.preloadPlugins.forEach(function(e){n||e.canHandle(E)&&(e.handle(r,E,t,function(){c&&c(),removeRunDependency(S)}),n=!0)}),n||t(r)}addRunDependency(S),"string"==typeof e?Browser.asyncLoad(e,function(e){r(e)},c):r(e)},indexedDB:function(){return window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB},DB_NAME:function(){return"EM_FS_"+window.location.pathname},DB_VERSION:20,DB_STORE_NAME:"FILE_DATA",saveFilesToDB:function(a,s,u){s=s||function(){},u=u||function(){};var e=FS.indexedDB();try{var c=e.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return u(e)}c.onupgradeneeded=function(){console.log("creating db"),c.result.createObjectStore(FS.DB_STORE_NAME)},c.onsuccess=function(){var e=c.result.transaction([FS.DB_STORE_NAME],"readwrite"),r=e.objectStore(FS.DB_STORE_NAME),t=0,n=0,o=a.length;function i(){(0==n?s:u)()}a.forEach(function(e){e=r.put(FS.analyzePath(e).object.contents,e);e.onsuccess=function(){++t+n==o&&i()},e.onerror=function(){t+ ++n==o&&i()}}),e.onerror=u},c.onerror=u},loadFilesFromDB:function(s,u,c){u=u||function(){},c=c||function(){};var e=FS.indexedDB();try{var l=e.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return c(e)}l.onupgradeneeded=c,l.onsuccess=function(){var e=l.result;try{var r=e.transaction([FS.DB_STORE_NAME],"readonly")}catch(e){return void c(e)}var t=r.objectStore(FS.DB_STORE_NAME),n=0,o=0,i=s.length;function a(){(0==o?u:c)()}s.forEach(function(e){var r=t.get(e);r.onsuccess=function(){FS.analyzePath(e).exists&&FS.unlink(e),FS.createDataFile(PATH.dirname(e),PATH.basename(e),r.result,!0,!0,!0),++n+o==i&&a()},r.onerror=function(){n+ ++o==i&&a()}}),r.onerror=c},l.onerror=c}},SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:function(e,r){if("/"!==r[0]){var t;if(-100===e)t=FS.cwd();else{e=FS.getStream(e);if(!e)throw new FS.ErrnoError(ERRNO_CODES.EBADF);t=e.path}r=PATH.join2(t,r)}return r},doStat:function(e,r,t){try{var n=e(r)}catch(e){if(e&&e.node&&PATH.normalize(r)!==PATH.normalize(FS.getPath(e.node)))return-ERRNO_CODES.ENOTDIR;throw e}return HEAP32[t>>2]=n.dev,HEAP32[t+4>>2]=0,HEAP32[t+8>>2]=n.ino,HEAP32[t+12>>2]=n.mode,HEAP32[t+16>>2]=n.nlink,HEAP32[t+20>>2]=n.uid,HEAP32[t+24>>2]=n.gid,HEAP32[t+28>>2]=n.rdev,HEAP32[t+32>>2]=0,HEAP32[t+36>>2]=n.size,HEAP32[t+40>>2]=4096,HEAP32[t+44>>2]=n.blocks,HEAP32[t+48>>2]=n.atime.getTime()/1e3|0,HEAP32[t+52>>2]=0,HEAP32[t+56>>2]=n.mtime.getTime()/1e3|0,HEAP32[t+60>>2]=0,HEAP32[t+64>>2]=n.ctime.getTime()/1e3|0,HEAP32[t+68>>2]=0,HEAP32[t+72>>2]=n.ino,0},doMsync:function(e,r,t,n){e=new Uint8Array(HEAPU8.subarray(e,e+t));FS.msync(r,e,0,t,n)},doMkdir:function(e,r){return"/"===(e=PATH.normalize(e))[e.length-1]&&(e=e.substr(0,e.length-1)),FS.mkdir(e,r,0),0},doMknod:function(e,r,t){switch(61440&r){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}return FS.mknod(e,r,t),0},doReadlink:function(e,r,t){if(t<=0)return-ERRNO_CODES.EINVAL;var n=FS.readlink(e),o=Math.min(t,lengthBytesUTF8(n)),e=HEAP8[r+o];return stringToUTF8(n,r,t+1),HEAP8[r+o]=e,o},doAccess:function(e,r){if(-8&r)return-ERRNO_CODES.EINVAL;var t=FS.lookupPath(e,{follow:!0}).node,e="";return 4&r&&(e+="r"),2&r&&(e+="w"),1&r&&(e+="x"),e&&FS.nodePermissions(t,e)?-ERRNO_CODES.EACCES:0},doDup:function(e,r,t){var n=FS.getStream(t);return n&&FS.close(n),FS.open(e,r,0,t,t).fd},doReadv:function(e,r,t,n){for(var o=0,i=0;i<t;i++){var a=HEAP32[r+8*i>>2],s=HEAP32[r+(8*i+4)>>2],a=FS.read(e,HEAP8,a,s,n);if(a<0)return-1;if(o+=a,a<s)break}return o},doWritev:function(e,r,t,n){for(var o=0,i=0;i<t;i++){var a=HEAP32[r+8*i>>2],s=HEAP32[r+(8*i+4)>>2],s=FS.write(e,HEAP8,a,s,n);if(s<0)return-1;o+=s}return o},varargs:0,get:function(e){return SYSCALLS.varargs+=4,HEAP32[SYSCALLS.varargs-4>>2]},getStr:function(){return Pointer_stringify(SYSCALLS.get())},getStreamFromFD:function(){var e=FS.getStream(SYSCALLS.get());if(!e)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return e},getSocketFromFD:function(){var e=SOCKFS.getSocket(SYSCALLS.get());if(!e)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return e},getSocketAddress:function(e){var r=SYSCALLS.get(),t=SYSCALLS.get();if(e&&0===r)return null;t=__read_sockaddr(r,t);if(t.errno)throw new FS.ErrnoError(t.errno);return t.addr=DNS.lookup_addr(t.addr)||t.addr,t},get64:function(){var e=SYSCALLS.get(),r=SYSCALLS.get();return assert(0<=e?0===r:-1===r),e},getZero:function(){assert(0===SYSCALLS.get())}};function ___syscall5(e,r){SYSCALLS.varargs=r;try{var t=SYSCALLS.getStr(),n=SYSCALLS.get(),o=SYSCALLS.get();return FS.open(t,n,o).fd}catch(e){return void 0!==FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___lock(){}function ___unlock(){}function ___syscall6(e,r){SYSCALLS.varargs=r;try{var t=SYSCALLS.getStreamFromFD();return FS.close(t),0}catch(e){return void 0!==FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC),fs,NODEJS_PATH;function _emscripten_memcpy_big(e,r,t){return HEAPU8.set(HEAPU8.subarray(r,r+t),e),e}function ___syscall140(e,r){SYSCALLS.varargs=r;try{var t=SYSCALLS.getStreamFromFD(),n=(SYSCALLS.get(),SYSCALLS.get()),o=SYSCALLS.get(),i=SYSCALLS.get(),n=n;return FS.llseek(t,n,i),HEAP32[o>>2]=t.position,t.getdents&&0===n&&0===i&&(t.getdents=null),0}catch(e){return void 0!==FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall146(e,r){SYSCALLS.varargs=r;try{var t=SYSCALLS.getStreamFromFD(),n=SYSCALLS.get(),o=SYSCALLS.get();return SYSCALLS.doWritev(t,n,o)}catch(e){return void 0!==FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall54(e,r){SYSCALLS.varargs=r;try{var t=SYSCALLS.getStreamFromFD(),n=SYSCALLS.get();switch(n){case 21505:case 21506:return t.tty?0:-ERRNO_CODES.ENOTTY;case 21519:if(!t.tty)return-ERRNO_CODES.ENOTTY;var o=SYSCALLS.get();return HEAP32[o>>2]=0;case 21520:return t.tty?-ERRNO_CODES.EINVAL:-ERRNO_CODES.ENOTTY;case 21531:o=SYSCALLS.get();return FS.ioctl(t,n,o);case 21523:return t.tty?0:-ERRNO_CODES.ENOTTY;default:abort("bad ioctl syscall "+n)}}catch(e){return void 0!==FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall221(e,r){SYSCALLS.varargs=r;try{var t=SYSCALLS.getStreamFromFD();switch(SYSCALLS.get()){case 0:return(n=SYSCALLS.get())<0?-ERRNO_CODES.EINVAL:FS.open(t.path,t.flags,0,n).fd;case 1:case 2:return 0;case 3:return t.flags;case 4:var n=SYSCALLS.get();return t.flags|=n,0;case 12:case 12:n=SYSCALLS.get();return HEAP16[n+0>>1]=2,0;case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:return ___setErrNo(ERRNO_CODES.EINVAL),-1;default:return-ERRNO_CODES.EINVAL}}catch(e){return void 0!==FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall145(e,r){SYSCALLS.varargs=r;try{var t=SYSCALLS.getStreamFromFD(),n=SYSCALLS.get(),o=SYSCALLS.get();return SYSCALLS.doReadv(t,n,o)}catch(e){return void 0!==FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function nullFunc_ii(e){Module.printErr("Invalid function pointer called with signature 'ii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"),Module.printErr("Build with ASSERTIONS=2 for more info."),abort(e)}function nullFunc_iiii(e){Module.printErr("Invalid function pointer called with signature 'iiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"),Module.printErr("Build with ASSERTIONS=2 for more info."),abort(e)}function invoke_ii(e,r){try{return Module.dynCall_ii(e,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Module.setThrew(1,0)}}function invoke_iiii(e,r,t,n){try{return Module.dynCall_iiii(e,r,t,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Module.setThrew(1,0)}}FS.staticInit(),__ATINIT__.unshift(function(){Module.noFSInit||FS.init.initialized||FS.init()}),__ATMAIN__.push(function(){FS.ignorePermissions=!1}),__ATEXIT__.push(function(){FS.quit()}),Module.FS_createFolder=FS.createFolder,Module.FS_createPath=FS.createPath,Module.FS_createDataFile=FS.createDataFile,Module.FS_createPreloadedFile=FS.createPreloadedFile,Module.FS_createLazyFile=FS.createLazyFile,Module.FS_createLink=FS.createLink,Module.FS_createDevice=FS.createDevice,Module.FS_unlink=FS.unlink,__ATINIT__.unshift(function(){TTY.init()}),__ATEXIT__.push(function(){TTY.shutdown()}),ENVIRONMENT_IS_NODE&&(fs=require("fs"),NODEJS_PATH=require("path"),NODEFS.staticInit()),DYNAMICTOP_PTR=allocate(1,"i32",ALLOC_STATIC),STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP),STACK_MAX=STACK_BASE+TOTAL_STACK,DYNAMIC_BASE=Runtime.alignMemory(STACK_MAX),HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE,staticSealed=!0,assert(DYNAMIC_BASE<TOTAL_MEMORY,"TOTAL_MEMORY not big enough for stack"),Module.asmGlobalArg={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:1/0,byteLength:byteLength},Module.asmLibraryArg={abort:abort,assert:assert,enlargeMemory:enlargeMemory,getTotalMemory:getTotalMemory,abortOnCannotGrowMemory:abortOnCannotGrowMemory,abortStackOverflow:abortStackOverflow,nullFunc_ii:nullFunc_ii,nullFunc_iiii:nullFunc_iiii,invoke_ii:invoke_ii,invoke_iiii:invoke_iiii,___syscall221:___syscall221,_emscripten_asm_const_iiii:_emscripten_asm_const_iiii,_emscripten_asm_const_i:_emscripten_asm_const_i,___lock:___lock,___syscall6:___syscall6,___setErrNo:___setErrNo,___syscall140:___syscall140,___syscall146:___syscall146,___syscall5:___syscall5,_emscripten_memcpy_big:_emscripten_memcpy_big,___syscall54:___syscall54,___unlock:___unlock,___syscall145:___syscall145,_emscripten_asm_const_iii:_emscripten_asm_const_iii,DYNAMICTOP_PTR:DYNAMICTOP_PTR,tempDoublePtr:tempDoublePtr,ABORT:ABORT,STACKTOP:STACKTOP,STACK_MAX:STACK_MAX,cttz_i8:cttz_i8};var asm=function(e,r,t){var n=e.Int8Array,Xe=new n(t),o=e.Int16Array,je=new o(t),i=e.Int32Array,Ge=new i(t),a=e.Uint8Array,qe=new a(t),s=e.Uint16Array,u=(new s(t),e.Uint32Array),c=(new u(t),e.Float32Array),l=(new c(t),e.Float64Array),Te=new l(t),f=e.byteLength,d=0|r.DYNAMICTOP_PTR,ge=0|r.tempDoublePtr,Ze=(r.ABORT,0|r.STACKTOP),Je=0|r.STACK_MAX,E=0|r.cttz_i8,S=0,ve=(e.NaN,e[1/0],0),Ne=(e.Math.floor,e.Math.abs,e.Math.sqrt,e.Math.pow,e.Math.cos,e.Math.sin,e.Math.tan,e.Math.acos,e.Math.asin,e.Math.atan,e.Math.atan2,e.Math.exp,e.Math.log,e.Math.ceil,e.Math.imul),D=(e.Math.min,e.Math.max,e.Math.clz32),_=(r.abort,r.assert,r.enlargeMemory),m=r.getTotalMemory,h=r.abortOnCannotGrowMemory,Qe=r.abortStackOverflow,p=r.nullFunc_ii,F=r.nullFunc_iiii,M=(r.invoke_ii,r.invoke_iiii,r.___syscall221),P=r._emscripten_asm_const_iiii,C=r._emscripten_asm_const_i,b=r.___lock,y=r.___syscall6,O=r.___setErrNo,w=r.___syscall140,R=r.___syscall146,A=r.___syscall5,k=r._emscripten_memcpy_big,T=r.___syscall54,g=r.___unlock,v=r.___syscall145,$e=r._emscripten_asm_const_iii;function I(e,r){r|=0;var t,n,o,i,a,s=0|function(e,r){e|=0,r|=0;var t=0,n=0,o=0,i=0,a=0,s=0;(0|(Ze=(t=Ze)+48|0))>=(0|Je)&&Qe(48);n=t+32|0,o=t+16|0,i=t,s=0|Le(3788,0|Xe[r>>0],4)?(a=0|function(e){var r=0,t=0,n=0,o=0;return r=0==(0|G(e=e|0,43)),t=0|Xe[e>>0],n=r?t<<24>>24!=114&1:2,r=0==(0|G(e,120)),o=r?n:128|n,n=0==(0|G(e,101)),e=n?o:524288|o,o=t<<24>>24==114?e:64|e,e=t<<24>>24==119?512|o:o,0|(t<<24>>24==97?1024|e:e)}(r),Ge[i>>2]=e,Ge[i+4>>2]=32768|a,Ge[i+8>>2]=438,e=0|U(0|A(5,0|i)),0<=(0|e)?(524288&a|0&&(Ge[o>>2]=e,Ge[o+4>>2]=2,Ge[o+8>>2]=1,M(221,0|o)),(o=0|function(e,r){e|=0,r|=0;var t=0,n=0,o=0,i=0,a=0,s=0,u=0,c=0,l=0,f=0,d=0,E=0,S=0;(0|(Ze=(t=Ze)+64|0))>=(0|Je)&&Qe(64);if(n=t+40|0,o=t+24|0,i=t+16|0,s=(a=t)+56|0,0|Le(3788,(u=0|Xe[r>>0])<<24>>24,4))if(c=0|x(1156)){for(f=c,d=f+124|0;Ge[f>>2]=0,f=f+4|0,(0|f)<(0|d););0|G(r,43)||(Ge[c>>2]=u<<24>>24==114?8:4),E=0|G(r,101)?(Ge[a>>2]=e,Ge[a+4>>2]=2,Ge[a+8>>2]=1,M(221,0|a),0|Xe[r>>0]):u,S=E<<24>>24==97?(Ge[i>>2]=e,Ge[4+i>>2]=3,1024&(E=0|M(221,0|i))||(Ge[o>>2]=e,Ge[o+4>>2]=4,Ge[o+8>>2]=1024|E,M(221,0|o)),o=128|Ge[c>>2],Ge[c>>2]=o):0|Ge[c>>2],Ge[c+60>>2]=e,Ge[c+44>>2]=c+132,Ge[c+48>>2]=1024,Xe[(o=c+75|0)>>0]=-1,0==(8&S|0)&&(Ge[n>>2]=e,Ge[4+n>>2]=21523,Ge[8+n>>2]=s,0==(0|T(54,0|n)))&&(Xe[o>>0]=10),Ge[c+32>>2]=4,Ge[c+36>>2]=3,Ge[c+40>>2]=2,Ge[c+12>>2]=1,0|Ge[1073]||(Ge[c+76>>2]=-1),function(e){e|=0;var r=0,t=0;r=0|Q(),Ge[e+56>>2]=Ge[r>>2],0|(t=0|Ge[r>>2])&&(Ge[52+t>>2]=e),Ge[r>>2]=e,$()}(c),l=c}else l=0;else Ge[(c=652)>>2]=22,l=0;return Ze=t,0|l}(e,r))||(Ge[n>>2]=e,y(6,0|n),0)):0):(Ge[(o=652)>>2]=22,0);return Ze=t,0|s}(e|=0,964);do{if(0|s){if(o=s,a=2,function(e,r,t){r|=0,t|=0;var n=0,o=0;-1<(0|Ge[76+(e|=0)>>2])?(n=0==(0|V()),o=0|ne(e,r,t),n||K()):ne(e,r,t)}(o|=i=0,i|=0,a|=0),e=0|(i=s,0|function(e){var r=0,t=0,n=0;n=-1<(0|Ge[76+(e|=0)>>2])?(r=0==(0|V()),t=0|oe(e),r||K(),t):0|oe(e);return 0|n}(i|=0)),a=s,i=void 0,-1<((i=0)|Ge[76+(a|=0)>>2])?(i=0==(0|V()),ne(a,0,0),Ge[a>>2]=-33&Ge[a>>2],i||K()):(ne(a,0,0),Ge[a>>2]=-33&Ge[a>>2]),t=0|x(e+1|0))return(0|(n=0|function(e,r,t,n){e|=0,n|=0;var o=0,i=0,a=0,s=0,u=0,c=0,l=0,f=0,d=0,E=0;o=0|Ne(t|=0,r|=0),i=0==(0|r)?0:t,a=-1<(0|Ge[n+76>>2])?0|V():0;s=0|Xe[(t=n+74|0)>>0],Xe[t>>0]=s+255|s,t=0|Ge[(s=n+4|0)>>2],u=(0|Ge[n+8>>2])-t|0,c=u>>>0<o>>>0?u:o,f=0<(0|u)?(tr(0|e,0|t,0|c),Ge[s>>2]=t+c,l=o-c|0,e+c|0):(l=o,e);e:do{if(l){for(e=n+32|0,c=l,t=f;!(0|function(e){var r=0,t=0,n=0;t=0|Xe[(r=74+(e|=0)|0)>>0],Xe[r>>0]=255+t|t,r=e+28|0,(0|Ge[(t=e+20|0)>>2])>>>0>(0|Ge[r>>2])>>>0&&de[7&Ge[e+36>>2]](e,0,0);Ge[e+16>>2]=0,Ge[r>>2]=0,Ge[t>>2]=0,n=4&(t=0|Ge[e>>2])?(Ge[e>>2]=32|t,-1):(r=(0|Ge[e+44>>2])+(0|Ge[e+48>>2])|0,Ge[e+8>>2]=r,Ge[e+4>>2]=r,t<<27>>31);return 0|n}(n)||((s=0|de[7&Ge[e>>2]](n,t,c))+1|0)>>>0<2);){if(!(u=c-s|0)){d=13;break e}c=u,t=t+s|0}0|a&&K(),E=((o-c|0)>>>0)/(r>>>0)|0}else d=13}while(0);13==(0|d)&&(E=(a&&K(),i));return 0|E}(t,1,e,s)))<(0|e)&&ae(1256),Ge[r>>2]=t,Xe[t+e>>0]=0,ee(s),0|n;ae(1230),ee(s);break}}while(0);return(Ge[r>>2]=0)|-1}function N(e,r){e|=0,r|=0;var t,n,o,i,a,s,u,c,l,f,d,E,S,_,m,h,p,F,M,b=0,y=0,O=0,w=0,R=0,A=0,k=0,T=0,g=0,v=0,N=0,D=0;if((0|Je)<=(0|(Ze=(r=Ze)+4192|0))&&Qe(4192),t=r+32|0,n=r+24|0,o=r+16|0,i=r+8|0,a=(b=r)+40|0,u=r+88|0,((Ge[(s=r+36|0)>>2]=0)|(c=0|I(e,s)))<22)return Ge[b>>2]=182,ie(967,b),B(0|Ge[s>>2]),Ze=r,0;b=c-22|0;e:do{if(22<(0|b)){for(y=(e=0|Ge[s>>2])+c|0,O=b;101010256!=((0|qe[(A=(R=(w=e+O|0)+1|0)+1|0)+1>>0])<<24|((0|qe[A>>0])<<16|((0|qe[R>>0])<<8|0|qe[w>>0]))|0)||(w+22+((0|qe[(R=w+20|0)+1>>0])<<8|0|qe[R>>0])|0)!=(0|y);)if((0|(O=O+-1|0))<=22)break e;if(A=e+((0|qe[(R=(y=(O=w+16|0)+1|0)+1|0)+1>>0])<<24|((0|qe[R>>0])<<16|((0|qe[y>>0])<<8|0|qe[O>>0])))|0,33639248==((0|qe[A+3>>0])<<24|((0|qe[A+2>>0])<<16|((0|qe[A+1>>0])<<8|0|qe[A>>0]))|0))for(O=A,y=0;;){if(R=((0|qe[O+27>>0])<<24|((0|qe[O+26>>0])<<16|((0|qe[O+25>>0])<<8|0|qe[O+24>>0])))+y|0,O=O+(46+((0|qe[O+29>>0])<<8|0|qe[O+28>>0])+((0|qe[O+31>>0])<<8|0|qe[O+30>>0])+((0|qe[O+33>>0])<<8|0|qe[O+32>>0]))|0,33639248!=((0|qe[O+3>>0])<<24|((0|qe[O+2>>0])<<16|((0|qe[O+1>>0])<<8|0|qe[O>>0]))|0)){k=R;break}y=R}else k=0;y=4+a|0,O=12+a|0,R=16+a|0;r:do{if(33639248==((0|qe[A+3>>0])<<24|((0|qe[A+2>>0])<<16|((0|qe[A+1>>0])<<8|0|qe[A>>0]))|0)){for(T=0,g=A;v=0|Xe[g+10>>0],N=0|Xe[g+11>>0],l=(0|qe[g+19>>0])<<24|((0|qe[g+18>>0])<<16|((0|qe[g+17>>0])<<8|0|qe[g+16>>0])),f=(0|qe[g+23>>0])<<24|((0|qe[g+22>>0])<<16|((0|qe[g+21>>0])<<8|0|qe[g+20>>0])),d=(0|qe[g+27>>0])<<24|((0|qe[g+26>>0])<<16|((0|qe[g+25>>0])<<8|0|qe[g+24>>0])),E=(0|qe[g+29>>0])<<8|0|qe[g+28>>0],S=(0|qe[g+33>>0])<<8|0|qe[g+32>>0],_=(0|qe[g+31>>0])<<8|0|qe[g+30>>0],er(0|u,0,4096),!(4095<E>>>0);){switch(tr(0|u,g+46|0,0|E),p=28+(m=e+((0|qe[g+45>>0])<<24|((0|qe[g+44>>0])<<16|((0|qe[g+43>>0])<<8|0|qe[g+42>>0])))|0)|0,F=30+m+((0|qe[1+(h=26+m|0)>>0])<<8|0|qe[h>>0])+((0|qe[1+p>>0])<<8|0|qe[p>>0])|0,(65535&((255&N)<<8|255&v))<<16>>16){case 0:P(0,0|u,0|d,0|F),D=15;break;case 8:D=15}if(15==(0|D)&&(D=0)|(v=0|x(d))){for(N=a,p=N+48|0;N=N+4|(Ge[N>>2]=0),(0|N)<(0|p););do{if(!(0|function(e,r){e|=0,r|=0;var t=0,n=0,o=0,i=0,a=0,s=0;(0|(Ze=(t=Ze)+16|0))>=(0|Je)&&Qe(16);if(n=t+12|0,i=t+4|0,Ge[(o=(a=t)+8|0)>>2]=e,Ge[i>>2]=r,!(0|Ge[o>>2]))return Ge[n>>2]=-2,s=0|Ge[n>>2],Ze=t,0|s;if(15!=(0|Ge[i>>2])&&15!=(0-(0|Ge[i>>2])|0))return Ge[n>>2]=-1e4,s=0|Ge[n>>2],Ze=t,0|s;return Ge[36+(0|Ge[o>>2])>>2]=0,Ge[40+(0|Ge[o>>2])>>2]=0,Ge[24+(0|Ge[o>>2])>>2]=0,Ge[8+(0|Ge[o>>2])>>2]=0,Ge[20+(0|Ge[o>>2])>>2]=0,Ge[44+(0|Ge[o>>2])>>2]=0,r=0|x(43784),Ge[a>>2]=r,Ze=(s=(0|Ge[a>>2]?(Ge[28+(0|Ge[o>>2])>>2]=Ge[a>>2],Ge[Ge[a>>2]>>2]=0,Ge[10992+(0|Ge[a>>2])>>2]=0,Ge[10996+(0|Ge[a>>2])>>2]=0,Ge[43780+(0|Ge[a>>2])>>2]=1,Ge[11e3+(0|Ge[a>>2])>>2]=1,Ge[11004+(0|Ge[a>>2])>>2]=0,Ge[11008+(0|Ge[a>>2])>>2]=Ge[i>>2],Ge[n>>2]=0):Ge[n>>2]=-4,0|Ge[n>>2]),t),0|s}(a,-15))){if(Ge[a>>2]=F,Ge[y>>2]=f,Ge[O>>2]=v,Ge[R>>2]=d,N=1==(0|function(e,r,t,n){e|=0,r|=0,t|=0,n|=0;var o=0,i=0,a=0,s=0,u=0,c=0,l=0,f=0,d=0,E=0,S=0,_=0,m=0,h=0,p=0,F=0,M=0,b=0;(0|(Ze=(o=Ze)+64|0))>=(0|Je)&&Qe(64);if(i=o+48|0,s=o+40|0,u=o+36|0,c=o+32|0,l=o+28|0,f=o+24|0,d=o+20|0,E=o+16|0,S=o+12|0,_=o+8|0,m=o+4|0,Ge[(a=(h=o)+44|0)>>2]=e,Ge[s>>2]=r,Ge[u>>2]=t,Ge[c>>2]=n,Ge[E>>2]=8,0|Ge[a>>2]&&0|Ge[28+(0|Ge[a>>2])>>2]){if(1==(0|Ge[s>>2])&&(Ge[s>>2]=2),0!=(0|Ge[s>>2])&2!=(0|Ge[s>>2])&4!=(0|Ge[s>>2]))return Ge[i>>2]=-2,p=0|Ge[i>>2],Ze=o,0|p;if(Ge[l>>2]=Ge[28+(0|Ge[a>>2])>>2],0<(0|Ge[11008+(0|Ge[l>>2])>>2])&&(Ge[E>>2]=1|Ge[E>>2]),Ge[m>>2]=Ge[4+(0|Ge[a>>2])>>2],Ge[d>>2]=Ge[11e3+(0|Ge[l>>2])>>2],((Ge[11e3+(0|Ge[l>>2])>>2]=0)|Ge[43780+(0|Ge[l>>2])>>2])<0)return Ge[i>>2]=-3,p=0|Ge[i>>2],Ze=o,0|p;if(4!=(0|Ge[s>>2])&&0!=(0|Ge[11004+(0|Ge[l>>2])>>2]))return Ge[i>>2]=-2,p=0|Ge[i>>2],Ze=o,0|p;if(n=11004+(0|Ge[l>>2])|0,Ge[n>>2]=Ge[n>>2]|4==(0|Ge[s>>2]),4==(0|Ge[s>>2])&0!=(0|Ge[d>>2]))return Ge[E>>2]=4|Ge[E>>2],Ge[S>>2]=Ge[4+(0|Ge[a>>2])>>2],Ge[_>>2]=Ge[16+(0|Ge[a>>2])>>2],d=0|L(0|Ge[l>>2],0|Ge[Ge[a>>2]>>2],S,0|Ge[12+(0|Ge[a>>2])>>2],0|Ge[12+(0|Ge[a>>2])>>2],_,0|Ge[E>>2],0|Ge[u>>2],0|Ge[c>>2]),Ge[h>>2]=d,Ge[43780+(0|Ge[l>>2])>>2]=Ge[h>>2],d=0|Ge[a>>2],Ge[d>>2]=(0|Ge[d>>2])+(0|Ge[S>>2]),d=4+(0|Ge[a>>2])|0,Ge[d>>2]=(0|Ge[d>>2])-(0|Ge[S>>2]),d=8+(0|Ge[a>>2])|0,Ge[d>>2]=(0|Ge[d>>2])+(0|Ge[S>>2]),Ge[40+(0|Ge[a>>2])>>2]=Ge[28+(0|Ge[l>>2])>>2],d=12+(0|Ge[a>>2])|0,Ge[d>>2]=(0|Ge[d>>2])+(0|Ge[_>>2]),d=16+(0|Ge[a>>2])|0,Ge[d>>2]=(0|Ge[d>>2])-(0|Ge[_>>2]),d=20+(0|Ge[a>>2])|0,Ge[d>>2]=(0|Ge[d>>2])+(0|Ge[_>>2]),Ze=(p=((0|Ge[h>>2])<0?Ge[i>>2]=-3:0|Ge[h>>2]?(Ge[43780+(0|Ge[l>>2])>>2]=-1,Ge[i>>2]=-5):Ge[i>>2]=1,0|Ge[i>>2]),o),0|p;if(4!=(0|Ge[s>>2])&&(Ge[E>>2]=2|Ge[E>>2]),0|Ge[10996+(0|Ge[l>>2])>>2])return Ge[f>>2]=Ge[((0|Ge[10996+(0|Ge[l>>2])>>2])>>>0<(0|Ge[16+(0|Ge[a>>2])>>2])>>>0?10996+(0|Ge[l>>2])|0:16+(0|Ge[a>>2])|0)>>2],tr(0|Ge[12+(0|Ge[a>>2])>>2],11012+(0|Ge[l>>2])+(0|Ge[10992+(0|Ge[l>>2])>>2])|0,0|Ge[f>>2]),d=12+(0|Ge[a>>2])|0,Ge[d>>2]=(0|Ge[d>>2])+(0|Ge[f>>2]),d=16+(0|Ge[a>>2])|0,Ge[d>>2]=(0|Ge[d>>2])-(0|Ge[f>>2]),d=20+(0|Ge[a>>2])|0,Ge[d>>2]=(0|Ge[d>>2])+(0|Ge[f>>2]),d=10996+(0|Ge[l>>2])|0,Ge[d>>2]=(0|Ge[d>>2])-(0|Ge[f>>2]),Ge[10992+(0|Ge[l>>2])>>2]=(0|Ge[10992+(0|Ge[l>>2])>>2])+(0|Ge[f>>2])&32767,F=0|Ge[43780+(0|Ge[l>>2])>>2]?0:0!=(0|Ge[10996+(0|Ge[l>>2])>>2])^1,Ge[i>>2]=F?1:0,p=0|Ge[i>>2],Ze=o,0|p;for(;;){if(Ge[S>>2]=Ge[4+(0|Ge[a>>2])>>2],Ge[_>>2]=32768-(0|Ge[10992+(0|Ge[l>>2])>>2]),F=0|L(0|Ge[l>>2],0|Ge[Ge[a>>2]>>2],S,11012+(0|Ge[l>>2])|0,11012+(0|Ge[l>>2])+(0|Ge[10992+(0|Ge[l>>2])>>2])|0,_,0|Ge[E>>2],0|Ge[u>>2],0|Ge[c>>2]),Ge[h>>2]=F,Ge[43780+(0|Ge[l>>2])>>2]=Ge[h>>2],F=0|Ge[a>>2],Ge[F>>2]=(0|Ge[F>>2])+(0|Ge[S>>2]),F=4+(0|Ge[a>>2])|0,Ge[F>>2]=(0|Ge[F>>2])-(0|Ge[S>>2]),F=8+(0|Ge[a>>2])|0,Ge[F>>2]=(0|Ge[F>>2])+(0|Ge[S>>2]),Ge[40+(0|Ge[a>>2])>>2]=Ge[28+(0|Ge[l>>2])>>2],Ge[10996+(0|Ge[l>>2])>>2]=Ge[_>>2],Ge[f>>2]=Ge[((0|Ge[10996+(0|Ge[l>>2])>>2])>>>0<(0|Ge[16+(0|Ge[a>>2])>>2])>>>0?10996+(0|Ge[l>>2])|0:16+(0|Ge[a>>2])|0)>>2],tr(0|Ge[12+(0|Ge[a>>2])>>2],11012+(0|Ge[l>>2])+(0|Ge[10992+(0|Ge[l>>2])>>2])|0,0|Ge[f>>2]),F=12+(0|Ge[a>>2])|0,Ge[F>>2]=(0|Ge[F>>2])+(0|Ge[f>>2]),F=16+(0|Ge[a>>2])|0,Ge[F>>2]=(0|Ge[F>>2])-(0|Ge[f>>2]),F=20+(0|Ge[a>>2])|0,Ge[F>>2]=(0|Ge[F>>2])+(0|Ge[f>>2]),F=10996+(0|Ge[l>>2])|0,Ge[F>>2]=(0|Ge[F>>2])-(0|Ge[f>>2]),Ge[10992+(0|Ge[l>>2])>>2]=(0|Ge[10992+(0|Ge[l>>2])>>2])+(0|Ge[f>>2])&32767,(0|Ge[h>>2])<0){M=27;break}if(!(1!=(0|Ge[h>>2])|0!=(0|Ge[m>>2]))){M=29;break}if(F=0==(0|Ge[h>>2]),4==(0|Ge[s>>2])){if(F){M=32;break}if(0|Ge[16+(0|Ge[a>>2])>>2])continue;M=34;break}if(F){M=39;break}if(!(0|Ge[4+(0|Ge[a>>2])>>2])){M=39;break}if(!(0|Ge[16+(0|Ge[a>>2])>>2])){M=39;break}if(0|Ge[10996+(0|Ge[l>>2])>>2]){M=39;break}}if(27==(0|M))return Ge[i>>2]=-3,p=0|Ge[i>>2],Ze=o,0|p;if(29==(0|M))return Ge[i>>2]=-5,p=0|Ge[i>>2],Ze=o,0|p;if(32==(0|M))return Ge[i>>2]=0|Ge[10996+(0|Ge[l>>2])>>2]?-5:1,p=0|Ge[i>>2],Ze=o,0|p;if(34==(0|M))return Ge[i>>2]=-5,p=0|Ge[i>>2],Ze=o,0|p;if(39==(0|M))return b=0|Ge[h>>2]?0:0!=(0|Ge[10996+(0|Ge[l>>2])>>2])^1,Ge[i>>2]=b?1:0,p=0|Ge[i>>2],Ze=o,0|p}return Ge[i>>2]=-2,p=0|Ge[i>>2],Ze=o,0|p}(a,4,k,T)),function(e){e|=0;var r=0,t=0,n=0;if((0|(Ze=(r=Ze)+16|0))>=(0|Je)&&Qe(16),t=r+4|0,Ge[(n=r)>>2]=e,!(0|Ge[n>>2]))return Ge[t>>2]=-2,Ge[t>>2],Ze=r;0|Ge[28+(0|Ge[n>>2])>>2]&&(B(0|Ge[28+(0|Ge[n>>2])>>2]),Ge[28+(0|Ge[n>>2])>>2]=0),Ge[t>>2]=0,Ge[t>>2],Ze=r}(a),!N){B(v);break}if((0|(N=0|function(e,r,t){e|=0,r|=0,t|=0;var n=0,o=0,i=0,a=0,s=0,u=0,c=0,l=0,f=0;(0|(Ze=(n=Ze)+32|0))>=(0|Je)&&Qe(32);if(o=n+20|0,a=n+12|0,s=n+8|0,u=n+4|0,l=(c=n)+24|0,Ge[(i=n+16|0)>>2]=e,Ge[a>>2]=r,Ge[s>>2]=t,Ge[u>>2]=Ge[a>>2],Ge[c>>2]=Ge[i>>2],!(0|Ge[u>>2]))return Ge[o>>2]=0,f=0|Ge[o>>2],Ze=n,0|f;Ge[c>>2]=~Ge[c>>2];for(;i=0|Ge[s>>2],Ge[s>>2]=i-1,i;)i=0|Ge[u>>2],Ge[u>>2]=1+i,Xe[l>>0]=0|Xe[i>>0],Ge[c>>2]=(0|Ge[c>>2])>>>4^Ge[8+((15&Ge[c>>2]^15&(0|qe[l>>0]))<<2)>>2],Ge[c>>2]=(0|Ge[c>>2])>>>4^Ge[8+((15&Ge[c>>2]^(0|qe[l>>0])>>4)<<2)>>2];return Ge[o>>2]=~Ge[c>>2],f=0|Ge[o>>2],Ze=n,0|f}(0,v,d)))==(0|l)){P(0,0|u,0|d,0|v),B(v);break}Ge[o>>2]=N,Ge[4+o>>2]=l,ie(1175,o),B(v);break}}while(B(v),0)}if(M=10,function(e,r){var t=0,n=0,o=0,i=0,a=0,s=0;n=t=255&(e|=0),0<=(0|Ge[76+(r|=0)>>2])&&0!=(0|V())?(a=(0|n)!=(0|Xe[r+75>>0])&&(i=0|Ge[(o=r+20|0)>>2])>>>0<(0|Ge[r+16>>2])>>>0?(Ge[o>>2]=i+1,Xe[i>>0]=t,n):0|J(r,e),K()):s=3;do{if(3==(0|s)){if((0|n)!=(0|Xe[r+75>>0])&&(i=0|Ge[(a=r+20|0)>>2])>>>0<(0|Ge[r+16>>2])>>>0){Ge[a>>2]=i+1,Xe[i>>0]=t,0;break}J(r,e)}}while(0)}(M|=0,0|Ge[208]),33639248!=((0|qe[(g=g+(46+E+_+S)|0)+3>>0])<<24|((0|qe[g+2>>0])<<16|((0|qe[g+1>>0])<<8|0|qe[g>>0]))|0))break r;T=d+T|0}return Ge[n>>2]=240,ie(967,n),B(0|Ge[s>>2]),Ze=r,0}}while(0);return C(1),Ge[t>>2]=307,ie(967,t),B(0|Ge[s>>2]),Ze=r,0}}while(0);return Ge[i>>2]=188,ie(967,i),B(0|Ge[s>>2]),Ze=r,0}function L(e,r,t,n,o,i,a,s,u){e|=0,r|=0,t|=0,n|=0,o|=0,i|=0,a|=0,s|=0,u|=0;var c,l,f,d,E,S,_,m,h,p,F,M,b,y,O,w,R,A,k,T,g,v,N,D,P,C,I,L,x,B,H,U,Y,z,V,K,W,X,j,G,q,Z,J,Q,$,ee,re,te,ne,oe,ie,ae,se,ue,ce,le,fe,de,Ee,Se,_e,me,he,pe,Fe,Me,be,ye,Oe,we,Re,Ae,ke,Te=0,ge=0,ve=0,Ne=0,De=0,Pe=0,Ce=0,Ie=0,Le=0,xe=0,Be=0,He=0,Ue=0,Ye=0,ze=0,Ve=0,Ke=0,We=Ze;if((0|Je)<=(0|(Ze=Ze+432|0))&&Qe(432),c=We+416|0,f=We+408|0,d=We+404|0,E=We+400|0,Te=We+396|0,S=We+392|0,_=We+388|0,m=We+384|0,h=We+380|0,p=We+376|0,F=We+372|0,M=We+368|0,b=We+364|0,y=We+360|0,O=We+356|0,w=We+352|0,R=We+348|0,A=We+344|0,k=We+340|0,T=We+336|0,g=We+332|0,v=We+328|0,N=We+324|0,D=We+320|0,P=We+316|0,C=We+312|0,I=We+308|0,L=We+304|0,x=We+300|0,B=We+296|0,H=We+292|0,U=We+288|0,Y=We+284|0,z=We+280|0,V=We+276|0,K=We+272|0,W=We+268|0,X=We+264|0,j=We+260|0,G=We+192|0,q=We+128|0,Z=We+120|0,J=We+116|0,Q=We+112|0,$=We+108|0,ee=We+420|0,re=We+104|0,te=We+100|0,ne=We+96|0,oe=We+92|0,ie=We+88|0,ae=We+84|0,se=We+80|0,ue=We+76|0,ce=We+72|0,le=We+68|0,fe=We+64|0,de=We+60|0,Ee=We+56|0,Se=We+52|0,_e=We+48|0,me=We+44|0,he=We+40|0,pe=We+36|0,Fe=We+32|0,Me=We+28|0,be=We+24|0,ye=We+20|0,Oe=We+16|0,we=We+12|0,Re=We+8|0,Ae=We+4|0,Ge[(l=(ke=We)+412|0)>>2]=e,Ge[f>>2]=r,Ge[d>>2]=t,Ge[E>>2]=n,Ge[Te>>2]=o,Ge[S>>2]=i,Ge[_>>2]=a,Ge[m>>2]=s,Ge[h>>2]=u,Ge[p>>2]=-1,Ge[w>>2]=Ge[f>>2],Ge[R>>2]=(0|Ge[f>>2])+(0|Ge[Ge[d>>2]>>2]),Ge[A>>2]=Ge[Te>>2],Ge[k>>2]=(0|Ge[Te>>2])+(0|Ge[Ge[S>>2]>>2]),ge=4&Ge[_>>2]|0?-1:(0|Ge[Te>>2])-(0|Ge[E>>2])+(0|Ge[Ge[S>>2]>>2])-1|0,Ge[T>>2]=ge,0==(1+(0|Ge[T>>2])&Ge[T>>2]|0)&&(0|Ge[Te>>2])>>>0>=(0|Ge[E>>2])>>>0){switch(Ge[F>>2]=Ge[4+(0|Ge[l>>2])>>2],Ge[O>>2]=Ge[56+(0|Ge[l>>2])>>2],Ge[M>>2]=Ge[32+(0|Ge[l>>2])>>2],Ge[b>>2]=Ge[36+(0|Ge[l>>2])>>2],Ge[y>>2]=Ge[40+(0|Ge[l>>2])>>2],Ge[g>>2]=Ge[60+(0|Ge[l>>2])>>2],0|Ge[Ge[l>>2]>>2]){case 0:Ge[12+(0|Ge[l>>2])>>2]=0,Ge[8+(0|Ge[l>>2])>>2]=0,Ge[y>>2]=0,Ge[b>>2]=0,Ge[M>>2]=0,Ge[F>>2]=0,Ge[O>>2]=0,Ge[28+(0|Ge[l>>2])>>2]=1,ve=(Ge[16+(0|Ge[l>>2])>>2]=1)&Ge[_>>2]|0?(0|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0?9:(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ne=0|qe[ge>>0],De=0|Ge[l>>2],15):31;break;case 1:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ne=0|qe[ge>>0],De=0|Ge[l>>2],15):9;break;case 2:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Pe=0|Ge[l>>2],Ce=0|qe[ge>>0],22):16;break;case 36:ve=30;break;case 3:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ge[v>>2]=qe[ge>>0],39):33;break;case 5:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ge[N>>2]=qe[ge>>0],49):43;break;case 6:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ge[D>>2]=qe[ge>>0],61):55;break;case 7:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ie=0|Xe[ge>>0],Le=0|Ge[b>>2],xe=0|Ge[l>>2],70):64;break;case 39:ve=73;break;case 51:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ge[P>>2]=qe[ge>>0],83):77;break;case 52:ve=85;break;case 9:ve=89;break;case 38:ve=91;break;case 40:ve=94;break;case 10:ve=100;break;case 11:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ge[x>>2]=qe[ge>>0],121):115;break;case 14:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ge[H>>2]=qe[ge>>0],133):127;break;case 35:ve=144;break;case 16:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ge[oe>>2]=qe[ge>>0],185):179;break;case 17:ve=194;break;case 18:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ge[ie>>2]=qe[ge>>0],203):197;break;case 21:ve=208;break;case 23:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ge[ce>>2]=qe[ge>>0],231):225;break;case 24:ve=238;break;case 25:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ge[Ee>>2]=qe[ge>>0],267):261;break;case 26:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ge[me>>2]=qe[ge>>0],286):280;break;case 27:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ge[pe>>2]=qe[ge>>0],301):295;break;case 37:ve=305;break;case 53:ve=308;break;case 32:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ge[Fe>>2]=qe[ge>>0],326):320;break;case 41:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ge[be>>2]=qe[ge>>0],338):332;break;case 42:ve=(0|Ge[w>>2])>>>0<(0|Ge[R>>2])>>>0?(ge=0|Ge[w>>2],Ge[w>>2]=ge+1,Ge[Me>>2]=qe[ge>>0],347):341;break;case 34:ve=348;break;default:ve=350}do{if(9==(0|ve)){if(2&Ge[_>>2]|0){Be=Ge[p>>2]=1,He=0|Ge[l>>2],ve=349;break}De=(Ne=0)|Ge[l>>2],ve=15;break}}while(0);15==(0|ve)&&(Ge[De+8>>2]=Ne,ve=(0|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0?16:(Ne=0|Ge[w>>2],Ge[w>>2]=Ne+1,Pe=0|Ge[l>>2],Ce=0|qe[Ne>>0],22));do{if(16==(0|ve)){if(2&Ge[_>>2]|0){Ge[p>>2]=1,He=0|Ge[l>>(Be=2)],ve=349;break}Pe=0|Ge[l>>2],Ce=0,ve=22;break}}while(0);22==(0|ve)&&(Ge[Pe+12>>2]=Ce,Ue=(((Ge[8+(0|Ge[l>>2])>>2]<<8)+(0|Ge[12+(0|Ge[l>>2])>>2])|0)>>>0)%31|0||32&Ge[12+(0|Ge[l>>2])>>2]|0?1:8!=(15&Ge[8+(0|Ge[l>>2])>>2]|0),Ge[b>>2]=1&Ue,4&Ge[_>>2]||(Ye=32768<1<<8+((0|Ge[8+(0|Ge[l>>2])>>2])>>>4)>>>0?1:(1+(0|Ge[T>>2])|0)>>>0<1<<8+((0|Ge[8+(0|Ge[l>>2])>>2])>>>4)>>>0,Ge[b>>2]=Ge[b>>2]|1&Ye),ve=0|Ge[b>>2]?30:31),30==(0|ve)&&(Ge[p>>2]=-1,Be=36,He=0|Ge[l>>2],ve=349);e:for(;;){switch(0|ve){case 31:$e(2,((ve=0)|Ge[h>>2])+(0|Ge[g>>2])|0,0|Ge[m>>2]),ve=(0|Ge[F>>2])>>>0<3?32:40;break;case 33:if(ve=0,2&Ge[_>>2]|0){Ge[p>>2]=1,Be=3,He=0|Ge[l>>2],ve=349;continue e}Ge[v>>2]=0,ve=39;continue e;case 39:ve=0,Ge[O>>2]=Ge[O>>2]|Ge[v>>2]<<Ge[F>>2],Ge[F>>2]=8+(0|Ge[F>>2]),ve=(0|Ge[F>>2])>>>0<3?32:40;break;case 43:if(ve=0,2&Ge[_>>2]|0){Ge[p>>2]=1,Be=5,He=0|Ge[l>>2],ve=349;continue e}Ge[N>>2]=0,ve=49;continue e;case 49:ve=0,Ge[O>>2]=Ge[O>>2]|Ge[N>>2]<<Ge[F>>2],Ge[F>>2]=8+(0|Ge[F>>2]),ve=(0|Ge[F>>2])>>>0<(7&Ge[F>>2])>>>0?42:50;break;case 55:if(ve=0,2&Ge[_>>2]|0){Ge[p>>2]=1,Be=6,He=0|Ge[l>>2],ve=349;continue e}Ge[D>>2]=0,ve=61;continue e;case 61:ve=0,Ge[O>>2]=Ge[O>>2]|Ge[D>>2]<<Ge[F>>2],Ge[F>>2]=8+(0|Ge[F>>2]),ve=(0|Ge[F>>2])>>>0<8?54:62;break;case 64:if(ve=0,2&Ge[_>>2]|0){Ge[p>>2]=1,Be=7,He=0|Ge[l>>2],ve=349;continue e}Le=(Ie=0)|Ge[b>>2],xe=0|Ge[l>>2],ve=70;continue e;case 70:Xe[xe+10528+Le>>(ve=0)]=Ie,ve=71;break;case 73:ve=0,Ge[p>>2]=-1,Be=39,He=0|Ge[l>>2],ve=349;continue e;case 77:if(ve=0,2&Ge[_>>2]|0){Ge[p>>2]=1,Be=51,He=0|Ge[l>>2],ve=349;continue e}Ge[P>>2]=0,ve=83;continue e;case 83:ve=0,Ge[O>>2]=Ge[O>>2]|Ge[P>>2]<<Ge[F>>2],Ge[F>>2]=8+(0|Ge[F>>2]),ve=(0|Ge[F>>2])>>>0<8?76:84;break;case 85:if(((ve=0)|Ge[A>>2])>>>0>=(0|Ge[k>>2])>>>0){Ge[p>>2]=2,Be=52,He=0|Ge[l>>2],ve=349;continue e}Ye=255&Ge[M>>2],Ue=0|Ge[A>>2],Ge[A>>2]=Ue+1,Xe[Ue>>0]=Ye,Ge[b>>2]=(0|Ge[b>>2])-1,ve=74;break;case 89:if(((ve=0)|Ge[A>>2])>>>0<(0|Ge[k>>2])>>>0){ve=91;continue e}Ge[p>>2]=2,Be=9,He=0|Ge[l>>2],ve=349;continue e;case 91:if(((ve=0)|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0){if(!(2&Ge[_>>2])){ve=94;continue e}Ge[p>>2]=1,Be=38,He=0|Ge[l>>2],ve=349;continue e}ze=(((Ye=((0|Ge[k>>2])-(0|Ge[A>>2])|0)>>>0<((0|Ge[R>>2])-(0|Ge[w>>2])|0)>>>0)?0|Ge[k>>2]:0|Ge[R>>2])-(Ye?0|Ge[A>>2]:0|Ge[w>>2])|0)>>>0<(0|Ge[b>>2])>>>0?((Ye=((0|Ge[k>>2])-(0|Ge[A>>2])|0)>>>0<((0|Ge[R>>2])-(0|Ge[w>>2])|0)>>>0)?0|Ge[k>>2]:0|Ge[R>>2])-(Ye?0|Ge[A>>2]:0|Ge[w>>2])|0:0|Ge[b>>2],Ge[C>>2]=ze,tr(0|Ge[A>>2],0|Ge[w>>2],0|Ge[C>>2]),Ge[w>>2]=(0|Ge[w>>2])+(0|Ge[C>>2]),Ge[A>>2]=(0|Ge[A>>2])+(0|Ge[C>>2]),Ge[b>>2]=(0|Ge[b>>2])-(0|Ge[C>>2]),ve=88;break;case 94:ve=0,Ge[p>>2]=-1,Be=40,He=0|Ge[l>>2],ve=349;continue e;case 100:ve=0,Ge[p>>2]=-1,Be=10,He=0|Ge[l>>2],ve=349;continue e;case 115:if(ve=0,2&Ge[_>>2]|0){Ge[p>>2]=1,Be=11,He=0|Ge[l>>2],ve=349;continue e}Ge[x>>2]=0,ve=121;continue e;case 121:ve=0,Ge[O>>2]=Ge[O>>2]|Ge[x>>2]<<Ge[F>>2],Ge[F>>2]=8+(0|Ge[F>>2]),ve=(0|Ge[F>>2])>>>0<(0|Xe[1331+(0|Ge[b>>2])>>0])>>>0?114:122;break;case 127:if(ve=0,2&Ge[_>>2]|0){Ge[p>>2]=1,Be=14,He=0|Ge[l>>2],ve=349;continue e}Ge[H>>2]=0,ve=133;continue e;case 133:ve=0,Ge[O>>2]=Ge[O>>2]|Ge[H>>2]<<Ge[F>>2],Ge[F>>2]=8+(0|Ge[F>>2]),ve=(0|Ge[F>>2])>>>0<3?126:134;break;case 144:ve=0,Ge[p>>2]=-1,Be=35,He=0|Ge[l>>2],ve=349;continue e;case 179:if(ve=0,2&Ge[_>>2]|0){Ge[p>>2]=1,Be=16,He=0|Ge[l>>2],ve=349;continue e}Ge[oe>>2]=0,ve=185;continue e;case 185:ve=0,Ge[O>>2]=Ge[O>>2]|Ge[oe>>2]<<Ge[F>>2],Ge[F>>2]=8+(0|Ge[F>>2]),ve=(0|Ge[F>>2])>>>0<15?170:187;break;case 194:ve=0,Ge[p>>2]=-1,Be=17,He=0|Ge[l>>2],ve=349;continue e;case 197:if(ve=0,2&Ge[_>>2]|0){Ge[p>>2]=1,Be=18,He=0|Ge[l>>2],ve=349;continue e}Ge[ie>>2]=0,ve=203;continue e;case 203:ve=0,Ge[O>>2]=Ge[O>>2]|Ge[ie>>2]<<Ge[F>>2],Ge[F>>2]=8+(0|Ge[F>>2]),ve=(0|Ge[F>>2])>>>0<(0|Ge[y>>2])>>>0?196:204;break;case 208:ve=0,Ge[p>>2]=-1,Be=21,He=0|Ge[l>>2],ve=349;continue e;case 225:if(ve=0,2&Ge[_>>2]|0){Ge[p>>2]=1,Be=23,He=0|Ge[l>>2],ve=349;continue e}Ge[ce>>2]=0,ve=231;continue e;case 231:ve=0,Ge[O>>2]=Ge[O>>2]|Ge[ce>>2]<<Ge[F>>2],Ge[F>>2]=8+(0|Ge[F>>2]),ve=(0|Ge[F>>2])>>>0<15?216:233;break;case 238:if(((ve=0)|Ge[A>>2])>>>0>=(0|Ge[k>>2])>>>0){Ge[p>>2]=2,Be=24,He=0|Ge[l>>2],ve=349;continue e}Ye=255&Ge[b>>2],Ue=0|Ge[A>>2],Ge[A>>2]=Ue+1,Xe[Ue>>0]=Ye,ve=212;break;case 261:if(ve=0,2&Ge[_>>2]|0){Ge[p>>2]=1,Be=25,He=0|Ge[l>>2],ve=349;continue e}Ge[Ee>>2]=0,ve=267;continue e;case 267:ve=0,Ge[O>>2]=Ge[O>>2]|Ge[Ee>>2]<<Ge[F>>2],Ge[F>>2]=8+(0|Ge[F>>2]),ve=(0|Ge[F>>2])>>>0<(0|Ge[y>>2])>>>0?260:268;break;case 280:if(ve=0,2&Ge[_>>2]|0){Ge[p>>2]=1,Be=26,He=0|Ge[l>>2],ve=349;continue e}Ge[me>>2]=0,ve=286;continue e;case 286:ve=0,Ge[O>>2]=Ge[O>>2]|Ge[me>>2]<<Ge[F>>2],Ge[F>>2]=8+(0|Ge[F>>2]),ve=(0|Ge[F>>2])>>>0<15?271:288;break;case 295:if(ve=0,2&Ge[_>>2]|0){Ge[p>>2]=1,Be=27,He=0|Ge[l>>2],ve=349;continue e}Ge[pe>>2]=0,ve=301;continue e;case 301:ve=0,Ge[O>>2]=Ge[O>>2]|Ge[pe>>2]<<Ge[F>>2],Ge[F>>2]=8+(0|Ge[F>>2]),ve=(0|Ge[F>>2])>>>0<(0|Ge[y>>2])>>>0?294:302;break;case 305:ve=0,Ge[p>>2]=-1,Be=37,He=0|Ge[l>>2],ve=349;continue e;case 308:if(((ve=0)|Ge[A>>2])>>>0>=(0|Ge[k>>2])>>>0){Ge[p>>2]=2,Be=53,He=0|Ge[l>>2],ve=349;continue e}Ye=0|Ge[g>>2],Ge[g>>2]=Ye+1,Ue=0|Xe[(0|Ge[E>>2])+(Ye-(0|Ge[M>>2])&Ge[T>>2])>>0],Ye=0|Ge[A>>2],Ge[A>>2]=Ye+1,Xe[Ye>>0]=Ue,ve=307;break;case 320:if(ve=0,2&Ge[_>>2]|0){Ge[p>>2]=1,Be=32,He=0|Ge[l>>2],ve=349;continue e}Ge[Fe>>2]=0,ve=326;continue e;case 326:ve=0,Ge[O>>2]=Ge[O>>2]|Ge[Fe>>2]<<Ge[F>>2],Ge[F>>2]=8+(0|Ge[F>>2]),ve=(0|Ge[F>>2])>>>0<(7&Ge[F>>2])>>>0?319:327;break;case 332:if(ve=0,2&Ge[_>>2]|0){Ge[p>>2]=1,Be=41,He=0|Ge[l>>2],ve=349;continue e}Ge[be>>2]=0,ve=338;continue e;case 338:ve=0,Ge[O>>2]=Ge[O>>2]|Ge[be>>2]<<Ge[F>>2],Ge[F>>2]=8+(0|Ge[F>>2]),ve=(0|Ge[F>>2])>>>0<8?331:339;break;case 341:if(ve=0,2&Ge[_>>2]|0){Ge[p>>2]=1,Be=42,He=0|Ge[l>>2],ve=349;continue e}Ge[Me>>2]=0,ve=347;continue e;case 347:Ge[16+((ve=0)|Ge[l>>2])>>2]=Ge[16+(0|Ge[l>>2])>>2]<<8|Ge[Me>>2],Ge[b>>2]=1+(0|Ge[b>>2]),ve=328;break;case 348:ve=0,Be=34,He=(Ge[p>>2]=0)|Ge[l>>2],ve=349;continue e;case 349:ve=0,Ge[He>>2]=Be,ve=350;continue e;case 350:if(Ge[4+((ve=0)|Ge[l>>2])>>2]=Ge[F>>2],Ge[56+(0|Ge[l>>2])>>2]=Ge[O>>2],Ge[32+(0|Ge[l>>2])>>2]=Ge[M>>2],Ge[36+(0|Ge[l>>2])>>2]=Ge[b>>2],Ge[40+(0|Ge[l>>2])>>2]=Ge[y>>2],Ge[60+(0|Ge[l>>2])>>2]=Ge[g>>2],Ge[Ge[d>>2]>>2]=(0|Ge[w>>2])-(0|Ge[f>>2]),Ge[Ge[S>>2]>>2]=(0|Ge[A>>2])-(0|Ge[Te>>2]),0!=(9&Ge[_>>2]|0)&0<=(0|Ge[p>>2])){ve=351;break e}break e}if(32!=(0|ve)){r:do{if(40==(0|ve)){if(Ge[20+((ve=0)|Ge[l>>2])>>2]=7&Ge[O>>2],Ge[O>>2]=(0|Ge[O>>2])>>>3,Ge[F>>2]=(0|Ge[F>>2])-3,Ge[24+(0|Ge[l>>2])>>2]=(0|Ge[20+(0|Ge[l>>2])>>2])>>>1,!(0|Ge[24+(0|Ge[l>>2])>>2])){if((0|Ge[F>>2])>>>0<(7&Ge[F>>2])>>>0){ve=42;break}ve=50;break}if(3==(0|Ge[24+(0|Ge[l>>2])>>2])){ve=100;continue e}if(1!=(0|Ge[24+(0|Ge[l>>2])>>2])){Ge[b>>2]=0,ve=112;break}for(Ge[I>>2]=64+(0|Ge[l>>2]),Ge[44+(0|Ge[l>>2])>>2]=288,Ge[44+(0|Ge[l>>2])+4>>2]=32,Ue=64+(0|Ge[l>>2])+3488|0,Ge[Ue>>2]=84215045,Ge[Ue+4>>2]=84215045,Ge[Ue+8>>2]=84215045,Ge[Ue+12>>2]=84215045,Ge[Ue+16>>2]=84215045,Ge[Ue+20>>2]=84215045,Ge[Ue+24>>2]=84215045,Ge[Ue+28>>2]=84215045,Ge[L>>2]=0;!(143<(0|Ge[L>>2])>>>0);)Ue=0|Ge[I>>2],Ge[I>>2]=Ue+1,Xe[Ue>>0]=8,Ge[L>>2]=1+(0|Ge[L>>2]);for(;!(255<(0|Ge[L>>2])>>>0);)Ue=0|Ge[I>>2],Ge[I>>2]=Ue+1,Xe[Ue>>0]=9,Ge[L>>2]=1+(0|Ge[L>>2]);for(;!(279<(0|Ge[L>>2])>>>0);)Ue=0|Ge[I>>2],Ge[I>>2]=Ue+1,Xe[Ue>>0]=7,Ge[L>>2]=1+(0|Ge[L>>2]);for(;;){if(287<(0|Ge[L>>2])>>>0){ve=136;break r}Ue=0|Ge[I>>2],Ge[I>>2]=Ue+1,Xe[Ue>>0]=8,Ge[L>>2]=1+(0|Ge[L>>2])}}}while(0);if(42!=(0|ve)){50==(0|ve)&&(ve=0,Ge[O>>2]=(0|Ge[O>>2])>>>(7&Ge[F>>2]),Ge[F>>2]=(0|Ge[F>>2])-(7&Ge[F>>2]),Ge[b>>2]=0,ve=51);r:for(;;){switch(0|ve){case 51:if(4<=((ve=0)|Ge[b>>2])>>>0){if(Ue=qe[10528+(0|Ge[l>>2])>>0]|qe[10528+(0|Ge[l>>2])+1>>0]<<8,(0|(Ge[b>>2]=Ue))!=(65535^(qe[10528+(0|Ge[l>>2])+2>>0]|qe[10528+(0|Ge[l>>2])+3>>0]<<8)|0)){ve=73;continue e}ve=74;continue r}if(!(0|Ge[F>>2])){ve=63;break r}if((0|Ge[F>>2])>>>0<8){ve=54;continue r}ve=62;continue r;case 54:if(((ve=0)|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0){ve=55;continue e}ve=60;break r;case 62:Xe[10528+((ve=0)|Ge[l>>2])+(0|Ge[b>>2])>>0]=Ge[O>>2],Ge[O>>2]=(0|Ge[O>>2])>>>8,Ge[F>>2]=(0|Ge[F>>2])-8,ve=71;continue r;case 71:ve=0,Ge[b>>2]=1+(0|Ge[b>>2]),ve=51;continue r;case 74:if(!((ve=0)|Ge[b>>2]&&0!=(0|Ge[F>>2]))){ve=88;continue r}if((0|Ge[F>>2])>>>0<8){ve=76;continue r}ve=84;continue r;case 76:if(((ve=0)|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0){ve=77;continue e}ve=82;break r;case 84:ve=0,Ge[M>>2]=255&Ge[O>>2],Ge[O>>2]=(0|Ge[O>>2])>>>8,Ge[F>>2]=(0|Ge[F>>2])-8,ve=85;continue e;case 88:if((ve=0)|Ge[b>>2]){ve=89;continue e}ve=316;break;case 112:if(((ve=0)|Ge[b>>2])>>>0<3){if((0|Ge[F>>2])>>>0<(0|Xe[1331+(0|Ge[b>>2])>>0])>>>0){ve=114;continue r}ve=122;continue r}er(64+(0|Ge[l>>2])+6976|0,0,288),Ge[b>>2]=0,ve=124;break;case 114:if(((ve=0)|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0){ve=115;continue e}ve=120;break r;case 122:Ge[44+((ve=0)|Ge[l>>2])+(Ge[b>>2]<<2)>>2]=Ge[O>>2]&(1<<Xe[1331+(0|Ge[b>>2])>>0])-1,Ge[O>>2]=(0|Ge[O>>2])>>>(0|Xe[1331+(0|Ge[b>>2])>>0]),Ge[F>>2]=(0|Ge[F>>2])-(0|Xe[1331+(0|Ge[b>>2])>>0]),Ue=44+(0|Ge[l>>2])+(Ge[b>>2]<<2)|0,Ge[Ue>>2]=(0|Ge[Ue>>2])+(0|Ge[72+(Ge[b>>2]<<2)>>2]),Ge[b>>2]=1+(0|Ge[b>>2]),ve=112;continue r;case 126:if(((ve=0)|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0){ve=127;continue e}ve=132;break r;case 134:ve=0,Ge[B>>2]=7&Ge[O>>2],Ge[O>>2]=(0|Ge[O>>2])>>>3,Ge[F>>2]=(0|Ge[F>>2])-3,Xe[64+(0|Ge[l>>2])+6976+(0|qe[1335+(0|Ge[b>>2])>>0])>>0]=Ge[B>>2],Ge[b>>2]=1+(0|Ge[b>>2]),ve=124;break;case 136:if((ve=0)<=(0|Ge[24+(0|Ge[l>>2])>>2])){for(Ge[z>>2]=64+(0|Ge[l>>2])+(3488*(0|Ge[24+(0|Ge[l>>2])>>2])|0),Ue=q,Ye=Ue+64|0;Ue=Ue+4|(Ge[Ue>>2]=0),(0|Ue)<(0|Ye););for(er(288+(0|Ge[z>>2])|0,0,2048),er(2336+(0|Ge[z>>2])|0,0,1152),Ge[V>>2]=0;!((0|Ge[V>>2])>>>0>=(0|Ge[44+(0|Ge[l>>2])+(Ge[24+(0|Ge[l>>2])>>2]<<2)>>2])>>>0);)Ue=q+(qe[(0|Ge[z>>2])+(0|Ge[V>>2])>>0]<<2)|0,Ge[Ue>>2]=1+(0|Ge[Ue>>2]),Ge[V>>2]=1+(0|Ge[V>>2]);for(Ge[W>>2]=0,Ge[X>>2]=0,Ge[4+G>>2]=0,Ge[G>>2]=0,Ge[V>>2]=1;!(15<(0|Ge[V>>2])>>>0);)Ge[W>>2]=(0|Ge[W>>2])+(0|Ge[q+(Ge[V>>2]<<2)>>2]),Ue=(0|Ge[X>>2])+(0|Ge[q+(Ge[V>>2]<<2)>>2])<<1,Ge[X>>2]=Ue,Ge[G+(1+(0|Ge[V>>2])<<2)>>2]=Ue,Ge[V>>2]=1+(0|Ge[V>>2]);if(65536!=(0|Ge[X>>2])&1<(0|Ge[W>>2])>>>0){ve=144;continue e}for(Ge[U>>2]=-1,Ge[j>>2]=0;!((0|Ge[j>>2])>>>0>=(0|Ge[44+(0|Ge[l>>2])+(Ge[24+(0|Ge[l>>2])>>2]<<2)>>2])>>>0);){Ge[Z>>2]=0,Ge[$>>2]=qe[(0|Ge[z>>2])+(0|Ge[j>>2])>>0];t:do{if(0|Ge[$>>2]){for(Ue=G+(Ge[$>>2]<<2)|0,Ye=0|Ge[Ue>>2],Ge[Ue>>2]=Ye+1,Ge[Q>>2]=Ye,Ge[J>>2]=Ge[$>>2];!((0|Ge[J>>2])>>>0<=0);)Ge[Z>>2]=Ge[Z>>2]<<1|1&Ge[Q>>2],Ge[J>>2]=(0|Ge[J>>2])-1,Ge[Q>>2]=(0|Ge[Q>>2])>>>1;if((0|Ge[$>>2])>>>0<=10)for(je[ee>>1]=Ge[$>>2]<<9|Ge[j>>2];;){if(1024<=(0|Ge[Z>>2])>>>0)break t;je[288+(0|Ge[z>>2])+(Ge[Z>>2]<<1)>>1]=0|je[ee>>1],Ge[Z>>2]=(0|Ge[Z>>2])+(1<<Ge[$>>2])}for(Ye=0|je[288+(0|Ge[z>>2])+((1023&Ge[Z>>2])<<1)>>1],(Ge[Y>>2]=Ye)||(je[288+(0|Ge[z>>2])+((1023&Ge[Z>>2])<<1)>>1]=Ge[U>>2],Ge[Y>>2]=Ge[U>>2],Ge[U>>2]=(0|Ge[U>>2])-2),Ge[Z>>2]=(0|Ge[Z>>2])>>>9,Ge[K>>2]=Ge[$>>2];Ye=11<(0|Ge[K>>2])>>>0,Ue=(0|Ge[Z>>2])>>>1,Ge[Z>>2]=Ue,Ge[Y>>2]=(0|Ge[Y>>2])-(1&Ue),Ye;)0|je[2336+(0|Ge[z>>2])+(0-(0|Ge[Y>>2])-1<<1)>>1]?Ge[Y>>2]=je[2336+(0|Ge[z>>2])+(0-(0|Ge[Y>>2])-1<<1)>>1]:(je[2336+(0|Ge[z>>2])+(0-(0|Ge[Y>>2])-1<<1)>>1]=Ge[U>>2],Ge[Y>>2]=Ge[U>>2],Ge[U>>2]=(0|Ge[U>>2])-2),Ge[K>>2]=(0|Ge[K>>2])-1;je[2336+(0|Ge[z>>2])+(0-(0|Ge[Y>>2])-1<<1)>>1]=Ge[j>>2]}}while(0);Ge[j>>2]=1+(0|Ge[j>>2])}ve=2==(0|Ge[24+(0|Ge[l>>2])>>2])?(Ge[b>>2]=0,167):210}else ve=211;break;case 170:if(ve=0,Ge[te>>2]=je[64+(0|Ge[l>>2])+6976+288+((1023&Ge[O>>2])<<1)>>1],0<=(0|Ge[te>>2])){if(Ge[ne>>2]=Ge[te>>2]>>9,!(0|Ge[ne>>2])){ve=178;break r}if((0|Ge[F>>2])>>>0>=(0|Ge[ne>>2])>>>0){ve=187;continue r}ve=178;break r}if((0|Ge[F>>2])>>>0<=10){ve=178;break r}Ge[ne>>2]=10;do{if(Ye=~Ge[te>>2],Ue=0|Ge[O>>2],Ce=0|Ge[ne>>2],Ge[ne>>2]=Ce+1,Ge[te>>2]=je[64+(0|Ge[l>>2])+6976+2336+(Ye+(Ue>>>Ce&1)<<1)>>1],0<=(0|Ge[te>>2]))break}while((0|Ge[F>>2])>>>0>=(1+(0|Ge[ne>>2])|0)>>>0);if(0<=(0|Ge[te>>2])){ve=187;continue r}ve=178;break r;case 187:if(Ce=(ve=0)|je[64+(0|Ge[l>>2])+6976+288+((1023&Ge[O>>2])<<1)>>1],0<=(0|(Ge[te>>2]=Ce)))Ge[ne>>2]=Ge[te>>2]>>9,Ge[te>>2]=511&Ge[te>>2];else for(Ge[ne>>2]=10;Ce=~Ge[te>>2],Ue=0|Ge[O>>2],Ye=0|Ge[ne>>2],Ge[ne>>2]=Ye+1,Ge[te>>2]=je[64+(0|Ge[l>>2])+6976+2336+(Ce+(Ue>>>Ye&1)<<1)>>1],(0|Ge[te>>2])<0;);if(Ge[M>>2]=Ge[te>>2],Ge[O>>2]=(0|Ge[O>>2])>>>(0|Ge[ne>>2]),Ge[F>>2]=(0|Ge[F>>2])-(0|Ge[ne>>2]),Ye=0|Ge[M>>2],(0|Ge[M>>2])>>>0<16){Ue=0|Ge[b>>2],Ge[b>>2]=Ue+1,Xe[10532+(0|Ge[l>>2])+Ue>>0]=Ye,ve=167;break}if(!(16!=(0|Ye)|0!=(0|Ge[b>>2]))){ve=194;continue e}if(Ge[y>>2]=Xe[(0|Ge[M>>2])-16+1354>>0],(0|Ge[F>>2])>>>0<(0|Ge[y>>2])>>>0){ve=196;continue r}ve=204;continue r;case 196:if(((ve=0)|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0){ve=197;continue e}ve=202;break r;case 204:ve=0,Ge[re>>2]=Ge[O>>2]&(1<<Ge[y>>2])-1,Ge[O>>2]=(0|Ge[O>>2])>>>(0|Ge[y>>2]),Ge[F>>2]=(0|Ge[F>>2])-(0|Ge[y>>2]),Ge[re>>2]=(0|Ge[re>>2])+(0|Xe[(0|Ge[M>>2])-16+1358>>0]),Ve=16==(0|Ge[M>>2])?0|qe[10532+(0|Ge[l>>2])+((0|Ge[b>>2])-1)>>0]:0,er(10532+(0|Ge[l>>2])+(0|Ge[b>>2])|0,255&Ve|0,0|Ge[re>>2]),Ge[b>>2]=(0|Ge[b>>2])+(0|Ge[re>>2]),ve=167;break;case 212:if(4<=(((ve=0)|Ge[R>>2])-(0|Ge[w>>2])|0)&&2<=((0|Ge[k>>2])-(0|Ge[A>>2])|0)){if((0|Ge[F>>2])>>>0<15&&(Ge[O>>2]=Ge[O>>2]|(qe[Ge[w>>2]>>0]|qe[1+(0|Ge[w>>2])>>0]<<8)<<Ge[F>>2],Ge[w>>2]=2+(0|Ge[w>>2]),Ge[F>>2]=16+(0|Ge[F>>2])),Ye=0|je[64+(0|Ge[l>>2])+288+((1023&Ge[O>>2])<<1)>>1],0<=(0|(Ge[le>>2]=Ye)))Ge[fe>>2]=Ge[le>>2]>>9;else for(Ge[fe>>2]=10;Ye=~Ge[le>>2],Ue=0|Ge[O>>2],Ce=0|Ge[fe>>2],Ge[fe>>2]=Ce+1,Ge[le>>2]=je[64+(0|Ge[l>>2])+2336+(Ye+(Ue>>>Ce&1)<<1)>>1],(0|Ge[le>>2])<0;);if(Ge[b>>2]=Ge[le>>2],Ge[O>>2]=(0|Ge[O>>2])>>>(0|Ge[fe>>2]),Ge[F>>2]=(0|Ge[F>>2])-(0|Ge[fe>>2]),256&Ge[b>>2]|0){ve=257;break}if((0|Ge[F>>2])>>>0<15&&(Ge[O>>2]=Ge[O>>2]|(qe[Ge[w>>2]>>0]|qe[1+(0|Ge[w>>2])>>0]<<8)<<Ge[F>>2],Ge[w>>2]=2+(0|Ge[w>>2]),Ge[F>>2]=16+(0|Ge[F>>2])),Ce=0|je[64+(0|Ge[l>>2])+288+((1023&Ge[O>>2])<<1)>>1],0<=(0|(Ge[le>>2]=Ce)))Ge[fe>>2]=Ge[le>>2]>>9;else for(Ge[fe>>2]=10;Ce=~Ge[le>>2],Ue=0|Ge[O>>2],Ye=0|Ge[fe>>2],Ge[fe>>2]=Ye+1,Ge[le>>2]=je[64+(0|Ge[l>>2])+2336+(Ce+(Ue>>>Ye&1)<<1)>>1],(0|Ge[le>>2])<0;);if(Ge[O>>2]=(0|Ge[O>>2])>>>(0|Ge[fe>>2]),Ge[F>>2]=(0|Ge[F>>2])-(0|Ge[fe>>2]),Xe[Ge[A>>2]>>0]=Ge[b>>2],256&Ge[le>>2]|0){Ge[A>>2]=1+(0|Ge[A>>2]),Ge[b>>2]=Ge[le>>2],ve=257;break}Xe[1+(0|Ge[A>>2])>>0]=Ge[le>>2],Ge[A>>2]=2+(0|Ge[A>>2]),ve=212;continue r}if(15<=(0|Ge[F>>2])>>>0){ve=233;continue r}if(((0|Ge[R>>2])-(0|Ge[w>>2])|0)<2){ve=216;continue r}Ge[O>>2]=Ge[O>>2]|(qe[Ge[w>>2]>>0]<<Ge[F>>2]|qe[1+(0|Ge[w>>2])>>0]<<8+(0|Ge[F>>2])),Ge[w>>2]=2+(0|Ge[w>>2]),Ge[F>>2]=16+(0|Ge[F>>2]),ve=233;continue r;case 216:if(ve=0,Ge[se>>2]=je[64+(0|Ge[l>>2])+288+((1023&Ge[O>>2])<<1)>>1],0<=(0|Ge[se>>2])){if(Ge[ue>>2]=Ge[se>>2]>>9,!(0|Ge[ue>>2])){ve=224;break r}if((0|Ge[F>>2])>>>0>=(0|Ge[ue>>2])>>>0){ve=233;continue r}ve=224;break r}if((0|Ge[F>>2])>>>0<=10){ve=224;break r}Ge[ue>>2]=10;do{if(Ye=~Ge[se>>2],Ue=0|Ge[O>>2],Ce=0|Ge[ue>>2],Ge[ue>>2]=Ce+1,Ge[se>>2]=je[64+(0|Ge[l>>2])+2336+(Ye+(Ue>>>Ce&1)<<1)>>1],0<=(0|Ge[se>>2]))break}while((0|Ge[F>>2])>>>0>=(1+(0|Ge[ue>>2])|0)>>>0);if(0<=(0|Ge[se>>2])){ve=233;continue r}ve=224;break r;case 233:if(Ce=(ve=0)|je[64+(0|Ge[l>>2])+288+((1023&Ge[O>>2])<<1)>>1],0<=(0|(Ge[se>>2]=Ce)))Ge[ue>>2]=Ge[se>>2]>>9,Ge[se>>2]=511&Ge[se>>2];else for(Ge[ue>>2]=10;Ce=~Ge[se>>2],Ue=0|Ge[O>>2],Ye=0|Ge[ue>>2],Ge[ue>>2]=Ye+1,Ge[se>>2]=je[64+(0|Ge[l>>2])+2336+(Ce+(Ue>>>Ye&1)<<1)>>1],(0|Ge[se>>2])<0;);if(Ge[b>>2]=Ge[se>>2],Ge[O>>2]=(0|Ge[O>>2])>>>(0|Ge[ue>>2]),Ge[F>>2]=(0|Ge[F>>2])-(0|Ge[ue>>2]),!(256<=(0|Ge[b>>2])>>>0)){ve=238;continue e}ve=257;break;case 260:if(((ve=0)|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0){ve=261;continue e}ve=266;break r;case 268:ve=0,Ge[de>>2]=Ge[O>>2]&(1<<Ge[y>>2])-1,Ge[O>>2]=(0|Ge[O>>2])>>>(0|Ge[y>>2]),Ge[F>>2]=(0|Ge[F>>2])-(0|Ge[y>>2]),Ge[b>>2]=(0|Ge[b>>2])+(0|Ge[de>>2]),ve=269;break;case 271:if(ve=0,Ge[Se>>2]=je[64+(0|Ge[l>>2])+3488+288+((1023&Ge[O>>2])<<1)>>1],0<=(0|Ge[Se>>2])){if(Ge[_e>>2]=Ge[Se>>2]>>9,!(0|Ge[_e>>2])){ve=279;break r}if((0|Ge[F>>2])>>>0>=(0|Ge[_e>>2])>>>0){ve=288;continue r}ve=279;break r}if((0|Ge[F>>2])>>>0<=10){ve=279;break r}Ge[_e>>2]=10;do{if(Ye=~Ge[Se>>2],Ue=0|Ge[O>>2],Ce=0|Ge[_e>>2],Ge[_e>>2]=Ce+1,Ge[Se>>2]=je[64+(0|Ge[l>>2])+3488+2336+(Ye+(Ue>>>Ce&1)<<1)>>1],0<=(0|Ge[Se>>2]))break}while((0|Ge[F>>2])>>>0>=(1+(0|Ge[_e>>2])|0)>>>0);if(0<=(0|Ge[Se>>2])){ve=288;continue r}ve=279;break r;case 288:if(Ce=(ve=0)|je[64+(0|Ge[l>>2])+3488+288+((1023&Ge[O>>2])<<1)>>1],0<=(0|(Ge[Se>>2]=Ce)))Ge[_e>>2]=Ge[Se>>2]>>9,Ge[Se>>2]=511&Ge[Se>>2];else for(Ge[_e>>2]=10;Ce=~Ge[Se>>2],Ue=0|Ge[O>>2],Ye=0|Ge[_e>>2],Ge[_e>>2]=Ye+1,Ge[Se>>2]=je[64+(0|Ge[l>>2])+3488+2336+(Ce+(Ue>>>Ye&1)<<1)>>1],(0|Ge[Se>>2])<0;);if(Ge[M>>2]=Ge[Se>>2],Ge[O>>2]=(0|Ge[O>>2])>>>(0|Ge[_e>>2]),Ge[F>>2]=(0|Ge[F>>2])-(0|Ge[_e>>2]),Ge[y>>2]=Ge[332+(Ge[M>>2]<<2)>>2],Ge[M>>2]=Ge[460+(Ge[M>>2]<<2)>>2],0|Ge[y>>2]){if((0|Ge[F>>2])>>>0<(0|Ge[y>>2])>>>0){ve=294;continue r}ve=302;continue r}ve=303;break;case 294:if(((ve=0)|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0){ve=295;continue e}ve=300;break r;case 302:ve=0,Ge[he>>2]=Ge[O>>2]&(1<<Ge[y>>2])-1,Ge[O>>2]=(0|Ge[O>>2])>>>(0|Ge[y>>2]),Ge[F>>2]=(0|Ge[F>>2])-(0|Ge[y>>2]),Ge[M>>2]=(0|Ge[M>>2])+(0|Ge[he>>2]),ve=303;break;case 307:if(Ye=(ve=0)|Ge[b>>2],Ge[b>>2]=Ye+-1,0|Ye){ve=308;continue e}ve=211;break;case 319:if(((ve=0)|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0){ve=320;continue e}ve=325;break r;case 327:ve=0,Ge[O>>2]=(0|Ge[O>>2])>>>(7&Ge[F>>2]),Ge[F>>2]=(0|Ge[F>>2])-(7&Ge[F>>2]),Ge[b>>2]=0,ve=328;continue r;case 328:if(4<=((ve=0)|Ge[b>>2])>>>0){ve=348;continue e}if(!(0|Ge[F>>2])){ve=340;break r}if((0|Ge[F>>2])>>>0<8){ve=331;continue r}ve=339;continue r;case 331:if(((ve=0)|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0){ve=332;continue e}ve=337;break r;case 339:ve=0,Ge[Me>>2]=255&Ge[O>>2],Ge[O>>2]=(0|Ge[O>>2])>>>8,Ge[F>>2]=(0|Ge[F>>2])-8,ve=347;continue e}do{if(124==(0|ve)){if(((ve=0)|Ge[b>>2])>>>0<(0|Ge[44+(0|Ge[l>>2])+8>>2])>>>0){if((0|Ge[F>>2])>>>0<3){ve=126;continue r}ve=134;continue r}Ge[44+(0|Ge[l>>2])+8>>2]=19,ve=136;continue r}if(167==(0|ve)){if(((ve=0)|Ge[b>>2])>>>0>=((0|Ge[44+(0|Ge[l>>2])>>2])+(0|Ge[44+(0|Ge[l>>2])+4>>2])|0)>>>0){if(((0|Ge[44+(0|Ge[l>>2])>>2])+(0|Ge[44+(0|Ge[l>>2])+4>>2])|0)!=(0|Ge[b>>2])){ve=208;continue e}tr(64+(0|Ge[l>>2])|0,10532+(0|Ge[l>>2])|0,0|Ge[44+(0|Ge[l>>2])>>2]),tr(64+(0|Ge[l>>2])+3488|0,10532+(0|Ge[l>>2])+(0|Ge[44+(0|Ge[l>>2])>>2])|0,0|Ge[44+(0|Ge[l>>2])+4>>2]),ve=210;break}if(15<=(0|Ge[F>>2])>>>0){ve=187;continue r}if(((0|Ge[R>>2])-(0|Ge[w>>2])|0)<2){ve=170;continue r}Ge[O>>2]=Ge[O>>2]|(qe[Ge[w>>2]>>0]<<Ge[F>>2]|qe[1+(0|Ge[w>>2])>>0]<<8+(0|Ge[F>>2])),Ge[w>>2]=2+(0|Ge[w>>2]),Ge[F>>2]=16+(0|Ge[F>>2]),ve=187;continue r}if(257==(0|ve))if(ve=0,Ye=511&Ge[b>>2],256!=(0|(Ge[b>>2]=Ye))){if(Ge[y>>2]=Ge[84+((0|Ge[b>>2])-257<<2)>>2],Ge[b>>2]=Ge[208+((0|Ge[b>>2])-257<<2)>>2],0|Ge[y>>2]){if((0|Ge[F>>2])>>>0<(0|Ge[y>>2])>>>0){ve=260;continue r}ve=268;continue r}ve=269}else ve=316;else if(303==(0|ve)){if(ve=0,Ge[g>>2]=(0|Ge[A>>2])-(0|Ge[E>>2]),(0|Ge[M>>2])>>>0>(0|Ge[g>>2])>>>0&&4&Ge[_>>2]|0){ve=305;continue e}if(Ge[ae>>2]=(0|Ge[E>>2])+((0|Ge[g>>2])-(0|Ge[M>>2])&Ge[T>>2]),(((0|Ge[A>>2])>>>0>(0|Ge[ae>>2])>>>0?0|Ge[A>>2]:0|Ge[ae>>2])+(0|Ge[b>>2])|0)>>>0>(0|Ge[k>>2])>>>0){ve=307;continue r}for(;Xe[Ge[A>>2]>>0]=0|Xe[Ge[ae>>2]>>0],Xe[1+(0|Ge[A>>2])>>0]=0|Xe[1+(0|Ge[ae>>2])>>0],Xe[2+(0|Ge[A>>2])>>0]=0|Xe[2+(0|Ge[ae>>2])>>0],Ge[A>>2]=3+(0|Ge[A>>2]),Ge[ae>>2]=3+(0|Ge[ae>>2]),Ye=(0|Ge[b>>2])-3|0,Ge[b>>2]=Ye,2<(0|Ye););ve=(0<(0|Ge[b>>2])&&(Xe[Ge[A>>2]>>0]=0|Xe[Ge[ae>>2]>>0],1<(0|Ge[b>>2])&&(Xe[1+(0|Ge[A>>2])>>0]=0|Xe[1+(0|Ge[ae>>2])>>0]),Ge[A>>2]=(0|Ge[A>>2])+(0|Ge[b>>2])),211)}}while(0);if(210!=(0|ve))if(211!=(0|ve)){if(269==(0|ve))ve=15<=((ve=0)|Ge[F>>2])>>>0?288:((0|Ge[R>>2])-(0|Ge[w>>2])|0)<2?271:(Ge[O>>2]=Ge[O>>2]|(qe[Ge[w>>2]>>0]<<Ge[F>>2]|qe[1+(0|Ge[w>>2])>>0]<<8+(0|Ge[F>>2])),Ge[w>>2]=2+(0|Ge[w>>2]),Ge[F>>2]=16+(0|Ge[F>>2]),288);else if(316==(0|ve)){if((ve=0)!=(1&Ge[20+(0|Ge[l>>2])>>2]|0)^1){ve=31;continue e}if(!(1&Ge[_>>2])){ve=348;continue e}(0|Ge[F>>2])>>>0<(7&Ge[F>>2])>>>0?ve=319:ve=327}}else ve=0,ve=212;else Ye=24+((ve=0)|Ge[l>>2])|0,Ge[Ye>>2]=(0|Ge[Ye>>2])-1,ve=136}switch(0|ve){case 60:Ye=(ve=0)|Ge[w>>2],Ge[w>>2]=Ye+1,Ge[D>>2]=qe[Ye>>0],ve=61;continue e;case 63:if(((ve=0)|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0){ve=64;continue e}Ye=0|Ge[w>>2],Ge[w>>2]=Ye+1,Ie=0|Xe[Ye>>0],Le=0|Ge[b>>2],xe=0|Ge[l>>2],ve=70;continue e;case 82:Ye=(ve=0)|Ge[w>>2],Ge[w>>2]=Ye+1,Ge[P>>2]=qe[Ye>>0],ve=83;continue e;case 120:Ye=(ve=0)|Ge[w>>2],Ge[w>>2]=Ye+1,Ge[x>>2]=qe[Ye>>0],ve=121;continue e;case 132:Ye=(ve=0)|Ge[w>>2],Ge[w>>2]=Ye+1,Ge[H>>2]=qe[Ye>>0],ve=133;continue e;case 178:if(((ve=0)|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0){ve=179;continue e}Ye=0|Ge[w>>2],Ge[w>>2]=Ye+1,Ge[oe>>2]=qe[Ye>>0],ve=185;continue e;case 202:Ye=(ve=0)|Ge[w>>2],Ge[w>>2]=Ye+1,Ge[ie>>2]=qe[Ye>>0],ve=203;continue e;case 224:if(((ve=0)|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0){ve=225;continue e}Ye=0|Ge[w>>2],Ge[w>>2]=Ye+1,Ge[ce>>2]=qe[Ye>>0],ve=231;continue e;case 266:Ye=(ve=0)|Ge[w>>2],Ge[w>>2]=Ye+1,Ge[Ee>>2]=qe[Ye>>0],ve=267;continue e;case 279:if(((ve=0)|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0){ve=280;continue e}Ye=0|Ge[w>>2],Ge[w>>2]=Ye+1,Ge[me>>2]=qe[Ye>>0],ve=286;continue e;case 300:Ye=(ve=0)|Ge[w>>2],Ge[w>>2]=Ye+1,Ge[pe>>2]=qe[Ye>>0],ve=301;continue e;case 325:Ye=(ve=0)|Ge[w>>2],Ge[w>>2]=Ye+1,Ge[Fe>>2]=qe[Ye>>0],ve=326;continue e;case 337:Ye=(ve=0)|Ge[w>>2],Ge[w>>2]=Ye+1,Ge[be>>2]=qe[Ye>>0],ve=338;continue e;case 340:if(((ve=0)|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0){ve=341;continue e}Ye=0|Ge[w>>2],Ge[w>>2]=Ye+1,Ge[Me>>2]=qe[Ye>>0],ve=347;continue e}}else ve=((ve=0)|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0?43:(Ue=0|Ge[w>>2],Ge[w>>2]=Ue+1,Ge[N>>2]=qe[Ue>>0],49)}else ve=((ve=0)|Ge[w>>2])>>>0>=(0|Ge[R>>2])>>>0?33:(Ue=0|Ge[w>>2],Ge[w>>2]=Ue+1,Ge[v>>2]=qe[Ue>>0],39)}if(351==(0|ve)){for(Ge[ye>>2]=Ge[Te>>2],Ge[Oe>>2]=Ge[Ge[S>>2]>>2],Ge[Re>>2]=65535&Ge[28+(0|Ge[l>>2])>>2],Ge[Ae>>2]=(0|Ge[28+(0|Ge[l>>2])>>2])>>>16,Ge[ke>>2]=((0|Ge[Oe>>2])>>>0)%5552|0;0|Ge[Oe>>2];){for(Ge[we>>2]=0;!((7+(0|Ge[we>>2])|0)>>>0>=(0|Ge[ke>>2])>>>0);)Ge[Re>>2]=(0|Ge[Re>>2])+(0|qe[Ge[ye>>2]>>0]),Ge[Ae>>2]=(0|Ge[Ae>>2])+(0|Ge[Re>>2]),Ge[Re>>2]=(0|Ge[Re>>2])+(0|qe[1+(0|Ge[ye>>2])>>0]),Ge[Ae>>2]=(0|Ge[Ae>>2])+(0|Ge[Re>>2]),Ge[Re>>2]=(0|Ge[Re>>2])+(0|qe[2+(0|Ge[ye>>2])>>0]),Ge[Ae>>2]=(0|Ge[Ae>>2])+(0|Ge[Re>>2]),Ge[Re>>2]=(0|Ge[Re>>2])+(0|qe[3+(0|Ge[ye>>2])>>0]),Ge[Ae>>2]=(0|Ge[Ae>>2])+(0|Ge[Re>>2]),Ge[Re>>2]=(0|Ge[Re>>2])+(0|qe[4+(0|Ge[ye>>2])>>0]),Ge[Ae>>2]=(0|Ge[Ae>>2])+(0|Ge[Re>>2]),Ge[Re>>2]=(0|Ge[Re>>2])+(0|qe[5+(0|Ge[ye>>2])>>0]),Ge[Ae>>2]=(0|Ge[Ae>>2])+(0|Ge[Re>>2]),Ge[Re>>2]=(0|Ge[Re>>2])+(0|qe[6+(0|Ge[ye>>2])>>0]),Ge[Ae>>2]=(0|Ge[Ae>>2])+(0|Ge[Re>>2]),Ge[Re>>2]=(0|Ge[Re>>2])+(0|qe[7+(0|Ge[ye>>2])>>0]),Ge[Ae>>2]=(0|Ge[Ae>>2])+(0|Ge[Re>>2]),Ge[we>>2]=8+(0|Ge[we>>2]),Ge[ye>>2]=8+(0|Ge[ye>>2]);for(;!((0|Ge[we>>2])>>>0>=(0|Ge[ke>>2])>>>0);)Te=0|Ge[ye>>2],Ge[ye>>2]=Te+1,Ge[Re>>2]=(0|Ge[Re>>2])+(0|qe[Te>>0]),Ge[Ae>>2]=(0|Ge[Ae>>2])+(0|Ge[Re>>2]),Ge[we>>2]=1+(0|Ge[we>>2]);Ge[Re>>2]=((0|Ge[Re>>2])>>>0)%65521|0,Ge[Ae>>2]=((0|Ge[Ae>>2])>>>0)%65521|0,Ge[Oe>>2]=(0|Ge[Oe>>2])-(0|Ge[ke>>2]),Ge[ke>>2]=5552}Ge[28+(0|Ge[l>>2])>>2]=(Ge[Ae>>2]<<16)+(0|Ge[Re>>2]),0==(0|Ge[p>>2])&&1&Ge[_>>2]|0&&(0|Ge[28+(0|Ge[l>>2])>>2])!=(0|Ge[16+(0|Ge[l>>2])>>2])&&(Ge[p>>2]=-2)}return Ge[c>>2]=Ge[p>>2],Ke=0|Ge[c>>2],Ze=We,0|Ke}return Ge[Ge[S>>2]>>2]=0,Ge[Ge[d>>2]>>2]=0,Ge[c>>2]=-3,Ke=0|Ge[c>>2],Ze=We,0|Ke}function x(e){e|=0;var r,t=0,n=0,o=0,i=0,a=0,s=0,u=0,c=0,l=0,f=0,d=0,E=0,S=0,_=0,m=0,h=0,p=0,F=0,M=0,b=0,y=0,O=0,w=0,R=0,A=0,k=0,T=0,g=0,v=0,N=0,D=0,P=0,C=0,I=0,L=0,x=0,B=0,H=0,U=0,Y=0,z=0,V=0,K=0,W=0,X=0,j=0,G=0,q=0,Z=0,J=0,Q=0,$=0,ee=0,re=0,te=0,ne=0,oe=0,ie=0,ae=0,se=0,ue=0,ce=0,le=0,fe=0,de=0,Ee=0,Se=0,_e=0,me=0,he=0,pe=0,Fe=0,Me=0,be=0,ye=Ze;(0|Je)<=(0|(Ze=Ze+16|0))&&Qe(16),t=ye;do{if(e>>>0<245){if(o=(n=e>>>0<11?16:e+11&-8)>>>3,3&(a=(i=0|Ge[948])>>>o)|0)return l=0|Ge[(c=(u=3832+((s=(1&a^1)+o|0)<<1<<2)|0)+8|0)>>2],(0|u)==(0|(d=0|Ge[(f=l+8|0)>>2]))?Ge[948]=i&~(1<<s):(Ge[d+12>>2]=u,Ge[c>>2]=d),d=s<<3,Ge[l+4>>2]=3|d,Ge[(s=l+d+4|0)>>2]=1|Ge[s>>2],Ze=ye,0|(E=f);if((f=0|Ge[950])>>>0<n>>>0){if(0|a)return a=0|Ge[(c=(l=3832+((u=((s=(o=(s=((d=a<<o&((s=2<<o)|0-s))&0-d)-1|0)>>>(d=s>>>12&16))>>>5&8)|d|(o=(a=o>>>s)>>>2&4)|(a=(l=a>>>o)>>>1&2)|(l=(c=l>>>a)>>>1&1))+(c>>>l)|0)<<1<<2)|0)+8|0)>>2],S=(0|l)==(0|(d=0|Ge[(o=a+8|0)>>2]))?(s=i&~(1<<u),Ge[948]=s):(Ge[d+12>>2]=l,Ge[c>>2]=d,i),d=(u<<3)-n|0,Ge[a+4>>2]=3|n,Ge[(u=a+n|0)+4>>2]=1|d,Ge[u+d>>2]=d,0|f&&(a=0|Ge[953],l=3832+((c=f>>>3)<<1<<2)|0,m=S&(s=1<<c)?(_=0|Ge[(s=l+8|0)>>2],s):(Ge[948]=S|s,(_=l)+8|0),Ge[m>>2]=a,Ge[_+12>>2]=a,Ge[a+8>>2]=_,Ge[a+12>>2]=l),Ge[950]=d,Ge[953]=u,Ze=ye,0|(E=o);if(o=0|Ge[949]){if(h=0|Ge[4096+(((u=(l=(u=(o&0-o)-1|0)>>>(d=u>>>12&16))>>>5&8)|d|(l=(a=l>>>u)>>>2&4)|(a=(s=a>>>l)>>>1&2)|(s=(c=s>>>a)>>>1&1))+(c>>>s)<<2)>>2],s=(-8&Ge[h+4>>2])-n|0,c=0|Ge[h+16+((0==(0|Ge[h+16>>2])&1)<<2)>>2])for(a=h,h=s,s=c;;){if(d=(l=(c=(-8&Ge[s+4>>2])-n|0)>>>0<h>>>0)?c:h,c=l?s:a,!(s=0|Ge[s+16+((0==(0|Ge[s+16>>2])&1)<<2)>>2])){p=c,F=d;break}a=c,h=d}else p=h,F=s;if(p>>>0<(h=p+n|0)>>>0){a=0|Ge[p+24>>2],s=0|Ge[p+12>>2];do{if((0|s)==(0|p)){if(c=0|Ge[(d=p+20|0)>>2])b=c,y=d;else{if(!(u=0|Ge[(l=p+16|0)>>2])){M=0;break}b=u,y=l}for(;;)if(0|(c=0|Ge[(d=b+20|0)>>2]))b=c,y=d;else{if(!(c=0|Ge[(d=b+16|0)>>2]))break;b=c,y=d}Ge[y>>2]=0,M=b}else d=0|Ge[p+8>>2],Ge[d+12>>2]=s,Ge[s+8>>2]=d,M=s}while(0);do{if(0|a){if(s=0|Ge[p+28>>2],(0|p)==(0|Ge[(d=4096+(s<<2)|0)>>2])){if(!(Ge[d>>2]=M)){Ge[949]=o&~(1<<s);break}}else if(!(Ge[a+16+(((0|Ge[a+16>>2])!=(0|p)&1)<<2)>>2]=M))break;Ge[M+24>>2]=a,0|(s=0|Ge[p+16>>2])&&(Ge[M+16>>2]=s,Ge[s+24>>2]=M),0|(s=0|Ge[p+20>>2])&&(Ge[M+20>>2]=s,Ge[s+24>>2]=M)}}while(0);return F>>>0<16?(a=F+n|0,Ge[p+4>>2]=3|a,Ge[(o=p+a+4|0)>>2]=1|Ge[o>>2]):(Ge[p+4>>2]=3|n,Ge[h+4>>2]=1|F,Ge[h+F>>2]=F,0|f&&(o=0|Ge[953],s=3832+((a=f>>>3)<<1<<2)|0,w=i&(d=1<<a)?(O=0|Ge[(d=s+8|0)>>2],d):(Ge[948]=i|d,(O=s)+8|0),Ge[w>>2]=o,Ge[O+12>>2]=o,Ge[o+8>>2]=O,Ge[o+12>>2]=s),Ge[950]=F,Ge[953]=h),Ze=ye,0|(E=p+8|0)}R=n}else R=n}else R=n}else if(e>>>0<=4294967231)if(o=-8&(s=e+11|0),d=0|Ge[949]){a=0-o|0,A=(c=s>>>8)?16777215<o>>>0?31:o>>>((k=14-((c=((l=c<<(s=(c+1048320|0)>>>16&8))+520192|0)>>>16&4)|s|(l=((u=l<<c)+245760|0)>>>16&2))+(u<<l>>>15)|0)+7|0)&1|k<<1:0,k=0|Ge[4096+(A<<2)>>2];e:do{if(k)for(u=a,s=k,c=o<<(31==((l=0)|A)?0:25-(A>>>1)|0),D=0;;){if((P=(-8&Ge[s+4>>2])-o|0)>>>0<u>>>0){if(!P){I=0,L=C=s,N=61;break e}x=s,B=P}else x=l,B=u;if(r=0==(0|(P=0|Ge[s+20>>2]))|(0|P)==(0|(s=0|Ge[s+16+(c>>>31<<2)>>2]))?D:P,P=0==(0|s)){T=r,g=x,v=B,N=57;break}l=x,u=B,c<<=1&(1^P),D=r}else g=T=0,v=a,N=57}while(0);if(57==(0|N)){if(0==(0|T)&0==(0|g)){if(!(a=d&((k=2<<A)|0-k))){R=o;break}U=(H=0)|Ge[4096+(((k=(n=(k=(a&0-a)-1|0)>>>(a=k>>>12&16))>>>5&8)|a|(n=(h=n>>>k)>>>2&4)|(h=(i=h>>>n)>>>1&2)|(i=(f=i>>>h)>>>1&1))+(f>>>i)<<2)>>2]}else H=g,U=T;U?(C=H,I=v,L=U,N=61):(Y=H,z=v)}if(61==(0|N))for(;;){if(N=0,h=(f=(i=(-8&Ge[L+4>>2])-o|0)>>>0<I>>>0)?i:I,i=f?L:C,!(L=0|Ge[L+16+((0==(0|Ge[L+16>>2])&1)<<2)>>2])){Y=i,z=h;break}C=i,I=h,N=61}if(0!=(0|Y)&&z>>>0<((0|Ge[950])-o|0)>>>0){if((h=Y+o|0)>>>0<=Y>>>0)return Ze=ye,(E=0)|E;i=0|Ge[Y+24>>2],f=0|Ge[Y+12>>2];do{if((0|f)==(0|Y)){if(a=0|Ge[(n=Y+20|0)>>2])K=a,W=n;else{if(!(D=0|Ge[(k=Y+16|0)>>2])){V=0;break}K=D,W=k}for(;;)if(0|(a=0|Ge[(n=K+20|0)>>2]))K=a,W=n;else{if(!(a=0|Ge[(n=K+16|0)>>2]))break;K=a,W=n}Ge[W>>2]=0,V=K}else n=0|Ge[Y+8>>2],Ge[n+12>>2]=f,Ge[f+8>>2]=n,V=f}while(0);do{if(i){if(f=0|Ge[Y+28>>2],(0|Y)==(0|Ge[(n=4096+(f<<2)|0)>>2])){if(!(Ge[n>>2]=V)){n=d&~(1<<f),X=Ge[949]=n;break}}else if(!(Ge[i+16+(((0|Ge[i+16>>2])!=(0|Y)&1)<<2)>>2]=V)){X=d;break}Ge[V+24>>2]=i,0|(n=0|Ge[Y+16>>2])&&(Ge[V+16>>2]=n,Ge[n+24>>2]=V),X=((n=0|Ge[Y+20>>2])&&(Ge[V+20>>2]=n,Ge[n+24>>2]=V),d)}else X=d}while(0);do{if(16<=z>>>0){if(Ge[Y+4>>2]=3|o,Ge[h+4>>2]=1|z,d=(Ge[h+z>>2]=z)>>>3,z>>>0<256){i=3832+(d<<1<<2)|0,G=(n=0|Ge[948])&(f=1<<d)?(j=0|Ge[(f=i+8|0)>>2],f):(Ge[948]=n|f,(j=i)+8|0),Ge[G>>2]=h,Ge[j+12>>2]=h,Ge[h+8>>2]=j,Ge[h+12>>2]=i;break}if(a=4096+((q=(i=z>>>8)?16777215<z>>>0?31:z>>>((a=14-((i=((n=i<<(f=(i+1048320|0)>>>16&8))+520192|0)>>>16&4)|f|(n=((d=n<<i)+245760|0)>>>16&2))+(d<<n>>>15)|0)+7|0)&1|a<<1:0)<<2)|0,Ge[h+28>>2]=q,Ge[(n=h+16|0)+4>>2]=0,Ge[n>>2]=0,!(X&(n=1<<q))){Ge[949]=X|n,Ge[a>>2]=h,Ge[h+24>>2]=a,Ge[h+12>>2]=h,Ge[h+8>>2]=h;break}for(n=z<<(31==(0|q)?0:25-(q>>>1)|0),d=0|Ge[a>>2];;){if((-8&Ge[d+4>>2]|0)==(0|z)){N=97;break}if(!(a=0|Ge[(Z=d+16+(n>>>31<<2)|0)>>2])){N=96;break}n<<=1,d=a}if(96==(0|N)){Ge[Z>>2]=h,Ge[h+24>>2]=d,Ge[h+12>>2]=h,Ge[h+8>>2]=h;break}if(97==(0|N)){a=0|Ge[(n=d+8|0)>>2],Ge[a+12>>2]=h,Ge[n>>2]=h,Ge[h+8>>2]=a,Ge[h+12>>2]=d,Ge[h+24>>2]=0;break}}else a=z+o|0,Ge[Y+4>>2]=3|a,Ge[(n=Y+a+4|0)>>2]=1|Ge[n>>2]}while(0);return Ze=ye,0|(E=Y+8|0)}R=o}else R=o;else R=-1}while(0);if(R>>>0<=(Y=0|Ge[950])>>>0)return z=Y-R|0,Z=0|Ge[953],15<z>>>0?(q=Z+R|0,Ge[953]=q,Ge[950]=z,Ge[q+4>>2]=1|z,Ge[q+z>>2]=z,Ge[Z+4>>2]=3|R):(Ge[950]=0,Ge[953]=0,Ge[Z+4>>2]=3|Y,Ge[(z=Z+Y+4|0)>>2]=1|Ge[z>>2]),Ze=ye,0|(E=Z+8|0);if(R>>>0<(Z=0|Ge[951])>>>0)return z=Z-R|0,Ge[951]=z,q=(Y=0|Ge[954])+R|0,Ge[954]=q,Ge[q+4>>2]=1|z,Ge[Y+4>>2]=3|R,Ze=ye,0|(E=Y+8|0);if(J=0|Ge[1066]?0|Ge[1068]:(Ge[1068]=4096,Ge[1067]=4096,Ge[1069]=-1,Ge[1070]=-1,Ge[1071]=0,Ge[1059]=0,Y=-16&t^1431655768,Ge[t>>2]=Y,Ge[1066]=Y,4096),Y=R+48|0,(J=(z=J+(t=R+47|0)|0)&(q=0-J|0))>>>0<=R>>>0)return Ze=ye,(E=0)|E;if(0|(X=0|Ge[1058])&&(G=(j=0|Ge[1056])+J|0)>>>0<=j>>>0|X>>>0<G>>>0)return Ze=ye,(E=0)|E;e:do{if(4&Ge[1059])oe=0,N=133;else{X=0|Ge[954];r:do{if(X){for(G=4240;!((j=0|Ge[G>>2])>>>0<=X>>>0&&(j+(0|Ge[(Q=G+4|0)>>2])|0)>>>0>X>>>0);){if(!(j=0|Ge[G+8>>2])){N=118;break r}G=j}if((d=z-Z&q)>>>0<2147483647)if((0|(j=0|Oe(0|d)))==((0|Ge[G>>2])+(0|Ge[Q>>2])|0)){if(-1!=(0|j)){ee=d,re=j,N=135;break e}$=d}else te=j,ne=d,N=126;else $=0}else N=118}while(0);do{if(118==(0|N))if(-1!=(0|(X=0|Oe(0)))&&(o=X,d=(V=(0==((j=(d=0|Ge[1067])+-1|0)&o|0)?0:(j+o&0-d)-o|0)+J|0)+(o=0|Ge[1056])|0,R>>>0<V>>>0&V>>>0<2147483647)){if(0|(j=0|Ge[1058])&&d>>>0<=o>>>0|j>>>0<d>>>0){$=0;break}if((0|(j=0|Oe(0|V)))==(0|X)){ee=V,re=X,N=135;break e}te=j,ne=V,N=126}else $=0}while(0);do{if(126==(0|N)){if(V=0-ne|0,!(ne>>>0<Y>>>0&ne>>>0<2147483647&-1!=(0|te))){if(-1==(0|te)){$=0;break}ee=ne,re=te,N=135;break e}if(2147483647<=(X=t-ne+(j=0|Ge[1068])&0-j)>>>0){ee=ne,re=te,N=135;break e}if(-1==(0|Oe(0|X))){Oe(0|V),$=0;break}ee=X+ne|0,re=te,N=135;break e}}while(0);Ge[1059]=4|Ge[1059],oe=$,N=133}}while(0);if(133==(0|N)&&J>>>0<2147483647&&!(-1==(0|($=0|Oe(0|J)))|1^(ne=(R+40|0)>>>0<(te=(J=0|Oe(0))-$|0)>>>0)|$>>>0<J>>>0&-1!=(0|$)&-1!=(0|J)^1)&&(ee=ne?te:oe,re=$,N=135),135==(0|N)){$=(0|Ge[1056])+ee|0,(Ge[1056]=$)>>>0>(0|Ge[1057])>>>0&&(Ge[1057]=$),$=0|Ge[954];do{if($){for(oe=4240;;){if((0|re)==((ie=0|Ge[oe>>2])+(se=0|Ge[(ae=oe+4|0)>>2])|0)){N=145;break}if(!(te=0|Ge[oe+8>>2]))break;oe=te}if(145==(0|N)&&0==(8&Ge[oe+12>>2]|0)&&$>>>0<re>>>0&ie>>>0<=$>>>0){Ge[ae>>2]=se+ee,te=$+(ne=0==(7&(te=$+8|0)|0)?0:0-te&7)|0,J=(0|Ge[951])+(ee-ne)|0,Ge[954]=te,Ge[951]=J,Ge[te+4>>2]=1|J,Ge[te+J+4>>2]=40,Ge[955]=Ge[1070];break}for(re>>>0<(0|Ge[952])>>>0&&(Ge[952]=re),J=re+ee|0,te=4240;;){if((0|Ge[te>>2])==(0|J)){N=153;break}if(!(ne=0|Ge[te+8>>2]))break;te=ne}if(153==(0|N)&&0==(8&Ge[te+12>>2]|0)){Ge[te>>2]=re,Ge[(oe=te+4|0)>>2]=(0|Ge[oe>>2])+ee,ne=re+(0==(7&(oe=re+8|0)|0)?0:0-oe&7)|0,t=J+(0==(7&(oe=J+8|0)|0)?0:0-oe&7)|0,oe=ne+R|0,Y=t-ne-R|0,Ge[ne+4>>2]=3|R;do{if((0|t)!=(0|$)){if((0|t)==(0|Ge[953])){Q=(0|Ge[950])+Y|0,Ge[950]=Q,Ge[953]=oe,Ge[oe+4>>2]=1|Q,Ge[oe+Q>>2]=Q;break}if(1==(3&(Q=0|Ge[t+4>>2])|0)){q=-8&Q,Z=Q>>>3;e:do{if(Q>>>0<256){if(z=0|Ge[t+8>>2],(0|(X=0|Ge[t+12>>2]))==(0|z)){Ge[948]=Ge[948]&~(1<<Z);break}Ge[z+12>>2]=X,Ge[X+8>>2]=z;break}z=0|Ge[t+24>>2],X=0|Ge[t+12>>2];do{if((0|X)==(0|t)){if(d=0|Ge[(j=(V=t+16|0)+4|0)>>2])ce=d,le=j;else{if(!(o=0|Ge[V>>2])){ue=0;break}ce=o,le=V}for(;;)if(0|(d=0|Ge[(j=ce+20|0)>>2]))ce=d,le=j;else{if(!(d=0|Ge[(j=ce+16|0)>>2]))break;ce=d,le=j}Ge[le>>2]=0,ue=ce}else j=0|Ge[t+8>>2],Ge[j+12>>2]=X,Ge[X+8>>2]=j,ue=X}while(0);if(!z)break;j=4096+((X=0|Ge[t+28>>2])<<2)|0;do{if((0|t)==(0|Ge[j>>2])){if(0|(Ge[j>>2]=ue))break;Ge[949]=Ge[949]&~(1<<X);break e}if(!(Ge[z+16+(((0|Ge[z+16>>2])!=(0|t)&1)<<2)>>2]=ue))break e}while(0)}while((Ge[ue+24>>2]=z,0|(j=0|Ge[(X=t+16|0)>>2])&&(Ge[ue+16>>2]=j,Ge[j+24>>2]=ue),j=0|Ge[X+4>>2])&&(Ge[ue+20>>2]=j,Ge[j+24>>2]=ue,0));fe=t+q|0,de=q+Y|0}else fe=t,de=Y;if(Ge[(Z=fe+4|0)>>2]=-2&Ge[Z>>2],Ge[oe+4>>2]=1|de,Z=(Ge[oe+de>>2]=de)>>>3,de>>>0<256){Q=3832+(Z<<1<<2)|0,Se=(G=0|Ge[948])&(j=1<<Z)?(Ee=0|Ge[(j=Q+8|0)>>2],j):(Ge[948]=G|j,(Ee=Q)+8|0),Ge[Se>>2]=oe,Ge[Ee+12>>2]=oe,Ge[oe+8>>2]=Ee,Ge[oe+12>>2]=Q;break}Q=de>>>8;do{if(Q){if(16777215<de>>>0){_e=31;break}_e=de>>>((d=14-((Z=((G=Q<<(j=(Q+1048320|0)>>>16&8))+520192|0)>>>16&4)|j|(G=((X=G<<Z)+245760|0)>>>16&2))+(X<<G>>>15)|0)+7|0)&1|d<<1}else _e=0}while(0);if(Q=4096+(_e<<2)|0,Ge[oe+28>>2]=_e,Ge[(q=oe+16|0)+4>>2]=0,!((q=(Ge[q>>2]=0)|Ge[949])&(d=1<<_e))){Ge[949]=q|d,Ge[Q>>2]=oe,Ge[oe+24>>2]=Q,Ge[oe+12>>2]=oe,Ge[oe+8>>2]=oe;break}for(d=de<<(31==(0|_e)?0:25-(_e>>>1)|0),q=0|Ge[Q>>2];;){if((-8&Ge[q+4>>2]|0)==(0|de)){N=194;break}if(!(Q=0|Ge[(me=q+16+(d>>>31<<2)|0)>>2])){N=193;break}d<<=1,q=Q}if(193==(0|N)){Ge[me>>2]=oe,Ge[oe+24>>2]=q,Ge[oe+12>>2]=oe,Ge[oe+8>>2]=oe;break}if(194==(0|N)){Q=0|Ge[(d=q+8|0)>>2],Ge[Q+12>>2]=oe,Ge[d>>2]=oe,Ge[oe+8>>2]=Q,Ge[oe+12>>2]=q,Ge[oe+24>>2]=0;break}}else Q=(0|Ge[951])+Y|0,Ge[951]=Q,Ge[954]=oe,Ge[oe+4>>2]=1|Q}while(0);return Ze=ye,0|(E=ne+8|0)}for(oe=4240;!((Y=0|Ge[oe>>2])>>>0<=$>>>0&&$>>>0<(he=Y+(0|Ge[oe+4>>2])|0)>>>0);)oe=0|Ge[oe+8>>2];for(oe=he+-47|0,ne=oe+8|0,Y=oe+(0==(7&ne|0)?0:0-ne&7)|0,ne=$+16|0,oe=Y>>>0<ne>>>0?$:Y,Y=oe+8|0,t=re+8|0,J=0==(7&t|0)?0:0-t&7,t=re+J|0,te=ee+-40-J|0,Ge[954]=t,Ge[951]=te,Ge[t+4>>2]=1|te,Ge[t+te+4>>2]=40,Ge[955]=Ge[1070],te=oe+4|0,Ge[te>>2]=27,Ge[Y>>2]=Ge[1060],Ge[Y+4>>2]=Ge[1061],Ge[Y+8>>2]=Ge[1062],Ge[Y+12>>2]=Ge[1063],Ge[1060]=re,Ge[1061]=ee,Ge[1063]=0,Ge[1062]=Y,Y=oe+24|0;Ge[(Y=(t=Y)+4|0)>>2]=7,(t+8|0)>>>0<he>>>0;);if((0|oe)!=(0|$)){if(Y=oe-$|0,Ge[te>>2]=-2&Ge[te>>2],Ge[$+4>>2]=1|Y,t=(Ge[oe>>2]=Y)>>>3,Y>>>0<256){J=3832+(t<<1<<2)|0,Fe=(Q=0|Ge[948])&(d=1<<t)?(pe=0|Ge[(d=J+8|0)>>2],d):(Ge[948]=Q|d,(pe=J)+8|0),Ge[Fe>>2]=$,Ge[pe+12>>2]=$,Ge[$+8>>2]=pe,Ge[$+12>>2]=J;break}if(G=4096+((Me=(J=Y>>>8)?16777215<Y>>>0?31:Y>>>((G=14-((J=((Q=J<<(d=(J+1048320|0)>>>16&8))+520192|0)>>>16&4)|d|(Q=((t=Q<<J)+245760|0)>>>16&2))+(t<<Q>>>15)|0)+7|0)&1|G<<1:0)<<2)|0,Ge[$+28>>2]=Me,Ge[$+20>>2]=0,!((Q=(Ge[ne>>2]=0)|Ge[949])&(t=1<<Me))){Ge[949]=Q|t,Ge[G>>2]=$,Ge[$+24>>2]=G,Ge[$+12>>2]=$,Ge[$+8>>2]=$;break}for(t=Y<<(31==(0|Me)?0:25-(Me>>>1)|0),Q=0|Ge[G>>2];;){if((-8&Ge[Q+4>>2]|0)==(0|Y)){N=216;break}if(!(G=0|Ge[(be=Q+16+(t>>>31<<2)|0)>>2])){N=215;break}t<<=1,Q=G}if(215==(0|N)){Ge[be>>2]=$,Ge[$+24>>2]=Q,Ge[$+12>>2]=$,Ge[$+8>>2]=$;break}if(216==(0|N)){Y=0|Ge[(t=Q+8|0)>>2],Ge[Y+12>>2]=$,Ge[t>>2]=$,Ge[$+8>>2]=Y,Ge[$+12>>2]=Q,Ge[$+24>>2]=0;break}}}else{for(Y=0|Ge[952],0==(0|Y)|re>>>0<Y>>>0&&(Ge[952]=re),Ge[1060]=re,Ge[1061]=ee,Ge[1063]=0,Ge[957]=Ge[1066],Ge[956]=-1,Y=0;Ge[(t=3832+(Y<<1<<2)|0)+12>>2]=t,Ge[t+8>>2]=t,Y=Y+1|0,32!=(0|Y););Y=re+(Q=0==(7&(Y=re+8|0)|0)?0:0-Y&7)|0,t=ee+-40-Q|0,Ge[954]=Y,Ge[951]=t,Ge[Y+4>>2]=1|t,Ge[Y+t+4>>2]=40,Ge[955]=Ge[1070]}}while(0);if(R>>>0<(ee=0|Ge[951])>>>0)return re=ee-R|0,Ge[951]=re,$=(ee=0|Ge[954])+R|0,Ge[954]=$,Ge[$+4>>2]=1|re,Ge[ee+4>>2]=3|R,Ze=ye,0|(E=ee+8|0)}return Ge[(ee=652)>>2]=12,Ze=ye,(E=0)|E}function B(e){var r,t,n,o=0,i=0,a=0,s=0,u=0,c=0,l=0,f=0,d=0,E=0,S=0,_=0,m=0,h=0,p=0,F=0,M=0,b=0,y=0,O=0,w=0,R=0,A=0,k=0,T=0;if(e|=0){o=e+-8|0,i=0|Ge[952],r=o+(e=-8&(a=0|Ge[e+-4>>2]))|0;do{if(1&a)d=e,E=f=o;else{if(s=0|Ge[o>>2],!(3&a))return;if(t=s+e|0,(u=o+(0-s)|0)>>>0<i>>>0)return;if((0|u)==(0|Ge[953])){if(3==(3&(l=0|Ge[(c=4+r|0)>>2])|0))return Ge[950]=t,Ge[c>>2]=-2&l,Ge[u+4>>2]=1|t,void(Ge[u+t>>2]=t);d=t,E=f=u;break}if(l=s>>>3,s>>>0<256){if(s=0|Ge[u+8>>2],(0|(c=0|Ge[u+12>>2]))==(0|s)){Ge[948]=Ge[948]&~(1<<l),d=t,E=f=u;break}Ge[s+12>>2]=c,Ge[c+8>>2]=s,d=t,E=f=u;break}s=0|Ge[u+24>>2],c=0|Ge[u+12>>2];do{if((0|c)==(0|u)){if(_=0|Ge[(S=(l=u+16|0)+4|0)>>2])h=_,p=S;else{if(!(n=0|Ge[l>>2])){m=0;break}h=n,p=l}for(;;)if(0|(_=0|Ge[(S=h+20|0)>>2]))h=_,p=S;else{if(!(_=0|Ge[(S=h+16|0)>>2]))break;h=_,p=S}Ge[p>>2]=0,m=h}else S=0|Ge[u+8>>2],Ge[S+12>>2]=c,Ge[c+8>>2]=S,m=c}while(0);if(s){if(c=0|Ge[u+28>>2],(0|u)==(0|Ge[(S=4096+(c<<2)|0)>>2])){if(!(Ge[S>>2]=m)){Ge[949]=Ge[949]&~(1<<c),d=t,E=f=u;break}}else if(!(Ge[s+16+(((0|Ge[s+16>>2])!=(0|u)&1)<<2)>>2]=m)){d=t,E=f=u;break}Ge[m+24>>2]=s,0|(S=0|Ge[(c=u+16|0)>>2])&&(Ge[m+16>>2]=S,Ge[S+24>>2]=m),E=f=(d=((S=0|Ge[c+4>>2])&&(Ge[m+20>>2]=S,Ge[S+24>>2]=m),t),u)}else d=t,E=f=u}}while(0);if(!(r>>>0<=E>>>0)&&1&(e=0|Ge[(o=4+r|0)>>2])){if(2&e)Ge[o>>2]=-2&e,Ge[f+4>>2]=1|d,y=Ge[E+d>>2]=d;else{if(m=0|Ge[953],(0|r)==(0|Ge[954]))return h=(0|Ge[951])+d|0,Ge[951]=h,Ge[954]=f,Ge[f+4>>2]=1|h,(0|f)!=(0|m)?void 0:(Ge[953]=0,void(Ge[950]=0));if((0|r)==(0|m))return m=(0|Ge[950])+d|0,Ge[950]=m,Ge[953]=E,Ge[f+4>>2]=1|m,void(Ge[E+m>>2]=m);m=(-8&e)+d|0,h=e>>>3;do{if(e>>>0<256){if(p=0|Ge[8+r>>2],(0|(i=0|Ge[12+r>>2]))==(0|p)){Ge[948]=Ge[948]&~(1<<h);break}Ge[p+12>>2]=i,Ge[i+8>>2]=p;break}p=0|Ge[24+r>>2],i=0|Ge[12+r>>2];do{if((0|i)==(0|r)){if(c=0|Ge[(S=(a=16+r|0)+4|0)>>2])M=c,b=S;else{if(!(_=0|Ge[a>>2])){F=0;break}M=_,b=a}for(;;)if(0|(c=0|Ge[(S=M+20|0)>>2]))M=c,b=S;else{if(!(c=0|Ge[(S=M+16|0)>>2]))break;M=c,b=S}Ge[b>>2]=0,F=M}else S=0|Ge[8+r>>2],Ge[S+12>>2]=i,Ge[i+8>>2]=S,F=i}while(0);if(0|p){if(i=0|Ge[28+r>>2],(0|r)==(0|Ge[(u=4096+(i<<2)|0)>>2])){if(!(Ge[u>>2]=F)){Ge[949]=Ge[949]&~(1<<i);break}}else if(!(Ge[p+16+(((0|Ge[p+16>>2])!=(0|r)&1)<<2)>>2]=F))break;Ge[F+24>>2]=p,0|(u=0|Ge[(i=16+r|0)>>2])&&(Ge[F+16>>2]=u,Ge[u+24>>2]=F),0|(u=0|Ge[i+4>>2])&&(Ge[F+20>>2]=u,Ge[u+24>>2]=F)}}while(0);if(Ge[f+4>>2]=1|m,Ge[E+m>>2]=m,(0|f)==(0|Ge[953]))return void(Ge[950]=m);y=m}if(d=y>>>3,y>>>0<256)return E=3832+(d<<1<<2)|0,w=(e=0|Ge[948])&(o=1<<d)?(O=0|Ge[(o=E+8|0)>>2],o):(Ge[948]=e|o,(O=E)+8|0),Ge[w>>2]=f,Ge[O+12>>2]=f,Ge[f+8>>2]=O,void(Ge[f+12>>2]=E);e=4096+((R=(E=y>>>8)?16777215<y>>>0?31:y>>>((e=14-((E=((w=E<<(O=(E+1048320|0)>>>16&8))+520192|0)>>>16&4)|O|(w=((o=w<<E)+245760|0)>>>16&2))+(o<<w>>>15)|0)+7|0)&1|e<<1:0)<<2)|0,Ge[f+28>>2]=R,Ge[f+20>>2]=0,w=(Ge[f+16>>2]=0)|Ge[949],o=1<<R;do{if(w&o){for(O=y<<(31==(0|R)?0:25-(R>>>1)|0),E=0|Ge[e>>2];;){if((-8&Ge[E+4>>2]|0)==(0|y)){A=73;break}if(!(d=0|Ge[(k=E+16+(O>>>31<<2)|0)>>2])){A=72;break}O<<=1,E=d}if(72==(0|A)){Ge[k>>2]=f,Ge[f+24>>2]=E,Ge[f+12>>2]=f,Ge[f+8>>2]=f;break}if(73==(0|A)){p=0|Ge[(O=E+8|0)>>2],Ge[p+12>>2]=f,Ge[O>>2]=f,Ge[f+8>>2]=p,Ge[f+12>>2]=E,Ge[f+24>>2]=0;break}}else Ge[949]=w|o,Ge[e>>2]=f,Ge[f+24>>2]=e,Ge[f+12>>2]=f,Ge[f+8>>2]=f}while(0);if(f=(0|Ge[956])-1|0,!(Ge[956]=f)){for(T=4248;f=0|Ge[T>>2];)T=f+8|0;Ge[956]=-1}}}}function H(e,r,t){e|=0,r|=0,t|=0;var n,o,i,a,s,u,c,l,f,d,E=0,S=0,_=0,m=0,h=0,p=0,F=0,M=Ze;(0|Je)<=(0|(Ze=Ze+48|0))&&Qe(48),n=M+16|0,o=(E=M)+32|0,a=0|Ge[(i=e+28|0)>>2],Ge[o>>2]=a,u=(0|Ge[(s=e+20|0)>>2])-a|0,Ge[4+o>>2]=u,Ge[8+o>>2]=r,r=u+(Ge[12+o>>2]=t)|0,u=e+60|0,Ge[E>>2]=Ge[u>>2],Ge[E+4>>2]=o,Ge[E+8>>2]=2,a=0|U(0|R(146,0|E));e:do{if((0|r)!=(0|a)){for(E=2,S=r,_=o,m=a;!((0|m)<0);){if(S=S-m|0,f=((c=(h=0|Ge[_+4>>2])>>>0<m>>>0)<<31>>31)+E|0,d=m-(c?h:0)|0,Ge[(l=c?_+8|0:_)>>2]=(0|Ge[l>>2])+d,Ge[(h=l+4|0)>>2]=(0|Ge[h>>2])-d,Ge[n>>2]=Ge[u>>2],Ge[4+n>>2]=l,Ge[8+n>>2]=f,(0|S)==(0|(m=0|U(0|R(146,0|n))))){p=3;break e}E=f,_=l}Ge[e+16>>2]=0,Ge[i>>2]=0,Ge[s>>2]=0,Ge[e>>2]=32|Ge[e>>2],F=2==(0|E)?0:t-(0|Ge[_+4>>2])|0}else p=3}while(0);return 3==(0|p)&&(p=0|Ge[e+44>>2],Ge[e+16>>2]=p+(0|Ge[e+48>>2]),Ge[i>>2]=p,Ge[s>>2]=p,F=t),Ze=M,0|F}function U(e){return 0|(4294963200<(e|=0)>>>0?(Ge[163]=0-e,-1):e)}function Y(){return 652}function z(e,r,t,n,o){e|=0,r|=0,t|=0,n|=0,o|=0;var i,a,s,u,c,l,f,d,E,S,_=0,m=0,h=0,p=0,F=0,M=0,b=0,y=0,O=0,w=0,R=0,A=0,k=0,T=0,g=0,v=0,N=0,D=0,P=0,C=0,I=0,L=0,x=0,B=0,H=0,U=0,Y=0,z=0,V=0,K=0,W=0,X=0,j=0,G=0,q=0,Z=0,J=0,Q=0,$=0,ee=0,re=0,te=0,ne=0,oe=0,ie=0,ae=0,se=0,ue=0,ce=0,le=0,fe=0,de=0,Ee=0,Se=0,_e=0,me=0,he=0,pe=0,Fe=0,Me=0,be=0,ye=0,Oe=0,we=0,Re=0,Ae=0,ke=Ze;(0|Je)<=(0|(Ze=Ze+64|0))&&Qe(64),c=(a=ke)+20|0,l=0!=(0|e),d=f=40+(s=ke+24|0)|0,E=39+s|0,s=4+(u=ke+8|0)|0,h=m=_=0,p=Ge[(i=ke+16|0)>>2]=r;e:for(;;){do{if(-1<(0|m)){if((2147483647-m|0)<(0|_)){Ge[(r=652)>>2]=75,F=-1;break}F=_+m|0;break}}while(F=m,0);if(!((r=0|Xe[p>>0])<<24>>24)){M=87;break}b=r,y=p;r:for(;;){switch(b<<24>>24){case 37:w=O=y,M=9;break r;case 0:A=R=y;break r}r=y+1|0,Ge[i>>2]=r,b=0|Xe[r>>0],y=r}r:do{if(9==(0|M))for(;;){if(37!=((M=0)|Xe[w+1>>0])){R=O,A=w;break r}if(r=O+1|0,k=w+2|0,Ge[i>>2]=k,37!=(0|Xe[k>>0])){R=r,A=k;break}O=r,w=k,M=9}}while(0);if(k=R-p|0,l&&De(e,p,k),0|k)_=k,m=F,p=A;else{N=(r=(0|Xe[(k=A+1|0)>>0])-48|0)>>>0<10?(g=(T=36==(0|Xe[A+2>>0]))?r:-1,v=T?1:h,T?A+3|0:k):(g=-1,v=h,k),Ge[i>>2]=N,T=((k=0|Xe[N>>0])<<24>>24)-32|0;r:do{if(T>>>0<32)for(r=0,D=k,P=T,C=N;;){if(!(75913&(I=1<<P))){L=r,x=D,B=C;break r}if(H=I|r,I=C+1|0,Ge[i>>2]=I,32<=(P=((U=0|Xe[I>>0])<<24>>24)-32|0)>>>0){L=H,x=U,B=I;break}r=H,D=U,C=I}else L=0,x=k,B=N}while(0);if(x<<24>>24==42){if((T=(0|Xe[(k=B+1|0)>>0])-48|0)>>>0<10&&36==(0|Xe[B+2>>0]))Ge[o+(T<<2)>>2]=10,Y=0|Ge[n+((0|Xe[k>>0])-48<<3)>>2],z=1,V=B+3|0;else{if(0|v){K=-1;break}V=(z=l?(T=3+(0|Ge[t>>2])&-4,C=0|Ge[T>>2],Ge[t>>2]=T+4,Y=C,0):Y=0,k)}W=(k=(0|Y)<0)?0-Y|0:Y,X=k?8192|L:L,j=z,G=Ge[i>>2]=V}else{if((0|(k=0|Pe(i)))<0){K=-1;break}W=k,X=L,j=v,G=0|Ge[i>>2]}do{if(46==(0|Xe[G>>0])){if(42!=(0|Xe[G+1>>0])){Ge[i>>2]=G+1,q=k=0|Pe(i),Z=0|Ge[i>>2];break}if((C=(0|Xe[(k=G+2|0)>>0])-48|0)>>>0<10&&36==(0|Xe[G+3>>0])){Ge[o+(C<<2)>>2]=10,T=G+4|0,q=C=0|Ge[n+((0|Xe[k>>0])-48<<3)>>2],Z=Ge[i>>2]=T;break}if(0|j){K=-1;break e}q=l?(T=3+(0|Ge[t>>2])&-4,C=0|Ge[T>>2],Ge[t>>2]=T+4,C):0,Z=Ge[i>>2]=k}else q=-1,Z=G}while(0);for(k=0,C=Z;;){if(57<((0|Xe[C>>0])-65|0)>>>0){K=-1;break e}if(J=C+1|0,Ge[i>>2]=J,!((($=255&(Q=0|Xe[(0|Xe[C>>0])-65+(1362+(58*k|0))>>0]))+-1|0)>>>0<8))break;k=$,C=J}if(!(Q<<24>>24)){K=-1;break}T=-1<(0|g);do{if(Q<<24>>24==19){if(T){K=-1;break e}M=49}else{if(T){Ge[o+(g<<2)>>2]=$,r=0|Ge[(D=n+(g<<3)|0)+4>>2],Ge[(P=a)>>2]=Ge[D>>2],Ge[P+4>>2]=r,M=49;break}if(!l){K=0;break e}Ce(a,$,t)}}while(0);if(49!=(0|M)||(M=0,l)){r=0!=(0|k)&3==(15&(T=0|Xe[C>>0])|0)?-33&T:T,T=-65537&X,P=0==(8192&X|0)?X:T;r:do{switch(0|r){case 110:switch((255&k)<<24>>24){case 0:case 1:_=0,m=Ge[Ge[a>>2]>>2]=F,h=j,p=J;continue e;case 2:D=0|Ge[a>>2],Ge[D>>2]=F,Ge[D+4>>2]=((0|F)<0)<<31>>31,_=0,m=F,h=j,p=J;continue e;case 3:_=0,m=je[Ge[a>>2]>>1]=F,h=j,p=J;continue e;case 4:_=0,m=Xe[Ge[a>>2]>>0]=F,h=j,p=J;continue e;case 6:_=0,m=Ge[Ge[a>>2]>>2]=F,h=j,p=J;continue e;case 7:D=0|Ge[a>>2],Ge[D>>2]=F,Ge[D+4>>2]=((0|F)<0)<<31>>31,_=0,m=F,h=j,p=J;continue e;default:_=0,m=F,h=j,p=J;continue e}break;case 112:ee=120,re=8<q>>>0?q:8,te=8|P,M=61;break;case 88:case 120:ee=r,re=q,te=P,M=61;break;case 111:ne=D=0|function(e,r,t){t|=0;var n=0,o=0;if(0==(0|(e|=0))&0==(0|(r|=0)))n=t;else for(o=t,t=r,r=e;;){if(Xe[(e=o+-1|0)>>0]=7&r|48,0==(0|(r=0|Ve(0|r,0|t,3)))&0==(0|(t=ve))){n=e;break}o=e}return 0|n}(I=0|Ge[(D=a)>>2],U=0|Ge[D+4>>2],f),ie=1826,ae=(oe=0)==(8&P|0)|(0|(H=d-D|0))<(0|q)?q:H+1|0,se=P,ue=I,ce=U,M=67;break;case 105:case 100:if(I=0|Ge[(U=a)>>2],(0|(H=0|Ge[U+4>>2]))<0){U=0|Ye(0,0,0|I,0|H),D=ve,le=1,fe=1826,de=Ge[(S=a)>>2]=U,Ee=Ge[S+4>>2]=D,M=66;break r}le=0!=(2049&P|0)&1,fe=0==(2048&P|0)?0==(1&P|0)?1826:1828:1827,de=I,Ee=H,M=66;break r;case 117:fe=1826,de=(le=0)|Ge[(H=a)>>2],Ee=0|Ge[H+4>>2],M=66;break;case 99:Xe[E>>0]=Ge[a>>2],Se=E,_e=0,me=1826,he=f,pe=1,Fe=T;break;case 109:Me=0|(0|function(e,r){e|=0,r|=0;var t=0,n=0,o=0,i=0,a=0,s=0;t=0;for(;;){if((0|qe[1896+t>>0])==(0|e)){n=2;break}if(87==(0|(o=t+1|0))){i=1984,a=87,n=5;break}t=o}2==(0|n)&&(t?(i=1984,a=t,n=5):s=1984);if(5==(0|n))for(;;){for(n=0,t=i;t=(e=t)+1|0,0!=(0|Xe[e>>0]););if(!(a=a+-1|0)){s=t;break}i=t,n=5}return 0|function(e,r){return 0|function(e,r){e|=0;var t=0;t=(r|=0)?0|function(e,r,t){r|=0,t|=0;var n=0,o=0,i=0,a=0,s=0,u=0,c=0,l=0,f=0,d=0,E=0,S=0,_=0,m=0,h=0;n=1794895138+(0|Ge[(e|=0)>>2])|0,o=0|Ue(0|Ge[e+8>>2],n),i=0|Ue(0|Ge[e+12>>2],n),a=0|Ue(0|Ge[e+16>>2],n);t:do{if(o>>>0<r>>>2>>>0&&(s=r-(o<<2)|0,i>>>0<s>>>0&a>>>0<s>>>0)&&0==(3&(a|i)|0)){for(s=i>>>2,u=a>>>2,c=0,l=o;;){if(_=0|Ue(0|Ge[e+((S=(E=(d=c+(f=l>>>1)|0)<<1)+s|0)<<2)>>2],n),!((m=0|Ue(0|Ge[e+(1+S<<2)>>2],n))>>>0<r>>>0&_>>>0<(r-m|0)>>>0)){h=0;break t}if(0|Xe[e+(m+_)>>0]){h=0;break t}if(!(_=0|function(e,r){r|=0;var t=0,n=0,o=0,i=0,t=0|Xe[(e|=0)>>0],n=0|Xe[r>>0];if(t<<24>>24==0||t<<24>>24!=n<<24>>24)o=n,i=t;else{for(t=r,r=e;t=t+1|0,e=0|Xe[(r=r+1|0)>>0],n=0|Xe[t>>0],e<<24>>24!=0&&e<<24>>24==n<<24>>24;);o=n,i=e}return(255&i)-(255&o)|0}(t,e+m|0)))break;if(m=(0|_)<0,1==(0|l)){h=0;break t}c=m?c:d,l=m?f:l-f|0}c=0|Ue(0|Ge[e+((l=E+u|0)<<2)>>2],n),s=0|Ue(0|Ge[e+(l+1<<2)>>2],n),h=s>>>0<r>>>0&c>>>0<(r-s|0)>>>0&&0==(0|Xe[e+(s+c)>>0])?e+s|0:0}else h=0}while(0);return 0|h}(0|Ge[r>>2],0|Ge[r+4>>2],e):0;return 0|(0|t?t:e)}(e|=0,r|=0)}(s,0|Ge[r+20>>2])}(0|Ge[(H=652)>>2]|0,0|Ge[194])),M=71;break;case 115:Me=0|(H=0|Ge[a>>2])?H:1836,M=71;break;case 67:Ge[u>>2]=Ge[a>>2],Ge[s>>2]=0,be=-1,ye=Ge[a>>2]=u,M=75;break;case 83:H=0|Ge[a>>2],M=q?(be=q,ye=H,75):(xe(e,32,W,0,P),Oe=0,84);break;case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:_=0|function(e,r,t,n,o,i){e|=0,r=+r,t|=0,n|=0,o|=0,i|=0;var a=0,s=0,u=0,c=0,l=0,f=0,d=0,E=0,S=0,_=0,m=0,h=0,p=0,F=0,M=0,b=0,y=0,O=0,w=0,R=0,A=0,k=0,T=0,g=0,v=0,N=0,D=0,P=0,C=0,I=0,L=0,x=0,B=0,H=0,U=0,Y=0,z=0,V=0,K=0,W=0,X=0,j=0,G=0,q=0,Z=0,J=0,Q=0,$=0,ee=0,re=0,te=0,ne=0,oe=0,ie=0,ae=0,se=0,ue=0,ce=0,le=0,fe=0,de=0,Ee=0,Se=0,_e=0,me=0,he=0,pe=0,Fe=0,Me=0,be=0,ye=0,Oe=0,we=0;(0|(Ze=(a=Ze)+560|0))>=(0|Je)&&Qe(560);s=a+8|0,l=c=(u=a)+524|0,f=a+512|0,Ge[u>>2]=0,d=12+f|0,He(r),_=(0|ve)<0?(E=-r,S=1,1843):(E=r,S=0!=(2049&o|0)&1,0==(2048&o|0)?0==(1&o|0)?1844:1849:1846);He(E),m=2146435072&ve;do{if(m>>>0<2146435072|2146435072==(0|m)&!1){if(r=2*+function(e,r){return+ +function e(r,t){r=+r;t|=0;var n=0,o=0,i=0,a=0,s=0,u=0,c=0;Te[ge>>3]=r;n=0|Ge[ge>>2];o=0|Ge[ge+4>>2];i=0|Ve(0|n,0|o,52);switch(2047&i){case 0:u=0!=r?(a=+e(0x10000000000000000*r,t),s=a,(0|Ge[t>>2])-64|0):(s=r,0),Ge[t>>2]=u,c=s;break;case 2047:c=r;break;default:Ge[t>>2]=(2047&i)-1022,Ge[ge>>2]=n,Ge[ge+4>>2]=-2146435073&o|1071644672,c=+Te[ge>>3]}return+c}(e=+e,r|=0)}(E,u),(h=0!=r)&&(Ge[u>>2]=(0|Ge[u>>2])-1),97==(0|(p=32|i))){M=0==(0|(F=32&i))?_:_+9|0,b=2|S,y=12-n|0;do{if(!(11<n>>>0|0==(0|y))){for(O=8,w=y;w=w+-1|0,O*=16,0!=(0|w););if(45==(0|Xe[M>>0])){R=-(O+(-r-O));break}R=r+O-O;break}}while(R=r,0);for(y=0|Ge[u>>2],A=0|Ie(w=(0|y)<0?0-y|0:y,((0|w)<0)<<31>>31,d),k=(0|A)==(0|d)?(Xe[(w=11+f|0)>>0]=48,w):A,Xe[k+-1>>0]=43+(y>>31&2),Xe[(y=k+-2|0)>>0]=i+15,A=(0|n)<1,w=0==(8&o|0),T=c,g=R;v=~~g,N=T+1|0,Xe[T>>0]=qe[1878+v>>0]|F,g=16*(g-(0|v)),D=1!=(N-l|0)||w&A&0==g?N:(Xe[N>>0]=46,T+2|0),0!=g;)T=D;xe(e,32,t,F=(A=d-y|0)+b+(w=0!=(0|n)&((T=D-l|0)+-2|0)<(0|n)?n+2|0:T)|0,o),De(e,M,b),xe(e,48,t,F,65536^o),De(e,c,T),xe(e,48,w-T|0,0,0),De(e,y,A),xe(e,32,t,F,8192^o),P=F;break}for(F=(0|n)<0?6:n,I=h?(A=(0|Ge[u>>2])-28|0,Ge[u>>2]=A,C=268435456*r,A):(C=r,0|Ge[u>>2]),A=(0|I)<0?s:288+s|0,T=A,g=C;w=~~g>>>0,Ge[T>>2]=w,T=T+4|0,g=1e9*(g-(w>>>0)),0!=g;);if(0<(0|I))for(h=A,y=T,b=I;;){if(M=(0|b)<29?b:29,h>>>0<=(w=y+-4|0)>>>0){for(N=w,w=0;v=0|Ke(0|Ge[N>>2],0,0|M),L=0|ze(0|v,0|ve,0|w,0),x=0|rr(0|L,0|(v=ve),1e9,0),Ge[N>>2]=x,w=0|We(0|L,0|v,1e9,0),N=N+-4|0,h>>>0<=N>>>0;);B=w?(Ge[(N=h+-4|0)>>2]=w,N):h}else B=h;for(N=y;!(N>>>0<=B>>>0||0|Ge[(v=N+-4|0)>>2]);)N=v;if(w=(0|Ge[u>>2])-M|0,!(0<(0|(Ge[u>>2]=w)))){H=B,U=N,Y=w;break}h=B,y=N,b=w}else H=A,U=T,Y=I;if((0|Y)<0)for(b=1+((F+25|0)/9|0)|0,y=102==(0|p),h=H,w=U,v=Y;;){if(x=(0|(L=0-v|0))<9?L:9,h>>>0<w>>>0){for(L=(1<<x)-1|0,z=1e9>>>x,V=0,K=h;W=0|Ge[K>>2],Ge[K>>2]=(W>>>x)+V,V=0|Ne(W&L,z),K=K+4|0,K>>>0<w>>>0;);K=0==(0|Ge[h>>2])?h+4|0:h,j=V?(Ge[w>>2]=V,X=K,w+4|0):(X=K,w)}else X=0==(0|Ge[h>>2])?h+4|0:h,j=w;if(z=(0|b)<(j-(K=y?A:X)>>2|0)?K+(b<<2)|0:j,v=(0|Ge[u>>2])+x|0,0<=(0|(Ge[u>>2]=v))){G=X,q=z;break}h=X,w=z}else G=H,q=U;if(w=A,G>>>0<q>>>0)if(h=9*(w-G>>2)|0,(v=0|Ge[G>>2])>>>0<10)Z=h;else for(b=h,h=10;;){if(y=b+1|0,v>>>0<(h=10*h|0)>>>0){Z=y;break}b=y}else Z=0;if((0|(v=F-(102!=(0|p)?Z:0)+(((h=0!=(0|F))&(b=103==(0|p)))<<31>>31)|0))<((9*(q-w>>2)|0)-9|0)){if(v=A+4+(((0|(y=v+9216|0))/9|0)-1024<<2)|0,(0|(T=1+((0|y)%9|0)|0))<9)for(y=T,T=10;;){if(z=10*T|0,9==(0|(y=y+1|0))){J=z;break}T=z}else J=10;if(T=0|Ge[v>>2],(p=(v+4|0)==(0|q))&0==(0|(y=(T>>>0)%(J>>>0)|0)))ne=v,oe=Z,ie=G;else if(O=0==(1&((T>>>0)/(J>>>0)|0)|0)?9007199254740992:9007199254740994,g=y>>>0<(z=(0|J)/2|0)>>>0?.5:p&(0|y)==(0|z)?1:1.5,$=S?(z=45==(0|Xe[_>>0]),Q=z?-g:g,z?-O:O):(Q=g,O),z=T-y|0,Ge[v>>2]=z,$+Q!=$){if(y=z+J|0,999999999<(Ge[v>>2]=y)>>>0)for(y=G,z=v;;){if(T=z+-4|0,Ge[z>>2]=0,ee=T>>>0<y>>>0?(Ge[(p=y+-4|0)>>2]=0,p):y,p=1+(0|Ge[T>>2])|0,!(999999999<(Ge[T>>2]=p)>>>0)){re=ee,te=T;break}y=ee,z=T}else re=G,te=v;if(z=9*(w-re>>2)|0,(y=0|Ge[re>>2])>>>0<10)ne=te,oe=z,ie=re;else for(T=z,z=10;;){if(p=T+1|0,y>>>0<(z=10*z|0)>>>0){ne=te,oe=p,ie=re;break}T=p}}else ne=v,oe=Z,ie=G;ae=oe,se=(T=ne+4|0)>>>0<q>>>0?T:q,ue=ie}else ae=Z,se=q,ue=G;for(T=se;;){if(T>>>0<=ue>>>0){ce=0;break}if(0|Ge[(z=T+-4|0)>>2]){ce=1;break}T=z}v=0-ae|0;do{if(b){if(fe=(0|ae)<(0|(z=(1&(1^h))+F|0))&-5<(0|ae)?(le=i+-1|0,z+-1-ae|0):(le=i+-2|0,z+-1|0),!(z=8&o)){if(ce&&0!=(0|(y=0|Ge[T+-4>>2])))if((y>>>0)%10|0)de=0;else for(p=0,K=10;;){if(L=p+1|0,(y>>>0)%((K=10*K|0)>>>0)|0){de=L;break}p=L}else de=9;if(p=(9*(T-w>>2)|0)-9|0,102==(32|le)){Ee=le,Se=(0|fe)<(0|(y=0<(0|(K=p-de|0))?K:0))?fe:y,_e=0;break}Ee=le,Se=(0|fe)<(0|(p=0<(0|(y=p+ae-de|0))?y:0))?fe:p,_e=0;break}Ee=le,Se=fe,_e=z}else Ee=i,Se=F,_e=8&o}while(0);if(w=0!=(0|(F=Se|_e))&1,h=102==(32|Ee))he=(me=0)<(0|ae)?ae:0;else{if(p=0|Ie(b=(0|ae)<0?v:ae,((0|b)<0)<<31>>31,d),((b=d)-p|0)<2)for(y=p;;){if(Xe[(K=y+-1|0)>>0]=48,!((b-K|0)<2)){pe=K;break}y=K}else pe=p;Xe[pe+-1>>0]=43+(ae>>31&2),Xe[(y=pe+-2|0)>>0]=Ee,he=b-(me=y)|0}if(xe(e,32,t,y=S+1+Se+w+he|0,o),De(e,_,S),xe(e,48,t,y,65536^o),h){x=K=9+c|0,V=8+c|0,L=v=A>>>0<ue>>>0?A:ue;do{if(N=0|Ie(0|Ge[L>>2],0,K),(0|L)==(0|v))Fe=(0|N)==(0|K)?(Xe[V>>0]=48,V):N;else if(c>>>0<N>>>0)for(er(0|c,48,N-l|0),M=N;;){if(!(c>>>0<(W=M+-1|0)>>>0)){Fe=W;break}M=W}else Fe=N}while(De(e,Fe,x-Fe|0),(L=L+4|0)>>>0<=A>>>0);if(0|F&&De(e,1894,1),L>>>0<T>>>0&0<(0|Se))for(A=Se,x=L;;){if(V=0|Ie(0|Ge[x>>2],0,K),c>>>0<V>>>0)for(er(0|c,48,V-l|0),v=V;;){if(!(c>>>0<(h=v+-1|0)>>>0)){Me=h;break}v=h}else Me=V;if(De(e,Me,(0|A)<9?A:9),v=A+-9|0,!((x=x+4|0)>>>0<T>>>0&9<(0|A))){be=v;break}A=v}else be=Se;xe(e,48,be+9|0,9,0)}else{if(A=ce?T:ue+4|0,-1<(0|Se))for(K=0==(0|_e),L=x=9+c|0,F=0-l|0,v=8+c|0,N=Se,h=ue;;){w=0|Ie(0|Ge[h>>2],0,x),ye=(0|w)==(0|x)?(Xe[v>>0]=48,v):w;do{if((0|h)==(0|ue)){if(w=ye+1|0,De(e,ye,1),K&(0|N)<1){Oe=w;break}De(e,1894,1),Oe=w}else{if(ye>>>0<=c>>>0){Oe=ye;break}for(er(0|c,48,ye+F|0),w=ye;;){if(!(c>>>0<(b=w+-1|0)>>>0)){Oe=b;break}w=b}}}while(0);if(De(e,Oe,(0|(V=L-Oe|0))<(0|N)?V:N),!((h=h+4|0)>>>0<A>>>0&-1<(0|(w=N-V|0)))){we=w;break}N=w}else we=Se;xe(e,48,we+18|0,18,0),De(e,me,d-me|0)}xe(e,32,t,y,8192^o),P=y}else N=0!=(32&i|0),xe(e,32,t,A=S+3|0,-65537&o),De(e,_,S),De(e,E!=E|!1?N?1870:1874:N?1862:1866,3),xe(e,32,t,A,8192^o),P=A}while(0);return Ze=a,0|((0|P)<(0|t)?t:P)}(e,+Te[a>>3],W,q,P,r),m=F,h=j,p=J;continue e;default:Se=p,_e=0,me=1826,he=f,pe=q,Fe=P}}while(0);r:do{if(61==(0|M))ne=r=(M=0)|function(e,r,t,n){t|=0,n|=0;var o=0,i=0;if(0==(0|(e|=0))&0==(0|(r|=0)))o=t;else for(i=t,t=r,r=e;;){if(Xe[(e=i+-1|0)>>0]=0|qe[1878+(15&r)>>0]|n,0==(0|(r=0|Ve(0|r,0|t,4)))&0==(0|(t=ve))){o=e;break}i=e}return 0|o}(k=0|Ge[(r=a)>>2],C=0|Ge[r+4>>2],f,32&ee),oe=(H=0==(8&te|0)|0==(0|k)&0==(0|C))?0:2,ie=H?1826:1826+(ee>>4)|0,ae=re,se=te,ue=k,ce=C,M=67;else if(66==(0|M))ne=(M=0)|Ie(de,Ee,f),oe=le,ie=fe,ae=q,se=P,ue=de,ce=Ee,M=67;else if(71==(0|M))me=1826,he=(k=(_e=M=0)==(0|(C=0|Le(Se=Me,0,q))))?Me+q|0:C,pe=k?q:C-Me|0,Fe=T;else if(75==(0|M)){for(C=ye,H=k=M=0;;){if(!(r=0|Ge[C>>2])){we=k,Re=H;break}if((0|(I=0|Be(c,r)))<0|(be-k|0)>>>0<I>>>0){we=k,Re=I;break}if(!((r=I+k|0)>>>0<be>>>0)){we=r,Re=I;break}C=C+4|0,k=r,H=I}if((0|Re)<0){K=-1;break e}if(xe(e,32,W,we,P),we)for(H=ye,k=0;;){if(!(C=0|Ge[H>>2])){Oe=we,M=84;break r}if((0|we)<(0|(k=(I=0|Be(c,C))+k|0))){Oe=we,M=84;break r}if(De(e,c,I),we>>>0<=k>>>0){Oe=we,M=84;break}H=H+4|0}else Oe=0,M=84}}while(0);if(67==(0|M))k=d-ne+(1&(1^(T=(M=0)!=(0|ue)|0!=(0|ce))))|0,Se=(H=0!=(0|ae)|T)?ne:f,_e=oe,me=ie,he=f,pe=!H||(0|k)<(0|ae)?ae:k,Fe=-1<(0|ae)?-65537&se:se;else if(84==(0|M)){M=0,xe(e,32,W,Oe,8192^P),_=(0|Oe)<(0|W)?W:Oe,m=F,h=j,p=J;continue}xe(e,32,I=(0|W)<(0|(T=(H=(0|pe)<(0|(k=he-Se|0))?k:pe)+_e|0))?T:W,T,Fe),De(e,me,_e),xe(e,48,I,T,65536^Fe),xe(e,48,H,k,0),De(e,Se,k),xe(e,32,I,T,8192^Fe),_=I,m=F,h=j,p=J}else _=0,m=F,h=j,p=J}}e:do{if(87==(0|M))if(e)K=F;else if(h){for(J=1;;){if(!(p=0|Ge[o+(J<<2)>>2])){Ae=J;break}if(Ce(n+(J<<3)|0,p,t),10<=(0|(J=J+1|0))){K=1;break e}}for(;;){if(0|Ge[o+(Ae<<2)>>2]){K=-1;break e}if(10<=(0|(Ae=Ae+1|0))){K=1;break}}}else K=0}while(0);return Ze=ke,0|K}function V(){return 0}function K(){0}function De(e,r,t){r|=0,t|=0,32&Ge[(e|=0)>>2]||W(r,t,e)}function Pe(e){var r=0,t=0,n=0,o=0,i=0,r=0|Ge[(e|=0)>>2];if((t=(0|Xe[r>>0])-48|0)>>>0<10)for(n=0,o=r,r=t;;){if(t=r+(10*n|0)|0,o=o+1|0,Ge[e>>2]=o,10<=(r=(0|Xe[o>>0])-48|0)>>>0){i=t;break}n=t}else i=0;return 0|i}function Ce(e,r,t){e|=0,r|=0,t|=0;var n,o=0,i=0,a=0,s=0;e:do{if(r>>>0<=20){switch(0|r){case 9:o=3+(0|Ge[t>>2])&-4,i=0|Ge[o>>2],Ge[t>>2]=o+4,Ge[e>>2]=i;break e;case 10:i=3+(0|Ge[t>>2])&-4,o=0|Ge[i>>2],Ge[t>>2]=i+4,Ge[(i=e)>>2]=o,Ge[i+4>>2]=((0|o)<0)<<31>>31;break e;case 11:o=3+(0|Ge[t>>2])&-4,i=0|Ge[o>>2],Ge[t>>2]=o+4,Ge[(o=e)>>2]=i,Ge[o+4>>2]=0;break e;case 12:o=7+(0|Ge[t>>2])&-8,n=0|Ge[(i=o)>>2],a=0|Ge[i+4>>2],Ge[t>>2]=o+8,Ge[(o=e)>>2]=n,Ge[o+4>>2]=a;break e;case 13:a=3+(0|Ge[t>>2])&-4,o=0|Ge[a>>2],Ge[t>>2]=a+4,a=(65535&o)<<16>>16,Ge[(o=e)>>2]=a,Ge[o+4>>2]=((0|a)<0)<<31>>31;break e;case 14:a=3+(0|Ge[t>>2])&-4,o=0|Ge[a>>2],Ge[t>>2]=a+4,Ge[(a=e)>>2]=65535&o,Ge[a+4>>2]=0;break e;case 15:a=3+(0|Ge[t>>2])&-4,o=0|Ge[a>>2],Ge[t>>2]=a+4,a=(255&o)<<24>>24,Ge[(o=e)>>2]=a,Ge[o+4>>2]=((0|a)<0)<<31>>31;break e;case 16:a=3+(0|Ge[t>>2])&-4,o=0|Ge[a>>2],Ge[t>>2]=a+4,Ge[(a=e)>>2]=255&o,Ge[a+4>>2]=0;break e;case 17:case 18:a=7+(0|Ge[t>>2])&-8,s=+Te[a>>3],Ge[t>>2]=a+8,Te[e>>3]=s;break e;default:break e}}}while(0)}function Ie(e,r,t){t|=0;var n=0,o=0,i=0,a=0,s=0,u=0;if(0<(r|=0)>>>0|0==(0|r)&4294967295<(e|=0)>>>0){for(n=t,o=e,i=r;r=0|rr(0|o,0|i,10,0),Xe[(n=n+-1|0)>>0]=255&r|48,o=0|We(0|(r=o),0|i,10,0),9<i>>>0|9==(0|i)&4294967295<r>>>0;)i=ve;a=o,s=n}else a=e,s=t;if(a)for(t=a,a=s;;){if(Xe[(s=a+-1|0)>>0]=(t>>>0)%10|48,t>>>0<10){u=s;break}t=(t>>>0)/10|0,a=s}else u=s;return 0|u}function Le(e,r,t){e|=0;var n,o,i,a,s=0,u=0,c=0,l=0,f=0,d=0,E=0,S=0,_=0,m=0,h=0,p=0,F=0,M=0,b=0,y=255&(r|=0),s=0!=(0|(t|=0));e:do{if(s&0!=(3&e|0))for(n=255&r,u=e,c=t;;){if((0|Xe[u>>0])==n<<24>>24){l=u,f=c,d=6;break e}if(!((a=0!=(0|(i=c+-1|0)))&0!=(3&(o=u+1|0)|0))){E=o,S=i,_=a,d=5;break}u=o,c=i}else E=e,S=t,_=s,d=5}while(0);5==(0|d)&&(_?(l=E,f=S,d=6):(m=E,h=0));e:do{if(6==(0|d))if(E=255&r,(0|Xe[l>>0])==E<<24>>24)m=l,h=f;else{S=0|Ne(y,16843009);r:do{if(3<f>>>0){for(_=l,s=f;!((-2139062144&(t=Ge[_>>2]^S)^-2139062144)&t+-16843009|0);){if(t=_+4|0,!(3<(e=s+-4|0)>>>0)){p=t,F=e,d=11;break r}_=t,s=e}M=_,b=s}else p=l,F=f,d=11}while(0);if(11==(0|d)){if(!F){m=p,h=0;break}M=p,b=F}for(;;){if((0|Xe[M>>0])==E<<24>>24){m=M,h=b;break e}if(S=M+1|0,!(b=b+-1|0)){m=S,h=0;break}M=S}}}while(0);return 0|(0|h?m:0)}function xe(e,r,t,n,o){e|=0,r|=0,t|=0,n|=0,o|=0;var i,a=0,s=Ze;if((0|Je)<=(0|(Ze=Ze+256|0))&&Qe(256),i=s,(0|n)<(0|t)&0==(73728&o|0)){if(er(0|i,0|r,0|((o=t-n|0)>>>0<256?o:256)),255<o>>>0){for(r=t-n|0,n=o;De(e,i,256),n=n+-256|0,255<n>>>0;);a=255&r}else a=o;De(e,i,a)}Ze=s}function Be(e,r){r|=0;return 0|((e|=0)?0|function(e,r){e|=0,r|=0,0;var t=0;do{if(e){if(r>>>0<128){Xe[e>>0]=r,t=1;break}if(!(0|Ge[Ge[776>>2]>>2])){if(57216==(-128&r|0)){Xe[e>>0]=r,t=1;break}Ge[652>>2]=84,t=-1;break}if(r>>>0<2048){Xe[e>>0]=r>>>6|192,Xe[e+1>>0]=63&r|128,t=2;break}if(r>>>0<55296|57344==(-8192&r|0)){Xe[e>>0]=r>>>12|224,Xe[e+1>>0]=r>>>6&63|128,Xe[e+2>>0]=63&r|128,t=3;break}if((r+-65536|0)>>>0<1048576){Xe[e>>0]=r>>>18|240,Xe[e+1>>0]=r>>>12&63|128,Xe[e+2>>0]=r>>>6&63|128,Xe[e+3>>0]=63&r|128,t=4;break}Ge[652>>2]=84,t=-1;break}}while(t=1,0);return 0|t}(e,r):0)}function He(e){e=+e;var r;return Te[ge>>3]=e,r=0|Ge[ge>>2],ve=0|Ge[ge+4>>2],0|r}function Ue(e,r){var t=0|ce(0|(e|=0));return 0|(0==(0|(r|=0))?e:t)}function W(e,r,t){e|=0,r|=0;var n,o=0,i=0,a=0,s=0,u=0,c=0,l=0,f=0,d=0,E=0;(i=0|Ge[(o=(t|=0)+16|0)>>2])?(a=i,s=5):0|X(t)?u=0:(a=0|Ge[o>>2],s=5);e:do{if(5==(0|s)){if((a-(n=o=0|Ge[(i=t+20|0)>>2])|0)>>>0<r>>>0){u=0|de[7&Ge[t+36>>2]](t,e,r);break}r:do{if(-1<(0|Xe[t+75>>0])){for(o=r;;){if(!o){c=0,l=e,f=r,d=n;break r}if(10==(0|Xe[e+(E=o+-1|0)>>0]))break;o=E}if((E=0|de[7&Ge[t+36>>2]](t,e,o))>>>0<o>>>0){u=E;break e}l=e+(c=o)|0,f=r-o|0,d=0|Ge[i>>2]}else c=0,l=e,f=r,d=n}while(0);tr(0|d,0|l,0|f),Ge[i>>2]=(0|Ge[i>>2])+f,u=c+f|0}}while(0);return 0|u}function X(e){var r=0,t=0|Xe[(r=(e|=0)+74|0)>>0];return Xe[r>>0]=255+t|t,0|(8&(t=0|Ge[e>>2])?(Ge[e>>2]=32|t,-1):(Ge[e+8>>2]=0,r=(Ge[e+4>>2]=0)|Ge[e+44>>2],Ge[e+28>>2]=r,Ge[e+20>>2]=r,Ge[e+16>>2]=r+(0|Ge[e+48>>2]),0))}function j(e){var r,t=0,n=0,o=0,i=0,a=0,s=0,u=0,c=0,t=e|=0;e:do{if(3&t)for(i=e,a=t;;){if(!(0|Xe[i>>0])){s=a;break e}if(!(3&(a=r=i+1|0))){n=r,o=4;break}i=r}else n=e,o=4}while(0);if(4==(0|o)){for(o=n;!((-2139062144&(u=0|Ge[o>>2])^-2139062144)&u+-16843009);)o=o+4|0;if((255&u)<<24>>24)for(u=o;;){if(!(0|Xe[(o=u+1|0)>>0])){c=o;break}u=o}else c=o;s=c}return s-t|0}function G(e,r){var t=0|function(e,r){e|=0;var t=0,n=0,o=0,i=0,a=0,s=0,u=0,c=0,l=0;t=255&(r|=0);e:do{if(t){if(3&e)for(i=255&r,a=e;;){if((s=0|Xe[a>>0])<<24>>24==0||s<<24>>24==i<<24>>24){n=a;break e}if(!(3&(s=a+1|0))){o=s;break}a=s}else o=e;a=0|Ne(t,16843009),i=0|Ge[o>>2];r:do{if((-2139062144&i^-2139062144)&i+-16843009)l=o;else for(s=o,u=i;;){if((-2139062144&(c=u^a)^-2139062144)&c-16843009|0){l=s;break r}if((-2139062144&(u=0|Ge[(c=s+4|0)>>2])^-2139062144)&u+-16843009|0){l=c;break}s=c}}while(0);for(a=255&r,i=l;;){if((s=0|Xe[i>>0])<<24>>24==0||s<<24>>24==a<<24>>24){n=i;break}i=i+1|0}}else n=e+(0|j(e))|0}while(0);return 0|n}(e|=0,r|=0);return 0|((0|Xe[t>>0])==(255&r)<<24>>24?t:0)}function q(e,r){r|=0;var t=0;return((0|function(e,r,t,n){e|=0,n|=0;var o=0,i=0,a=0,s=0,u=0;o=0|Ne(t|=0,r|=0),i=0==(0|r)?0:t,s=-1<(0|Ge[n+76>>2])?(t=!0,a=0|W(e,o,n),t||K(),a):0|W(e,o,n);u=(0|s)==(0|o)?i:(s>>>0)/(r>>>0)|0;return 0|u}(e|=0,1,t=0|j(e),r))!=(0|t))<<31>>31|0}function Z(e){var r,t;0|Ge[(e|=0)+68>>2]&&(t=e+112|0,0|(r=0|Ge[e+116>>2])&&(Ge[112+r>>2]=Ge[t>>2]),e=0|Ge[t>>2],Ge[(e?e+116|0:820)>>2]=r)}function J(e,r){e|=0,r|=0;var t,n,o=0,i=0,a=0,s=0,u=0,c=0,l=Ze;(0|Je)<=(0|(Ze=Ze+16|0))&&Qe(16),n=255&r,Xe[(t=l)>>0]=n,(i=0|Ge[(o=e+16|0)>>2])?(a=i,s=4):0|X(e)?u=-1:(a=0|Ge[o>>2],s=4);do{if(4==(0|s)){if((o=0|Ge[(i=e+20|0)>>2])>>>0<a>>>0&&(0|(c=255&r))!=(0|Xe[e+75>>0])){Ge[i>>2]=o+1,Xe[o>>0]=n,u=c;break}u=1==(0|de[7&Ge[e+36>>2]](e,t,1))?0|qe[t>>0]:-1}}while(0);return Ze=l,0|u}function Q(){return b(4352),4360}function $(){g(4352)}function ee(e){var r,t,n,o=0,i=0,a=0,o=(Ge[(e|=0)+76>>2],0);return Z(e),(r=0!=(1&Ge[e>>2]|0))||(i=0|Q(),n=e+56|0,0|(t=0|Ge[e+52>>2])&&(Ge[56+t>>2]=Ge[n>>2]),0|(a=0|Ge[n>>2])&&(Ge[a+52>>2]=t),(0|Ge[i>>2])==(0|e)&&(Ge[i>>2]=a),$()),a=0|re(e),i=0|fe[1&Ge[e+12>>2]](e)|a,0|(a=0|Ge[e+92>>2])&&B(a),r?0|o&&K():B(e),0|i}function re(e){e|=0;var r=0,t=0,n=0,o=0,i=0,a=0,s=0;do{if(e){if((0|Ge[e+76>>2])<=-1){r=0|te(e);break}r=((t=!0)||K(),n=0|te(e))}else{if(o=0|Ge[240]?0|re(0|Ge[240]):0,n=0|Q(),t=0|Ge[n>>2])for(n=t,t=o;;){if(a=(Ge[n+76>>2],0),s=(0|Ge[n+20>>2])>>>0>(0|Ge[n+28>>2])>>>0?0|te(n)|t:t,0|a&&K(),!(n=0|Ge[n+56>>2])){i=s;break}t=s}else i=o;$(),r=i}}while(0);return 0|r}function te(e){var r,t,n,o,i=0,a=(e|=0)+28|0;return 0|((0|Ge[(i=e+20|0)>>2])>>>0>(0|Ge[a>>2])>>>0&&(de[7&Ge[e+36>>2]](e,0,0),0==(0|Ge[i>>2]))?-1:((t=0|Ge[(r=e+4|0)>>2])>>>0<(o=0|Ge[(n=e+8|0)>>2])>>>0&&de[7&Ge[e+40>>2]](e,t-o|0,1),Ge[e+16>>2]=0,Ge[a>>2]=0,Ge[i>>2]=0,Ge[n>>2]=0,Ge[r>>2]=0))}function ne(e,r,t){e|=0,r|=0;var n=0,n=1==(0|(t|=0))?r-(0|Ge[e+8>>2])+(0|Ge[e+4>>2])|0:r,o=e+28|0;return 0|((0|Ge[(r=e+20|0)>>2])>>>0>(0|Ge[o>>2])>>>0&&(de[7&Ge[e+36>>2]](e,0,0),0==(0|Ge[r>>2]))?-1:(Ge[e+16>>2]=0,Ge[o>>2]=0,((Ge[r>>2]=0)|de[7&Ge[e+40>>2]](e,n,t))<0?-1:(Ge[e+8>>2]=0,Ge[e+4>>2]=0,Ge[e>>2]=-17&Ge[e>>2],0)))}function oe(e){var r=0,t=0,r=128&Ge[(e|=0)>>2]&&(0|Ge[e+20>>2])>>>0>(0|Ge[e+28>>2])>>>0?2:1;return 0|((0|(t=0|de[7&Ge[e+40>>2]](e,0,r)))<0?t:t-(0|Ge[e+8>>2])+(0|Ge[e+4>>2])+(0|Ge[e+20>>2])-(0|Ge[e+28>>2])|0)}function ie(e,r){e|=0,r|=0;var t,n=Ze;return(0|Je)<=(0|(Ze=Ze+16|0))&&Qe(16),Ge[(t=n)>>2]=r,r=0|function(e,r,t){e|=0,r|=0,t|=0;var n,o,i,a,s,u,c,l=0,f=0,d=0,E=0,S=0,_=0,m=Ze;for(Ze=Ze+224|0,(0|Je)<=(0|Ze)&&Qe(224),n=m+120|0,l=m+80|0,c=m,o=m+136|0,f=l,d=f+40|0;f=f+4|(Ge[f>>2]=0),(0|f)<(0|d););return Ge[n>>2]=Ge[t>>2],E=(0|z(0,r,n,c,l))<0?-1:(S=-1<(0|Ge[e+76>>2])?0|V():0,f=32&(t=0|Ge[e>>2]),(0|Xe[e+74>>0])<1&&(Ge[e>>2]=-33&t),_=0|Ge[(t=e+48|0)>>2]?0|z(e,r,n,c,l):(i=0|Ge[(d=e+44|0)>>2],Ge[d>>2]=o,Ge[(a=e+28|0)>>2]=o,Ge[(s=e+20|0)>>2]=o,Ge[t>>2]=80,Ge[(u=e+16|0)>>2]=80+o,o=0|z(e,r,n,c,l),i?(de[7&Ge[e+36>>2]](e,0,0),c=0==(0|Ge[s>>2])?-1:o,Ge[d>>2]=i,Ge[t>>2]=0,Ge[u>>2]=0,Ge[a>>2]=0,Ge[s>>2]=0,c):o),l=0|Ge[e>>2],Ge[e>>2]=l|f,0|S&&K(),0==(32&l|0)?_:-1),Ze=m,0|E}(0|Ge[208],e,t),Ze=n,0|r}function ae(e){e|=0;var r=0,t=0,n=0,o=0,i=0|Ge[208],r=(Ge[76+i>>2],0);do{if((0|q(e,i))<0)t=1;else{if(10!=(0|Xe[75+i>>0])&&(o=0|Ge[(n=20+i|0)>>2])>>>0<(0|Ge[16+i>>2])>>>0){Ge[n>>2]=o+1,Xe[o>>0]=10,t=0;break}t=(0|J(i,10))<0}}while(0);return 0|r&&K(),t<<31>>31|0}function Ye(e,r,t,n){r|=0,n|=0;return 0|(ve=r-n-((e|=0)>>>0<(t|=0)>>>0|0)>>>0,e-t>>>0|0)}function ze(e,r,t,n){var o=0;return 0|(ve=(r|=0)+(n|=0)+((o=(e|=0)+(t|=0)>>>0)>>>0<e>>>0|0)>>>0,0|o)}function er(e,r,t){r|=0;var n,o,i,a=(e|=0)+(t|=0)|0;if(r&=255,67<=(0|t)){for(;3&e;)Xe[e>>0]=r,e=e+1|0;for(o=(n=-4&a|0)-64|0,i=r|r<<8|r<<16|r<<24;(0|e)<=(0|o);)Ge[e>>2]=i,Ge[e+4>>2]=i,Ge[e+8>>2]=i,Ge[e+12>>2]=i,Ge[e+16>>2]=i,Ge[e+20>>2]=i,Ge[e+24>>2]=i,Ge[e+28>>2]=i,Ge[e+32>>2]=i,Ge[e+36>>2]=i,Ge[e+40>>2]=i,Ge[e+44>>2]=i,Ge[e+48>>2]=i,Ge[e+52>>2]=i,Ge[e+56>>2]=i,Ge[e+60>>2]=i,e=e+64|0;for(;(0|e)<(0|n);)Ge[e>>2]=i,e=e+4|0}for(;(0|e)<(0|a);)Xe[e>>0]=r,e=e+1|0;return a-t|0}function Ve(e,r,t){return e|=0,r|=0,(0|(t|=0))<32?(ve=r>>>t,e>>>t|(r&(1<<t)-1)<<32-t):r>>>t-32|(ve=0)}function Ke(e,r,t){return e|=0,r|=0,(0|(t|=0))<32?(ve=r<<t|(e&(1<<t)-1<<32-t)>>>32-t,e<<t):(ve=e<<t-32,0)}function se(e){var r=0;return(0|(r=0|Xe[E+(255&(e|=0))>>0]))<8?0|r:(0|(r=0|Xe[E+(e>>8&255)>>0]))<8?r+8|0:(0|(r=0|Xe[E+(e>>16&255)>>0]))<8?r+16|0:24+(0|Xe[E+(e>>>24)>>0])|0}function ue(e,r,t,n,o){o|=0;var i,a,s,u=0,c=0,l=0,f=0,d=0,E=0,S=0,_=0,m=0,h=0,p=0,F=0,M=0,b=0,y=0,O=0,w=0,R=0,A=0,k=0,T=0,g=0,v=0,N=0,u=e|=0,f=t|=0,E=d=n|=0;if(!(l=c=r|=0))return S=0!=(0|o),E?(S&&(Ge[o>>2]=0|e,Ge[o+4>>2]=0&r),(m=_=0)|(ve=_,m)):(S&&(Ge[o>>2]=(u>>>0)%(f>>>0),Ge[o+4>>2]=0),(_=0)|(ve=_,m=(u>>>0)/(f>>>0)>>>0));S=0==(0|E);do{if(f){if(!S){if((h=(0|D(0|E))-(0|D(0|l))|0)>>>0<=31){y=u>>>((b=p=h+1|0)>>>0)&(M=h-31>>31)|l<<(F=31-h|0),O=l>>>(p>>>0)&M,w=0,R=u<<F;break}return o?(Ge[o>>2]=0|e,Ge[o+4>>2]=c|0&r,(m=_=0)|(ve=_,m)):(m=_=0)|(ve=_,m)}if((F=f-1|0)&f|0){y=(h=32-(M=33+(0|D(0|f))-(0|D(0|l))|0)|0)-1>>31&l>>>((a=M-32|0)>>>0)|(l<<h|u>>>((b=M)>>>0))&(s=a>>31),O=s&l>>>(M>>>0),w=u<<(p=64-M|0)&(i=h>>31),R=(l<<p|u>>>(a>>>0))&i|u<<h&M-33>>31;break}return 0|o&&(Ge[o>>2]=F&u,Ge[o+4>>2]=0),1==(0|f)?0|(ve=_=c|0&r,m=0|e):(F=0|se(0|f),0|(ve=_=l>>>(F>>>0)|0,m=l<<32-F|u>>>(F>>>0)|0))}if(S)return 0|o&&(Ge[o>>2]=(l>>>0)%(f>>>0),Ge[o+4>>2]=0),(_=0)|(ve=_,m=(l>>>0)/(f>>>0)>>>0);if(!u)return 0|o&&(Ge[o>>2]=0,Ge[o+4>>2]=(l>>>0)%(E>>>0)),(_=0)|(ve=_,m=(l>>>0)/(E>>>0)>>>0);if(!((F=E-1|0)&E))return 0|o&&(Ge[o>>2]=0|e,Ge[o+4>>2]=F&l|0&r),m=l>>>(((_=0)|se(0|E))>>>0),0|(ve=_,m);if((F=(0|D(0|E))-(0|D(0|l))|0)>>>0<=30){y=l<<(h=31-F|0)|u>>>((b=M=F+1|0)>>>0),O=l>>>(M>>>0),w=0,R=u<<h;break}return o&&(Ge[o>>2]=0|e,Ge[o+4>>2]=c|0&r),(m=_=0)|(ve=_,m)}while(0);if(b){for(r=0|t,t=d|0&n,n=0|ze(0|r,0|t,-1,-1),d=ve,c=R,R=w,w=O,O=y,y=b,b=0;c=R>>>31|(e=c)<<1,R=b|R<<1,Ye(0|n,0|d,0|(u=O<<1|e>>>31|0),0|(e=O>>>31|w<<1|0)),b=1&(E=(l=ve)>>31|((0|l)<0?-1:0)<<1),O=0|Ye(0|u,0|e,E&r|0,(((0|l)<0?-1:0)>>31|((0|l)<0?-1:0)<<1)&t|0),w=ve,y=y-1|0,0!=(0|y););A=c,k=R,T=w,g=O,v=0,N=b}else A=R,k=w,T=O,g=y,N=v=0;return b=k,(k=0)|o&&(Ge[o>>2]=g,Ge[o+4>>2]=T),0|(ve=_=(0|b)>>>31|(A|k)<<1|0&(k<<1|b>>>31)|v,m=-2&(b<<1|0)|N)}function We(e,r,t,n){return 0|ue(e|=0,r|=0,t|=0,n|=0,0)}function Oe(e){var r,t;return 0<(0|(e=(e|=0)+15&-16|0))&(0|(t=(r=0|Ge[d>>2])+e|0))<(0|r)|(0|t)<0?(h(),O(12),-1):(0|(Ge[d>>2]=t))>(0|m())&&0==(0|_())?(Ge[d>>2]=r,O(12),-1):0|r}function rr(e,r,t,n){var o,i=Ze;return Ze=Ze+16|0,ue(e|=0,r|=0,t|=0,n|=0,o=0|i),Ze=i,0|(ve=0|Ge[4+o>>2],0|Ge[o>>2])}function tr(e,r,t){e|=0,r|=0;var n,o,i=0;if(8192<=(0|(t|=0)))return 0|k(0|e,0|r,0|t);if(n=0|e,o=e+t|0,(3&e)==(3&r)){for(;3&e;){if(!t)return 0|n;Xe[e>>0]=0|Xe[r>>0],e=e+1|0,r=r+1|0,t=t-1|0}for(t=(i=-4&o|0)-64|0;(0|e)<=(0|t);)Ge[e>>2]=Ge[r>>2],Ge[e+4>>2]=Ge[r+4>>2],Ge[e+8>>2]=Ge[r+8>>2],Ge[e+12>>2]=Ge[r+12>>2],Ge[e+16>>2]=Ge[r+16>>2],Ge[e+20>>2]=Ge[r+20>>2],Ge[e+24>>2]=Ge[r+24>>2],Ge[e+28>>2]=Ge[r+28>>2],Ge[e+32>>2]=Ge[r+32>>2],Ge[e+36>>2]=Ge[r+36>>2],Ge[e+40>>2]=Ge[r+40>>2],Ge[e+44>>2]=Ge[r+44>>2],Ge[e+48>>2]=Ge[r+48>>2],Ge[e+52>>2]=Ge[r+52>>2],Ge[e+56>>2]=Ge[r+56>>2],Ge[e+60>>2]=Ge[r+60>>2],e=e+64|0,r=r+64|0;for(;(0|e)<(0|i);)Ge[e>>2]=Ge[r>>2],e=e+4|0,r=r+4|0}else for(i=o-4|0;(0|e)<(0|i);)Xe[e>>0]=0|Xe[r>>0],Xe[e+1>>0]=0|Xe[r+1>>0],Xe[e+2>>0]=0|Xe[r+2>>0],Xe[e+3>>0]=0|Xe[r+3>>0],e=e+4|0,r=r+4|0;for(;(0|e)<(0|o);)Xe[e>>0]=0|Xe[r>>0],e=e+1|0,r=r+1|0;return 0|n}function ce(e){return(255&(e|=0))<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>>24|0}function le(e,r,t){return F(1),0}var fe=[function(e){return p(0),0},function(e){e|=0;var r,t=Ze;return(0|Je)<=(0|(Ze=Ze+16|0))&&Qe(16),r=t,e=0|(e=0|Ge[e+60>>2],0|(e|=0)),Ge[r>>2]=e,e=0|U(0|y(6,0|r)),Ze=t,0|e}],de=[le,function(e,r,t){e|=0,r|=0,t|=0;var n=0,o=Ze;return(0|Je)<=(0|(Ze=Ze+32|0))&&Qe(32),n=o,Ge[e+36>>2]=3,0==(64&Ge[e>>2]|0)&&(Ge[n>>2]=Ge[e+60>>2],Ge[n+4>>2]=21523,Ge[n+8>>2]=o+16,0|T(54,0|n))&&(Xe[e+75>>0]=-1),n=0|H(e,r,t),Ze=o,0|n},function(e,r,t){e|=0,r|=0,t|=0;var n,o,i=0,a=Ze;return(0|Je)<=(0|(Ze=Ze+32|0))&&Qe(32),o=(n=a)+20|0,Ge[n>>2]=Ge[e+60>>2],Ge[n+4>>2]=0,Ge[n+8>>2]=r,Ge[n+12>>2]=o,Ge[n+16>>2]=t,i=(0|U(0|w(140,0|n)))<0?Ge[o>>2]=-1:0|Ge[o>>2],Ze=a,0|i},H,function(e,r,t){e|=0,r|=0,t|=0;var n,o,i,a,s,u=0,c=0,l=Ze;return(0|Je)<=(0|(Ze=Ze+32|0))&&Qe(32),Ge[(o=(n=l)+16|0)>>2]=r,u=4+o|0,a=0|Ge[(i=e+48|0)>>2],Ge[u>>2]=t-(0!=(0|a)&1),s=e+44|0,Ge[8+o>>2]=Ge[s>>2],Ge[12+o>>2]=a,Ge[n>>2]=Ge[e+60>>2],Ge[n+4>>2]=o,Ge[n+8>>2]=2,c=1<=(0|(o=0|U(0|v(145,0|n))))?(n=0|Ge[u>>2])>>>0<o>>>0?(u=0|Ge[s>>2],Ge[(s=e+4|0)>>2]=u,Ge[e+8>>2]=u+(o-n),0|Ge[i>>2]&&(Ge[s>>2]=u+1,Xe[r+(t+-1)>>0]=0|Xe[u>>0]),t):o:(Ge[e>>2]=Ge[e>>2]|48&o^16,o),Ze=l,0|c},le,le,le];return{_llvm_bswap_i32:ce,_i64Subtract:Ye,___udivdi3:We,setThrew:function(e,r){e|=0,r|=0,S||(S=e,0)},_bitshift64Lshr:Ve,_bitshift64Shl:Ke,_fflush:re,___errno_location:Y,_extract:function(e){return N(e|=0,0),1},_memset:er,_sbrk:Oe,_memcpy:tr,stackAlloc:function(e){var r=Ze;return(0|Je)<=(0|(Ze=(Ze=Ze+(e|=0)|0)+15&-16))&&Qe(0|e),0|r},___uremdi3:rr,getTempRet0:function(){return 0|ve},setTempRet0:function(e){ve=e|=0},_i64Add:ze,dynCall_iiii:function(e,r,t,n){return r|=0,t|=0,n|=0,0|de[7&(e|=0)](0|r,0|t,0|n)},_emscripten_get_global_libc:function(){return 4288},dynCall_ii:function(e,r){return r|=0,0|fe[1&(e|=0)](0|r)},stackSave:function(){return 0|Ze},_free:B,runPostSets:function(){},establishStackSpace:function(e,r){Ze=e|=0,Je=r|=0},stackRestore:function(e){Ze=e|=0},_malloc:x,_emscripten_replace_memory:function(e){return!(16777215&f(e)||f(e)<=16777215||2147483648<f(e))&&(Xe=new n(e),je=new o(e),Ge=new i(e),qe=new a(e),new s(e),new u(e),new c(e),Te=new l(e),!0)}}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),real__llvm_bswap_i32=asm._llvm_bswap_i32;asm._llvm_bswap_i32=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real__llvm_bswap_i32.apply(null,arguments)};var real_getTempRet0=asm.getTempRet0;asm.getTempRet0=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real_getTempRet0.apply(null,arguments)};var real____udivdi3=asm.___udivdi3;asm.___udivdi3=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real____udivdi3.apply(null,arguments)};var real_setThrew=asm.setThrew;asm.setThrew=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real_setThrew.apply(null,arguments)};var real__bitshift64Lshr=asm._bitshift64Lshr;asm._bitshift64Lshr=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real__bitshift64Lshr.apply(null,arguments)};var real__bitshift64Shl=asm._bitshift64Shl;asm._bitshift64Shl=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real__bitshift64Shl.apply(null,arguments)};var real__fflush=asm._fflush;asm._fflush=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real__fflush.apply(null,arguments)};var real__extract=asm._extract;asm._extract=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real__extract.apply(null,arguments)};var real__sbrk=asm._sbrk;asm._sbrk=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real__sbrk.apply(null,arguments)};var real____errno_location=asm.___errno_location;asm.___errno_location=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real____errno_location.apply(null,arguments)};var real____uremdi3=asm.___uremdi3;asm.___uremdi3=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real____uremdi3.apply(null,arguments)};var real_stackAlloc=asm.stackAlloc;asm.stackAlloc=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real_stackAlloc.apply(null,arguments)};var real__i64Subtract=asm._i64Subtract;asm._i64Subtract=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real__i64Subtract.apply(null,arguments)};var real_setTempRet0=asm.setTempRet0;asm.setTempRet0=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real_setTempRet0.apply(null,arguments)};var real__i64Add=asm._i64Add;asm._i64Add=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real__i64Add.apply(null,arguments)};var real__emscripten_get_global_libc=asm._emscripten_get_global_libc;asm._emscripten_get_global_libc=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real__emscripten_get_global_libc.apply(null,arguments)};var real_stackSave=asm.stackSave;asm.stackSave=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real_stackSave.apply(null,arguments)};var real__free=asm._free;asm._free=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real__free.apply(null,arguments)};var real_establishStackSpace=asm.establishStackSpace;asm.establishStackSpace=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real_establishStackSpace.apply(null,arguments)};var real_stackRestore=asm.stackRestore;asm.stackRestore=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real_stackRestore.apply(null,arguments)};var real__malloc=asm._malloc;asm._malloc=function(){return assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),real__malloc.apply(null,arguments)};var _llvm_bswap_i32=Module._llvm_bswap_i32=asm._llvm_bswap_i32,getTempRet0=Module.getTempRet0=asm.getTempRet0,___udivdi3=Module.___udivdi3=asm.___udivdi3,setThrew=Module.setThrew=asm.setThrew,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,_fflush=Module._fflush=asm._fflush,_extract=Module._extract=asm._extract,_memset=Module._memset=asm._memset,_sbrk=Module._sbrk=asm._sbrk,_memcpy=Module._memcpy=asm._memcpy,___errno_location=Module.___errno_location=asm.___errno_location,___uremdi3=Module.___uremdi3=asm.___uremdi3,stackAlloc=Module.stackAlloc=asm.stackAlloc,_i64Subtract=Module._i64Subtract=asm._i64Subtract,setTempRet0=Module.setTempRet0=asm.setTempRet0,_i64Add=Module._i64Add=asm._i64Add,_emscripten_get_global_libc=Module._emscripten_get_global_libc=asm._emscripten_get_global_libc,stackSave=Module.stackSave=asm.stackSave,_free=Module._free=asm._free,runPostSets=Module.runPostSets=asm.runPostSets,establishStackSpace=Module.establishStackSpace=asm.establishStackSpace,stackRestore=Module.stackRestore=asm.stackRestore,_malloc=Module._malloc=asm._malloc,_emscripten_replace_memory=Module._emscripten_replace_memory=asm._emscripten_replace_memory,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,initialStackTop;function ExitStatus(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}Runtime.stackAlloc=Module.stackAlloc,Runtime.stackSave=Module.stackSave,Runtime.stackRestore=Module.stackRestore,Runtime.establishStackSpace=Module.establishStackSpace,Runtime.setTempRet0=Module.setTempRet0,Runtime.getTempRet0=Module.getTempRet0,Module.asm=asm,ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var preloadStartTime=null,calledMain=!1;function run(e){function r(){Module.calledRun||(Module.calledRun=!0,ABORT||(ensureInitRuntime(),preMain(),ENVIRONMENT_IS_WEB&&null!==preloadStartTime&&Module.printErr("pre-main prep time: "+(Date.now()-preloadStartTime)+" ms"),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(e),postRun()))}e=e||Module.arguments,null===preloadStartTime&&(preloadStartTime=Date.now()),0<runDependencies||(writeStackCookie(),preRun(),0<runDependencies||Module.calledRun||(Module.setStatus?(Module.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Module.setStatus("")},1),r()},1)):r(),checkStackCookie()))}function exit(e,r){r&&Module.noExitRuntime?Module.printErr("exit("+e+") implicitly called by end of main(), but noExitRuntime, so not exiting the runtime (you can use emscripten_force_exit, if you want to force a true shutdown)"):(Module.noExitRuntime?Module.printErr("exit("+e+") called, but noExitRuntime, so halting execution but not exiting the runtime or preventing further async execution (you can use emscripten_force_exit, if you want to force a true shutdown)"):(ABORT=!0,EXITSTATUS=e,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(e)),ENVIRONMENT_IS_NODE&&process.exit(e),Module.quit(e,new ExitStatus(e)))}dependenciesFulfilled=function e(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=e)},Module.callMain=Module.callMain=function(e){assert(0==runDependencies,"cannot call main when async dependencies remain! (listen on __ATMAIN__)"),assert(0==__ATPRERUN__.length,"cannot call main when preRun functions remain to be called"),e=e||[],ensureInitRuntime();var r=e.length+1;function t(){for(var e=0;e<3;e++)n.push(0)}var n=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];t();for(var o=0;o<r-1;o+=1)n.push(allocate(intArrayFromString(e[o]),"i8",ALLOC_NORMAL)),t();n.push(0),n=allocate(n,"i32",ALLOC_NORMAL);try{exit(Module._main(r,n,0),!0)}catch(e){if(e instanceof ExitStatus)return;if("SimulateInfiniteLoop"==e)return void(Module.noExitRuntime=!0);var i=e;e&&"object"==typeof e&&e.stack&&(i=[e,e.stack]),Module.printErr("exception thrown: "+i),Module.quit(1,e)}finally{calledMain=!0}},Module.run=Module.run=run,Module.exit=Module.exit=exit;var abortDecorators=[];function abort(r){Module.onAbort&&Module.onAbort(r),r=void 0!==r?(Module.print(r),Module.printErr(r),JSON.stringify(r)):"",ABORT=!0,EXITSTATUS=1;var t="abort("+r+") at "+stackTrace();throw abortDecorators&&abortDecorators.forEach(function(e){t=e(t,r)}),t}if(Module.abort=Module.abort=abort,Module.preInit)for("function"==typeof Module.preInit&&(Module.preInit=[Module.preInit]);0<Module.preInit.length;)Module.preInit.pop()();var shouldRunNow=!0;Module.noInitialRun&&(shouldRunNow=!1),run(),unzip=Module.cwrap("extract","number",["string"]),onmessage=function(e){Module.FS_createDataFile("/","1.zip",e.data,!0,!1),unzip("1.zip"),FS.unlink("1.zip")};